Seite 1 von 2

Timer per URL steuern

Verfasst: Di 22. Mai 2018, 09:57
von mrberni
  • GET: Ausführung aller Timer steuern (Globalen Timer an-/abschalten)
    index.php?type=timerglobalrun&action=off
  • POST: Einzelne Timer an-/abschalten
    curl -vvv -d 'action=off&id=3' http://127.0.0.1/fb-switch/edit_timer.php
Gruß

Re: Timer per URL steuern

Verfasst: Fr 19. Okt 2018, 21:33
von WOLFGANG
Ich hab da mal ne Frage :oops:

Ich möchte gerne einige Timer auf Tastendruck (Button) ein oder ausschalten.

Devices wurde erstellt und hab dann folgendes als Befehl in der Config eingebunden.

<rawCodeOn>curl -vvv -d "http://127.0.0.1/fb-switch/edit_timer.php action=on&id=40"</rawCodeOn>
<rawCodeOff>curl -vvv -d "http://127.0.0.1/fb-switch/edit_timer.php action=off&id=40"</rawCodeOff>

40 ist nur mal ein Testtimer

Was mach ich verkehrt? :?

Danke für die Antworten und Denkanstöße

Re: Timer per URL steuern

Verfasst: Sa 20. Okt 2018, 09:26
von mrberni
Moin,

"curl" ist ein Befehl auf der Linux-Shell. Das kann nicht so einfach in FB.Switch selbst eingebunden werden. Dazu müssten GET-Befehle unterstützt werden, was aber bisher nur für das An-/Abschalten der gesamten Timer-Ausführung implementiert ist.

EDIT: Du könntest das ggf. über ein SSH-Gerät realisieren: Damit könntest du einen Shell-Befehl absetzen. Da kommt es aber drauf an wo bei dir FB.Switch drauf läuft...

Gruß

Re: Timer per URL steuern

Verfasst: Sa 20. Okt 2018, 22:32
von WOLFGANG
Ich hatte es bereits über SSH probiert.

<id>36</id>
<name>TEST</name>
<vendor>ssh</vendor>
<sendCommandsOnlyOnce>true</sendCommandsOnlyOnce>
<address>
<masterdip/>
<slavedip/>
<tx433version/>
<rawCodeOn>curl -vvv -d "http://127.0.0.1/fb-switch/edit_timer.php action=on&amp;id=40"</rawCodeOn>
<rawCodeOff>curl -vvv -d "http://127.0.0.1/fb-switch/edit_timer.php action=off&amp;id=40"</rawCodeOff>
<ssh_address>127.0.0.1</ssh_address>
<ssh_user>pi</ssh_user>

:shock:

Re: Timer per URL steuern

Verfasst: Sa 20. Okt 2018, 22:56
von mrberni
Hi,

du hast da aber dann was verwechselt. Schau dir oben noch mal das Beispiel von mir an: -d '#PAYLOAD#' #URL#

Gruß

Re: Timer per URL steuern

Verfasst: So 21. Okt 2018, 12:29
von onkeldave
Moin,
ich fand das auch gerade sehr interessant und hab es mal probiert. Wenn ich auf der Konsole

Code: Alles auswählen

curl -vvv -d 'action=on&id=16' http://127.0.0.1/fb-switch/edit_timer.php
wird der Timer aktiviert.
Der gleiche Befehl als SSH Gerät (egal ob sudo oder nicht) funktioniert aber nicht.

Code: Alles auswählen

sudo curl 'http://127.0.0.1/fb-switch/index.php?action=on&type=device&id=125'
wird als SSH Gerät ausgeführt, SSH funktioniert also. Was mache ich falsch?!

Re: Timer per URL steuern

Verfasst: So 21. Okt 2018, 15:28
von mrberni
Der Unterschied liegt an deinem Beispiel daran das du es einmal als POST Request machst und beim zweiten als GET. Es wird aber nur POST unterstützt. Parameter direkt an die URL anhängen (GET) geht hier nicht.

Gruß

Re: Timer per URL steuern

Verfasst: Di 23. Okt 2018, 09:10
von WOLFGANG
Die Frage deutlicher formuliert:

Wie bekomme ich es hin, dass ich in der WebApp einige Timer ein- und wieder ausschalten kann.

Re: Timer per URL steuern

Verfasst: Di 23. Okt 2018, 09:40
von mrberni
Moin,

du kannst doch in der WebApp unter "Timer" einfach welche An- und Ausschalten?
Timer.JPG
Gruß

Re: Timer per URL steuern

Verfasst: Di 23. Okt 2018, 14:15
von WOLFGANG
Ja, das bekomme ich noch hin.

Ich hätte gerne auf Tastendruck mehrere Timer ein- oder ausgeschaltet.

z. B. Es ist sonnig und die Rollos für Schatten die natürlci für Ost Süd und Nord verschieden sind, eingeschltet und wenn die Sonne mal nicht scheint, wieder ausschalten.

Mit einem Sensor wäre das ntürlich noch schöner. Aber eins nach dem Anderen.