google_cloud_350x200

Mobile alerting with tracking & escalation for Google IoT Core

google-iot-signl4

Why SIGNL4

Google IoT Core provides a scalable, rapid solution development platform, made up of tightly integrated components that can be customized to help you solve your business challenges. Whether you are collecting data from a Raspberry Pi or industrial machines, the platformcan help you manage your IoT devices in real time. Pairing this powerful IoT platform with SIGNL4 can enhance your daily operations with an extension to your mobile team in the field or on the shop floor.

How it Works

SIGNL4 integrates with Google IoT Core using a simple MQTT flow on the Google Cloud platform.

Integration Capabilities

  • Service engineers alerted via mobile push, text and voice
  • Uses Email configuration to connect to your SIGNL4 team
  • Staff can acknowledge tickets and take ownership
  • Alerts are escalated in case of no response
  • Two-way integration to interact or set the device state
  • On-call scheduling to alert the right people at the right time

Scenarios

  • Industrial IoT
  • Industry 4.0
  • IoT Service Alerting
  • IoT Device Management
  • Manufacturing, Utility, Oil and Gas, Agriculture, etc.
FS_neu_2

Tickets and Incidents are sent to SIGNL4

Event categorization, routing and automated delivery

Persistent Notifications by push, text and voice call with Tracking, Escalation and Confirmation to Staff on Duty

HOW TO INTEGRATE

Gathering events from IoT devices and sending team alerts in case of critical incidents is a broad field. Systems can involve simple prototypes using a Raspberry Pi and can expand into industrial IoT scenarios, machine data or distributed systems in the field.

The following example demonstrates the flow of an event captured on a device through to notification of an engineer using SIGNL4 and Google IoT Core together.

SIGNL4 is a mobile alert notification app for powerful alerting, alert management and mobile assignment of work items. Get the app at https://www.signl4.com.

Cloud IoT Core is a fully managed service that allows you to easily and securely manage and connect your IoT devices. The integration with SIGNL4 is straightforward. In the following we will show an example on how to send alert notifications using SIGNL4 in case of MQTT events coming from devices in the field.

Prerequisites

A SIGNL4 (https://www.signl4.com) account Access to the Google Cloud Platform (https://console.cloud.google.com)

A Raspberry Pi device (optional) Sample Python code to send MQTT messages (https://github.com/GoogleCloudPlatform/python-docs-samples/tree/master/iot/api-client/mqtt_example, optional)

In order to setup the following flow quite some configuration steps are required.

The good news is that the following article describes all the steps very well, except the Cloud Function part.

https://cloud.google.com/community/tutorials/cloud-iot-gateways-rpi

Therefore, we will focus on the Cloud Function part that is used to send the SIGNL4 alert and only briefly mention the other steps.

google-iot-registry
google-iot-device

Prepare the Google IoT Cloud and Pub/Sub

In Google Cloud IoT Core first create a registry. Then a gateway and a device.

google-iot-pubsub-topic
google-iot-pubsub-subscription

Setup Pub/Sub

In Google IoT Cloud under Pub/Sub create a Topic and a Subscription.

google-iot-cloud-functions

Prepare your Raspberry Pi

A great device for IoT prototyping is the Raspberry Pi. We will use this one as our device and connect it to Google IoT core. As a protocol for sending event data we use MQTT. This is quite an undertaking, however, luckily there is a great sample available already at GitHub:

python-docs-samples/iot/api-client/mqtt_example at main · GoogleCloudPlatform/python-docs-samples · GitHub

This sample included a Python file that can be used as is or you can modify it to match your needs. By default it sends a bunch MQTT messages. You might want to modify the code to send an MQTT messages in case a sensor detects something or a button is clicked.

In order for the Python script to work you need RSA keys you can create it with the following command directly on your Raspberry Pi:

openssl req -x509 -nodes -newkey rsa:2048 -keyout rsa_private.pem -days 1000000 -out rsa_cert.pem -subj "/CN=unused"

And you need the Google certificate you can get with the following command.

Get the root certificate:

wget https://pki.goog/roots.pem

Now you are ready to run the script with the following command:

sudo python3 GoogleIoT.py --registry_id=SIGNL4 --cloud_region=europe-west1 --project_id=fair-geography-228811 --device_id=MyRaspberryPi --algorithm=RS256 --private_key_file=./rsa_private.pem --ca_certs=./root.pem --num_messages=4

This will send the MQTT messages to the Google IoT Cloud.

Create the Google Cloud Function

Under Google Cloud Functions you can now create a new function.

Trigger type: Cloud Pub/Sub Topic: SIGNL4TelemetryTopic (The topic you have created under Pub/Sub)

This function is then being triggered by Cloud Pub/Sub. The function will take the data and then send it to SIGNL4 via HTTP POST. The sample source code is available at GitHub.

https://github.com/signl4/signl4-integration-google-iot

Please replace by your SIGNL4 team code.

That is it.

Now you can test it by sending an MQTT message from your Raspberry Pi as described above. You should then receive an alert on your SIGNL4 app.

ALERT OPTIMIZATION
SIGNL4 can further increase the visibility of alerts through its Signals and Services section. Augmenting the color and icon of alerts will provide more relevant information at a glance without having to open the alert.

alertoptimization

Change alert color and override title + text 

Override text, colors and titles are triggered by keywords set within the mobile app.

Related Integrations

Camunda BPM

IoT

Datacake

IoT

Gimasi Service Button

IoT

Icinga2

IoT / IT Ops

ifm IO-Link

Industry 4.0 / IoT

Melrose Labs SMS

Industry 4.0 / IoT

PRTG Network Monitor

IoT / IT Ops

ServiceNow

IoT / IT Ops

Widgelix

IoT

Ready for a free 30-days trial?