Prototyp zu [55_SMS200L] - SMS Nachrichten zur Steuerung und Kontrolle von FHEM (veraltet)

Begonnen von MichaelPaul, 10 Oktober 2017, 23:28:36

Vorheriges Thema - Nächstes Thema

MichaelPaul

Aus dem Grund, dass eine neue SMS2OOL Version 1.00 BETA  (10. April 2018) existiert wurde dieser Thread geschlossen.

Warum?
Dieser hier stehende Verlauf ist ohne Frage interessant und jeder Beitrag eines jeden einzelnen hat auch seinen unschätzbaren Wert, dem bin ich mir bewußt bin.

Allerdings sind die hier im weiteren Verlauf beschriebenen Fehler nicht mehr vorhanden als auch wurde das Modul umfangreich geändert, weiterentwickelt und auch beschriebene Funktionen und Features existieren so nicht mehr.

Kurzum, einige Threads sind obsolet und können nun unnötigerweise zur Verwirrung beitragen.

Die neue Version ist zu finden unter:
https://forum.fhem.de/index.php/topic,86906.0.html

und ist mit folgendem Betreff beschrieben:
[55_SMS200L] - SMS Nachrichten zur Steuerung und Kontrolle von FHEM


koef2

Hallo MichaelPaul,

ich habe Dein Modul SMS2OOL im Einsatz zum Senden von SMS. Ich hatte vor mit GAMMU gearbeitet und bin dann auf smstools auf dem RASPI3 umgestiegen. Daher fand ich dein Modul sehr gut. Vielen Dank für die Programmierung.

Allerdings taucht ein Fehler auf bei "set SMS-send-MESSAGE < TEXT >"

Gebe ich über FHEM ein im DeviceOverview zu SMS2OOL ohne die Klammern, wird keine SMS verschickt, weil kein TExt vorhanden ist.

/var/spool/failed/gsm1.blabla
Zitat
To: 4917xxxxxxxxxxxx
Fail_reason: No text or data
Failed: 18-01-16 21:04:35


Gebe ich den Text mit den Klammern ein und Leerzeichen dazwischen "< test >", dann wird die SMS versandt.

/var/spool/sms/sent/gsm1.blubbblubb
Zitat
To: 4917xxxxxxxxxx
Modem: GSM1
Sent: 18-01-16 21:04:56
Message_id: 33
IMSI: xxxxxxxxxxxxxxx

test >

Infos zu FHEM und Raspi Linux:
FHEM: Latest Revision: 15168
Raspi 3 Linux --> Linux criccieth 4.9.35-v7+

Fehlt da gegebenfalls im Perlskript das Anlegen der Leerzeile?

Leider kenne ich mit Perl nicht so aus.

Da das Modul nicht automatisch bei dem FHEM Update dabei war, habe ich es gespeichert und mit SFTP auf den RASPI übertragen. Das war die Modulversion von 10. Oktober 2017 als Anhang in deinem Thread. https://forum.fhem.de/index.php?topic=77845.0

Aber vielleicht liegt der Fehler auch an mir.

Viele Grüße
Kai
Koef2

MichaelPaul

Hallo Kai,
es freut mich, dass das Modul gefällt.

Das SMS2OOL-Modul wurde überarbeitet, umstrukturiert und auch der von dir beschriebene BUG wurde bereinigt.
Die Dokumentation und auch die Dateien im Download-Bereich wurden aktualisiert!

Grüße
Michael Paul

koef2

Lieber Michael Paul,

SMS senden geht. Vielen Dank für deine Überarbeitung Deines Moduls. SMS Empfang kann ich leider nicht prüfen, da der Huawei E303 USB Stick in seinem eigenen Hilink System SMS empfängt.

Senden klappt super.
Nochmals ein dickes Dankeschön und ich kann nun weiter experimentieren.

Viele Grüße
Kai
Koef2

Noname

Hallo Michael,

so ein Modul gibt's schon seit 2015. Dieses Modul funktioniert auch ohne externe Tools.
Vielleicht ist es sinnvoll daraus ein Modul zu machen?

https://forum.fhem.de/index.php/topic,35989.0.html

lufi

Danke Michael, funktioniert für mich perfekt.

Hast du vielleicht einen Link wie man das Prepaid Guthaben konfiguriert ?

Gruß

Lutz

MichaelPaul

