Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Anwesenheitscontrol basierend auf TR64 Adapter - Script

    NEWS

    • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

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

    Anwesenheitscontrol basierend auf TR64 Adapter - Script

    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      emil70 @SigiMOE last edited by

      @sigimoe

      Kann ich bestätigen, nutze das script seit ein paar Wochen

      Javaadapter v8.8.3 wird genutzt

      PlatformBetriebssystem:linux
      Architektur:x64
      CPUs:4
      Geschwindigkeit:1501 MHz
      Modell:Intel(R) Celeron(R) CPU J3455 @ 1.50GHz
      RAM:11.5 GB
      System-Betriebszeit:216 T. 16:41:48
      Node.js:v18.20.4
      time:1730096843169
      timeOffset:-60
      NPM:10.8.2
      Adapter-Anzahl:544
      Datenträgergröße:3572.6 GB
      Freier Festplattenspeicher:2067.0 GB
      Aktive Instanzen:30
      Pfad:/opt/iobroker/
      Betriebszeit:59 T. 23:14:52
      aktiv:true
      _nodeCurrent:18.20.4
      _nodeNewest:18.20.4
      _nodeNewestNext:20.18.0
      _npmCurrent:10.8.2
      _npmNewest:10.7.0
      _npmNewestNext:10.8.2
      
      

      gibt es da eine Lösung für??

      1 Reply Last reply Reply Quote 0
      • L
        looxer01 last edited by

        @emil70
        könnt ihr mal checken wie eure Datenpunkte angelegt wurden ?
        Eigentlich sollte ja read:true und write:true sein.
        Die Warnung deutete darauf hin, dass write:false steht.

        Ich selber nutze das script nicht mehr, da ich auf Unifi umgestiegen bín.
        Ich kann es also selber nicht so gut nachvollziehen.

        vG Looxer

        E 1 Reply Last reply Reply Quote 0
        • E
          emil70 @looxer01 last edited by emil70

          @looxer01

          Hatte ich mir heute morgen mal angesehen. Stehen Alle auf false

          Screenshot 2024-10-29 at 18-43-59 objects - 4c5c1fa7680f.png

          Somit wird man die Alle ändern müssen, denk ich

          Edit: kann man das im script nicht anpassen?

          L 1 Reply Last reply Reply Quote 0
          • L
            looxer01 @emil70 last edited by

            @emil70
            das ist ja schon so implementiert.
            keine Ahnung, warum die States auf read only stehen.
            kannst du die states löschen und das script neu starten ?
            Dann nochmal checken bitte

            (dann gehen aber deine von und geht zeiten verloren)

            vG looxer

            E 1 Reply Last reply Reply Quote 0
            • E
              emil70 @looxer01 last edited by

              @looxer01
              Ändert nix

              Wo finde ich das im script?

              L 1 Reply Last reply Reply Quote 0
              • L
                looxer01 @emil70 last edited by

                @emil70

                wenn die states angelegt werden, dann wird write: true gesetzt
                ich sehe da keinen Fehler.

                // Datenpunkte erzeugen
                
                  createState(StateUser1, false, {read: true, write: true, type: 'boolean', name: 'Anwesenheit User1', desc: 'Anwesenheit User1'});
                  createState(StateUser2, false, {read: true, write: true, type: 'boolean', name: 'Anwesenheit User2', desc: 'Anwesenheit User2'});
                  createState(StateUser3, false, {read: true, write: true, type: 'boolean', name: 'Anwesenheit User3', desc: 'Anwesenheit User3'});
                  createState(StateUser4, false, {read: true, write: true, type: 'boolean', name: 'Anwesenheit User4', desc: 'Anwesenheit User4'});
                  createState(StateUser5, false, {read: true, write: true, type: 'boolean', name: 'Anwesenheit User5', desc: 'Anwesenheit User5'});
                  createState(StateUser6, false, {read: true, write: true, type: 'boolean', name: 'Anwesenheit User6', desc: 'Anwesenheit User6'});
                
                  createState(StateUserString   , "Niemand", {read: true, write: true, type: 'string', name: 'Anwesenheit Userliste', desc: 'Anwesenheit Userliste'});
                  createState(StateUserAll      , false, {read: true, write: true, type: 'boolean', name: 'Anwesenheit alle User', desc: 'Anwesenheit alle User'});
                
                  createState(StateUser1Geht    , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen aus FB', desc: 'Zeit Verlassen User1'});
                  createState(StateUser1Kommt   , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen in  FB', desc: 'Zeit kommen    User1'});
                  createState(StateUser2Geht    , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen aus FB', desc: 'Zeit Verlassen User2'});
                  createState(StateUser2Kommt   , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen in  FB', desc: 'Zeit kommen    User2'});
                  createState(StateUser3Geht    , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen aus FB', desc: 'Zeit Verlassen User3'});
                  createState(StateUser3Kommt   , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen in  FB', desc: 'Zeit kommen    User3'});
                  createState(StateUser4Geht    , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen aus FB', desc: 'Zeit Verlassen User4'});
                  createState(StateUser4Kommt   , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen in  FB', desc: 'Zeit kommen    User4'});
                  createState(StateUser5Geht    , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen aus FB', desc: 'Zeit Verlassen User5'});
                  createState(StateUser5Kommt   , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen in  FB', desc: 'Zeit kommen    User5'});
                  createState(StateUser6Geht    , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen aus FB', desc: 'Zeit Verlassen User6'});
                  createState(StateUser6Kommt   , CreationTime, {read: true, write: true, type: 'string', name: 'Anwesenheit Zeit ausloggen in  FB', desc: 'Zeit kommen    User6'});
                  
                  createState(StateUserListeJason, CreationTime,{read: true, write: true, type: 'string', name: 'Anwesenheitsstatus Jason Liste', desc: 'UserListe als Jason'});
                
                E 1 Reply Last reply Reply Quote 0
                • E
                  emil70 @looxer01 last edited by emil70

                  @looxer01

                  Den Part gibt es im script nicht.
                  Habe jetzt den

                  function buildScriptStates() {
                      let finalStates = [];
                      for (const lpDevice in DEVICES) {
                          finalStates.push([FINAL_STATE_PATH + 'persons.' + cl(DEVICES[lpDevice]) + '.isPresent', {name: 'Is '+ cl(DEVICES[lpDevice]) + ' currently present?', type: 'boolean', read: true, write: false, def:false }]);
                          finalStates.push([FINAL_STATE_PATH + 'persons.' + cl(DEVICES[lpDevice]) + '.timeLastLeave', {name: 'Time of last LEAVE of  ' + cl(DEVICES[lpDevice]), type: 'string', read: true, write: false, def:'' }]);
                          finalStates.push([FINAL_STATE_PATH + 'persons.' + cl(DEVICES[lpDevice]) + '.timeLastEntry', {name: 'Time of last ENTRY of ' + cl(DEVICES[lpDevice]), type: 'string', read: true, write: false, def:'' }]);
                          finalStates.push([FINAL_STATE_PATH + 'persons.' + cl(DEVICES[lpDevice]) + '.timeMostRecent', {name: 'Time of most recent entry or leave of ' + cl(DEVICES[lpDevice]), type: 'string', read: true, write: false, def:'' }]);
                          finalStates.push([FINAL_STATE_PATH + 'persons.' + cl(DEVICES[lpDevice]) + '.offsetEntryLeave', {name:'Offset: Leave date/time - Entry date/time', type:'string', read:true, write:false, def:'' }]);
                      }
                      finalStates.push([FINAL_STATE_PATH + 'anyonePresent',          {name: 'Is any person present?', type: 'boolean', read: true, write: false, def: false }]);
                      finalStates.push([FINAL_STATE_PATH + 'presentPersonsString',   {name: 'List of present persons: String', type: 'string', read: true, write: false, def: '' }]);
                      finalStates.push([FINAL_STATE_PATH + 'presentPersonsJson',     {name: 'List of present persons: JSON', type: 'string', read: true, write: false, def: '' }]);
                      finalStates.push([FINAL_STATE_PATH + 'presentPersonsHTML',     {name: 'List of present persons: HTML', type: 'string', read: true, write: false, def: '' }]);
                      finalStates.push([FINAL_STATE_PATH + 'allPresentPersonsCount', {name:'Number of present persons', type: 'number', read: true, write: false, def: 0 }]);
                      if (SIMULATION_ACTIVE) finalStates.push([FINAL_STATE_PATH + 'presenceSimulationActive', {name: 'Presense Simulation Status', type: 'boolean', read: true, write: false, def: false }]);
                  
                      return finalStates;
                  }
                  

                  gefunden und da steht es write: false

                  ich pass das mal an und berichte

                  Das script ist von hier

                  Edit: Wenn ich den Part anpassen sind alle auf write: true

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    looxer01 @emil70 last edited by

                    @emil70
                    aah ok, dann ist das script ja gar nicht aus diesem Thread.
                    Aber immerhin gelöst. gut so.

                    vG Looxer

                    E 1 Reply Last reply Reply Quote 0
                    • E
                      emil70 @looxer01 last edited by

                      @looxer01

                      Doch ist von hier
                      Beitrag 50

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        daniello @emil70 last edited by daniello

                        Hallo allerseits, alter Thread, mal schauen ob noch jemand liest:

                        Hab schon länger ein Anwesenheitsscript am laufen - wird aber irgendwie immer schlechter. Andauernd bekomme ich nachrichten, dass entweder ich oder meine Frau nicht zuhause seien .. obwohl das nicht stimmt. Habe versucht das mit einer kleinen Wartezeit zu mildern .. aber auch keine Erlösung. Stelle das hier mal ein .. vielleicht habt ihr ja eine Idee für mich (womöglich kann man da gar nichts machen, weil es an der Fritzbox oder an den Handies liegt):

                        0a146a77-49b8-4ad8-8f62-81e9d29e74fa-grafik.png

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        1.0k
                        Online

                        32.4k
                        Users

                        81.3k
                        Topics

                        1.3m
                        Posts

                        34
                        116
                        26125
                        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