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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Bei Störung E-Mail versenden ?

NEWS

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

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

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

Bei Störung E-Mail versenden ?

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
61 Beiträge 10 Kommentatoren 11.1k Aufrufe 9 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.
  • DutchmanD Offline
    DutchmanD Offline
    Dutchman
    Developer Most Active Administrators
    schrieb am zuletzt editiert von
    #9

    @Elektroman:

    ? [emoji52] sorry aber das ist mir schon zu hoch `

    bin gerade back home vom "Sinterklaas Fest" hier in holland moment ich bau dir das ma in blockly um :)

    1 Antwort Letzte Antwort
    0
    • E Offline
      E Offline
      Elektroman
      schrieb am zuletzt editiert von
      #10

      Oh super danke

      Ist bestimmt für Andere auch interessant

      1 Antwort Letzte Antwort
      0
      • DutchmanD Offline
        DutchmanD Offline
        Dutchman
        Developer Most Active Administrators
        schrieb am zuletzt editiert von
        #11

        @Elektroman:

        Oh super danke

        Ist bestimmt für Andere auch interessant `

        So das haette wir dan, im blockly habe ich eigentlich nur das verschiken der mail geloest, das script von Paul53 sorgt eigentlich fuer die logic.

        Vorraussetzung ist das du den e-mail adapter installiert und konfiguriert hast !

        Also paul sein script ueberwacht alle zustaender "Alive" und schreibt einen fehler aus sollte sich alive = false aender und der adapter den status enabled hat.

        Dafuer gibts keine andere loesung, dies script musst du also anlegen (pass auf, nicht in global !)

        // Datenpnkt-ID für Mailtext-Übergabe
        const idMailtext = 'javascript.0.mailtext';  // oder so ähnlich
        
        // Instanz wird inaktiv
        on({id: /^system\.adapter\..+\.alive$/, change: 'ne', val: false}, function(dp) {
           var id = dp.id.split('.');
           id = 'system.adapter.' + id[2] + '.' + id[3];
           var instance = getObject(id);
           if(instance.common.enabled) setState(idMailtext, 'Störung: ' + dp.common.name, true);
        });
        
        

        Dan machen wir dieses blockly, welche das object ueberwacht was Paul sein script fuellt und dan eine mail schickt mit dem tekst der meldung.

        In diesem blockly erstelle ich auch das object "javascript.0.mailtext" das ist der erste block :

        979_send_mail.jpg

        Das ergebnis:

        979_send_mail_2.jpg

        Und hier das blockly zum importieren:

        ! ````
        <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="ZqI#6E2{oZZs:=pGFB+q" x="38" y="-137"><field name="COMMENT">Object mailtext erstellen</field>
        <next><block type="create" id=")H=3W%nvyGQ.4C{SP0T("><field name="NAME">mailtext</field>
        <next><block type="comment" id="}:mK[r~GVP/.UGSk9=[h"><field name="COMMENT">Triggeren wen eine meldung vorliegt</field>
        <next><block type="on_ext" id="KYD(k!5})eo}(-?77a(("><mutation items="1"></mutation>
        <field name="CONDITION">ne</field>

                    <value name="OID0"><shadow type="field_oid" id="rJYJwbQ1{f]a{Yj*x8?*"><field name="oid">javascript.0.mailtext</field></shadow></value> 
                    <statement name="STATEMENT"><block type="comment" id="Ps|GT%z~M5(;1sK2HK7W"><field name="COMMENT">E-Mail schicken mit wert aus dem object + zusaetlichen tekst</field>
                        <next><block type="email" id="s,f352j%6ynj]CgL[9}m"><field name="IS_HTML">FALSE</field>
        
                            <value name="TO"><shadow type="text" id="|lM%B_T2xd1W)89K1=(9"><field name="TEXT">deinemailadresse@gmail.com</field></shadow></value> 
                            <value name="TEXT"><shadow type="text" id="dlEg%]]f6zh|[HN_;lSJ"></shadow> 
                              <block type="variables_get" id="3ZHp92{6WYFpp9eYkUBM"><field name="VAR">value</field></block></value> 
                            <value name="SUBJECT"><shadow type="text" id="T0XVW~DiIGOj2%Hu{da="><field name="TEXT">iObroker Fehlermeldungen</field></shadow></value></block></next></block></statement></block></next></block></next></block></next></block></xml> 
        

        ! ````

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #12

          @Dutchman:

          und der adapter den status enabled hat. `
          Das

             if(instance.common.enabled) ...
          

          hast Du weggelassen. Hat das einen Grund ?

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • DutchmanD Offline
            DutchmanD Offline
            Dutchman
            Developer Most Active Administrators
            schrieb am zuletzt editiert von
            #13

            @paul53:

            @Dutchman:

            und der adapter den status enabled hat. `
            Das

               if(instance.common.enabled) ...
            

            hast Du weggelassen. Hat das einen Grund ? `

            Ups sorry ergänzt ich hatte das zum Probieren weck gelassen

            –-----------------------

            Send from mobile device

            1 Antwort Letzte Antwort
            0
            • paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #14

              @Dutchman: Du triggerst auf "was changed", was voraussetzt, dass sich der Text ändert. Allerdings kann es sein, dass immer wieder die gleiche Instanz mal läuft und dann irgendwann nicht mehr läuft. In diesem Fall würde nur einmal getriggert.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              0
              • DutchmanD Offline
                DutchmanD Offline
                Dutchman
                Developer Most Active Administrators
                schrieb am zuletzt editiert von
                #15

                @paul53:

                @Dutchman: Du triggerst auf "was changed", was voraussetzt, dass sich der Text ändert. Allerdings kann es sein, dass immer wieder die gleiche Instanz mal läuft und dann irgendwann nicht mehr läuft. In diesem Fall würde nur einmal getriggert. `

                Stimmt, zur Erklärung: Ich wollte damit eine mail Wiederholung vermeiden wen man aber den effect haben möchte wie du beschreibst muss man de Trigger auf "wurde aktualisiert" ändern.

                –-----------------------

                Send from mobile device

                1 Antwort Letzte Antwort
                0
                • E Offline
                  E Offline
                  Elektroman
                  schrieb am zuletzt editiert von
                  #16

                  Erst mal vielen Dank

                  Funktioniert auch

                  1 Antwort Letzte Antwort
                  0
                  • E Offline
                    E Offline
                    Elektroman
                    schrieb am zuletzt editiert von
                    #17

                    Habe es jetzt getestet, funktioniert gut [emoji4] Habe mir eine neue E-Mail Adresse dafür angelegt

                    Geht das auch mit anstehenden Updates? Oder sogar mit neuen verfügbaren Adaptern ?

                    1 Antwort Letzte Antwort
                    0
                    • paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #18

                      @Elektroman:

                      Geht das auch mit anstehenden Updates? `
                      Dafür gibt es den(die) Datenpunkt(e) mit der ID "admin.N.info.updatesList" (N = 0,1, …).

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      1 Antwort Letzte Antwort
                      0
                      • E Offline
                        E Offline
                        Elektroman
                        schrieb am zuletzt editiert von
                        #19

                        Danke [emoji106][emoji106][emoji106] das kann ich ja sofort weiterverarbeiten

                        1 Antwort Letzte Antwort
                        0
                        • DutchmanD Offline
                          DutchmanD Offline
                          Dutchman
                          Developer Most Active Administrators
                          schrieb am zuletzt editiert von
                          #20

                          @Elektroman:

                          Danke [emoji106][emoji106][emoji106] das kann ich ja sofort weiterverarbeiten `

                          Beachte aber das Updates erst nach einem Befehl

                           iobroker update
                          

                          Sichtbar sind

                          Dafür könntest du das Kommando auch mit blockly ausführen

                          –-----------------------

                          Send from mobile device

                          1 Antwort Letzte Antwort
                          0
                          • E Offline
                            E Offline
                            Elektroman
                            schrieb am zuletzt editiert von
                            #21

                            1. Befehl IOBroker Update bewirkt nur das prüfen nach Updates oder werden die dann sofort installiert?

                            2. wie kann ich den Befehl absetzen? Unter Funktionen JavaScript-Funktion

                            1 Antwort Letzte Antwort
                            0
                            • DutchmanD Offline
                              DutchmanD Offline
                              Dutchman
                              Developer Most Active Administrators
                              schrieb am zuletzt editiert von
                              #22

                              @Elektroman:

                              1. Befehl IOBroker Update bewirkt nur das prüfen nach Updates oder werden die dann sofort installiert? `

                              update kommando sorgt nur dafuer das geprueft wird ob es updates gibt, update selber macht man mit

                              Alle adapter

                              iobroker upgrade
                              

                              Nur den gewuenschten adapter

                              iobroker upgrade >adaptername<
                              

                              @Elektroman:

                              2. wie kann ich den Befehl absetzen? Unter Funktionen JavaScript-Funktion `

                              mit blockly, in diesem beispiel haben ich ein cron drangehaengt damit er es jeden tag um 15Uhr mach kan man beliebig anpasssen:

                              979_update.jpg

                              hier noch der code zum importieren:

                               <xml xmlns="http://www.w3.org/1999/xhtml"><block type="schedule" id="G)SIufc?c]cK@sSp.*jw" x="87" y="63"><field name="SCHEDULE">* 15 * * *</field>
                                  <statement name="STATEMENT"><block type="exec" id="bKofe~Zg@2yFu|2CsnRC"><mutation with_statement="false"></mutation>
                                      <field name="WITH_STATEMENT">FALSE</field>
                                      <field name="LOG">debug</field>
                                      <value name="COMMAND"><shadow type="text" id="?bD]P7ESC9u@OcnOH,:%"><field name="TEXT">cd /opt/iobroker/ && iobroker update</field></shadow></value></block></statement></block></xml> 
                              
                              

                              oder als javascript:

                              // Jeden tag um 15 Uhr
                              schedule("* 15 * * *", function () {
                                //ausfuehren des consolen befehls
                                exec('cd /opt/iobroker/ && iobroker update');
                              
                              });
                              
                              

                              PS: ich habe gerade bemerkt das der wert "admin.0.info.updatesList" nach einen upgrade commando auf der konsole nicht eneuert wird. dafuer mus man nochmal das kommand update geben dan ist der wert richtig

                              1 Antwort Letzte Antwort
                              0
                              • E Offline
                                E Offline
                                Elektroman
                                schrieb am zuletzt editiert von
                                #23

                                Super vielen Dank

                                Werde ich noch ausprobieren.

                                1 Antwort Letzte Antwort
                                0
                                • smartboartS Offline
                                  smartboartS Offline
                                  smartboart
                                  schrieb am zuletzt editiert von
                                  #24

                                  Hallo, danke für das super kleine script…macht was es soll...

                                  habe leider noch nicht raus wie ich den Emailtext alarmMail(txt) in die email packe...Mache das im Moment so wie unten...Aber denke mit der function alarmMail(txt) geht das auch schöner als mit dem eigenen Text.. sendTo("email", "ein System Adapter oder mehrere System Adapter inaktiv");

                                  function alarmMail(txt) {
                                  sendTo("email", "ein System Adapter oder mehrere System Adapter inaktiv");
                                  }
                                  
                                  // Instanz wird inaktiv
                                  on({id: /^system\.adapter\..+\.alive$/, change: 'ne', val: false}, function(dp) {
                                     var id = dp.id.split('.');
                                     id = 'system.adapter.' + id[2] + '.' + id[3];
                                     var instance = getObject(id);
                                     if(instance.common.enabled) alarmMail(dp.common.name);
                                  });
                                  
                                  1 Antwort Letzte Antwort
                                  0
                                  • smartboartS Offline
                                    smartboartS Offline
                                    smartboart
                                    schrieb am zuletzt editiert von
                                    #25

                                    Hat sich erledigt, habs hinbekommen danke…

                                    1 Antwort Letzte Antwort
                                    0
                                    • eric2905E Offline
                                      eric2905E Offline
                                      eric2905
                                      schrieb am zuletzt editiert von
                                      #26

                                      Postest Du noch, wie Du es geschafft hast?

                                      Dann haben alle was davon.

                                      Gruß,

                                      Eric

                                      Von unterwegs getippert

                                      Roses are red, violets are blue,

                                      if I listen to metal, my neighbours do too

                                      1 Antwort Letzte Antwort
                                      0
                                      • smartboartS Offline
                                        smartboartS Offline
                                        smartboart
                                        schrieb am zuletzt editiert von
                                        #27

                                        ` > Postest Du noch, wie Du es geschafft hast?

                                        Dann haben alle was davon. `

                                        function alarmMail(txt) {
                                        sendTo('email', 'System Adapter meldet Probleme  '+(txt));
                                        }
                                        
                                        // Instanz wird inaktiv
                                        on({id: /^system\.adapter\..+\.alive$/, change: 'ne', val: false}, function(dp) {
                                           var id = dp.id.split('.');
                                           id = 'system.adapter.' + id[2] + '.' + id[3];
                                           var instance = getObject(id);
                                           if(instance.common.enabled) alarmMail(dp.common.name);
                                        });
                                        

                                        zu dem script muss eigentlich nur noch der emailadapter eingerichtet werden… Funktioniert wunderbar, habe es mit mehreren Adaptern probiert...Der Script Ersteller hat ganze Arbeit geleistet..danke schön..

                                        1 Antwort Letzte Antwort
                                        0
                                        • smartboartS Offline
                                          smartboartS Offline
                                          smartboart
                                          schrieb am zuletzt editiert von
                                          #28

                                          Hi, hätte gerne noch eine Statusanzeige in Vis, ganz simple eine objekt id auf true setzen wenn eine email bei störung versand wurde..

                                          Bei Status true soll das Widget aufpoppen und bei Betätigung des Widget den Status wieder auf false setzen und verschwinden…

                                          Kann man das so machen ? Funktioniert aufjedenfall schonmal wie ich es möchte.

                                           createState('Adapterüberwachung.Störung', {
                                              read: true, 
                                              write: false, 
                                              type: "boolean"
                                          });
                                          
                                          function alarmMail(txt) {
                                          sendTo('email', 'System Adapter meldet Probleme  '+(txt));
                                          setState('javascript.0.Adapterüberwachung.Störung', true );
                                          }
                                          
                                          // Instanz wird inaktiv
                                          on({id: /^system\.adapter\..+\.alive$/, change: 'ne', val: false}, function(dp) {
                                             var id = dp.id.split('.');
                                             id = 'system.adapter.' + id[2] + '.' + id[3];
                                             var instance = getObject(id);
                                             if(instance.common.enabled) alarmMail(dp.common.name);
                                          });
                                          
                                          
                                          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

                                          462

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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