Ich bin gerade bei mir dabei die Rolladensteuerung um zu setzten und habe soweit durch das Wiki auch alle Shellies in Betrieb genommen via UDP. Mit "input:0":{"id":0,"state":\1 für Hoch usw.
Nun habe ich aber aktuell zwei Shellies die sich bei uns im Keller befinden und der eine hat noch eine gute Verbindung zum WLAN der andere nicht.
Durch diesen Umstand habe ich den einen Shelly mit dem guten Empfang mit einem Accesspoint ausgestattet der den anderen Shelly bei sich eingeloggt hat. Dadurch haben nun beide Shellies die gleiche IP Addresse, bsp.: 192.168.178.90.
Der eine Shelly der via AP verbunden ist hat allerdings hinten noch einen Port dran :91231.
Nun sehe ich im UDP Monitor allerdings beide der Shelly Werte via IP 192.168.178.90 und dem für beide identischen Port: 9887 (Eingestellt via UDP Konfig an den Shellies)
Was dazu führt, wenn ich die Tasten Hoch und Runter auch in Loxone einbinden möchte diese für beide Shellies an oder Aus sind wenn ich einen der Schalter veränder von nur einem der beiden Shellies.
Meine Frage ist nun wie kann ich diese unterscheiden damit ich sie beide getrennt auf virtuelle UDP Eingänge setzten kann?
Die ankommenden Textdaten sehen wie folgt aus:
Shelly1 - {"src":"shellyplus2pm-shelly1","dst":"*","method":"NotifyStatus","params ":{"ts":1725215909.41,"input:1":{"id":1,"state":true}}}
Shelly1 - {"src":"shellyplus2pm-shelly1","dst":"*","method":"NotifyStatus","params ":{"ts":1725215909.41,"input:1":{"id":1,"state":false}}}
Shelly2 - {"src":"shellyplus2pm-shelly2","dst":"*","method":"NotifyStatus","params ":{"ts":1725215913.32,"input:1":{"id":1,"state":true}}}
Shelly2 - {"src":"shellyplus2pm-shelly2","dst":"*","method":"NotifyStatus","params ":{"ts":1725215913.32,"input:1":{"id":1,"state":false}}}
Ich hatte folgendes versucht:
Shelly1 - Befehlserkennung: {"src":"shellyplus2pm-shelly1","dst":"*","method":"NotifyStatus","params ":{"ts":\#,"input:1":{"id":1,"state":\1}}}
Shelly2 - Befehlserkennung: {"src":"shellyplus2pm-shelly2","dst":"*","method":"NotifyStatus","params ":{"ts":\#,"input:1":{"id":1,"state":\1}}}
Damit klappt es leider nicht. Ich dachte ich kann irgendwie sagen, dass der Wert nach "ts": irgendwie ignoriert werden kann, da dieser eigentlich ja die Zeit darstellt.
Was mach ich bei der Befehlserkennung falsch?
Kommentar