SMS-Benachrichtigungssystem mit PubNub und IFTTT

SMS-Benachrichtigungssystem mit PubNub und IFTTT

Wenn Sie ein Entwickler sind, haben Sie wahrscheinlich schon von Konzepten wie IaaS (Infrastructure as a Service), PaaS (Platform as a Service) und SaaS (Software als Dienstleistung). Diese Konzepte sind für die Entwicklung, Verwaltung und Bereitstellung von Anwendungen und Diensten von entscheidender Bedeutung. IaaS stellt Ihnen skalierbare Rechenressourcen über das Internet zur Verfügung. PaaS bietet eine Plattform, die es Entwicklern ermöglicht, Anwendungen zu entwickeln, auszuführen und zu verwalten, ohne die Komplexität des Aufbaus und der Wartung der zugrunde liegenden Infrastruktur. SaaS stellt ebenfalls Softwareanwendungen über das Internet bereit. Dienste wie IFTTT (If This Then That), eine SaaS-Plattform, und PubNub, eine IaaS-Plattform, bieten wertvolle Tools für die Automatisierung und Echtzeitkommunikation, mit denen Sie Ihre Anwendung schneller als je zuvor in Produktion bringen können.

Technischer Überblick

PubNub Ereignis & Aktionen (E&A)

PubNub Ereignisse & Aktionen (E&A) ist eine Erweiterung der PubNub-Plattform. PubNub Events & Actions ermöglicht es Ihnen, Ihre eigenen PubNub Events zu filtern/verarbeiten und diese Events an Dienste von Drittanbietern zu senden, die Sie auf verschiedene Weise eingerichtet haben können.

PubNub Events können generiert werden, wenn ein Benutzer eine Nachricht veröffentlicht, wenn sich der Präsenzstatus des Benutzers ändert, oder eine Reihe anderer Ereignisse (siehe unsere Ereignis-Dokumentation für eine vollständige Liste). PubNub-Ereignisse werden dann von einem PubNub-Ereignis-Listener aufgegriffen. Der PubNub-Listener lauscht auf ein bestimmtes Ereignis und löst eine entsprechende Aktion aus. Dieser Prozess wird direkt auf dem PubNub-Portal durchgeführt und erfordert keinerlei Programmierung.

IFTTT und SMS-Benachrichtigungen

IFTTT ist eine webbasierte Automatisierungsplattform, die es Benutzern ermöglicht, verschiedene Webanwendungen und -dienste miteinander zu verbinden, um Aufgaben zu automatisieren und neue Funktionalitäten zu entdecken. Sie hilft bei der Erstellung einfacher, bedingter Anweisungen, so genannter Applets, die Änderungen in Anwendungen oder Diensten auslösen können.

Zwei der über 100 Integrationen, die Sie über IFTTT einrichten können, sind ein Webhook und SMS-Benachrichtigungen. Diese Integrationen werden mit PubNub Events & Actions (E&A) verbunden. Das unten stehende Diagramm soll Ihnen helfen, das System zu visualisieren, das wir erstellen werden.

Voraussetzungen

Vergewissern Sie sich, dass Sie einen PubNub-Account eingerichtet haben, und schauen Sie sich die Preise für Events & Actions Seite für Kostendetails. Sie können auch zu Events & Actions im Pubnub Admin Portal navigieren und “Upgrade” wählen, um die Preispläne für Events & Actions zu sehen. In diesem Blog werden wir die PubNub Debug-Konsole verwenden, um Nachrichten zu veröffentlichen und sie mit IFTTT zu verarbeiten.

Vergewissern Sie sich, dass Sie sich für ein IFTTT-Konto angemeldet haben, da wir dieses nutzen werden, um die SMS-Integration einzurichten und uns über einen WebHook damit zu verbinden, wie in der Abbildung oben zu sehen ist.

Um mehr über die ersten Schritte und fortgeschrittene Details zu E&A zu erfahren, lesen Sie bitte unsere anderen Inhalte zu PubNub Events & Actions:

Einrichten von Events & Aktionen

Unterschied zwischen E&A und Funktionen

Wie man Nachrichten mit Advanced JSONPath filtert

Verbinden von PubNub mit IFTTT

Siehe auch unsere docs für detailliertere Informationen zur Einrichtung von PubNub mit IFTTT.

In dieser Anleitung werden wir die PubNub Events & Actions IFTTT-Integration verwenden und unsere PubNub-Instanz direkt mit IFTTT verbinden. Wir werden SMS-Benachrichtigungen an Ihr Telefon automatisieren, wenn eine Nachricht über einen bestimmten Kanal gesendet wird.

Zunächst erstellen wir einen Event Listener im PubNub-Portal. Dieser Ereignis-Listener wird für das Abhören von Nachrichten verantwortlich sein, die über den Kanal “Send_SMS” gesendet werden.

Die untenstehende Konfiguration zeigt, wie man einen grundlegenden Filter einrichtet, um Nachrichten abzuhören, die über den Kanal “Send_SMS” gesendet werden. Es gibt jedoch noch viel mehr, was man mit PubNub Event Filters machen kann, wenn man das Advanced JSON Path Feature benutzt.

Nachdem wir nun den Event Filter konfiguriert haben, können wir unsere PubNub Action anhängen. Der Ereignisname wird später beim Einrichten der IFTTT-Umgebung verwendet. Wir werden auch den IFTTT-Webhook-Schlüssel nehmen und unseren IFTTT-Workflow einrichten. Zusätzlich können Sie der Webhook-Anfrage Header hinzufügen; dies ist nicht erforderlich, um PubNub mit IFTTT zu verbinden.

Nachdem Sie die PubNub-Aktion hinzugefügt haben, gehen Sie zu IFTTT, klicken Sie auf Erstellen und wählen Sie “Wenn dies”. In der Suchleiste suchen Sie nach “Webhook”. Wir verwenden die Option “Receive a web request with a JSON payload”, wie im Bild unten zu sehen.

Geben Sie den “Ereignisnamen” aus der PubNub-Aktion ein, die wir eingerichtet haben, in diesem Fall “publish_message”. Der Ereignisname muss in PubNub und IFTTT identisch sein. Nachdem Sie Ihren “If This”-Trigger erstellt haben, nehmen Sie den Webhook-Schlüssel und navigieren Sie zur Webhook-Dienst-Seite, klicken Sie auf Dokumentation und kopieren Sie Ihren Webhook-Schlüssel von dort.

Für den “Then That”-Auslöser suchen Sie nach “SMS” und erstellen diese Aktion. Jetzt fügen wir dem Workflow einen “Filtercode” hinzu, um das PubNub-Ereignis zu analysieren und nur den Nachrichtenteil zu senden.

Schauen Sie sich das PubNub-Ereignis unten an, um zu verstehen, was alles in einem veröffentlichten Ereignis enthalten ist. Wir werden das Parsen der Nachricht daraus verwenden.

{
event: {
channel: Channel-Barcelona,
eventCategory: message,
eventType: message.publish,
eventId: 8997eeb6-2a94-455b-ad6f-57296b785273,
eventPayload: {
message: Enter message here,
meta: null
},
iso8601timestamp: 2024-03-14T01:24:38Z,
subscribeKey: ,
timetoken: 17103794788490465,
senderId: Jack-device
},
eventsAndActionsMetadata: {
eventListenerMetadata: {
eventListenerId: d69b8f9c-5d24-47f0-81d0-98accd38fdba
},
actionMetadata: {
actionId: 96cb5d6c-c121-4a0d-a703-cd78be1099d0,
actionInstanceId: f395ae94-0aaf-4ed7-9add-57ee9db30272,
actionInvocationId: 81f7ea47-dace-4812-b546-a26057c127ce,
webhookMetadata: {
retryMetadata: {
retryIntervalSeconds: 450,
attemptNum: 0,
maxNumRetries: 2
}
}
}
}
}

Der folgende Filtercode analysiert das PubNub-Ereignis und sendet den Teil “Nachricht” als Textnachricht.

// Add your code here. All actions will run unless you explicitly skip them.
// Quick tips!
// Auto-complete is on. Start typing to see ingredient options.
// Hover over any ingredient to see the variable type and an example.
// TypeScript v2.92
var json = JSON.parse(MakerWebhooks.jsonEvent.JsonPayload);

var message = json.event.eventPayload.message;

Sms.sendMeText.setMessage(message);

Das fertige Applet und die PubNub-Integration sollten nun auf ein veröffentlichtes Ereignis von PubNub über den Kanal “Send_SMS” hören und das PubNub-Ereignis auf der IFTTT-Seite analysieren und die SMS-Nachrichten an Ihre Telefonnummer senden.

Use-Cases für Entwickler

Lassen Sie uns in einige Anwendungsfälle eintauchen, um PubNub mit einer IFTTT-Integration in einem realen Szenario zu sehen.

