RrBd
Level-2
- Beiträge
- 100
- Reaktionspunkte
- 5
-> Hier kostenlos registrieren
Da immer wieder mal die Frage auftaucht, wie man zweckmäßig SMS-Störmeldungen von einer SPS aus absetzen kann, hier eine von mir für Phoenix ILC 1x1 realisierte Lösung mit „Email to SMS!
Mein Standard-Problem: Nachricht soll an Heizungsfirmen etc. gehen, tagsüber Annahme am Zentralen-Telefon (daher bei Besetzt Wiederholung notwendig), außerhalb der Dienstzeit Rufweiterleitung dort an reihum wechselnde Bereitschaftsmoneurs-Handies, die dann auf die Meldung hin tätig werden sollen.
Einrichtung des Probeaccounts beim Email-to-SMS-Anbieter GTC TeleCommunication GmbH war einfach, wenn ich auch nicht gleich verstanden hatte, wie es geht. Um eine SMS-Benachrichtigung auszulösen muss der Mail-Body in vorgegebener Syntax Informationen zum Useraccount, Passwort, Ziel-Handynummer, Rückmeldungsverfahren (Auswahl beispeiesweise „nur bei erfolgloser SMS“ oder „Immer“?), Ziel-Emailaccount etc. enthalten. Da einige Linefeeds im Mailbody zwingend erforderlich sind wird der Mailbody-String mit etlichen CONCAT-Befehlen zusammengestrickt.
Für den E-Mail-Versand benutze ich den OSCAT-SMTP_CLIENT, den ich etwas „handlicher“ als den aus der Phoenix-IT-Library finde.
Das funktonierte auf Anhieb, allerdings belegen die „Formalien“ im Mail-Body bereits 168 Zeichen, so das für die eigentliche Information im Mail-Body (oscat_STRING_250) nur noch ca. 80 Bytes übrig blieben - das ist dürftig. Außerdem funktionierte SMS-Vorlesen am Festnetzanschluss nicht.
Innerhalb weniger Stunden hatte GTC meinen Account so umgeroutet, dass SMS-Vorlesen nun funktionierte, und für das Platz-Problem den Rat, das-Mail-Subject für den eigentlichen SMS-Text zu nutzen. Bringt im konkreten Fall allerdings keine Verbesserung, da der Oscat - SMTP_CLIENT als Summary 80-Zeichen-Strings verwendet. Zwar kann man an den Eingang des Bausteins auch oscat_STRING_250 „anschließen“, um Problemen während der Laufzeit vorzubeugen habe ich lieber einen passenden SMTP_CLIENT2 gebastelt. Verfahren: Oscat-Library pcworx_network_130.mwt in PCWORX geöffnet, SMTP_CLIENT als POE in die Task kopiert, dort die lokale Ausgangs-Variable „SUBJECT“ von „String“ auf „oscat_STRING160“ geändert – fertig!
Damit funktionierte der Versand einwandfrei. Kleiner Schönheitsfehler derzeit noch: gebe ich als Ziel-Telefonnummer einen Festnetzanschluss an, wird die SMS auch bei Sofort-Weiterleitung (in Fritzbox als Telefonanlage) auf ein Handy dem Handynutzer vorgelesen. Ich werde weiter forschen, ob das so machbar ist, dass auf einem Handy tatsächlich ein SMS-Text ankommt, das ist irgendwie praktischer, als wenn man in der Fußgängerzone ohne Schreibzeug so einen Nachrichten-Text auswendig lernen muss.
Nach diesen Tests hat mir GTC freundlicher Weise einen zweiten Test-SMS „gestiftet“, mit dem ich den Versand von einer SAIA PCD3 aus getestet habe. Auf die Spitzen Klammern in der Syntax für „SMS-Text im Mail-body“:
reagierte die Programmierumgebung PG5 mit Fehlermeldung, ob das per Codierung funktionieren würde habe ich nicht überprüft, stattdessen SMS-Text in den Betreff verlagert, den
ich dafür vom Default 80 Zeichen auf 160 Zeichen „aufbohrte".
Damit kann ich nun gut arbeiten.
Mein Standard-Problem: Nachricht soll an Heizungsfirmen etc. gehen, tagsüber Annahme am Zentralen-Telefon (daher bei Besetzt Wiederholung notwendig), außerhalb der Dienstzeit Rufweiterleitung dort an reihum wechselnde Bereitschaftsmoneurs-Handies, die dann auf die Meldung hin tätig werden sollen.
Einrichtung des Probeaccounts beim Email-to-SMS-Anbieter GTC TeleCommunication GmbH war einfach, wenn ich auch nicht gleich verstanden hatte, wie es geht. Um eine SMS-Benachrichtigung auszulösen muss der Mail-Body in vorgegebener Syntax Informationen zum Useraccount, Passwort, Ziel-Handynummer, Rückmeldungsverfahren (Auswahl beispeiesweise „nur bei erfolgloser SMS“ oder „Immer“?), Ziel-Emailaccount etc. enthalten. Da einige Linefeeds im Mailbody zwingend erforderlich sind wird der Mailbody-String mit etlichen CONCAT-Befehlen zusammengestrickt.
Für den E-Mail-Versand benutze ich den OSCAT-SMTP_CLIENT, den ich etwas „handlicher“ als den aus der Phoenix-IT-Library finde.
Das funktonierte auf Anhieb, allerdings belegen die „Formalien“ im Mail-Body bereits 168 Zeichen, so das für die eigentliche Information im Mail-Body (oscat_STRING_250) nur noch ca. 80 Bytes übrig blieben - das ist dürftig. Außerdem funktionierte SMS-Vorlesen am Festnetzanschluss nicht.
Innerhalb weniger Stunden hatte GTC meinen Account so umgeroutet, dass SMS-Vorlesen nun funktionierte, und für das Platz-Problem den Rat, das-Mail-Subject für den eigentlichen SMS-Text zu nutzen. Bringt im konkreten Fall allerdings keine Verbesserung, da der Oscat - SMTP_CLIENT als Summary 80-Zeichen-Strings verwendet. Zwar kann man an den Eingang des Bausteins auch oscat_STRING_250 „anschließen“, um Problemen während der Laufzeit vorzubeugen habe ich lieber einen passenden SMTP_CLIENT2 gebastelt. Verfahren: Oscat-Library pcworx_network_130.mwt in PCWORX geöffnet, SMTP_CLIENT als POE in die Task kopiert, dort die lokale Ausgangs-Variable „SUBJECT“ von „String“ auf „oscat_STRING160“ geändert – fertig!
Damit funktionierte der Versand einwandfrei. Kleiner Schönheitsfehler derzeit noch: gebe ich als Ziel-Telefonnummer einen Festnetzanschluss an, wird die SMS auch bei Sofort-Weiterleitung (in Fritzbox als Telefonanlage) auf ein Handy dem Handynutzer vorgelesen. Ich werde weiter forschen, ob das so machbar ist, dass auf einem Handy tatsächlich ein SMS-Text ankommt, das ist irgendwie praktischer, als wenn man in der Fußgängerzone ohne Schreibzeug so einen Nachrichten-Text auswendig lernen muss.
Nach diesen Tests hat mir GTC freundlicher Weise einen zweiten Test-SMS „gestiftet“, mit dem ich den Versand von einer SAIA PCD3 aus getestet habe. Auf die Spitzen Klammern in der Syntax für „SMS-Text im Mail-body“:
Code:
username=123456
password=987654321
text=<“Text der SMS“>
sms=Zielhandynummer
confirmation=off
confirmationaddress=Ihre@Mailadresse.de
reagierte die Programmierumgebung PG5 mit Fehlermeldung, ob das per Codierung funktionieren würde habe ich nicht überprüft, stattdessen SMS-Text in den Betreff verlagert, den
ich dafür vom Default 80 Zeichen auf 160 Zeichen „aufbohrte".
Damit kann ich nun gut arbeiten.
Zuletzt bearbeitet: