Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Online Zeit per TR-064 berechnen und anzeigen

    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] Online Zeit per TR-064 berechnen und anzeigen

    This topic has been deleted. Only users with topic management privileges can see it.
    • sigi234
      sigi234 Forum Testing Most Active @Kuddel last edited by

      @Kuddel

      Geht bei mir nicht.........

      Screenshot (3330).png

      K 1 Reply Last reply Reply Quote 0
      • K
        Kuddel @sigi234 last edited by

        @sigi234 du musst den Kommentar in zeile 1 hinter dem semikolon entfernen

        sigi234 1 Reply Last reply Reply Quote 1
        • sigi234
          sigi234 Forum Testing Most Active @Kuddel last edited by

          @Kuddel sagte in [gelöst] Online Zeit per TR-064 berechnen und anzeigen:

          @sigi234 du musst den Kommentar in zeile 1 hinter dem semikolon entfernen

          Oh man.........ich Koffer............

          1 Reply Last reply Reply Quote 0
          • sigi234
            sigi234 Forum Testing Most Active @Kuddel last edited by sigi234

            @Kuddel sagte in [gelöst] Online Zeit per TR-064 berechnen und anzeigen:

            @sigi234 ja den DP habe ich selber erstellt und in meine VIS eingebaut

            667e98f2-38c2-489b-a1b5-06ee87e22bda-grafik.png

            Wie hast du Tage in den DP gebracht?

            Erledigt.........

            K 1 Reply Last reply Reply Quote 0
            • K
              Kuddel @sigi234 last edited by

              @sigi234 habe ich im Skript eingebaut

              const ip_router = 'tr-064.0.states.externalIP'; 
              const dauer_dorfdstrasse = 'javascript.0.uptime.online-router'; 
              
              schedule('* * * * *', function() { // jede Minute
              
              //router
                var diff = Date.now() - getState(ip_router).lc; // Onlinezeit in ms
                var tage = Math.floor(diff / (1000*60*60*24));
                diff = diff % (1000*60*60*24);
                var std = Math.floor(diff / (1000*60*60));
                diff = diff % (1000*60*60);
                var min = Math.round(diff / (1000*60));
                if(std < 10) std = '0' + std;
                if(min < 10) min = '0' + min;
                setState(dauer_dorfdstrasse, tage + ' Tage, ' + std + ' Std, ' + min + ' Min', true);
              
              });
              

              Negalein 1 Reply Last reply Reply Quote 2
              • Negalein
                Negalein Global Moderator @Kuddel last edited by

                @Kuddel sagte in [gelöst] Online Zeit per TR-064 berechnen und anzeigen:

                @sigi234 habe ich im Skript eingebaut

                Ich bekomm folgende Warn im Log.
                DP wird nicht angelegt.

                javascript.0	2019-08-26 12:47:00.012	warn	at Timer.listOnTimeout (timers.js:290:5)
                javascript.0	2019-08-26 12:47:00.011	warn	at tryOnTimeout (timers.js:323:5)
                javascript.0	2019-08-26 12:47:00.011	warn	at ontimeout (timers.js:498:11)
                javascript.0	2019-08-26 12:47:00.011	warn	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                javascript.0	2019-08-26 12:47:00.011	warn	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                javascript.0	2019-08-26 12:47:00.011	warn	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                javascript.0	2019-08-26 12:47:00.011	warn	at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1191:34)
                javascript.0	2019-08-26 12:47:00.011	warn	at Object.<anonymous> (script.js.common.Fritz-Onlinezeit:15:3)
                javascript.0	2019-08-26 12:47:00.011	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1276:20)
                javascript.0	2019-08-26 12:47:00.011	warn	State "javascript.0.uptime.online-router" not found
                

                Script:

                const ip_router = 'tr-064.0.states.externalIP'; 
                const Onlinezeit = 'javascript.0.uptime.online-router'; 
                 
                schedule('* * * * *', function() { // jede Minute
                 
                //router
                  var diff = Date.now() - getState(ip_router).lc; // Onlinezeit in ms
                  var tage = Math.floor(diff / (1000*60*60*24));
                  diff = diff % (1000*60*60*24);
                  var std = Math.floor(diff / (1000*60*60));
                  diff = diff % (1000*60*60);
                  var min = Math.round(diff / (1000*60));
                  if(std < 10) std = '0' + std;
                  if(min < 10) min = '0' + min;
                  setState(Onlinezeit, tage + ' Tage, ' + std + ' Std, ' + min + ' Min', true);
                 
                });
                
                sigi234 paul53 2 Replies Last reply Reply Quote 0
                • sigi234
                  sigi234 Forum Testing Most Active @Negalein last edited by

                  @Negalein sagte in [gelöst] Online Zeit per TR-064 berechnen und anzeigen:

                  javascript.0.uptime.online-router

                  Du musst den State selbst anlegen!

                  javascript.0.uptime.online-router

                  1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Negalein last edited by paul53

                    @Negalein sagte:

                    DP wird nicht angelegt.

                    Ist im Skript auch nicht vorgesehen. Lege ihn manuell im Reiter "Objekte" an: javascript.0 selektieren und Datenpunkt hinzufügen, Name: uptime.online-router, Typ: Zeichenkette

                    Negalein 1 Reply Last reply Reply Quote 0
                    • Negalein
                      Negalein Global Moderator last edited by

                      Ahhhhhhh, ich ......!

                      1 Reply Last reply Reply Quote 0
                      • Negalein
                        Negalein Global Moderator @paul53 last edited by

                        @paul53 sagte in [gelöst] Online Zeit per TR-064 berechnen und anzeigen:

                        @Negalein sagte:

                        DP wird nicht angelegt.

                        Ist im Skript auch nicht vorgesehen. Lege ihn manuell im Reiter "Objekte" an: javascript.0 selektieren und Datenpunkt hinzufügen, Name: uptime.online-router, Typ: Zeichenkette

                        Danke, funktioniert!

                        Ich seh zwar nur wielange die Fritz mit dem Postrouter verbunden ist, aber das sind die Nachteile wenn mann vom Anbieter keinen vernünftigen Router bekommt und man was gescheites dahinter hängen muss.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        803
                        Online

                        31.9k
                        Users

                        80.1k
                        Topics

                        1.3m
                        Posts

                        blockly
                        4
                        23
                        3141
                        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