object NotificationCommand "signal-service-notification" { command = [ "/etc/monitoring-tools/signal-gateway-client.py" ] arguments += { "-4" = "$notification_address$" "-6" = "$notification_address6$" "-b" = "$notification_author$" "-c" = "$notification_comment$" "-d" = { required = true value = "$notification_date$" } "-e" = { required = true value = "$notification_servicename$" } "-f" = { value = "$notification_from$" description = "Set from address." } "-i" = "$notification_icingaweb2url$" "-l" = { required = true value = "$notification_hostname$" } "-n" = { required = true value = "$notification_hostdisplayname$" } "-o" = { required = true value = "$notification_serviceoutput$" } "-r" = { required = true value = "$notification_useremail$" } "-s" = { required = true value = "$notification_servicestate$" } "-t" = { required = true value = "$notification_type$" } "-u" = { required = true value = "$notification_servicedisplayname$" } "-v" = "$notification_logtosyslog$" "-w" = { required = true value = "$notification_signal_gateway_host$" } "-x" = { required = true value = "$notification_signal_gateway_port$" } "-y" = { required = true value = "$notification_signal_gateway_proto$" } } vars += { notification_address = "$address$" notification_address6 = "$address6$" notification_author = "$notification.author$" notification_comment = "$notification.comment$" notification_type = "$notification.type$" notification_date = "$icinga.long_date_time$" notification_hostname = "$host.name$" notification_hostdisplayname = "$host.display_name$" notification_servicename = "$service.name$" notification_serviceoutput = "$service.output$" notification_servicestate = "$service.state$" notification_useremail = "$user.email$" notification_servicedisplayname = "$service.display_name$" notification_signal_gateway_host = "$icinga.signal_gateway_host$" notification_signal_gateway_port = "$icinga.signal_gateway_port$" notification_signal_gateway_proto = "$icinga.signal_gateway_proto$" } } object User "signal-dummy-user" { import "generic-user" display_name = "User acting as notification Sink for Telegram Notifications" email = "reject@none.none" } apply Notification "signal-generic" to Service { import "mail-service-notification" user_groups = ["icingaadmins"] interval = 1d command = "signal-service-notification" assign where host.address }