SIGNL4 is a mobile alert notification app for powerful alerting, alert management and mobile assignment of work items. It offers alerting via app push, SMS and voice calls including escalations, tracking, and duty scheduling.
value: '{EVENT.ACK.STATUS}'
value: '{EVENT.DATE} {EVENT.TIME}'
name: Event_Update_Action
value: '{EVENT.UPDATE.ACTION}'
name: Event_Update_Status
value: '{EVENT.UPDATE.STATUS}'
value: '{EVENT.SEVERITY}'
value: '{TRIGGER.STATUS}'
params = JSON.parse(value),
endpoint = 'https://connect.signl4.com/webhook/',
request = new HttpRequest();
if (typeof params.HTTPProxy === 'string' && params.HTTPProxy.trim() !== '') {
request.setProxy(params.HTTPProxy);
if (typeof params.teamsecret === 'string' && params.teamsecret.trim() !== '') {
endpoint += params.teamsecret;
delete params.teamsecret;
throw 'The team secret of your SIGNL4 team cannot be empty.';
if (typeof params.Severity === 'string' && params.Severity === '{EVENT.SEVERITY}') {
params.Severity = 'Not classified';
if (typeof params.User === 'string' && params.User === '{USER.FULLNAME}') {
if (typeof params.Event_Update_Action === 'string' && params.Event_Update_Action === '{EVENT.UPDATE.ACTION}') {
params.Event_Update_Action = '';
// Assemble X-S4-ExternalID for two-way integration
// Format: "ZabbixEventID: 222 ZabbixURL: https://your-zabbix-server/zabbix/"
params['X-S4-ExternalID'] = 'ZabbixEventID: ' + params.Event_ID;
if (typeof params.Zabbix_URL === 'string' && params.Zabbix_URL.indexOf('http') == 0) {
// Make sure the URL ends with '/'
if (params.Zabbix_URL.charAt(params.Zabbix_URL.length - 1) != '/') {