Chat-Anwendungen

Ein Unternehmen nutzt eine Chat-Anwendung für die interne Kommunikation zwischen seinen Mitarbeitern. Das Unternehmen möchte sein internes Supportsystem für IT-Fragen verbessern. Ziel ist es, die Erstellung von Support-Tickets aus Chat-Nachrichten zu automatisieren und die zuständigen IT-Support-Mitarbeiter in Echtzeit zu benachrichtigen.

Chat-Anwendung mit PubNub: Die interne Chat-Anwendung verwendet PubNub für Echtzeit-Nachrichten. Jede Abteilung hat ihren eigenen Chat-Kanal, einschließlich des IT-Support-Kanals.

IFTTT-Integration: Die Chat-Anwendung ist mit Hilfe von PubNub Events & Actions in IFTTT integriert. Die Integration ist so eingerichtet, dass bestimmte Schlüsselwörter oder Phrasen, die in einem beliebigen Abteilungs-Chat-Kanal eingegeben werden, Aktionen außerhalb der Chat-Anwendung auslösen können.

Auslöser-Setup: In der Chat-Anwendung kann ein Mitarbeiter ein IT-Problem melden, indem er eine Nachricht mit bestimmten Schlüsselwörtern sendet, z. B. “IT-Problem”, gefolgt von einer kurzen Beschreibung des Problems. PubNub erkennt diese Nachricht in Echtzeit und löst ein vordefiniertes IFTTT-Applet aus.

IFTTT-Applet für die Ticket-Erstellung: Das ausgelöste IFTTT-Applet wird so konfiguriert, dass es ein neues Support-Ticket im Ticketing-System des Unternehmens (z.B. Jira, Zendesk) erstellt. Das Applet extrahiert den Inhalt der Nachricht und verwendet ihn zum Ausfüllen der Details des neuen Support-Tickets.

Benachrichtigung der IT-Supportmitarbeiter: Sobald das Support-Ticket erstellt ist, wird ein weiteres IFTTT-Applet ausgelöst, um die IT-Supportmitarbeiter zu benachrichtigen. Dies kann über verschiedene von IFTTT unterstützte Kanäle erfolgen, z. B. durch das Senden einer SMS oder einer E-Mail oder sogar durch das Posten einer Nachricht direkt im Chat-Kanal des IT-Supports in der Chat-App.

Bestätigungsnachricht: Eine Bestätigungsnachricht wird an den ursprünglichen Chat-Kanal zurückgeschickt, in dem das Problem gemeldet wurde, um zu bestätigen, dass das Ticket erstellt und das IT-Supportteam benachrichtigt wurde. Diese Nachricht kann die Ticket-ID als Referenz enthalten.

Überwachung von IoT-Geräten

Ein Unternehmen hat eine Reihe von IoT Geräten (z. B. Umweltsensoren, intelligente Zähler, Sicherheitskameras), die für verschiedene Betriebszwecke eingesetzt werden. Diese Geräte sind miteinander verbunden und kommunizieren über PubNub, was eine Datenübertragung und Überwachung in Echtzeit ermöglicht. Für die interne Kommunikation nutzt das Unternehmen eine von PubNub betriebene Chat-Anwendung. Die Integration mit IFTTT ermöglicht es dem Unternehmen, Antworten oder Benachrichtigungen auf der Grundlage der von den IoT-Geräten empfangenen Daten zu automatisieren.

Datenübertragung in Echtzeit: Jedes IoT-Gerät ist so konfiguriert, dass es seine Status-Updates und Warnmeldungen direkt an einen dedizierten PubNub-Kanal sendet. Diese Nachrichten können verschiedene Datentypen enthalten, z. B. Temperaturanomalien, Batteriestände oder Warnungen vor unberechtigtem Zugriff.

PubNub-Funktion für die Datenverarbeitung: Eine PubNub-Funktion wird eingesetzt, um Daten von IoT-Geräten in Echtzeit zu filtern und zu verarbeiten. Diese Funktion kann die eingehenden Nachrichten auf bestimmte Bedingungen oder Schwellenwerte auswerten, die darauf hinweisen, dass dringender Handlungsbedarf besteht (z. B. wenn ein Sensor eine Temperatur außerhalb eines vordefinierten Bereichs feststellt).

IFTTT-Integration für automatisierte Aktionen: Wenn der PubNub Event Listener einen Alarmzustand feststellt, löst er über einen IFTTT-Webhook ein IFTTT-Ereignis aus. Dieses Ereignis ist so konfiguriert, dass automatisierte Aktionen ausgeführt werden, wie z.B.:

Versenden einer E-Mail oder SMS an bestimmte Mitarbeiter oder externe Auftragnehmer, die für die Verwaltung des betreffenden IoT-Geräts zuständig sind.

Erstellen eines neuen Support-Tickets im Ticketsystem des Unternehmens (z. B., Jira). Das Applet weiß aufgrund der Warnmeldung, was mit dem IT-Gerät nicht in Ordnung ist, und kann die Protokolldatei für das IoT-Gerät direkt im Ticket melden.

Es protokolliert das Ereignis in einem Wartungsprotokoll für zukünftige Analysen und Maßnahmen.

IFTTT-Applets für Gerätesteuerungsbefehle: Die Chat-Anwendung ermöglicht es den Teammitgliedern, über PubNub Befehle an die IoT-Geräte zu senden, um sofortige Aktionen auszuführen (z. B. das Gerät zurückzusetzen, Einstellungen anzupassen), basierend auf vordefinierten Applets in IFTTT, die auf bestimmte Schlüsselwörter oder Befehle im Chat reagieren.

Erste Schritte mit PubNub

Wir haben gerade beschrieben, wie man die IFTTT-Aktion verwendet und einen einfachen PubNub Event Listener einrichtet. Um die Verwendung von PubNub Events & Action zu vertiefen, sehen Sie sich einige andere Aktionen an, die PubNub bietet.

Einen Webhook-Aufruf tätigen (d.h. rufen Sie Ihren Server für jedes gefilterte Ereignis an)

In SQS speichern (d.h. speichern Sie jedes Event in Amazons SQS Warteschlangen-Dienst)

An Kinesis senden (d.h. senden an Amazons Event Ingestion Service)

Senden an S3 (d.h. Speichern der Daten in einem Amazon S3-Bucket)

Senden an Kafka (d. h. Senden der Daten an Apache Kafka)

PubNub bietet eine breite Palette von SDKs um diese Aktionen in Ihre Anwendungen zu integrieren. Diese SDKs erleichtern die Implementierung der PubNub-Fähigkeiten in Ihre aktuellen Anwendungen und machen das Hinzufügen von Echtzeit-Datenstreaming-, Verarbeitungs- und Kommunikationsfunktionen zu einem Kinderspiel. Ganz gleich, ob Sie mit Web-, Mobil- oder serverseitigen Anwendungen arbeiten, die SDKs von PubNub bieten Ihnen die Werkzeuge, die Sie benötigen, um hochgradig interaktive und reaktionsfähige Anwendungen zu erstellen.

Bei Fragen oder Problemen wenden Sie sich bitte an das Developer Relations Team unter devrel@pubnub.com.

Inhalt

Technischer ÜberblickPubNubEvent & Actions (E&A)IFTTT undSMS-BenachrichtigungenVoraussetzungenVerbindungvonPubNub mit IFTTTEntwicklerUse-CasesChat-AnwendungenIoTDevice MonitoringEinstiegin PubNub

Wie kann PubNub Ihnen helfen?

Dieser Artikel wurde ursprünglich auf PubNub.com veröffentlicht.

Unsere Plattform hilft Entwicklern bei der Erstellung, Bereitstellung und Verwaltung von Echtzeit-Interaktivität für Webanwendungen, mobile Anwendungen und IoT-Geräte.

Die Grundlage unserer Plattform ist das größte und am besten skalierbare Echtzeit-Edge-Messaging-Netzwerk der Branche. Mit über 15 Points-of-Presence weltweit, die 800 Millionen monatlich aktive Nutzer unterstützen, und einer Zuverlässigkeit von 99,999 % müssen Sie sich keine Sorgen über Ausfälle, Gleichzeitigkeitsgrenzen oder Latenzprobleme aufgrund von Verkehrsspitzen machen.

Erleben Sie PubNub

Sehen Sie sich die Live Tour an, um in weniger als 5 Minuten die grundlegenden Konzepte hinter jeder PubNub-gestützten App zu verstehen

Einrichten

Melden Sie sich für einen PubNub-Account an und erhalten Sie sofort kostenlosen Zugang zu den PubNub-Schlüsseln

Beginnen Sie

Mit den PubNub-Dokumenten können Sie sofort loslegen, unabhängig von Ihrem Anwendungsfall oder SDK

Leave a Reply

Your email address will not be published. Required fields are marked *