NEWS
Telegram Bot emoji
-
Moin,
ich habe mitlerweile erfolgreich einen Telegram-Bot installiert und bekomme dort Nachrichten, wenn z.B. die Mülltonne rausgestellt werden muss.
Beispiel 2:
! /* Kalenderevent in der Zukunft suchen
! sucht im iCal Adapter nach events, die noch kommen
! viewtopic.php?f=21&t=3761&sid=4319378b32a0ce096bbbbfc0ebd859ce#p34975
! 20.09.2016 erstellt von pix
! 13.11.2016 angepasst für Sven
! */
! // User Anpassungen
! var aSuchstringLiteral = ['Gelber Sack', 'Papiertonne', 'Restabfall', 'Bioabfall']; // Suchbegriff
! var aSuchstring = ['GelberSack', 'Papiertonne', 'Restmüll', 'Bioabfall'];
! var stichtag = 1; // 0 heute; 1 morgen; 2 übermorgen; 3 In 3 Tagen
! var idTabelle = 'ical.2.data.table'; // Instanz eintragen
! var logging = false; // debug Log ein/ausschalten
! // Ende User Anpassungen
! for (var j = 0; j < aSuchstring.length; j++) {
! createState('muell.telegram.' + aSuchstring[j], false, {
! type: 'boolean',
! name: aSuchstringLiteral[j] + ' wird morgen abgeholt',
! desc: aSuchstringLiteral[j] + ' wird morgen abgeholt (Boolean)',
! def: false
! });
! var idEventState = 'muell.telegram.' + aSuchstring[j];
! if(logging) log (idEventState);
! setState(idEventState, false);
! }
! var tage = ['Heute','Morgen','Übermorgen','In 3 Tagen']; // dafür relative Datumsangabe in iCal-Adapter einschalten und ggf. übersetzen
! function datum(x) {
! var jetzt = new Date();
! if (logging) log('Jetztzeit: ' + jetzt);
! var zeit = new Date (jetzt.getFullYear(), jetzt.getMonth(), jetzt.getDate() + x); //
! if (logging) log('Zielzeit: ' + zeit);
! var jahr = zeit.getFullYear();
! var monat = (zeit.getMonth()+1 < 10) ? '0' + (zeit.getMonth()+1) : zeit.getMonth()+1;
! var tag = (zeit.getDate() < 10) ? '0' + zeit.getDate() : zeit.getDate();
! return (tag + '.' + monat + '.' + jahr);
! }
! function pruefeKalender() {
! var kalender = getState(idTabelle).val;
! var tag = datum(parseInt(stichtag,10));
! if (logging) log(tag);
! try{
! var ereignisse = JSON.stringify(kalender, null, 2); // Ausgabe als String
! if (logging) log(ereignisse);
! for (var j = 0; j < aSuchstring.length; j++) {
! var idEventState = 'muell.telegram.' + aSuchstring[j];
! for(var i = 0; i <kalender.length; i++)/{/alle/events/durchgehen<br="">if ( (kalender__.date.indexOf(tag) != -1) || (kalender__.date.indexOf(tage[stichtag]) != -1) ) { // String Datum oder relatives Datum (nicht nicht) gefunden, also gefunden
! var termin = kalender__.event;
! if (termin.indexOf(aSuchstringLiteral[j]) != -1) {
! log('Treffer: ' + tage[stichtag] + ' ' + aSuchstringLiteral[j]); // hier wird später vielleicht stichtag_array verwendet
! setState(idEventState, true);
! sendTo('telegram.0', aSuchstringLiteral[j] + ' wird morgen abgeholt.');
! break;
! } else setState(idEventState, false);
! } else setState(idEventState, false);
! }
! }
! }
! catch (fehler_try) {
! log('Fehler beim Kalenderevents einlesen ' + fehler_try, 'error');
! }
! }
! //SCHEDULE CHECK 19h
! schedule('0 19 * * *', pruefeKalender);
! //bei Skriptstart
! pruefeKalender();______</kalender.length;> ______Nun wollte ich das ganze etwas aufpeppen und hatte die Idee da was mit emoji zu machen, bekomme es aber nicht hin.Was ich bisher versucht habe:___
Zeile 67: sendTo('telegram.0', 'u\'\\U0001F4C6\''+aSuchstringLiteral[j] + ' wird morgen abgeholt.');
Leider wird immer nur der Code angezeigt und nicht das Calendar-Emoji.
Ist es überhaupt möglich emoji´s mit dem Telegram-Adapter zu nutzen?
Über die Suchfunktion konnte ich leider keine Antwort finden.
Vielen Dank,
teilchenb___
-
Sende dein Emoji an den Bot, Emoji aus dem Logfile kopieren, in Telegram Text einfügen.
Funktioniert bei mir in Blockly.
Grüße
-
Hallo iomountain,
erstmal vielen Dank für deine Antwort.
In Blockly habe ich das mit den Emoji´s jetzt auch hinbekommen.
Ich suche aber immernoch nach einer Möglichkeit das in JS zu machen.
LG,
teilchenb
-
Hallo,
du kannst dir ein Emoji schicken und bei den Objekten unter Telegram/communicate/request gucken.
Da sollte das Emoji erscheinen und dann kopierst du dir das und fügst es einfach bei JS ein.
Bei mir hat es wunderbar geklappt..
Gruß Kun()
-
Geht auch in Blockly oder Javascript, gerade probiert. Danke für den Tipp.
Leider kann ich im Moment kein Bild anhängen, bissl viel PN geschrieben heute.
:!:
Das Kontingent für Dateianhänge ist bereits vollständig ausgenutzt.
-
Ich hätte es mit dem Ping-Adapter versucht und bekomme alle 1-2 Minuten eine Benachrichtigung.
Kann es sein, dass das "Änderungen melden" eigentlich "Aktualisierungen" sind? Wenn es es aktiv ist, bekomme ich bei jedem Update des Werts eine Benachrichtigung. Sonst gar keine.
Wäre interessant, welche Möglichkeiten man bei deaktiviertem "Änderungen melden" hat. Mit aktivierten "Änderungen melden" würde es dann funktionieren, wenn die Werte nur bei Änderungen aktualisiert werden. Beim Ping-Adapter ist das aber nicht der Fall.