Externe Integration - Apple Device Tracker

Hallo,

Hier ist eine externe Apple Device Tracker-Integration:

Damit können Sie Ihre Apple-Geräte über „Ortung“ verfolgen und als Anwesenheitssensoren nutzen.

Sie sollte bald im Store verfügbar sein

Zögern Sie nicht, mir Ihr Feedback zu dieser externen Integration zu geben.

Das ist eine super Idee @prohand, danke!
Aber ich sehe sie nicht im Store, obwohl ich auf ‹ Aktualisieren › gedrückt habe. Weißt du, ob es noch eine andere Manipulation gibt, die ich vornehmen sollte? Oder einfach noch etwas warten?

Ich denke, wir sollten noch etwas warten, denn dies läuft noch nicht seit 16:30 Uhr:

Es wäre toll, einen Druckknopf zu haben, um das Telefon klingeln zu lassen, zusätzlich zur Aktion :blush: :sweat_smile:

Ja, es gibt eine andere Methode, es gibt einen „Von GitHub installieren“-Button, der dafür da ist.
image

Du musst nur das Repository angeben und auf „Installieren“ klicken

@prohand, ich habe installiert und getestet. Die iCloud-Verbindung ist okay, und der Entdeckungs-Tab zeigt mein iPhone an. Aber es werden nicht die 6 AirTags angezeigt, die mit meinem iCloud-Konto verbunden und in der App „Ortung“ sichtbar sind.

Ich habe deine Dokumentation gelesen, die übrigens sehr klar ist. Aber ich habe keine spezifische Aktion gefunden, die ich ausführen soll. Und du schreibst: „Was Sie erhalten: Ein Gladys-Gerät pro Apple-Gerät (iPhone, …, AirTag …)“, also muss irgendwo etwas angepasst werden :wink:.

Vielen Dank im Voraus für deine Ratschläge.

Danke für dein Feedback.
Ich hatte nicht bemerkt, dass meine nicht vorhanden sind :sweat_smile:

Hier ist Claudes Rückmeldung zum Thema:

Die „Objekte“ (AirTag, Drittanbieter-Tracker) haben eine von Ende zu Ende verschlüsselte Position: Nur die App „Ortung“ auf Apple-Hardware entschlüsselt sie. iCloud.com zeigt übrigens nur den Tab „Geräte“ an.

Ich korrigiere die Informationen in der Dokumentation in Version 1.0.2 sowie das cover.png

Du kannst das im Konfigurationsmenü ganz unten machen:

Ach verdammt… Ich hätte gerne Szenen basierend auf dem Standort der AirTags gestaltet. Egal.

Das Ziel ist es, einen schnellen Zugriff über das Dashboard zu haben :sweat_smile:

Oft verliert meine Frau ihr Telefon und bittet mich, sie anzurufen. Da reicht es mir mit meinen Tablets, die keine Admin-Rechte haben, auf einen Knopf zu klicken und die Aktion auszulösen.

Das ist in der neuen Version implementiert :wink:
Dir bleibt nur noch übrig, die Integration sowie das Gerät, das du bereits hinzugefügt hast, zu aktualisieren :slight_smile:

Zur Information: Version 1.0.9 wurde veröffentlicht, die ein Problem behebt, bei dem man folgende Meldung von Gladys erhielt:

Man muss die Geräte neu erstellen, um den Fehler nicht mehr zu haben

Achtung: Wenn das Gerät geladen wird, erscheint es nicht mehr unter der Funktion « Batterie », sondern in einer neuen Funktion

image

Hallo, seit dem Update bin ich nicht mehr verbunden und wenn ich versuche, mich einzuloggen, bekomme ich Fehler

