Seite 1 von 2
Mal wieder:Exec binding
Verfasst: 20. Jun 2021 18:05
von filmgucker2
Liebe Gemeinde, lieber UdoToni

,
umgestellt auf OH3. Und mal wieder Probleme mit exec...Ich möchte ein php script ausführen lassen.
Das exec thing nicht über eine Things Datei, sondern über die UI angelegt. Feld "Befehl" ausgefüllt, wie bei
OH2. Dann Channels. Ausführen= run verlinkt. Switch Item angelegt zum Anschalten. Nicht einmal der Knopf, nur die
NULL wird angezeigt. Was mache ich diesmal falsch? Die whitelist Datei ist befüllt (die hat man übrigens erfunden, um
es Anfängern wie mir besonders schwer zu machen! Auf die Idee, das mit der whitelist gleich beim Anlegen des Things in der UI mitzuregeln, scheint noch niemand gekommen zu sein. Aber das wäre wohl zu einfach...). Auf der Kommandozeile putty
kann ich den Befehl übrigens problemlos ausführen...Bitte Hilfe!
VG
Knut
Re: Mal wieder:Exec binding
Verfasst: 2. Jul 2021 13:38
von Tel32
Hi,
geht mir fast genauso. Ich sehe den Knopf zwar aber nix passiert. Alles eingetragen wie ich es in der Konsole eingebe. Auch in der Whitelist. Nix passiert.
Re: Mal wieder:Exec binding
Verfasst: 2. Jul 2021 14:53
von udo1toni
Die Konsole hat erst mal nicht viel mit openHAB zu tun. Nur weil ein Befehl an der Konsole funktioniert, muss er noch lange nicht in openHAB funktionieren. Da geht es mal mit den Rechten los, über den Benutzer, und es endet mit evtl. unterschiedlicher Formatierung.
Wie sieht das Script aus? Wie sieht Dein Aufruf aus?
Wie hast Du das Item angelegt?
Eine automatische Übernahme des Befehls in die Whitelist würde die Datei komplett ad absurdum führen

Die Idee der Datei ist, dass man diese Datei zusätzlich befüllen muss (was nur als Superuser gelingt...) Es geht hier um zusätzliche Sicherheit, nicht darum, die Anwender zu gängeln.
Re: Mal wieder:Exec binding
Verfasst: 3. Jul 2021 18:45
von Tel32
Hi,
vom Item ein Screenshot bevor ich das lange beschreibe
vom exec Ding
und die whitelist
Mfg
Jens
Re: Mal wieder:Exec binding
Verfasst: 3. Jul 2021 18:49
von udo1toni
Group Items lassen sich nicht an Channel koppeln (bzw. zumindest nicht erfolgreich).
Re: Mal wieder:Exec binding
Verfasst: 3. Jul 2021 18:52
von Tel32
Das bedeutet es ist nicht korrekt. Sondern wie dann?
Re: Mal wieder:Exec binding
Verfasst: 3. Jul 2021 19:06
von udo1toni
Na, das Item, welches Du mir gezeigt hast, ist ein Group Item. Du musst ein gewöhnliches Switch Item anlegen.
Re: Mal wieder:Exec binding
Verfasst: 6. Jul 2021 08:47
von Tel32
Hi,
irgendwie stelle ich mich doof an....
ich hab aus dem Exec ein Item erstellt als Switch aber ich kann das nicht schalten.

Re: Mal wieder:Exec binding
Verfasst: 6. Jul 2021 16:47
von udo1toni
Was tust Du denn da? Das Exec, was Du da auswählst, ist das Profile, das hat nichts mit dem Exec Addon zu tun!
Du musst einfach nur ein stinknormales Switch Item anlegen und mit dem input Channel vom Exec Thing verbinden. Schritt für Schritt:
1. Exec Thing anlegen, dort als Befehl den gewünschten Befehl mitsamt dem Platzhalter %2$s eintragen, dort wo der Befehl das ON oder OFF erwartet.
2. autorun=true setzen, damit ein Befehl an den Input Channel zum Ausführen des hinterlegten Befehls führt.
3. ein Switch Item mit dem Input Channel verknüpfen. Pur, ganz ohne irgendwelchen Firlefanz.
4. In der whitelist den exakten Aufruf eintragen (es gehören keine Leerzeichen vor den Befehl oder den Pfad - nur weil das auch schon als Fehler aufgetaucht ist)
5. Zur Sicherheit evtl. openHAB mal neu starten.
6. Switch Item schalten und im Log schauen, ob das Exec Addon versucht, den Befehl auszuführen. In dem Zusammenhang bietet es sich übrigens an, ein bash Script aufzurufen, im Bash Script kann man wunderbar einen Zeitstempel mit dem Parameter in eine Datei schreiben lassen, so dass man "von außen" sehen kann, ob der Befehlsaufruf funktioniert.
Bitte kein Profile nutzen, wenn Du nicht verstehst, wozu das da ist. Bitte kein Group Item verknüpfen, das kann keine Commands senden.
Re: Mal wieder:Exec binding
Verfasst: 8. Jul 2021 14:26
von Tel32
Hi,
vielen Dank für die Beschreibung. Sowas fehlt mir
Ich hatte das am Anfang schonmal so aber da ging es auch nicht. ON/OFF werden protokolliert aber der Befehl wird nicht ausgeführt.
Ich hab in das Script ein "Echo" in eine Datei ausgeführt. Kann ich in irgendeinem Protokoll sehen was er wie aufruft und dann sehen woran es hapert?
In der whitelist steht exact der Befehl inkl. Pfad drin.