Telegram Messaging

telegram.png

Mit Hilfe des Messaging Dienstes Telegram  lassen sich sehr individuelle Benachrichtigungen und Einstellungen vornehmen. Bei der Verwendung mit Casa Corrently ist aufgefallen, dass man einen Mittelweg zwischen zu vielen Nachrichten und genügend Informationen finden muss. 

An dieser Stelle daher die Empfehlung, dass man an die Usecases (Anwendungsfälle) denkt und entsprechend die Benachrichtigungen aufbaut.

Funktion: Answer with Globals

let res = {
    content: '',
    type: 'message',
    chatId: 215089981
};
if(msg.payload.type == 'message') {
    if(typeof global.get(msg.payload.content) != 'undefined')  {
        res.content= ''+global.get(msg.payload.content);
    } else
    if(msg.payload.content == "keys") {
        res.content = '' + global.keys();
    } else
    if(msg.payload.content == "kritisch") {
        res.content = 'in ' + Math.round((global.get("SoC_min_ts") - new Date().getTime() )/3600000) +' Stunden (' + global.get('SoC_min')+' Wh) '+ new Date(global.get("SoC_min_ts")).toLocaleString('de-DE',{timeZone:'Europe/Berlin'});
    } else
    if(msg.payload.content == "auto") {
        let eXgsi = global.get('eXgsi');
        let ts = 0;
        for(let i=0;(i<eXgsi.length)&&(ts==0);i++) {
            if(eXgsi[i].fields.s4 == 1) {
                ts = Math.round(eXgsi[i].timestamp / 1000000);
            }
        }
        res.content = 'Beginne Ladung in ' + Math.round((ts - new Date().getTime() )/3600000) +' Stunden '+  new Date(ts).toLocaleString('de-DE',{timeZone:'Europe/Berlin'});
    }
}
msg.payload = res;
return msg;
Autoladung

Man sitzt noch im Auto und könnte den Ladetimer programmieren. Welche Uhrzeit ist ratsam?

Die Antwort steht über die Schalter des kombinierten GrünstromIndex zu Verfügung. Dieser ist in der Global Variable eXgsi abrufbar. 

Eine Antwort auf die Nachricht "auto" per Instagrmm wird in den Zeilen 16-25 erstellt. Der Startzeitpunkt ist somit der Beginn der besten 4 Stunden laut kombiniertem GrünstromIndex.

telegram_gsi.png