Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Js-Funktion in Blockly erweitern

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Js-Funktion in Blockly erweitern

    This topic has been deleted. Only users with topic management privileges can see it.
    • David G.
      David G. last edited by David G.

      Hallo,

      ich habe mit @fastfoot vor einiger Zeit folgendes Blockly mit einer Js-Funktion entwickelt.

      Screenshot_20230429_172307_Chrome.jpg

      Funktion:

      /**
       * Zweck:   erstellt Tabelle(json) aus XML TV-Daten von epg.best
       * Datum:   20.04.2022
       * Autor:   @fastfoot
       * Forum:   https://forum.iobroker.net/post/792865
       */
      const fs = require('fs');
      const xml2js = require('xml2js');                                   // eintragen in Adapter-Instanz
      const parser = new xml2js.Parser();
      //const Sender = '3sat.de';                                         // Senderfilter
      const now = Datum;                                                  // Zeitfilter
      
      function parseAsync() {
          let data = fs.readFileSync('/opt/iobroker/node_modules/iobroker.javascript/EPG/epg.xml');
          return new Promise((resolve, reject) => {
              parser.parseString(data, function (err, result) {
                  if (err) {
                      log('Fehler ' + err);
                  }
                  resolve(result);
              })
          });
      }
      
      const uebersicht = [];
      let json = await parseAsync();
      //fs.writeFile('/opt/iobroker/Downloads/tv.json', JSON.stringify(json), e => { })
      json.tv.programme.forEach(p => {
          let start = p['$'].start.match(/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})\s(\+\d{2})/);
          let stop = p['$'].stop.match(/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})\s(\+\d{2})/);
          start = new Date(start[1] + '-' + start[2] + '-' + start[3] + ' ' + start[4] + ':' + start[5] + ':' + start[6] + ' UTC' + start[7])
          stop = new Date(stop[1] + '-' + stop[2] + '-' + stop[3] + ' ' + stop[4] + ':' + stop[5] + ':' + stop[6] + ' UTC' + stop[7])
          uebersicht.push({
              "Sender": p['$'].channel.replace('.de',''),
              "Start": start,
              "Ende": stop,
              "Bild": p.icon[0]['_'],
              "Titel": p.title[0]['_']
          })
      })
      
      //als Tabelle für VIS speichern
      //setState('0_userdata.0.TV.epg', JSON.stringify(uebersicht));
      
      //Filtern nach Sender und Zeit
      let jetzt = uebersicht.filter(p => {
          return p.Sender === Sender.replace('.de','') && p.Start <= now && p.Ende > now;
      })
      if (jetzt.length > 0)
          return jetzt[0];
      else
          return { "Sender": null, "Start": null, "Ende": null, "Titel": "Kein laufendes Programm gefunden!" }
      

      Die Funktion würde ich gerne noch erweitern um "icon" abzurufen. Dafür habe ich in Zeile 37 (Zwischen Ende und Titel) einfach mal getestet und was ergänzt. Auf gut Glück. Das klappt aber nicht.

      Kann mir ggf jmd weiterhelfen?

      Hier ein Auszug aus der xml:

      <programme start="20230428180000 +0200" stop="20230428190000 +0200" channel="123TV.de">
          <title lang="de">Gastro</title>
          <desc lang="de">In dieser Sendung werden die besten Produkte aus der Kategorie \.</desc>
          <category lang="de">Einkauf</category>
          <icon src="https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/p11138558_bd_h10_aa.jpg"/>
          <country lang="de">DE</country>
        </programme>
      

      EDIT
      "desc" darf auch gerne mit bei, wenn mal einmal bei ist.

      liv-in-sky 1 Reply Last reply Reply Quote 0
      • liv-in-sky
        liv-in-sky @David G. last edited by

        @david-g

        hatte ich gesehen, dacht @fastfoot meldet sich noch - poste mal das log, wenn du in zeile 20 das einfügst

         resolve(result); log(JSON.stringify(esult))
        
        David G. 1 Reply Last reply Reply Quote 0
        • David G.
          David G. @liv-in-sky last edited by David G.

          @liv-in-sky

          Das ist jetzt mitten raus. Am Anfang kommen noch andere Dinge (wenn das reicht) .
          Das ist riesig was raus kommt (muss die sendenich reduzieren...)

          https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/p15110568_i_h10_aa.jpg"}}],"country":[{"_":"DE","$":{"lang":"de"}}]},{"$":{"start":"20230501090000 +0200","stop":"20230501100000 +0200","channel":"123TV.de"},"title":[{"_":"By Stefano Ghilardi","$":{"lang":"de"}}],"desc":[{"_":"Eine Shoppingsendung.","$":{"lang":"de"}}],"category":[{"_":"Einkauf","$":{"lang":"de"}}],"icon":[{"$":{"src":"https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/g187_h10_aa.jpg"}}],"country":[{"_":"DE","$":{"lang":"de"}}]},{"$":{"start":"20230501100000 +0200","stop":"20230501110000 +0200","channel":"123TV.de"},"title":[{"_":"By Stefano Ghilardi","$":{"lang":"de"}}],"desc":[{"_":"Eine Shoppingsendung.","$":{"lang":"de"}}],"category":[{"_":"Einkauf","$":{"lang":"de"}}],"icon":[{"$":{"src":"https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/g187_h10_aa.jpg"}}],"country":[{"_":"DE","$":{"lang":"de"}}]},{"$":{"start":"20230501110000 +0200","stop":"20230501120000 +0200","channel":"123TV.de"},"title":[{"_":"Eau de Paris","$":{"lang":"de"}}],"desc":[{"_":"In dieser Shopping-Sendung werden Beauty-Produkte vorgestellt und zum Kauf angeboten.","$":{"lang":"de"}}],"icon":[{"$":{"src":"https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/p14664966_i_h10_aa.jpg"}}],"country":[{"_":"DE","$":{"lang":"de"}}]},{"$":{"start":"20230501120000 +0200","stop":"20230501130000 +0200","channel":"123TV.de"},"title":[{"_":"gastro Garten","$":{"lang":"de"}}],"desc":[{"_":"Eine Verkaufssendung.","$":{"lang":"de"}}],"category":[{"_":"Einkauf","$":{"lang":"de"}},{"_":"Natur","$":{"lang":"de"}}],"icon":[{"$":{"src":"https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/g187_h10_aa.jpg"}}],"country":[{"_":"DE","$":{"lang":"de"}}]},{"$":{"start":"20230501130000 +0200","stop":"20230501140000 +0200","channel":"123TV.de"},"title":[{"_":"gastro Garten","$":{"lang":"de"}}],"desc":[{"_":"Eine Verkaufssendung.","$":{"lang":"de"}}],"category":[{"_":"Einkauf","$":{"lang":"de"}},{"_":"Natur","$":{"lang":"de"}}],"icon":[{"$":{"src":"https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/g187_h10_aa.jpg"}}],"country":[{"_":"DE","$":{"lang":"de"}}]},{"$":{"start":"20230501140000 +0200","stop":"20230501150000 +0200","channel":"123TV.de"},"title":[{"_":"Eau de Paris","$":{"lang":"de"}}],"desc":[{"_":"In dieser Shopping-Sendung werden Beauty-Produkte vorgestellt und zum Kauf angeboten.","$":{"lang":"de"}}],"icon":[{"$":{"src":"https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/p14664966_i_h10_aa.jpg"}}],"country":[{"_":"DE","$":{"lang":"de"}}]},{"$":{"start":"20230501150000 +0200","stop":"20230501160000 +0200","channel":"123TV.de"},"title":[{"_":"Bistro - Frühstück für Genießer"
          

          icon und desc wäre cool.

          liv-in-sky 2 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @David G. last edited by

            @david-g

            lass mal - habe eine datei gefunden

            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @David G. last edited by

              @david-g

              sorry - poste die datei doch mal - egal wie lange - poste es als ganze datei - nicht in code tags

              David G. 1 Reply Last reply Reply Quote 0
              • David G.
                David G. @liv-in-sky last edited by

                @liv-in-sky

                Kann ich das aus dem Skript direkt in eine Datei schreiben? Arbeite das We über nur vom Smartphone, das kackt mir da ab 😅

                liv-in-sky 2 Replies Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @David G. last edited by

                  @david-g warte mal

                  David G. 1 Reply Last reply Reply Quote 0
                  • David G.
                    David G. @liv-in-sky last edited by

                    @liv-in-sky
                    Bei der Hilfe warte ich gerne 👍

                    Die Daten kommen von https://epg.best
                    Sind wirklich sehr umfangreich, wäre einen Adapter wert. Die meisten sind vermutlich aber nicht bereit 99ct im Monat auszugeben.

                    liv-in-sky 2 Replies Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @David G. last edited by liv-in-sky

                      @david-g

                      probiermal

                      "Bild": p.icon[0].$.src,
                      

                      oder

                      "Bild": p.icon[0]['$'].src,
                      
                      1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @David G. last edited by

                        @david-g

                        und

                        p.desc[0]['_']
                        
                        1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @David G. last edited by

                          @david-g sagte in Js-Funktion in Blockly erweitern:

                          @liv-in-sky
                          Bei der Hilfe warte ich gerne 👍

                          Die Daten kommen von https://epg.best
                          Sind wirklich sehr umfangreich, wäre einen Adapter wert. Die meisten sind vermutlich aber nicht bereit 99ct im Monat auszugeben.

                          würde da schon darüber nachdenken, die 12€ pro jahr - mache aber keine adapter

                          wenn ich zeit habe, muss ich mir das mal näher ansehen - seit hoerzu die seite geändert hat, habe ich keine tv anzeige mehr

                          1 Reply Last reply Reply Quote 0
                          • David G.
                            David G. last edited by

                            @liv-in-sky

                            Manchen Usern schon. Hatte da bei dem WhatsApp Ding mal was mitbekommen. Oder jedes Jahr bei iobroker.pro.....

                            Die Beschreibung klappt.
                            Das Bild möchte aber nicht...

                            javascript.0
                            2023-04-30 10:54:12.055	error	at script.js.Eigene_Scripte.Tvtest:72:12
                            
                            javascript.0
                            2023-04-30 10:54:12.055	error	at processTicksAndRejections (node:internal/process/task_queues:95:5)
                            
                            javascript.0
                            2023-04-30 10:54:12.055	error	at parser (script.js.Eigene_Scripte.Tvtest:32:23)
                            
                            javascript.0
                            2023-04-30 10:54:12.054	error	at Array.forEach (<anonymous>)
                            
                            javascript.0
                            2023-04-30 10:54:12.054	error	at script.js.Eigene_Scripte.Tvtest:42:27
                            
                            javascript.0
                            2023-04-30 10:54:12.054	error	script.js.Eigene_Scripte.Tvtest: TypeError: Cannot read properties of undefined (reading '0')
                            
                            liv-in-sky 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @David G. last edited by

                              @david-g hast du beide varianten getestet ?

                              David G. 1 Reply Last reply Reply Quote 0
                              • David G.
                                David G. @liv-in-sky last edited by David G.

                                @liv-in-sky

                                Jepp, grade im Moment. Hatte nur die erste gesehen.
                                Beide nicht

                                Ganz am Anfang des epg werden die Senderlogos definiert. Die nennen sich auch icon. Kann das daran liegen?

                                liv-in-sky 1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @David G. last edited by liv-in-sky

                                  @david-g

                                  seltsam:

                                  das ist der input

                                  
                                    "icon": [
                                      {
                                        "$": {
                                          "src": "https://staticqbr-at-prod.prod.cdn.dmdsdp.com/image-service/ImagesEPG/EventImages/g187_h10_aa.jpg"
                                        }
                                      }
                                    ]
                                  
                                  

                                  das sollte klappen

                                  p.icon[0]['$']['src']
                                  p.icon[0]['$'].src
                                  

                                  ist der fehler schon in der richtigen zeile

                                  @david-g sagte in Js-Funktion in Blockly erweitern:

                                  Ganz am Anfang des epg werden die Senderlogos definiert. Die nennen sich auch icon. Kann das daran liegen?

                                  glaub ich nicht - man gibt ja den pfad an

                                  David G. 1 Reply Last reply Reply Quote 0
                                  • David G.
                                    David G. @liv-in-sky last edited by David G.

                                    @liv-in-sky

                                    Möchte auch nicht klappen.

                                    Hier mal mein komplettes Blockly (Noch 1,2 deaktivierte Sachen drinnen) und die XML mit den Daten:

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                     <variables>
                                       <variable id="v9(OKj}zllQ44H{)Lc{N">reihenfolgeArray</variable>
                                       <variable id="mCYwI42|ncHnAW9vEKvY">jsonObject</variable>
                                       <variable id="kbL5/)K1!N4cip+5_.1i">Sender</variable>
                                       <variable id="=J@n/ITm;Kc+d4@zMh7!">Datum</variable>
                                       <variable id="/_EVt8i8cL:*ALcrdhfG">ergebnis</variable>
                                       <variable id="0d$,^d=DyR?A@dc^$2k{">liste</variable>
                                       <variable type="cron" id="schedule1">schedule1</variable>
                                       <variable id="K,2TEeTH[~P0w=~$MuBY">i</variable>
                                       <variable id="%mKBe`ebTtbysu/M*J*3">obj</variable>
                                       <variable id="]BTNK|@|Qn4t?IQzR(sc">tag</variable>
                                       <variable id="C$xy/!eJr45/6sjkYui}">stunde</variable>
                                       <variable id="5[]lC%HZ%ms68yMuwW!1">minute</variable>
                                       <variable id="4SkzLXPg%ikY[vz0m00?">Sekunde</variable>
                                     </variables>
                                     <block type="procedures_defcustomreturn" id="%~/MYnto3+Qsd;Wd9kpJ" disabled="true" x="162" y="288">
                                       <mutation statements="false">
                                         <arg name="reihenfolgeArray" varid="v9(OKj}zllQ44H{)Lc{N"></arg>
                                         <arg name="jsonObject" varid="mCYwI42|ncHnAW9vEKvY"></arg>
                                       </mutation>
                                       <field name="NAME">etwas tun</field>
                                       <field name="SCRIPT">Y29uc3QganNvbkFycmF5ID0ganNvbk9iamVjdDsNCg0KY29uc3QgU2VuZGVyUmVpaGVuZm9sZ2UgPSByZWloZW5mb2xnZUFycmF5OyAvLyBSZWloZW5mb2xnZSBkZXIgTmFtZW4gaW0gQXJyYXkNCg0KDQovLyBGdW5rdGlvbiwgZGllIGRhcyBKU09OLUFycmF5IHNvcnRpZXJ0IHVuZCBncnVwcGllcnQNCmZ1bmN0aW9uIHNvcnRpZXJlVW5kR3J1cHBpZXJlQXJyYXkoYXJyYXksIFNlbmRlclJlaWhlbmZvbGdlKSB7DQogIGNvbnN0IGdydXBwaWVydGVPYmpla3RlID0ge307DQogIFNlbmRlclJlaWhlbmZvbGdlLmZvckVhY2goU2VuZGVyID0+IGdydXBwaWVydGVPYmpla3RlW1NlbmRlcl0gPSBbXSk7DQoNCiAgLy8gT2JqZWt0ZSBuYWNoIFNlbmRlcm4gZ3J1cHBpZXJlbiB1bmQgUmVpaGVuZm9sZ2UgYmVpYmVoYWx0ZW4NCiAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykgew0KICAgIGNvbnN0IG9iamVrdCA9IGFycmF5W2ldOw0KICAgIGNvbnN0IFNlbmRlciA9IG9iamVrdC5TZW5kZXI7DQogICAgaWYgKGdydXBwaWVydGVPYmpla3RlLmhhc093blByb3BlcnR5KFNlbmRlcikpIHsNCiAgICAgIGdydXBwaWVydGVPYmpla3RlW1NlbmRlcl0ucHVzaChvYmpla3QpOw0KICAgIH0gZWxzZSB7DQogICAgICBncnVwcGllcnRlT2JqZWt0ZVtTZW5kZXJdID0gW29iamVrdF07DQogICAgfQ0KICB9DQoNCiAgLy8gRmVobGVuZGUgU2VuZGVyIGFucyBFbmRlIGRlcyBncnVwcGllcnRlbiBBcnJheXMgaGluenVmw7xnZW4NCiAgT2JqZWN0LmtleXMoZ3J1cHBpZXJ0ZU9iamVrdGUpLmZvckVhY2goU2VuZGVyID0+IHsNCiAgICBpZiAoIVNlbmRlclJlaWhlbmZvbGdlLmluY2x1ZGVzKFNlbmRlcikpIHsNCiAgICAgIFNlbmRlclJlaWhlbmZvbGdlLnB1c2goU2VuZGVyKTsNCiAgICB9DQogIH0pOw0KDQogIHJldHVybiBTZW5kZXJSZWloZW5mb2xnZS5mbGF0TWFwKFNlbmRlciA9PiBncnVwcGllcnRlT2JqZWt0ZVtTZW5kZXJdKTsNCn0NCg0KLy8gU29ydGllcnRlcyB1bmQgZ3J1cHBpZXJ0ZXMgQXJyYXkgYXVzZ2ViZW4NCnJldHVybiBzb3J0aWVyZVVuZEdydXBwaWVyZUFycmF5KGpzb25BcnJheSwgU2VuZGVyUmVpaGVuZm9sZ2UpOw0KDQo=</field>
                                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                     </block>
                                     <block type="variables_set" id="g#6eJHHD$|.rT!EB3kr?" disabled="true" x="163" y="363">
                                       <field name="VAR" id="mCYwI42|ncHnAW9vEKvY">jsonObject</field>
                                       <value name="VALUE">
                                         <block type="convert_json2object" id="O?9o(;wlZ=N9K@oF0}[g">
                                           <value name="VALUE">
                                             <block type="get_value" id="s_6sYSHlZ1g_Fl]^Mu8~">
                                               <field name="ATTR">val</field>
                                               <field name="OID">0_userdata.0.Tima</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="update" id=";=M@ex`Bc+/L,[V3a/U|" disabled="true">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                           <field name="OID">0_userdata.0.string</field>
                                           <field name="WITH_DELAY">FALSE</field>
                                           <value name="VALUE">
                                             <block type="procedures_callcustomreturn" id="2$?TGN/x#|j}{sH%8PGe" disabled="true">
                                               <mutation name="etwas tun">
                                                 <arg name="reihenfolgeArray"></arg>
                                                 <arg name="jsonObject"></arg>
                                               </mutation>
                                               <value name="ARG0">
                                                 <block type="lists_create_with" id="+aT9=v$yidtG{aAH-:e_">
                                                   <mutation items="3"></mutation>
                                                   <value name="ADD0">
                                                     <block type="text" id="SCr/fl/y~U-PLgz1(Q5#">
                                                       <field name="TEXT">ARD</field>
                                                     </block>
                                                   </value>
                                                   <value name="ADD1">
                                                     <block type="text" id="d^a_#@[Zu#}b/VH1x7C#">
                                                       <field name="TEXT">3sat</field>
                                                     </block>
                                                   </value>
                                                   <value name="ADD2">
                                                     <block type="text" id="9*Ru]3hX$_a%s3qZSG,l">
                                                       <field name="TEXT">WDR HD Köln</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="ARG1">
                                                 <block type="variables_get" id="F@EIt97*,6^a[t52:87Q">
                                                   <field name="VAR" id="mCYwI42|ncHnAW9vEKvY">jsonObject</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </next>
                                     </block>
                                     <block type="procedures_defcustomreturn" id="Fdn;N_DDcOcQm^j|,Ft!" x="-687" y="463">
                                       <mutation statements="false">
                                         <arg name="Sender" varid="kbL5/)K1!N4cip+5_.1i"></arg>
                                         <arg name="Datum" varid="=J@n/ITm;Kc+d4@zMh7!"></arg>
                                       </mutation>
                                       <field name="NAME">parser</field>
                                       <field name="SCRIPT">LyoqDQogKiBad2VjazogICBlcnN0ZWxsdCBUYWJlbGxlKGpzb24pIGF1cyBYTUwgVFYtRGF0ZW4gdm9uIGVwZy5iZXN0DQogKiBEYXR1bTogICAyMC4wNC4yMDIyDQogKiBBdXRvcjogICBAZmFzdGZvb3QNCiAqIEZvcnVtOiAgIGh0dHBzOi8vZm9ydW0uaW9icm9rZXIubmV0L3Bvc3QvNzkyODY1DQogKi8NCmNvbnN0IGZzID0gcmVxdWlyZSgnZnMnKTsNCmNvbnN0IHhtbDJqcyA9IHJlcXVpcmUoJ3htbDJqcycpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZWludHJhZ2VuIGluIEFkYXB0ZXItSW5zdGFueg0KY29uc3QgcGFyc2VyID0gbmV3IHhtbDJqcy5QYXJzZXIoKTsNCi8vY29uc3QgU2VuZGVyID0gJzNzYXQuZGUnOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2VuZGVyZmlsdGVyDQpjb25zdCBub3cgPSBEYXR1bTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFplaXRmaWx0ZXINCg0KZnVuY3Rpb24gcGFyc2VBc3luYygpIHsNCiAgICBsZXQgZGF0YSA9IGZzLnJlYWRGaWxlU3luYygnL29wdC9pb2Jyb2tlci9ub2RlX21vZHVsZXMvaW9icm9rZXIuamF2YXNjcmlwdC9FUEcvZXBnLnhtbCcpOw0KICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgIHBhcnNlci5wYXJzZVN0cmluZyhkYXRhLCBmdW5jdGlvbiAoZXJyLCByZXN1bHQpIHsNCiAgICAgICAgICAgIGlmIChlcnIpIHsNCiAgICAgICAgICAgICAgICBsb2coJ0ZlaGxlciAnICsgZXJyKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KTsNCiAgICAgICAgfSkNCiAgICB9KTsNCn0NCg0KY29uc3QgdWViZXJzaWNodCA9IFtdOw0KbGV0IGpzb24gPSBhd2FpdCBwYXJzZUFzeW5jKCk7DQovL2ZzLndyaXRlRmlsZSgnL29wdC9pb2Jyb2tlci9Eb3dubG9hZHMvdHYuanNvbicsIEpTT04uc3RyaW5naWZ5KGpzb24pLCBlID0+IHsgfSkNCmpzb24udHYucHJvZ3JhbW1lLmZvckVhY2gocCA9PiB7DQogICAgbGV0IHN0YXJ0ID0gcFsnJCddLnN0YXJ0Lm1hdGNoKC8oXGR7NH0pKFxkezJ9KShcZHsyfSkoXGR7Mn0pKFxkezJ9KShcZHsyfSlccyhcK1xkezJ9KS8pOw0KICAgIGxldCBzdG9wID0gcFsnJCddLnN0b3AubWF0Y2goLyhcZHs0fSkoXGR7Mn0pKFxkezJ9KShcZHsyfSkoXGR7Mn0pKFxkezJ9KVxzKFwrXGR7Mn0pLyk7DQogICAgc3RhcnQgPSBuZXcgRGF0ZShzdGFydFsxXSArICctJyArIHN0YXJ0WzJdICsgJy0nICsgc3RhcnRbM10gKyAnICcgKyBzdGFydFs0XSArICc6JyArIHN0YXJ0WzVdICsgJzonICsgc3RhcnRbNl0gKyAnIFVUQycgKyBzdGFydFs3XSkNCiAgICBzdG9wID0gbmV3IERhdGUoc3RvcFsxXSArICctJyArIHN0b3BbMl0gKyAnLScgKyBzdG9wWzNdICsgJyAnICsgc3RvcFs0XSArICc6JyArIHN0b3BbNV0gKyAnOicgKyBzdG9wWzZdICsgJyBVVEMnICsgc3RvcFs3XSkNCiAgICB1ZWJlcnNpY2h0LnB1c2goew0KICAgICAgICAiU2VuZGVyIjogcFsnJCddLmNoYW5uZWwucmVwbGFjZSgnLmRlJywnJyksDQogICAgICAgICJTdGFydCI6IHN0YXJ0LA0KICAgICAgICAiRW5kZSI6IHN0b3AsIA0KICAgICAgICAiQmVzY2hyZWlidW5nIjogcC5kZXNjWzBdWydfJ10sDQogICAgICAgICJCaWxkIjogcC5pY29uWzBdWyckJ10uc3JjLCANCiAgICAgICAgIlRpdGVsIjogcC50aXRsZVswXVsnXyddDQogICAgfSkNCn0pDQoNCi8vYWxzIFRhYmVsbGUgZsO8ciBWSVMgc3BlaWNoZXJuDQpzZXRTdGF0ZSgnMF91c2VyZGF0YS4wLlRpbWEnLCBKU09OLnN0cmluZ2lmeSh1ZWJlcnNpY2h0KSk7DQoNCi8vRmlsdGVybiBuYWNoIFNlbmRlciB1bmQgWmVpdA0KbGV0IGpldHp0ID0gdWViZXJzaWNodC5maWx0ZXIocCA9PiB7DQogICAgcmV0dXJuIHAuU2VuZGVyID09PSBTZW5kZXIucmVwbGFjZSgnLmRlJywnJykgJiYgcC5TdGFydCA8PSBub3cgJiYgcC5FbmRlID4gbm93Ow0KfSkNCmlmIChqZXR6dC5sZW5ndGggPiAwKQ0KICAgIHJldHVybiBqZXR6dFswXTsNCmVsc2UNCiAgICByZXR1cm4geyAiU2VuZGVyIjogbnVsbCwgIlN0YXJ0IjogbnVsbCwgIkVuZGUiOiBudWxsLCAiVGl0ZWwiOiAiS2VpbiBsYXVmZW5kZXMgUHJvZ3JhbW0gZ2VmdW5kZW4hIiB9DQoNCg==</field>
                                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                     </block>
                                     <block type="variables_set" id="VRvfLzS84=#:PDPbveDw" x="-688" y="513">
                                       <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                       <value name="VALUE">
                                         <block type="procedures_callcustomreturn" id="PQqreJ!}rt#BPi~E#k^F">
                                           <mutation name="parser">
                                             <arg name="Sender"></arg>
                                             <arg name="Datum"></arg>
                                           </mutation>
                                           <value name="ARG0">
                                             <block type="text" id="qr^7fW:^y{2nvKp[0E(I">
                                               <field name="TEXT">3sat</field>
                                             </block>
                                           </value>
                                           <value name="ARG1">
                                             <block type="time_get" id="XnksAB9aj1r3u~aB$;SZ">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                               <field name="OPTION">object</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="debug" id="v*60KZc^%8TejL%5EOKD" inline="true" disabled="true">
                                           <field name="Severity">log</field>
                                           <value name="TEXT">
                                             <shadow type="text" id="O(hrX9Bzoa8jvS;*uDu`">
                                               <field name="TEXT">test</field>
                                             </shadow>
                                             <block type="get_attr" id="w_5c2A7T*}?Ba8lc=)Fr">
                                               <value name="PATH">
                                                 <shadow type="text" id="*T-ot_9q`v)91_el,!Q{">
                                                   <field name="TEXT">Titel</field>
                                                 </shadow>
                                               </value>
                                               <value name="OBJECT">
                                                 <block type="variables_get" id="0ZvG8cm/kK^0viy3rjf^">
                                                   <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="debug" id="|^H{k(vCq(fppoQU5+ql" inline="true" disabled="true">
                                               <field name="Severity">log</field>
                                               <value name="TEXT">
                                                 <shadow type="text">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="get_attr" id="5GTv3TS!D;R^U,bqPxUF">
                                                   <value name="PATH">
                                                     <shadow type="text" id=":_w+iMPxfmuqgjYDnt4F">
                                                       <field name="TEXT">Start</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="OBJECT">
                                                     <block type="variables_get" id="J$F=MD*wg@ApV8X3/+|@">
                                                       <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="debug" id="$kcjevz!_:y@l8t~6eOS" inline="true" disabled="true">
                                                   <field name="Severity">log</field>
                                                   <value name="TEXT">
                                                     <shadow type="text">
                                                       <field name="TEXT">test</field>
                                                     </shadow>
                                                     <block type="get_attr" id="y.k2dG[Z~!8dFAYW)b/A">
                                                       <value name="PATH">
                                                         <shadow type="text" id=";44m%L8t^O,WW]lO?9nh">
                                                           <field name="TEXT">Ende</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="OBJECT">
                                                         <block type="variables_get" id=",6ocYSw|r@fvzTM!Q3[)">
                                                           <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="debug" id="l35?J_G*ZxEnW1-nYp~_" inline="true" disabled="true">
                                                       <field name="Severity">log</field>
                                                       <value name="TEXT">
                                                         <shadow type="text">
                                                           <field name="TEXT">test</field>
                                                         </shadow>
                                                         <block type="get_attr" id="qsx%a{Gh{[Wl:2q8M6`j">
                                                           <value name="PATH">
                                                             <shadow type="text" id="uEmGg,;`Hvg.).H7r~2w">
                                                               <field name="TEXT">Sender</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="OBJECT">
                                                             <block type="variables_get" id="Ey]wJHxbb9V:YeT(K*Zb">
                                                               <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <next>
                                                         <block type="debug" id="hL/5V*PXx{*UZ(lQmLNC" inline="true">
                                                           <field name="Severity">error</field>
                                                           <value name="TEXT">
                                                             <shadow type="text">
                                                               <field name="TEXT">test</field>
                                                             </shadow>
                                                             <block type="get_attr" id="9t~RXlM5trgA6:+Ix*2s">
                                                               <value name="PATH">
                                                                 <shadow type="text" id="wl~=eY+vzwZ7Rz*TYcH6">
                                                                   <field name="TEXT">Bild</field>
                                                                 </shadow>
                                                               </value>
                                                               <value name="OBJECT">
                                                                 <block type="variables_get" id="Nx#QGy0Peb:Wwd%p2yD_">
                                                                   <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <next>
                                                             <block type="debug" id="$h~Qjs|,jz|X%perIDw+" inline="true" disabled="true">
                                                               <field name="Severity">log</field>
                                                               <value name="TEXT">
                                                                 <shadow type="text">
                                                                   <field name="TEXT">test</field>
                                                                 </shadow>
                                                                 <block type="get_attr" id="M:$4G?n2Bbi#^#vP5YIG">
                                                                   <value name="PATH">
                                                                     <shadow type="text" id="+94+q2YiK+(V%g57r8MR">
                                                                       <field name="TEXT">Beschreibung</field>
                                                                     </shadow>
                                                                   </value>
                                                                   <value name="OBJECT">
                                                                     <block type="variables_get" id="Z9Klz%mT5AdnBE?Wc@oG">
                                                                       <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                     <block type="variables_set" id="JhGiCDiP%))kB**i45dI" disabled="true" x="-713" y="987">
                                       <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                       <value name="VALUE">
                                         <block type="procedures_callcustomreturn" id="HdO3%^21G};.gBF84dZm">
                                           <mutation name="parser">
                                             <arg name="Sender"></arg>
                                             <arg name="Datum"></arg>
                                           </mutation>
                                           <value name="ARG0">
                                             <block type="text" id="SFQYiA*Etj3*P+Oom?Mb">
                                               <field name="TEXT">3sat</field>
                                             </block>
                                           </value>
                                           <value name="ARG1">
                                             <block type="math_arithmetic" id="A/]2?hjl3C#S2(D([x:4">
                                               <field name="OP">ADD</field>
                                               <value name="A">
                                                 <shadow type="math_number" id="51JB`mc%HBtejDU]iV=(">
                                                   <field name="NUM">1</field>
                                                 </shadow>
                                                 <block type="convert_from_date" id="hSJISuB1X9:#]$r}}8ri">
                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                   <field name="OPTION">object</field>
                                                   <value name="VALUE">
                                                     <block type="get_attr" id="RSqKVn2cTjjs][;RVTRh">
                                                       <value name="PATH">
                                                         <shadow type="text" id="^QYL4q|,7RX@T:NE/IVy">
                                                           <field name="TEXT">Ende</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="OBJECT">
                                                         <block type="variables_get" id="_8E/+d@UbVrJt6a}1QH`">
                                                           <field name="VAR" id="/_EVt8i8cL:*ALcrdhfG">ergebnis</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="B">
                                                 <shadow type="math_number" id="VK;*grc,l/stb{#u+gMF">
                                                   <field name="NUM">1</field>
                                                 </shadow>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="variables_set" id="[zE_$ax,#;9JPZg^epT=" disabled="true">
                                           <field name="VAR" id="0d$,^d=DyR?A@dc^$2k{">liste</field>
                                           <value name="VALUE">
                                             <block type="convert_json2object" id="=NG=AS+^ao9R$ui:l!D{">
                                               <value name="VALUE">
                                                 <block type="get_value" id=",h=-dP8V]j{7N@}|5l};">
                                                   <field name="ATTR">val</field>
                                                   <field name="OID">0_userdata.0.Tima</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="controls_for" id="b?=qr!yRv^maLx3l,{#U" disabled="true">
                                               <field name="VAR" id="K,2TEeTH[~P0w=~$MuBY">i</field>
                                               <value name="FROM">
                                                 <shadow type="math_number" id="T4cAK#:`p$gXx%bhE#;.">
                                                   <field name="NUM">1</field>
                                                 </shadow>
                                               </value>
                                               <value name="TO">
                                                 <shadow type="math_number" id="#kk)QaM-cV*0nt3jOsF(">
                                                   <field name="NUM">10</field>
                                                 </shadow>
                                                 <block type="lists_length" id="(?[0hPgY24r8{%V1!kv=">
                                                   <value name="VALUE">
                                                     <block type="variables_get" id="YNKTx7Abm13thozR0iH]">
                                                       <field name="VAR" id="0d$,^d=DyR?A@dc^$2k{">liste</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="BY">
                                                 <shadow type="math_number" id="s92l69rZS*o+d2hZU-V_">
                                                   <field name="NUM">1</field>
                                                 </shadow>
                                               </value>
                                               <statement name="DO">
                                                 <block type="variables_set" id="AxPs$IKZWxd_{,+]%+w1">
                                                   <field name="VAR" id="%mKBe`ebTtbysu/M*J*3">obj</field>
                                                   <value name="VALUE">
                                                     <block type="lists_getIndex" id="FUL=Z{um:qCTw#He*V#A">
                                                       <mutation statement="false" at="true"></mutation>
                                                       <field name="MODE">GET</field>
                                                       <field name="WHERE">FROM_START</field>
                                                       <value name="VALUE">
                                                         <block type="variables_get" id="3r-^f+PTu_|T3D?pf=5j">
                                                           <field name="VAR" id="0d$,^d=DyR?A@dc^$2k{">liste</field>
                                                         </block>
                                                       </value>
                                                       <value name="AT">
                                                         <block type="variables_get" id="Z`#VG0:a~y|U$:seh2:x">
                                                           <field name="VAR" id="K,2TEeTH[~P0w=~$MuBY">i</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="debug" id="8Le[z~qykcl`7LX,5P=k">
                                                       <field name="Severity">error</field>
                                                       <value name="TEXT">
                                                         <shadow type="text" id=";8a~3L{-qW_o8`[F*`#Q">
                                                           <field name="TEXT">test</field>
                                                         </shadow>
                                                         <block type="get_attr" id="8-xanJ.a0r@?2EP2%pSJ">
                                                           <value name="PATH">
                                                             <shadow type="text" id="M+r-:[+r#v(jU]_lx^@j">
                                                               <field name="TEXT">Titel</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="OBJECT">
                                                             <block type="variables_get" id="k)CIG)uyctw6ukhDINfl">
                                                               <field name="VAR" id="%mKBe`ebTtbysu/M*J*3">obj</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </statement>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                     <block type="procedures_defnoreturn" id="_K1,e%A~,QHL7lR#;o,s" x="-887" y="2563">
                                       <field name="NAME">Trigger Sendungsende</field>
                                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                       <statement name="STACK">
                                         <block type="schedule_create" id="QGtmiElp64([(sHKXWv:">
                                           <field name="NAME">schedule1</field>
                                           <value name="SCHEDULE">
                                             <shadow type="field_cron" id="@/1k$CRLUHPtv##08jMX">
                                               <field name="CRON">* * * * *</field>
                                             </shadow>
                                             <block type="cron_builder" id="UY%@(09Qwv{vj!BPBrxs">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="true" as_line="false"></mutation>
                                               <field name="LINE">FALSE</field>
                                               <field name="WITH_SECONDS">TRUE</field>
                                               <value name="DOW">
                                                 <shadow type="text" id="[p7qcK,9R@Ie+gNx*HwP">
                                                   <field name="TEXT">*</field>
                                                 </shadow>
                                               </value>
                                               <value name="MONTHS">
                                                 <shadow type="text" id="c-E:pW=0e$hU=F$uxup:">
                                                   <field name="TEXT">*</field>
                                                 </shadow>
                                               </value>
                                               <value name="DAYS">
                                                 <shadow type="text" id="4W?UAkC.SA4ePGO-@6/X">
                                                   <field name="TEXT">*</field>
                                                 </shadow>
                                                 <block type="variables_get" id="E)=9Z`KP|*LsG#.^nL)9">
                                                   <field name="VAR" id="]BTNK|@|Qn4t?IQzR(sc">tag</field>
                                                 </block>
                                               </value>
                                               <value name="HOURS">
                                                 <shadow type="text" id="4*0xY*@8IHVnaYwUbc`|">
                                                   <field name="TEXT">*</field>
                                                 </shadow>
                                                 <block type="variables_get" id=":LG`=1zx[IbT.|,OJd0J">
                                                   <field name="VAR" id="C$xy/!eJr45/6sjkYui}">stunde</field>
                                                 </block>
                                               </value>
                                               <value name="MINUTES">
                                                 <shadow type="text" id="tMBjmn.$N60lMAdHZMH!">
                                                   <field name="TEXT">*</field>
                                                 </shadow>
                                                 <block type="variables_get" id="t#zVW!hY:_|G~%kD^59H">
                                                   <field name="VAR" id="5[]lC%HZ%ms68yMuwW!1">minute</field>
                                                 </block>
                                               </value>
                                               <value name="SECONDS">
                                                 <shadow type="text" id="~$$4kcM}|wtsJYVl6@?C">
                                                   <field name="TEXT">*</field>
                                                 </shadow>
                                                 <block type="variables_get" id="PB/+=Y%%w+r1_lSua1Ti">
                                                   <field name="VAR" id="4SkzLXPg%ikY[vz0m00?">Sekunde</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <statement name="STATEMENT">
                                             <block type="telegram" id=";A+/8EBF-8GChF`F:E.K">
                                               <field name="INSTANCE">.0</field>
                                               <field name="LOG"></field>
                                               <field name="SILENT">FALSE</field>
                                               <field name="PARSEMODE">default</field>
                                               <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                               <value name="MESSAGE">
                                                 <shadow type="text" id="iXqgP=p+slnKP,FFJ:[Q">
                                                   <field name="TEXT">ende</field>
                                                 </shadow>
                                               </value>
                                             </block>
                                           </statement>
                                         </block>
                                       </statement>
                                     </block>
                                    </xml> 
                                    

                                    https://we.tl/t-jR5Y8rTofH

                                    liv-in-sky 2 Replies Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky @David G. last edited by

                                      @david-g

                                      bin dem fehler auf der spur

                                      1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @David G. last edited by

                                        @david-g

                                        füge das mal in die function ein:

                                            start = new Date(start[1] + '-' + start[2] + '-' + start[3] + ' ' + start[4] + ':' + start[5] + ':' + start[6] + ' UTC' + start[7])
                                            stop = new Date(stop[1] + '-' + stop[2] + '-' + stop[3] + ' ' + stop[4] + ':' + stop[5] + ':' + stop[6] + ' UTC' + stop[7])
                                            let myIcon;
                                            !p.hasOwnProperty("icon") ? myIcon="" : myIcon=p.icon[0]['$']['src']
                                            uebersicht.push({
                                                "Sender": p['$'].channel.replace('.de',''),
                                                "Start": start,
                                                "Ende": stop, 
                                                "Beschreibung": p.desc[0]['_'],
                                                "Bild": myIcon,
                                                "Titel": p.title[0]['_']
                                            })
                                        })
                                        
                                        

                                        zeile 3
                                        zeile4
                                        und zeile 10 muss bei dir rein

                                        David G. 1 Reply Last reply Reply Quote 0
                                        • David G.
                                          David G. @liv-in-sky last edited by

                                          @liv-in-sky

                                          Jo, das klappt.
                                          Dank dir.

                                          Weiß noch nicht, wie die Tabelle aussehen wird.
                                          Deshalb man zur Vorsicht ^^.
                                          Bekommt man das Senderlogo auch raus?
                                          Das seht ja in einem anderen "Block" (ka wie man das nennt).

                                          liv-in-sky 2 Replies Last reply Reply Quote 0
                                          • liv-in-sky
                                            liv-in-sky @David G. last edited by

                                            @david-g

                                            ja - da müßte man mit einer anderen schleife draufkommen und das dann speichern in einem array- dann könnte man das gaze zusammensortieren - hängt davon ab, wie man das ganze dann als tabelle rausgibt

                                            David G. 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            796
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            2
                                            43
                                            1217
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo