Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Name zu Telefonnummer pharsen

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    Name zu Telefonnummer pharsen

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

      @david-g und was steht dann im Quelltext?

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

        @homoran

        Beim genannten Beispiel
        telefonbuch.txt

        Leider zu lang für hier.

        EDIT
        Die Treffer fangen immer mit:

        <div class="name" title="Deutsche Telekom">
        

        an. Auch wenn es mehrere gibt.

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

          Mit dem Parser Adapter bekomme ich den Namen jetzt ausgelesen.

          Nur bringt mir das ja leider nichts, da ich dort nur eine feste URL eingeben kann und der Adapter keine URL per sendTo oder ähnlich empfangen kann.

          Bekomme ich sowas in Blockly nachgebaut?

          P. S.
          Wäre eine nette Funktion für den TR64 Adapter.
          In den Nutzungsbedinungen von Das Telefonbuch finde ich nichts was das verbietet.

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

            @david-g

            Klar,

            hab das mal eine Seitenerweiterung für das Schweizer Telefonbuch mit Spidermonkey gemacht (inklusive Download)

            Kann am Wochenende mal reinschauen

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

              @oliverio

              Habe es mit ChatGPT bis hierhin geschafft.

              tel.png
              (Im Log im Bild sieht man einmal eine gefundene Nummer und danach eine nicht gefundene Nummer)

              // Erfordert die 'axios' Bibliothek, die du installieren musst: npm install axios
              const axios = require('axios');
              const cheerio = require('cheerio');
              var link;
              
              // URL der Webseite
              const url = link;
              
              
              // HTTP-Anfrage an die Webseite senden
              axios.get(url)
               .then(response => {
                 // Den HTML-Inhalt der Antwort erhalten
                 const html = response.data;
              
                 // Die HTML-Inhalte mit Cheerio parsen
                 const $ = cheerio.load(html);
              
                 // Das gewünschte Element mit der Klasse 'name' auswählen und den Titelwert auslesen
                 const title = $('.name').attr('title');
              
                 // Das Ergebnis in der Variable "result" speichern
                 const result = title;
              
                 // Den Titelwert ausgeben
                 console.log(result);
               })
               .catch(error => {
                 console.error('Fehler beim Abrufen der Seite:', error);
               });
              
              

              Schaffe es aber nicht, das Skript so anzupassen, dass ich eine Funktion mit Ergebnis nehmen kann. Wo dann im Ergebnis entweder der Name oder ein Fehler steht.

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

                @david-g
                Blockly ist nicht so meins.
                Das Skript sieht schon mal gut aus mit axios und cheerio.
                Wenn du das kopierst und als neues JavaScript Skript einfügst und dann mit setState den Inhalt von result einfach in einen DatenPunkt schreiben

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

                  @oliverio

                  In das JS muss irgendwo dann ein return rein.

                  Wenn ich eine leere Funktion mit Ergebnis in Blockly anlege steht da

                  return 0;
                  

                  drinnen und er gibt eine 0 aus.
                  Darein würde ich gerne die beiden Meldungen haben, die jetzt ja an 2 Stellen in das Log geschrieben werden).

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    ticaki Developer @David G. last edited by ticaki

                    @david-g

                    // Erfordert die 'axios' Bibliothek, die du installieren musst: npm install axios
                    const axios = require('axios');
                    
                    // axios soll bei keiner Antwort nach 3 Sekunden einen Fehler auswerfen und nicht ewig weiter warten 
                    axios.defaults.timeout = 3000
                    
                    const cheerio = require('cheerio');
                    
                    //der sollte eigentlich im Funktionsaufruf stehen das link in deinem Blockly
                    // let link; 
                    let result = ''
                    // URL der Webseite
                    const url = link;
                    
                    try {
                        // HTTP-Anfrage an die Webseite senden
                        const response = await axios.get(url)
                        // Den HTML-Inhalt der Antwort erhalten
                        const html = response.data;
                    
                        // Die HTML-Inhalte mit Cheerio parsen
                        const $ = cheerio.load(html);
                        // Das gewünschte Element mit der Klasse 'name' auswählen und den Titelwert auslesen
                        const title = $('.name').attr('title');
                    
                        // Das Ergebnis in der Variable "result" speichern
                        result = title;
                    
                        // Den Titelwert ausgeben
                        log(result);
                    } catch(error) { 
                        result = `Fehler beim Abrufen der Seite: ${error}`
                        log(result, 'error'); // hoffe ich hab nicht nachricht und type vertauscht :)
                    };
                    return result
                    
                    David G. 1 Reply Last reply Reply Quote 0
                    • David G.
                      David G. @ticaki last edited by

                      @ticaki

                      Danke,

                      bei einem Treffer klappt es.
                      Bei einer unbekannten Nummer kommt unter result jetzt (debugbaustein als warn)

                      12:29:54.417	warn	javascript.0 (20690) script.js.Eigene_Scripte.Tests.Tel_parser: Fehler beim Abrufen der Seite: AxiosError: Request failed with status code 410
                      

                      Der Ursprungscode hat da ja eine schöne Meldung ausgegeben.

                      T OliverIO 2 Replies Last reply Reply Quote 0
                      • T
                        ticaki Developer @David G. last edited by

                        @david-g

                        410 Die angeforderte Ressource wird nicht länger bereitgestellt und wurde dauerhaft entfernt.
                        

                        https://de.wikipedia.org/wiki/HTTP-Statuscode

                        btw. du solltest das nicht laufend prüfen, irgendwann kommst du auf ne banliste wegen bot 🙂

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

                          @david-g sagte

                          Code 410

                          Wenn du die selbe Telefonnummer über den Browser anfragst, was kommt da für eine Meldung?

                          Du solltest dem axios auf jeden Fall einen User-Agent header eines browsers mitgeben,
                          Sonst wird die abfrage leicht identifiziert das sie von einem Skript kommt.
                          Dann könnte die ip recht schnell gesperrt werden.
                          Auch würde ich die Ergebnisse cachen und die Anzahl der Abfragen pro Tag begrenzen.

                          Ggfs mal im Browser nachschauen was da im Header noch mitgeliefert wird.;

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

                            @ticaki sagte in Name zu Telefonnummer pharsen:

                            @david-g

                            410 Die angeforderte Ressource wird nicht länger bereitgestellt und wurde dauerhaft entfernt.
                            

                            https://de.wikipedia.org/wiki/HTTP-Statuscode

                            btw. du solltest das nicht laufend prüfen, irgendwann kommst du auf ne banliste wegen bot 🙂

                            So oft werde ich ja nicht angerufen ^^.

                            @oliverio sagte in Name zu Telefonnummer pharsen:

                            Du solltest dem axios auf jeden Fall einen User-Agent header eines browsers mitgeben,
                            Sonst wird die abfrage leicht identifiziert das sie von einem Skript kommt.
                            Dann könnte die ip recht schnell gesperrt werden.
                            Auch würde ich die Ergebnisse cachen und die Anzahl der Abfragen pro Tag begrenzen.
                            Ggfs mal im Browser nachschauen was da im Header noch mitgeliefert wird.;

                            Da bin ich überfragt.
                            Weist du, was ich noch einfügen muss?

                            Vom zusammengooglen würde ich sagen, dass ich das noch einbauen muss:

                            const userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) ';
                            
                            const headers = {
                              'User-Agent': userAgent,
                              // Weitere benutzerdefinierte Header, falls erforderlich
                            };
                            

                            Passt das so?
                            Nicht, dass das unplausibel ist und man noch schneller geblockt wird.

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

                              @david-g

                              Du schaust mit f12 in die Developer Tools deines Browsers.
                              Dann in den Netzwerk tab
                              Dann machst du irgendeine Web Abfrage
                              Und schaust dir irgend einen request an
                              Da stehen dann die request und die respond headers irgendwo
                              Bei request header müsste dann einer mit dem Namen user-agent sein.
                              Den kopierst du und spendest ihn mit axios bei deiner Anfrage mit.
                              Wie, das kann dir chatgpt oder die Doku von axios sagen

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

                                @oliverio

                                Da haben wir zeitgleich geschrieben.
                                Hab meinen letzten Post ergänzt.

                                Lässt das?

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

                                  @david-g
                                  ?

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

                                    @oliverio
                                    Passt das? (kleine Handytastatur)

                                    @david-g sagte in Name zu Telefonnummer pharsen:

                                    Vom zusammengooglen würde ich sagen, dass ich das noch einbauen muss:

                                    const userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) '; const headers = { 'User-Agent': userAgent, // Weitere benutzerdefinierte Header, falls erforderlich };

                                    Passt das so?
                                    Nicht, dass das unplausibel ist und man noch schneller geblockt wird.

                                    EDIT
                                    Und hier muss wohl noch was angepasst werden:

                                    const response = await axios.get(url, { headers });
                                    
                                    OliverIO 1 Reply Last reply Reply Quote 0
                                    • David G.
                                      David G. last edited by David G.

                                      Hab das Skript jetzt so weit fertig.

                                      Bei einem Anruf wird die Telefonnummer vom TR64 Adapter genommen und mir das Ergebnis per Telegramm gesendet.

                                      Falls eine Durchwahl anruft, die nicht im Telefonbuch steht, wird versucht ein 1000er, 100er oder 10er Rufnummernblock aufzulösen und mit der -0 zu ersetzen.
                                      So bekommt man in vielen Fällen zumindest die Nummer der Zentrale aufgelöst.

                                      Hab das heute bestimmt schon 30x laufen lassen und wurde noch nicht geblockt.

                                      Screenshot_20230902_101401_Chrome.jpg

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                       <variables>
                                         <variable id="J55+e5#Rk1jjgZgkGUoo">Telefonnummer</variable>
                                         <variable id="1+}aTgPXrN+Y7GnXo*@1">Fehler</variable>
                                         <variable id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</variable>
                                         <variable id="tP|LcMf-I@-TA@B5Bf^h">Ursprungsnummer</variable>
                                         <variable id="b7]IRV?y6uyLj![kND(:">Ergebnis</variable>
                                       </variables>
                                       <block type="procedures_defcustomreturn" id="PuGxGLZ=_a(z.JdVyn29" x="138" y="213">
                                         <mutation statements="false">
                                           <arg name="Telefonnummer" varid="J55+e5#Rk1jjgZgkGUoo"></arg>
                                           <arg name="Fehler" varid="1+}aTgPXrN+Y7GnXo*@1"></arg>
                                         </mutation>
                                         <field name="NAME">name_aufloesen</field>
                                         <field name="SCRIPT">Ly8gRXJmb3JkZXJ0IGRpZSBheGlvcy1CaWJsaW90aGVrDQpjb25zdCBheGlvcyA9IHJlcXVpcmUoJ2F4aW9zJyk7DQogDQovLyBheGlvcyBzb2xsIGJlaSBrZWluZXIgQW50d29ydCBuYWNoIDMgU2VrdW5kZW4gZWluZW4gRmVobGVyIGF1c3dlcmZlbiB1bmQgbmljaHQgZXdpZyB3ZWl0ZXIgd2FydGVuIA0KYXhpb3MuZGVmYXVsdHMudGltZW91dCA9IDMwMDANCi8vIFVzZXJnYW50IGZ1ZXIgRGllIFdlYmFuZnJhZ2UgZmVzdGxlZ2VuDQpjb25zdCB1c2VyQWdlbnQgPSAnTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzU4LjAuMzAyOS4xMTAgU2FmYXJpLzUzNy4zNic7DQoNCmNvbnN0IGhlYWRlcnMgPSB7DQogICdVc2VyLUFnZW50JzogdXNlckFnZW50LA0KICAvLyBXZWl0ZXJlIGJlbnV0emVyZGVmaW5pZXJ0ZSBIZWFkZXIsIGZhbGxzIGVyZm9yZGVybGljaA0KfTsNCg0KIC8vIEVyZm9yZGVydCBkaWUgY2hlZXJpby1CaWJsaW90aGVrDQpjb25zdCBjaGVlcmlvID0gcmVxdWlyZSgnY2hlZXJpbycpOw0KIA0KbGV0IHJlc3VsdCA9ICcnDQovLyBVUkwgZGVyIFdlYnNlaXRlDQpjb25zdCBuciA9IFRlbGVmb25udW1tZXI7DQpjb25zdCBsaW5rcHJlZml4ID0gJ2h0dHBzOi8vd3d3LmRhc3RlbGVmb25idWNoLmRlL1IlQzMlQkNja3clQzMlQTRydHMtU3VjaGUvJw0KY29uc3QgdXJsID0gbGlua3ByZWZpeCArIG5yOw0KIA0KdHJ5IHsNCiAgICAvLyBIVFRQLUFuZnJhZ2UgYW4gZGllIFdlYnNlaXRlIHNlbmRlbg0KICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MuZ2V0KHVybCwgeyBoZWFkZXJzIH0pOw0KICAgIC8vIERlbiBIVE1MLUluaGFsdCBkZXIgQW50d29ydCBlcmhhbHRlbg0KICAgIGNvbnN0IGh0bWwgPSByZXNwb25zZS5kYXRhOw0KIA0KICAgIC8vIERpZSBIVE1MLUluaGFsdGUgbWl0IENoZWVyaW8gcGFyc2VuDQogICAgY29uc3QgJCA9IGNoZWVyaW8ubG9hZChodG1sKTsNCiAgICAvLyBEYXMgZ2V3w7xuc2NodGUgRWxlbWVudCBtaXQgZGVyIEtsYXNzZSAnbmFtZScgYXVzd8OkaGxlbiB1bmQgZGVuIFRpdGVsd2VydCBhdXNsZXNlbg0KICAgIGNvbnN0IHRpdGxlID0gJCgnLm5hbWUnKS5hdHRyKCd0aXRsZScpOw0KIA0KICAgIC8vIERhcyBFcmdlYm5pcyBpbiBkZXIgVmFyaWFibGUgInJlc3VsdCIgc3BlaWNoZXJuDQogICAgcmVzdWx0ID0gdGl0bGU7DQogDQogICAgLy8gRGVuIFRpdGVsd2VydCBhdXNnZWJlbg0KICAgIGxvZyhyZXN1bHQpOw0KfSBjYXRjaChlcnJvcikgeyANCiAgICByZXN1bHQgPSBGZWhsZXI7DQoNCn07DQpyZXR1cm4gcmVzdWx0</field>
                                         <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                       </block>
                                       <block type="variables_set" id="qZeU/eSym,2V/}/GMR92" x="138" y="263">
                                         <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                         <value name="VALUE">
                                           <block type="text" id="E^/wPJqz@8M[44W;T/xj">
                                             <field name="TEXT">Nummer kann nicht aufgelöst werden.</field>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="on" id="Xv{H)%Nvl-_Nh-0IyYXp">
                                             <field name="OID">tr-064.0.callmonitor.inbound.timestamp</field>
                                             <field name="CONDITION">any</field>
                                             <field name="ACK_CONDITION"></field>
                                             <statement name="STATEMENT">
                                               <block type="variables_set" id="Sv=zV=(9:j76J(S|xp_8">
                                                 <field name="VAR" id="tP|LcMf-I@-TA@B5Bf^h">Ursprungsnummer</field>
                                                 <value name="VALUE">
                                                   <block type="get_value" id="|/2-uZV-eh}e[TnIRg@3">
                                                     <field name="ATTR">val</field>
                                                     <field name="OID">tr-064.0.callmonitor.inbound.caller</field>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="variables_set" id="aBYpOe/Y@0(w]ZkPv_ak">
                                                     <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                     <value name="VALUE">
                                                       <block type="procedures_callcustomreturn" id="HtzRs`HGBbed[dK6xkAv">
                                                         <mutation name="name_aufloesen">
                                                           <arg name="Telefonnummer"></arg>
                                                           <arg name="Fehler"></arg>
                                                         </mutation>
                                                         <value name="ARG0">
                                                           <block type="variables_get" id="`cR)?;mG~E4`Y.@.u:+b">
                                                             <field name="VAR" id="tP|LcMf-I@-TA@B5Bf^h">Ursprungsnummer</field>
                                                           </block>
                                                         </value>
                                                         <value name="ARG1">
                                                           <block type="variables_get" id="ZMK2e)}1UF7!3,D)d#!y">
                                                             <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="controls_if" id="uQ?Cv[pa9gp(Wb.ZjZXW">
                                                         <value name="IF0">
                                                           <block type="logic_compare" id="$^lNV6zho8^Cf[j1W]]D">
                                                             <field name="OP">EQ</field>
                                                             <value name="A">
                                                               <block type="variables_get" id="d5+~3|PQ,PhdD?ihh!N]">
                                                                 <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                               </block>
                                                             </value>
                                                             <value name="B">
                                                               <block type="variables_get" id="RR[4^U~Tw[(?YCevxupG">
                                                                 <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <statement name="DO0">
                                                           <block type="variables_set" id="vL0F+V)Qf8@qU[m-7Z_u">
                                                             <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                             <value name="VALUE">
                                                               <block type="procedures_callcustomreturn" id="+zGg22KeXxQ(e6!{E@(d">
                                                                 <mutation name="name_aufloesen">
                                                                   <arg name="Telefonnummer"></arg>
                                                                   <arg name="Fehler"></arg>
                                                                 </mutation>
                                                                 <value name="ARG0">
                                                                   <block type="text_join" id="OhK;TQs?tI2%+Sw09#-}">
                                                                     <mutation items="2"></mutation>
                                                                     <value name="ADD0">
                                                                       <block type="text_getSubstring" id="c~!Im%O-])HX$IvOKzK]">
                                                                         <mutation at1="true" at2="true"></mutation>
                                                                         <field name="WHERE1">FROM_START</field>
                                                                         <field name="WHERE2">FROM_START</field>
                                                                         <value name="STRING">
                                                                           <block type="variables_get" id="3:6Bhc}e=4wG5}D@5D#V">
                                                                             <field name="VAR" id="tP|LcMf-I@-TA@B5Bf^h">Ursprungsnummer</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="AT1">
                                                                           <block type="math_number" id="Epnj`xb0Rv+!+!/8/91+">
                                                                             <field name="NUM">1</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="AT2">
                                                                           <block type="math_number" id="7I3K${1ERMPBG5)KYEzb">
                                                                             <field name="NUM">-2</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD1">
                                                                       <block type="math_number" id="z3@%HDR+|Gy=}qq.oalL">
                                                                         <field name="NUM">0</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <value name="ARG1">
                                                                   <block type="variables_get" id="QlffETF:^clJ*WI-2#n6">
                                                                     <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <next>
                                                               <block type="controls_if" id="?TMWhGl@LTh=dmYUI0EG">
                                                                 <value name="IF0">
                                                                   <block type="logic_compare" id="SuK#j3s:f?r^|8@^t?yZ">
                                                                     <field name="OP">EQ</field>
                                                                     <value name="A">
                                                                       <block type="variables_get" id="[yEC{}4/d^qPR.+9HVlL">
                                                                         <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="variables_get" id="wCdH5p|B1drd;%Xb6x1`">
                                                                         <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO0">
                                                                   <block type="variables_set" id="DQ27B:|BSYLxCyPff-!X">
                                                                     <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                                     <value name="VALUE">
                                                                       <block type="procedures_callcustomreturn" id=",Lv`sNVcP@rZ*opD3j:S">
                                                                         <mutation name="name_aufloesen">
                                                                           <arg name="Telefonnummer"></arg>
                                                                           <arg name="Fehler"></arg>
                                                                         </mutation>
                                                                         <value name="ARG0">
                                                                           <block type="text_join" id="*TbgmhdXJmEB*m^/z?6f">
                                                                             <mutation items="2"></mutation>
                                                                             <value name="ADD0">
                                                                               <block type="text_getSubstring" id="k*;MUVHM0s-dQg;2}4P7">
                                                                                 <mutation at1="true" at2="true"></mutation>
                                                                                 <field name="WHERE1">FROM_START</field>
                                                                                 <field name="WHERE2">FROM_START</field>
                                                                                 <value name="STRING">
                                                                                   <block type="variables_get" id="s63aw=l;mAGYCB`(!.ct">
                                                                                     <field name="VAR" id="tP|LcMf-I@-TA@B5Bf^h">Ursprungsnummer</field>
                                                                                   </block>
                                                                                 </value>
                                                                                 <value name="AT1">
                                                                                   <block type="math_number" id="m=2!e(?;/u0P^*0YGt35">
                                                                                     <field name="NUM">1</field>
                                                                                   </block>
                                                                                 </value>
                                                                                 <value name="AT2">
                                                                                   <block type="math_number" id="l-+uYj.(e/G+_gfHY_3E">
                                                                                     <field name="NUM">-3</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ADD1">
                                                                               <block type="math_number" id="me(uy)[;Jm|wO^fK*(j5">
                                                                                 <field name="NUM">0</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ARG1">
                                                                           <block type="variables_get" id="ul?lfeh5e5gIbW6vRwL#">
                                                                             <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <next>
                                                                       <block type="controls_if" id="quQ}V}P)s9TYqml6q3dm">
                                                                         <value name="IF0">
                                                                           <block type="logic_compare" id="{ypl)IPiz`BQ3a,~sxw|">
                                                                             <field name="OP">EQ</field>
                                                                             <value name="A">
                                                                               <block type="variables_get" id="!N;VgE4=Q%P$zUC$Sb8|">
                                                                                 <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="B">
                                                                               <block type="variables_get" id="V/o;IqhJ0790dw]Uu~-P">
                                                                                 <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <statement name="DO0">
                                                                           <block type="variables_set" id="S}gQ7.#$IIAq}P0mW]Au">
                                                                             <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                                             <value name="VALUE">
                                                                               <block type="procedures_callcustomreturn" id="cV-{tf9laRJE4lBX--%j">
                                                                                 <mutation name="name_aufloesen">
                                                                                   <arg name="Telefonnummer"></arg>
                                                                                   <arg name="Fehler"></arg>
                                                                                 </mutation>
                                                                                 <value name="ARG0">
                                                                                   <block type="text_join" id="b|~G~wF+a(T[@;4ub[OJ">
                                                                                     <mutation items="2"></mutation>
                                                                                     <value name="ADD0">
                                                                                       <block type="text_getSubstring" id="Dck*W@:C+Cl{sb6{Qd5;">
                                                                                         <mutation at1="true" at2="true"></mutation>
                                                                                         <field name="WHERE1">FROM_START</field>
                                                                                         <field name="WHERE2">FROM_START</field>
                                                                                         <value name="STRING">
                                                                                           <block type="variables_get" id="~42rXq-_HwtO?HDctGY5">
                                                                                             <field name="VAR" id="tP|LcMf-I@-TA@B5Bf^h">Ursprungsnummer</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="AT1">
                                                                                           <block type="math_number" id="$Sy^4GJVDg5@m764R*-#">
                                                                                             <field name="NUM">1</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="AT2">
                                                                                           <block type="math_number" id=";Na{jk%BYIWHWY,W8@K4">
                                                                                             <field name="NUM">-4</field>
                                                                                           </block>
                                                                                         </value>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD1">
                                                                                       <block type="math_number" id="]v%B9ft%e#dq32#q`9)x">
                                                                                         <field name="NUM">0</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                                 <value name="ARG1">
                                                                                   <block type="variables_get" id="Y]%mr=$G1B1IzKB/9HXB">
                                                                                     <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <next>
                                                                               <block type="controls_if" id="DO?`ySv9-x!=QH`65ww*">
                                                                                 <value name="IF0">
                                                                                   <block type="logic_compare" id="PdJe:e+7MgL1oxHmec/6">
                                                                                     <field name="OP">EQ</field>
                                                                                     <value name="A">
                                                                                       <block type="variables_get" id="$Im#!]YW8ohnG[*7XY*z">
                                                                                         <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="B">
                                                                                       <block type="variables_get" id="]tPlcJQvW-:#_Xs[UTE@">
                                                                                         <field name="VAR" id="eS7Wy[nm^,,qh:kEi-*B">Fehlermeldung</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                                 <statement name="DO0">
                                                                                   <block type="variables_set" id="#lPW;cMcS*PI~ykpr)3v">
                                                                                     <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                                                     <value name="VALUE">
                                                                                       <block type="text_join" id="k)#Nfj-F7MIJ|`b~s^rt">
                                                                                         <mutation items="3"></mutation>
                                                                                         <value name="ADD0">
                                                                                           <block type="variables_get" id="C!z8D?i,w?z?$gbhmPqZ">
                                                                                             <field name="VAR" id="tP|LcMf-I@-TA@B5Bf^h">Ursprungsnummer</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD1">
                                                                                           <block type="text_newline" id="hmA7gnlC/jW@)i8_n:AP">
                                                                                             <field name="Type">\n</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD2">
                                                                                           <block type="variables_get" id="|/h[/pfy*PZ7a~3r*|em">
                                                                                             <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                                                           </block>
                                                                                         </value>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </statement>
                                                                               </block>
                                                                             </next>
                                                                           </block>
                                                                         </statement>
                                                                       </block>
                                                                     </next>
                                                                   </block>
                                                                 </statement>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </statement>
                                                         <next>
                                                           <block type="telegram" id=",)m~a8ee(xmd$~Km3z8a">
                                                             <field name="INSTANCE">.0</field>
                                                             <field name="LOG"></field>
                                                             <field name="SILENT">FALSE</field>
                                                             <field name="PARSEMODE">default</field>
                                                             <field name="ESCAPING">FALSE</field>
                                                             <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                                             <value name="MESSAGE">
                                                               <shadow type="text" id="b}0y=T$uDzZ3%%Ru,.ZB">
                                                                 <field name="TEXT">text</field>
                                                               </shadow>
                                                               <block type="variables_get" id="3?I/hwX?0N#Me8xY?efs">
                                                                 <field name="VAR" id="b7]IRV?y6uyLj![kND(:">Ergebnis</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </statement>
                                           </block>
                                         </next>
                                       </block>
                                      </xml>
                                      

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

                                        @david-g
                                        Er sieht ein wenig kurz aus.
                                        Beim iPad sieht er so aus

                                        Mozilla/5.0 (iPad; CPU OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/116.0.5845.118 Mobile/15E148 Safari/604.1

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

                                          @oliverio

                                          Ja, hab ihn zwischenzeitlich korrigiert:

                                          const userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36';
                                          

                                          Ist aber ein Beispiel was ich so online gefunden habe.

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          1.0k
                                          Online

                                          32.1k
                                          Users

                                          80.7k
                                          Topics

                                          1.3m
                                          Posts

                                          4
                                          20
                                          509
                                          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