Hallo Lutz,
das Aufladen des Prepaid-Guthabens ist Provider abhängig und wird technisch mit dem Einsatz von spezieller USSD-Codes realisiert.

Auf den Internet-Seiten des entsprechenden Providers sollten die spezifischen USSD-Codes zu ermitteln sein. Hier z.B.:
https://www.alditalk.de/guthaben-aufladen


Nachfolgend einige USSD-Codes aufgeführt (kann gerne ergänzt und korrigiert werden!):

Das Abfragen der Höhe des aktuellen Prepaid-Guthabens:
*100# : ALDI TALK, Ay_yildiz, BILD mobil, Congstar, EasyTel, EDEKA mobil, Klarmobil, NettoKom, Norma Mobil
*101# : FONIC, FONIC mobile, BILD Connect, BLAU, EXPRESS mobil, K-Classic mobile, N-tv_go!, Netzclub
*131# : Lycamobile
*144# : FCB mobile


Das Aufladen weiteren Prepaid-Guthabens:
*100*Aufladenummer# : EDEKA mobil, Klarmobil
*101*Aufladenummer# : Congstar, EasyTel, GALERIA mobil
*103*Aufladenummer# : FONIC, FONIC mobile, BILD Connect, BLAU, EXPRESS mobil, GALERIA mobil, K-Classic mobile, N-tv_go!, Netzclub
*104*Aufladenummer# : ALDI TALK, Ay_yildiz, NettoKom, Norma Mobil
*131*Aufladenummer# : Lycamobile
*133*Aufladenummer# : FCB mobile


Das Ermitteln der Gültigkeit der SIM-Card und des aktuellen Prepaid-Guthabens:
*102# : ALDI TALK, BLAU



In der nächsten SMS2OOL-Version wird es möglich sein das Guthaben direkt mittels SMS2OOL aufzuladen - z.B. indem man von einem "TrustContact" das SMS-Kommando [Cash:1234567887654321] an die SMS2OOL-Instanz sendet. Über Attribute zur SMS2OOL-Instanz wird es dann möglich sein die spezifischen USSD-Codes zum eingesetzten Provider zu konfigurieren.


Grüße
Michael Paul

Gorba

Hi

Erstmal super tool vielen dank dafür.

Hab aber das Problem das wenn ich die Info aktiv habe und eine SMS ans tool sende ununterbrochen antworten bekomme bis das Guthaben aufgebraucht ist oder ich die info deaktiviere.
Wie kann ich dies beseitigen?

Und über ein Beispiel wie ich den Status eines dummy bei der SMSInfoTemplate bekommen konnte ware ich auch sehr dankbar.

Gorba


MichaelPaul

Hallo Gorba,
Prima, dass es dir gelungen ist die Ursache zu lokalisieren.

Eine Möglichkeit den Status eines FHEM-Dummys in ein Template - wie z.b. das SMSInfoTemplate - als Variable zur Verfügung zu stellen ist bisher keine Anforderung gewesen. Ob es überhaupt möglich sein wird - in der Art wie das Modul realisiert ist - mag ich zunächst bezweifeln.

Allerdings sollte es möglich sein das Attribut: SMSInfoTemplate jederzeit im laufenden Betrieb neu zu definieren um so dann auch FHEM-Dummys oder gar auch andere Gerätezustände mit der SMS-NAchricht zu versenden.

Ein anderer Ansatz wäre mittels einer der SET-Funktionen eine individuelle SMS-Nachricht zu versenden.


Gorba

Die set Funktion hab ich schon verbaut als "Alarm" die lauft super.
Wurde nur gerne mit der Info eine komplette Übersicht der derzeitigen zustande der Gerate erhalten.

BroToTyp

Salut!
Erst einmal ein herzliches Dankeschön für das Modul!
Läuft soweit hervorragend und stabil durch und ich kann meine Heizung in der Ferienwohnung schön per SMS steuern.

Bei gewissen Aktionen (DEFINE 1)
define SMS_DEVICE_notify_Heizung_AUS notify SMS_DEVICE:SMSincomingMESSAGE:.Heizung.aus set MAX_1a6bbc_desiredTemperature 15

kommt jetzt schon eine Antwort (DEFINE 2)
define MAX_1a6bbc_notify_15Grad notify MAX_1a6bbc:desiredTemperature:.15.0 set SMS_DEVICE SMS-send-Message Die Heizung wurde dauerhaft auf die Minimaltemperatur von 15°C (AUS) gestellt.

