SMS Benachrichtigungsmodul "sms"
Beschreibung
Das SMS Benachrichtigungsmodul dient der Benachrichtigung bzw. Alarmierung des Anwenders wenn ein entsprechender Systemzustand vorliegt. Der Systemzustand kann hier als Boolescher Eingangskanal beliebig konfiguriert werden. Ferner ist es möglich, den Text der Benachrichtigung flexibel festzulegen. Werden im Rahmen einer solchen Benachrichtigung zudem GPS-Positionsangaben übertragen, so ist es außerdem möglich, diese mit einem Kartendienst (z.B. Google Maps, Open Street Map, ...) zu verknüpfen.
Funktionsweise bezüglich dynamischer Rekonfiguration der Telefonnummer
Das Modul lädt nach dem Start zunächst die als Konfigurationsparameter phoneNumber
hinterlegte Telefonnummer.
Es konsumiert dann im spezifizierten Abfrageinterval (siehe unten) den unter setPhoneNumberChannelName
festgelegten Kanal, über welchen eine Umkonfiguration der Telefonnummer (z.B. anhand eines Shared Attribute Kanals aus dem optiCLOUD Dashboard Modul) möglich ist.
Anschließend wir die aktuell gesetzte Telefonnummer in den unter phoneNumberChannelName
festgelegten Kanal produziert.
Verwendete Schnittstellen & Protokolle
- Betriebsbereites sowie unterstütztes Mobilfunk-Modem
JSON-Konfiguration
Im folgenden Abschnitt soll die gesamte JSON-Konfiguration des Moduls beschrieben und die einzelnen Parameter erläutert werden.
Beispielkonfiguration (typische Konfiguration)
{
"module":"SMS",
"factory":"sms",
"config":{
"pollingIntervalMs": 1000,
"triggerChannel": "SomeBooleanConditionChannel",
"phoneNumber": "+4961729977120",
"phoneNumberChannelName": "PhoneNumberChannel_for_Display",
"setPhoneNumberChannelName": "PhoneNumberChannel_for_Entry",
"message": "Some Message Text (see below)"
}
}
Globale Modulparameter
Parametername | Erforderlich | Datentyp | sinnvoller Wertebereich | Default-Wert | Beschreibung |
---|---|---|---|---|---|
pollingIntervalMs | Nein | INT | 1 - | 1000 (1 s) | Abfrageintervall [ms] |
triggerChannel | JA | STRING | Name des Booleschen Kanals, der die Benachrichtigungsbedingung bereitstellt | ||
phoneNumber | JA | STRING | gültige Telefonnummer | Gültige Telefonnummer, an die die SMS gesendet wird | |
phoneNumberChannelName | Nein | STRING | gültiger Kanalname | MODULE.phoneNumber | Kanalname zur Produktion bzw. Anzeige der Telefonnummer |
setPhoneNumberChannelName | Nein | STRING | gültiger Kanalname | MODULE.setPhoneNumber | Kanalname zur Konsumption bzw. Eingabe der Telefonnummer |
message | Nein | STRING | Benachrichtigungstext (siehe unten) |
Konfiguration eines Benachrichtigungstextes "message"
Der Benachrichtigungstext kann grundsätzlich beliebige, allerdings SMS-kompatible, Zeichen enthalten. Darüberhinaus können auch Werte eines oder mehrerer Kanäle in diesen Text integriert werden. Hierzu bestehen folgende Möglichkeiten
-
Automatisch formatierter Kanalwert
${Kanalname}
-
Kanalwert formatiert bzgl. Formatspezifikation
${Kanalname}{Format}
Zu den unterstützten Formatspezifikationen zählen für den Fall numerischer Datenkanäle die meisten aus der Programmiersprache C bekannten Spezifikationen, wie z.B. ${Kanalname}{%04.3f}
, sowie datentypabhängig zusätzliche modulinterne Spezifikationen in Form eines Strings, wie z.B. ${Kanalname}{base64}
oder ${Kanalname}{openstreetmap}
.
Formatspezifizierer für GPS Locations und ByteArrays
Im Fall eines GPS Location Kanals können folgende Formatspezifizierer verwendet werden
google
zum Einfügen eines Hyperlinks zu Google Mapsopenstreetmap
zum Einfügen eines Hyperlinks zu Open Street Map
Für ByteArray Kanäle kann optional eine base64
Kodierung festgelegt werden,
andernfalls wird das ByteArray hexadezimal kodiert übertragen.
Modul-Informationen
Information | Wert |
---|---|
Autoren | optiMEAS Measurement and Automation Systems GmbH |
seit smartCORE | 2.4 |
Modultyp | Consumer |
Abhängigkeiten | KEINE |