Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter google-sharedlocations2

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    443

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

Test Adapter google-sharedlocations2

Geplant Angeheftet Gesperrt Verschoben Tester
35 Beiträge 6 Kommentatoren 774 Aufrufe 12 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • GarfonsoG Garfonso

    @David-G. sagte in Test Adapter google-sharedlocations2:

    Hat das noch jemend?

    Ja, hab ich auch mehrere bekommen.

    David G.D Online
    David G.D Online
    David G.
    schrieb am zuletzt editiert von David G.
    #19

    @Garfonso sagte in Test Adapter google-sharedlocations2:

    Ja, hab ich auch mehrere bekommen.

    Man kann puppeteer ja einen Arbeitsordner mitgeben, um Session fortsetzen zu können.Evtl bekommt man es damit hin dass nicht jede Anmeldung als neues Gerät erkannt wird. Oder hast du es extra so gemacht, dass sicher ein login mit Passwort erscheint?

    Edit.
    Evtl nur mit Pw einloggen wenn das Coockie abgelaufen ist. Zum Ordner laut Gemini:

    Ja, das ist sogar eine sehr gute Idee! Bei Puppeteer nennt sich das userDataDir.
    ​Wenn du diesen Ordner angibst, speichert Chrome dort das gesamte Browser-Profil – inklusive Cookies, Cache und vor allem den Session-Status. Beim nächsten Start greift Puppeteer auf diesen Ordner zu. Google sieht dann keinen "völlig neuen" Browser, was die Wahrscheinlichkeit massiv erhöht, dass du eingeloggt bleibst oder keine erneute 2FA-Abfrage kommt.
    ​So baust du es in deine Cookie.ts ein
    ​Du musst die puppeteer.launch-Optionen in der Methode loginToGetNewCookies anpassen.
    ​1. Pfad definieren
    ​Zuerst solltest du einen Pfad festlegen. Da es ein ioBroker-Adapter ist, bietet sich ein Ordner im Adapter-Verzeichnis an:

    const path = require('path');
    // Im ioBroker-Kontext sinnvoll: ein Ordner im Instanz-Verzeichnis
    const dataDir = path.join(utils.getAbsoluteDefaultDataDir(), 'google-sharedlocations2-profile');
    
    1. Den Launch-Befehl anpassen
      ​Ändere den Block in deiner loginToGetNewCookies wie folgt ab:
    this.browser = await puppeteer.launch({
        headless: true,
        userDataDir: './google_profile', // Hier wird die Session gespeichert
        args: [
            '--no-sandbox', 
            '--disable-setuid-sandbox', 
            '--disable-blink-features=AutomationControlled'
        ],
        ignoreDefaultArgs: ['--enable-automation'],
    });
    
    

    Warum das für dein Script wichtig ist:
    ​Vermeidung von 2FA: Wenn du dich einmal erfolgreich eingeloggt hast (vielleicht indem du headless: false kurzzeitig zum Testen nutzt), erkennt Google das "Gerät" beim nächsten Mal wieder.
    ​Cookie-Persistenz: Selbst wenn das Script abstürzt, sind die Cookies noch im userDataDir gespeichert und müssen nicht jedes Mal neu per Tipp-Simulation erzeugt werden.
    ​Glaubwürdigkeit: Ein Browser mit Historie und Cache wirkt für die Google-Sicherheitsalgorithmen weniger wie ein bösartiger Bot.

    EDIT 2
    Mein Script nutzt die Option eines Cookie-Refresh. Evtl kann der Adapter erstmal versuchen, sich mit dem per User und Pw abgerufenen Coockie zu verbinden und dieses zu aktualisieren, und das nächste mal dann mit diesem usw. Wenn das nicht klappt neu einloggen mit user und pw.

    Zeigt eure Lovelace-Visualisierung klick
    (Auch ideal um sich Anregungen zu holen)

    Meine Tabellen für eure Visualisierung klick

    GarfonsoG 1 Antwort Letzte Antwort
    0
    • David G.D David G.

      @Garfonso sagte in Test Adapter google-sharedlocations2:

      Ja, hab ich auch mehrere bekommen.

      Man kann puppeteer ja einen Arbeitsordner mitgeben, um Session fortsetzen zu können.Evtl bekommt man es damit hin dass nicht jede Anmeldung als neues Gerät erkannt wird. Oder hast du es extra so gemacht, dass sicher ein login mit Passwort erscheint?

      Edit.
      Evtl nur mit Pw einloggen wenn das Coockie abgelaufen ist. Zum Ordner laut Gemini:

      Ja, das ist sogar eine sehr gute Idee! Bei Puppeteer nennt sich das userDataDir.
      ​Wenn du diesen Ordner angibst, speichert Chrome dort das gesamte Browser-Profil – inklusive Cookies, Cache und vor allem den Session-Status. Beim nächsten Start greift Puppeteer auf diesen Ordner zu. Google sieht dann keinen "völlig neuen" Browser, was die Wahrscheinlichkeit massiv erhöht, dass du eingeloggt bleibst oder keine erneute 2FA-Abfrage kommt.
      ​So baust du es in deine Cookie.ts ein
      ​Du musst die puppeteer.launch-Optionen in der Methode loginToGetNewCookies anpassen.
      ​1. Pfad definieren
      ​Zuerst solltest du einen Pfad festlegen. Da es ein ioBroker-Adapter ist, bietet sich ein Ordner im Adapter-Verzeichnis an:

      const path = require('path');
      // Im ioBroker-Kontext sinnvoll: ein Ordner im Instanz-Verzeichnis
      const dataDir = path.join(utils.getAbsoluteDefaultDataDir(), 'google-sharedlocations2-profile');
      
      1. Den Launch-Befehl anpassen
        ​Ändere den Block in deiner loginToGetNewCookies wie folgt ab:
      this.browser = await puppeteer.launch({
          headless: true,
          userDataDir: './google_profile', // Hier wird die Session gespeichert
          args: [
              '--no-sandbox', 
              '--disable-setuid-sandbox', 
              '--disable-blink-features=AutomationControlled'
          ],
          ignoreDefaultArgs: ['--enable-automation'],
      });
      
      

      Warum das für dein Script wichtig ist:
      ​Vermeidung von 2FA: Wenn du dich einmal erfolgreich eingeloggt hast (vielleicht indem du headless: false kurzzeitig zum Testen nutzt), erkennt Google das "Gerät" beim nächsten Mal wieder.
      ​Cookie-Persistenz: Selbst wenn das Script abstürzt, sind die Cookies noch im userDataDir gespeichert und müssen nicht jedes Mal neu per Tipp-Simulation erzeugt werden.
      ​Glaubwürdigkeit: Ein Browser mit Historie und Cache wirkt für die Google-Sicherheitsalgorithmen weniger wie ein bösartiger Bot.

      EDIT 2
      Mein Script nutzt die Option eines Cookie-Refresh. Evtl kann der Adapter erstmal versuchen, sich mit dem per User und Pw abgerufenen Coockie zu verbinden und dieses zu aktualisieren, und das nächste mal dann mit diesem usw. Wenn das nicht klappt neu einloggen mit user und pw.

      GarfonsoG Offline
      GarfonsoG Offline
      Garfonso
      Developer
      schrieb am zuletzt editiert von
      #20

      @David-G.

      Äh.. ja.. das mit dem Cookie-Refresh hatte ich eigentlich auch vor. Habe ich irgendwie vergessen zu implementieren. :-)
      Data-Dir hab ich jetzt auch mal hinzugefügt.

      Auf npm / Github sollte eine 0.2.0 mit den Sachen erscheinen. Intern hat sich nochmal einiges geändert. Bei mir läufts gerade ein "refresh im Browser" hab ich aber noch nicht testen können (weiß grad nicht genau, wie, vielleicht muss ich da noch einen state für basteln oder so kopfkratz). Aber nach dem Login knallt chrome Daten in den Ordern.

      Ultimativer Lovelace Leitfaden: https://forum.iobroker.net/topic/35937/der-ultimative-iobroker-lovelace-leitfaden-dokumentation

      Lovelace UI Beispiele: https://forum.iobroker.net/topic/35950/zeigt-her-eure-lovelace-visualisierung

      David G.D 1 Antwort Letzte Antwort
      1
      • GarfonsoG Garfonso

        @David-G.

        Äh.. ja.. das mit dem Cookie-Refresh hatte ich eigentlich auch vor. Habe ich irgendwie vergessen zu implementieren. :-)
        Data-Dir hab ich jetzt auch mal hinzugefügt.

        Auf npm / Github sollte eine 0.2.0 mit den Sachen erscheinen. Intern hat sich nochmal einiges geändert. Bei mir läufts gerade ein "refresh im Browser" hab ich aber noch nicht testen können (weiß grad nicht genau, wie, vielleicht muss ich da noch einen state für basteln oder so kopfkratz). Aber nach dem Login knallt chrome Daten in den Ordern.

        David G.D Online
        David G.D Online
        David G.
        schrieb am zuletzt editiert von David G.
        #21

        @Garfonso

        Wird grün und holt Daten.

        Eine Frage.
        Ich sende die Koordinaten mit einem Blockly an Places, da ich dort schon User habe die anders benannt sind.

        Wenn ich mit dem Adapter die Daten an Places sende wird mein Log voll gehauen. Bei meinem Blockly kommt nichts. Liegt nicht am Parralelbetrieb,das Blockly ist deaktiviert.

        places.0
        2026-02-04 06:22:46.950	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:22:46.950	warn	Found a newer place for this user: skipping update
        
        places.0
        2026-02-04 06:22:46.856	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182551298,"address":"","date":"2026-02-04 06:22:31","atHome":true,"distance":8,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:21:46.382	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:21:46.382	warn	Found a newer place for this user: skipping update
        
        places.0
        2026-02-04 06:21:46.334	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182391556,"address":"","date":"2026-02-04 06:19:51","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:21:46.334	warn	Found a newer place for this user: skipping update
        
        places.0
        2026-02-04 06:20:45.903	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:20:45.903	warn	Found a newer place for this user: skipping update
        
        places.0
        2026-02-04 06:20:45.796	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182391556,"address":"","date":"2026-02-04 06:19:51","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:19:45.236	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:19:45.188	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182316430,"address":"","date":"2026-02-04 06:18:36","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:19:45.188	warn	Found a newer place for this user: skipping update
        
        places.0
        2026-02-04 06:18:44.768	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770181996417,"address":"","date":"2026-02-04 06:13:16","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:18:44.768	warn	Found a newer place for this user: skipping update
        
        places.0
        2026-02-04 06:18:44.675	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182316430,"address":"","date":"2026-02-04 06:18:36","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:17:43.814	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770181996417,"address":"","date":"2026-02-04 06:13:16","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        
        places.0
        2026-02-04 06:17:43.814	warn	Found a newer place for this user: skipping update
        
        places.0
        2026-02-04 06:17:43.722	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182251214,"address":"","date":"2026-02-04 06:17:31","atHome":true,"distance":7,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
        

        Zeigt eure Lovelace-Visualisierung klick
        (Auch ideal um sich Anregungen zu holen)

        Meine Tabellen für eure Visualisierung klick

        GarfonsoG 1 Antwort Letzte Antwort
        0
        • David G.D David G.

          @Garfonso

          Wird grün und holt Daten.

          Eine Frage.
          Ich sende die Koordinaten mit einem Blockly an Places, da ich dort schon User habe die anders benannt sind.

          Wenn ich mit dem Adapter die Daten an Places sende wird mein Log voll gehauen. Bei meinem Blockly kommt nichts. Liegt nicht am Parralelbetrieb,das Blockly ist deaktiviert.

          places.0
          2026-02-04 06:22:46.950	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:22:46.950	warn	Found a newer place for this user: skipping update
          
          places.0
          2026-02-04 06:22:46.856	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182551298,"address":"","date":"2026-02-04 06:22:31","atHome":true,"distance":8,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:21:46.382	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:21:46.382	warn	Found a newer place for this user: skipping update
          
          places.0
          2026-02-04 06:21:46.334	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182391556,"address":"","date":"2026-02-04 06:19:51","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:21:46.334	warn	Found a newer place for this user: skipping update
          
          places.0
          2026-02-04 06:20:45.903	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:20:45.903	warn	Found a newer place for this user: skipping update
          
          places.0
          2026-02-04 06:20:45.796	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182391556,"address":"","date":"2026-02-04 06:19:51","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:19:45.236	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770182327339,"address":"","date":"2026-02-04 06:18:47","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:19:45.188	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182316430,"address":"","date":"2026-02-04 06:18:36","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:19:45.188	warn	Found a newer place for this user: skipping update
          
          places.0
          2026-02-04 06:18:44.768	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770181996417,"address":"","date":"2026-02-04 06:13:16","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:18:44.768	warn	Found a newer place for this user: skipping update
          
          places.0
          2026-02-04 06:18:44.675	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182316430,"address":"","date":"2026-02-04 06:18:36","atHome":true,"distance":4,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:17:43.814	info	Processed message, returning result: {"user":"Ann-Christin","latitude":51.1234567,"longitude":9.6543210,"timestamp":1770181996417,"address":"","date":"2026-02-04 06:13:16","atHome":true,"distance":6,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          places.0
          2026-02-04 06:17:43.814	warn	Found a newer place for this user: skipping update
          
          places.0
          2026-02-04 06:17:43.722	info	Processed message, returning result: {"user":"David G.","latitude":51.1234000,"longitude":9.6543000,"timestamp":1770182251214,"address":"","date":"2026-02-04 06:17:31","atHome":true,"distance":7,"name":"Home","elevation":0,"routeDistance":"","routeDuration":"","routeDurationWithTraffic":""}
          
          GarfonsoG Offline
          GarfonsoG Offline
          Garfonso
          Developer
          schrieb am zuletzt editiert von
          #22

          @David-G. sagte in Test Adapter google-sharedlocations2:

          Wenn ich mit dem Adapter die Daten an Places sende wird mein Log voll gehauen. Bei meinem Blockly kommt nichts. Liegt nicht am Parralelbetrieb,das Blockly ist deaktiviert.

          Ja, wenn du die Timestamps vergleichst, sieht man, wo es herkommt. Ich setze überall den timestamp, den Google mitliefert. Der scheint durchaus mal länger gleich zu bleiben. Passt ja auch, wenn man manuell guckt, steht da ja auch manchmal "vor x Minuten" oder so. Ist halt kein Realtime. Wenn die Position aber schon älter ist als das Abrufinterval, dann ist der timestamp der Position gleich und das teilt Places da mit.

          Theoretisch müsste ich den timestamp prüfen und das update ausfallen lassen, wenn der sich nicht geändert hat.

          In deinem blockly setzt du vermutlich da einfach den aktuellen Zeitpunkt. IIRC hat das der alte Adapter auch gemacht. Aber eigentlich muss places ja kein Update machen, wenn es eh keine neue Position gibt.

          Ultimativer Lovelace Leitfaden: https://forum.iobroker.net/topic/35937/der-ultimative-iobroker-lovelace-leitfaden-dokumentation

          Lovelace UI Beispiele: https://forum.iobroker.net/topic/35950/zeigt-her-eure-lovelace-visualisierung

          David G.D 1 Antwort Letzte Antwort
          0
          • GarfonsoG Garfonso

            @David-G. sagte in Test Adapter google-sharedlocations2:

            Wenn ich mit dem Adapter die Daten an Places sende wird mein Log voll gehauen. Bei meinem Blockly kommt nichts. Liegt nicht am Parralelbetrieb,das Blockly ist deaktiviert.

            Ja, wenn du die Timestamps vergleichst, sieht man, wo es herkommt. Ich setze überall den timestamp, den Google mitliefert. Der scheint durchaus mal länger gleich zu bleiben. Passt ja auch, wenn man manuell guckt, steht da ja auch manchmal "vor x Minuten" oder so. Ist halt kein Realtime. Wenn die Position aber schon älter ist als das Abrufinterval, dann ist der timestamp der Position gleich und das teilt Places da mit.

            Theoretisch müsste ich den timestamp prüfen und das update ausfallen lassen, wenn der sich nicht geändert hat.

            In deinem blockly setzt du vermutlich da einfach den aktuellen Zeitpunkt. IIRC hat das der alte Adapter auch gemacht. Aber eigentlich muss places ja kein Update machen, wenn es eh keine neue Position gibt.

            David G.D Online
            David G.D Online
            David G.
            schrieb am zuletzt editiert von David G.
            #23

            @Garfonso

            Das wird es sein....
            Mein Blockly wartet auf eine Veränderung damit es triggert. Wartet dann ein paar ms (sonst ist ein Wert manchmal noch der alte wenn es zu schnell ist) und sendet die Daten an palces.

            Edit
            Mache es jetzt aber über deinen Adapter, hab kurz gebraucht zu kapieren wie in Places das mit dem Namen ersetzt klappt. Hab den Namen immer wie in den DPs angegeben. Aber da werden bei Leerstelle _ eingebaut. Deshalb hatte es nur geklappt.

            EDIT 2
            Wo finde ich denn den UserDataDir? Wollte mal reinschauen.

            Zeigt eure Lovelace-Visualisierung klick
            (Auch ideal um sich Anregungen zu holen)

            Meine Tabellen für eure Visualisierung klick

            GarfonsoG 1 Antwort Letzte Antwort
            0
            • David G.D David G.

              @Garfonso

              Das wird es sein....
              Mein Blockly wartet auf eine Veränderung damit es triggert. Wartet dann ein paar ms (sonst ist ein Wert manchmal noch der alte wenn es zu schnell ist) und sendet die Daten an palces.

              Edit
              Mache es jetzt aber über deinen Adapter, hab kurz gebraucht zu kapieren wie in Places das mit dem Namen ersetzt klappt. Hab den Namen immer wie in den DPs angegeben. Aber da werden bei Leerstelle _ eingebaut. Deshalb hatte es nur geklappt.

              EDIT 2
              Wo finde ich denn den UserDataDir? Wollte mal reinschauen.

              GarfonsoG Offline
              GarfonsoG Offline
              Garfonso
              Developer
              schrieb am zuletzt editiert von
              #24

              @David-G. sagte in Test Adapter google-sharedlocations2:

              Wo finde ich denn den UserDataDir? Wollte mal reinschauen.

              Das ist einfach der adapter Ordner, aslo /opt/iobroker/iobroker-data/google-sharedlocations2.0/

              Ultimativer Lovelace Leitfaden: https://forum.iobroker.net/topic/35937/der-ultimative-iobroker-lovelace-leitfaden-dokumentation

              Lovelace UI Beispiele: https://forum.iobroker.net/topic/35950/zeigt-her-eure-lovelace-visualisierung

              David G.D 1 Antwort Letzte Antwort
              0
              • GarfonsoG Garfonso

                @David-G. sagte in Test Adapter google-sharedlocations2:

                Wo finde ich denn den UserDataDir? Wollte mal reinschauen.

                Das ist einfach der adapter Ordner, aslo /opt/iobroker/iobroker-data/google-sharedlocations2.0/

                David G.D Online
                David G.D Online
                David G.
                schrieb am zuletzt editiert von
                #25

                @Garfonso

                Der ist bei mir leer

                david@iobroker:~$ cd /opt/iobroker/iobroker-data/google-sharedlocations2.0/david@iobroker:/opt/iobroker/iobroker-data/google-sharedlocations2.0$ ls -la
                total 25
                drwxrwxr-x+  2 iobroker iobroker  2 Feb  4 06:00 .
                drwxrwxr-x+ 19 iobroker iobroker 23 Feb  5 10:04 ..
                david@iobroker:/opt/iobroker/iobroker-data/google-sharedlocations2.0$
                

                Zeigt eure Lovelace-Visualisierung klick
                (Auch ideal um sich Anregungen zu holen)

                Meine Tabellen für eure Visualisierung klick

                1 Antwort Letzte Antwort
                0
                • GarfonsoG Offline
                  GarfonsoG Offline
                  Garfonso
                  Developer
                  schrieb am zuletzt editiert von
                  #26

                  Dann lief der Browser wohl noch nicht.

                  Ultimativer Lovelace Leitfaden: https://forum.iobroker.net/topic/35937/der-ultimative-iobroker-lovelace-leitfaden-dokumentation

                  Lovelace UI Beispiele: https://forum.iobroker.net/topic/35950/zeigt-her-eure-lovelace-visualisierung

                  David G.D 1 Antwort Letzte Antwort
                  0
                  • GarfonsoG Garfonso

                    Dann lief der Browser wohl noch nicht.

                    David G.D Online
                    David G.D Online
                    David G.
                    schrieb am zuletzt editiert von David G.
                    #27

                    @Garfonso

                    Ich war mal so frei und hab einfach den Coockie im DP gelöscht, damit er sich über den Browser einloggen muss.

                    Bleibt gelb und loggt sich nicht ein.
                    Wenn ich manuell einen Coockie Einträge wird er grün.

                    Ansonsten:

                    google-sharedlocations2.0
                    2026-02-06 17:30:20.115	error	Error in puppeteer: Timed out after waiting 30000ms
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:46.561	info	Trying to login to Google to get new cookies.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:46.509	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:42.481	info	terminating
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:41.981	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:41.981	info	terminating
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:41.981	info	Got terminate signal TERMINATE_YOURSELF
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:20.066	error	Error in puppeteer: Timed out after waiting 30000ms
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:46.326	info	Trying to login to Google to get new cookies.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:46.326	info	Current cookies state was cleared, trying to obtain new cookies.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:39.033	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:35.036	info	terminating
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:34.536	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:34.535	info	terminating
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:34.535	info	Got terminate signal TERMINATE_YOURSELF
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:33.683	info	Obtained new cookies from Google login.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:22.845	info	Trying to login to Google to get new cookies.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:22.844	info	Current cookies state was cleared, trying to obtain new cookies.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:30:20.115	error	Error in puppeteer: Timed out after waiting 30000ms
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:46.561	info	Trying to login to Google to get new cookies.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:46.509	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:42.481	info	terminating
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:41.981	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:41.981	info	terminating
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:41.981	info	Got terminate signal TERMINATE_YOURSELF
                    
                    google-sharedlocations2.0
                    2026-02-06 17:29:20.066	error	Error in puppeteer: Timed out after waiting 30000ms
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:46.326	info	Trying to login to Google to get new cookies.
                    
                    google-sharedlocations2.0
                    2026-02-06 17:28:46.326	info	Current cookies state was cleared, trying to obtain new cookies.
                    

                    Zeigt eure Lovelace-Visualisierung klick
                    (Auch ideal um sich Anregungen zu holen)

                    Meine Tabellen für eure Visualisierung klick

                    GarfonsoG 2 Antworten Letzte Antwort
                    0
                    • David G.D David G.

                      @Garfonso

                      Ich war mal so frei und hab einfach den Coockie im DP gelöscht, damit er sich über den Browser einloggen muss.

                      Bleibt gelb und loggt sich nicht ein.
                      Wenn ich manuell einen Coockie Einträge wird er grün.

                      Ansonsten:

                      google-sharedlocations2.0
                      2026-02-06 17:30:20.115	error	Error in puppeteer: Timed out after waiting 30000ms
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:46.561	info	Trying to login to Google to get new cookies.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:46.509	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:42.481	info	terminating
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:41.981	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:41.981	info	terminating
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:41.981	info	Got terminate signal TERMINATE_YOURSELF
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:20.066	error	Error in puppeteer: Timed out after waiting 30000ms
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:46.326	info	Trying to login to Google to get new cookies.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:46.326	info	Current cookies state was cleared, trying to obtain new cookies.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:39.033	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:35.036	info	terminating
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:34.536	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:34.535	info	terminating
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:34.535	info	Got terminate signal TERMINATE_YOURSELF
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:33.683	info	Obtained new cookies from Google login.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:22.845	info	Trying to login to Google to get new cookies.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:22.844	info	Current cookies state was cleared, trying to obtain new cookies.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:30:20.115	error	Error in puppeteer: Timed out after waiting 30000ms
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:46.561	info	Trying to login to Google to get new cookies.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:46.509	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:42.481	info	terminating
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:41.981	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:41.981	info	terminating
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:41.981	info	Got terminate signal TERMINATE_YOURSELF
                      
                      google-sharedlocations2.0
                      2026-02-06 17:29:20.066	error	Error in puppeteer: Timed out after waiting 30000ms
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:46.326	info	Trying to login to Google to get new cookies.
                      
                      google-sharedlocations2.0
                      2026-02-06 17:28:46.326	info	Current cookies state was cleared, trying to obtain new cookies.
                      
                      GarfonsoG Offline
                      GarfonsoG Offline
                      Garfonso
                      Developer
                      schrieb am zuletzt editiert von
                      #28

                      @David-G. sagte in Test Adapter google-sharedlocations2:

                      Bleibt gelb und loggt sich nicht ein.

                      Hm.. aber da sollsten jetzt Daten im Verzeichnis liegen, oder?

                      Timed out heißt, dass der Browser irgendwo nicht weiter kam... da musst du debug anmachen, um mehr zu sehen, leider.. (am besten letzten git-status vorher installieren, hab da das logging nochmal erweitert). Soll ich das vielleicht zu info machen? Oder ich versuche das zu speichern und gebe aus, wo es schiefgegangen ist, wenn der error fliegt. Hm.

                      Ultimativer Lovelace Leitfaden: https://forum.iobroker.net/topic/35937/der-ultimative-iobroker-lovelace-leitfaden-dokumentation

                      Lovelace UI Beispiele: https://forum.iobroker.net/topic/35950/zeigt-her-eure-lovelace-visualisierung

                      1 Antwort Letzte Antwort
                      0
                      • David G.D David G.

                        @Garfonso

                        Ich war mal so frei und hab einfach den Coockie im DP gelöscht, damit er sich über den Browser einloggen muss.

                        Bleibt gelb und loggt sich nicht ein.
                        Wenn ich manuell einen Coockie Einträge wird er grün.

                        Ansonsten:

                        google-sharedlocations2.0
                        2026-02-06 17:30:20.115	error	Error in puppeteer: Timed out after waiting 30000ms
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:46.561	info	Trying to login to Google to get new cookies.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:46.509	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:42.481	info	terminating
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:41.981	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:41.981	info	terminating
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:41.981	info	Got terminate signal TERMINATE_YOURSELF
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:20.066	error	Error in puppeteer: Timed out after waiting 30000ms
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:46.326	info	Trying to login to Google to get new cookies.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:46.326	info	Current cookies state was cleared, trying to obtain new cookies.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:39.033	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:35.036	info	terminating
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:34.536	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:34.535	info	terminating
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:34.535	info	Got terminate signal TERMINATE_YOURSELF
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:33.683	info	Obtained new cookies from Google login.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:22.845	info	Trying to login to Google to get new cookies.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:22.844	info	Current cookies state was cleared, trying to obtain new cookies.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:30:20.115	error	Error in puppeteer: Timed out after waiting 30000ms
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:46.561	info	Trying to login to Google to get new cookies.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:46.509	info	starting. Version 0.2.0 (non-npm: Garfonso/ioBroker.google-sharedlocations2#cb37556e09bc0a830094e90605e5beb7b2ed5439) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:42.481	info	terminating
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:41.981	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:41.981	info	terminating
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:41.981	info	Got terminate signal TERMINATE_YOURSELF
                        
                        google-sharedlocations2.0
                        2026-02-06 17:29:20.066	error	Error in puppeteer: Timed out after waiting 30000ms
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:46.326	info	Trying to login to Google to get new cookies.
                        
                        google-sharedlocations2.0
                        2026-02-06 17:28:46.326	info	Current cookies state was cleared, trying to obtain new cookies.
                        
                        GarfonsoG Offline
                        GarfonsoG Offline
                        Garfonso
                        Developer
                        schrieb am zuletzt editiert von
                        #29

                        @David-G.

                        Für das Problem bist du verantwortlich. :-p
                        Wenn der Browser noch eingeloggt ist (weil er ja seine Cookies jetzt speichern darf), dann geht er direkt von der Loginseite zu google maps. Auf google maps findet puppeteer aber auch nach langer Wartezeit das Feld für die Login-Daten nicht. Folglich erfolgt ein timeout...

                        0.3.1 kann das aber jetzt, sie checkt ob das accounts.google.com nach 3 Sekunden verschwunden ist und falls ja, liest den cookie und ist fertig.

                        Hab auch noch einiges umgebaut zu Version 0.3.0, hauptsächlich intern. Ich speicher jetzt das cookie array mit den ganzen Daten und es werden jetzt veraltete cookies auch gelöscht und das ganze etwas sinnvoller aktualisiert.
                        Es gab noch ein Problem mit refresh, da konnte es vorkommen, dass der browser die cookies nicht mag. Das hab ich abgefangen und versucht möglichst sinnvoll zu behandeln... und es gibt jetzt einen state mit dem man einen Refresh mit dem Browser erzwingen kann.

                        Dabei fällt mir wieder ein: Aktuell versucht der Code, wie es auch das Skript gemacht hat, den aktuellen Cookie an den Browser zu geben. Eigentlich ergibt das aber mit dem Storage im Browser nicht so viel Sinn, oder? Eigentlich sollte ich nur den Browser laden, gucken, ob der von der login-Seite zu maps wechselt und dann die cookies einsammeln, oder?

                        Ultimativer Lovelace Leitfaden: https://forum.iobroker.net/topic/35937/der-ultimative-iobroker-lovelace-leitfaden-dokumentation

                        Lovelace UI Beispiele: https://forum.iobroker.net/topic/35950/zeigt-her-eure-lovelace-visualisierung

                        David G.D B 2 Antworten Letzte Antwort
                        0
                        • GarfonsoG Garfonso

                          @David-G.

                          Für das Problem bist du verantwortlich. :-p
                          Wenn der Browser noch eingeloggt ist (weil er ja seine Cookies jetzt speichern darf), dann geht er direkt von der Loginseite zu google maps. Auf google maps findet puppeteer aber auch nach langer Wartezeit das Feld für die Login-Daten nicht. Folglich erfolgt ein timeout...

                          0.3.1 kann das aber jetzt, sie checkt ob das accounts.google.com nach 3 Sekunden verschwunden ist und falls ja, liest den cookie und ist fertig.

                          Hab auch noch einiges umgebaut zu Version 0.3.0, hauptsächlich intern. Ich speicher jetzt das cookie array mit den ganzen Daten und es werden jetzt veraltete cookies auch gelöscht und das ganze etwas sinnvoller aktualisiert.
                          Es gab noch ein Problem mit refresh, da konnte es vorkommen, dass der browser die cookies nicht mag. Das hab ich abgefangen und versucht möglichst sinnvoll zu behandeln... und es gibt jetzt einen state mit dem man einen Refresh mit dem Browser erzwingen kann.

                          Dabei fällt mir wieder ein: Aktuell versucht der Code, wie es auch das Skript gemacht hat, den aktuellen Cookie an den Browser zu geben. Eigentlich ergibt das aber mit dem Storage im Browser nicht so viel Sinn, oder? Eigentlich sollte ich nur den Browser laden, gucken, ob der von der login-Seite zu maps wechselt und dann die cookies einsammeln, oder?

                          David G.D Online
                          David G.D Online
                          David G.
                          schrieb am zuletzt editiert von
                          #30

                          @Garfonso sagte in Test Adapter google-sharedlocations2:

                          Dabei fällt mir wieder ein: Aktuell versucht der Code, wie es auch das Skript gemacht hat, den aktuellen Cookie an den Browser zu geben. Eigentlich ergibt das aber mit dem Storage im Browser nicht so viel Sinn, oder? Eigentlich sollte ich nur den Browser laden, gucken, ob der von der login-Seite zu maps wechselt und dann die cookies einsammeln, oder?

                          Hab da nicht so wirklich Ahnung von. Klingt aber plausibel.

                          Zu meinem hausgemachten Coockie "Problem".
                          Ist in der aktuellen Version auch.
                          Hat Google auch eine logout URL die man vorher pauschal aufrufen kann? Dann würde die login Seite evtl immer klappen.

                          google-sharedlocations2.0
                          2026-02-09 13:49:39.743	error	The step puppeteer failed was: filling in username.
                          
                          google-sharedlocations2.0
                          2026-02-09 13:49:39.743	error	Error in puppeteer: Timed out after waiting 30000ms
                          
                          google-sharedlocations2.0
                          2026-02-09 13:49:03.483	info	Trying to login to Google to get new cookies.
                          
                          google-sharedlocations2.0
                          2026-02-09 13:48:55.331	info	starting. Version 0.3.2 (non-npm: Garfonso/ioBroker.google-sharedlocations2#34a287aeaece01e35b1248eb760e60b50e52e8e5) in /opt/iobroker/node_modules/iobroker.google-sharedlocations2, node: v22.22.0, js-controller: 7.0.7
                          

                          Zeigt eure Lovelace-Visualisierung klick
                          (Auch ideal um sich Anregungen zu holen)

                          Meine Tabellen für eure Visualisierung klick

                          1 Antwort Letzte Antwort
                          0
                          • GarfonsoG Garfonso

                            @David-G.

                            Für das Problem bist du verantwortlich. :-p
                            Wenn der Browser noch eingeloggt ist (weil er ja seine Cookies jetzt speichern darf), dann geht er direkt von der Loginseite zu google maps. Auf google maps findet puppeteer aber auch nach langer Wartezeit das Feld für die Login-Daten nicht. Folglich erfolgt ein timeout...

                            0.3.1 kann das aber jetzt, sie checkt ob das accounts.google.com nach 3 Sekunden verschwunden ist und falls ja, liest den cookie und ist fertig.

                            Hab auch noch einiges umgebaut zu Version 0.3.0, hauptsächlich intern. Ich speicher jetzt das cookie array mit den ganzen Daten und es werden jetzt veraltete cookies auch gelöscht und das ganze etwas sinnvoller aktualisiert.
                            Es gab noch ein Problem mit refresh, da konnte es vorkommen, dass der browser die cookies nicht mag. Das hab ich abgefangen und versucht möglichst sinnvoll zu behandeln... und es gibt jetzt einen state mit dem man einen Refresh mit dem Browser erzwingen kann.

                            Dabei fällt mir wieder ein: Aktuell versucht der Code, wie es auch das Skript gemacht hat, den aktuellen Cookie an den Browser zu geben. Eigentlich ergibt das aber mit dem Storage im Browser nicht so viel Sinn, oder? Eigentlich sollte ich nur den Browser laden, gucken, ob der von der login-Seite zu maps wechselt und dann die cookies einsammeln, oder?

                            B Offline
                            B Offline
                            bommel_030
                            schrieb am zuletzt editiert von
                            #31

                            @Garfonso
                            Musste ein paar Tage pausieren und teste aktuell mit der 0.3.2

                            Der Adapter kann sich mit Nutzer/PW anmelden und bekommt auch einen Cookie. Leider kann er sich mit dem nicht anmelden.
                            Extrahiere ich manuell einen Cookie aus z.B. Chrome und füttere den Adapter damit startet er sofort.
                            Er erkennt auch wenn der Cookie abgelaufen ist, loggt sich wieder ein und holt einen neuen Cookie.
                            Dieser ist dann leider genau so unbrauchbar wie der erste.

                            Was sagt die Cookielength im Log aus? Am Anfang hatte er eine von 3, dann 4. Die haben beide nicht funtkioniert. Die manuell kopierte hatte dann eine Länge von 23. Hatte gehofft es liegt daran, aber zwischenzeitlich hatte er sich einen neuen Cookie mit Länge 24 geholt der auch nicht funktionierte.

                            Ich bin relativ ratlos... Der Adapter macht offensichtlich das was er soll, holt aber scheinbar die falschen Kekse....

                            Wenn man nicht mitbekommt, dass der Adapter Offline geht versucht er so lange einen neuen Cookie zu holen bis Google wegen ungewöhnlicher Anmeldung dicht macht. Kannst du das einbauen, dass er nach x Versuchen aufhört und was im LOG hinterlässt oder nen Datenpunkt beschreibt?

                            Der Teil mit "places" funktioniert auf jeden Fall einwandfrei.
                            Der "alte" Adapter hatte noch ein "force update" Button, könntest du den bei Gelegenheit auch wieder reinbringen?

                            1 Antwort Letzte Antwort
                            1
                            • GarfonsoG Offline
                              GarfonsoG Offline
                              Garfonso
                              Developer
                              schrieb am zuletzt editiert von Garfonso
                              #32

                              @bommel_030
                              Hm.. also die Probleme beim Einloggen bzw. dass der Cookie dann nicht geht, kann ich nicht nachvollziehen... :-/
                              Irgendwie kann ich auch gerade nicht nachvollziehen, warum der Adapter ständig versuchen sollte einen neuen Cookie zu holen. Das darf er eigentlich nur, wenn er es seit dem letzten Versuch einmal geschafft hat, die Positionen abzurufen. Hm... Ich hab mal eine neue Version gemacht, die das explizit loggt. Bitte mal mit Debug-Logging da rein gucken.

                              Die "Länge" ist aktuell, wie viele Cookies der Adapter gelesen hat. Früher war das mal die Länge des Strings, wo alle hintereinander ausgeschrieben waren. Es reichen zum Einloggen aber die drei "richtigen" Cookies (vermutlich reicht sogar "der" richtige eine Cookie). Ich filter das aber aktuell nicht und behalte einfach alle, die Google schickt, damit man da nicht in Probleme mit Anpassung läuft.

                              Ansonsten löscht die 0.3.3 jetzt auch die Cookies vom Browser, wenn man den Cookie-String löscht um sich gezwungen mit Username + Passwort einzuloggen. (hab ich hier zum testen genutzt ;-) - keine Ahnung, ob das bleibt. ).

                              Ultimativer Lovelace Leitfaden: https://forum.iobroker.net/topic/35937/der-ultimative-iobroker-lovelace-leitfaden-dokumentation

                              Lovelace UI Beispiele: https://forum.iobroker.net/topic/35950/zeigt-her-eure-lovelace-visualisierung

                              David G.D B 2 Antworten Letzte Antwort
                              0
                              • GarfonsoG Garfonso

                                @bommel_030
                                Hm.. also die Probleme beim Einloggen bzw. dass der Cookie dann nicht geht, kann ich nicht nachvollziehen... :-/
                                Irgendwie kann ich auch gerade nicht nachvollziehen, warum der Adapter ständig versuchen sollte einen neuen Cookie zu holen. Das darf er eigentlich nur, wenn er es seit dem letzten Versuch einmal geschafft hat, die Positionen abzurufen. Hm... Ich hab mal eine neue Version gemacht, die das explizit loggt. Bitte mal mit Debug-Logging da rein gucken.

                                Die "Länge" ist aktuell, wie viele Cookies der Adapter gelesen hat. Früher war das mal die Länge des Strings, wo alle hintereinander ausgeschrieben waren. Es reichen zum Einloggen aber die drei "richtigen" Cookies (vermutlich reicht sogar "der" richtige eine Cookie). Ich filter das aber aktuell nicht und behalte einfach alle, die Google schickt, damit man da nicht in Probleme mit Anpassung läuft.

                                Ansonsten löscht die 0.3.3 jetzt auch die Cookies vom Browser, wenn man den Cookie-String löscht um sich gezwungen mit Username + Passwort einzuloggen. (hab ich hier zum testen genutzt ;-) - keine Ahnung, ob das bleibt. ).

                                David G.D Online
                                David G.D Online
                                David G.
                                schrieb am zuletzt editiert von
                                #33

                                @Garfonso

                                Nachdem ich den Adapter gelöscht und neu jnsgaohan läuft er auch wieder. Evtl hab ich mit den Coockies was zerschossen gehabt......

                                P. S.
                                Das Feature Request auf git ist von mir ^^.

                                Installiere nachher mal die neue Version von heute.

                                Zeigt eure Lovelace-Visualisierung klick
                                (Auch ideal um sich Anregungen zu holen)

                                Meine Tabellen für eure Visualisierung klick

                                1 Antwort Letzte Antwort
                                1
                                • GarfonsoG Garfonso

                                  @bommel_030
                                  Hm.. also die Probleme beim Einloggen bzw. dass der Cookie dann nicht geht, kann ich nicht nachvollziehen... :-/
                                  Irgendwie kann ich auch gerade nicht nachvollziehen, warum der Adapter ständig versuchen sollte einen neuen Cookie zu holen. Das darf er eigentlich nur, wenn er es seit dem letzten Versuch einmal geschafft hat, die Positionen abzurufen. Hm... Ich hab mal eine neue Version gemacht, die das explizit loggt. Bitte mal mit Debug-Logging da rein gucken.

                                  Die "Länge" ist aktuell, wie viele Cookies der Adapter gelesen hat. Früher war das mal die Länge des Strings, wo alle hintereinander ausgeschrieben waren. Es reichen zum Einloggen aber die drei "richtigen" Cookies (vermutlich reicht sogar "der" richtige eine Cookie). Ich filter das aber aktuell nicht und behalte einfach alle, die Google schickt, damit man da nicht in Probleme mit Anpassung läuft.

                                  Ansonsten löscht die 0.3.3 jetzt auch die Cookies vom Browser, wenn man den Cookie-String löscht um sich gezwungen mit Username + Passwort einzuloggen. (hab ich hier zum testen genutzt ;-) - keine Ahnung, ob das bleibt. ).

                                  B Offline
                                  B Offline
                                  bommel_030
                                  schrieb am zuletzt editiert von
                                  #34

                                  @Garfonso
                                  Ich kann mir auf die Cookies auch keinen Reim machen...
                                  v0.3.3 konnte mit Benutzername/Passwort keinen (für Google akzeptablen Cookie) holen. Manuell Cookie geholt, Adapter läuft.
                                  Nach 2h Cookie abgelaufen, er kann keinen neuen holen, versucht es weiter bis Google wegen Sicherheitsbedenken sperrt.
                                  Hab es leider erst zu spät mitbekommen. Google entsperrt, wieder mit manuellem Cookie gefüttert, seitdem läuft er jetzt gut 1 Woche.

                                  In der Zeit hat er einige 500er Fehler überlebt, mehrfach den abgelaufenen Cookie erneuert, Chromium Update über die Konsole überlebt und sich nach sogar nach einem ioBroker-Absturz eigenständig mit frischen Keksen versorgt...

                                  1 Antwort Letzte Antwort
                                  0
                                  • GarfonsoG Garfonso
                                    Aktuelle Test Version 0.3.2
                                    Veröffentlichungsdatum 9.02.2026
                                    Github Link https://github.com/Garfonso/ioBroker.google-sharedlocations2

                                    google-sharedlocations gibt es ja schon länger und hat das große Problem, dass der alte Login nicht mehr ging und jetzt mit Cookie herumkopiert werden muss, aber der läuft immer ab und mäh … :-/

                                    @david-g. kam auf die grandiose Idee, ein Skript zu erstellen, das mit puppeteer (einem "ferngesteuerten" Browser) einen neuen Cookie holt und für den Adapter nutzbar macht. Das brachte mich auf die Idee, das einfach in den Adapter zu gießen. Damit der auch mal die Chance auf das Repository hat und um Altlasten loszuwerden, habe ich heute einfach von 0 angefangen. Vielen Dank für die Idee. :-)

                                    Wie nutze ich den Adapter?

                                    Ähnlich, wie der alte Adapter auch. Alte Nutzer also gerne überspringen. Man sollte für den Adapter einen neuen Google-Account anlegen. Also einen extra für ioBroker. Mit diesem Account teilt man dann den Standort von allen anderen Accounts, deren Position man gerne überwachen möchte.

                                    Die Nutzerdaten vom ioBroker-Google-Account trägt man im Adapter ein und fertig.

                                    2FA & Cookie

                                    Wichtig: Aktuell wird kein 2FA unterstützt. Da der Account aber nur für ioBroker genutzt werden soll, ist das zu verkraften. So geht es sehr bequem. Wer das aber unbedingt 2FA möchte oder aus anderen Gründen keinen Benutzernamen / Passwort in der Config eintragen möchte, kann einfach Benutzername und Passwort leer lassen. Dann muss man weiterhin den Cookie von google.com/maps manuell kopieren und im Datenpunkt info.currentCookies eintragen.
                                    Der Adapter ist nun auch so gebaut, dass er einen Cookie, der dort eingetragen wird, automatisch übernimmt. (Wenn man den state leer macht, versucht er sich auch erneut mit Benutzer und Passwort einzuloggen, wenn vorhanden).

                                    Puppeteer & Ressourcen

                                    Puppeteer ist ein kompletter Browser. Insofern muss man auf einem Raspberry Pi oder so beim ersten Start schon was länger rechnen, bis was passiert. Ich hoffe, es klappt überhaupt. Der Browser wird auch wieder beendet, wenn das Einloggen geklappt hat. Wenn der Cookie abgelaufen ist, wird wieder versucht, den Browser zu starten.

                                    Status

                                    Es funktioniert. :-) Mal sehen, wo überall noch kaputtgeht … Es ist das Werk von einem Tag. Viel Spaß beim Testen.

                                    0.1.0

                                    Fences und places habe ich auch wieder implementiert. Sollte ähnlich sein, wie vorher. Sonst habe ich einiges umgebaut und auch etwas Cookie-Behandlung optimiert. Mal sehen, ob er sich jetzt nicht so oft neu einloggen muss. Oder ob überhaupt noch alles funktioniert. Hust ;-)

                                    0.2.0

                                    Chrome speichert jetzt Daten. Mal sehen, ob ihm das hilft. Außerdem schaut der Adapter erst einmal, was Chrome so aus dem Cookie macht und ob das schon reicht, um die Locationdata wieder abrufen zu können.

                                    0.3.x

                                    Hab intern viel am Cookie geändert. Aus Usersicht gibt es jetzt den State info.forceRefreshWithBrowser, den man auf true setzen kann. Dann startet der Adapter den Browser und liest den Cookie daraus aus.
                                    Außerdem scheint der Refresh jetzt deutlich besser. Man kann den Adapter jetzt auch ohne User/Passwort in den Settings relativ gut nutzen. Vielleicht geht sogar 2FA, wenn man den Cookie in den State reinkopiert. Gerne mal jemand testen.

                                    GaspodeG Offline
                                    GaspodeG Offline
                                    Gaspode
                                    schrieb am zuletzt editiert von Gaspode
                                    #35

                                    @Garfonso
                                    Super, dass du dich um den Adapter kümmerst.

                                    Edit: Nach dem 3. Versuch hat es jetzt einfach so funktioniert. keine Ahnung, warum es zunächst den Fehler gab. Jetzt läuft die Sache erst mal. Ich beobachte. Vielen Dank!

                                    Ich hab jetzt mal getestet (unter Windows) und bekomme allerdings folgende Fehlermeldung:

                                    2026-03-09 15:24:40.580 - info: google-sharedlocations2.0 (6680) starting. Version 0.3.3 (non-npm: Garfonso/ioBroker.google-sharedlocations2#861d3ca3b6b823f42e232d261e612220ab634de9) in C:/ioBroker/lonwolf/node_modules/iobroker.google-sharedlocations2, node: v22.21.0, js-controller: 7.0.7
                                    2026-03-09 15:24:40.623 - debug: google-sharedlocations2.0 (6680) Loaded 0 cookies from state.
                                    2026-03-09 15:24:40.624 - debug: google-sharedlocations2.0 (6680) No cookie found in states, trying to log in to get new one.
                                    2026-03-09 15:24:40.625 - debug: google-sharedlocations2.0 (6680) Trying to refresh cookie by loading Google Maps with existing cookie in Browser.
                                    2026-03-09 15:24:40.625 - debug: google-sharedlocations2.0 (6680) Starting browser.
                                    2026-03-09 15:24:43.037 - debug: google-sharedlocations2.0 (6680) browser started, opening new page.
                                    2026-03-09 15:24:45.277 - debug: google-sharedlocations2.0 (6680) Loading Google login page to refresh cookie.
                                    2026-03-09 15:24:50.482 - debug: google-sharedlocations2.0 (6680) Waiting for page to load, currently waiting fixed 5 seconds, because network never gets idle for maps
                                    2026-03-09 15:24:56.034 - info: google-sharedlocations2.0 (6680) Trying to login to Google to get new cookies.
                                    2026-03-09 15:24:56.034 - debug: google-sharedlocations2.0 (6680) Starting browser.
                                    2026-03-09 15:25:00.589 - debug: google-sharedlocations2.0 (6680) browser started, opening new page.
                                    2026-03-09 15:25:01.197 - debug: google-sharedlocations2.0 (6680) going to google login page.
                                    2026-03-09 15:25:05.681 - debug: google-sharedlocations2.0 (6680) waiting for login / maps page to load (fixed 3 seconds timeout)
                                    2026-03-09 15:25:08.689 - debug: google-sharedlocations2.0 (6680) filling in username.
                                    2026-03-09 15:25:09.774 - debug: google-sharedlocations2.0 (6680) clicking user next button.
                                    2026-03-09 15:25:10.140 - debug: google-sharedlocations2.0 (6680) waiting for network idle before filling password
                                    2026-03-09 15:25:14.094 - debug: google-sharedlocations2.0 (6680) filling in password.
                                    2026-03-09 15:25:44.104 - error: google-sharedlocations2.0 (6680) Error in puppeteer: Timed out after waiting 30000ms
                                    2026-03-09 15:25:44.104 - error: google-sharedlocations2.0 (6680) The step puppeteer failed was: filling in password.
                                    

                                    Eine Idee, woran das liegen könnte?

                                    1 Antwort Letzte Antwort
                                    0
                                    Antworten
                                    • In einem neuen Thema antworten
                                    Anmelden zum Antworten
                                    • Älteste zuerst
                                    • Neuste zuerst
                                    • Meiste Stimmen


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    617

                                    Online

                                    32.7k

                                    Benutzer

                                    82.5k

                                    Themen

                                    1.3m

                                    Beiträge
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                    ioBroker Community 2014-2025
                                    logo
                                    • Anmelden

                                    • Du hast noch kein Konto? Registrieren

                                    • Anmelden oder registrieren, um zu suchen
                                    • Erster Beitrag
                                      Letzter Beitrag
                                    0
                                    • Home
                                    • Aktuell
                                    • Tags
                                    • Ungelesen 0
                                    • Kategorien
                                    • Unreplied
                                    • Beliebt
                                    • GitHub
                                    • Docu
                                    • Hilfe