Ingest your event data from SIGNL4 into RudderStack.
3 minute read
SIGNL4 is a tool for instant mobile alerting. It generates real-time alerts to inform teams about any incidents and automatically delivers critical information to the right people at the right time.
Go to Teams > Developer. Add a name and the Webhook URL under Outbound Webhooks:
Click Add.
Event transformation
SIGNL4 acts as a webhook source and ingests all events mentioned in SIGNL4 documentation.
Each event has a unique code present in the eventType property. The event name is mapped on the basis of this code, as explained below:
eventType code
Event name
SIGNL4 action
200
New Alert Created
New alert created in SIGNL4.
201
Alert Confirmed/Alert Resolved
Alert confirmed by the user. Alert resolved if the statusCode is 4.
202
Alert Escalated
Alert escalated when not confirmed in specified time.
203
Alert Annotated
Message/Annotation sent by the receiver for an alert.
300
Duty Period Started
Duty period started for a team.
301
Duty Period Ended
Duty period ended for a team.
302
Somebody Punched-In
When a team member comes on duty.
303
Somebody Punched-Out
When a team member goes off duty.
Any other
Alert Updated
Default behavior.
RudderStack ingests the SIGNL4 events after converting them into the RudderStack event format. It also maps the following properties from the SIGNL4 event payload to the RudderStack properties:
SIGNL4 property
RudderStack property
eventType
event
eventRaisedUtc
originalTimestamp
user.id
context.externalId
id
messageId
team.id
properties.team.id
annotation.message
properties.annotation.message
annotation.id
properties.annotation.id
alert.eventId
properties.alert.eventId
alert.id
properties.alert.id
alert.externalEventId
properties.alert.externalEventId
alert.statusCode
properties.alert.statusCode
user.username
context.traits.name
user.mailaddress
context.traits.email
subscription.id
properties.subscription.id
alert.acknowledgedUserIds
properties.alert.acknowledgedUserIds
How RudderStack creates the event payload
This section details how RudderStack receives the data from SIGNL4 source and creates the resulting payload.
A sample payload sent by SIGNL4 is shown below:
{"eventType":203,"eventRaisedUtc":"2018-04-17T15:00:32Z","subscription":{"id":"1578ebd9-0a27-44ab-bc8e-52cd7d32e81d"},"user":{"username":"Alex","mailaddress":"alex@signl4.com","id":"f0bd5063-9588-51cf-b3d9-94e5647dedc5"},"alert":{"statusCode":0,"eventId":"2518783235949759942_fbc7b4a4-badd-47b8-9e1d-702fb6a1a0b2","externalEventId":"INC091210","id":"2518783235958846071_4e2dfab2-4717-42bc-8d37-8682402309c2"},"annotation":{"message":"OK, I'll take care about it.","id":"2518783235661483318_99ebffe0-1b90-40ef-990a-fbd842484761"},"id":"141c0f88-7831-4d5e-b055-f6e83c269770"}
RudderStack transforms the above payload into the following track payload:
{"type":"track","event":"Alert Annotated","context":{"library":{"name":"unknown","version":"unknown"},"traits":{"name":"Alex","email":"alex@signl4.com"},"externalId":[{"type":"signl4UserId","id":"f0bd5063-9588-51cf-b3d9-94e5647dedc5",}],"integration":{"name":"SIGNL4"}},"messageId":"141c0f88-7831-4d5e-b055-f6e83c269770","originalTimestamp":"2017-09-01T08:11:37.000Z","properties":{"alert.statusCode":0,"alert.eventId":"2518783235949759942_fbc7b4a4-badd-47b8-9e1d-702fb6a1a0b2","alert.externalEventId":"INC091210","alert.id":"2518783235958846071_4e2dfab2-4717-42bc-8d37-8682402309c2","subscription.id":"183f8d00-3bb8-4636-9a8f-89d6af26374a","annotation.id":"2518783235661483318_99ebffe0-1b90-40ef-990a-fbd842484761","message":"OK, I'll take care of it."},"anonymousId":"6f0a3dc76a335860e17fa1d8ab779742e2ca","integrations":{"SIGNL4":false}}
This site uses cookies to improve your experience while you navigate through the website. Out of
these
cookies, the cookies that are categorized as necessary are stored on your browser as they are as
essential
for the working of basic functionalities of the website. We also use third-party cookies that
help
us
analyze and understand how you use this website. These cookies will be stored in your browser
only
with
your
consent. You also have the option to opt-out of these cookies. But opting out of some of these
cookies
may
have an effect on your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This
category only includes cookies that ensures basic functionalities and security
features of the website. These cookies do not store any personal information.
This site uses cookies to improve your experience. If you want to
learn more about cookies and why we use them, visit our cookie
policy. We'll assume you're ok with this, but you can opt-out if you wish Cookie Settings.