Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Gelöst Blockly] Javascript Adapter hängt sich bei Skript auf

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Gelöst Blockly] Javascript Adapter hängt sich bei Skript auf

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

      Da ist das Problem:

      .on("error", function () {console.error(e);});
      

      e ist hier nicht definiert.

      Ist dein JS-Adapter aktuell? Ich dachte das Problem wäre bereits behoben.

      1 Reply Last reply Reply Quote 0
      • S
        Stefan1984 last edited by

        @Dutchman:

        @Stefan

        Ich habe da eine Vermutung, nämlich das die url nicht erreichbar ist und dadurch die Instanz crasht.

        In javascript könnte man das mit einen try/Catch abfangen.

        Poste Mal bitte den Code der durch dieses blockly generiert wird `

        Da ist er:

        ! ````
        // Bewegung erkennen
        on({id: 'hm-rpc.0.LEQ023XXXX.1.MOTION', change: "any"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        // URL Befehl senden
        try {
        require("request")('http://192.168.178.29:50000/tasker=Einschalten').on("error", function () {console.error(e);});
        } catch (e) { console.error(e); }
        });

        
        Javascript Adapter läuft mit Version 3.5.1, ist also leider aktuell.
        
        ****"e ist hier nicht definiert."**** Das passt also auch bei mir.
        
        Jemand eine Idee, wie ich das umgehen kann?
        
        Grüße,
        
        Stefan
        1 Reply Last reply Reply Quote 0
        • Dutchman
          Dutchman Developer Most Active Administrators last edited by

          Probier Mal eine Variable die e heißt im Script ein zu führen üppigen, der Fehler selber muss im Adapter gefixed werden, zur Erklärung:

          Die Funktion try/Catch mit dem (e) tritt auf wenn irgendwas schief geht mir den http Befehl und sollte Dan einen Absturz des Adapters vermeiden ( try / cach = versuche und fange fehler ab wen einer auftritt) durch die fehlende definition sorgt er jetzt für einen Absturz

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

          Send from mobile device

          Das schöne ios hat Auto Korrektur zum k****

          Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

          1 Reply Last reply Reply Quote 0
          • S
            Stefan1984 last edited by

            @Dutchman:

            Probier Mal eine Variable die e heißt im Script ein zu führen üppigen, der Fehler selber muss im Adapter gefixed werden, `

            Meinst Du so?

            2044_blockly.jpg

            1 Reply Last reply Reply Quote 0
            • Dutchman
              Dutchman Developer Most Active Administrators last edited by

              Nope, nicht als object sondern Variable 😉

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

              Send from mobile device

              Das schöne ios hat Auto Korrektur zum k****

              Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

              1 Reply Last reply Reply Quote 0
              • S
                Stefan1984 last edited by

                @Dutchman:

                Nope, nicht als object sondern Variable 😉 `

                So? Stehe wahrscheinlich auf dem Schlauch.
                2044_bildschirmfoto_2017-12-20_um_22.10.50.png

                Hier noch der Code zur einfacheren Hilfe. 🙂

                ! var e;
                ! // Bewegung erkennen
                ! on({id: 'hm-rpc.0.LEQ023XXXX.1.MOTION', change: "any"}, function (obj) {
                ! var value = obj.state.val;
                ! var oldValue = obj.oldState.val;
                ! // URL Befehl senden
                ! try {
                ! require("request")('http://192.168.178.29:50000/tasker=Einschalten').on("error", function () {console.error(e);});
                ! } catch (e) { console.error(e); }
                ! e = 0;
                ! });
                ! //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbW1lbnQlMjIlMjBpZCUzRCUyMnklNDA0KU8wQ0YlMjUlN0N6KEolN0J5JTNBJTdDdCg2JTIyJTIweCUzRCUyMi0zMTIlMjIlMjB5JTNEJTIyLTIzNyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTU1FTlQlMjIlM0VCZXdlZ3VuZyUyMGVya2VubmVuJTNDJTJGZmllbGQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjJ5Z0xvLkoufmIlNDAyJTJCalJydVItTEYlMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFYW55JTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQwJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyRCUyQyU0MFolNUQlM0YlN0QlN0JqJTNBJTdEeSU1QktfQWIzTXAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VobS1ycGMuMC5MRVEwMjM5NzEwLjEuTU9USU9OJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb21tZW50JTIyJTIwaWQlM0QlMjIlMkIlNURwKCUzRigyJTVEbktKJTIzY3d1JTYwUiklN0NRJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09NTUVOVCUyMiUzRVVSTCUyMEJlZmVobCUyMHNlbmRlbiUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnJlcXVlc3QlMjIlMjBpZCUzRCUyMmklNjAlM0FtRyU1QmdTMUUqVnNXLipySkE1JTIyJTNFJTNDbXV0YXRpb24lMjB3aXRoX3N0YXRlbWVudCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX1NUQVRFTUVOVCUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJMT0clMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlVSTCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJ6QXpqUSU0MCUyRiUyQjAlNUVXcCUyQiU3Q3olMkNjdChjJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRWh0dHAlM0ElMkYlMkYxOTIuMTY4LjE3OC4yOSUzQTUwMDAwJTJGdGFza2VyJTNERWluc2NoYWx0ZW4lM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMnVST0ozRyU3QlFsUy0lNDBqbjlPc3cqWSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUzRWUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ4bWwlM0U=

                Danke.

                1 Reply Last reply Reply Quote 0
                • Dutchman
                  Dutchman Developer Most Active Administrators last edited by

                  Genau! Hänge Aber bitte noch war das dran zB Textblock mit irgendwas drin das sollte dann erstmal Abhilfe schaffen

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

                  Send from mobile device

                  Das schöne ios hat Auto Korrektur zum k****

                  Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

                  1 Reply Last reply Reply Quote 0
                  • Bluefox
                    Bluefox last edited by

                    @Stefan1984:

                    @Dutchman:

                    @Stefan

                    Ich habe da eine Vermutung, nämlich das die url nicht erreichbar ist und dadurch die Instanz crasht.

                    In javascript könnte man das mit einen try/Catch abfangen.

                    Poste Mal bitte den Code der durch dieses blockly generiert wird `

                    Da ist er:

                    ! ````
                    // Bewegung erkennen
                    on({id: 'hm-rpc.0.LEQ023XXXX.1.MOTION', change: "any"}, function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    // URL Befehl senden
                    try {
                    require("request")('http://192.168.178.29:50000/tasker=Einschalten').on("error", function () {console.error(e);});
                    } catch (e) { console.error(e); }
                    });

                    
                    Javascript Adapter läuft mit Version 3.5.1, ist also leider aktuell.
                    
                    ****"e ist hier nicht definiert."**** Das passt also auch bei mir.
                    
                    Jemand eine Idee, wie ich das umgehen kann?
                    
                    Grüße,
                    
                    Stefan `  
                    

                    Also 3.5.1 hat den fix. Man muss nur dieses Skript noch mal von Blockly generieren lassen.

                    An dem Skrip was klein ändern und speichern. Dann soll es gehen.

                    1 Reply Last reply Reply Quote 0
                    • S
                      Stefan1984 last edited by

                      Dann hab ich es jetzt. :lol:

                      2044_bildschirmfoto_2017-12-20_um_22.15.25.png

                      Dankeschön. Werde testen.

                      Grüße,

                      Stefan

                      1 Reply Last reply Reply Quote 0
                      • Bluefox
                        Bluefox last edited by

                        Vielleicht bevor dann````
                        iobroker u javascirpt

                        1 Reply Last reply Reply Quote 0
                        • S
                          Stefan1984 last edited by

                          @Bluefox:

                          Also 3.5.1 hat den fix. Man muss nur dieses Skript noch mal von Blockly generieren lassen.

                          An dem Skrip was klein ändern und speichern. Dann soll es gehen. `

                          Was kleines ändern und speichern? Probiere ich auch gern aus.

                          Wahrscheinlich hilft auch eine Neuanlage des Skripts?

                          Grüße,

                          Stefan

                          1 Reply Last reply Reply Quote 0
                          • Dutchman
                            Dutchman Developer Most Active Administrators last edited by

                            hat sich das problem jetzt damit erledigt Stefan ?

                            1 Reply Last reply Reply Quote 0
                            • S
                              Stefan1984 last edited by

                              Bis jetzt ist es nicht wieder aufgetreten, habe das Problem aber noch nichts of gelöst gesetzt, da es sonst auch nur sporadisch auftrat. Ich möchte gern noch 1-2 Tage testen.

                              Ich habe im ersten Step das aktive Skript geändert, damit die Änderungen der neuen Version übernommen werden. Die von Dir empfohlene Variante ab ich als Duplikat gespeichert und setze es aktiv, wenn die erste Variante nicht funktioniert.

                              Grüße,

                              Stefan

                              Gesendet von iPhone mit Tapatalk

                              1 Reply Last reply Reply Quote 0
                              • S
                                Stefan1984 last edited by

                                Hallo zusammen.

                                Nach einem ausgiebigen Test kann ich den Thread nun auf gelöst setzen.

                                Das ändern des Programms hat leider nichts gebracht. Die Lösung von Dutchman hingegen schon.

                                Ich habe eine Variable als Zwischenlösung angelegt. Seither keine Ausfälle mehr.

                                Ich werde zukünftig noch testen, wie es sich verhält, wenn ich das Skript komplett neu anlege.

                                Grüße,

                                Stefan

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                771
                                Online

                                31.7k
                                Users

                                79.8k
                                Topics

                                1.3m
                                Posts

                                5
                                24
                                2580
                                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