==> EDIT: Ich vermute einfach mal, dass meine Anfrage ähnlich der von Gorba ist? Wenn ja, klinke ich mich da einfach mal ein  :)

Jetzt frage ich mich allerdings, ob eine Art Statusmeldung per SMS machbar wäre: 
SMS an den Raspi mit einem bestimmten Text (z.B. "STATUS"), welche dann als Notify eine Antwort zurücksendet.

Der Befehl für den Status wäre "list MAX_.* mode" und wenn dieser ganz regulär auf der FHEM-Seite eingegeben wird (noch ist ja alles per Web erreichbar), dann folgt als
Ausgabe:  MAX_1a6bbc           2018-03-16 13:56:48    auto
(das hätte ich gerne per SMS erhalten)

Das Problem ist nur: Wie kann ich den Status in die SMS einbauen?

define SMS_DEVICE_notify_TEST notify SMS_DEVICE:SMSincomingMESSAGE:.STATUS set SMS_DEVICE SMS-send-Message ERGEBNIS DES BEFEHLS "list MAX_.* mode"

Ich hoffe, ich habe mich da halbwegs verständlich ausgedrückt - ich bin mit FHEM leider weitaus weniger bewandert, als ich das gerne hätte ;-)

Im Voraus schon einmal herzlichen Dank für die (hoffentlich) folgenden Vorschläge!


EDIT: Hat sich quasi erledigt. Ich habe das über ein Skript erledigt, das bei einer bestimmten SMS einfach ausgeführt wird und die aktuellen Zustände zurückschickt.

MichaelPaul

Zitat von: koef2 am 19 Januar 2018, 20:53:09
SMS Empfang kann ich leider nicht prüfen, da der Huawei E303 USB Stick in seinem eigenen Hilink System SMS empfängt.

Hallo Kai,
der von dir eingesetzte Stick kann bestimmt auch per modeswitch in den Modembetrieb umgeschaltet werden.  Es besteht die Möglichkeit, dass ein aktuelleres modeswitch-data packet die erforderlichen Kommandos beinhaltet. Oder eben du machst dich auf die Suche nach "modeswitch Huawei E303".

Dies liefert in jedem Fall eine Vielzahl von Suchergebnissen die sich mit dem Thema auch befasst haben und sicherlich auch zu einer Lösung gekommen sind.

Eventuell hier:
https://gist.github.com/manuel-rabade/02342ad08361b573b061

Grüße
Michael Paul

koef2

Hallo Michael Paul,

danke für den Tipp.
Hatte damit schon Mal experimentiert und ging auch halbwegs. Werde mich mal daran geben, wenn meine anderen Baustellen abgearbeitet sind. Leider habe ich nicht so viel Zeit für FHEM, wie ich gerne hätte.

Viele Grüße und schöne Rest-Ostern
Kai
Koef2


MichaelPaul

Zitat von: Noname am 03 Februar 2018, 11:05:18
Hallo Michael,

so ein Modul gibt's schon seit 2015. Dieses Modul funktioniert auch ohne externe Tools.
Vielleicht ist es sinnvoll daraus ein Modul zu machen?

https://forum.fhem.de/index.php/topic,35989.0.html

Hallo Noname,
schau dir doch mal meine neue Version an.

Mein Ansatz ist ein anderer und deshalb habe ich mich für den Einsatz der SMSTOOLS3 entschieden.

Warum?
SMSTOOLS3 läuft unabhängig von FHEM und führt selbst wenn es nicht laufen sollte zu keiner Beeinträchtigung in FHEM!

SMSTOOLS3 reagiert und bedient lediglich die Inhalte von Verzeichnissen.

Mein Modul SMS2OOL liest bzw. schreibt in diese Verzeichnisse und SMSTOOLS3 kümmert sich um den Rest!

Bei mehreren hintereinander zu versendende SMS-Nachrichten werden lediglich die dafür erforderlichen Dateien in das Outgoing Verzeichnis geschrieben ... SMSTOOLS3 kümmert sich dann um den Versand und macht dies OHNE FHEM damit zu konfrontieren bzw. zu belasten.

Welchen Ansatz verfolgst du mit deiner Lösung?

Danke und Gruß
Michael Paul