Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst]FTP Script lässt Javascript Instanz neu starten

    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

    [gelöst]FTP Script lässt Javascript Instanz neu starten

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

      Hi,
      ich habe mir ein kleines Script gebaut um Dateien auf einem FTP zu Zählen.

      Dabei habe ich das PRoblem, wenn ich zb CWD oder list mache und ein Verzeichnis nicht existiert, dann startet die Javascript Instanz neu.

      Kann ich das irgendwie abfangen?

      Zum Hintergund, ich will im Takt überwachen ob neue Dateien in ein bestimmtes Verzeichnis gekommen sind und dann eine Anzeige im VIS machen.
      DAfür muss ich in das Verzeichnis wechseln udn irgendwie die Dateien Zählen.
      Aber es kann auch sein, dass es das Verzeichnis noch nicht gibt und ich möchte dann halt nicht ejdesmal die JS Instanz neu starten 🐶

      Es handelt sich um das FTP script dass hier in einigen Threads schon behandelt wurde:

      var c = new Client();
        c.on('ready', function() {
        
          c.cwd(subfolder,function(err, data) {
            if (err) throw err;
          });  
      
          c.list(function(err, list) {
            if (err) throw err;
            else{
              //console.log(list);
              setState("javascript.0.Alerts.filelist", list);
            } 
      
            c.end();
          });
        });
      
      
        // connect to localhost:21 as anonymous
        //c.connect();
      //Bei connect musst du dann ggf deine daten einfügen z.B.
      
      c.connect({
        host: "fritz.box",
        user: "xxxxxxxx",
        password: "rxxxxxxxx"
      });
      
      Thomas Braun 1 Reply Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active @jmeister79 last edited by

        @jmeister79

        Das Passwort würde ich rausnehmen...

        jmeister79 1 Reply Last reply Reply Quote 1
        • jmeister79
          jmeister79 @Thomas Braun last edited by

          @thomas-braun damn, ja danke!

          F 1 Reply Last reply Reply Quote 0
          • F
            fastfoot @jmeister79 last edited by

            @jmeister79 in einem callback benutzt man kein throw(), nimm stattdessen if(err) log(err);

            jmeister79 1 Reply Last reply Reply Quote 0
            • jmeister79
              jmeister79 @fastfoot last edited by

              @fastfoot ja das wohl geholfen.
              Interessanterweise spinnt Grad der ja Adapter. Stürzt wegen jedem killefitz ab. Ich bin eigentlich gewohnt, dass der Editor das abfängt.

              F 1 Reply Last reply Reply Quote 0
              • F
                fastfoot @jmeister79 last edited by

                @jmeister79 sagte in FTP Script lässt Javascript Instanz neu starten:

                @fastfoot ja das wohl geholfen.
                Interessanterweise spinnt Grad der ja Adapter. Stürzt wegen jedem killefitz ab. Ich bin eigentlich gewohnt, dass der Editor das abfängt.

                eine exception(throw() ) ist kein killefitz, wenn sie nicht abgefangen wird dann stoppt der Code, im schlimmsten Fall crasht der Adapter. Im obigen Fall kann man exceptions innerhalb von callbacks aber nicht ausserhalb abfangen weshalb man sie dort nicht nutzt.

                nach meiner Erfahrung mit dem Adapter ist aber ein Absturz immer ein Problem eines Skriptes.

                jmeister79 1 Reply Last reply Reply Quote 0
                • jmeister79
                  jmeister79 @fastfoot last edited by

                  @fastfoot das meinte ich ja auch nicht.

                  Normalerweise ist es ja so, dass wenn ich ein script bearbeite und es speichere es nicht ausgeführt wird wenn fehler drin sind.

                  Das passiert selsbt bei Hello World mit einem Typo im log befehl.

                  Das tut er aber nun und bringt damit die instanz zum Absturz.
                  Ich wundere mich nur über das geänderte verhalten.

                  F 1 Reply Last reply Reply Quote 0
                  • F
                    fastfoot @jmeister79 last edited by

                    @jmeister79 sagte in FTP Script lässt Javascript Instanz neu starten:

                    Das tut er aber nun und bringt damit die instanz zum Absturz.

                    das würde ich gerne als script sehen!

                    jmeister79 1 Reply Last reply Reply Quote 0
                    • jmeister79
                      jmeister79 @fastfoot last edited by

                      @fastfoot

                      log(kille"fitz");
                      

                      ist offensichtlich n Fehler.

                      bringt die Instanz zum Absturz.

                      auf meinem Lifesystem passiert aber das:

                      18:13:14.657	error	javascript.0 (3365) script.js.Alerts.Skript_1 compile failed: at script.js.Alerts.Skript_1:1
                      

                      so wie es soll

                      F 1 Reply Last reply Reply Quote 0
                      • F
                        fastfoot @jmeister79 last edited by

                        @jmeister79 sagte in FTP Script lässt Javascript Instanz neu starten:

                        log(kille"fitz");

                        dann wäre zu prüfen wo denn die Unterschiede sind. Ich kenne nur das Verhalten mit compile failed, und zwar auf all meinen Systemen, stable, beta, diverse node versionen

                        jmeister79 1 Reply Last reply Reply Quote 0
                        • jmeister79
                          jmeister79 @fastfoot last edited by

                          @fastfoot neustart wirkt wunder.

                          hab ihn wohl zu sehr genervt.

                          danke für die hilfe, auf jeden fallw ar der hinweis mit throw wertvoll

                          jmeister79 1 Reply Last reply Reply Quote 0
                          • jmeister79
                            jmeister79 @jmeister79 last edited by

                            @jmeister79

                            kann man mit try catch die "caught by controller" einträge fangen?

                            Ich möchte nicht dass der js controller abstürzt...

                            F AlCalzone 2 Replies Last reply Reply Quote 0
                            • F
                              fastfoot @jmeister79 last edited by

                              @jmeister79 sagte in FTP Script lässt Javascript Instanz neu starten:

                              @jmeister79

                              kann man mit try catch die "caught by controller" einträge fangen?

                              Ich möchte nicht dass der js controller abstürzt...

                              geht es auch konkreter?

                              1 Reply Last reply Reply Quote 0
                              • AlCalzone
                                AlCalzone Developer @jmeister79 last edited by

                                @jmeister79 sagte in FTP Script lässt Javascript Instanz neu starten:

                                kann man mit try catch die "caught by controller" einträge fangen?

                                Ja. Das was du meinst, sind diejenigen Fehler, die nicht anderweitig behandelt wurden und die der JS-Controller "findet" und meldet.

                                Ich möchte nicht dass der js controller abstürzt...

                                Tut er nicht, das ist ein anderer Prozess.

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                469
                                Online

                                31.8k
                                Users

                                80.0k
                                Topics

                                1.3m
                                Posts

                                4
                                14
                                168
                                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