Hallo,
ich habe gebastelt und kann über die Kommandozeile des RPi Funksteckdosen ansteuern.
Nun möchte ich die aber über IP-Symcon schalten. Kann ich den RPI - Befehl „sudo pilight-send…“ über das Netzwerk von IPS aus auslösen ( vielleicht aus einem Script heraus? ) ?
Ehrlich gesagt weiß ich nicht, ob es beim Raspberry und da im Zusammenhang mit IPS etwas besonderes zu beachten gibt, aber grundsätzlich läuft sowas über shell exec…
Hallo Chris,
Vielen Dank für die Antwort. Es ist so, dass ich IPS auf einem WIN Rechner am laufen habe und der RPi hängt im selben Netz. Ich werd mal Deine Links durchstöbern, vielleicht finde ich was.
Willst du nun HTTP oder SSH machen? Username und Passwort brauchste auch nicht? …? verwirrt
Vlt. solltest du mal deinen Aufbau und deine Aktoren usw. genauer beschreiben…du bist irgendwie etwas durcheinander und machst uns damit durcheinander und dann kann keiner mehr irgendwem helfen
Hallo,
sorry, wenn ich das nicht so klar dargestellt habe.
Ich habe eine IPS die auf einem Rechner mit WIN 7 läuft und am Netzwerk hängt.
Dann habe ich einen RPi, der hängt am selben Netzwerk. Diesen RPi spreche ich über SSH an und schalte Funksteckdosen über pilight mit einem Befehl. Das funktioniert auch soweit.
Nun möchte ich aber nicht direkt den RPi ansprechen sondern das zentral über IPS verwalten.
Ich hoffe das bringt etwas Licht ins Dunkel, mir fehlt die Erfahrung derart Kommandos über das Netzwerk zu senden.
Hallo,
vielen Dank für die Tipps. Ich bin weitergekommen, plink funktioniert !!
Ich kann zumindest über CMD den Befehl absetzen, mit Erfolg.
so könnte es dann aussehen:
IPS_Execute(„C:\Programme\Putty\plink.exe“, „192.168.2.125 -l user -pw Password sudo pilight-send -p impuls -u 2 -s 28 -t“,true,false);
Jetzt hakt es im Script. Habe schon einiges versucht, es muss etwas grundlegendes sein, denn nicht mal
Es kommt keine Fehlermeldung im Script-Fenster, es erscheint nur als Popup der Hinweis „Ausführung“
Ich bin über RDP auf dem Rechner drauf, kann das Auswirkungen haben?, aber wie geschrieben, aus der CMD heraus funktionieren die Befehle.
Es lassen sich jetzt Funksteckdosen ( z.Zt. 3 verschiedene Fabrikate) über IPSView schalten. Dazu habe ich eine Boolean Variable eingerichtet, diese wird aus IPSView „getoggelt“ und startet dann folgendes Script. Dieses sendet via plink einen Befehl an den Raspi.
// Dieses Script wird über einen IPSToggleButton gestartet und bewirkt die Umschaltung der Funkstecksose "kaku_switch_old -i 30 -u 14" .
// Der Button togglet den Punkt 16962, dieser startet bei Zustandswechsel dieses Script
$status6 = GetValueboolean (16962/*[Heizung\Zirkulationspume\Status]*/);
// ********* warum hier die falsche Bezeichnung steht ist noch nicht erforscht ************
if ($status6 == false)
{ IPS_ExecuteEx("c:/Programme\Putty\plink.exe", "192.168.2.125 -l pi -pw XXXXXXX sudo pilight-send -p kaku_switch_old -i 30 -u 14 -t", True, False, 2);
SetValueBoolean (16962 /*[DekoLampen\FSConradI1]*/,true);
}
else
{ IPS_ExecuteEx("c:/Programme\Putty\plink.exe", "192.168.2.125 -l pi -pw XXXXXXX sudo pilight-send -p kaku_switch_old -i 30 -u 14 -f", True, False, 2);
SetValueBoolean (16962 /*[DekoLampen\FSConradI1]*/,false);
}
// der Parameter " 2 " in IPS_ExecuteEx ist die BenutzerID, herauszufinden über den Taskmanager
folgende Funksteckdosen sind im Einsatz :
Aldi - Quigg ( mit Lerntaste )
Conrad kodierbar mit 2 Drehschalter
DIW kodierbar mit DIP-Schalter
Auf dem Raspi ist Pilight installiert mit einem 433 MHz Sendemodul.
$status6 = GetValueboolean (16962/[Heizung\Zirkulationspume\Status]/);
// ********* warum hier die falsche Bezeichnung steht ist noch nicht erforscht ************
>> Die Beschreibung wird erst angepasst/geändert/erneuert/erzeugt, wenn du das Skript einmal geschlossen und dann wieder neu geöffnet hast. Einfach nur die ID ändern ändert nicht die Beschreibung. Erst Skript zu und wieder neu öffnen löst die Automatik aus, welche die Bezeichnungen neu generiert
das alleine hilft nicht, habe das schon mehrfach probiert.
Aber,…
die Zeile neu eintippen, bzw. eine Leertaste hinter 16962, speichern und neu aufrufen, dann ist alles gut.
Hatte die Zeile aus einem anderen Script kopiert und dann bei der Anpassung der ID wohl nicht aus das Leerzeichen geachtet.
Alos ich starte auf dem RPi ein kleines Python script welches auf einen bestimmten Port hört und die entsprechend mitgelieferte parameter auswertet. Je nach Parameter = Kommando ruf ich auf dem RPi is script auf. Rückgabe Werte kommen dann einfach über den UDP port zurück und werden von IPS ausgewertet.
wenn man als IPS Server ein Raspi benutzt und mit IPS ein anderen Raspi „GPIO“ Steuern möchte?
Beide Pi’s im selben Netzwerk natürlich.
Habe als IPS Server ein Raspberry Pi und im Zählerschrank ein Banana Pi auf dem Volkszähler läuft.
Auf dem Banana Pi ist eine kleine Erweiterung von Udo (volkszähler).
Bald kommt die große Erwiterung (mehr S0 eingänge) die auch 2 Relais am Bort hat. Und wenn ich die mit IPS Steuern könnte, währe es schon Geil
wie in meinem Beispiel oben - müsste eigentlich gehen - da du ja auf dem ‚Client‘ RASPI in dem Python Script beliebige Sachen machen kannst - Shell befehl , GPIO etc.