NEWS
Aktuelle Außentemperatur anzeigen
-
Hallo,
ich würde gerne die aktuelle Außentemperatur meines Wohnortes im VIS anzeigen.
Hat jemand einen Tipp?
-
Hallo,
ich würde gerne die aktuelle Außentemperatur meines Wohnortes im VIS anzeigen.
Hat jemand einen Tipp? `
Hi !"Weather underground" oder "Das Wetter" adapter installieren und den wert wiedergeben lassen aus den Objekten.
Ich mache es hier mit Weatherunderground:
-
Hallo,
ich habe DasWetter.com als Adapter installiert und es läuft.
Allerdings finde ich nur Min und Max Temp, aber nicht die aktuelle Temperatur (also current).
Ist dies in DasWetter.com enthalten?
Weahter Underground vergibt leider keine API Keys mehr. Deshalb scheidet der Wetterdienst für mich aus.
Gibt es Alternativen?
-
doch
1518_unbenannt.jpg -
Super, ich danke. Ich habe immer bei NextDays geschaut.
-
ACHTUNG - der oben von arteck markierte Datenpunkt zeigt das Wetter mit Stand 2:00 Uhr Nachts an.
Der Adapter daswetter kann das aktuelle Wetter nicht anzeigen, aber dafür die Vorhersage von jeder Stunde des Tages. Um hier das Wetter der aktuellen Stunde in VIS auszugeben, muss man sich eines Scripts bedienen.
Ich verwende das folgende Skript. Es liest jede Stunde den jeweiligen Stunden-Datenpunkt vom daswetter-Adapter aus und setzt diesen unter 'javascript.0.mic.vis-support.wetter-aktuell' entsprechend ein.
/**************************** * Aktuelle Wetterdaten auslesen * 27.10.2018 * Angelehnt an: https://forum.iobroker.net/viewtopic.php?t=13207 * Veröffentlicht unter: https://forum.iobroker.net/viewtopic.php?&t=13795 ***************************/ // Hier werden die Datenpunkte für VIS angelegt const STATE_FUER_VIS_WETTER = 'javascript.0.mic.vis-support.wetter-aktuell'; // Zum bekommen der Daten vom DasWetter-Script const DASWETTER_STATE_START = 'daswetter.0.NextHours.Location_1.Day_1.Hour_'; const DASWETTER_STATE_END_TEMP = '.temp_value'; const DASWETTER_STATE_END_ICON = '.iconURL'; const DASWETTER_STATE_END_DESC = '.symbol_desc'; // States erzeugen MG_createStateCelcius(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_TEMP, 'Aktuelle Temperatur von DasWetter-Adapter', 'info', 0); MG_createState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_ICON, 'Aktuelles Wetter-Icon', 'string', 'info', ''); MG_createState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_DESC, 'Aktuelle Wetterbeschreibung', 'string', 'info', ''); // Ausführen bei Scriptstart, 5 Sekunden später, damit States auch existieren setTimeout(function() { setCurrentTempInState(); }, 5000); // Geplante Ausführung schedule('2 * * * *', setCurrentTempInState); // Jede zweite Minute von jeder Stunde // Setzt jeweils die Daten der aktuellen Stunde vom DasWetter-Dadapter in die Datenpunkte für Vis function setCurrentTempInState() { var currentHour = new Date().getHours(); if (currentHour === 0) currentHour = 24; // Siehe issue: https://github.com/rg-engineering/ioBroker.daswetter/issues/25 setState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_TEMP, parseFloat(getState(DASWETTER_STATE_START + currentHour + DASWETTER_STATE_END_TEMP).val), true); setState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_ICON, getState(DASWETTER_STATE_START + currentHour + DASWETTER_STATE_END_ICON).val, true); setState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_DESC, getState(DASWETTER_STATE_START + currentHour + DASWETTER_STATE_END_DESC).val, true); } /** * Create States - General * @param {string} stId ID * @param {string} stName Name, Description * @param {mixed} stType Datatype: string, boolean, etc. * @param {string} stRole Role: button, etc. * @param {mixed} stDef Default value */ function MG_createState(stId, stName, stType, stRole, stDef) { createState(stId, { 'name': stName, 'desc': stName, 'type': stType, 'read': true, 'write': true, 'role': stRole, 'def': stDef, }); } /** * Create States - °C * @param {string} stId ID * @param {string} stName Name, Description * @param {string} stRole Role: button, etc. * @param {mixed} stDef Default value */ function MG_createStateCelcius(stId, stName, stRole, stDef) { createState(stId, { 'name': stName, 'desc': stName, 'type': 'number', 'unit': '°C', 'min': -100, 'max': 256, 'read': true, 'write': true, 'role': stRole, 'def': stDef, }); }
Damit bekommt man diese Datenpunkte:
-
Wie wäre es mit einem Temperatursensor, wie zb von Homematic?
https://www.elv.de/homematic-hm-wds10-t … r-oth.html
Brauchst natürlich dazu eine CCU2, aber evtl. gibts auch günstige Alternativen.
Hast auf jeden Fall reale Werte, auf die du dich auch verlassen kanst
-
Hallo zusammen,
erstmal vielen Dank für das Skript. Ich werde es ausgiebig testen. Ist es richtig, das die aktuelle Temperatur mit einer Stunde Versatz angezeigt wird? Ich vergleiche mit daswetter.com. Das ist nicht schlimm aus meiner Sicht!
Zu Homematic / CCU:
Ich möchte eingetlich keine CCU noch bei mir implementieren, deshalb meine Frage: Gib es einen Außentemperatursensor ohne CCU z.B. per Zigbee, etc. Es ist wieder ein Verbraucher mehr und die Kosten für eine CCU + Sensor sind auch nicht gerade wenig, richtig?
EDIT: Hier gibt es die CCU2 für IP schon für einen günstigen Preis:
https://www.ebay.de/itm/Wie-neu-HomeMat … :rk:4:pf:0
Was meint ihr, was sind die Vortiele der CCU3 gegenüber der CCU2? Was bringt IP für Vorteile? Werden die Sensoren per WLAN angebunden?
-
Zu Homematic / CCU:
Ich möchte eingetlich keine CCU noch bei mir implementieren, deshalb meine Frage: Gib es einen Außentemperatursensor ohne CCU z.B. per Zigbee, etc. Es ist wieder ein Verbraucher mehr und die Kosten für eine CCU + Sensor sind auch nicht gerade wenig, richtig? `
Schau mal nach Aqara Temperatur- und Luftfeuchtigkeitssensor, bekommst so um die 6-7€ aus China und funktionieren über Zigbee, sind klein gebaut.
Sind zwar nur für drinnen, aber wenn die nicht gerade an eine Wetterseite packst, sollte nichts passieren, eventuell ein kleines Gehäuse drucken.
Ich habe einen auch draussen beim Fenster hängen, zwar erst seit 3 Monaten, aber ohne Probleme.
-
@Mic:ACHTUNG - der oben von arteck markierte Datenpunkt zeigt das Wetter mit Stand 2:00 Uhr Nachts an.
Der Adapter daswetter kann das aktuelle Wetter nicht anzeigen, aber dafür die Vorhersage von jeder Stunde des Tages. Um hier das Wetter der aktuellen Stunde in VIS auszugeben, muss man sich eines Scripts bedienen.
Ich verwende das folgende Skript. Es liest jede Stunde den jeweiligen Stunden-Datenpunkt vom daswetter-Adapter aus und setzt diesen unter 'javascript.0.mic.vis-support.wetter-aktuell' entsprechend ein.
/**************************** * Aktuelle Wetterdaten auslesen * 27.10.2018 * Angelehnt an: https://forum.iobroker.net/viewtopic.php?t=13207 * Veröffentlicht unter: https://forum.iobroker.net/viewtopic.php?&t=13795 ***************************/ // Hier werden die Datenpunkte für VIS angelegt const STATE_FUER_VIS_WETTER = 'javascript.0.mic.vis-support.wetter-aktuell'; // Zum bekommen der Daten vom DasWetter-Script const DASWETTER_STATE_START = 'daswetter.0.NextHours.Location_1.Day_1.Hour_'; const DASWETTER_STATE_END_TEMP = '.temp_value'; const DASWETTER_STATE_END_ICON = '.iconURL'; const DASWETTER_STATE_END_DESC = '.symbol_desc'; // States erzeugen MG_createStateCelcius(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_TEMP, 'Aktuelle Temperatur von DasWetter-Adapter', 'info', 0); MG_createState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_ICON, 'Aktuelles Wetter-Icon', 'string', 'info', ''); MG_createState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_DESC, 'Aktuelle Wetterbeschreibung', 'string', 'info', ''); // Ausführen bei Scriptstart, 5 Sekunden später, damit States auch existieren setTimeout(function() { setCurrentTempInState(); }, 5000); // Geplante Ausführung schedule('2 * * * *', setCurrentTempInState); // Jede zweite Minute von jeder Stunde // Setzt jeweils die Daten der aktuellen Stunde vom DasWetter-Dadapter in die Datenpunkte für Vis function setCurrentTempInState() { var currentHour = new Date().getHours(); if (currentHour === 0) currentHour = 24; // Siehe issue: https://github.com/rg-engineering/ioBroker.daswetter/issues/25 setState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_TEMP, parseFloat(getState(DASWETTER_STATE_START + currentHour + DASWETTER_STATE_END_TEMP).val), true); setState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_ICON, getState(DASWETTER_STATE_START + currentHour + DASWETTER_STATE_END_ICON).val, true); setState(STATE_FUER_VIS_WETTER + DASWETTER_STATE_END_DESC, getState(DASWETTER_STATE_START + currentHour + DASWETTER_STATE_END_DESC).val, true); } /** * Create States - General * @param {string} stId ID * @param {string} stName Name, Description * @param {mixed} stType Datatype: string, boolean, etc. * @param {string} stRole Role: button, etc. * @param {mixed} stDef Default value */ function MG_createState(stId, stName, stType, stRole, stDef) { createState(stId, { 'name': stName, 'desc': stName, 'type': stType, 'read': true, 'write': true, 'role': stRole, 'def': stDef, }); } /** * Create States - °C * @param {string} stId ID * @param {string} stName Name, Description * @param {string} stRole Role: button, etc. * @param {mixed} stDef Default value */ function MG_createStateCelcius(stId, stName, stRole, stDef) { createState(stId, { 'name': stName, 'desc': stName, 'type': 'number', 'unit': '°C', 'min': -100, 'max': 256, 'read': true, 'write': true, 'role': stRole, 'def': stDef, }); }
Damit bekommt man diese Datenpunkte:
Zwischenablage01.jpg `
Danke, sowas habe ich gesucht. Wäre es viel Auffand, wenn man zur Temperatur auch die Luftfeuchtigkeit hereinnehmen würde?
Grüße, Sebastian
-
Bin nicht ganz sicher, aber entspricht der Wert nicht dem hier:
daswetter.0.NextHours.Location_1.Day_1.Hour_1.temp_value
Dann könnte man sich das Skript sparen.
-
ACHTUNG
Die "CCU für IP" ist keine CCU sondern eine Plug&Play Lösung für IP. Das ist ein geschlossenes System und zu Daten kommt man nur über die eigene App und nicht in ioBroker.
Ohne IP-wire Geräte kommt man mit der CCU2 aus. Die bekommt man, zumindest in Österreich um ca. 40€
-
Bin nicht ganz sicher, aber entspricht der Wert nicht dem hier:
daswetter.0.NextHours.Location_1.Day_1.Hour_1.temp_value
Dann könnte man sich das Skript sparen. `
Nein. Das ist der Wert von der ersten Stunde des Tages - nicht der von der aktuellen Stunde.
-
Bei mir passt es jedenfalls.
javascript.0.mic.vis-support.wetter-aktuell.temp_value
und
daswetter.0.<color color="red">NextHours.Location_1.Day_1.Hour_1.temp_value
sind immer (bislang) identisch.
Bitte nicht mit
daswetter.0.<color color="red">NextDaysDetailed.Location_1.Day_1.Hour_1.temp_value
verwechseln!
-
Bei mir wird NextHours nach einer Neuinstallation in der Datenstruktur nicht mehr angezeigt.
Was kann ich tun, mit NextDaysDetailed scheint es nicht zu funktionieren.
-
Fehler gefunden. Man sollte auch die beiden weiteren Pfade eintragen.
-
<size size="150">Neuerung:</size>
Ich hatte im das.wetter-Adapter folgenden Feature request angefragt: https://github.com/rg-engineering/ioBroker.daswetter/issues/24
Das wurde zügig umgesetzt Der Adapter "das.wetter" hat mittlerweile den Datenpunkt current, siehe https://github.com/rg-engineering/ioBroker.daswetter:
"current" in NextHours_Day1: DasWetter.com does not deliver real current weather values but sometimes it's helpfull to have the forecast of current hour available so we added "current" which is just a copy of related forecast hour values please make sure you call the adapter at least one time per hour to make sure "current" is updated well see also github feature request issue24
Somit wird mein Script nicht mehr benötigt.
P.S. Ich habe allerdings nun einen "got no data! check data structure…" Fehler im Log vom Adapter, aber das ist ein anderes Thema und unter https://github.com/rg-engineering/ioBroker.daswetter/issues/26 adressiert.
P.P.S: ein schönes Beispiel dafür, dass jeder von uns einen Github-Account haben sollte und Verbesserungsvorschläge etc. aktiv dort in die "Issues" reinschreiben sollte. Als Entwickler hat man da das alles gebündelt und kann es schön abarbeiten…
-
Ich habe den Fehler auch. Ich habe dein Script deaktiviert, hat mir gute Dienste geleistet. Vielen Dank!
-
Hab den Fehler bei mir auch im Log :shock:
-
Gibt es hier schon neue Erkenntnisse zu dem Fehler ? Ich habe es auch im Log:
daswetter.0 2019-01-01 10:30:02.237 error got no data! check data structure...