Notifications
Each team can have one or more notifications set up. The notification can be setup in the team spec. Whenever a responder is attached to an incident, the responder team will receive the notifications on matching services.
Notification Spec
Field | Description | Schema | Required |
---|---|---|---|
connection | The connection to use for the notification. | string |
false |
filter | Filter is a CEL-expression used to decide whether this notification client should send the notification. | string |
false |
template | Go template for the notification message. | string |
true |
url | URL in the form of Shoutrrr notification service URL schema. | string |
false |
properties | Configuration properties for Shoutrrr. It's Templatable. | map[string]string |
false |
Example:
components:
- name: Cyza
notifications:
- connection: connection://googlechat/incident-notifications
filter: incident.severity == 'High' || incident.severity == "Critical"
template: |
Subscribed to new incident: {{.incident.title}}
Type: {{.incident.type}}
Severity: {{.incident.severity}}
Status: {{.incident.status}}
- url: slack://<api-token>@incident-notifications
filter: incident.severity != 'Low'
template: |
Type: {{.incident.type}}
Severity: {{.incident.severity}}
Status: {{.incident.status}}
properties:
color: '{{if eq incident.severity "Low"}}good{{else}}danger{{end}}'
title: 'Subscribed to new incident: {{.incident.title}}'
Supported services
We use Shoutrrr to deliver notifications to various services.
Services | URL Format |
---|---|
Bark | bark://devicekey@host |
Discord | discord://token@id |
smtp://username:password@host:port/?from=fromAddress&to=recipient1[,recipient2,...] |
|
Gotify | gotify://gotify-host/token |
Google Chat | googlechat://chat.googleapis.com/v1/spaces/FOO/messages?key=bar&token=baz |
IFTTT | ifttt://key/?events=event1[,event2,...]&value1=value1&value2=value2&value3=value3 |
Join | join://shoutrrr:api-key@join/?devices=device1[,device2, ...][&icon=icon][&title=title] |
Mattermost | mattermost://[username@]mattermost-host/token[/channel] |
Matrix | matrix://username:password@host:port/[?rooms=!roomID1[,roomAlias2]] |
Ntfy | ntfy://username:password@ntfy.sh/topic |
OpsGenie | opsgenie://host/token?responders=responder1[,responder2] |
Pushbullet | pushbullet://api-token[/device/#channel/email] |
Pushover | pushover://shoutrrr:apiToken@userKey/?devices=device1[,device2, ...] |
Rocketchat | rocketchat://[username@]rocketchat-host/token[/channel\| @recipient] |
Slack | slack://[botname@]token-a/token-b/token-c |
Teams | teams://group@tenant/altId/groupOwner?host=organization.webhook.office.com |
Telegram | telegram://token@telegram?chats=@channel-1[,chat-id-1,...] |
Zulip Chat | zulip://bot-mail:bot-key@zulip-domain/?stream=name-or-id&topic=name |
For more details please visit: https://containrrr.dev/shoutrrr/0.7/services/overview/