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. Ulanzi T001 / AWTRIX Light Weather Script.

NEWS

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

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

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

Ulanzi T001 / AWTRIX Light Weather Script.

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
67 Beiträge 19 Kommentatoren 13.1k Aufrufe 18 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.
  • Olli_MO Olli_M

    @andy200877

    Achso sorry :-)

    A Offline
    A Offline
    Andy200877
    schrieb am zuletzt editiert von
    #41

    @olli_m
    Du hast aber Recht. Eigentlich benötigt man mein Skript nicht mehr wirklich, wenn man keine Schriftfarben / Hintergrundfarben,... ändern möchte.
    Man müsste nur über ein Blockly / mein Skript die entsprechenden Datenpunkte des Adapters ändern.

    https://github.com/Andy200877/intex_poollampe

    Olli_MO 1 Antwort Letzte Antwort
    0
    • A Andy200877

      @olli_m
      Du hast aber Recht. Eigentlich benötigt man mein Skript nicht mehr wirklich, wenn man keine Schriftfarben / Hintergrundfarben,... ändern möchte.
      Man müsste nur über ein Blockly / mein Skript die entsprechenden Datenpunkte des Adapters ändern.

      Olli_MO Offline
      Olli_MO Offline
      Olli_M
      schrieb am zuletzt editiert von
      #42

      @andy200877

      Hab das falsch verstanden:-) finde dein Script super das war bestimmt viel Arbeit und ich nutze es gerne :-)

      Mit den Experten Apps hab ich mich eh noch ned beschäftigt;-)

      1 Antwort Letzte Antwort
      0
      • A Andy200877

        @io-sr
        Nein.. mit mqtt wird es nichts zu tun haben. Wird auch nicht für das skript benötigt.

        Deine Uhr antwortet nicht...
        IP Adresse : 192.168.178.38 ist richtig ?

        Benutzername : user und Passwort : awtrix auf der Uhr unter Auth eingetragen ? Oder steht unter Auth etwas anderes ?

        I Offline
        I Offline
        IO-SR
        schrieb am zuletzt editiert von
        #43

        @andy200877

        Noch eine Frage. Bei mir wird im Code der Befehl await in Zeile 57, 67 und 71 rot unterstrichen angezeigt. Kann das Problem vielleicht etwas damit zu tun haben?

        A 1 Antwort Letzte Antwort
        0
        • I IO-SR

          @andy200877

          Noch eine Frage. Bei mir wird im Code der Befehl await in Zeile 57, 67 und 71 rot unterstrichen angezeigt. Kann das Problem vielleicht etwas damit zu tun haben?

          A Offline
          A Offline
          Andy200877
          schrieb am zuletzt editiert von Andy200877
          #44

          Ich habe mein Skript nun überarbeitet.
          Einfach im Awtrix.light Adapter unter ExpertenOptionen eine App "wetter" anlegen.

          Mein Skript füttert die entsprechenden Objekte des Adapters.

          Wie immer ´...

          • Icons auf die Uhr laden
          • Objektpfade anpassen von (Openweathermap und awtrix)
          //  **********************
          //  AB HIER BITTE ANPASSEN 
          //  **********************
          
          var obj_ulanzi_icon = "awtrix-light.0.apps.wetter.icon";
          var obj_ulanzi_text = "awtrix-light.0.apps.wetter.text";
          
          // Openweathermap
          var obj_wetter_url = "openweathermap.0.forecast.current.icon";      // Quelle für Wettersymbol
          var obj_temperatur = "openweathermap.0.forecast.current.temperature"; // Quelle für Temperaturwert
          
          
          
          // Wettersymbole-ID Nummern von https://developer.lametric.com/icons
          // Jedes Symbol muss auch auf die Uhr hochgeladen werden !
          var wettericon01 = '11201';     // klarer Himmel Tag
          var wettericon02 = '52163';     // klarer Himmel Nacht
          var wettericon03 = '22315';     // ein paar Wolken Tag (11-25% Wolken)
          var wettericon04 = '26088';     // ein paar Wolken Nacht (11-25% Wolken)
          var wettericon05 = '22378';     // aufgelockerte Bewölkung Tag (25-50% Wolken)
          var wettericon06 = '21907';     // aufgelockerte Bewölkung Nacht (25-50% Wolken)
          var wettericon07 = '13852';     // bewölkt Tag (51-100%)
          var wettericon08 = '52159';     // bewölkt Nacht (51-100%)
          var wettericon09 = '43706';     // Regenschauer Tag
          var wettericon10 = '43739';     // Regenschauer Nacht
          var wettericon11 = '22257';     // Regen Tag
          var wettericon12 = '72';        // Regen Nacht
          var wettericon13 = '43733';     // Gewitter Tag
          var wettericon14 = '43748';     // Gewitter Nacht
          var wettericon15 = '43732';     // Schnee Tag
          var wettericon16 = '26090';     // Schnee Nacht
          var wettericon17 = '43708';     // Nebel Tag
          var wettericon18 = '43741';     // Nebel Nacht
          
          // *****************************************
          // AB HIER MUSS NICHTS MEHR ANGEPASST WERDEN
          // *****************************************
          
          
          console.log('Ulanzi Wetterscript start für Uhr ');
          
          var temperatureinheit = (await getObjectAsync(obj_temperatur)).common.unit;
          var wetter_url = getState(obj_wetter_url).val;
          var temperatur = getState(obj_temperatur).val;
          
          await update_wetter_icon(wetter_url);
          await update_wetter_temp(temperatur);
          
          
          on({ id: [].concat([obj_temperatur]), change: 'ne' }, async (obj) => {
            let value = obj.state.val;
            update_wetter_temp(value);
          });
          
          
          on({ id: [].concat([obj_wetter_url]), change: 'ne' }, async (obj) => {
              let value = obj.state.val;
              update_wetter_icon(value);
          });
          
          async function update_wetter_temp(wert) {
              wert = Math.round(wert * 10) / 10;
              setState(obj_ulanzi_text, wert+temperatureinheit);
          }
          
          
          async function update_wetter_icon(wetter_url) {
              var ulanzi_weather_icon = "";
          
              switch (wetter_url) {
                  case 'https://openweathermap.org/img/w/01d.png':
                      ulanzi_weather_icon = wettericon01;
                      break;
                  case 'https://openweathermap.org/img/w/01n.png':
                      ulanzi_weather_icon = wettericon02;
                      break;
                  case 'https://openweathermap.org/img/w/02d.png':
                      ulanzi_weather_icon = wettericon03;
                      break;
                  case 'https://openweathermap.org/img/w/02n.png':
                      ulanzi_weather_icon = wettericon04;
                      break;
                  case 'https://openweathermap.org/img/w/03d.png':
                      ulanzi_weather_icon = wettericon05;
                      break;
                  case 'https://openweathermap.org/img/w/03n.png':
                      ulanzi_weather_icon = wettericon06;
                      break;
                  case 'https://openweathermap.org/img/w/04d.png':
                      ulanzi_weather_icon = wettericon07;
                      break;
                  case 'https://openweathermap.org/img/w/04n.png':
                      ulanzi_weather_icon = wettericon08;
                      break;
                  case 'https://openweathermap.org/img/w/09d.png':
                      ulanzi_weather_icon = wettericon09;
                      break;
                  case 'https://openweathermap.org/img/w/09n.png':
                      ulanzi_weather_icon = wettericon10;
                      break;
                  case 'https://openweathermap.org/img/w/10d.png':
                      ulanzi_weather_icon = wettericon11;
                      break;
                  case 'https://openweathermap.org/img/w/10n.png':
                      ulanzi_weather_icon = wettericon12;
                      break;
                  case 'https://openweathermap.org/img/w/11d.png':
                      ulanzi_weather_icon = wettericon13;
                      break;
                  case 'https://openweathermap.org/img/w/11n.png':
                      ulanzi_weather_icon = wettericon14;
                      break;
                  case 'https://openweathermap.org/img/w/13d.png':
                      ulanzi_weather_icon = wettericon15;
                      break;
                  case 'https://openweathermap.org/img/w/13n.png':
                      ulanzi_weather_icon = wettericon16;
                      break;
                  case 'https://openweathermap.org/img/w/50d.png':
                      ulanzi_weather_icon = wettericon17;
                      break;
                  case 'https://openweathermap.org/img/w/50n.png':
                      ulanzi_weather_icon = wettericon18;
              }
              setState(obj_ulanzi_icon, ulanzi_weather_icon);
          }
          
          

          https://github.com/Andy200877/intex_poollampe

          Olli_MO I B spitzeS 4 Antworten Letzte Antwort
          1
          • A Andy200877

            Ich habe mein Skript nun überarbeitet.
            Einfach im Awtrix.light Adapter unter ExpertenOptionen eine App "wetter" anlegen.

            Mein Skript füttert die entsprechenden Objekte des Adapters.

            Wie immer ´...

            • Icons auf die Uhr laden
            • Objektpfade anpassen von (Openweathermap und awtrix)
            //  **********************
            //  AB HIER BITTE ANPASSEN 
            //  **********************
            
            var obj_ulanzi_icon = "awtrix-light.0.apps.wetter.icon";
            var obj_ulanzi_text = "awtrix-light.0.apps.wetter.text";
            
            // Openweathermap
            var obj_wetter_url = "openweathermap.0.forecast.current.icon";      // Quelle für Wettersymbol
            var obj_temperatur = "openweathermap.0.forecast.current.temperature"; // Quelle für Temperaturwert
            
            
            
            // Wettersymbole-ID Nummern von https://developer.lametric.com/icons
            // Jedes Symbol muss auch auf die Uhr hochgeladen werden !
            var wettericon01 = '11201';     // klarer Himmel Tag
            var wettericon02 = '52163';     // klarer Himmel Nacht
            var wettericon03 = '22315';     // ein paar Wolken Tag (11-25% Wolken)
            var wettericon04 = '26088';     // ein paar Wolken Nacht (11-25% Wolken)
            var wettericon05 = '22378';     // aufgelockerte Bewölkung Tag (25-50% Wolken)
            var wettericon06 = '21907';     // aufgelockerte Bewölkung Nacht (25-50% Wolken)
            var wettericon07 = '13852';     // bewölkt Tag (51-100%)
            var wettericon08 = '52159';     // bewölkt Nacht (51-100%)
            var wettericon09 = '43706';     // Regenschauer Tag
            var wettericon10 = '43739';     // Regenschauer Nacht
            var wettericon11 = '22257';     // Regen Tag
            var wettericon12 = '72';        // Regen Nacht
            var wettericon13 = '43733';     // Gewitter Tag
            var wettericon14 = '43748';     // Gewitter Nacht
            var wettericon15 = '43732';     // Schnee Tag
            var wettericon16 = '26090';     // Schnee Nacht
            var wettericon17 = '43708';     // Nebel Tag
            var wettericon18 = '43741';     // Nebel Nacht
            
            // *****************************************
            // AB HIER MUSS NICHTS MEHR ANGEPASST WERDEN
            // *****************************************
            
            
            console.log('Ulanzi Wetterscript start für Uhr ');
            
            var temperatureinheit = (await getObjectAsync(obj_temperatur)).common.unit;
            var wetter_url = getState(obj_wetter_url).val;
            var temperatur = getState(obj_temperatur).val;
            
            await update_wetter_icon(wetter_url);
            await update_wetter_temp(temperatur);
            
            
            on({ id: [].concat([obj_temperatur]), change: 'ne' }, async (obj) => {
              let value = obj.state.val;
              update_wetter_temp(value);
            });
            
            
            on({ id: [].concat([obj_wetter_url]), change: 'ne' }, async (obj) => {
                let value = obj.state.val;
                update_wetter_icon(value);
            });
            
            async function update_wetter_temp(wert) {
                wert = Math.round(wert * 10) / 10;
                setState(obj_ulanzi_text, wert+temperatureinheit);
            }
            
            
            async function update_wetter_icon(wetter_url) {
                var ulanzi_weather_icon = "";
            
                switch (wetter_url) {
                    case 'https://openweathermap.org/img/w/01d.png':
                        ulanzi_weather_icon = wettericon01;
                        break;
                    case 'https://openweathermap.org/img/w/01n.png':
                        ulanzi_weather_icon = wettericon02;
                        break;
                    case 'https://openweathermap.org/img/w/02d.png':
                        ulanzi_weather_icon = wettericon03;
                        break;
                    case 'https://openweathermap.org/img/w/02n.png':
                        ulanzi_weather_icon = wettericon04;
                        break;
                    case 'https://openweathermap.org/img/w/03d.png':
                        ulanzi_weather_icon = wettericon05;
                        break;
                    case 'https://openweathermap.org/img/w/03n.png':
                        ulanzi_weather_icon = wettericon06;
                        break;
                    case 'https://openweathermap.org/img/w/04d.png':
                        ulanzi_weather_icon = wettericon07;
                        break;
                    case 'https://openweathermap.org/img/w/04n.png':
                        ulanzi_weather_icon = wettericon08;
                        break;
                    case 'https://openweathermap.org/img/w/09d.png':
                        ulanzi_weather_icon = wettericon09;
                        break;
                    case 'https://openweathermap.org/img/w/09n.png':
                        ulanzi_weather_icon = wettericon10;
                        break;
                    case 'https://openweathermap.org/img/w/10d.png':
                        ulanzi_weather_icon = wettericon11;
                        break;
                    case 'https://openweathermap.org/img/w/10n.png':
                        ulanzi_weather_icon = wettericon12;
                        break;
                    case 'https://openweathermap.org/img/w/11d.png':
                        ulanzi_weather_icon = wettericon13;
                        break;
                    case 'https://openweathermap.org/img/w/11n.png':
                        ulanzi_weather_icon = wettericon14;
                        break;
                    case 'https://openweathermap.org/img/w/13d.png':
                        ulanzi_weather_icon = wettericon15;
                        break;
                    case 'https://openweathermap.org/img/w/13n.png':
                        ulanzi_weather_icon = wettericon16;
                        break;
                    case 'https://openweathermap.org/img/w/50d.png':
                        ulanzi_weather_icon = wettericon17;
                        break;
                    case 'https://openweathermap.org/img/w/50n.png':
                        ulanzi_weather_icon = wettericon18;
                }
                setState(obj_ulanzi_icon, ulanzi_weather_icon);
            }
            
            
            Olli_MO Offline
            Olli_MO Offline
            Olli_M
            schrieb am zuletzt editiert von
            #45

            @andy200877
            läuft 1A :-)

            1 Antwort Letzte Antwort
            0
            • A Andy200877

              Ich habe mein Skript nun überarbeitet.
              Einfach im Awtrix.light Adapter unter ExpertenOptionen eine App "wetter" anlegen.

              Mein Skript füttert die entsprechenden Objekte des Adapters.

              Wie immer ´...

              • Icons auf die Uhr laden
              • Objektpfade anpassen von (Openweathermap und awtrix)
              //  **********************
              //  AB HIER BITTE ANPASSEN 
              //  **********************
              
              var obj_ulanzi_icon = "awtrix-light.0.apps.wetter.icon";
              var obj_ulanzi_text = "awtrix-light.0.apps.wetter.text";
              
              // Openweathermap
              var obj_wetter_url = "openweathermap.0.forecast.current.icon";      // Quelle für Wettersymbol
              var obj_temperatur = "openweathermap.0.forecast.current.temperature"; // Quelle für Temperaturwert
              
              
              
              // Wettersymbole-ID Nummern von https://developer.lametric.com/icons
              // Jedes Symbol muss auch auf die Uhr hochgeladen werden !
              var wettericon01 = '11201';     // klarer Himmel Tag
              var wettericon02 = '52163';     // klarer Himmel Nacht
              var wettericon03 = '22315';     // ein paar Wolken Tag (11-25% Wolken)
              var wettericon04 = '26088';     // ein paar Wolken Nacht (11-25% Wolken)
              var wettericon05 = '22378';     // aufgelockerte Bewölkung Tag (25-50% Wolken)
              var wettericon06 = '21907';     // aufgelockerte Bewölkung Nacht (25-50% Wolken)
              var wettericon07 = '13852';     // bewölkt Tag (51-100%)
              var wettericon08 = '52159';     // bewölkt Nacht (51-100%)
              var wettericon09 = '43706';     // Regenschauer Tag
              var wettericon10 = '43739';     // Regenschauer Nacht
              var wettericon11 = '22257';     // Regen Tag
              var wettericon12 = '72';        // Regen Nacht
              var wettericon13 = '43733';     // Gewitter Tag
              var wettericon14 = '43748';     // Gewitter Nacht
              var wettericon15 = '43732';     // Schnee Tag
              var wettericon16 = '26090';     // Schnee Nacht
              var wettericon17 = '43708';     // Nebel Tag
              var wettericon18 = '43741';     // Nebel Nacht
              
              // *****************************************
              // AB HIER MUSS NICHTS MEHR ANGEPASST WERDEN
              // *****************************************
              
              
              console.log('Ulanzi Wetterscript start für Uhr ');
              
              var temperatureinheit = (await getObjectAsync(obj_temperatur)).common.unit;
              var wetter_url = getState(obj_wetter_url).val;
              var temperatur = getState(obj_temperatur).val;
              
              await update_wetter_icon(wetter_url);
              await update_wetter_temp(temperatur);
              
              
              on({ id: [].concat([obj_temperatur]), change: 'ne' }, async (obj) => {
                let value = obj.state.val;
                update_wetter_temp(value);
              });
              
              
              on({ id: [].concat([obj_wetter_url]), change: 'ne' }, async (obj) => {
                  let value = obj.state.val;
                  update_wetter_icon(value);
              });
              
              async function update_wetter_temp(wert) {
                  wert = Math.round(wert * 10) / 10;
                  setState(obj_ulanzi_text, wert+temperatureinheit);
              }
              
              
              async function update_wetter_icon(wetter_url) {
                  var ulanzi_weather_icon = "";
              
                  switch (wetter_url) {
                      case 'https://openweathermap.org/img/w/01d.png':
                          ulanzi_weather_icon = wettericon01;
                          break;
                      case 'https://openweathermap.org/img/w/01n.png':
                          ulanzi_weather_icon = wettericon02;
                          break;
                      case 'https://openweathermap.org/img/w/02d.png':
                          ulanzi_weather_icon = wettericon03;
                          break;
                      case 'https://openweathermap.org/img/w/02n.png':
                          ulanzi_weather_icon = wettericon04;
                          break;
                      case 'https://openweathermap.org/img/w/03d.png':
                          ulanzi_weather_icon = wettericon05;
                          break;
                      case 'https://openweathermap.org/img/w/03n.png':
                          ulanzi_weather_icon = wettericon06;
                          break;
                      case 'https://openweathermap.org/img/w/04d.png':
                          ulanzi_weather_icon = wettericon07;
                          break;
                      case 'https://openweathermap.org/img/w/04n.png':
                          ulanzi_weather_icon = wettericon08;
                          break;
                      case 'https://openweathermap.org/img/w/09d.png':
                          ulanzi_weather_icon = wettericon09;
                          break;
                      case 'https://openweathermap.org/img/w/09n.png':
                          ulanzi_weather_icon = wettericon10;
                          break;
                      case 'https://openweathermap.org/img/w/10d.png':
                          ulanzi_weather_icon = wettericon11;
                          break;
                      case 'https://openweathermap.org/img/w/10n.png':
                          ulanzi_weather_icon = wettericon12;
                          break;
                      case 'https://openweathermap.org/img/w/11d.png':
                          ulanzi_weather_icon = wettericon13;
                          break;
                      case 'https://openweathermap.org/img/w/11n.png':
                          ulanzi_weather_icon = wettericon14;
                          break;
                      case 'https://openweathermap.org/img/w/13d.png':
                          ulanzi_weather_icon = wettericon15;
                          break;
                      case 'https://openweathermap.org/img/w/13n.png':
                          ulanzi_weather_icon = wettericon16;
                          break;
                      case 'https://openweathermap.org/img/w/50d.png':
                          ulanzi_weather_icon = wettericon17;
                          break;
                      case 'https://openweathermap.org/img/w/50n.png':
                          ulanzi_weather_icon = wettericon18;
                  }
                  setState(obj_ulanzi_icon, ulanzi_weather_icon);
              }
              
              
              I Offline
              I Offline
              IO-SR
              schrieb am zuletzt editiert von
              #46

              @andy200877

              Klasse. Das funktionierte auf Anhieb.

              Danke das Du Dich nochmal hingesetzt hast und noch einen zweiten Weg gefunden hast.

              1 Antwort Letzte Antwort
              0
              • A Offline
                A Offline
                Andy200877
                schrieb am zuletzt editiert von
                #47

                Habe das Skript gerade nochmal verändert, bitte aktualisieren... ;-)

                https://github.com/Andy200877/intex_poollampe

                Olli_MO 1 Antwort Letzte Antwort
                0
                • A Andy200877

                  Habe das Skript gerade nochmal verändert, bitte aktualisieren... ;-)

                  Olli_MO Offline
                  Olli_MO Offline
                  Olli_M
                  schrieb am zuletzt editiert von
                  #48

                  @andy200877

                  also bei mir hängt noch in der clock das alte script...obwohl ich das eigentlich gelöscht habe.... grad zeigt er es mir zweimal hintereinander an :-(

                  hab den Adapter auch schon neu gestartet...

                  kann ich das irgendwo clearen oder so? vielleicht ist im cache der Uhr noch irgendwo was :-/

                  A 1 Antwort Letzte Antwort
                  0
                  • Olli_MO Olli_M

                    @andy200877

                    also bei mir hängt noch in der clock das alte script...obwohl ich das eigentlich gelöscht habe.... grad zeigt er es mir zweimal hintereinander an :-(

                    hab den Adapter auch schon neu gestartet...

                    kann ich das irgendwo clearen oder so? vielleicht ist im cache der Uhr noch irgendwo was :-/

                    A Offline
                    A Offline
                    Andy200877
                    schrieb am zuletzt editiert von Andy200877
                    #49

                    @olli_m
                    Beim alten skript am besten vorher visible auf false und dann das skript beenden. Dadurch wird die app entfernt.
                    Ansonsten Uhr mal neu starten, dann sind alle "User-Apps" auch erstmal entfernt.
                    Werden aber durch den Adapter wieder zu Uhr geladen. Vorher natürlich mein altes Skript deaktivieren.

                    https://github.com/Andy200877/intex_poollampe

                    Olli_MO 2 Antworten Letzte Antwort
                    0
                    • A Andy200877

                      @olli_m
                      Beim alten skript am besten vorher visible auf false und dann das skript beenden. Dadurch wird die app entfernt.
                      Ansonsten Uhr mal neu starten, dann sind alle "User-Apps" auch erstmal entfernt.
                      Werden aber durch den Adapter wieder zu Uhr geladen. Vorher natürlich mein altes Skript deaktivieren.

                      Olli_MO Offline
                      Olli_MO Offline
                      Olli_M
                      schrieb am zuletzt editiert von
                      #50

                      @andy200877 hat geklappt:-)

                      1 Antwort Letzte Antwort
                      0
                      • A Andy200877

                        @olli_m
                        Beim alten skript am besten vorher visible auf false und dann das skript beenden. Dadurch wird die app entfernt.
                        Ansonsten Uhr mal neu starten, dann sind alle "User-Apps" auch erstmal entfernt.
                        Werden aber durch den Adapter wieder zu Uhr geladen. Vorher natürlich mein altes Skript deaktivieren.

                        Olli_MO Offline
                        Olli_MO Offline
                        Olli_M
                        schrieb am zuletzt editiert von
                        #51

                        @andy200877

                        Klappt bei dir das visible immer ? Bei mir nicht immer wenn ich den DP direkt ändere

                        A 1 Antwort Letzte Antwort
                        0
                        • Olli_MO Olli_M

                          @andy200877

                          Klappt bei dir das visible immer ? Bei mir nicht immer wenn ich den DP direkt ändere

                          A Offline
                          A Offline
                          Andy200877
                          schrieb am zuletzt editiert von
                          #52

                          @olli_m
                          Beim Awtrix Adapter oder bei meinem alten skript ?

                          Wenn beim Adapter, dann bitte dort posten / anfragen.

                          https://github.com/Andy200877/intex_poollampe

                          Olli_MO 1 Antwort Letzte Antwort
                          1
                          • A Andy200877

                            @olli_m
                            Beim Awtrix Adapter oder bei meinem alten skript ?

                            Wenn beim Adapter, dann bitte dort posten / anfragen.

                            Olli_MO Offline
                            Olli_MO Offline
                            Olli_M
                            schrieb am zuletzt editiert von
                            #53

                            @andy200877

                            okay poste dort :-)

                            1 Antwort Letzte Antwort
                            0
                            • A Andy200877

                              Ich habe mein Skript nun überarbeitet.
                              Einfach im Awtrix.light Adapter unter ExpertenOptionen eine App "wetter" anlegen.

                              Mein Skript füttert die entsprechenden Objekte des Adapters.

                              Wie immer ´...

                              • Icons auf die Uhr laden
                              • Objektpfade anpassen von (Openweathermap und awtrix)
                              //  **********************
                              //  AB HIER BITTE ANPASSEN 
                              //  **********************
                              
                              var obj_ulanzi_icon = "awtrix-light.0.apps.wetter.icon";
                              var obj_ulanzi_text = "awtrix-light.0.apps.wetter.text";
                              
                              // Openweathermap
                              var obj_wetter_url = "openweathermap.0.forecast.current.icon";      // Quelle für Wettersymbol
                              var obj_temperatur = "openweathermap.0.forecast.current.temperature"; // Quelle für Temperaturwert
                              
                              
                              
                              // Wettersymbole-ID Nummern von https://developer.lametric.com/icons
                              // Jedes Symbol muss auch auf die Uhr hochgeladen werden !
                              var wettericon01 = '11201';     // klarer Himmel Tag
                              var wettericon02 = '52163';     // klarer Himmel Nacht
                              var wettericon03 = '22315';     // ein paar Wolken Tag (11-25% Wolken)
                              var wettericon04 = '26088';     // ein paar Wolken Nacht (11-25% Wolken)
                              var wettericon05 = '22378';     // aufgelockerte Bewölkung Tag (25-50% Wolken)
                              var wettericon06 = '21907';     // aufgelockerte Bewölkung Nacht (25-50% Wolken)
                              var wettericon07 = '13852';     // bewölkt Tag (51-100%)
                              var wettericon08 = '52159';     // bewölkt Nacht (51-100%)
                              var wettericon09 = '43706';     // Regenschauer Tag
                              var wettericon10 = '43739';     // Regenschauer Nacht
                              var wettericon11 = '22257';     // Regen Tag
                              var wettericon12 = '72';        // Regen Nacht
                              var wettericon13 = '43733';     // Gewitter Tag
                              var wettericon14 = '43748';     // Gewitter Nacht
                              var wettericon15 = '43732';     // Schnee Tag
                              var wettericon16 = '26090';     // Schnee Nacht
                              var wettericon17 = '43708';     // Nebel Tag
                              var wettericon18 = '43741';     // Nebel Nacht
                              
                              // *****************************************
                              // AB HIER MUSS NICHTS MEHR ANGEPASST WERDEN
                              // *****************************************
                              
                              
                              console.log('Ulanzi Wetterscript start für Uhr ');
                              
                              var temperatureinheit = (await getObjectAsync(obj_temperatur)).common.unit;
                              var wetter_url = getState(obj_wetter_url).val;
                              var temperatur = getState(obj_temperatur).val;
                              
                              await update_wetter_icon(wetter_url);
                              await update_wetter_temp(temperatur);
                              
                              
                              on({ id: [].concat([obj_temperatur]), change: 'ne' }, async (obj) => {
                                let value = obj.state.val;
                                update_wetter_temp(value);
                              });
                              
                              
                              on({ id: [].concat([obj_wetter_url]), change: 'ne' }, async (obj) => {
                                  let value = obj.state.val;
                                  update_wetter_icon(value);
                              });
                              
                              async function update_wetter_temp(wert) {
                                  wert = Math.round(wert * 10) / 10;
                                  setState(obj_ulanzi_text, wert+temperatureinheit);
                              }
                              
                              
                              async function update_wetter_icon(wetter_url) {
                                  var ulanzi_weather_icon = "";
                              
                                  switch (wetter_url) {
                                      case 'https://openweathermap.org/img/w/01d.png':
                                          ulanzi_weather_icon = wettericon01;
                                          break;
                                      case 'https://openweathermap.org/img/w/01n.png':
                                          ulanzi_weather_icon = wettericon02;
                                          break;
                                      case 'https://openweathermap.org/img/w/02d.png':
                                          ulanzi_weather_icon = wettericon03;
                                          break;
                                      case 'https://openweathermap.org/img/w/02n.png':
                                          ulanzi_weather_icon = wettericon04;
                                          break;
                                      case 'https://openweathermap.org/img/w/03d.png':
                                          ulanzi_weather_icon = wettericon05;
                                          break;
                                      case 'https://openweathermap.org/img/w/03n.png':
                                          ulanzi_weather_icon = wettericon06;
                                          break;
                                      case 'https://openweathermap.org/img/w/04d.png':
                                          ulanzi_weather_icon = wettericon07;
                                          break;
                                      case 'https://openweathermap.org/img/w/04n.png':
                                          ulanzi_weather_icon = wettericon08;
                                          break;
                                      case 'https://openweathermap.org/img/w/09d.png':
                                          ulanzi_weather_icon = wettericon09;
                                          break;
                                      case 'https://openweathermap.org/img/w/09n.png':
                                          ulanzi_weather_icon = wettericon10;
                                          break;
                                      case 'https://openweathermap.org/img/w/10d.png':
                                          ulanzi_weather_icon = wettericon11;
                                          break;
                                      case 'https://openweathermap.org/img/w/10n.png':
                                          ulanzi_weather_icon = wettericon12;
                                          break;
                                      case 'https://openweathermap.org/img/w/11d.png':
                                          ulanzi_weather_icon = wettericon13;
                                          break;
                                      case 'https://openweathermap.org/img/w/11n.png':
                                          ulanzi_weather_icon = wettericon14;
                                          break;
                                      case 'https://openweathermap.org/img/w/13d.png':
                                          ulanzi_weather_icon = wettericon15;
                                          break;
                                      case 'https://openweathermap.org/img/w/13n.png':
                                          ulanzi_weather_icon = wettericon16;
                                          break;
                                      case 'https://openweathermap.org/img/w/50d.png':
                                          ulanzi_weather_icon = wettericon17;
                                          break;
                                      case 'https://openweathermap.org/img/w/50n.png':
                                          ulanzi_weather_icon = wettericon18;
                                  }
                                  setState(obj_ulanzi_icon, ulanzi_weather_icon);
                              }
                              
                              
                              B Offline
                              B Offline
                              Bibo*13
                              schrieb am zuletzt editiert von Bibo*13
                              #54

                              @andy200877 Was muß ich denn tun um die Schriftfarbe anzupassen? Im Expertenmenue hab ich ja keine Eingabemöglichkeit. Ich möchte abhängig von der Temperatur die Farbe auf blau für minus oder rot für plus setzen.
                              Gibt es dafür eine einfache Lösung?

                              1 Antwort Letzte Antwort
                              0
                              • B Offline
                                B Offline
                                blacksheep587
                                schrieb am zuletzt editiert von
                                #55

                                Vielen Dank für das Skript! Klappt sofort, aber ein Problem habe ich noch: Mir werden noch keine Werte angezeigt. Folgendes wird an die Ulanzi geschickt:

                                javascript.0 (9822) script.js.Ulanzi-Wetter: exec: curl -X POST -u user:awtrix -d '{"text":"6.3undefined","textCase":2,"topText":false,"textOffset":0,"center":true,"color":"#FFFFFF","background":"#000000","rainbow":false,"icon":"11201","pushIcon":0,"duration":5,"repeat":1}' -H 'Content-Type: application/json' 'http://192.168.178.101/api/custom?name=Wetter'
                                

                                Habe ich was übersehen?

                                1 Antwort Letzte Antwort
                                0
                                • haus-automatisierungH Online
                                  haus-automatisierungH Online
                                  haus-automatisierung
                                  Developer Most Active
                                  schrieb am zuletzt editiert von
                                  #56

                                  Weil hier manche gefragt haben, habe ich noch ein Beispiel für das Icon-Mapping von OpenWeatherMap in einer Experten-App des Awtrix-Light-Adpaters in die Doku übernommen:

                                  https://github.com/klein0r/ioBroker.awtrix-light/blob/master/docs/de/weather-app.md

                                  🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                  🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                  📚 Meine inoffizielle ioBroker Dokumentation

                                  BTC_87B 1 Antwort Letzte Antwort
                                  2
                                  • haus-automatisierungH haus-automatisierung

                                    Weil hier manche gefragt haben, habe ich noch ein Beispiel für das Icon-Mapping von OpenWeatherMap in einer Experten-App des Awtrix-Light-Adpaters in die Doku übernommen:

                                    https://github.com/klein0r/ioBroker.awtrix-light/blob/master/docs/de/weather-app.md

                                    BTC_87B Offline
                                    BTC_87B Offline
                                    BTC_87
                                    schrieb am zuletzt editiert von
                                    #57

                                    @haus-automatisierung

                                    Danke für den Link und auch für das Script. Funktioniert auch super. Allerdings wird mit immer der Wert "Treu" mit ausgegeben ... Auf meinem Display erscheint dann das Icon, die Temperatur, danach dann "true", dann meine anderen Sachen wieder. Kann man ausschalten, dass der Wert übermittelt wird?

                                    Screenshot 2024-04-02 195047.png

                                    1 Antwort Letzte Antwort
                                    0
                                    • A Andy200877

                                      Ich habe mein Skript nun überarbeitet.
                                      Einfach im Awtrix.light Adapter unter ExpertenOptionen eine App "wetter" anlegen.

                                      Mein Skript füttert die entsprechenden Objekte des Adapters.

                                      Wie immer ´...

                                      • Icons auf die Uhr laden
                                      • Objektpfade anpassen von (Openweathermap und awtrix)
                                      //  **********************
                                      //  AB HIER BITTE ANPASSEN 
                                      //  **********************
                                      
                                      var obj_ulanzi_icon = "awtrix-light.0.apps.wetter.icon";
                                      var obj_ulanzi_text = "awtrix-light.0.apps.wetter.text";
                                      
                                      // Openweathermap
                                      var obj_wetter_url = "openweathermap.0.forecast.current.icon";      // Quelle für Wettersymbol
                                      var obj_temperatur = "openweathermap.0.forecast.current.temperature"; // Quelle für Temperaturwert
                                      
                                      
                                      
                                      // Wettersymbole-ID Nummern von https://developer.lametric.com/icons
                                      // Jedes Symbol muss auch auf die Uhr hochgeladen werden !
                                      var wettericon01 = '11201';     // klarer Himmel Tag
                                      var wettericon02 = '52163';     // klarer Himmel Nacht
                                      var wettericon03 = '22315';     // ein paar Wolken Tag (11-25% Wolken)
                                      var wettericon04 = '26088';     // ein paar Wolken Nacht (11-25% Wolken)
                                      var wettericon05 = '22378';     // aufgelockerte Bewölkung Tag (25-50% Wolken)
                                      var wettericon06 = '21907';     // aufgelockerte Bewölkung Nacht (25-50% Wolken)
                                      var wettericon07 = '13852';     // bewölkt Tag (51-100%)
                                      var wettericon08 = '52159';     // bewölkt Nacht (51-100%)
                                      var wettericon09 = '43706';     // Regenschauer Tag
                                      var wettericon10 = '43739';     // Regenschauer Nacht
                                      var wettericon11 = '22257';     // Regen Tag
                                      var wettericon12 = '72';        // Regen Nacht
                                      var wettericon13 = '43733';     // Gewitter Tag
                                      var wettericon14 = '43748';     // Gewitter Nacht
                                      var wettericon15 = '43732';     // Schnee Tag
                                      var wettericon16 = '26090';     // Schnee Nacht
                                      var wettericon17 = '43708';     // Nebel Tag
                                      var wettericon18 = '43741';     // Nebel Nacht
                                      
                                      // *****************************************
                                      // AB HIER MUSS NICHTS MEHR ANGEPASST WERDEN
                                      // *****************************************
                                      
                                      
                                      console.log('Ulanzi Wetterscript start für Uhr ');
                                      
                                      var temperatureinheit = (await getObjectAsync(obj_temperatur)).common.unit;
                                      var wetter_url = getState(obj_wetter_url).val;
                                      var temperatur = getState(obj_temperatur).val;
                                      
                                      await update_wetter_icon(wetter_url);
                                      await update_wetter_temp(temperatur);
                                      
                                      
                                      on({ id: [].concat([obj_temperatur]), change: 'ne' }, async (obj) => {
                                        let value = obj.state.val;
                                        update_wetter_temp(value);
                                      });
                                      
                                      
                                      on({ id: [].concat([obj_wetter_url]), change: 'ne' }, async (obj) => {
                                          let value = obj.state.val;
                                          update_wetter_icon(value);
                                      });
                                      
                                      async function update_wetter_temp(wert) {
                                          wert = Math.round(wert * 10) / 10;
                                          setState(obj_ulanzi_text, wert+temperatureinheit);
                                      }
                                      
                                      
                                      async function update_wetter_icon(wetter_url) {
                                          var ulanzi_weather_icon = "";
                                      
                                          switch (wetter_url) {
                                              case 'https://openweathermap.org/img/w/01d.png':
                                                  ulanzi_weather_icon = wettericon01;
                                                  break;
                                              case 'https://openweathermap.org/img/w/01n.png':
                                                  ulanzi_weather_icon = wettericon02;
                                                  break;
                                              case 'https://openweathermap.org/img/w/02d.png':
                                                  ulanzi_weather_icon = wettericon03;
                                                  break;
                                              case 'https://openweathermap.org/img/w/02n.png':
                                                  ulanzi_weather_icon = wettericon04;
                                                  break;
                                              case 'https://openweathermap.org/img/w/03d.png':
                                                  ulanzi_weather_icon = wettericon05;
                                                  break;
                                              case 'https://openweathermap.org/img/w/03n.png':
                                                  ulanzi_weather_icon = wettericon06;
                                                  break;
                                              case 'https://openweathermap.org/img/w/04d.png':
                                                  ulanzi_weather_icon = wettericon07;
                                                  break;
                                              case 'https://openweathermap.org/img/w/04n.png':
                                                  ulanzi_weather_icon = wettericon08;
                                                  break;
                                              case 'https://openweathermap.org/img/w/09d.png':
                                                  ulanzi_weather_icon = wettericon09;
                                                  break;
                                              case 'https://openweathermap.org/img/w/09n.png':
                                                  ulanzi_weather_icon = wettericon10;
                                                  break;
                                              case 'https://openweathermap.org/img/w/10d.png':
                                                  ulanzi_weather_icon = wettericon11;
                                                  break;
                                              case 'https://openweathermap.org/img/w/10n.png':
                                                  ulanzi_weather_icon = wettericon12;
                                                  break;
                                              case 'https://openweathermap.org/img/w/11d.png':
                                                  ulanzi_weather_icon = wettericon13;
                                                  break;
                                              case 'https://openweathermap.org/img/w/11n.png':
                                                  ulanzi_weather_icon = wettericon14;
                                                  break;
                                              case 'https://openweathermap.org/img/w/13d.png':
                                                  ulanzi_weather_icon = wettericon15;
                                                  break;
                                              case 'https://openweathermap.org/img/w/13n.png':
                                                  ulanzi_weather_icon = wettericon16;
                                                  break;
                                              case 'https://openweathermap.org/img/w/50d.png':
                                                  ulanzi_weather_icon = wettericon17;
                                                  break;
                                              case 'https://openweathermap.org/img/w/50n.png':
                                                  ulanzi_weather_icon = wettericon18;
                                          }
                                          setState(obj_ulanzi_icon, ulanzi_weather_icon);
                                      }
                                      
                                      
                                      spitzeS Offline
                                      spitzeS Offline
                                      spitze
                                      schrieb am zuletzt editiert von
                                      #58

                                      @andy200877 Erst einmal ganz herzlichen Dank!

                                      Ich bin absoluter Anfänger (weder programmiere ich, noch nutze ich - ansonsten - iobroker. Ich habe mir eine Ulanzi gekauft und möchte nur eine Wetteranzeige darauf installieren und habe dafür iobroker installiert und das Skript eingefügt). Die Variante über die Expertenapp hat für mich geklappt und die Uhr hat für ca. einen Tag das Wetter so angezeigt. Nunmehr aktualisieren sich die Wetterdaten aber nicht mehr. Das Problem scheint eher mit OpenWeatherMap zusammenzuhängen, aber evtl. kann mir hier jemand helfen oder hatte das gleiche Problem.

                                      Nachdem es anfangs geklappt hat bekomme ich nunmehr den Error 400 (Beispiel aus dem iobroker Protokoll: "openweathermap.0 2024-05-03 19:42:21.497 error Error: 400") und die Daten bei OpenWeather "refreshen" sich nicht mehr. Ich habe nichts geändert. Nach mehrfachen "Neustarts" (und auch austesten der anderen Skriptvarianten, die Du hier zur Verfügung gestellt hast) hat es sich dann mal wieder (einmal) aktualisiert und jetzt bin ich wieder bei Error 400. Wie gesagt, habe ich gar nichts an den Einstellungen (iobroker, Instanzen, Skripte ...) geändert. Ich war nicht einmal auf den Oberflächen.

                                      Hat jemand eine Idee woran es liegen kann bzw. was ich probieren kann?

                                      1 Antwort Letzte Antwort
                                      0
                                      • Steffe.S.S Offline
                                        Steffe.S.S Offline
                                        Steffe.S.
                                        schrieb am zuletzt editiert von
                                        #59

                                        Vielen Dank für das Skript. Super Arbeit

                                        Wo kann ich denn die Zeit verstellen, dass das Wetter länger sichtbar ist.

                                        B 1 Antwort Letzte Antwort
                                        0
                                        • Steffe.S.S Steffe.S.

                                          Vielen Dank für das Skript. Super Arbeit

                                          Wo kann ich denn die Zeit verstellen, dass das Wetter länger sichtbar ist.

                                          B Offline
                                          B Offline
                                          bouster
                                          schrieb am zuletzt editiert von
                                          #60

                                          @steffe-s Ich habe es in Zeile 192 angepasst. Ob das der "schöne" Weg ist weiß ich nicht, da ich mich selbst nicht so gut auskenne.

                                          @Andy200877 Ich habe noch einen Vorschlag. Wenn die Uhr ausgeschaltet ist und wieder eingeschaltet wird muss ich das Skript manuell neustarten. Es wäre doch schön, wenn das automatisch passiert.

                                          Steffe.S.S 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

                                          884

                                          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