Aktuelle Temperartur pushen
Moderator: Co-Administratoren
Aktuelle Temperartur pushen
Hallo Zusammen,
stecke "HM-technisch" noch voll in den Kinderschuchen, weshalb ich zu diesem für Euch warscheinlich trivialen Thema mal etwas hilfe bräuchte..
Wie kann ich die aktuelle Temperatur meines HM_WDS10 auslesen und pushen ?
Hintergrund: Pushe mir gerade für morgens die Meldung "Glatteiswarnung" bei einer ProgAbfrage der Temp bei <1°C.
Diese "Telegram" Message würde ich gerne um die aktuelle Temperatur erweitern... aber wie ?
Hab schon so einige Scrpte gesehen, kann mir aufgrund er komplexität die Einfachheit meiner Anforderung nicht ableiten.
Danke Euch
stecke "HM-technisch" noch voll in den Kinderschuchen, weshalb ich zu diesem für Euch warscheinlich trivialen Thema mal etwas hilfe bräuchte..
Wie kann ich die aktuelle Temperatur meines HM_WDS10 auslesen und pushen ?
Hintergrund: Pushe mir gerade für morgens die Meldung "Glatteiswarnung" bei einer ProgAbfrage der Temp bei <1°C.
Diese "Telegram" Message würde ich gerne um die aktuelle Temperatur erweitern... aber wie ?
Hab schon so einige Scrpte gesehen, kann mir aufgrund er komplexität die Einfachheit meiner Anforderung nicht ableiten.
Danke Euch
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Aktuelle Temperartur pushen
Was benutzt du im Moment?
IMMER entsprechende >>BSC<< und die verwendeten Scripte in Codetags posten.
Alchy
IMMER entsprechende >>BSC<< und die verwendeten Scripte in Codetags posten.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Aktuelle Temperartur pushen
Hi Alchy,
sorry... bin hier noch nicht so fit indem, wie man eine richtige Frage postet.
Wahrscheinlich bin ich auch im falschen UNterforum ?!?!
Ich versuch es mal...:
Das Programm und das Script
sorry... bin hier noch nicht so fit indem, wie man eine richtige Frage postet.
Wahrscheinlich bin ich auch im falschen UNterforum ?!?!
Ich versuch es mal...:
Das Programm und das Script
Code: Alles auswählen
string message = "!! Temperatur <1C - Glatteiswarnung !!";
string chatid = "XXXXXXX"; ! chat_id des Empfängers
string botAPI = "XXXXXXX"; ! API des eingerichteten Bots
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("extra/curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage -d text='"#message#"' -d chat_id="#chatid);
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Aktuelle Temperartur pushen
Jo, bist du - mal schauen, wo ich das reinschiebe.JimPanse hat geschrieben: Wahrscheinlich bin ich auch im falschen UNterforum ?!?!
Dann lass das Programm so, und ändere das Script dazu ab:JimPanse hat geschrieben: Ich versuch es mal...:
Code: Alles auswählen
string wert = "unbekannt";
if (channels.Get("Thermo Gartenhaus")){ wert = dom.GetObject(ID_CHANNELS).Get("Thermo Gartenhaus").DPByHssDP("TEMPERATURE").Value().ToString(1) #" Grad";}
string message = "!! Temperatur "#wert #" - Glatteiswarnung !!";
string chatid = "XXXXXXX"; ! chat_id des Empfängers
string botAPI = "XXXXXXX"; ! API des eingerichteten Bots
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("extra/curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage -d text='"#message#"' -d chat_id="#chatid);
Es ist immer einfacher Usern zu helfen, die sich helfen lassen wollen.
Und damit ist eben so etwas gemeint, wie ohne Nachfrage >>BidschirmCopys anhängen<<, verwendete Scripte posten, möglichst eine genaue Beschreibung des Gewollten abgeben usw.
Das erspart das Nachfragen, unter anderen Umständen hätte ich vielleicht gar nicht erst nachgefragt und du wärst auf deiner Frage sitzen geblieben.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Aktuelle Temperartur pushen
Hi Alchy...
danke für deine Bemühungen. Es wird aktuell folgende Mitteilung gepusht: !! Temperatur "unbekannt" - Glatteiswarnung !!
Das ist es jetzt nicht so ganz
Ich hatte mir diese Variante gedacht.... bis aber zu doof das selber final umzusetzen...
!! Temperatur <1°C - Glatteiswarnung !! (nur Text)
Die aktuelle Temperatur liegt bei XX (inkl. aktuellen Temp-Wert bei Auslösen des Progs)
Wäre klasse wenn du mir da noch etwas unter die Arme helfen könntest
danke für deine Bemühungen. Es wird aktuell folgende Mitteilung gepusht: !! Temperatur "unbekannt" - Glatteiswarnung !!
Das ist es jetzt nicht so ganz
Ich hatte mir diese Variante gedacht.... bis aber zu doof das selber final umzusetzen...
!! Temperatur <1°C - Glatteiswarnung !! (nur Text)
Die aktuelle Temperatur liegt bei XX (inkl. aktuellen Temp-Wert bei Auslösen des Progs)
Wäre klasse wenn du mir da noch etwas unter die Arme helfen könntest
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Aktuelle Temperartur pushen
unbekannt wird gepusht wenn dein auszulesender Kanal nicht Thermo Gartenhaus heissen würde, lt. Deiner BSC ist dem aber so
Ich weiß schon, warum ich nie die Namen verwende.
Probier mal anders.
Du setzt im folgenden Script deine Seriennummer statt der IEQ012345678 deines Temperatursensors ein.
und wenn du dort eine Ausgabe der Temperatur erhältst, nimmst du das folgende Script zum pushen derselben,
Darin änderst du aber bitte 2 x die Seriennummer
Alchy
Ich weiß schon, warum ich nie die Namen verwende.
Probier mal anders.
Du setzt im folgenden Script deine Seriennummer statt der IEQ012345678 deines Temperatursensors ein.
Code: Alles auswählen
WriteLine ((dom.GetObject(ID_DATAPOINTS)).Get("BidCos-RF.IEQ012345678:1.TEMPERATURE").Value().ToString(1) #" Grad");
Darin änderst du aber bitte 2 x die Seriennummer
Code: Alles auswählen
string wert = "unbekannt";
if (datapoints.Get("BidCos-RF.IEQ012345678:1.TEMPERATURE")){ wert = datapoints.Get("BidCos-RF.IEQ012345678:1.TEMPERATURE").Value().ToString(1) #" Grad";}
string message = "!! Temperatur "#wert #" - Glatteiswarnung !!";
string chatid = "XXXXXXX"; ! chat_id des Empfängers
string botAPI = "XXXXXXX"; ! API des eingerichteten Bots
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage -d text='"#message#"' -d chat_id="#chatid);
Zuletzt geändert von alchy am 23.12.2019, 22:13, insgesamt 1-mal geändert.
Grund: curl Aufruf angepasst
Grund: curl Aufruf angepasst
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Aktuelle Temperartur pushen
Da stecke der Teufel mal wieder im Detail ... mein sender heißt Themo_Gartenhaus
Nach deiner Vermutung woran es liegen könnte, hab ich natürlich sofort den Fehler im Script gefunden !!
Lieben Dank Alchy
Nach deiner Vermutung woran es liegen könnte, hab ich natürlich sofort den Fehler im Script gefunden !!
Lieben Dank Alchy
Re: Aktuelle Temperartur pushen
Noch eine Frage:
Wie finde ich den jetzt selbstständig heraus.... wie ich z.B. auch andere Channels anderer Messfühler auslesen kann, umd diese Zeile zu füllen ??
Auf Luftfeuchtigkeit (HUMUDITY) kann man ja selber schnell kommen ...
Wie finde ich den jetzt selbstständig heraus.... wie ich z.B. auch andere Channels anderer Messfühler auslesen kann, umd diese Zeile zu füllen ??
Code: Alles auswählen
if (channels.Get("Thermo_Gartenhaus")){ wert = dom.GetObject(ID_CHANNELS).Get("Thermo_Gartenhaus").DPByHssDP("TEMPERATURE").Value().ToString(1) #" Grad";}
Auf Luftfeuchtigkeit (HUMUDITY) kann man ja selber schnell kommen ...
Zuletzt geändert von alchy am 10.02.2017, 00:02, insgesamt 1-mal geändert.
Grund: Code in Codetags posten
Grund: Code in Codetags posten
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Aktuelle Temperartur pushen
Gratulation. Der Fehler war aber nicht im Script, der Fehler lag an mir.JimPanse hat geschrieben:Da stecke der Teufel mal wieder im Detail ... mein sender heißt Themo_Gartenhaus
Nach deiner Vermutung woran es liegen könnte, hab ich natürlich sofort den Fehler im Script gefunden !!
Hätte ich es dir nicht mundgerecht gemacht, hättest du selber Nachdenken müssen.
Aber ich kann mir nicht helfen, aber bei mir sehe ich deutlich, wenn ich mit _ arbeite
während es bei dir so aussieht:
Mein Tipp: viel LesenJimPanse hat geschrieben:Wie finde ich den jetzt selbstständig heraus.... wie ich z.B. auch andere Channels anderer Messfühler auslesen kann, umd diese Zeile zu füllen ??
In meiner Signatur findest du einige Links die dir dabei helfen könnten.
Für dein Begehr, sollte die verlinkte ScriptDoku passend sein.
Dann entsprechende Hilfsmittel nach eigenen Ermessen (xmlapi addon usw. oder ein paar HM Scripte) und viel probieren, und viel Lesen.
Im Forum gibt es jede Menge Informationen, die man nur Lesen muss.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.