Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. DWD Warnung als Telegramm

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

DWD Warnung als Telegramm

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
67 Beiträge 16 Kommentatoren 11.9k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • wendy2702W Online
    wendy2702W Online
    wendy2702
    schrieb am zuletzt editiert von
    #46

    Kein Stress [emoji41]

    Gesendet von iPhone mit Tapatalk Pro

    Bitte keine Fragen per PN, die gehören ins Forum!

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      PrinzEisenherz1
      schrieb am zuletzt editiert von
      #47

      So, mit tatkräftiger Unterstützung von Paul53 (an dieser stelle auch nochmal tausend Dank dafür) gibt es jetzt ein funktionierendes DWD Script mit dem man sich

      Push-Nachrichten über Pushover oder Telegram senden lassen kann. Des Weiteren kann eine Ausdioausgabe über Home24-Mediaplayer oder SayIt erfolgen.

      Viel Spass damit

      Gruß

      Johnny

      [EDIT - 13022016 09:34] Fehler mit " [3,4,5] gültig bis [3,4,5] " wurde behoben

      Variante für 3-Warnings:

      ! ```
      `/* ************************************************************************* /
      /
      Script zum Übertragen der DWD-Wetterwarnungen über /
      /
      Telegram, Pushover, Home24-Mediaplayer oder SayIt /
      /
      mit freundlicher Unterstützung von Paul53 (Tausend Dank nochmals) /
      /
      Stand: 130022017 PrinzEisenherz1 /
      /
      /
      /
      - Fehlerbehebung z.B. 3 gültig bis 3 /
      /
      /
      /
      /
      /
      /
      /
      /
      /
      Variante für 3-warnings /
      /
      /
      /
      ************************************************************************* /
      ! var request = require('request');
      ! /
      Nachrichten-Dienst festlegen /
      /
      aus=0 ; alle=1 ; Pushover=2 ; Telegram=3 /
      var pushdienst = 3; // Auswahl Nachrichtendienst
      ! /
      Konfiguration Sprachausgabe über Home24-Mediaplayer /
      var idSprachausgabe = false; // Wenn zusätzlich eine Sprachausgabe erfolgen soll dann auf true
      var idMediaplayer = "192.168.178.70:50000"; // Eingabe IP-Adresse incl. Port für Home24-Mediaplayer
      ! /
      Konfiguration Sprachausgabe über SayIt /
      var idSprachausgabeSayIt = false; // Wenn zusätzlich eine Sprachausgabe über SayIt erfolgen soll dann auf true
      var idSayIt = "sayit.0.tts.text";
      var lautstaerke = 100;
      ! /
      Trigger für Wetterwarnungen /
      var idDescription0 = "dwd.0.warning.description";
      var idDescription1 = "dwd.0.warning1.description";
      var idDescription2 = "dwd.0.warning2.description";
      /
      Arrays festlegen */
      var newDescriptions = [3];
      var oldDescriptions = [3];
      var newHeadlines = [3];
      var oldHeadlines = [3];
      var newBegins = [3];
      var oldBegins = [3];
      var newEnds = [3];
      var oldEnds = [3];
      var timer = null;

      /* aktivieren bzw erstmaliges Befüllen der arrays */
      newDescriptions[0] = '';
      newDescriptions[1] = '';
      newDescriptions[2] = '';
      oldDescriptions[0] = '';
      oldDescriptions[1] = '';
      oldDescriptions[2] = '';

      ! newHeadlines[0] = '';
      newHeadlines[1] = '';
      newHeadlines[2] = '';
      oldHeadlines[0] = '';
      oldHeadlines[1] = '';
      oldHeadlines[2] = '';
      ! newBegins[0] = '';
      newBegins[1] = '';
      newBegins[2] = '';
      oldBegins[0] = '';
      oldBegins[1] = '';
      oldBegins[2] = '';
      ! newEnds[0] = '';
      newEnds[1] = '';
      newEnds[2] = '';
      oldEnds[0] = '';
      oldEnds[1] = '';
      oldEnds[2] = '';

      function check() {
      /* Bereich für 'Alle Wetterwarnungen wurden aufgehoben' /
      if(newDescriptions[0] === "") {
      MeldungSpracheDWD = 'Achtung' + ' . ' + 'Alle Warnmeldungen des DWD wurden aufgehoben';
      /
      Bereich für Sprachausgabe über Home24-Mediaplayer /
      if(idSprachausgabe === true){
      var Url = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
      request(Url);
      }
      /
      Bereich für Sprachausgabe über SayIt */
      if(idSprachausgabeSayIt === true){
      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
      }
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
      }

      ! /* alle Sicherungen Wetterwarnung löschen /
      oldHeadlines = newHeadlines.slice();
      oldDescriptions = newDescriptions.slice();
      oldBegins = newBegins.slice();
      oldEnds = newEnds.slice();
      return;
      }
      ! /
      Variablen für Meldungen Text /
      var MeldungOld = '';
      var MeldungNew = '';
      /
      Variablen für Meldungen Sprache /
      var MeldungSpracheDWD = '';
      var MeldungNewSprache = '';
      var MeldungOldSprache = '';
      ! var headline;
      var description;
      var begin;
      var end;
      var i;
      var warn;
      ! /
      Bereich für 'Wetterwarnung gültig bis wurde aufgehoben' /
      for(i = 0; i < 3; i++) {
      warn = 'dwd.0.warning';
      if(i) warn = warn + i;
      headline = oldHeadlines[i];
      description = oldDescriptions[i];
      begin = oldBegins[i];
      end = oldEnds[i];
      if(newDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
      MeldungOld = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben';
      MeldungOldSprache = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben' + ' . ';
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben")), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben");
      }
      /
      Verknüpfen aller aufgehobenen Wetterwarnungen /
      if(MeldungOldSprache !== "" && MeldungOldSprache !== undefined){
      MeldungSpracheDWD = MeldungSpracheDWD + MeldungOldSprache;
      }
      }
      }
      ! /
      Bereich für 'Neue Amtliche Wetterwarnung' /
      for(i = 0; i < 3; i++) {
      warn = 'dwd.0.warning';
      if(i) warn = warn + i;
      headline = newHeadlines[i];
      description = newDescriptions[i];
      begin = newBegins[i];
      end = newEnds[i];
      if(oldDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
      MeldungNew = headline + "\ngültig vom " + begin + " Uhr bis " + end + " Uhr\n" + description;
      /
      Entfernen °C für Sprachausgabe /
      var replaceDescription0 = entferneDatenpunkt(description);
      MeldungNewSprache = headline + " gültig vom " + begin + " Uhr, bis " + end + " Uhr. " + replaceDescription0 + ' . ';
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", MeldungNew)), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", MeldungNew);
      }
      /
      Verknüpfen aller neuen Warnmeldungen /
      if(MeldungNewSprache !== "" && MeldungNewSprache !== undefined){
      MeldungSpracheDWD = MeldungSpracheDWD + MeldungNewSprache;
      }
      }
      }
      /
      Verknüpfen aller neuen und abgelaufenen Warnmeldungen /
      MeldungSpracheDWD = 'Achtung . ' + MeldungSpracheDWD;
      ! /
      Bereich für Sprachausgabe über Home24-Mediaplayer /
      if((idSprachausgabe === true) && (MeldungSpracheDWD !== "")){
      var Url2 = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
      log('Url2 :' + Url2);
      request(Url2);
      }
      /
      Bereich für Sprachausgabe über SayIt /
      if((idSprachausgabeSayIt === true) && (MeldungSpracheDWD !== "")){
      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
      }
      ! /
      Neue Werte sichern /
      oldHeadlines = newHeadlines.slice();
      oldDescriptions = newDescriptions.slice();
      oldBegins = newBegins.slice();
      oldEnds = newEnds.slice();
      }
      ! /
      Entfernt "°C" aus Sprachmeldung und ersetzt es durch "Grad" /
      function entferneDatenpunkt(beschreibung) {
      var rueckgabe;
      rueckgabe = beschreibung;
      try {
      rueckgabe = rueckgabe.replace(/\°C/g, "Grad");
      rueckgabe = rueckgabe.replace(/\km/h/g, "Kilometer pro Stunde");
      }
      catch(e) {}
      return rueckgabe;
      }
      on(idDescription0, function(dp) {
      newDescriptions[0] = dp.state.val;
      var warn = 'dwd.0.warning';
      setTimeout(function() {
      newHeadlines[0] = getState(warn + '.headline').val;
      newBegins[0] = getState(warn + '.begin').val;
      newEnds[0] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      ! on(idDescription1, function(dp) {
      newDescriptions[1] = dp.state.val;
      var warn = 'dwd.0.warning1';
      setTimeout(function() {
      newHeadlines[1] = getState(warn + '.headline').val;
      newBegins[1] = getState(warn + '.begin').val;
      newEnds[1] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      ! on(idDescription2, function(dp) {
      newDescriptions[2] = dp.state.val;
      var warn = 'dwd.0.warning2';
      setTimeout(function() {
      newHeadlines[2] = getState(warn + '.headline').val;
      newBegins[2] = getState(warn + '.begin').val;
      newEnds[2] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      }); ! Variante für 4-Warnings: ! >! ~~[spoiler]~~[code]/
      ************************************************************************* /
      /
      Script zum Übertragen der DWD-Wetterwarnungen über /
      /
      Telegram, Pushover, Home24-Mediaplayer oder SayIt /
      /
      mit freundlicher Unterstützung von Paul53 (Tausend Dank nochmals) /
      /
      Stand: 130022017 PrinzEisenherz1 /
      /
      /
      /
      - Fehlerbehebung z.B. 4 gültig bis 4 /
      /
      /
      /
      /
      /
      /
      /
      /
      /
      Variante für 4-warnings /
      /
      /
      /
      ************************************************************************* /
      ! var request = require('request');
      ! /
      Nachrichten-Dienst festlegen /
      /
      aus=0 ; alle=1 ; Pushover=2 ; Telegram=3 /
      var pushdienst = 3; // Auswahl Nachrichtendienst
      ! /
      Konfiguration Sprachausgabe über Home24-Mediaplayer /
      var idSprachausgabe = false; // Wenn zusätzlich eine Sprachausgabe erfolgen soll dann auf true
      var idMediaplayer = "192.168.178.70:50000"; // Eingabe IP-Adresse incl. Port für Home24-Mediaplayer
      ! /
      Konfiguration Sprachausgabe über SayIt /
      var idSprachausgabeSayIt = false; // Wenn zusätzlich eine Sprachausgabe über SayIt erfolgen soll dann auf true
      var idSayIt = "sayit.0.tts.text";
      var lautstaerke = 100;
      ! /
      Trigger für Wetterwarnungen /
      var idDescription0 = "dwd.0.warning.description";
      var idDescription1 = "dwd.0.warning1.description";
      var idDescription2 = "dwd.0.warning2.description";
      var idDescription3 = "dwd.0.warning3.description";
      /
      Arrays festlegen /
      var newDescriptions = [4];
      var oldDescriptions = [4];
      var newHeadlines = [4];
      var oldHeadlines = [4];
      var newBegins = [4];
      var oldBegins = [4];
      var newEnds = [4];
      var oldEnds = [4];
      var timer = null;
      /
      aktivieren bzw erstmaliges Befüllen der arrays */
      newDescriptions[0] = '';
      newDescriptions[1] = '';
      newDescriptions[2] = '';
      newDescriptions[3] = '';
      oldDescriptions[0] = '';
      oldDescriptions[1] = '';
      oldDescriptions[2] = '';
      oldDescriptions[3] = '';
      ! newHeadlines[0] = '';
      newHeadlines[1] = '';
      newHeadlines[2] = '';
      newHeadlines[3] = '';
      oldHeadlines[0] = '';
      oldHeadlines[1] = '';
      oldHeadlines[2] = '';
      oldHeadlines[3] = '';
      ! newBegins[0] = '';
      newBegins[1] = '';
      newBegins[2] = '';
      newBegins[3] = '';
      oldBegins[0] = '';
      oldBegins[1] = '';
      oldBegins[2] = '';
      oldBegins[3] = '';
      ! newEnds[0] = '';
      newEnds[1] = '';
      newEnds[2] = '';
      newEnds[3] = '';
      oldEnds[0] = '';
      oldEnds[1] = '';
      oldEnds[2] = '';
      oldEnds[3] = '';

      function check() {
      /* Bereich für 'Alle Wetterwarnungen wurden aufgehoben' /
      if(newDescriptions[0] === "") {
      MeldungSpracheDWD = 'Achtung' + ' . ' + 'Alle Warnmeldungen des DWD wurden aufgehoben';
      /
      Bereich für Sprachausgabe über Home24-Mediaplayer /
      if(idSprachausgabe === true){
      var Url = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
      request(Url);
      }
      /
      Bereich für Sprachausgabe über SayIt */
      if(idSprachausgabeSayIt === true){
      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
      }
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
      }

      ! /* alle Sicherungen Wetterwarnung löschen /
      oldHeadlines = newHeadlines.slice();
      oldDescriptions = newDescriptions.slice();
      oldBegins = newBegins.slice();
      oldEnds = newEnds.slice();
      return;
      }
      ! /
      Variablen für Meldungen Text /
      var MeldungOld = '';
      var MeldungNew = '';
      /
      Variablen für Meldungen Sprache /
      var MeldungSpracheDWD = '';
      var MeldungNewSprache = '';
      var MeldungOldSprache = '';
      ! var headline;
      var description;
      var begin;
      var end;
      var i;
      var warn;
      ! /
      Bereich für 'Wetterwarnung gültig bis wurde aufgehoben' /
      for(i = 0; i < 4; i++) {
      warn = 'dwd.0.warning';
      if(i) warn = warn + i;
      headline = oldHeadlines[i];
      description = oldDescriptions[i];
      begin = oldBegins[i];
      end = oldEnds[i];
      if(newDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
      MeldungOld = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben';
      MeldungOldSprache = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben' + ' . ';
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben")), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben");
      }
      /
      Verknüpfen aller aufgehobenen Wetterwarnungen /
      if(MeldungOldSprache !== "" && MeldungOldSprache !== undefined){
      MeldungSpracheDWD = MeldungSpracheDWD + MeldungOldSprache;
      }
      }
      }
      ! /
      Bereich für 'Neue Amtliche Wetterwarnung' /
      for(i = 0; i < 4; i++) {
      warn = 'dwd.0.warning';
      if(i) warn = warn + i;
      headline = newHeadlines[i];
      description = newDescriptions[i];
      begin = newBegins[i];
      end = newEnds[i];
      if(oldDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
      MeldungNew = headline + "\ngültig vom " + begin + " Uhr bis " + end + " Uhr\n" + description;
      /
      Entfernen °C für Sprachausgabe /
      var replaceDescription0 = entferneDatenpunkt(description);
      MeldungNewSprache = headline + " gültig vom " + begin + " Uhr, bis " + end + " Uhr. " + replaceDescription0 + ' . ';
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", MeldungNew)), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", MeldungNew);
      }
      /
      Verknüpfen aller neuen Warnmeldungen /
      if(MeldungNewSprache !== "" && MeldungNewSprache !== undefined){
      MeldungSpracheDWD = MeldungSpracheDWD + MeldungNewSprache;
      }
      }
      }
      /
      Verknüpfen aller neuen und abgelaufenen Warnmeldungen /
      MeldungSpracheDWD = 'Achtung . ' + MeldungSpracheDWD;
      ! /
      Bereich für Sprachausgabe über Home24-Mediaplayer /
      if((idSprachausgabe === true) && (MeldungSpracheDWD !== "")){
      var Url2 = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
      log('Url2 :' + Url2);
      request(Url2);
      }
      /
      Bereich für Sprachausgabe über SayIt /
      if((idSprachausgabeSayIt === true) && (MeldungSpracheDWD !== "")){
      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
      }
      ! /
      Neue Werte sichern /
      oldHeadlines = newHeadlines.slice();
      oldDescriptions = newDescriptions.slice();
      oldBegins = newBegins.slice();
      oldEnds = newEnds.slice();
      }
      ! /
      Entfernt "°C" aus Sprachmeldung und ersetzt es durch "Grad" /
      function entferneDatenpunkt(beschreibung) {
      var rueckgabe;
      rueckgabe = beschreibung;
      try {
      rueckgabe = rueckgabe.replace(/\°C/g, "Grad");
      rueckgabe = rueckgabe.replace(/\km/h/g, "Kilometer pro Stunde");
      }
      catch(e) {}
      return rueckgabe;
      }
      on(idDescription0, function(dp) {
      newDescriptions[0] = dp.state.val;
      var warn = 'dwd.0.warning';
      setTimeout(function() {
      newHeadlines[0] = getState(warn + '.headline').val;
      newBegins[0] = getState(warn + '.begin').val;
      newEnds[0] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      ! on(idDescription1, function(dp) {
      newDescriptions[1] = dp.state.val;
      var warn = 'dwd.0.warning1';
      setTimeout(function() {
      newHeadlines[1] = getState(warn + '.headline').val;
      newBegins[1] = getState(warn + '.begin').val;
      newEnds[1] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      ! on(idDescription2, function(dp) {
      newDescriptions[2] = dp.state.val;
      var warn = 'dwd.0.warning2';
      setTimeout(function() {
      newHeadlines[2] = getState(warn + '.headline').val;
      newBegins[2] = getState(warn + '.begin').val;
      newEnds[2] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      on(idDescription3, function(dp) {
      newDescriptions[3] = dp.state.val;
      var warn = 'dwd.0.warning3';
      setTimeout(function() {
      newHeadlines[3] = getState(warn + '.headline').val;
      newBegins[3] = getState(warn + '.begin').val;
      newEnds[3] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      }); ! Variante für 5-Warnings: ! >! ~~[spoiler]~~[code]/
      ************************************************************************* /
      /
      Script zum Übertragen der DWD-Wetterwarnungen über /
      /
      Telegram, Pushover, Home24-Mediaplayer oder SayIt /
      /
      mit freundlicher Unterstützung von Paul53 (Tausend Dank nochmals) /
      /
      Stand: 130022017 PrinzEisenherz1 /
      /
      /
      /
      - Fehlerbehebung z.B. 5 gültig bis 5 /
      /
      /
      /
      /
      /
      /
      /
      /
      /
      Variante für 5-warnings /
      /
      /
      /
      ************************************************************************* /
      ! var request = require('request');
      ! /
      Nachrichten-Dienst festlegen /
      /
      aus=0 ; alle=1 ; Pushover=2 ; Telegram=3 /
      var pushdienst = 3; // Auswahl Nachrichtendienst
      ! /
      Konfiguration Sprachausgabe über Home24-Mediaplayer /
      var idSprachausgabe = false; // Wenn zusätzlich eine Sprachausgabe erfolgen soll dann auf true
      var idMediaplayer = "192.168.178.70:50000"; // Eingabe IP-Adresse incl. Port für Home24-Mediaplayer
      ! /
      Konfiguration Sprachausgabe über SayIt /
      var idSprachausgabeSayIt = false; // Wenn zusätzlich eine Sprachausgabe über SayIt erfolgen soll dann auf true
      var idSayIt = "sayit.0.tts.text";
      var lautstaerke = 100;
      ! /
      Trigger für Wetterwarnungen */
      var idDescription0 = "dwd.0.warning.description";
      var idDescription1 = "dwd.0.warning1.description";
      var idDescription2 = "dwd.0.warning2.description";
      var idDescription3 = "dwd.0.warning3.description";
      var idDescription4 = "dwd.0.warning4.description";

      /* Arrays festlegen /
      var newDescriptions = [5];
      var oldDescriptions = [5];
      var newHeadlines = [5];
      var oldHeadlines = [5];
      var newBegins = [5];
      var oldBegins = [5];
      var newEnds = [5];
      var oldEnds = [5];
      var timer = null;
      /
      aktivieren bzw erstmaliges Befüllen der arrays */
      newDescriptions[0] = '';
      newDescriptions[1] = '';
      newDescriptions[2] = '';
      newDescriptions[3] = '';
      newDescriptions[4] = '';
      oldDescriptions[0] = '';
      oldDescriptions[1] = '';
      oldDescriptions[2] = '';
      oldDescriptions[3] = '';
      oldDescriptions[4] = '';

      ! newHeadlines[0] = '';
      newHeadlines[1] = '';
      newHeadlines[2] = '';
      newHeadlines[3] = '';
      newHeadlines[4] = '';
      oldHeadlines[0] = '';
      oldHeadlines[1] = '';
      oldHeadlines[2] = '';
      oldHeadlines[3] = '';
      oldHeadlines[4] = '';
      ! newBegins[0] = '';
      newBegins[1] = '';
      newBegins[2] = '';
      newBegins[3] = '';
      newBegins[4] = '';
      oldBegins[0] = '';
      oldBegins[1] = '';
      oldBegins[2] = '';
      oldBegins[3] = '';
      oldBegins[4] = '';
      ! newEnds[0] = '';
      newEnds[1] = '';
      newEnds[2] = '';
      newEnds[3] = '';
      newEnds[4] = '';
      oldEnds[0] = '';
      oldEnds[1] = '';
      oldEnds[2] = '';
      oldEnds[3] = '';
      oldEnds[4] = '';

      function check() {
      /* Bereich für 'Alle Wetterwarnungen wurden aufgehoben' /
      if(newDescriptions[0] === "") {
      MeldungSpracheDWD = 'Achtung' + ' . ' + 'Alle Warnmeldungen des DWD wurden aufgehoben';
      /
      Bereich für Sprachausgabe über Home24-Mediaplayer /
      if(idSprachausgabe === true){
      var Url = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
      request(Url);
      }
      /
      Bereich für Sprachausgabe über SayIt */
      if(idSprachausgabeSayIt === true){
      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
      }
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
      }

      ! /* alle Sicherungen Wetterwarnung löschen /
      oldHeadlines = newHeadlines.slice();
      oldDescriptions = newDescriptions.slice();
      oldBegins = newBegins.slice();
      oldEnds = newEnds.slice();
      return;
      }
      ! /
      Variablen für Meldungen Text /
      var MeldungOld = '';
      var MeldungNew = '';
      /
      Variablen für Meldungen Sprache /
      var MeldungSpracheDWD = '';
      var MeldungNewSprache = '';
      var MeldungOldSprache = '';
      ! var headline;
      var description;
      var begin;
      var end;
      var i;
      var warn;
      ! /
      Bereich für 'Wetterwarnung gültig bis wurde aufgehoben' /
      for(i = 0; i < 5; i++) {
      warn = 'dwd.0.warning';
      if(i) warn = warn + i;
      headline = oldHeadlines[i];
      description = oldDescriptions[i];
      begin = oldBegins[i];
      end = oldEnds[i];
      if(newDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
      MeldungOld = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben';
      MeldungOldSprache = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben' + ' . ';
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben")), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben");
      }
      /
      Verknüpfen aller aufgehobenen Wetterwarnungen /
      if(MeldungOldSprache !== "" && MeldungOldSprache !== undefined){
      MeldungSpracheDWD = MeldungSpracheDWD + MeldungOldSprache;
      }
      }
      }
      ! /
      Bereich für 'Neue Amtliche Wetterwarnung' /
      for(i = 0; i < 5; i++) {
      warn = 'dwd.0.warning';
      if(i) warn = warn + i;
      headline = newHeadlines[i];
      description = newDescriptions[i];
      begin = newBegins[i];
      end = newEnds[i];
      if(oldDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
      MeldungNew = headline + "\ngültig vom " + begin + " Uhr bis " + end + " Uhr\n" + description;
      /
      Entfernen °C für Sprachausgabe /
      var replaceDescription0 = entferneDatenpunkt(description);
      MeldungNewSprache = headline + " gültig vom " + begin + " Uhr, bis " + end + " Uhr. " + replaceDescription0 + ' . ';
      if ((pushdienst === 3) || (pushdienst === 1) ) {
      setTimeout((sendTo ("telegram.0", MeldungNew)), 3 * 1000);
      }
      if ((pushdienst === 2) || (pushdienst === 1) ) {
      sendTo("pushover.0", MeldungNew);
      }
      /
      Verknüpfen aller neuen Warnmeldungen /
      if(MeldungNewSprache !== "" && MeldungNewSprache !== undefined){
      MeldungSpracheDWD = MeldungSpracheDWD + MeldungNewSprache;
      }
      }
      }
      /
      Verknüpfen aller neuen und abgelaufenen Warnmeldungen /
      MeldungSpracheDWD = 'Achtung . ' + MeldungSpracheDWD;
      ! /
      Bereich für Sprachausgabe über Home24-Mediaplayer /
      if((idSprachausgabe === true) && (MeldungSpracheDWD !== "")){
      var Url2 = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
      log('Url2 :' + Url2);
      request(Url2);
      }
      /
      Bereich für Sprachausgabe über SayIt /
      if((idSprachausgabeSayIt === true) && (MeldungSpracheDWD !== "")){
      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
      }
      ! /
      Neue Werte sichern /
      oldHeadlines = newHeadlines.slice();
      oldDescriptions = newDescriptions.slice();
      oldBegins = newBegins.slice();
      oldEnds = newEnds.slice();
      }
      ! /
      Entfernt "°C" aus Sprachmeldung und ersetzt es durch "Grad" */
      function entferneDatenpunkt(beschreibung) {
      var rueckgabe;
      rueckgabe = beschreibung;
      try {
      rueckgabe = rueckgabe.replace(/\°C/g, "Grad");
      rueckgabe = rueckgabe.replace(/\km/h/g, "Kilometer pro Stunde");
      }
      catch(e) {}
      return rueckgabe;
      }
      on(idDescription0, function(dp) {
      newDescriptions[0] = dp.state.val;
      var warn = 'dwd.0.warning';
      setTimeout(function() {
      newHeadlines[0] = getState(warn + '.headline').val;
      newBegins[0] = getState(warn + '.begin').val;
      newEnds[0] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      ! on(idDescription1, function(dp) {
      newDescriptions[1] = dp.state.val;
      var warn = 'dwd.0.warning1';
      setTimeout(function() {
      newHeadlines[1] = getState(warn + '.headline').val;
      newBegins[1] = getState(warn + '.begin').val;
      newEnds[1] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      ! on(idDescription2, function(dp) {
      newDescriptions[2] = dp.state.val;
      var warn = 'dwd.0.warning2';
      setTimeout(function() {
      newHeadlines[2] = getState(warn + '.headline').val;
      newBegins[2] = getState(warn + '.begin').val;
      newEnds[2] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      on(idDescription3, function(dp) {
      newDescriptions[3] = dp.state.val;
      var warn = 'dwd.0.warning3';
      setTimeout(function() {
      newHeadlines[3] = getState(warn + '.headline').val;
      newBegins[3] = getState(warn + '.begin').val;
      newEnds[3] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });
      on(idDescription4, function(dp) {
      newDescriptions[4] = dp.state.val;
      var warn = 'dwd.0.warning4';
      setTimeout(function() {
      newHeadlines[4] = getState(warn + '.headline').val;
      newBegins[4] = getState(warn + '.begin').val;
      newEnds[4] = getState(warn + '.end').val;
      }, 3000);
      if(timer) clearTimeout(timer);
      timer = setTimeout(check, 7000);
      });`
      ! Viel Spaß damit
      ! Gruß
      ! Johnny[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/code][/spoiler][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/code][/spoiler][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]

      Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

      1 Antwort Letzte Antwort
      0
      • wendy2702W Online
        wendy2702W Online
        wendy2702
        schrieb am zuletzt editiert von
        #48

        Cool.

        Werde ich am Wochenende testen.

        Gesendet von iPhone mit Tapatalk Pro

        Bitte keine Fragen per PN, die gehören ins Forum!

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        1 Antwort Letzte Antwort
        0
        • wendy2702W Online
          wendy2702W Online
          wendy2702
          schrieb am zuletzt editiert von
          #49

          @PrinzEisenherz1:

          So, mit tatkräftiger Unterstützung von Paul53 (an dieser stelle auch nochmal tausend Dank dafür) gibt es jetzt ein funktionierendes DWD Script mit dem man sich

          Push-Nachrichten über Pushover oder Telegram senden lassen kann. Des Weiteren kann eine Ausdioausgabe über Home24-Mediaplayer oder SayIt erfolgen.

          Viel Spass damit

          Gruß

          Johnny

          [EDIT - 08022016 09:30] Hab noch ne kleine Korrektur durchgeführt. Audioausgabe "Alle Wetterwarnungen des DWD wurden aufgehoben" hat gefehlt.

          Zusätzlich werden km/h richtig ausgesprochen

          -Varianten für 4 und 5 Warnings hinzugefügt

          Variante für 5-Warnings:

          ! `/* ************************************************************************* */ /* Script zum Übertragen der DWD-Wetterwarnungen über */ /* Telegram, Pushover, Home24-Mediaplayer oder SayIt */ /* mit freundlicher Unterstützung von Paul53 (Tausend Dank nochmals) */ /* Stand: 080022017 PrinzEisenherz1 */ /* */ /* - Kleine Korrekturen */ /* - km/h wird jetzt richtig ausgesprochen */ /* - "Alle Wetterwarnungen des DWD wurden aufgehoben" zur Sprachausgabe */ /* hinzugefügt */ /* */ /* Variante für 5-warnings */ /* */ /* ************************************************************************* */ ! var request = require('request'); ! /* Nachrichten-Dienst festlegen */ /* aus=0 ; alle=1 ; Pushover=2 ; Telegram=3 */ var pushdienst = 3; // Auswahl Nachrichtendienst ! /* Konfiguration Sprachausgabe über Home24-Mediaplayer */ var idSprachausgabe = false; // Wenn zusätzlich eine Sprachausgabe erfolgen soll dann auf true var idMediaplayer = "192.168.178.70:50000"; // Eingabe IP-Adresse incl. Port für Home24-Mediaplayer ! /* Konfiguration Sprachausgabe über SayIt */ var idSprachausgabeSayIt = false; // Wenn zusätzlich eine Sprachausgabe über SayIt erfolgen soll dann auf true var idSayIt = "sayit.0.tts.text"; var lautstaerke = 100; ! /* Trigger für Wetterwarnungen */ var idDescription0 = "dwd.0.warning.description"; var idDescription1 = "dwd.0.warning1.description"; var idDescription2 = "dwd.0.warning2.description"; var idDescription3 = "dwd.0.warning3.description"; /* Arrays festlegen */ var newDescriptions = [5]; var oldDescriptions = [5]; var newHeadlines = [5]; var oldHeadlines = [5]; var newBegins = [5]; var oldBegins = [5]; var newEnds = [5]; var oldEnds = [5]; var timer = null; ! function check() { /* Bereich für 'Alle Wetterwarnungen wurden aufgehoben' */ if(newDescriptions[0] === "") { MeldungSpracheDWD = 'Achtung' + ' . ' + 'Alle Warnmeldungen des DWD wurden aufgehoben'; /* Bereich für Sprachausgabe über Home24-Mediaplayer */ if(idSprachausgabe === true){ var Url = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD; request(Url); } /* Bereich für Sprachausgabe über SayIt */ if(idSprachausgabeSayIt === true){ setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD); } if ((pushdienst === 3) || (pushdienst === 1) ) { setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000); } if ((pushdienst === 2) || (pushdienst === 1) ) { sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben'); } ! /* alle Sicherungen Wetterwarnung löschen */ oldHeadlines = newHeadlines.slice(); oldDescriptions = newDescriptions.slice(); oldBegins = newBegins.slice(); oldEnds = newEnds.slice(); return; } ! /* Variablen für Meldungen Text */ var MeldungOld = ''; var MeldungNew = ''; /* Variablen für Meldungen Sprache */ var MeldungSpracheDWD = ''; var MeldungNewSprache = ''; var MeldungOldSprache = ''; ! var headline; var description; var begin; var end; var i; var warn; ! /* Bereich für 'Wetterwarnung gültig bis wurde aufgehoben' */ for(i = 0; i < 5; i++) { warn = 'dwd.0.warning'; if(i) warn = warn + i; headline = oldHeadlines[i]; description = oldDescriptions[i]; begin = oldBegins[i]; end = oldEnds[i]; if(newDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) { MeldungOld = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben'; MeldungOldSprache = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben' + ' . '; if ((pushdienst === 3) || (pushdienst === 1) ) { setTimeout((sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben")), 3 * 1000); } if ((pushdienst === 2) || (pushdienst === 1) ) { sendTo("pushover.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben"); } /* Verknüpfen aller aufgehobenen Wetterwarnungen */ if(MeldungOldSprache !== "" && MeldungOldSprache !== undefined){ MeldungSpracheDWD = MeldungSpracheDWD + MeldungOldSprache; } } } ! /* Bereich für 'Neue Amtliche Wetterwarnung' */ for(i = 0; i < 5; i++) { warn = 'dwd.0.warning'; if(i) warn = warn + i; headline = newHeadlines[i]; description = newDescriptions[i]; begin = newBegins[i]; end = newEnds[i]; if(oldDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) { MeldungNew = headline + "\ngültig vom " + begin + " Uhr bis " + end + " Uhr\n" + description; /* Entfernen °C für Sprachausgabe */ var replaceDescription0 = entferneDatenpunkt(description); MeldungNewSprache = headline + " gültig vom " + begin + " Uhr, bis " + end + " Uhr. " + replaceDescription0 + ' . '; if ((pushdienst === 3) || (pushdienst === 1) ) { setTimeout((sendTo ("telegram.0", MeldungNew)), 3 * 1000); } if ((pushdienst === 2) || (pushdienst === 1) ) { sendTo("pushover.0", MeldungNew); } /* Verknüpfen aller neuen Warnmeldungen */ if(MeldungNewSprache !== "" && MeldungNewSprache !== undefined){ MeldungSpracheDWD = MeldungSpracheDWD + MeldungNewSprache; } } } /* Verknüpfen aller neuen und abgelaufenen Warnmeldungen */ MeldungSpracheDWD = 'Achtung . ' + MeldungSpracheDWD; ! /* Bereich für Sprachausgabe über Home24-Mediaplayer */ if((idSprachausgabe === true) && (MeldungSpracheDWD !== "")){ var Url2 = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD; log('Url2 :' + Url2); request(Url2); } /* Bereich für Sprachausgabe über SayIt */ if((idSprachausgabeSayIt === true) && (MeldungSpracheDWD !== "")){ setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD); } ! /* Neue Werte sichern */ oldHeadlines = newHeadlines.slice(); oldDescriptions = newDescriptions.slice(); oldBegins = newBegins.slice(); oldEnds = newEnds.slice(); } ! /* Entfernt "°C" aus Sprachmeldung und ersetzt es durch "Grad" */ function entferneDatenpunkt(beschreibung) { var rueckgabe; rueckgabe = beschreibung; try { rueckgabe = rueckgabe.replace(/\°C/g, "Grad"); rueckgabe = rueckgabe.replace(/\km\/h/g, "Kilometer pro Stunde"); } catch(e) {} return rueckgabe; } on(idDescription0, function(dp) { newDescriptions[0] = dp.state.val; var warn = 'dwd.0.warning'; setTimeout(function() { newHeadlines[0] = getState(warn + '.headline').val; newBegins[0] = getState(warn + '.begin').val; newEnds[0] = getState(warn + '.end').val; }, 3000); if(timer) clearTimeout(timer); timer = setTimeout(check, 7000); }); ! on(idDescription1, function(dp) { newDescriptions[1] = dp.state.val; var warn = 'dwd.0.warning1'; setTimeout(function() { newHeadlines[1] = getState(warn + '.headline').val; newBegins[1] = getState(warn + '.begin').val; newEnds[1] = getState(warn + '.end').val; }, 3000); if(timer) clearTimeout(timer); timer = setTimeout(check, 7000); }); ! on(idDescription2, function(dp) { newDescriptions[2] = dp.state.val; var warn = 'dwd.0.warning2'; setTimeout(function() { newHeadlines[2] = getState(warn + '.headline').val; newBegins[2] = getState(warn + '.begin').val; newEnds[2] = getState(warn + '.end').val; }, 3000); if(timer) clearTimeout(timer); timer = setTimeout(check, 7000); }); on(idDescription3, function(dp) { newDescriptions[3] = dp.state.val; var warn = 'dwd.0.warning3'; setTimeout(function() { newHeadlines[3] = getState(warn + '.headline').val; newBegins[3] = getState(warn + '.begin').val; newEnds[3] = getState(warn + '.end').val; }, 3000); if(timer) clearTimeout(timer); timer = setTimeout(check, 7000); }); on(idDescription4, function(dp) { newDescriptions[4] = dp.state.val; var warn = 'dwd.0.warning4'; setTimeout(function() { newHeadlines[4] = getState(warn + '.headline').val; newBegins[4] = getState(warn + '.begin').val; newEnds[4] = getState(warn + '.end').val; }, 3000); if(timer) clearTimeout(timer); timer = setTimeout(check, 7000); });` ! Viel Spaß damit ! Gruß ! Johnny ! Kann es sein das sich in dein Script für 5 Warnings ein fehler geschlichen hat? ! Sollten hier: ! `~~[code]~~/* Trigger für Wetterwarnungen */ var idDescription0 = "dwd.0.warning.description"; var idDescription1 = "dwd.0.warning1.description"; var idDescription2 = "dwd.0.warning2.description"; var idDescription3 = "dwd.0.warning3.description"; /* Arrays festlegen */[/code]` ! Nicht 5 Trigger stehen? ! Gruß ! Mirko[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i] `

          Bitte keine Fragen per PN, die gehören ins Forum!

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          1 Antwort Letzte Antwort
          0
          • P Offline
            P Offline
            PrinzEisenherz1
            schrieb am zuletzt editiert von
            #50

            Ups, hab ich wohl vergessen.

            Habs schon geändert

            Danke für den Hinweis

            Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

            1 Antwort Letzte Antwort
            0
            • wendy2702W Online
              wendy2702W Online
              wendy2702
              schrieb am zuletzt editiert von
              #51

              Guten Morgen,

              Ich habe gestern Abend das Script für 5 Warnungen in Betrieb genommen und heute morgen die Nachrichten bekommen:

              ~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201702 ... 9e018b.jpg">https://uploads.tapatalk-cdn.com/20170213/f82877b0443e9c98ea79bb891f9e018b.jpg</link_text>" />

              Ist das jetzt ein Script Fehler oder funktioniert das erst wenn auch wirklich mal 5 Meldungen gekommen sind?

              Gruss

              Mirko

              Gesendet von iPhone mit Tapatalk Pro~~

              Bitte keine Fragen per PN, die gehören ins Forum!

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              1 Antwort Letzte Antwort
              0
              • P Offline
                P Offline
                PrinzEisenherz1
                schrieb am zuletzt editiert von
                #52

                Hi Mirko,

                Das ist beim ersten mal ausführen bei allen drei Varianten so. Da werden zuerst die Arrays befüllt.

                Bei der nächsten Aktualisierung Wetterwarnung ist das dann weg.

                Mals schauen ob ich das noch irgendwie rausfiltern kann.

                [EDIT] Hab in den Scripts ne kleine Änderung eingebaut. Teste mal ob es jetzt besser ist.

                Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

                1 Antwort Letzte Antwort
                0
                • wendy2702W Online
                  wendy2702W Online
                  wendy2702
                  schrieb am zuletzt editiert von
                  #53

                  Bin erst Ende der Woche wieder zu Hause zum testen.

                  Wenn das aber am Anfang normal ist passt das schon.

                  Gesendet von iPhone mit Tapatalk Pro

                  Bitte keine Fragen per PN, die gehören ins Forum!

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  1 Antwort Letzte Antwort
                  0
                  • wendy2702W Online
                    wendy2702W Online
                    wendy2702
                    schrieb am zuletzt editiert von
                    #54

                    Hi,

                    ich benutze noch immer das Tolle Script zur Ansage und zum versenden der Nachrichten mit Telegramm.

                    Würde das gerne um 2-3 Sachen erweitern:

                    1. Keine Ansage zwischen 22:30Uhr und 6:45 Mo-Fr.

                    2. Keine Ansage zwischen 22:30Uhr und 9:00 Uhr Sa.-So.

                    3. Zeitverzögerung zwischen Ansage über SayIt und Homemediaplayer24. Hier sollte die Ansagen über Homemediaplayer bevorzugt erst starten wenn SayIt fertig ist.

                    Kann mir dabei eventuell ein Javascript erfahrener helfen?

                    Hier nochmal das Script welche ich verwende:

                    ! ```
                    `/* ************************************************************************* /
                    /
                    Script zum Übertragen der DWD-Wetterwarnungen über /
                    /
                    Telegram, Pushover, Home24-Mediaplayer oder SayIt /
                    /
                    mit freundlicher Unterstützung von Paul53 (Tausend Dank nochmals) /
                    /
                    Stand: 130022017 PrinzEisenherz1 /
                    /
                    /
                    /
                    - Fehlerbehebung z.B. 5 gültig bis 5 /
                    /
                    /
                    /
                    /
                    /
                    /
                    /
                    /
                    /
                    Variante für 5-warnings /
                    /
                    /
                    /
                    ************************************************************************* /
                    ! var request = require('request');
                    ! /
                    Nachrichten-Dienst festlegen /
                    /
                    aus=0 ; alle=1 ; Pushover=2 ; Telegram=3 /
                    var pushdienst = 3; // Auswahl Nachrichtendienst
                    ! /
                    Konfiguration Sprachausgabe über Home24-Mediaplayer /
                    var idSprachausgabe = false; // Wenn zusätzlich eine Sprachausgabe erfolgen soll dann auf true
                    var idMediaplayer = "192.168.178.68:50000"; // Eingabe IP-Adresse incl. Port für Home24-Mediaplayer
                    ! /
                    Konfiguration Sprachausgabe über SayIt /
                    var idSprachausgabeSayIt = true; // Wenn zusätzlich eine Sprachausgabe über SayIt erfolgen soll dann auf true
                    var idSayIt = "sayit.0.tts.text";
                    var lautstaerke = 90;
                    ! /
                    Trigger für Wetterwarnungen */
                    var idDescription0 = "dwd.0.warning0.description";
                    var idDescription1 = "dwd.0.warning1.description";
                    var idDescription2 = "dwd.0.warning2.description";
                    var idDescription3 = "dwd.0.warning3.description";
                    var idDescription4 = "dwd.0.warning4.description";

                    /* Arrays festlegen /
                    var newDescriptions = [5];
                    var oldDescriptions = [5];
                    var newHeadlines = [5];
                    var oldHeadlines = [5];
                    var newBegins = [5];
                    var oldBegins = [5];
                    var newEnds = [5];
                    var oldEnds = [5];
                    var timer = null;
                    /
                    aktivieren bzw erstmaliges Befüllen der arrays */
                    newDescriptions[0] = '';
                    newDescriptions[1] = '';
                    newDescriptions[2] = '';
                    newDescriptions[3] = '';
                    newDescriptions[4] = '';
                    oldDescriptions[0] = '';
                    oldDescriptions[1] = '';
                    oldDescriptions[2] = '';
                    oldDescriptions[3] = '';
                    oldDescriptions[4] = '';

                    ! newHeadlines[0] = '';
                    newHeadlines[1] = '';
                    newHeadlines[2] = '';
                    newHeadlines[3] = '';
                    newHeadlines[4] = '';
                    oldHeadlines[0] = '';
                    oldHeadlines[1] = '';
                    oldHeadlines[2] = '';
                    oldHeadlines[3] = '';
                    oldHeadlines[4] = '';
                    ! newBegins[0] = '';
                    newBegins[1] = '';
                    newBegins[2] = '';
                    newBegins[3] = '';
                    newBegins[4] = '';
                    oldBegins[0] = '';
                    oldBegins[1] = '';
                    oldBegins[2] = '';
                    oldBegins[3] = '';
                    oldBegins[4] = '';
                    ! newEnds[0] = '';
                    newEnds[1] = '';
                    newEnds[2] = '';
                    newEnds[3] = '';
                    newEnds[4] = '';
                    oldEnds[0] = '';
                    oldEnds[1] = '';
                    oldEnds[2] = '';
                    oldEnds[3] = '';
                    oldEnds[4] = '';

                    function check() {
                    /* Bereich für 'Alle Wetterwarnungen wurden aufgehoben' /
                    if(newDescriptions[0] === "") {
                    MeldungSpracheDWD = 'Achtung' + ' . ' + 'Alle Warnmeldungen des DWD wurden aufgehoben';
                    /
                    Bereich für Sprachausgabe über Home24-Mediaplayer /
                    if(idSprachausgabe === true){
                    var Url = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
                    request(Url);
                    }
                    /
                    Bereich für Sprachausgabe über SayIt */
                    if(idSprachausgabeSayIt === true){
                    setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                    }
                    if ((pushdienst === 3) || (pushdienst === 1) ) {
                    setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
                    }
                    if ((pushdienst === 2) || (pushdienst === 1) ) {
                    sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
                    }

                    ! /* alle Sicherungen Wetterwarnung löschen /
                    oldHeadlines = newHeadlines.slice();
                    oldDescriptions = newDescriptions.slice();
                    oldBegins = newBegins.slice();
                    oldEnds = newEnds.slice();
                    return;
                    }
                    ! /
                    Variablen für Meldungen Text /
                    var MeldungOld = '';
                    var MeldungNew = '';
                    /
                    Variablen für Meldungen Sprache /
                    var MeldungSpracheDWD = '';
                    var MeldungNewSprache = '';
                    var MeldungOldSprache = '';
                    ! var headline;
                    var description;
                    var begin;
                    var end;
                    var i;
                    var warn;
                    ! /
                    Bereich für 'Wetterwarnung gültig bis wurde aufgehoben' /
                    for(i = 0; i < 5; i++) {
                    warn = 'dwd.0.warning';
                    if(i) warn = warn + i;
                    headline = oldHeadlines[i];
                    description = oldDescriptions[i];
                    begin = oldBegins[i];
                    end = oldEnds[i];
                    if(newDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
                    MeldungOld = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben';
                    MeldungOldSprache = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben' + ' . ';
                    if ((pushdienst === 3) || (pushdienst === 1) ) {
                    setTimeout((sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben")), 3 * 1000);
                    }
                    if ((pushdienst === 2) || (pushdienst === 1) ) {
                    sendTo("pushover.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben");
                    }
                    /
                    Verknüpfen aller aufgehobenen Wetterwarnungen /
                    if(MeldungOldSprache !== "" && MeldungOldSprache !== undefined){
                    MeldungSpracheDWD = MeldungSpracheDWD + MeldungOldSprache;
                    }
                    }
                    }
                    ! /
                    Bereich für 'Neue Amtliche Wetterwarnung' /
                    for(i = 0; i < 5; i++) {
                    warn = 'dwd.0.warning';
                    if(i) warn = warn + i;
                    headline = newHeadlines[i];
                    description = newDescriptions[i];
                    begin = newBegins[i];
                    end = newEnds[i];
                    if(oldDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
                    MeldungNew = headline + "\ngültig vom " + begin + " Uhr bis " + end + " Uhr\n" + description;
                    /
                    Entfernen °C für Sprachausgabe /
                    var replaceDescription0 = entferneDatenpunkt(description);
                    MeldungNewSprache = headline + " gültig vom " + begin + " Uhr, bis " + end + " Uhr. " + replaceDescription0 + ' . ';
                    if ((pushdienst === 3) || (pushdienst === 1) ) {
                    setTimeout((sendTo ("telegram.0", MeldungNew)), 3 * 1000);
                    }
                    if ((pushdienst === 2) || (pushdienst === 1) ) {
                    sendTo("pushover.0", MeldungNew);
                    }
                    /
                    Verknüpfen aller neuen Warnmeldungen /
                    if(MeldungNewSprache !== "" && MeldungNewSprache !== undefined){
                    MeldungSpracheDWD = MeldungSpracheDWD + MeldungNewSprache;
                    }
                    }
                    }
                    /
                    Verknüpfen aller neuen und abgelaufenen Warnmeldungen /
                    MeldungSpracheDWD = 'Achtung . ' + MeldungSpracheDWD;
                    ! /
                    Bereich für Sprachausgabe über Home24-Mediaplayer /
                    if((idSprachausgabe === true) && (MeldungSpracheDWD !== "")){
                    var Url2 = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
                    log('Url2 :' + Url2);
                    request(Url2);
                    }
                    /
                    Bereich für Sprachausgabe über SayIt /
                    if((idSprachausgabeSayIt === true) && (MeldungSpracheDWD !== "")){
                    setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                    }
                    ! /
                    Neue Werte sichern /
                    oldHeadlines = newHeadlines.slice();
                    oldDescriptions = newDescriptions.slice();
                    oldBegins = newBegins.slice();
                    oldEnds = newEnds.slice();
                    }
                    ! /
                    Entfernt "°C" aus Sprachmeldung und ersetzt es durch "Grad" */
                    function entferneDatenpunkt(beschreibung) {
                    var rueckgabe;
                    rueckgabe = beschreibung;
                    try {
                    rueckgabe = rueckgabe.replace(/\°C/g, "Grad");
                    rueckgabe = rueckgabe.replace(/\km/h/g, "Kilometer pro Stunde");
                    }
                    catch(e) {}
                    return rueckgabe;
                    }
                    on(idDescription0, function(dp) {
                    newDescriptions[0] = dp.state.val;
                    var warn = 'dwd.0.warning0';
                    setTimeout(function() {
                    newHeadlines[0] = getState(warn + '.headline').val;
                    newBegins[0] = getState(warn + '.begin').val;
                    newEnds[0] = getState(warn + '.end').val;
                    }, 3000);
                    if(timer) clearTimeout(timer);
                    timer = setTimeout(check, 7000);
                    });
                    ! on(idDescription1, function(dp) {
                    newDescriptions[1] = dp.state.val;
                    var warn = 'dwd.0.warning1';
                    setTimeout(function() {
                    newHeadlines[1] = getState(warn + '.headline').val;
                    newBegins[1] = getState(warn + '.begin').val;
                    newEnds[1] = getState(warn + '.end').val;
                    }, 3000);
                    if(timer) clearTimeout(timer);
                    timer = setTimeout(check, 7000);
                    });
                    ! on(idDescription2, function(dp) {
                    newDescriptions[2] = dp.state.val;
                    var warn = 'dwd.0.warning2';
                    setTimeout(function() {
                    newHeadlines[2] = getState(warn + '.headline').val;
                    newBegins[2] = getState(warn + '.begin').val;
                    newEnds[2] = getState(warn + '.end').val;
                    }, 3000);
                    if(timer) clearTimeout(timer);
                    timer = setTimeout(check, 7000);
                    });
                    on(idDescription3, function(dp) {
                    newDescriptions[3] = dp.state.val;
                    var warn = 'dwd.0.warning3';
                    setTimeout(function() {
                    newHeadlines[3] = getState(warn + '.headline').val;
                    newBegins[3] = getState(warn + '.begin').val;
                    newEnds[3] = getState(warn + '.end').val;
                    }, 3000);
                    if(timer) clearTimeout(timer);
                    timer = setTimeout(check, 7000);
                    });
                    on(idDescription4, function(dp) {
                    newDescriptions[4] = dp.state.val;
                    var warn = 'dwd.0.warning4';
                    setTimeout(function() {
                    newHeadlines[4] = getState(warn + '.headline').val;
                    newBegins[4] = getState(warn + '.begin').val;
                    newEnds[4] = getState(warn + '.end').val;
                    }, 3000);
                    if(timer) clearTimeout(timer);
                    timer = setTimeout(check, 7000);
                    });`
                    ! Danke und Gruß[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]

                    Bitte keine Fragen per PN, die gehören ins Forum!

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    1 Antwort Letzte Antwort
                    0
                    • wendy2702W Online
                      wendy2702W Online
                      wendy2702
                      schrieb am zuletzt editiert von
                      #55

                      @wendy2702:

                      Hi,

                      ich benutze noch immer das Tolle Script zur Ansage und zum versenden der Nachrichten mit Telegramm.

                      Würde das gerne um 2-3 Sachen erweitern:

                      1. Keine Ansage zwischen 22:30Uhr und 6:45 Mo-Fr.

                      2. Keine Ansage zwischen 22:30Uhr und 9:00 Uhr Sa.-So.

                      3. Zeitverzögerung zwischen Ansage über SayIt und Homemediaplayer24. Hier sollte die Ansagen über Homemediaplayer bevorzugt erst starten wenn SayIt fertig ist.

                      Kann mir dabei eventuell ein Javascript erfahrener helfen?

                      Hier nochmal das Script welche ich verwende:

                      ! ```
                      `/* ************************************************************************* /
                      /
                      Script zum Übertragen der DWD-Wetterwarnungen über /
                      /
                      Telegram, Pushover, Home24-Mediaplayer oder SayIt /
                      /
                      mit freundlicher Unterstützung von Paul53 (Tausend Dank nochmals) /
                      /
                      Stand: 130022017 PrinzEisenherz1 /
                      /
                      /
                      /
                      - Fehlerbehebung z.B. 5 gültig bis 5 /
                      /
                      /
                      /
                      /
                      /
                      /
                      /
                      /
                      /
                      Variante für 5-warnings /
                      /
                      /
                      /
                      ************************************************************************* /
                      ! var request = require('request');
                      ! /
                      Nachrichten-Dienst festlegen /
                      /
                      aus=0 ; alle=1 ; Pushover=2 ; Telegram=3 /
                      var pushdienst = 3; // Auswahl Nachrichtendienst
                      ! /
                      Konfiguration Sprachausgabe über Home24-Mediaplayer /
                      var idSprachausgabe = false; // Wenn zusätzlich eine Sprachausgabe erfolgen soll dann auf true
                      var idMediaplayer = "192.168.178.68:50000"; // Eingabe IP-Adresse incl. Port für Home24-Mediaplayer
                      ! /
                      Konfiguration Sprachausgabe über SayIt /
                      var idSprachausgabeSayIt = true; // Wenn zusätzlich eine Sprachausgabe über SayIt erfolgen soll dann auf true
                      var idSayIt = "sayit.0.tts.text";
                      var lautstaerke = 90;
                      ! /
                      Trigger für Wetterwarnungen */
                      var idDescription0 = "dwd.0.warning0.description";
                      var idDescription1 = "dwd.0.warning1.description";
                      var idDescription2 = "dwd.0.warning2.description";
                      var idDescription3 = "dwd.0.warning3.description";
                      var idDescription4 = "dwd.0.warning4.description";

                      /* Arrays festlegen /
                      var newDescriptions = [5];
                      var oldDescriptions = [5];
                      var newHeadlines = [5];
                      var oldHeadlines = [5];
                      var newBegins = [5];
                      var oldBegins = [5];
                      var newEnds = [5];
                      var oldEnds = [5];
                      var timer = null;
                      /
                      aktivieren bzw erstmaliges Befüllen der arrays */
                      newDescriptions[0] = '';
                      newDescriptions[1] = '';
                      newDescriptions[2] = '';
                      newDescriptions[3] = '';
                      newDescriptions[4] = '';
                      oldDescriptions[0] = '';
                      oldDescriptions[1] = '';
                      oldDescriptions[2] = '';
                      oldDescriptions[3] = '';
                      oldDescriptions[4] = '';

                      ! newHeadlines[0] = '';
                      newHeadlines[1] = '';
                      newHeadlines[2] = '';
                      newHeadlines[3] = '';
                      newHeadlines[4] = '';
                      oldHeadlines[0] = '';
                      oldHeadlines[1] = '';
                      oldHeadlines[2] = '';
                      oldHeadlines[3] = '';
                      oldHeadlines[4] = '';
                      ! newBegins[0] = '';
                      newBegins[1] = '';
                      newBegins[2] = '';
                      newBegins[3] = '';
                      newBegins[4] = '';
                      oldBegins[0] = '';
                      oldBegins[1] = '';
                      oldBegins[2] = '';
                      oldBegins[3] = '';
                      oldBegins[4] = '';
                      ! newEnds[0] = '';
                      newEnds[1] = '';
                      newEnds[2] = '';
                      newEnds[3] = '';
                      newEnds[4] = '';
                      oldEnds[0] = '';
                      oldEnds[1] = '';
                      oldEnds[2] = '';
                      oldEnds[3] = '';
                      oldEnds[4] = '';

                      function check() {
                      /* Bereich für 'Alle Wetterwarnungen wurden aufgehoben' /
                      if(newDescriptions[0] === "") {
                      MeldungSpracheDWD = 'Achtung' + ' . ' + 'Alle Warnmeldungen des DWD wurden aufgehoben';
                      /
                      Bereich für Sprachausgabe über Home24-Mediaplayer /
                      if(idSprachausgabe === true){
                      var Url = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
                      request(Url);
                      }
                      /
                      Bereich für Sprachausgabe über SayIt */
                      if(idSprachausgabeSayIt === true){
                      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                      }
                      if ((pushdienst === 3) || (pushdienst === 1) ) {
                      setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
                      }
                      if ((pushdienst === 2) || (pushdienst === 1) ) {
                      sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
                      }

                      ! /* alle Sicherungen Wetterwarnung löschen /
                      oldHeadlines = newHeadlines.slice();
                      oldDescriptions = newDescriptions.slice();
                      oldBegins = newBegins.slice();
                      oldEnds = newEnds.slice();
                      return;
                      }
                      ! /
                      Variablen für Meldungen Text /
                      var MeldungOld = '';
                      var MeldungNew = '';
                      /
                      Variablen für Meldungen Sprache /
                      var MeldungSpracheDWD = '';
                      var MeldungNewSprache = '';
                      var MeldungOldSprache = '';
                      ! var headline;
                      var description;
                      var begin;
                      var end;
                      var i;
                      var warn;
                      ! /
                      Bereich für 'Wetterwarnung gültig bis wurde aufgehoben' /
                      for(i = 0; i < 5; i++) {
                      warn = 'dwd.0.warning';
                      if(i) warn = warn + i;
                      headline = oldHeadlines[i];
                      description = oldDescriptions[i];
                      begin = oldBegins[i];
                      end = oldEnds[i];
                      if(newDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
                      MeldungOld = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben';
                      MeldungOldSprache = oldHeadlines[i] + ' gültig bis ' + oldEnds[i] + ' Uhr wurde aufgehoben' + ' . ';
                      if ((pushdienst === 3) || (pushdienst === 1) ) {
                      setTimeout((sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben")), 3 * 1000);
                      }
                      if ((pushdienst === 2) || (pushdienst === 1) ) {
                      sendTo("pushover.0", "Die Wetterwarnung " +"'"+ oldHeadlines[i] + " gültig bis " + oldEnds[i] + "'" + " des DWD wurde aufgehoben");
                      }
                      /
                      Verknüpfen aller aufgehobenen Wetterwarnungen /
                      if(MeldungOldSprache !== "" && MeldungOldSprache !== undefined){
                      MeldungSpracheDWD = MeldungSpracheDWD + MeldungOldSprache;
                      }
                      }
                      }
                      ! /
                      Bereich für 'Neue Amtliche Wetterwarnung' /
                      for(i = 0; i < 5; i++) {
                      warn = 'dwd.0.warning';
                      if(i) warn = warn + i;
                      headline = newHeadlines[i];
                      description = newDescriptions[i];
                      begin = newBegins[i];
                      end = newEnds[i];
                      if(oldDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
                      MeldungNew = headline + "\ngültig vom " + begin + " Uhr bis " + end + " Uhr\n" + description;
                      /
                      Entfernen °C für Sprachausgabe /
                      var replaceDescription0 = entferneDatenpunkt(description);
                      MeldungNewSprache = headline + " gültig vom " + begin + " Uhr, bis " + end + " Uhr. " + replaceDescription0 + ' . ';
                      if ((pushdienst === 3) || (pushdienst === 1) ) {
                      setTimeout((sendTo ("telegram.0", MeldungNew)), 3 * 1000);
                      }
                      if ((pushdienst === 2) || (pushdienst === 1) ) {
                      sendTo("pushover.0", MeldungNew);
                      }
                      /
                      Verknüpfen aller neuen Warnmeldungen /
                      if(MeldungNewSprache !== "" && MeldungNewSprache !== undefined){
                      MeldungSpracheDWD = MeldungSpracheDWD + MeldungNewSprache;
                      }
                      }
                      }
                      /
                      Verknüpfen aller neuen und abgelaufenen Warnmeldungen /
                      MeldungSpracheDWD = 'Achtung . ' + MeldungSpracheDWD;
                      ! /
                      Bereich für Sprachausgabe über Home24-Mediaplayer /
                      if((idSprachausgabe === true) && (MeldungSpracheDWD !== "")){
                      var Url2 = "http://" + idMediaplayer + "/track=4fachgong.mp3|tts=" + MeldungSpracheDWD;
                      log('Url2 :' + Url2);
                      request(Url2);
                      }
                      /
                      Bereich für Sprachausgabe über SayIt /
                      if((idSprachausgabeSayIt === true) && (MeldungSpracheDWD !== "")){
                      setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                      }
                      ! /
                      Neue Werte sichern /
                      oldHeadlines = newHeadlines.slice();
                      oldDescriptions = newDescriptions.slice();
                      oldBegins = newBegins.slice();
                      oldEnds = newEnds.slice();
                      }
                      ! /
                      Entfernt "°C" aus Sprachmeldung und ersetzt es durch "Grad" */
                      function entferneDatenpunkt(beschreibung) {
                      var rueckgabe;
                      rueckgabe = beschreibung;
                      try {
                      rueckgabe = rueckgabe.replace(/\°C/g, "Grad");
                      rueckgabe = rueckgabe.replace(/\km/h/g, "Kilometer pro Stunde");
                      }
                      catch(e) {}
                      return rueckgabe;
                      }
                      on(idDescription0, function(dp) {
                      newDescriptions[0] = dp.state.val;
                      var warn = 'dwd.0.warning0';
                      setTimeout(function() {
                      newHeadlines[0] = getState(warn + '.headline').val;
                      newBegins[0] = getState(warn + '.begin').val;
                      newEnds[0] = getState(warn + '.end').val;
                      }, 3000);
                      if(timer) clearTimeout(timer);
                      timer = setTimeout(check, 7000);
                      });
                      ! on(idDescription1, function(dp) {
                      newDescriptions[1] = dp.state.val;
                      var warn = 'dwd.0.warning1';
                      setTimeout(function() {
                      newHeadlines[1] = getState(warn + '.headline').val;
                      newBegins[1] = getState(warn + '.begin').val;
                      newEnds[1] = getState(warn + '.end').val;
                      }, 3000);
                      if(timer) clearTimeout(timer);
                      timer = setTimeout(check, 7000);
                      });
                      ! on(idDescription2, function(dp) {
                      newDescriptions[2] = dp.state.val;
                      var warn = 'dwd.0.warning2';
                      setTimeout(function() {
                      newHeadlines[2] = getState(warn + '.headline').val;
                      newBegins[2] = getState(warn + '.begin').val;
                      newEnds[2] = getState(warn + '.end').val;
                      }, 3000);
                      if(timer) clearTimeout(timer);
                      timer = setTimeout(check, 7000);
                      });
                      on(idDescription3, function(dp) {
                      newDescriptions[3] = dp.state.val;
                      var warn = 'dwd.0.warning3';
                      setTimeout(function() {
                      newHeadlines[3] = getState(warn + '.headline').val;
                      newBegins[3] = getState(warn + '.begin').val;
                      newEnds[3] = getState(warn + '.end').val;
                      }, 3000);
                      if(timer) clearTimeout(timer);
                      timer = setTimeout(check, 7000);
                      });
                      on(idDescription4, function(dp) {
                      newDescriptions[4] = dp.state.val;
                      var warn = 'dwd.0.warning4';
                      setTimeout(function() {
                      newHeadlines[4] = getState(warn + '.headline').val;
                      newBegins[4] = getState(warn + '.begin').val;
                      newEnds[4] = getState(warn + '.end').val;
                      }, 3000);
                      if(timer) clearTimeout(timer);
                      timer = setTimeout(check, 7000);
                      }); ! Danke und Gruß ! Hi, ! ich muss das Thema nochmal hochholen da gerade jetzt in der Schlechtwetter Zeit die nächtlichen Ansagen doch ganz schön nerven. ! Kann mir vielleicht jemand sagen wie ich das script ändern kann/muss um zu den genannten Zeiträumen keine Ansagen zu erhalten? ! Danke und Gruß ! Mirko[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i] ```

                      Bitte keine Fragen per PN, die gehören ins Forum!

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      1 Antwort Letzte Antwort
                      0
                      • T Offline
                        T Offline
                        tempestas
                        schrieb am zuletzt editiert von
                        #56

                        Probier mal so auf die Schnelle. Es dreht die Logik um. also nicht "keine Ansage wenn" sondern "Ansage nur wenn.."

                        
                        var ENDE= '22:30';							// Ende immer 22:30h
                        var START;
                        
                        schedule("0 6 * * *", function (){                                  //ausgelöst jeden Tag um 6h morgens; prüft, ob Wochenende ist 			
                            var date = new Date();
                            var n = date.getDay();
                            var weekend = 0;
                            weekend = (n === 0 || n == 6) ? 1 : 0;
                        
                            if(weekend == 1){							// wenn Wochenende, dann setze Start auf 9h, sonst 6:45h
                            	START = '9:00';		
                            	else{
                            		START = '6:45';
                            		}
                            	}			
                        });
                        
                        /* Bereich für Sprachausgabe über SayIt */
                              if(idSprachausgabeSayIt === true && compareTime(START, ENDE, 'between')){						// Ansage über Sayit nur im definierten Zeitbereich
                                 setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                              }
                              if ((pushdienst === 3) || (pushdienst === 1) ) {
                                 setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
                              }
                              if ((pushdienst === 2) || (pushdienst === 1) ) {
                                 sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
                              }
                        
                        

                        Wer es mag, kann das auch über VIS visualisieren und dort einstellbar machen. Dann müsste man aber noch ein wenig mehr tun.

                        <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                        1 Antwort Letzte Antwort
                        0
                        • wendy2702W Online
                          wendy2702W Online
                          wendy2702
                          schrieb am zuletzt editiert von
                          #57

                          @tempestas:

                          Probier mal so auf die Schnelle. Es dreht die Logik um. also nicht "keine Ansage wenn" sondern "Ansage nur wenn.."

                          
                          var ENDE= '22:30';							// Ende immer 22:30h
                          var START;
                          
                          schedule("0 6 * * *", function (){                                  //ausgelöst jeden Tag um 6h morgens; prüft, ob Wochenende ist 			
                              var date = new Date();
                              var n = date.getDay();
                              var weekend = 0;
                              weekend = (n === 0 || n == 6) ? 1 : 0;
                             
                              if(weekend == 1){							// wenn Wochenende, dann setze Start auf 9h, sonst 6:45h
                              	START = '9:00';		
                              	else{
                              		START = '6:45';
                              		}
                              	}			
                          });
                          
                          /* Bereich für Sprachausgabe über SayIt */
                                if(idSprachausgabeSayIt === true && compareTime(START, ENDE, 'between')){						// Ansage über Sayit nur im definierten Zeitbereich
                                   setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                                }
                                if ((pushdienst === 3) || (pushdienst === 1) ) {
                                   setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
                                }
                                if ((pushdienst === 2) || (pushdienst === 1) ) {
                                   sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
                                }
                          
                          

                          Wer es mag, kann das auch über VIS visualisieren und dort einstellbar machen. Dann müsste man aber noch ein wenig mehr tun. `

                          Sorry, bin ja Javascript dummy :oops:

                          Soll ich das als extra Script laufen lassen oder irgendwie in das Ansagescript einfügen?

                          Bitte keine Fragen per PN, die gehören ins Forum!

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          1 Antwort Letzte Antwort
                          0
                          • T Offline
                            T Offline
                            tempestas
                            schrieb am zuletzt editiert von
                            #58

                            Das fügst du einfach da ein, wo bislang dieses hier Stand:

                            /* Bereich für Sprachausgabe über SayIt */
                                  if(idSprachausgabeSayIt === true){
                                     setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                                  }
                                  if ((pushdienst === 3) || (pushdienst === 1) ) {
                                     setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
                                  }
                                  if ((pushdienst === 2) || (pushdienst === 1) ) {
                                     sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
                                  }
                            
                            

                            <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                            1 Antwort Letzte Antwort
                            0
                            • wendy2702W Online
                              wendy2702W Online
                              wendy2702
                              schrieb am zuletzt editiert von
                              #59

                              Danke für die schnelle Antwort.

                              Wenn ich das Einfüge bekomme ich diesen Fehler:

                              999_ansage_time_range.jpg

                              Mirko

                              Bitte keine Fragen per PN, die gehören ins Forum!

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              1 Antwort Letzte Antwort
                              0
                              • T Offline
                                T Offline
                                tempestas
                                schrieb am zuletzt editiert von
                                #60

                                Hab ne Klammer vergessen bzw falsch gesetzt. Bin leider nicht so kompetent wie andere hier und im Forum sehe ich noch zu wenig beim tippern.

                                so sollte es gehen:

                                var ENDE= '22:30';                     // Ende immer 22:30h
                                var START;
                                
                                schedule("0 6 * * *", function (){                                  //ausgelöst jeden Tag um 6h morgens; prüft, ob Wochenende ist          
                                    var date = new Date();
                                    var n = date.getDay();
                                    var weekend = 0;
                                    weekend = (n === 0 || n == 6) ? 1 : 0;
                                
                                    if(weekend == 1){                     // wenn Wochenende, dann setze Start auf 9h, sonst 6:45h
                                       START = '9:00';  
                                       }    
                                       else{
                                          START = '6:45';
                                          }
                                
                                });
                                
                                /* Bereich für Sprachausgabe über SayIt */
                                      if(idSprachausgabeSayIt === true && compareTime(START, ENDE, 'between')){                  // Ansage über Sayit nur im definierten Zeitbereich
                                         setState(idSayIt, lautstaerke + ";" + MeldungSpracheDWD);
                                      }
                                      if ((pushdienst === 3) || (pushdienst === 1) ) {
                                         setTimeout((sendTo ("telegram.0", 'Alle Warnmeldungen des DWD wurden aufgehoben')), 3 * 1000);
                                      }
                                      if ((pushdienst === 2) || (pushdienst === 1) ) {
                                         sendTo("pushover.0", 'Alle Warnmeldungen des DWD wurden aufgehoben');
                                      }
                                
                                

                                <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                                1 Antwort Letzte Antwort
                                0
                                • wendy2702W Online
                                  wendy2702W Online
                                  wendy2702
                                  schrieb am zuletzt editiert von
                                  #61

                                  @tempestas:

                                  Hab ne Klammer vergessen bzw falsch gesetzt. Bin leider nicht so kompetent wie andere hier und im Forum sehe ich noch zu wenig beim tippern.

                                  so sollte es gehen: `

                                  Naja…"nicht so kompetent".... ich bekomme das überhaupt nicht hin und werde das wohl in diesem Leben auch nicht mehr lernen...

                                  Habe es eingefügt und jetzt gibt es keine Fehlermeldung.

                                  Werde das jetzt mal ein paar Nächte Testen und schauen was passiert.

                                  Danke für deine Arbeit

                                  Mirko

                                  Bitte keine Fragen per PN, die gehören ins Forum!

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  1 Antwort Letzte Antwort
                                  0
                                  • T Offline
                                    T Offline
                                    tempestas
                                    schrieb am zuletzt editiert von
                                    #62

                                    Hallo zusammen,

                                    ich habe das Skript von PrinzEisenherz etwas abgewandelt, da es mich kolossal genervt hat, gefühlt im Minutentakt mit unbedeutenden Meldungen vollgeballert zu werden durch den DWD.

                                    Hier im Norden weht nunmal ab und zu eine steife Brise, da gerate ich aber nicht in Panik.

                                    Ich hab also das Skript etwas ergänzt, damit man via VIS einstellen kann, ab welcher Stufe gewarnt werden soll. Da ich das ganze für mich angepasst habe, sind pushover, sayit und home24 nicht mehr enthalten, aber das kann man ja schnell wieder einpflegen.

                                    Daneben habe ich die Arrays am Anfang etwas "aufgeräumt", aber eventuell habe ich da auch schlicht einen Grund für die Art der Vorgehensweise nicht verstanden, kann sehr gut sein.

                                    So scheint es jedenfalls (auch) zu funktionieren

                                    ! ```
                                    `/* ************************************************************************* /
                                    /
                                    Script zum Übertragen der DWD-Wetterwarnungen über /
                                    /
                                    Telegram, Pushover, Home24-Mediaplayer oder SayIt /
                                    /
                                    mit freundlicher Unterstützung von Paul53 (Tausend Dank nochmals) /
                                    /
                                    Stand: 13022017 PrinzEisenherz1 /
                                    /
                                    /
                                    /
                                    - Fehlerbehebung z.B. 3 gültig bis 3 /
                                    /
                                    /
                                    /
                                    /
                                    /
                                    http://forum.iobroker.net/viewtopic.php?f=21&t=4451&start=40 /
                                    /
                                    Skript verkürzt tempestas, /
                                    /
                                    kein sayit, pushover, media24, /
                                    /
                                    telegram aktivierbar via vis /
                                    /
                                    Level, ab dem gewarnt wird einstellbar via VIS /
                                    /
                                    Variante für 3-warnings /
                                    /
                                    /
                                    /
                                    ************************************************************************* /
                                    ! createState('DWD.Telegram', false, {
                                    read: true,
                                    write: true,
                                    name: "DWD Warnungen per Telegram senden?",
                                    type: "boolean",
                                    def: false
                                    });
                                    ! createState('DWD.SeverityTrigger', 1, {
                                    read: true,
                                    write: true,
                                    name: "DWD Warnungen ab welchem Lvl",
                                    type: "number"
                                    });
                                    ! var request = require('request');
                                    ! var debug = false;
                                    ! var idTelegramAktiv = "javascript.0.DWD.Telegram";
                                    var idSeverityTrigger = "javascript.0.DWD.SeverityTrigger";
                                    ! var telegram;
                                    ! /
                                    Trigger für Wetterwarnungen /
                                    var idDescription0 = "dwd.0.warning.description";
                                    var idDescription1 = "dwd.0.warning1.description";
                                    var idDescription2 = "dwd.0.warning2.description";
                                    ! /
                                    Arrays festlegen */
                                    var newDescriptions = [];
                                    var oldDescriptions = [];
                                    var newHeadlines = [];
                                    var oldHeadlines = [];
                                    var newBegins = [];
                                    var oldBegins = [];
                                    var newEnds = [];
                                    var oldEnds = [];
                                    var newSeverity = [];
                                    var oldSeverity = [];
                                    var timer = null;

                                    ! /* ###### BEGINN CHECK FUNKTION ############## */

                                    function check(){

                                    telegram = getState(idTelegramAktiv).val;
                                    

                                    /* Bereich für 'Alle Wetterwarnungen wurden aufgehoben' --> DEAKTIVIERT; NERVT */

                                    ! if(newDescriptions[0] === "") {
                                    ! /* alle Sicherungen Wetterwarnung löschen */
                                    oldHeadlines = newHeadlines.slice();
                                    oldDescriptions = newDescriptions.slice();
                                    oldBegins = newBegins.slice();
                                    oldEnds = newEnds.slice();
                                    oldSeverity =newSeverity.slice();
                                    return;

                                    }               
                                    

                                    /* ENDE Bereich für 'Alle Wetterwarnungen wurden aufgehoben' */

                                    ! /* Variablen für Meldungen Text /
                                    var MeldungOld = '';
                                    var MeldungNew = '';
                                    ! var headline;
                                    var description;
                                    var begin;
                                    var end;
                                    var i;
                                    var warn;
                                    var severity;
                                    ! /
                                    START Bereich für 'Wetterwarnung gültig bis wurde aufgehoben' */

                                    for(i = 0; i < 3; i++) {
                                    
                                      warn = 'dwd.0.warning';
                                    

                                    ! if(i) warn = warn + i; // also dwd.0.warning1, warning2....

                                      headline = oldHeadlines[i];
                                      description = oldDescriptions[i];
                                      begin = oldBegins[i];
                                      end = oldEnds[i];
                                      severity = oldSeverity[i];
                                    
                                        if(debug) log("Severity Pfad alte Warnungen: " +warn+'.severity' +". Der Warnlevel war: "+severity);      
                                    
                                         if(newDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
                                            MeldungOld = headline +'\nStufe '+severity+ '\ngültig bis ' + end + ' Uhr wurde aufgehoben';
                                    
                                                if(telegram && ( severity >= getState(idSeverityTrigger).val) ) {            //wird nur geschickt, sofern Telegram an ist und Schwerelevel größer gleich definiert
                                                    setTimeout((sendTo ("telegram.0", MeldungOld)), 3 * 1000);
                                                }
                                                else if(debug) log("Stufe ist "+severity +' für Telegram benötigt ist Stufe '+getState(idSeverityTrigger).val);
                                         }
                                      }
                                    

                                    ! /* START Bereich für 'Neue Amtliche Wetterwarnung' */
                                    ! for(i = 0; i < 3; i++) {

                                      warn = 'dwd.0.warning';
                                    
                                      if(i) warn = warn + i;                        // also dwd.0.warning1, warning2....
                                    
                                      headline = newHeadlines[i];
                                      description = newDescriptions[i];
                                      begin = newBegins[i];
                                      end = newEnds[i];
                                      severity = newSeverity[i];
                                    
                                        if(debug) log("Severity Pfad neue Wetterwarnung: " +warn+'.severity' +". Der aktuelle Warnlevel ist: "+severity);      
                                    
                                         if(oldDescriptions.indexOf(description) == -1 && description !== "" && description !== undefined) {
                                            MeldungNew = headline +'\nStufe '+severity+ "\ngültig vom " + begin + " Uhr bis " + end + " Uhr\n" + description;
                                    
                                                if(telegram && ( severity >= getState(idSeverityTrigger).val) ) {            //   wird nur geschickt, sofern Telegram an ist und Schwerelevel definiert
                                                  setTimeout((sendTo ("telegram.0", MeldungNew)), 3 * 1000);
                                                }
                                                else if(debug) log("Stufe ist "+severity +' für Telegram benötigt ist Stufe '+getState(idSeverityTrigger).val);
                                         } 
                                      }
                                      if(debug) log("Neue Headlines: "+newHeadlines );
                                    

                                    ! /* Neue Werte sichern */
                                    oldHeadlines = newHeadlines.slice();
                                    oldDescriptions = newDescriptions.slice();
                                    oldBegins = newBegins.slice();
                                    oldEnds = newEnds.slice();
                                    oldSeverity = newSeverity.slice();

                                    if(debug) log("Als alte Headlines wurde gesichert: "+oldHeadlines);
                                    

                                    }

                                    ! /* ############# ENDE CHECK FUNKTION ###################### */
                                    ! on(idDescription0, function (dp) {
                                    newDescriptions[0] = dp.state.val;
                                    var warn = 'dwd.0.warning';
                                    setTimeout(function() {
                                    newHeadlines[0] = getState(warn + '.headline').val;
                                    newBegins[0] = getState(warn + '.begin').val;
                                    newEnds[0] = getState(warn + '.end').val;
                                    newSeverity[0] =getState(warn +'.severity').val;
                                    }, 3000);
                                    if(timer) clearTimeout(timer);
                                    timer = setTimeout(check, 7000);
                                    });
                                    ! on(idDescription1, function(dp) {
                                    newDescriptions[1] = dp.state.val;
                                    var warn = 'dwd.0.warning1';
                                    setTimeout(function() {
                                    newHeadlines[1] = getState(warn + '.headline').val;
                                    newBegins[1] = getState(warn + '.begin').val;
                                    newEnds[1] = getState(warn + '.end').val;
                                    newSeverity[1] =getState(warn +'.severity').val;
                                    }, 3000);
                                    if(timer) clearTimeout(timer);
                                    timer = setTimeout(check, 7000);
                                    });
                                    ! on(idDescription2, function(dp) {
                                    newDescriptions[2] = dp.state.val;
                                    var warn = 'dwd.0.warning2';
                                    setTimeout(function() {
                                    newHeadlines[2] = getState(warn + '.headline').val;
                                    newBegins[2] = getState(warn + '.begin').val;
                                    newEnds[2] = getState(warn + '.end').val;
                                    newSeverity[2] =getState(warn +'.severity').val;
                                    }, 3000);
                                    if(timer) clearTimeout(timer);
                                    timer = setTimeout(check, 7000);
                                    });` [/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]

                                    <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                                    1 Antwort Letzte Antwort
                                    0
                                    • D Offline
                                      D Offline
                                      doctorultra
                                      schrieb am zuletzt editiert von
                                      #63

                                      Ich bekomme mit den Script von @Prinzeisenherz1 immer den folgenden Fehler.

                                      Ich nutze die Version 1.12.

                                      ! telegram.0 2018-03-22 19:08:54.103 error at WS. (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:268:10)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Socket.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:451:14)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Socket.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Socket. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Decoder. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Manager. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:228:12)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Socket.onevent (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:270:10)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:48:30)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3395:34)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Adapter.emit (events.js:188:7)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at emitOne (events.js:96:13)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at Adapter. (/opt/iobroker/node_modules/iobroker.telegram/main.js:45:14)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at processMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:642:33)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at sendMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:508:22)
                                      ! telegram.0 2018-03-22 19:08:54.103 error at _sendMessageHelper (/opt/iobroker/node_modules/iobroker.telegram/main.js:180:13)
                                      ! telegram.0 2018-03-22 19:08:54.103 error TypeError: Cannot read property 'chatId' of undefined
                                      ! telegram.0 2018-03-22 19:08:54.102 error message messagebox.system.adapter.telegram.0 [object Object] Cannot read property 'chatId' of undefined
                                      ! telegram.0 2018-03-22 19:08:54.101 error at WS. (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:268:10)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Socket.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:451:14)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Socket.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Socket. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Decoder. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Manager. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:228:12)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Socket.onevent (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:270:10)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:48:30)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3395:34)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Adapter.emit (events.js:188:7)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at emitOne (events.js:96:13)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at Adapter. (/opt/iobroker/node_modules/iobroker.telegram/main.js:45:14)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at processMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:642:33)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at sendMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:508:22)
                                      ! telegram.0 2018-03-22 19:08:54.101 error at _sendMessageHelper (/opt/iobroker/node_modules/iobroker.telegram/main.js:180:13)
                                      ! telegram.0 2018-03-22 19:08:54.101 error TypeError: Cannot read property 'chatId' of undefined
                                      ! telegram.0 2018-03-22 19:08:54.099 error message messagebox.system.adapter.telegram.0 [object Object] Cannot read property 'chatId' of undefined

                                      1 Antwort Letzte Antwort
                                      0
                                      • D Offline
                                        D Offline
                                        doctorultra
                                        schrieb am zuletzt editiert von
                                        #64

                                        Ich habe eine logische Frage, wenn ich mir die Werte unter Object ansehen, da steht immer was bei den Warnings drin, wieso liefert er aber dennoch bei manchen, bei den abgelaufenen Warnings keine Wert zurück wenn ich mit getState("dwd.0.warning.headline").val; arbeite?

                                        1 Antwort Letzte Antwort
                                        0
                                        • A Offline
                                          A Offline
                                          adarof
                                          schrieb am zuletzt editiert von
                                          #65

                                          Hallo

                                          Das Script arbeitete bis vor kurzem super bei mir - hat das schon jemand überarbeitet für die "neuen" Timestampdarstellungsprobleme?

                                          Gruss

                                          wendy2702W 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          901

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe