Hauptmenü

Dummy Notify

Begonnen von Qhiliqq, 19 April 2020, 17:55:10

Vorheriges Thema - Nächstes Thema

Qhiliqq

Hi,

ich baue gerade von einer eigenen PHP Steuerung auf FHEM um, da es hierfür einfach die App gibt ;)

Ich habe bei mir im System drei Raspis, ein Pi3+ habe ich als "FHEM-Basis" eingerichtet und FHEM installiert.
Zwei weitere Raspi Zeros sind per selbem SSH_Key von der Basis aus erreichbar.

An den Zeros hängen verschiedene Relais zu steuern von Beleuchtung, Gartenbewässerun und meinem Brunnen.

Die Kommunikation zw. Basis und Zeros funktioniert vom User "fhem" problemlos.
Commands hin schicken geht also.

Jetzt möchte ich die Zeros natürlich mit FHEM nutzen.

Habe dafür mal einen "Licht" Dummy angelegt mit webCmd on:off.
Danach einen Notify mit folgendem:

define act_on_licht notify Licht {\
if ("$EVENT" ne "off") {\
  system("ssh 'fhem@192.168.178.25' gpio -g write 4 1 &")\
} else {\
  system("ssh 'fhem@192.168.178.25' gpio -g write 4 0 &")\
}\
}


Die Commands funktionieren wie gesagt als user "fhem" per putty z.B.

Bin ich einfach doof? :D

Grüße,
Philipp

Otto123

#1
Hi,
Es gäbe zwei Fehlerquellen:
Wer hat die ssh Keys auf deiner fhem Maschine? Wirklich User fhem? Mit welchen User probierst Du in putty?

Es kann sein das @ musst Du schützen.

In beiden Fällen sollte das Log Auskunft geben.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Qhiliqq

#2
Zitat von: Otto123 am 19 April 2020, 18:00:55
Hi,
Es gäbe zwei Fehlerquellen:
Wer hat die ssh Keys auf deiner fhem Maschine? Wirklich User fhem? Mit welchen User probierst Du in putty?

Es kann sein das @ musst Du schützen.
//EDIT: Habe ich auskommentiert, geht trotzdem nicht.
In den Logs steht nichts als aufruf der notify...

In beiden Fällen sollte das Log Auskunft geben.

Gruß Otto

Hi,

SSH Keys sind von user fhem, da geht ja auch von meiner fhem basis aus problemlos wenn ich als user fhem eingeloggt bin.
Und in putty bin ich auch als fhem angemeldet.

Das @ teste ich gleich mal, ob ich das escapen muss, das wäre eine Idee.

Grüße,
Qhiliqq

Qhiliqq

Der Escape war das Problem ;)

Ein \ vor das @ und fertig :)

Otto123

Weitere Tipp zur Verbesserung / Vereinfachung
attr Licht eventMap on:1 off:0
defmod act_on_licht notify Licht:(1|0) "ssh fhem@192.168.178.25 gpio -g write 4 $EVENT"
Erklärung eventMap ändert den Wert im Event also Du machst set Licht on heraus komm ein Event mit set Licht 1
Hier steht warum das mit " Befehl" gut geht :) https://fhem.de/commandref_DE.html#command

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz