Hallo,
Vielleicht weiß hier jemand Rat,
Ich möchte gerne zeitgesteuert eine UDP Nachricht per at Befehl versenden.
Plan ist, dass das Wandtablet im Flur jeden Tag zu einer bestimmten Uhrzeit die App wechselt und das Bild der Überwachungskameras anzeigt. Der befehl dafür wäre:
*20:00:00 {UDP_Msg("192.168.2.6" , "wolido:launchapp1")}
Auf meinem fhem laufen mehrere atˋs problemlos. Nur das mit der UDP möchte einfach nicht klappen.
Wenn ich den Perl Code in der Befehlszeile eingebe, wechselt das Tablet brav die App zu den Kameras.
Examples:
# absolute ones:
define a1 at 17:00:00 set lamp on # fhem command
define a2 at 17:00:00 { Log 1, "Teatime" } # Perl command
hast du die sub UDP_Msg in der 99 my Utils?
https://forum.fhem.de/index.php/topic,56581.0.html (https://forum.fhem.de/index.php/topic,56581.0.html)
Ja...
Wie gesagt: wenn ich händisch eintippe, funktioniert es ja...
Ich steuere mehrere Sachen an dem Wandtablet automatisiert per UDP. Z.b. Wenn jemand klingelt, wechselt es auch die App und zeigt die Kamera an der Haustüre...
Das ist jedoch per notify gesteuert.
Kann es sein, dass ich erst einen Dummy erstellen muss, der dann per at getriggert wird?...
Jedoch sollte laut Commandrev ,,at" auch perl können
hast Du auch ein reload der der 99_myUtils gemacht nachdem Du die funktion eingegeben hast? Oder einen Neustart des FHEM Servers?
Gibt es was im Log - oder im Eventmonitor im moment wenn das at triggert?
Eben habe ich nachgesehen.
Im Event monitor passiert nichts zur eingestellten zeit.
Irgendwas grundsätzliches scheint nicht zu stimmen.
Gib mal bitte ein list von dem at
list ATNAME
Internals:
COMMAND set {UDP_Msg("192.168.2.6" , "wolido:launchapp1")}
DEF *10:37:00 set {UDP_Msg("192.168.2.6" , "wolido:launchapp1")}
NAME Bildschirm_Kamera
NR 112
PERIODIC yes
RELATIVE no
REP -1
STATE Next: 10:37:00
TIMESPEC 10:37:00
TRIGGERTIME 1538383020
TRIGGERTIME_FMT 2018-10-01 10:37:00
TYPE at
READINGS:
2018-09-30 10:37:00 state Next: 10:37:00
Attributes:
Ohne ,,set" passiert auch nichts
Kannst Du den sicherstellen das 192.168.2.6 keine Nachricht bekommt?
Vielleicht funktioniert ja "nur" der umschaltmechanismus auf dem Display nicht richtig...
Meiner meinung nach sollte aber im Eventmonitor sowohl das Triggern des At´s als auch die Übertragung per UDP erscheinen...
Ich kann mit händischer Eingabe oder Copy/paste in der Befehlszeile hin und herschalten wie ich möchte. Das passiert zuverlässig und latenzfrei. Mit dem at wird auch überhaupt nichts im Eventmonitor erfasst.
Kann es sein dass das das at erst aktiviert werden muss? Es sieht so aus als wäre es deaktiviert oder so...
Jedoch wird als ,,next" die eingestellte zeit ausgegeben
Bitte immer in Codetags setzen.
DEF *10:37:00 set {UDP_Msg("192.168.2.6" , "wolido:launchapp1")}
Das set ist totaler Blödsinn. Nimm es weg und dann sollte es gehen.
In manchen Faellen hilft es in die FHEM-Log Datei zu schauen, da werden solche Probleme protokolliert.
Die Meldungen des FHEM-Logs kann man in FHEMWEB mit dem Logfile-Link im Menu oder mit dem "FHEM Log" Haken im Event-Monitor anschauen.
Mit "set Bildschirm_Kamera execNow" kann man den Befehl ausfuehren, ohne die Zeit zu verstellen.
Ahhh... Vielen Dank für den Hinweis Rudi,
Im Logfile:
2018.09.30 11:14:04 3: Bildschirm_Kamera: Unknown command {UDP_Msg("192.168.2.6", try help.
Hast du gelesen was ich geschrieben habe? Nimm das set weg im at und gut ist.
Habe es nur mal testweise reingeschrieben. Es ist bereits weg
Und nun führe das at wie Rudi schrieb aus um zu testen.
Das führt eben zu diesem Eintrag ins Log:
2018.09.30 11:56:28 3: Bildschirm_Kamera: Unknown command {UDP_Msg("192.168.2.6", try help.
Gib mal bitte ein aktuelles list
Internals:
COMMAND {UDP_Msg("192.168.2.6" , "wolido:launchapp1")}
DEF *11:08:00 {UDP_Msg("192.168.2.6" , "wolido:launchapp1")}
NAME Bildschirm_Kamera
NR 112
PERIODIC yes
RELATIVE no
REP -1
STATE Next: 11:08:00
TIMESPEC 11:08:00
TRIGGERTIME 1538384880
TRIGGERTIME_FMT 2018-10-01 11:08:00
TYPE at
READINGS:
2018-09-30 11:08:00 state Next: 11:08:00
Attributes:
Müsste ich auch erstmal testen. Sehe da kein Problem. Kann aber erst heute Abend.
FHEM ist aktuell? Änderungen hast Du über FHEMWEB mit DEF gemacht?
Schiebe Mal alles zusammen
{UDP_Msg("192.168.2.6" , "wolido:launchapp1")}
Zu
{UDP_Msg("192.168.2.6","wolido:launchapp1")}
Also alles ohne Leerzeichen
Komisch...
Habe noch einmal die Zeit geändert und plötzlich hat es funktioniert....
Verstehen oder reproduzieren kann ich es jedoch nicht...
Auch die Leerzeichen machen keinen Unterschied.
Vielen Dank für eure Hilfe
Ich vermute tabs nach dem }. Leerzeichen werden naemlich entfert.