[2026-09-20T17:25:42.545Z] [INFO] Starte die Apple Device Tracker Integration...
[2026-09-20T17:25:42.785Z] [INFO] [gladys-sdk] verbunden mit Gladys (http://172.30.0.1:8455)
[2026-09-20T17:25:43.482Z] [INFO] [icloud] Angemeldet bei iCloud mit der gespeicherten Sitzung
[2026-09-20T17:25:43.706Z] [INFO] [tracker] Die iCloud-Sitzung ist abgelaufen, erneute Anmeldung
[2026-09-20T17:25:44.437Z] [INFO] [icloud] Angemeldet bei iCloud mit der gespeicherten Sitzung
[2026-09-20T17:25:44.596Z] [ERROR] iCloud-Verbindung fehlgeschlagen: Die iCloud-Sitzung ist beim Lesen von Find My abgelaufen
SessionExpiredError: Die iCloud-Sitzung ist beim Lesen von Find My abgelaufen
    at ICloudClient.refreshClient (file:///app/src/icloud/client.js:721:13)
    at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
    at async ICloudClient.fetchDevices (file:///app/src/icloud/client.js:758:19)
    at async AppleDeviceTracker.doRefresh (file:///app/src/tracker.js:504:20)
    at async AppleDeviceTracker.refresh (file:///app/src/tracker.js:464:23)
    at async AppleDeviceTracker.start (file:///app/src/tracker.js:156:5)
    at async initialize (file:///app/index.js:206:20)
    at async GladysIntegration.<anonymous> (file:///app/index.js:464:3)

Kann mir jemand helfen?

Danke für dein Feedback, hier ist die Rückmeldung von Claude:

Ursache des Bugs (in deinen Logs sichtbar):

  • Find My lehnt die Sitzung ab (401/421/450) → der Tracker ruft login() auf
  • aber login() sieht ein Token im Speicher → es führt einfach accountLogin() aus, das Apple noch akzeptiert → Log « Angemeldet mit der gespeicherten Sitzung »
  • Der erneute Versuch stößt auf dieselbe Ablehnung durch Find My → « iCloud-Verbindung fehlgeschlagen » und die Integration bleibt tot

Kurz gesagt: Es wurde nie wirklich neu verbunden, es wurde die bereits abgelehnte Sitzung wiederverwendet.

Was ich korrigiert habe (Branch claude/magical-knuth-gqdra9, Commit 18109a3):

  • login({ force: true }): Überspringt die gespeicherte Sitzung und führt die echte Anmeldung per Passwort (SRP) durch. Das Trust-Token wird beibehalten → kein neuer 2FA-Code muss eingegeben werden.
  • Der Tracker verwendet dieses force, wenn Find My die Sitzung ablehnt.
  • Das normale login() löscht auch abgelehnte Tokens + Cookies, bevor es zu SRP zurückkehrt (früher wurden sie zurückgesendet).
  • Wenn der erste Refresh beim Start fehlschlägt, startet der Erneuerungszyklus trotzdem → die Integration repariert sich selbst beim nächsten Tick, anstatt bis zum Neustart des Containers stumm zu bleiben.

Korrektur verfügbar in Version 1.0.10, die gerade veröffentlicht wurde :slight_smile:

Version 2 ist da mit Widgets, Triggern und Aktionen :slight_smile:

Ich nutze 2 Factor, und habe mehrere vertrauenswürdige Geräte, allerdings ist es mir nicht möglich den Code einzugeben, da es immer zu Fehlern kommt. Selbst wenn ich nochmal einen Code anfordere (was funktioniert!), erscheint dennoch die o.g. Meldung und der Code geht nach wie vor nicht. Logs anbei:

[2026-10-18T13:15:03.596Z] [INFO] Starting the Apple Device Tracker integration...
[2026-10-18T13:15:05.006Z] [INFO] [gladys-sdk] connected to Gladys (http://172.30.0.1:8420)
[2026-10-18T13:15:05.044Z] [INFO] Home coordinates pre-filled from the Gladys house
[2026-10-18T13:15:05.749Z] [INFO] Waiting for the Apple ID and password to be filled in
[2026-10-18T13:17:55.527Z] [INFO] [home-location] Presence is measured from the picked Gladys house
[2026-10-18T13:17:55.527Z] [INFO] onConfigUpdated -> the Apple account changed, signing in again
[2026-10-18T13:17:55.552Z] [INFO] [home-location] Presence is measured from the picked Gladys house
[2026-10-18T13:17:56.874Z] [INFO] [icloud] iCloud accepted the password and is asking for a two-factor code
[2026-10-18T13:17:57.147Z] [INFO] [icloud] Apple two-factor state: trusted device(s) available, 0 trusted phone number(s)
[2026-10-18T13:17:57.498Z] [INFO] [icloud] Apple pushed a two-factor code to the trusted devices
[2026-10-18T13:17:57.603Z] [INFO] Two-factor code required
[2026-10-18T13:18:26.365Z] [INFO] [icloud] Apple two-factor state: trusted device(s) available, 0 trusted phone number(s)
[2026-10-18T13:18:26.892Z] [WARN] [icloud] Apple did not push the code to the trusted devices (HTTP 409) [HTTP 409]
[2026-10-18T13:18:53.679Z] [INFO] [home-location] Presence is measured from the picked Gladys house
[2026-10-18T13:19:51.343Z] [INFO] [icloud] Apple two-factor state: trusted device(s) available, 0 trusted phone number(s)
[2026-10-18T13:19:51.835Z] [WARN] [icloud] Apple did not push the code to the trusted devices (HTTP 409) [HTTP 409]

Danke für die Logs und den Screenshot, das hat geholfen, das Problem sofort zu finden :+1:

Die Ursache: Seit kurzem antwortet Apple mit « HTTP 409 » selbst wenn der Code korrekt ist. Das echte Ergebnis ist in der Antwort versteckt, und die Integration nahm diesen 409 als Ablehnung. Deshalb wurden alle deine Codes abgelehnt.

Behoben in Version 2.4.1, die gerade veröffentlicht wurde:

  • Ein korrekter Code wird jetzt akzeptiert, selbst wenn Apple 409 antwortet;
  • Der Button « neuer Code » bleibt nicht mehr bei dem Fehler 409 stehen;
  • Vertrauenswürdige Telefonnummern werden besser erkannt, damit die SMS-Zwei-Faktor-Authentifizierung funktioniert, falls nötig.

Zu tun:

  1. Aktualisiere die Integration auf 2.4.1.
  2. Klicke auf « Neuen Zwei-Faktor-Code anfordern » (neuen Code anfordern).
  3. Gib den erhaltenen Code in « Zwei-Faktor-Code übermitteln » ein.

Falls es immer noch nicht funktioniert, schick mir die neuen Logs, besonders wenn sie eine Nachricht direkt nach der Code-Eingabe enthalten.

Die Namen der Buttons sind auf Deutsch, wie in seinem Screenshot. Ich kann dir auch eine deutsche Version machen, wenn du möchtest.

Wenn das nicht Claude ist, der plaudert, dann hält sich @prohand für Alain Delon :joy:

Mdr die extra kopierte und eingefügte Zeile :sweat_smile:

Herzlichen Dank. Funktioniert nun :slight_smile:

Ich habe noch zwei Dinge gefunden die scheinbar ein Problem sind:

a) Es wird kein Batterie Status übermittelt, von keinem meiner Apple Geräten (8 Stück). Alle senden ins Log:

[2026-10-18T15:30:30.025Z] [INFO] [tracker] iPad: Find My reports no charging state (batteryStatus: Unknown), so the Charging feature stays empty

b) Obwohl die Familienfreigabe in der Konfiguration aktiviert ist, sehe ich nur meine eigenen Geräte, keine freigegeben Geräte meiner Familie. Im Log steht nichts.

Das mit der Batterie hat sich erledigt. Es hat ca. 5 Minuten gedauert, bis der Wert der Batterie übermittelt wurde. Die Eigenschaft ist nun da. :call_me_hand: