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. Tester
  4. [Aufruf] Nina Gefahrenmeldung Adapter

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    759

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

[Aufruf] Nina Gefahrenmeldung Adapter

Geplant Angeheftet Gesperrt Verschoben Tester
ninakatwarngefahrengefahrenwarner
383 Beiträge 64 Kommentatoren 80.6k Aufrufe 60 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.
  • Merlin123M Merlin123

    Weiß jemand, ob der Adapter noch gepflegt wird?
    Gibt ein paar offene Issues auf GIT, die leider nicht bearbeitet werden.

    T Offline
    T Offline
    tombox
    schrieb am zuletzt editiert von
    #364

    @merlin123 Welches issue meinst du konkret

    Merlin123M I 2 Antworten Letzte Antwort
    0
    • T tombox

      @merlin123 Welches issue meinst du konkret

      Merlin123M Offline
      Merlin123M Offline
      Merlin123
      schrieb am zuletzt editiert von Merlin123
      #365

      @tombox Das da: State activeWarn enthält Warnungen vom DWD obwohl deaktiviert

      Wurde jetzt drauf geantwortet, war aber vorher sehr lange offen.

      Beta-Tester

      Merlin123M 1 Antwort Letzte Antwort
      0
      • Merlin123M Merlin123

        @tombox Das da: State activeWarn enthält Warnungen vom DWD obwohl deaktiviert

        Wurde jetzt drauf geantwortet, war aber vorher sehr lange offen.

        Merlin123M Offline
        Merlin123M Offline
        Merlin123
        schrieb am zuletzt editiert von
        #366

        Danke für die neue Version :) Geht jetzt und die Zahl der Warnungen stimmt wieder

        Beta-Tester

        1 Antwort Letzte Antwort
        0
        • T tombox

          @merlin123 Welches issue meinst du konkret

          I Offline
          I Offline
          IobNordlicht
          schrieb am zuletzt editiert von
          #367

          Ich muss nun mal doof fragen, tut mir leid:

          Aus User-Sicht:
          Wenn ich eine Nachricht bekomme, dann möchte ich diese ggf. bestätigen, so dass diese nicht mehr angezeigt wird.
          Ist im Nachrichtenobjektbaum dafür etwas vorgesehen?

          Also folgende Sequenz für mein Widget:
          finde ungelesene/unbestätigte "not acknowledged" Nachricht -> Popup -> Button "nicht mehr anzeigen" wird wahlweise per Nachricht gedrückt -> Nachricht ist "acknowledged" -> Zurück auf Anfang

          Ist das "nina.0.01062.warnung01.status" für Warning1? Scheint mir durch den "Melder" gesetzt zu werden, richtig? Heißt also, würde ich den Wert ändern, würde er beim nächsten Abruf durch den Adapter wieder überschrieben werden?

          Alternativ, falls es das tatsächlich noch nicht gibt:
          Wäre es nicht eine einfache und schöne Lösung, wenn bei jeder Warnung im Objektbaum noch ein Boolean "isAcknowledged" hinzugefügt wäre, welches initial bei neuer Nachricht auf "false" steht und dann vom Editor verwendet werden kann um zu filtern und es dann auf "true" zu setzen?
          Und vielleicht noch ein Boolean für "isRead", so dass man auch den "gelesen" Zustand getrennt nutzen kann.

          Viele Grüße
          IobNordlicht

          arteckA 1 Antwort Letzte Antwort
          0
          • I IobNordlicht

            Ich muss nun mal doof fragen, tut mir leid:

            Aus User-Sicht:
            Wenn ich eine Nachricht bekomme, dann möchte ich diese ggf. bestätigen, so dass diese nicht mehr angezeigt wird.
            Ist im Nachrichtenobjektbaum dafür etwas vorgesehen?

            Also folgende Sequenz für mein Widget:
            finde ungelesene/unbestätigte "not acknowledged" Nachricht -> Popup -> Button "nicht mehr anzeigen" wird wahlweise per Nachricht gedrückt -> Nachricht ist "acknowledged" -> Zurück auf Anfang

            Ist das "nina.0.01062.warnung01.status" für Warning1? Scheint mir durch den "Melder" gesetzt zu werden, richtig? Heißt also, würde ich den Wert ändern, würde er beim nächsten Abruf durch den Adapter wieder überschrieben werden?

            Alternativ, falls es das tatsächlich noch nicht gibt:
            Wäre es nicht eine einfache und schöne Lösung, wenn bei jeder Warnung im Objektbaum noch ein Boolean "isAcknowledged" hinzugefügt wäre, welches initial bei neuer Nachricht auf "false" steht und dann vom Editor verwendet werden kann um zu filtern und es dann auf "true" zu setzen?
            Und vielleicht noch ein Boolean für "isRead", so dass man auch den "gelesen" Zustand getrennt nutzen kann.

            Viele Grüße
            IobNordlicht

            arteckA Offline
            arteckA Offline
            arteck
            Developer Most Active
            schrieb am zuletzt editiert von
            #368

            @iobnordlicht nein gibts nicht... und ich erachte es auch nicht für sinnvoll...

            was ist wenn du die Nachricht gelesen hast .. aber eine andere Person nicht.. für Unwetter als Beispiel..
            nene... das kannst du schän selber managen.. die Warnung soll bestehen bleiben solange die Aktuell ist.. wie in der NINA app

            zigbee hab ich, zwave auch, nuc's genauso und HA auch

            1 Antwort Letzte Antwort
            1
            • Merlin123M Offline
              Merlin123M Offline
              Merlin123
              schrieb am zuletzt editiert von
              #369

              @iobnordlicht Mach dir einfach nen Datenpunkt: Nina anzeigen (True/False). Dann schalte über das Widget, mit dem Du anzeigst, den DP auf False beim anklicken. Und in der Sichtbarkeit sagst Du "DP = True".

              So mach ich das mit einigen Sachen.
              Ich seh auch keinen Bedarf sowas im Adapter abzubilden.

              Beta-Tester

              I 1 Antwort Letzte Antwort
              0
              • Merlin123M Merlin123

                @iobnordlicht Mach dir einfach nen Datenpunkt: Nina anzeigen (True/False). Dann schalte über das Widget, mit dem Du anzeigst, den DP auf False beim anklicken. Und in der Sichtbarkeit sagst Du "DP = True".

                So mach ich das mit einigen Sachen.
                Ich seh auch keinen Bedarf sowas im Adapter abzubilden.

                I Offline
                I Offline
                IobNordlicht
                schrieb am zuletzt editiert von
                #370

                @merlin123 @arteck
                Naja, aber im Grunde schreibt ihr damit ja vor, wie ein Nutzer mit seinem individuell aufgebautem IoBroker umzugehen hat?
                Seid mir nicht bös, aber was ist denn so schlimm daran, es dem Benutzer zu überlassen, ob er es so möchte, oder nicht?
                Klar kann ich alles selbst "basteln", dachte nur im generalisierten Sinne "für alle".
                Es sind ja optional nutzbare Eigenschaften, die keinen verpflichten, aber eine komfortable Option bieten.

                Und ich kann mir vorstellen, dass ich auch nicht der Einzige bin, der die Meldung eben nicht dauerhaft sehen möchte, weil der Ersteller das so möchte.

                Na gut, dann muss ich halt basteln :spock-hand:

                CodierknechtC 1 Antwort Letzte Antwort
                0
                • I IobNordlicht

                  @merlin123 @arteck
                  Naja, aber im Grunde schreibt ihr damit ja vor, wie ein Nutzer mit seinem individuell aufgebautem IoBroker umzugehen hat?
                  Seid mir nicht bös, aber was ist denn so schlimm daran, es dem Benutzer zu überlassen, ob er es so möchte, oder nicht?
                  Klar kann ich alles selbst "basteln", dachte nur im generalisierten Sinne "für alle".
                  Es sind ja optional nutzbare Eigenschaften, die keinen verpflichten, aber eine komfortable Option bieten.

                  Und ich kann mir vorstellen, dass ich auch nicht der Einzige bin, der die Meldung eben nicht dauerhaft sehen möchte, weil der Ersteller das so möchte.

                  Na gut, dann muss ich halt basteln :spock-hand:

                  CodierknechtC Offline
                  CodierknechtC Offline
                  Codierknecht
                  Developer Most Active
                  schrieb am zuletzt editiert von
                  #371

                  @iobnordlicht sagte in [Aufruf] Nina Gefahrenmeldung Adapter:

                  was ist denn so schlimm daran, es dem Benutzer zu überlassen, ob er es so möchte, oder nicht?

                  Da ist gar nichts "schlimmes" dran.

                  Klar kann ich alles selbst "basteln", dachte nur im generalisierten Sinne "für alle".

                  Genau das sind die Freiheitsgrade, für die ioBroker bekannt und beliebt ist.
                  Jeder kann sein System so zusammenstellen und konfigurieren, wie es ihm beliebt. "basteln" würde ich das nicht unbedingt nennen.

                  Du musst das Ganze mal durch die Entwicklerbrille betrachten:
                  Du hast jetzt diese eine Spezialanforderung. Und es gibt mit an Sicherheit grenzender Wahrscheinlichkeit noch mindestens ein Dutzend Anwender, die ähnliche - teilweise auch sich widersprechende - Wünsche haben.
                  Natürlich kann man - mit entsprechendem Aufwand - auch die eierlegende Wollmilchsau programmieren.
                  Ein Rundumglücklichpaket, an dem man alles mögliche ein- oder auch ausschalten kann.

                  Das wird dann aber früher oder später nicht mehr wartbar.
                  Das alles ist OpenSource und wird von vielen Freiwilligen in ihrer Freizeit entwickelt.
                  Heißt aber auch: Da geht mal der Eine oder Andere, so dass die Entwicklung von anderen übernommen werden muss. Die müssen das dann erstmal verstehen.
                  Und nicht zu vergessen: Je komplexer ein System, desto eher treten Fehler auf.
                  Sowas wird dann auch recht schnell unbeherrschbar - sehe ich beruflich jeden Tag.
                  Alte Entwicklerweisheit: "Jedes nicht triviale Programm enthält mindestens einen Bug".

                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                  HmIP|ZigBee|Tasmota|Unifi
                  Zabbix Certified Specialist
                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                  I 1 Antwort Letzte Antwort
                  2
                  • CodierknechtC Codierknecht

                    @iobnordlicht sagte in [Aufruf] Nina Gefahrenmeldung Adapter:

                    was ist denn so schlimm daran, es dem Benutzer zu überlassen, ob er es so möchte, oder nicht?

                    Da ist gar nichts "schlimmes" dran.

                    Klar kann ich alles selbst "basteln", dachte nur im generalisierten Sinne "für alle".

                    Genau das sind die Freiheitsgrade, für die ioBroker bekannt und beliebt ist.
                    Jeder kann sein System so zusammenstellen und konfigurieren, wie es ihm beliebt. "basteln" würde ich das nicht unbedingt nennen.

                    Du musst das Ganze mal durch die Entwicklerbrille betrachten:
                    Du hast jetzt diese eine Spezialanforderung. Und es gibt mit an Sicherheit grenzender Wahrscheinlichkeit noch mindestens ein Dutzend Anwender, die ähnliche - teilweise auch sich widersprechende - Wünsche haben.
                    Natürlich kann man - mit entsprechendem Aufwand - auch die eierlegende Wollmilchsau programmieren.
                    Ein Rundumglücklichpaket, an dem man alles mögliche ein- oder auch ausschalten kann.

                    Das wird dann aber früher oder später nicht mehr wartbar.
                    Das alles ist OpenSource und wird von vielen Freiwilligen in ihrer Freizeit entwickelt.
                    Heißt aber auch: Da geht mal der Eine oder Andere, so dass die Entwicklung von anderen übernommen werden muss. Die müssen das dann erstmal verstehen.
                    Und nicht zu vergessen: Je komplexer ein System, desto eher treten Fehler auf.
                    Sowas wird dann auch recht schnell unbeherrschbar - sehe ich beruflich jeden Tag.
                    Alte Entwicklerweisheit: "Jedes nicht triviale Programm enthält mindestens einen Bug".

                    I Offline
                    I Offline
                    IobNordlicht
                    schrieb am zuletzt editiert von
                    #372

                    @codierknecht
                    Verstehe ich, war mal SW Entwickler, daher dachte ich, die beiden Booleans sind nicht die Welt :thinking_face:
                    Aber ich bau mir das auch so, na klar.

                    Merlin123M 1 Antwort Letzte Antwort
                    0
                    • I IobNordlicht

                      @codierknecht
                      Verstehe ich, war mal SW Entwickler, daher dachte ich, die beiden Booleans sind nicht die Welt :thinking_face:
                      Aber ich bau mir das auch so, na klar.

                      Merlin123M Offline
                      Merlin123M Offline
                      Merlin123
                      schrieb am zuletzt editiert von
                      #373

                      @iobnordlicht Als "vorschreiben, wie man ioBroker nutzen sollte" würde ich das nicht sehen. Was Du mit den Infos aus den Adaptern machst, ist ja dir überlassen.

                      Aus meiner Sicht sollte ein Adpater die Daten bereitstellen bzw. eine Steuermöglichkeit für irgendwas.. Sich um Sichtbarkeit in ner Vis kümmern, ist nicht seine Sache (auch weil nicht jeder ne Vis nutzt und sich z.B. die Nina warnung per Telegram schicken lässt oder mit Alexa vorlesen lässt).

                      :)

                      Beta-Tester

                      Walter WhiteW 1 Antwort Letzte Antwort
                      2
                      • Merlin123M Merlin123

                        @iobnordlicht Als "vorschreiben, wie man ioBroker nutzen sollte" würde ich das nicht sehen. Was Du mit den Infos aus den Adaptern machst, ist ja dir überlassen.

                        Aus meiner Sicht sollte ein Adpater die Daten bereitstellen bzw. eine Steuermöglichkeit für irgendwas.. Sich um Sichtbarkeit in ner Vis kümmern, ist nicht seine Sache (auch weil nicht jeder ne Vis nutzt und sich z.B. die Nina warnung per Telegram schicken lässt oder mit Alexa vorlesen lässt).

                        :)

                        Walter WhiteW Offline
                        Walter WhiteW Offline
                        Walter White
                        schrieb am zuletzt editiert von
                        #374

                        Hallo,
                        wie werde ich die Unwetter und hochwasserwarnungen los?
                        Ich werde hier alle paar Minuten auf meiner Alexa terrorisiert, beim Adapter sind die Haken an hochwasser und Unwetter zu ignorieren.
                        Wie kann man das reparieren?

                        arteckA 1 Antwort Letzte Antwort
                        0
                        • Walter WhiteW Walter White

                          Hallo,
                          wie werde ich die Unwetter und hochwasserwarnungen los?
                          Ich werde hier alle paar Minuten auf meiner Alexa terrorisiert, beim Adapter sind die Haken an hochwasser und Unwetter zu ignorieren.
                          Wie kann man das reparieren?

                          arteckA Offline
                          arteckA Offline
                          arteck
                          Developer Most Active
                          schrieb am zuletzt editiert von arteck
                          #375

                          @walter-white dann hast du was falsch ...

                          zeigmal die Einstellungen

                          und dann die DP
                          1dc96dd4-d94d-43f8-acf7-a6157b5665bd-grafik.png

                          zigbee hab ich, zwave auch, nuc's genauso und HA auch

                          M 1 Antwort Letzte Antwort
                          0
                          • arteckA arteck

                            @walter-white dann hast du was falsch ...

                            zeigmal die Einstellungen

                            und dann die DP
                            1dc96dd4-d94d-43f8-acf7-a6157b5665bd-grafik.png

                            M Offline
                            M Offline
                            martin_olw
                            schrieb am zuletzt editiert von
                            #376

                            Hallo zusammen,
                            ich scheitere gerade daran, mir aus den Meldungen von Nina einen Datenpunkt mit Text zu befüllen, den ich dann an verschiedenen Stellen anzeigen lassen kann. Egal, was ich probiere oder wie ich mir mein Blockly baue, das Script spuckt immer den Wert "NINA Warnung: null" aus.
                            Die beiden aktuellen Varianten, die nicht funktionieren seht ihr hier:
                            59b54292-5a51-4dc9-af60-45afa7d182bd-image.png
                            Danke für die Hilfe bei meinem Denkfehler.
                            Viele Grüße
                            Martin

                            CodierknechtC 1 Antwort Letzte Antwort
                            0
                            • M martin_olw

                              Hallo zusammen,
                              ich scheitere gerade daran, mir aus den Meldungen von Nina einen Datenpunkt mit Text zu befüllen, den ich dann an verschiedenen Stellen anzeigen lassen kann. Egal, was ich probiere oder wie ich mir mein Blockly baue, das Script spuckt immer den Wert "NINA Warnung: null" aus.
                              Die beiden aktuellen Varianten, die nicht funktionieren seht ihr hier:
                              59b54292-5a51-4dc9-af60-45afa7d182bd-image.png
                              Danke für die Hilfe bei meinem Denkfehler.
                              Viele Grüße
                              Martin

                              CodierknechtC Offline
                              CodierknechtC Offline
                              Codierknecht
                              Developer Most Active
                              schrieb am zuletzt editiert von Codierknecht
                              #377

                              @martin_olw
                              An ein "Wert von Objekt" kommt immer nur eine Objekt-ID!

                              Falls mehr als 1 Warnung vorliegt, kommst Du um eine Schleife eh nicht herum. Daher kann man das auch gleich mit einer Schleife lösen.

                              Das Prinzip:

                              71c1007a-7289-41f7-a60b-7ceca0bdf363-image.png

                              Das funktioniert bis max. 9 Warnungen - was eigentlich ausreichen sollte.
                              Die Variable message wird zunächst auf einen leeren string gesetzt.
                              Dann eiert die Schleife durch die n Meldungen und hängt die Texte an die Variable.
                              Am Ende wird der Text versandt.

                              Der Einfachheit halber habe ich auf instruction verzichtet. Das kriegst Du sicher selbst hin.

                              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                              HmIP|ZigBee|Tasmota|Unifi
                              Zabbix Certified Specialist
                              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                              M 1 Antwort Letzte Antwort
                              0
                              • CodierknechtC Codierknecht

                                @martin_olw
                                An ein "Wert von Objekt" kommt immer nur eine Objekt-ID!

                                Falls mehr als 1 Warnung vorliegt, kommst Du um eine Schleife eh nicht herum. Daher kann man das auch gleich mit einer Schleife lösen.

                                Das Prinzip:

                                71c1007a-7289-41f7-a60b-7ceca0bdf363-image.png

                                Das funktioniert bis max. 9 Warnungen - was eigentlich ausreichen sollte.
                                Die Variable message wird zunächst auf einen leeren string gesetzt.
                                Dann eiert die Schleife durch die n Meldungen und hängt die Texte an die Variable.
                                Am Ende wird der Text versandt.

                                Der Einfachheit halber habe ich auf instruction verzichtet. Das kriegst Du sicher selbst hin.

                                M Offline
                                M Offline
                                martin_olw
                                schrieb am zuletzt editiert von
                                #378

                                @codierknecht Vielen Dank! Ich habe mein Blockly angepasst und warte jetzt mal auf die nächste NINA-Meldung.

                                1 Antwort Letzte Antwort
                                0
                                • NegaleinN Negalein

                                  @phantomkommander sagte in [Aufruf] Nina Gefahrenmeldung Adapter:

                                  tue mir da generell noch etwas schwer beim erstellen von Anzeigen in der Vis.

                                  importier dir mal meins.
                                  Vielleicht kannst du dir was übernehmen.

                                  new 14.txt
                                  (Rechtsklick ---> Speichern unter ---> und nicht mit Windows-Editor, sondern zB mit Notepad++ öffnen)

                                  Edit vis.png

                                  K Offline
                                  K Offline
                                  Kanumouse
                                  schrieb am zuletzt editiert von
                                  #379

                                  @negalein
                                  Mit welchen Objekt-ID steuerst du die drei farbigen, blinkenden Punkte an?

                                  NegaleinN 1 Antwort Letzte Antwort
                                  0
                                  • K Kanumouse

                                    @negalein
                                    Mit welchen Objekt-ID steuerst du die drei farbigen, blinkenden Punkte an?

                                    NegaleinN Offline
                                    NegaleinN Offline
                                    Negalein
                                    Global Moderator
                                    schrieb am zuletzt editiert von
                                    #380

                                    @kanumouse sagte in [Aufruf] Nina Gefahrenmeldung Adapter:

                                    Mit welchen Objekt-ID steuerst du die drei farbigen, blinkenden Punkte an?

                                    mit keiner.
                                    Die Blinken nur. War mal so ne Idee. Aber denke nie drann die wieder zu entfernen.

                                    ° Node.js Update ---> iob nodejs-update
                                    ° Fixer ---> iob fix

                                    1 Antwort Letzte Antwort
                                    0
                                    • hardwarefehlerH Online
                                      hardwarefehlerH Online
                                      hardwarefehler
                                      schrieb am zuletzt editiert von hardwarefehler
                                      #381

                                      (Edit 16.1.: Schedule eingebaut)
                                      Die vielen Glatteiswarungen in dem letzten Tagen haben mich inspiriert, etwa Javascript zu üben.
                                      Ziel war, eine Visualisierung bereitzustellen, die

                                      • mit mehreren Landkreisnummern klarkommt, sinnvoll für Pendler. Was ich hier bisher gesehen habe, hatte immer nur eine Nummer eingebrannt,
                                      • die Meldungen abhängig von ihrer Anzahl darzustellen.

                                      Das Skript bietet noch keine Robustheit, wenn z.B. die Anzahl der Datenpunkte von der Anzahl der tatsächlich aktiven Meldungen abweicht. Auch hat es keinen Trigger...

                                      Als Trigger läuft es 5minütlich. Hier im Thread gibt es auch Beispiele, es an die Änderung der Anzahl der Meldungen zu binden, wobei zu überlegen ist, wie man alle Landkreise berücksichtigt.

                                      Es schreibt am Ende in zwei User-Datenpunkte, die existieren müssen, der kurze ist für eine Überschrift gedacht, der andere aggregiert alle vorhandenen Meldungen in einen HTML-Block.

                                      Das HTML lässt sich in der vis-2 mit einem Basic String (unescaped) darstellen, dieser unterstützt einen Scrollbar. Für diesen CSS Allgemein -> overflow-y = visible.
                                      Die HTML-Formatierung ist weiter ausbaufähig.

                                      schedule('3,8,13,18,23,28,33,38,43,48,53,58 * * * *', function(obj) { 
                                      
                                      const landkreise = [11000, 12067];
                                      const warnung_components = [
                                      //'info01.headline', //handle headline separately
                                      'info01.description',
                                      'info01.instruction',
                                      'source',
                                      'msgType',
                                      'info01.event',
                                      'info01.severity',
                                      'info01.category01',
                                      'info01.certainty',
                                      'info01.contact',
                                      'sent',
                                      'info01.effective',
                                      'info01.expires',
                                      //'info01.fullText', broken values of "headline + description + instruction" but delivers NaNundefined
                                      'info01.responseType01',
                                      'info01.senderName',
                                      'info01.urgency',
                                      'info01.web'
                                      ];
                                      
                                      var outstring = '';
                                      var shortstring = '';
                                      
                                      landkreise.forEach(lk => { 
                                      
                                      var object_string = 'nina.0.' + lk;
                                      var number_warn = getState(object_string + '.'+ 'numberOfWarn').val //alternative: nina.0.11000.numberOfWarn
                                      var lk_name = getObject(object_string).common.name;
                                      
                                      outstring += ('<h2>\n'+ lk_name + ' hat ' + number_warn + ' Nina-Warnung/en.\n\n</h2>');
                                      shortstring += ('<p>\n'+ lk_name + ': ' + number_warn + '\n</p>')
                                      
                                      if ((number_warn > 0) && (number_warn < 100)) {  // more than 99 do not fit into naming scheme
                                          for (let i=1; i <= number_warn; i++) {
                                              outstring += ('<hr>');
                                              var object_string_warn = object_string + '.' + 'warnung' + ("0" + i).slice(-2)
                                              outstring += ('<p>\n'+object_string_warn+'\n\n</p>');
                                              outstring += ('<h3>\n'+(getState(object_string_warn+ '.info01.headline').val)+'\n\n</h3>');
                                      
                                              warnung_components.forEach(wc => {
                                                  outstring += ('<p><small>'+wc+':</small> '+(getState(object_string_warn+ '.' +wc).val) + '\n</p>').replace('info01.', '');
                                              });
                                          }
                                          outstring += ('<hr>');
                                      }    
                                      });
                                      setState('0_userdata.0.visualisations.nina_aggregated_short', shortstring);
                                      setState('0_userdata.0.visualisations.nina_aggregated_warnings', outstring);
                                      //console.log(outstring);
                                      });
                                      

                                      nina from 2026-01-11 14-08-16.png

                                      Merlin123M 1 Antwort Letzte Antwort
                                      0
                                      • C Offline
                                        C Offline
                                        claus1993
                                        schrieb am zuletzt editiert von claus1993
                                        #382

                                        Hallo Zusammen,

                                        habe mir den Adapter installiert und auch ein Upload gemacht. Dennoch will er bei mir nicht laufen. Bekomme beim start folgende Meldungen;

                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	instance system.adapter.nina.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: Node.js v22.21.0
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: }
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: ]
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/iobroker.nina/main.js'
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/iobroker.nina/node_modules/traverse/index.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/typedarray.prototype.slice/index.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/typedarray.prototype.slice/implementation.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/es-abstract/2024/TypedArraySpeciesCreate.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/es-abstract/2024/TypedArrayCreateFromConstructor.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/es-abstract/2024/IsTypedArrayOutOfBounds.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/typed-array-byte-offset/index.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/reflect.getprototypeof/polyfill.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/reflect.getprototypeof/implementation.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: '/opt/iobroker/node_modules/which-builtin-type/index.js',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: requireStack: [
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: code: 'MODULE_NOT_FOUND',
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at Module._compile (node:internal/modules/cjs/loader:1706:14) {
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/which-builtin-type/index.js:11:12)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at require (node:internal/modules/helpers:147:16)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at Module.require (node:internal/modules/cjs/loader:1463:12)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at wrapModuleLoad (node:internal/modules/cjs/loader:237:24)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at TracingChannel.traceSync (node:diagnostics_channel:328:14)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at Function._load (node:internal/modules/cjs/loader:1192:37)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1030:22)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at defaultResolveImpl (node:internal/modules/cjs/loader:1025:19)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: at Function._resolveFilename (node:internal/modules/cjs/loader:1383:15)
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/iobroker.nina/main.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/iobroker.nina/node_modules/traverse/index.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/typedarray.prototype.slice/index.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/typedarray.prototype.slice/implementation.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/es-abstract/2024/TypedArraySpeciesCreate.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/es-abstract/2024/TypedArrayCreateFromConstructor.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/es-abstract/2024/IsTypedArrayOutOfBounds.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/typed-array-byte-offset/index.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/reflect.getprototypeof/polyfill.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/reflect.getprototypeof/implementation.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: - /opt/iobroker/node_modules/which-builtin-type/index.js
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: Require stack:
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: Error: Cannot find module 'function.prototype.name'
                                        host.ioBroker
                                        	2026-01-14 08:06:01.949	error	Caught by controller[0]: ^
                                        host.ioBroker
                                        	2026-01-14 08:06:01.948	error	Caught by controller[0]: throw err;
                                        host.ioBroker
                                        	2026-01-14 08:06:01.948	error	Caught by controller[0]: node:internal/modules/cjs/loader:1386
                                        

                                        Hat hier jemand eine Idee wo mein Problem ist?

                                        Danke und Grüße,
                                        Claus

                                        Mit einem "iobroker fix" konnte ich es beheben :-)

                                        1 Antwort Letzte Antwort
                                        0
                                        • hardwarefehlerH hardwarefehler

                                          (Edit 16.1.: Schedule eingebaut)
                                          Die vielen Glatteiswarungen in dem letzten Tagen haben mich inspiriert, etwa Javascript zu üben.
                                          Ziel war, eine Visualisierung bereitzustellen, die

                                          • mit mehreren Landkreisnummern klarkommt, sinnvoll für Pendler. Was ich hier bisher gesehen habe, hatte immer nur eine Nummer eingebrannt,
                                          • die Meldungen abhängig von ihrer Anzahl darzustellen.

                                          Das Skript bietet noch keine Robustheit, wenn z.B. die Anzahl der Datenpunkte von der Anzahl der tatsächlich aktiven Meldungen abweicht. Auch hat es keinen Trigger...

                                          Als Trigger läuft es 5minütlich. Hier im Thread gibt es auch Beispiele, es an die Änderung der Anzahl der Meldungen zu binden, wobei zu überlegen ist, wie man alle Landkreise berücksichtigt.

                                          Es schreibt am Ende in zwei User-Datenpunkte, die existieren müssen, der kurze ist für eine Überschrift gedacht, der andere aggregiert alle vorhandenen Meldungen in einen HTML-Block.

                                          Das HTML lässt sich in der vis-2 mit einem Basic String (unescaped) darstellen, dieser unterstützt einen Scrollbar. Für diesen CSS Allgemein -> overflow-y = visible.
                                          Die HTML-Formatierung ist weiter ausbaufähig.

                                          schedule('3,8,13,18,23,28,33,38,43,48,53,58 * * * *', function(obj) { 
                                          
                                          const landkreise = [11000, 12067];
                                          const warnung_components = [
                                          //'info01.headline', //handle headline separately
                                          'info01.description',
                                          'info01.instruction',
                                          'source',
                                          'msgType',
                                          'info01.event',
                                          'info01.severity',
                                          'info01.category01',
                                          'info01.certainty',
                                          'info01.contact',
                                          'sent',
                                          'info01.effective',
                                          'info01.expires',
                                          //'info01.fullText', broken values of "headline + description + instruction" but delivers NaNundefined
                                          'info01.responseType01',
                                          'info01.senderName',
                                          'info01.urgency',
                                          'info01.web'
                                          ];
                                          
                                          var outstring = '';
                                          var shortstring = '';
                                          
                                          landkreise.forEach(lk => { 
                                          
                                          var object_string = 'nina.0.' + lk;
                                          var number_warn = getState(object_string + '.'+ 'numberOfWarn').val //alternative: nina.0.11000.numberOfWarn
                                          var lk_name = getObject(object_string).common.name;
                                          
                                          outstring += ('<h2>\n'+ lk_name + ' hat ' + number_warn + ' Nina-Warnung/en.\n\n</h2>');
                                          shortstring += ('<p>\n'+ lk_name + ': ' + number_warn + '\n</p>')
                                          
                                          if ((number_warn > 0) && (number_warn < 100)) {  // more than 99 do not fit into naming scheme
                                              for (let i=1; i <= number_warn; i++) {
                                                  outstring += ('<hr>');
                                                  var object_string_warn = object_string + '.' + 'warnung' + ("0" + i).slice(-2)
                                                  outstring += ('<p>\n'+object_string_warn+'\n\n</p>');
                                                  outstring += ('<h3>\n'+(getState(object_string_warn+ '.info01.headline').val)+'\n\n</h3>');
                                          
                                                  warnung_components.forEach(wc => {
                                                      outstring += ('<p><small>'+wc+':</small> '+(getState(object_string_warn+ '.' +wc).val) + '\n</p>').replace('info01.', '');
                                                  });
                                              }
                                              outstring += ('<hr>');
                                          }    
                                          });
                                          setState('0_userdata.0.visualisations.nina_aggregated_short', shortstring);
                                          setState('0_userdata.0.visualisations.nina_aggregated_warnings', outstring);
                                          //console.log(outstring);
                                          });
                                          

                                          nina from 2026-01-11 14-08-16.png

                                          Merlin123M Offline
                                          Merlin123M Offline
                                          Merlin123
                                          schrieb am zuletzt editiert von
                                          #383

                                          @hardwarefehler tolle Idee! Schau ich mir mal genauer an (wenn ich dazu komme). Hätte ich auch Verwendung dafür.

                                          Beta-Tester

                                          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

                                          649

                                          Online

                                          32.6k

                                          Benutzer

                                          82.0k

                                          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