Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Moderator: Co-Administratoren
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Danke, Danke, Danke.
By the way, natürlich kann man die Seite auch direkt aufrufen "ccu.../addons/myAddons/ZZ_fav.html" dann ist der Hintergrund weiss und nicht im HM-Look. Wer das zB. direkt auf einem Tablet etc. anzeigen möchte
Gruß
lolli
By the way, natürlich kann man die Seite auch direkt aufrufen "ccu.../addons/myAddons/ZZ_fav.html" dann ist der Hintergrund weiss und nicht im HM-Look. Wer das zB. direkt auf einem Tablet etc. anzeigen möchte
Gruß
lolli
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Ich hätte da noch eine Frage:
Ich möchte die Werte aktuell noch nicht speichern, weshalb ich die Datei myWeather.ini nicht angelegt habe. Trotzdem wird auf der CCU eine Datei mySysvars_04_2021.csv angelegt und mit Daten gefüttert. Was mache ich falsch?
Gruß
Ich möchte die Werte aktuell noch nicht speichern, weshalb ich die Datei myWeather.ini nicht angelegt habe. Trotzdem wird auf der CCU eine Datei mySysvars_04_2021.csv angelegt und mit Daten gefüttert. Was mache ich falsch?
Gruß
-
- Beiträge: 14169
- Registriert: 08.05.2013, 23:33
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Nordwürttemberg
- Hat sich bedankt: 586 Mal
- Danksagung erhalten: 1501 Mal
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Hmm,
keine Ahnung was das sein könnte.
Ich habe mal die Klammerung des Tabellenschreibprogramms geändert.
try this
Gruß
keine Ahnung was das sein könnte.
Ich habe mal die Klammerung des Tabellenschreibprogramms geändert.
try this
Gruß
- Dateianhänge
-
- myW_tabelle.zip
- (820 Bytes) 51-mal heruntergeladen
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Vielen Dank für eure Hinweise.
Ich habe jedoch versehentlich die falsche Version es Skripts hochgeladen ... Somit hat sich das erledigt.
Nun habe ich jedoch leider ein weiteres Problem.
Ich habe das "Widget" nach Anleitung installiert, jedoch werden die Werte nicht aktualisiert (siehe Anhang).
Die Einbindung in die Favoriten hat geklappt und es wird auch das Widget gezeigt. Ich habe statt "rccu" die IP-Adresse eingegeben. Das sollte ja kein Problem sein oder?
Woran könnte das liegen?
Danke schonmal im Voraus für eure Hilfe
Ich habe jedoch versehentlich die falsche Version es Skripts hochgeladen ... Somit hat sich das erledigt.
Nun habe ich jedoch leider ein weiteres Problem.
Ich habe das "Widget" nach Anleitung installiert, jedoch werden die Werte nicht aktualisiert (siehe Anhang).
Die Einbindung in die Favoriten hat geklappt und es wird auch das Widget gezeigt. Ich habe statt "rccu" die IP-Adresse eingegeben. Das sollte ja kein Problem sein oder?
Woran könnte das liegen?
Danke schonmal im Voraus für eure Hilfe
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Hi tromanski,
rufe mal im Browser folgendes auf: http://deineip/addons/myAddons/sendvars.cgi
Nun müsste dein Browser eine Zeile mit den Daten anzeigen.
Javascript ist ja aktiv sonst würde die GUI ja auch nicht funktionieren...
Welchen Browser benutzt du? Kann sein das meine HTTP-Request Funktion für deinen Browser nicht funzt.
Diese, in der ZZ_fav.html - Datei, muss für deinen Browser angepasst werden:
function loadDoc(url, cFunction) {
var xhttp;
xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
cFunction(this);
}
};
xhttp.open("GET", url, true);
xhttp.send();
}
Ich habe nicht alle Browser getestet, hab ich ja für mich programmiert
Gruß
lolli
rufe mal im Browser folgendes auf: http://deineip/addons/myAddons/sendvars.cgi
Nun müsste dein Browser eine Zeile mit den Daten anzeigen.
Javascript ist ja aktiv sonst würde die GUI ja auch nicht funktionieren...
Welchen Browser benutzt du? Kann sein das meine HTTP-Request Funktion für deinen Browser nicht funzt.
Diese, in der ZZ_fav.html - Datei, muss für deinen Browser angepasst werden:
function loadDoc(url, cFunction) {
var xhttp;
xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
cFunction(this);
}
};
xhttp.open("GET", url, true);
xhttp.send();
}
Ich habe nicht alle Browser getestet, hab ich ja für mich programmiert
Gruß
lolli
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Hallo lolli,
beim Eingeben von http://deineip/addons/myAddons/sendvars.cgi kommt als Ausgabe lediglich:
urlaub=
Das scheint mir schon zu wenig zu sein...
Ich verwende Chrome als Browser. Aber auch Edge oder Microsoft Internet Explorer bringen das selbe Ergebnis.
Tut mir leid, wenn ich so unwissend frage. Aber was müsste ich denn an der function loadDoc(url, cFunction) ändern?
Was dort ist Browser Spezifisch? Kann ich das irgendwo nachlesen?
Gruß
tromanski
beim Eingeben von http://deineip/addons/myAddons/sendvars.cgi kommt als Ausgabe lediglich:
urlaub=
Das scheint mir schon zu wenig zu sein...
Ich verwende Chrome als Browser. Aber auch Edge oder Microsoft Internet Explorer bringen das selbe Ergebnis.
Tut mir leid, wenn ich so unwissend frage. Aber was müsste ich denn an der function loadDoc(url, cFunction) ändern?
Was dort ist Browser Spezifisch? Kann ich das irgendwo nachlesen?
Gruß
tromanski
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Ok,
jetzt gibt es ein Bild
Die gute Nachricht
Die Zeilen des HTTP-Request musst Du nicht ändern!! Die funktionieren.
Die schlechte Nachricht --- Das Script bricht ab, da es einige Systemvariablen nicht kennt!
-die Zeilen mit dem Write ....
lösche im cgi-Script die Zeilen mit den Systemvariablen die du nicht hast oder erstelle diese
_Kalf_Urlaub = Wert 0 kein Urlaub, 1 Urlaub aber zu Hause, 2 Urlaub außer Haus (also weg von zu Hause ) . Google Kalender Abfrage.
Muell = welcher Müll muss rausgestellt werden / wird abgeholt. Enthält die Systemvar der Teilstring "Restm" so wird bei uns der Restmüll (schwarze Tonne) und der Wertstoff abgeholt (gelber Sack)
enthält die Systemvar den Teilstring "Papier", kommt bei uns die blaue (Papier) und die grüne (Biomüll) Tonne raus. Die Daten lade ich zu Beginn des Jahres aus dem lokalen Müllkalender herunter und schaue dann täglich was kommt - anderes Programm
_Kalf_Feiertag_heute und _Kalf_Feiertag_Brueckentag werden berechnet für die Heizungsteuerung.
Brueckentag ist eins wenn aktuell Montag ist und Dienstag ein Feiertag ist oder wenn Freitag ist und Donnerstag ein Feiertag war - ich habe in der Regel an Brückentagen frei ebenfalls ein anderes Programm.
In den Zeilen mit der "itemp" und "ihumi" ist das HMIP-Wandthermostat eingetragen, falls du eines hast muss hier deine Gerätenummer rein. Hast ein "normales" HM-Wandthermostat oder Heizungsregler muss dann dies hier "BidCos-RF.NUMMERdesSENSORS:KanalNr." eingetragen werden - der Temperatur-Datenpunkt heißt dann TEMPERATURE.
Oder ersetze die Zeile "Write('itemp=' # dom.GetObject('HmIP-RF.110A99496666D5:1.ACTUAL_TEMPERATURE').State() # ';');"
durch Write('itemp=' # dom.GetObject('_W_TempInnen').State() # ';');
das ist die Innentemperatur der Wetterstation
und die Zeile "Write('ihumi=' # dom.GetObject('HmIP-RF.110A99496666D5:1.HUMIDITY').State() # ';');"
durch Write('ihumi=' # dom.GetObject('_W_LuftfeuchteInnen').State() # ';');
Die Zeilen mit den Aktien einfach löschen oder es wird halt nix richtiges angezeigt.
Wenn du dein Script testen möchtest, dann markiere die Zeilen mit den Write's kopiere diese und füge sie in der WebUI unter "Programme und Verknüpfungen" -> "Script testen" ein und dann "ausführen" dort wird dann der zu sendende String ausgegeben.
Zu Deiner Frage, ja kann man nachlesen - Tante Google Javascript HTTP-Request - die MS Browser hatten einen andern Objektnamen
Viel Spaß beim Tüfteln
lolli
jetzt gibt es ein Bild
Die gute Nachricht
Die Zeilen des HTTP-Request musst Du nicht ändern!! Die funktionieren.
Die schlechte Nachricht --- Das Script bricht ab, da es einige Systemvariablen nicht kennt!
-die Zeilen mit dem Write ....
Code: Alles auswählen
#!/usr/bin/env tclsh
load tclrega.so
set wert 0
catch {
set input $env(QUERY_STRING)
set pairs [split $input &]
foreach pair $pairs {
if {0 != [regexp "^(\[^=]*)=(.*)$" $pair dummy varname val]} {
set $varname $val
# puts "key: $varname value:$val"
}
}
}
set comm {
Write('urlaub=' # dom.GetObject('_Kalf_Urlaub').State() # ';');
Write('muell=' # dom.GetObject('Muell').State() # ';');
Write('feier=' # dom.GetObject('_Kalf_Feiertag_heute').State() # ';');
Write('bruec=' # dom.GetObject('_Kalf_Feiertag_Brueckentag').State() # ';');
Write('azim=' # dom.GetObject('_W_Azimut').State() # ';');
Write('elev=' # dom.GetObject('_W_Elevation').State() # ';');
Write('strah=' # dom.GetObject('_W_EinstrahlungAV').State() # ';');
Write('windr=' # dom.GetObject('_W_Windrichtung').State() # ';');
Write('winds=' # dom.GetObject('_W_Windgesch').State() # ';');
Write('regent=' # dom.GetObject('_W_NiederschlagMonat').State() # ';');
Write('atemp=' # dom.GetObject('_W_TempAussen').State() # ';');
Write('ahumi=' # dom.GetObject('_W_LuftfeuchteAussen').State() # ';');
Write('pres=' # dom.GetObject('_W_Luftdruck').State() # ';');
Write('itemp=' # dom.GetObject('HmIP-RF.110A99496666D5:1.ACTUAL_TEMPERATURE').State() # ';');
Write('ihumi=' # dom.GetObject('HmIP-RF.110A99496666D5:1.HUMIDITY').State() # ';');
Write('atime=' # dom.GetObject("_F_Aktienkurse").Timestamp().ToString("Kurse Stand: %H:%M Uhr") # ';');
Write('akurs=' # dom.GetObject("_F_Aktienkurse").State() # ';');
}
array set res [rega_script $comm]
puts $res(STDOUT)
_Kalf_Urlaub = Wert 0 kein Urlaub, 1 Urlaub aber zu Hause, 2 Urlaub außer Haus (also weg von zu Hause ) . Google Kalender Abfrage.
Muell = welcher Müll muss rausgestellt werden / wird abgeholt. Enthält die Systemvar der Teilstring "Restm" so wird bei uns der Restmüll (schwarze Tonne) und der Wertstoff abgeholt (gelber Sack)
enthält die Systemvar den Teilstring "Papier", kommt bei uns die blaue (Papier) und die grüne (Biomüll) Tonne raus. Die Daten lade ich zu Beginn des Jahres aus dem lokalen Müllkalender herunter und schaue dann täglich was kommt - anderes Programm
_Kalf_Feiertag_heute und _Kalf_Feiertag_Brueckentag werden berechnet für die Heizungsteuerung.
Brueckentag ist eins wenn aktuell Montag ist und Dienstag ein Feiertag ist oder wenn Freitag ist und Donnerstag ein Feiertag war - ich habe in der Regel an Brückentagen frei ebenfalls ein anderes Programm.
In den Zeilen mit der "itemp" und "ihumi" ist das HMIP-Wandthermostat eingetragen, falls du eines hast muss hier deine Gerätenummer rein. Hast ein "normales" HM-Wandthermostat oder Heizungsregler muss dann dies hier "BidCos-RF.NUMMERdesSENSORS:KanalNr." eingetragen werden - der Temperatur-Datenpunkt heißt dann TEMPERATURE.
Oder ersetze die Zeile "Write('itemp=' # dom.GetObject('HmIP-RF.110A99496666D5:1.ACTUAL_TEMPERATURE').State() # ';');"
durch Write('itemp=' # dom.GetObject('_W_TempInnen').State() # ';');
das ist die Innentemperatur der Wetterstation
und die Zeile "Write('ihumi=' # dom.GetObject('HmIP-RF.110A99496666D5:1.HUMIDITY').State() # ';');"
durch Write('ihumi=' # dom.GetObject('_W_LuftfeuchteInnen').State() # ';');
Die Zeilen mit den Aktien einfach löschen oder es wird halt nix richtiges angezeigt.
Wenn du dein Script testen möchtest, dann markiere die Zeilen mit den Write's kopiere diese und füge sie in der WebUI unter "Programme und Verknüpfungen" -> "Script testen" ein und dann "ausführen" dort wird dann der zu sendende String ausgegeben.
Zu Deiner Frage, ja kann man nachlesen - Tante Google Javascript HTTP-Request - die MS Browser hatten einen andern Objektnamen
Viel Spaß beim Tüfteln
lolli
Zuletzt geändert von lolli am 13.04.2021, 20:32, insgesamt 1-mal geändert.
- chianti2000
- Beiträge: 132
- Registriert: 12.08.2017, 17:15
- System: CCU
- Wohnort: Leipzig
- Hat sich bedankt: 51 Mal
- Danksagung erhalten: 13 Mal
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Hi lolli,
Welche andere Programme (bzw. aus welchem Treat) nutzt du hierfür?lolli hat geschrieben: ↑12.04.2021, 21:08
_Kalf_Urlaub = Wert 0 kein Urlaub, 1 Urlaub aber zu Hause, 2 Urlaub außer Haus (also weg von zu Hause ) . Google Kalender Abfrage.
Muell = welcher Müll muss rausgestellt werden / wird abgeholt. Enthält die Systemvar der Teilstring "Restm" so wird bei uns der Restmüll (schwarze Tonne) und der Wertstoff abgeholt (gelber Sack)
enthält die Systemvar den Teilstring "Papier", kommt bei uns die blaue (Papier) und die grüne (Biomüll) Tonne raus. Die Daten lade ich zu Beginn des Jahres aus dem lokalen Müllkalender herunter und schaue dann täglich was kommt - anderes Programm
VG Gerd
Re: Einbinden von WH3000 SE WiFi Wetterstation und kompatible
Hi Gerd,
nix von der Stange alles für meine Bedürfnisse zusammen gestrickt, andere würden schreiben programmiert
Was interessiert dich denn? Können ja dafür einen neuen Faden aufmachen.
Gruß
lolli
nix von der Stange alles für meine Bedürfnisse zusammen gestrickt, andere würden schreiben programmiert
Was interessiert dich denn? Können ja dafür einen neuen Faden aufmachen.
Gruß
lolli