[erledigt] Programme per ext. Script ansprechen.
Moderator: Co-Administratoren
[erledigt] Programme per ext. Script ansprechen.
Liebe Foren-Gemeinde
noch ein Post von mir.
Wie kann ich ein Programm von extern per Script triggern (starten)?
Gruss Dani
noch ein Post von mir.
Wie kann ich ein Programm von extern per Script triggern (starten)?
Gruss Dani
Zuletzt geändert von dll-live am 17.04.2018, 19:28, insgesamt 1-mal geändert.
- Black
- Beiträge: 5480
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: Programme per ext. Script ansprechen.
vllt ein wenig besser beschreiben...
was ist extern ? womit starten ?
was ist extern ? womit starten ?
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
Re: Programme per ext. Script ansprechen.
Hallo Black.
Gern gebe ich weitere auskünfte.
Ich würde gerne die Programme auf der Homematic CCU2 - von meinem Linux-Rechner aus starten.
(z.B.: Gibt es ein Programm auf der Homematic das Heisst- MAch das Fenster auf und Shcliesse es nach 45 min automatisch wieder - nennen wir es "Fenster auf",
Gerne würdei ch nun auf dme Linux.rechner einen Befhle an die CCU absetzen mit dem das Script "Fenster auf" ausgeführt wird.
Hoffe das dies nun verständlicher ist.
Gruss Dani
Gern gebe ich weitere auskünfte.
Ich würde gerne die Programme auf der Homematic CCU2 - von meinem Linux-Rechner aus starten.
(z.B.: Gibt es ein Programm auf der Homematic das Heisst- MAch das Fenster auf und Shcliesse es nach 45 min automatisch wieder - nennen wir es "Fenster auf",
Gerne würdei ch nun auf dme Linux.rechner einen Befhle an die CCU absetzen mit dem das Script "Fenster auf" ausgeführt wird.
Hoffe das dies nun verständlicher ist.
Gruss Dani
- Black
- Beiträge: 5480
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: Programme per ext. Script ansprechen.
geht... wenn du beispielsweise python auf deiner Maschine hast:
ein programm startest dann mit dom.GetObject (ID_PROGRAMS).Get ("IchBinDeinProgrammName").ProgramExecute (true);
Code: Alles auswählen
from datetime import datetime
from urllib.request import urlopen
from http.server import BaseHTTPRequestHandler, HTTPServer
import time as t
import http.client
# Verbindungsinformationen zur CCU2
# ---------------------------------
ipCCU2 = "192.168.2.2" <----------------IP DEINER CCU
xmlrpcPort = 8181
ENpushCCU = True
def pushState (command):
# im Testmode schreiben wir nicht wild auf de CCU rum
if ENpushCCU:
try:
httpServ = http.client.HTTPConnection(ipCCU2, xmlrpcPort)
httpServ.connect()
httpServ.request('POST', 'blabla.exe', command)
response = httpServ.getresponse()
reason= response.status,response.reason
httpServ.close()
return reason
except:
# Wenn eine Fehlübertragung: egal in dem Test
return
pushState ('dom.GetObject ("ZZTEST").State (22.22)')
ein programm startest dann mit dom.GetObject (ID_PROGRAMS).Get ("IchBinDeinProgrammName").ProgramExecute (true);
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
Re: Programme per ext. Script ansprechen.
Sali Black.
Meine Maschine hat Python drauf.
Darf ich fragen woher du die ganzen Befehle kennst.
Wie komm ich zu dazu?
Gruss
Dani
Meine Maschine hat Python drauf.
Darf ich fragen woher du die ganzen Befehle kennst.
Wie komm ich zu dazu?
Gruss
Dani
- Black
- Beiträge: 5480
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: Programme per ext. Script ansprechen.
python Befehle ? ich hab da mehrere nett fette Fachbücher über Python. und in Python ist auch mein Gateway zur Anbindung einer Buderus Logamatic 2107 Heizungssteuerung mit einem nachgebildeten 3964R Protokoll programmiert ^^
Black
Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
Re: Programme per ext. Script ansprechen.
Sali Balck
Ach so ja dann ist mein leiden ja nur doppelt so schlimm... Python geht so einigermassen udn die CCU habei ch auch nicht komplett im griff. juhui....
Zwei blöde Fragen zu dem Code:
In der Zeile " pushState ('dom.GetObject ("ZZTEST").State (22.22)') "
Für was steht das 22.22?
Ist die Annahme: das in der Zeile " httpServ.request('POST', 'blabla.exe', command)" das blabla.exe genau so stehen bleiben muss richtig?
Zudem gehe ich davon aus, dass das command -> sprich "ZZTEST" der Name meines Programms ist. richtig?
Gruss Dani
Ach so ja dann ist mein leiden ja nur doppelt so schlimm... Python geht so einigermassen udn die CCU habei ch auch nicht komplett im griff. juhui....
Zwei blöde Fragen zu dem Code:
In der Zeile " pushState ('dom.GetObject ("ZZTEST").State (22.22)') "
Für was steht das 22.22?
Ist die Annahme: das in der Zeile " httpServ.request('POST', 'blabla.exe', command)" das blabla.exe genau so stehen bleiben muss richtig?
Zudem gehe ich davon aus, dass das command -> sprich "ZZTEST" der Name meines Programms ist. richtig?
Gruss Dani
- Black
- Beiträge: 5480
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: Programme per ext. Script ansprechen.
nein, die zeile wäre bepsielhaft dazu da, eine Systemvariable mit dem Namen ZZTEST auf den Wert 22.22 zu setzen.
zu müsstest schreiben
pushState ('dom.GetObject (ID_PROGRAMS).Get ("IchBinDeinProgrammName").ProgramExecute (true)');
viel Erfolg, Black
zu müsstest schreiben
pushState ('dom.GetObject (ID_PROGRAMS).Get ("IchBinDeinProgrammName").ProgramExecute (true)');
viel Erfolg, Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
Re: Programme per ext. Script ansprechen.
Hallo Black.
Leider will das nicht ganz.
Mein Script sieht sfolgendermassen aus:
der aufruf dazu lautet:
Doch auf der Homematic-Seite bewegt sich nichts.
Anbei ein Printscreen des Programms: Wenn ich es direkt auf der Hm ausführe blinkt die Leuchte 5x kurz blau.
Kann mir jemand noch beim "letzten" schritt helfen - sprich mir zeigen - was noch nötig ist, dmait es funktioniert.
Gruss Dani
Leider will das nicht ganz.
Mein Script sieht sfolgendermassen aus:
Code: Alles auswählen
from datetime import datetime
from urllib.request import urlopen
from http.server import BaseHTTPRequestHandler, HTTPServer
import time as t
import http.client
# Verbindungsinformationen zur CCU2
# ---------------------------------
ipCCU2 = "192.168.1.76"
xmlrpcPort = 8181
ENpushCCU = True
def pushState (command):
# im Testmode schreiben wir nicht wild auf de CCU rum
if ENpushCCU:
try:
httpServ = http.client.HTTPConnection(ipCCU2, xmlrpcPort)
httpServ.connect()
httpServ.request('POST', 'blabla.exe', command)
response = httpServ.getresponse()
reason= response.status,response.reason
httpServ.close()
return reason
except:
# Wenn eine Fehlübertragung: egal in dem Test
return
pushState ('dom.GetObject(ID_PROGRAMS).Get("Testig").ProgramExecute(true)');
Code: Alles auswählen
python3 Homematic_prgorammstarten_test.py
Anbei ein Printscreen des Programms: Wenn ich es direkt auf der Hm ausführe blinkt die Leuchte 5x kurz blau.
Kann mir jemand noch beim "letzten" schritt helfen - sprich mir zeigen - was noch nötig ist, dmait es funktioniert.
Gruss Dani
- Black
- Beiträge: 5480
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: Programme per ext. Script ansprechen.
wie sieht die firewalleinstellung in deiner ccu aus ?
unter HomeMatic XML-RPC API und Remote HomeMatic-Script API beides auf vollzugriff ?
unter HomeMatic XML-RPC API und Remote HomeMatic-Script API beides auf vollzugriff ?
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising