Benzin preise auslesen, widget und script?
Moderator: Co-Administratoren
Re: Benzin preise auslesen, widget und script?
Hallo Torsten,
Ich schicke dir auch mal die Tcl Datei weiter, die ich bekommen habe.
Gruß John
Ich schicke dir auch mal die Tcl Datei weiter, die ich bekommen habe.
Gruß John
Re: Benzin preise auslesen, widget und script?
Ich habe unter http://homematic-forum.de/forum/viewtop ... 09#p181847 eine Schnittstellenbeschreibung von mehr-tanken.de gepostet. Dieser Request ist explizit für die Verwendung in einem Iframe gedacht und kann vom Styling her etwas angepasst werden.
-
- Beiträge: 143
- Registriert: 12.01.2014, 20:39
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Re: Benzin preise auslesen, widget und script?
Kann mir jemand bei dem anlegen des virtuellen Tasters helfen?matze-pe hat geschrieben:Über einen virtuellen Taster, z.B. CUXD habe ich genommen, das einfach in das HM Programm als Skript starten und per Scheduler ausführen:
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("tclsh /usr/local/addons/sprit/jet.tcl");
Oder dabei wie ich das jet.tcl auslöse?
Komm da nicht mit klar.
gruss
-
- Beiträge: 757
- Registriert: 11.02.2013, 08:38
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
Re: Benzin preise auslesen, widget und script?
Da es wohl vermehrt Probleme bei der Erstellung der TCL Datei gibt, habe meine Datei in Beitrag als zip Datei angehängt:
http://homematic-forum.de/forum/viewtop ... 81#p164281
http://homematic-forum.de/forum/viewtop ... 81#p164281
CCU3 (80 Geräte, 105 Variablen, 50 Programme) * CCU.IO + DashUI + Apple HomeKit (Homebridge) auf Raspi2
Re: Benzin preise auslesen, widget und script?
Hallo zusammen,
ich tue mich als Anfänger im Moment fürchterlich schwer, das Script funktional einzubinden.
Ich habe das Script per ftp auf die CCU2 geladen ( /usr/local/addons/sprit/Jet.tcl)
Da es sich so wie es hier vorlag nicht per Telnet aufrufbar war, habe ich in Zeile 1 noch #!/bin/tclsh eingefügt.
Somit lief es per Telnet und die Daten wurden in die Systemvariablen geschrieben.
Danach habe ich in CUxD ein Geräte angelegt.
In der Gerätekonfiguration der CCU sieht das ganze dann so aus.. Bei cmd_short steht folgender Befehl
Leider wird das Script jedoch bei Tastendruck nicht ausgeführt.
Im Systemlog erscheint folgende Fehlermeldung:
Im Syslog bei CUxD erscheint folgende Meldung:
Weiss jemand, wo mein Fehler liegt oder wie ich das Script ans laufen bekomme?
Danke & Gruss
Silvio
ich tue mich als Anfänger im Moment fürchterlich schwer, das Script funktional einzubinden.
Ich habe das Script per ftp auf die CCU2 geladen ( /usr/local/addons/sprit/Jet.tcl)
Code: Alles auswählen
#!/bin/tclsh
load tclrega.so
set url http://www.sparsamtanken.de/tankstellen-details?tankstelle=8138
exec /usr/bin/wget -q -O /usr/local/addons/sprit/Jet.html $url
set f [open "/usr/local/addons/sprit/Jet.html"]
set input [read $f]
close $f
# Werte aus Datei auslesen
# =========================
# Jet
regexp "Diesel</a>:</td>
<td>(.*?) " $input dummy diesel ;
regexp "Super E5</a>:</td>
<td>(.*?) " $input dummy super ;
# Werte in Variabel schreiben
# =============================
set rega_cmd ""
append rega_cmd "var w0 = dom.GetObject('Sprit_Diesel_Jet');"
append rega_cmd "w0.State('$diesel');"
append rega_cmd "var w1 = dom.GetObject('Sprit_Super_Jet');"
append rega_cmd "w1.State('$super');"
rega_script $rega_cmd
Somit lief es per Telnet und die Daten wurden in die Systemvariablen geschrieben.
Danach habe ich in CUxD ein Geräte angelegt.
In der Gerätekonfiguration der CCU sieht das ganze dann so aus.. Bei cmd_short steht folgender Befehl
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("tclsh /usr/local/addons/sprit/jet.tcl");
Leider wird das Script jedoch bei Tastendruck nicht ausgeführt.
Im Systemlog erscheint folgende Fehlermeldung:
Code: Alles auswählen
14:21:10 11.01.2015 Dieselabfrage:1
unbekannte Meldung (WORKING=TRUE), Tastendruck kurz, unbekannte Meldung (CMD_RETS) 2, unbekannte Meldung (WORKING=FALSE)
Im Syslog bei CUxD erscheint folgende Meldung:
Code: Alles auswählen
Jan 11 14:30:15 homematic-ccu2 daemon.info cuxd[22859]: system(dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("tclsh /usr/local/addons/sprit/jet.tcl");) exit(2) 0s
Weiss jemand, wo mein Fehler liegt oder wie ich das Script ans laufen bekomme?
Danke & Gruss
Silvio
--------------------------------------------
770 Kanäle und 3439 Datenpunkte in 223 Geräten:
770 Kanäle und 3439 Datenpunkte in 223 Geräten:
Re: Benzin preise auslesen, widget und script?
Hallo ssternitzke
Erstelle ein programm der so aussieht: unter zeitmodul machst du so: unter script :
wie im bild
und es wird ausgeführt jede stunde, oder wie du im zeitmodul einstellst
aber lieber nicht zu oft
Erstelle ein programm der so aussieht: unter zeitmodul machst du so: unter script :
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("tclsh /usr/local/addons/sprit/jet.tcl");
aber lieber nicht zu oft
Re: Benzin preise auslesen, widget und script?
@33zdenko
Super vielen Dank.
Jetzt klappt das Ganze.
Ich musste nur die eingefügte 1. Zeile wieder rausnehmen, und schon kamen die Preise angepurzelt.
Gruss
Silvio
Super vielen Dank.
Jetzt klappt das Ganze.
Ich musste nur die eingefügte 1. Zeile wieder rausnehmen, und schon kamen die Preise angepurzelt.
Gruss
Silvio
--------------------------------------------
770 Kanäle und 3439 Datenpunkte in 223 Geräten:
770 Kanäle und 3439 Datenpunkte in 223 Geräten:
Re: Benzin preise auslesen, widget und script?
Hallo,
ich kruschdel jetzt mal diesen Beitrag wieder hervor. Wollte mir jetzt auch die Spritpreise automatisch abrufen lassen. Aber irgendwas mache ich nun wohl leider falsch.
Bin vorgegangen wie im Thread geschrieben - aber es scheitert schon an der HTML Datei. Hab das Skript jet.tcl mehrmals ausführen lassen, aber es wird keine html Datei erstellt. CuXD meldet
Mar 6 09:15:36 homematic-ccu2 daemon.info cuxd[6613]: system(tclsh /usr/local/addons/sprit/jet.tcl) exit(1) 0s
Was könnte der Fehler sein?
CuXD System Exec hatte ich schon vorher angelegt für Temp. Min/Max Auswertungen, also daran sollte es nicht liegen?
Vielen Dank für die Hilfe!
ich kruschdel jetzt mal diesen Beitrag wieder hervor. Wollte mir jetzt auch die Spritpreise automatisch abrufen lassen. Aber irgendwas mache ich nun wohl leider falsch.
Bin vorgegangen wie im Thread geschrieben - aber es scheitert schon an der HTML Datei. Hab das Skript jet.tcl mehrmals ausführen lassen, aber es wird keine html Datei erstellt. CuXD meldet
Mar 6 09:15:36 homematic-ccu2 daemon.info cuxd[6613]: system(tclsh /usr/local/addons/sprit/jet.tcl) exit(1) 0s
Was könnte der Fehler sein?
CuXD System Exec hatte ich schon vorher angelegt für Temp. Min/Max Auswertungen, also daran sollte es nicht liegen?
Vielen Dank für die Hilfe!
Re: Benzin preise auslesen, widget und script?
schau mal hier:
http://homematic-forum.de/forum/viewtop ... 48&t=23933
geht ohne tcl Datei, nur Skript.. und funktioniert prima
http://homematic-forum.de/forum/viewtop ... 48&t=23933
geht ohne tcl Datei, nur Skript.. und funktioniert prima
CCU2 * CCU.IO + DashUI + CCUHistorian auf Raspi 1 und 2 * * iPad 2 als Wandtablet * PocketControl HM (iPhone 6 + iPad Pro) * CUxD * Apple watch mit PocketControl HM * * 4x Amazon Alexa mit Homematic Steuerung
-
- Beiträge: 74
- Registriert: 13.10.2014, 02:56
- Wohnort: Nähe Köln
Re: Benzin preise auslesen, widget und script?
Hallo Matze-PE,
dein Script klappt wunderbar (wie auch dein Heizölscript) - Vielen Dank dafür.
Ich nutze, wie du glaube ich auch, das Dashui und würde gern dieses dort einbauen.
Kann man die Variable auch als Zahl in die Homematic bekommen- Zeichenketten kann man
auf Dauer so schlecht auswerten und wenn ich daraus eine Zahl mache habe ich immer 1,00 EUR
in der Variablen stehen.
Hast du eine Idee?
Danke & nette Grüße
Dennis
dein Script klappt wunderbar (wie auch dein Heizölscript) - Vielen Dank dafür.
Ich nutze, wie du glaube ich auch, das Dashui und würde gern dieses dort einbauen.
Kann man die Variable auch als Zahl in die Homematic bekommen- Zeichenketten kann man
auf Dauer so schlecht auswerten und wenn ich daraus eine Zahl mache habe ich immer 1,00 EUR
in der Variablen stehen.
Hast du eine Idee?
Danke & nette Grüße
Dennis