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. JavaScript
  5. FF-Einsätze OÖ auswerten

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    235

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

FF-Einsätze OÖ auswerten

Geplant Angeheftet Gesperrt Verschoben JavaScript
115 Beiträge 5 Kommentatoren 12.9k Aufrufe 5 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.
  • NegaleinN Negalein

    @oliverio sagte in FF-Einsätze OÖ auswerten:

    wie müsste es denn formatiert werden, das es gut vorgelesen wird?

    ich forsche mal

    das datum komplett ist wahrscheinlich langweilig

    wie meinst du das?

    OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von
    #71

    @negalein sagte in FF-Einsätze OÖ auswerten:

    das datum komplett ist wahrscheinlich langweilig

    wie meinst du das?

    die einsätze sind ja eher aktuell und nicht von letzter woche.
    daher ist das komplette datum nicht notwendig.
    wahrscheinlich reicht der Wochentag also

    Montag, 10:45 Uhr oder
    Dienstag, 13:32 Uhr

    hier mal als option noch mit modifizierter zeitausgabe

    function prepareMessages(einsaetze, kurz, alle) {
        let messages = [];
        const dateOptions = {
            weekday: "long",
        };
        const timeOptions = { hour: "2-digit", minute: "2-digit" };
        einsaetze.map(einsatz => {
            if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                if (kurz) {
                    messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                } else {
                    messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', `${new Date(einsatz.startzeit).toLocaleDateString("de", dateOptions)}, ${new Date(einsatz.startzeit).toLocaleTimeString("de", timeOptions)} Uhr`, ';', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                }
                einsaetzeGesendet.push(einsatz.id);
            }
        })
        return messages.join(";");
    }
    

    Meine Adapter und Widgets
    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
    Links im Profil

    NegaleinN sigi234S 4 Antworten Letzte Antwort
    0
    • OliverIOO OliverIO

      @negalein sagte in FF-Einsätze OÖ auswerten:

      das datum komplett ist wahrscheinlich langweilig

      wie meinst du das?

      die einsätze sind ja eher aktuell und nicht von letzter woche.
      daher ist das komplette datum nicht notwendig.
      wahrscheinlich reicht der Wochentag also

      Montag, 10:45 Uhr oder
      Dienstag, 13:32 Uhr

      hier mal als option noch mit modifizierter zeitausgabe

      function prepareMessages(einsaetze, kurz, alle) {
          let messages = [];
          const dateOptions = {
              weekday: "long",
          };
          const timeOptions = { hour: "2-digit", minute: "2-digit" };
          einsaetze.map(einsatz => {
              if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                  if (kurz) {
                      messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                  } else {
                      messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', `${new Date(einsatz.startzeit).toLocaleDateString("de", dateOptions)}, ${new Date(einsatz.startzeit).toLocaleTimeString("de", timeOptions)} Uhr`, ';', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                  }
                  einsaetzeGesendet.push(einsatz.id);
              }
          })
          return messages.join(";");
      }
      
      NegaleinN Offline
      NegaleinN Offline
      Negalein
      Global Moderator
      schrieb am zuletzt editiert von
      #72

      @oliverio sagte in FF-Einsätze OÖ auswerten:

      hier mal als option noch mit modifizierter zeitausgabe

      Danke, test ich morgen

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

      1 Antwort Letzte Antwort
      0
      • OliverIOO OliverIO

        @negalein sagte in FF-Einsätze OÖ auswerten:

        das datum komplett ist wahrscheinlich langweilig

        wie meinst du das?

        die einsätze sind ja eher aktuell und nicht von letzter woche.
        daher ist das komplette datum nicht notwendig.
        wahrscheinlich reicht der Wochentag also

        Montag, 10:45 Uhr oder
        Dienstag, 13:32 Uhr

        hier mal als option noch mit modifizierter zeitausgabe

        function prepareMessages(einsaetze, kurz, alle) {
            let messages = [];
            const dateOptions = {
                weekday: "long",
            };
            const timeOptions = { hour: "2-digit", minute: "2-digit" };
            einsaetze.map(einsatz => {
                if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                    if (kurz) {
                        messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                    } else {
                        messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', `${new Date(einsatz.startzeit).toLocaleDateString("de", dateOptions)}, ${new Date(einsatz.startzeit).toLocaleTimeString("de", timeOptions)} Uhr`, ';', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                    }
                    einsaetzeGesendet.push(einsatz.id);
                }
            })
            return messages.join(";");
        }
        
        NegaleinN Offline
        NegaleinN Offline
        Negalein
        Global Moderator
        schrieb am zuletzt editiert von Negalein
        #73

        @oliverio

        Gutn Morgen

        gerade ist eine Meldung gekommen :)

        Achtung
        Feuerwehreinsatz in Taufkirchen an der Pram
        Alarmstufe 0
        Einsatz od. Einsatzübung
        Mittwoch, 07:50 Uhr
        Schärding
        Anzahl Feuerwehren 1


        Bitte noch Datum, Zeit entfernen & vor einsatz.bezirk_name bitte das Wort Bezirk einfügen.

        Achtung
        Feuerwehreinsatz in Taufkirchen an der Pram
        Bezirk Schärding
        Alarmstufe 0
        Einsatz od. Einsatzübung
        Anzahl Feuerwehren 1

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

        OliverIOO 1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @negalein sagte in FF-Einsätze OÖ auswerten:

          das datum komplett ist wahrscheinlich langweilig

          wie meinst du das?

          die einsätze sind ja eher aktuell und nicht von letzter woche.
          daher ist das komplette datum nicht notwendig.
          wahrscheinlich reicht der Wochentag also

          Montag, 10:45 Uhr oder
          Dienstag, 13:32 Uhr

          hier mal als option noch mit modifizierter zeitausgabe

          function prepareMessages(einsaetze, kurz, alle) {
              let messages = [];
              const dateOptions = {
                  weekday: "long",
              };
              const timeOptions = { hour: "2-digit", minute: "2-digit" };
              einsaetze.map(einsatz => {
                  if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                      if (kurz) {
                          messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                      } else {
                          messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', `${new Date(einsatz.startzeit).toLocaleDateString("de", dateOptions)}, ${new Date(einsatz.startzeit).toLocaleTimeString("de", timeOptions)} Uhr`, ';', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                      }
                      einsaetzeGesendet.push(einsatz.id);
                  }
              })
              return messages.join(";");
          }
          
          sigi234S Online
          sigi234S Online
          sigi234
          Forum Testing Most Active
          schrieb am zuletzt editiert von sigi234
          #74

          @oliverio

          Hallo,

          gerade ein Einsatz, wo kann ich einstellen das Ansage Alexa und die E-Mail nur 1 mal kommt?

          Edit:

          Anscheinend da:

          let messages = prepareMessages(einsaetze_bezirk, true, false);
          

          Das letzte false war es, hatte da true

          EDIT2

          Doch nicht

          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Immer Daten sichern!

          OliverIOO 1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @negalein sagte in FF-Einsätze OÖ auswerten:

            das datum komplett ist wahrscheinlich langweilig

            wie meinst du das?

            die einsätze sind ja eher aktuell und nicht von letzter woche.
            daher ist das komplette datum nicht notwendig.
            wahrscheinlich reicht der Wochentag also

            Montag, 10:45 Uhr oder
            Dienstag, 13:32 Uhr

            hier mal als option noch mit modifizierter zeitausgabe

            function prepareMessages(einsaetze, kurz, alle) {
                let messages = [];
                const dateOptions = {
                    weekday: "long",
                };
                const timeOptions = { hour: "2-digit", minute: "2-digit" };
                einsaetze.map(einsatz => {
                    if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                        if (kurz) {
                            messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                        } else {
                            messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', `${new Date(einsatz.startzeit).toLocaleDateString("de", dateOptions)}, ${new Date(einsatz.startzeit).toLocaleTimeString("de", timeOptions)} Uhr`, ';', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                        }
                        einsaetzeGesendet.push(einsatz.id);
                    }
                })
                return messages.join(";");
            }
            
            sigi234S Online
            sigi234S Online
            sigi234
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #75

            @oliverio

            Hallo, wie kann ich den Abstand verändern?

            Screenshot (957).png

            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Immer Daten sichern!

            OliverIOO 1 Antwort Letzte Antwort
            0
            • sigi234S sigi234

              @oliverio

              Hallo, wie kann ich den Abstand verändern?

              Screenshot (957).png

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              schrieb am zuletzt editiert von OliverIO
              #76

              @sigi234
              Mit css
              Aktuell wird nur eine rohe html Tabelle ausgegeben.
              Mit Abstand meinst du padding oder margin?

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              sigi234S 1 Antwort Letzte Antwort
              0
              • NegaleinN Negalein

                @OliverIO

                Hallo Oliver

                Danke schonmal :)

                Also, dies ist die URL
                https://cf-einsaetze.ooelfv.at/webext2/rss/webext2_laufend.xml

                Die Seite (XML) soll alle 30 Sekunden abgefragt werden, ob bestimmte Feuerwehren (bei mir 2) aktuell einen Einsatz haben.
                <einheit id="410321">
                <einheit id="410327">

                Oder nach Bezirk
                <bezirk id="10>

                Einheid oder Bezirk; beides nicht gleichzeitig nötig; aber wenn Einheit, dann sollten mehrere Angaben möglich sein

                Intressant ist:
                <alarmstufe>
                <alarmtext>
                <resource name="hier steht der Name" hier die ID"> ---> nicht ident mit einheit id; deshalb nur Name wichtig
                <earea>
                <lng>
                <lat>

                Visualisierung:
                über einzelne DP, damit VIS, Alexa und Telegramm gefüttert werden können.

                Hoffe es ist einigermassen Verständlich erklärt. ;)

                Meister MopperM Offline
                Meister MopperM Offline
                Meister Mopper
                schrieb am zuletzt editiert von
                #77

                @negalein

                Habe gerade deinen thread erstmalig gelesen.

                Warum stellt ihr diese einsatzsensiblen Daten abrufbar ins Internet? Gibt es keine Intranet-Lösung?

                Proxmox und HA

                NegaleinN 1 Antwort Letzte Antwort
                0
                • Meister MopperM Meister Mopper

                  @negalein

                  Habe gerade deinen thread erstmalig gelesen.

                  Warum stellt ihr diese einsatzsensiblen Daten abrufbar ins Internet? Gibt es keine Intranet-Lösung?

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

                  @meister-mopper sagte in FF-Einsätze OÖ auswerten:

                  Warum stellt ihr diese einsatzsensiblen Daten abrufbar ins Internet? Gibt es keine Intranet-Lösung?

                  Doch, aber nur für FF-Mitglieder.

                  Diese Daten die ich abrufe, sind dank DSGVO nicht einsatzsensibel. Es ist der Einsatzort nicht ersichtlich.

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

                  Meister MopperM 1 Antwort Letzte Antwort
                  0
                  • NegaleinN Negalein

                    @meister-mopper sagte in FF-Einsätze OÖ auswerten:

                    Warum stellt ihr diese einsatzsensiblen Daten abrufbar ins Internet? Gibt es keine Intranet-Lösung?

                    Doch, aber nur für FF-Mitglieder.

                    Diese Daten die ich abrufe, sind dank DSGVO nicht einsatzsensibel. Es ist der Einsatzort nicht ersichtlich.

                    Meister MopperM Offline
                    Meister MopperM Offline
                    Meister Mopper
                    schrieb am zuletzt editiert von
                    #79

                    @negalein sagte in FF-Einsätze OÖ auswerten:

                    Diese Daten die ich abrufe, sind dank DSGVO nicht einsatzsensibel. Es ist der Einsatzort nicht ersichtlich.

                    Ja, das schon, aber die Einsatzbelastung ist schon relevant.

                    Wenn jemand stören möchte, kann er es zu geeigneten Zeiten tun, um den größtmöglichen Schaden anzurichten.

                    Das sollte aus meiner Sicht bedacht werden.

                    Proxmox und HA

                    NegaleinN 1 Antwort Letzte Antwort
                    0
                    • Meister MopperM Meister Mopper

                      @negalein sagte in FF-Einsätze OÖ auswerten:

                      Diese Daten die ich abrufe, sind dank DSGVO nicht einsatzsensibel. Es ist der Einsatzort nicht ersichtlich.

                      Ja, das schon, aber die Einsatzbelastung ist schon relevant.

                      Wenn jemand stören möchte, kann er es zu geeigneten Zeiten tun, um den größtmöglichen Schaden anzurichten.

                      Das sollte aus meiner Sicht bedacht werden.

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

                      @meister-mopper sagte in FF-Einsätze OÖ auswerten:

                      Das sollte aus meiner Sicht bedacht werden.

                      gibt bei uns GsD noch normale Menschen.

                      Wenn jemand stören möchte, kann er es zu geeigneten Zeiten tun, um den größtmöglichen Schaden anzurichten.

                      dann dürfte auch keine Sirene, usw. losgehn. Ein Einsatz ist normal weiträumig zu hören.
                      Zumindest bei uns. ;)

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

                      Meister MopperM 1 Antwort Letzte Antwort
                      0
                      • NegaleinN Negalein

                        @meister-mopper sagte in FF-Einsätze OÖ auswerten:

                        Das sollte aus meiner Sicht bedacht werden.

                        gibt bei uns GsD noch normale Menschen.

                        Wenn jemand stören möchte, kann er es zu geeigneten Zeiten tun, um den größtmöglichen Schaden anzurichten.

                        dann dürfte auch keine Sirene, usw. losgehn. Ein Einsatz ist normal weiträumig zu hören.
                        Zumindest bei uns. ;)

                        Meister MopperM Offline
                        Meister MopperM Offline
                        Meister Mopper
                        schrieb am zuletzt editiert von
                        #81

                        @negalein sagte in FF-Einsätze OÖ auswerten:

                        dann dürfte auch keine Sirene, usw. losgehn. Ein Einsatz ist normal weiträumig zu hören.
                        Zumindest bei uns.

                        Ja, das mag sein, aber bei geplanten Anschlägen von außen hilft die Sirene nüscht :man-shrugging: .

                        Ich zumindest würde die Thematik mal oben einwerfen.

                        Proxmox und HA

                        NegaleinN 1 Antwort Letzte Antwort
                        0
                        • NegaleinN Negalein

                          @oliverio

                          Gutn Morgen

                          gerade ist eine Meldung gekommen :)

                          Achtung
                          Feuerwehreinsatz in Taufkirchen an der Pram
                          Alarmstufe 0
                          Einsatz od. Einsatzübung
                          Mittwoch, 07:50 Uhr
                          Schärding
                          Anzahl Feuerwehren 1


                          Bitte noch Datum, Zeit entfernen & vor einsatz.bezirk_name bitte das Wort Bezirk einfügen.

                          Achtung
                          Feuerwehreinsatz in Taufkirchen an der Pram
                          Bezirk Schärding
                          Alarmstufe 0
                          Einsatz od. Einsatzübung
                          Anzahl Feuerwehren 1

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb am zuletzt editiert von
                          #82

                          @negalein sagte in FF-Einsätze OÖ auswerten:

                          Bitte noch Datum, Zeit entfernen & vor einsatz.bezirk_name bitte das Wort Bezirk einfügen

                          function prepareMessages(einsaetze, kurz, alle) {
                              let messages = [];
                              const dateOptions = {
                                  weekday: "long",
                              };
                              const timeOptions = { hour: "2-digit", minute: "2-digit" };
                              einsaetze.map(einsatz => {
                                  if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                                      if (kurz) {
                                          messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                                      } else {
                                          messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', 'Bezirk ', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                                      }
                                      einsaetzeGesendet.push(einsatz.id);
                                  }
                              })
                              return messages.join(";");
                          }
                          

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          1 Antwort Letzte Antwort
                          0
                          • sigi234S sigi234

                            @oliverio

                            Hallo,

                            gerade ein Einsatz, wo kann ich einstellen das Ansage Alexa und die E-Mail nur 1 mal kommt?

                            Edit:

                            Anscheinend da:

                            let messages = prepareMessages(einsaetze_bezirk, true, false);
                            

                            Das letzte false war es, hatte da true

                            EDIT2

                            Doch nicht

                            OliverIOO Offline
                            OliverIOO Offline
                            OliverIO
                            schrieb am zuletzt editiert von
                            #83

                            @sigi234 sagte in FF-Einsätze OÖ auswerten:

                            EDIT2
                            Doch nicht

                            wie weiter oben schon mal gesagt merkt sich das skript
                            die meldungen nur innerhalb eines starts.
                            nach dem nächsten start ist das wieder vergessen.
                            man könnte das gedächtnis in einen datenpunkt verlagern. dann überlebt dies auch den neustart eines skripts

                            Meine Adapter und Widgets
                            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                            Links im Profil

                            sigi234S NegaleinN 2 Antworten Letzte Antwort
                            0
                            • Meister MopperM Meister Mopper

                              @negalein sagte in FF-Einsätze OÖ auswerten:

                              dann dürfte auch keine Sirene, usw. losgehn. Ein Einsatz ist normal weiträumig zu hören.
                              Zumindest bei uns.

                              Ja, das mag sein, aber bei geplanten Anschlägen von außen hilft die Sirene nüscht :man-shrugging: .

                              Ich zumindest würde die Thematik mal oben einwerfen.

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

                              @meister-mopper sagte in FF-Einsätze OÖ auswerten:

                              Ja, das mag sein, aber bei geplanten Anschlägen von außen hilft die Sirene nüscht .

                              das würde jetzt hier zu OT werden.

                              Aber noch 1x OT ;)
                              Was meinst du mit "bei geplanten Anschlägen von außen hilft die Sirene nüscht"?
                              Gerne auch per PN weiter.

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

                              1 Antwort Letzte Antwort
                              0
                              • OliverIOO OliverIO

                                @sigi234 sagte in FF-Einsätze OÖ auswerten:

                                EDIT2
                                Doch nicht

                                wie weiter oben schon mal gesagt merkt sich das skript
                                die meldungen nur innerhalb eines starts.
                                nach dem nächsten start ist das wieder vergessen.
                                man könnte das gedächtnis in einen datenpunkt verlagern. dann überlebt dies auch den neustart eines skripts

                                sigi234S Online
                                sigi234S Online
                                sigi234
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von
                                #85

                                @oliverio

                                Ich kann mich noch erinnern als ein Sturm war da kamen Einsätze (300) im Minuten Takt rein.
                                Da stürzte das Blockly dann ab. Kann man das irgendwie abfangen?

                                Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                Immer Daten sichern!

                                OliverIOO 1 Antwort Letzte Antwort
                                0
                                • OliverIOO OliverIO

                                  @sigi234 sagte in FF-Einsätze OÖ auswerten:

                                  EDIT2
                                  Doch nicht

                                  wie weiter oben schon mal gesagt merkt sich das skript
                                  die meldungen nur innerhalb eines starts.
                                  nach dem nächsten start ist das wieder vergessen.
                                  man könnte das gedächtnis in einen datenpunkt verlagern. dann überlebt dies auch den neustart eines skripts

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

                                  @oliverio sagte in FF-Einsätze OÖ auswerten:

                                  man könnte das gedächtnis in einen datenpunkt verlagern. dann überlebt dies auch den neustart eines skripts

                                  Das wäre sicher eine Überlegung wert. :)

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

                                  OliverIOO 1 Antwort Letzte Antwort
                                  1
                                  • sigi234S sigi234

                                    @oliverio

                                    Ich kann mich noch erinnern als ein Sturm war da kamen Einsätze (300) im Minuten Takt rein.
                                    Da stürzte das Blockly dann ab. Kann man das irgendwie abfangen?

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb am zuletzt editiert von
                                    #87

                                    @sigi234 sagte in FF-Einsätze OÖ auswerten:

                                    Ich kann mich noch erinnern als ein Sturm war da kamen Einsätze (300) im Minuten Takt rein.
                                    Da stürzte das Blockly dann ab. Kann man das irgendwie abfangen?

                                    du fragst ja eigentlich nur alle 30 sekunden oder größer ab.
                                    auch wenn es 1000 gemeldete einsätze gibt, dürfte es kein problem mit absturz oder speicher geben.
                                    wenn, dann irgendeine code-konstellation, die nicht vorgesehen ist. aber wir haben da gar nicht soviel drin. evtl mal, das sich im quelldatenformat was ändert

                                    einen fehler findest du dann im iobroker log

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    1 Antwort Letzte Antwort
                                    1
                                    • NegaleinN Negalein

                                      @oliverio sagte in FF-Einsätze OÖ auswerten:

                                      man könnte das gedächtnis in einen datenpunkt verlagern. dann überlebt dies auch den neustart eines skripts

                                      Das wäre sicher eine Überlegung wert. :)

                                      OliverIOO Offline
                                      OliverIOO Offline
                                      OliverIO
                                      schrieb am zuletzt editiert von OliverIO
                                      #88

                                      @negalein sagte in FF-Einsätze OÖ auswerten:

                                      speichern der bereits gemeldeten einsätze in einem datenpunkt
                                      Das wäre sicher eine Überlegung wert

                                      ziemlich am anfang (zeile 3) folgendes einfügen

                                      let savedEinsaetzeDP = "0_userdata.a";
                                      

                                      die folgende zeile, auch am anfang, bitte löschen

                                      let einsaetzeGesendet ....
                                      

                                      folgende funktion bitte tauschen

                                      async function prepareMessages(einsaetze, kurz, alle) {
                                          let messages = [];
                                          const dateOptions = {
                                              weekday: "long",
                                          };
                                          const timeOptions = { hour: "2-digit", minute: "2-digit" };
                                          let data = await getStateAsync(savedEinsaetzeDP);
                                          let einsaetzeGesendet = JSON.parse(data.val || "[]");
                                          einsaetze.map(einsatz => {
                                              if (!einsaetzeGesendet.some(el => el.id == einsatz.id) || alle) {
                                                  //if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                                                  if (kurz) {
                                                      messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                                                  } else {
                                                      messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', 'Bezirk ', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                                                  }
                                                  einsaetzeGesendet.push({ id: einsatz.id, time: new Date() });
                                              }
                                          })
                                          await setStateAsync(savedEinsaetzeDP, JSON.stringify(einsaetzeGesendet));
                                          return messages.join(";");
                                      }
                                      
                                      

                                      da prepareMessage nun eine async funktion ist, muss an jeder stelle wo diese aufgerufen wird nun await hinzugefügt werden. also so wie folgt
                                      vorher

                                      let messages = prepareMessages(einsaetze, false, false);
                                      

                                      nachher

                                      let messages = await prepareMessages(einsaetze, false, false);
                                      

                                      falls irgendwas nicht funktioniert, bitte dann nochmal deinen kompletten code posten

                                      Meine Adapter und Widgets
                                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                      Links im Profil

                                      NegaleinN 1 Antwort Letzte Antwort
                                      0
                                      • OliverIOO OliverIO

                                        @negalein sagte in FF-Einsätze OÖ auswerten:

                                        speichern der bereits gemeldeten einsätze in einem datenpunkt
                                        Das wäre sicher eine Überlegung wert

                                        ziemlich am anfang (zeile 3) folgendes einfügen

                                        let savedEinsaetzeDP = "0_userdata.a";
                                        

                                        die folgende zeile, auch am anfang, bitte löschen

                                        let einsaetzeGesendet ....
                                        

                                        folgende funktion bitte tauschen

                                        async function prepareMessages(einsaetze, kurz, alle) {
                                            let messages = [];
                                            const dateOptions = {
                                                weekday: "long",
                                            };
                                            const timeOptions = { hour: "2-digit", minute: "2-digit" };
                                            let data = await getStateAsync(savedEinsaetzeDP);
                                            let einsaetzeGesendet = JSON.parse(data.val || "[]");
                                            einsaetze.map(einsatz => {
                                                if (!einsaetzeGesendet.some(el => el.id == einsatz.id) || alle) {
                                                    //if (!einsaetzeGesendet.includes(einsatz.id) || alle) {
                                                    if (kurz) {
                                                        messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';'].join(''));
                                                    } else {
                                                        messages.push(['Achtung;Feuerwehreinsatz in ', einsatz.earea, ';', 'Alarmstufe ', einsatz.alarmstufe, ';', einsatz.einsatzsubtyp, ';', 'Bezirk ', einsatz.bezirk_name, ';Anzahl Feuerwehren ', einsatz.einheiten.length, ';'].join(''));
                                                    }
                                                    einsaetzeGesendet.push({ id: einsatz.id, time: new Date() });
                                                }
                                            })
                                            await setStateAsync(savedEinsaetzeDP, JSON.stringify(einsaetzeGesendet));
                                            return messages.join(";");
                                        }
                                        
                                        

                                        da prepareMessage nun eine async funktion ist, muss an jeder stelle wo diese aufgerufen wird nun await hinzugefügt werden. also so wie folgt
                                        vorher

                                        let messages = prepareMessages(einsaetze, false, false);
                                        

                                        nachher

                                        let messages = await prepareMessages(einsaetze, false, false);
                                        

                                        falls irgendwas nicht funktioniert, bitte dann nochmal deinen kompletten code posten

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

                                        @oliverio sagte in FF-Einsätze OÖ auswerten:

                                        nachher

                                        bei mir 1x

                                        so richtig, denke ich

                                        async function main() {
                                            let xml = await getData()
                                            let json = await xml2json(xml);
                                            let einsaetze = normalizeData(json.webext2.einsaetze.einsatz);
                                            let einsaetze_einheiten = filterEinheiten(einsaetze, [410321, 410327]);
                                            let einsaetze_bezirk = filterBezirk(einsaetze, 10);
                                            let html1 = toHtml(einsaetze_einheiten);
                                            let html2 = toHtml(einsaetze_bezirk);
                                            let html3 = toHtml(einsaetze);
                                            let messages = await prepareMessages(einsaetze_bezirk, false, false);
                                            //messages = await prepareMessages(einsaetze, true, false);
                                            let nachtruhe=compareTime("01:00", "06:00","between");
                                            if (!nachtruhe || messages) sendAlexa(messages, 60);
                                            if (messages) sendTelegram(messages, "");
                                            if (messages) sendEMail(messages, "christian@nega.at", "Neuer Feuerwehreinsatz");
                                            console.log(html1);
                                            console.log(html2);
                                            console.log(html3);
                                            //setState("0_userdata.0.testFolder.a", html3);
                                        	setState("0_userdata.0.FF-Einsatz.Bezirk", html2);	
                                        

                                        let savedEinsaetzeDP = "0_userdata.a"; --> String?

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

                                        OliverIOO 1 Antwort Letzte Antwort
                                        0
                                        • NegaleinN Negalein

                                          @oliverio sagte in FF-Einsätze OÖ auswerten:

                                          nachher

                                          bei mir 1x

                                          so richtig, denke ich

                                          async function main() {
                                              let xml = await getData()
                                              let json = await xml2json(xml);
                                              let einsaetze = normalizeData(json.webext2.einsaetze.einsatz);
                                              let einsaetze_einheiten = filterEinheiten(einsaetze, [410321, 410327]);
                                              let einsaetze_bezirk = filterBezirk(einsaetze, 10);
                                              let html1 = toHtml(einsaetze_einheiten);
                                              let html2 = toHtml(einsaetze_bezirk);
                                              let html3 = toHtml(einsaetze);
                                              let messages = await prepareMessages(einsaetze_bezirk, false, false);
                                              //messages = await prepareMessages(einsaetze, true, false);
                                              let nachtruhe=compareTime("01:00", "06:00","between");
                                              if (!nachtruhe || messages) sendAlexa(messages, 60);
                                              if (messages) sendTelegram(messages, "");
                                              if (messages) sendEMail(messages, "christian@nega.at", "Neuer Feuerwehreinsatz");
                                              console.log(html1);
                                              console.log(html2);
                                              console.log(html3);
                                              //setState("0_userdata.0.testFolder.a", html3);
                                          	setState("0_userdata.0.FF-Einsatz.Bezirk", html2);	
                                          

                                          let savedEinsaetzeDP = "0_userdata.a"; --> String?

                                          OliverIOO Offline
                                          OliverIOO Offline
                                          OliverIO
                                          schrieb am zuletzt editiert von OliverIO
                                          #90

                                          @negalein

                                          ich habe gerade nochmal aktualisiert, bitte den code nochmal von oben kopieren

                                          let savedEinsaetzeDP = "0_userdata.a"; --> String?

                                          ja

                                          bei mir 1x
                                          so richtig, denke ich

                                          ja

                                          Meine Adapter und Widgets
                                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                          Links im Profil

                                          NegaleinN 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

                                          812

                                          Online

                                          32.5k

                                          Benutzer

                                          81.9k

                                          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