Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Apple Find Me HTTP-Request Fehler

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Apple Find Me HTTP-Request Fehler

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

      Hallo

      Seit einiger Zeit erhalte ich auf dem Apple Find Me Adapter in unterschiedlichen Abständen folgenden Fehler im Log:

      2022-07-14 18:55:24.507 - error: apple-find-me.3 (62116) Error on HTTP-Request. Please check your credentials. StatusCode: 401 Retry in 5 minutes. (1/3)
      

      Wer kann damit was anfangen, und mir eventuell sagen was das zu bedeuten hat? Ich erhalte alle anderen Daten richtig. Somit sind die Anmeldeinformationen richtig eingetragen.

      Neuschwansteini 1 Reply Last reply Reply Quote 0
      • Neuschwansteini
        Neuschwansteini @stefu87_CH last edited by

        @stefu87_ch Hi, ja hier auch, dann laeuft er mal wieder... ich erstelle mal ein Issue auf git..

        ah, da war einer schon schneller.. existiert schon ein Issue.. also abwarten.. hab mal n Logfile geschickt..

        1 Reply Last reply Reply Quote 0
        • S
          saeft_2003 Most Active last edited by

          Fehler hab ich im Moment auch... gibt es schon eine Lösung?

          1 Reply Last reply Reply Quote 0
          • tomtomzurich
            tomtomzurich last edited by

            Auch bei mir geht nichts mehr ...

            Seit einigen Wochen geht Apple find me nicht mehr.
            Error on HTTP-Request. Please check your credentials. StatusCode: 401 Retry in 5 minutes. (1/3)

            Meine Credentials sind garantiert richtig (1. ging's bislang auch und 2. x-mal verifiziert)
            Auch mit einem speziellen Apple App Passwort hab ich hier keine Chance.
            Gehe mal davon aus, dass Apple seinen Login geändert hat 😞

            Bildschirm­foto 2022-10-27 um 18.24.34.png

            Thomas Braun 1 Reply Last reply Reply Quote 0
            • Thomas Braun
              Thomas Braun Most Active @tomtomzurich last edited by

              @tomtomzurich

              Update mal dein nodejs auf v16 und verwende ein Passwort ohne 'obskure' Sonderzeichen, wenn möglich.

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

                @thomas-braun

                Funktioniert der Adapter bei dir?

                Thomas Braun S 2 Replies Last reply Reply Quote 0
                • Thomas Braun
                  Thomas Braun Most Active @Neuschwansteini last edited by

                  @ilovegym

                  Nö. Aber ich hab den auch nicht im Einsatz. 🤡

                  Neuschwansteini 1 Reply Last reply Reply Quote 0
                  • S
                    stefu87_CH @Neuschwansteini last edited by

                    @ilovegym Bei mir funktioniert der Adapter seit einigen Wochen auch nicht mehr. Bekomme den gleichen Fehler.

                    DJMarc75 1 Reply Last reply Reply Quote 0
                    • Neuschwansteini
                      Neuschwansteini @Thomas Braun last edited by

                      @thomas-braun 😂 gut, hätte mich auch sehr gewundert!

                      Thomas Braun 1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @Neuschwansteini last edited by

                        @ilovegym

                        Aber auf die empfohlene nodejs@16 zu hüpfen ist unabhängig davon keine doofe Idee.

                        1 Reply Last reply Reply Quote 1
                        • DJMarc75
                          DJMarc75 @stefu87_CH last edited by

                          @stefu87_ch sagte in Apple Find Me HTTP-Request Fehler:

                          Bei mir funktioniert der Adapter seit einigen Wochen auch nicht mehr. Bekomme den gleichen Fehler.

                          Du weisst aber schon dass das Dein eigener Beitrag ist ?!
                          https://forum.iobroker.net/topic/56349/apple-find-me-http-request-fehler

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            stefu87_CH @DJMarc75 last edited by

                            @djmarc75 ja das weiss ich, aber dazwischen hat er einige Zeit einwandfrei funktioniert und jetzt fängt er wieder an mit Fehler im Log schreiben.

                            DJMarc75 1 Reply Last reply Reply Quote 0
                            • DJMarc75
                              DJMarc75 @stefu87_CH last edited by

                              @stefu87_ch sagte in Apple Find Me HTTP-Request Fehler:

                              dazwischen hat er einige Zeit einwandfrei funktioniert

                              na das stand hier ja nirgendwo 🙄

                              1 Reply Last reply Reply Quote 0
                              • P
                                prorun last edited by

                                Hallo Zusammen,

                                kennt jemand eine funktionierende Alternative um den Standort von Apple Geräten abgefragt zu bekommen?
                                Am besten ohne zusätzliche App die auf den Geräten installiert werden muss.

                                Habe vom gleichen Entwickler eine Variante für NodeRed gefunden. Weiß jemand ob das noch funktioniert oder ob da die gleiche Problematik besteht? Ich selbst habe NodeRed (noch) nicht im Einsatz.

                                https://github.com/PfisterDaniel/node-red-contrib-apple-find-me

                                Neuschwansteini 1 Reply Last reply Reply Quote 0
                                • Neuschwansteini
                                  Neuschwansteini @prorun last edited by

                                  @prorun denke das brauchst du nicht zu testen, das letzte Release ist aehnlich dem iobroker-Adapter, seitdem hat der Entwickler wohl keine Zeit mehr gehabt, daran zu arbeiten.. und Apple hat wohl die Anmeldung geaendert..

                                  T 1 Reply Last reply Reply Quote 0
                                  • T
                                    thorkillar @Neuschwansteini last edited by

                                    @ilovegym sagte in Apple Find Me HTTP-Request Fehler:

                                    itdem hat der Entwickler wohl keine Zeit mehr gehabt, daran zu arbeiten.. und Apple hat wohl die Anmeldung geaendert..

                                    Moin, gibt es dazu schon neue Infos?

                                    1 Reply Last reply Reply Quote 0
                                    • snotech
                                      snotech last edited by

                                      Habe die gleiche Frage? Würde den Adapter gerne nutzen.

                                      W Neuschwansteini 2 Replies Last reply Reply Quote 0
                                      • W
                                        Wildbill @snotech last edited by

                                        @snotech Ich habe parallel zu iobroker unter Anderem Homeassistant laufen. Dafür git es eine Integration iClod3 v3. Damit habe ich alles Benötigte in Homeassistant. Und für iobroker gibt es einen Adapter „Hass“, mit dem man eben Homeassistant mit iobroker verknüpft.
                                        Läuft stabil, ist aber nichts, was man mal eben schnell in 10 Minuten einrichtet. Lesen der Dokus (Aufsetzen von Homeassistant sowie die verlinkte Doku für iCloud3) ist zwingend erforderlich.

                                        Gruss, Jürgen

                                        1 Reply Last reply Reply Quote 0
                                        • Neuschwansteini
                                          Neuschwansteini @snotech last edited by

                                          @snotech @Wildbill @thorkillar

                                          ein neuer Developer hatte vor ein paar Monaten etliche Wochen dran gesessen, aber leider ist nicht moeglich, den Adapter vernuenftig wieder zum laufen zu bringen, da hier eine API benutzt wird, die nicht mehr richtig von Apple unterstuetzt wird.

                                          Von daher ist das Projekt erstmal auf Eis.

                                          Ich schreib dem Developer mal(weiss nicht ob er hier im Forum ist, glaube nicht), ob er sich diese icloudv3 mal ansehen kann.. vielleicht gehts ja damit doch als iobroker-adapter.. waere schon cool.. 🙂

                                          OliverIO 1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @Neuschwansteini last edited by

                                            könnte man nicht hier reinschauen, wie das bei ha gemacht wird?
                                            https://github.com/gcobb321/icloud3_v3/blob/a3f302b132dc68beadd4ad9c303d13e3c22c5d9e/custom_components/icloud3/support/pyicloud_ic3.py#L1549

                                            nur diesen Teil hat chatgpt wie folgt übersetzt
                                            klar, das ist nur ein Teil und da muss man sich etwas tiefer reinknien.
                                            evtl könnte jemand mit python kenntnissen und einer ha installation da an bestimmten stellen noch sowas wie console.log einbauen um die request reihenfolge herauszufinden.
                                            aber machbar müsste das schon sein

                                            class FindMyFriendsService {
                                                constructor(PyiCloud, serviceRoot, Session, params) {
                                                    this.Session = Session;
                                                    this.PyiCloud = PyiCloud;
                                                    this.params = params;
                                                    this._serviceRoot = serviceRoot;
                                                    this.refreshAlways = false;
                                                    this.response = {};
                                                    this.isServiceAvailable = true;
                                                    this.isServiceNotAvailable = false;
                                                    this.setServiceAvailable(serviceRoot !== null);
                                            
                                                    this.deviceIdByFmfEmail = {};
                                                    this.fmfEmailByDeviceId = {};
                                                    this.deviceInfoByFmfEmail = {};
                                                    this.deviceFormIcloudFmfList = [];
                                                    this.devicesWithoutLocationData = [];
                                            
                                                    this._contactsEndpoint = `${this._serviceRoot}/co`;
                                                    this._contactsRefreshUrl = `${this._contactsEndpoint}/startup`;
                                                    this._contactsNextUrl = `${this._contactsEndpoint}/contacts`;
                                                    this._contactsChangesetUrl = `${this._contactsEndpoint}/changeset`;
                                            
                                                    this.refreshClient();
                                                }
                                            
                                                setServiceAvailable(available) {
                                                    this.isServiceAvailable = available;
                                                    this.isServiceNotAvailable = !available;
                                                }
                                            
                                                refreshClient() {
                                                    if (this.isServiceNotAvailable) return;
                                            
                                                    let paramsContacts = {...this.params, clientVersion: "2.1", locale: "en_US", order: "last,first"};
                                            
                                                    this.Session.get(this._contactsRefreshUrl, { params: paramsContacts })
                                                        .then(response => {
                                                            this.response = response.data;
                                                            let paramsNext = {
                                                                ...paramsContacts,
                                                                prefToken: this.response.prefToken,
                                                                syncToken: this.response.syncToken,
                                                                limit: "0",
                                                                offset: "0",
                                                            };
                                                            return this.Session.get(this._contactsNextUrl, { params: paramsNext });
                                                        })
                                                        .then(response => {
                                                            this.response = response.data;
                                                        })
                                                        .catch(error => {
                                                            console.error(error);
                                                            this.response = {};
                                                        });
                                                }
                                            
                                                contactsAll() {
                                                    this.refreshClient();
                                                    return this.response.contacts;
                                                }
                                            
                                                _confFmfDevicesNotSetUp() {
                                                    const devicesNotSetUp = Gb.confDevices
                                                        .filter(confDevice => confDevice[CONF_FMF_EMAIL] !== NONE_FNAME && !this.deviceIdByFmfEmail[confDevice[CONF_FMF_EMAIL]])
                                                        .map(confDevice => `${confDevice[CONF_IC3_DEVICENAME]} (${confDevice[CONF_FMF_EMAIL]})`);
                                            
                                                    return devicesNotSetUp.length ? devicesNotSetUp.join("\n") : "";
                                                }
                                            
                                                get timestampField() {
                                                    return 'timestamp';
                                                }
                                            
                                                get dataSource() {
                                                    return FMF_FNAME;
                                                }
                                            
                                                // ... Weitere Methoden hier ...
                                            
                                                contactIdFor(identifier, defaultValue = null) {
                                                    const lookupKey = identifier.includes("@") ? "emails" : "phones";
                                            
                                                    const matcher = item => {
                                                        const hit = item[lookupKey];
                                                        if (!Array.isArray(hit)) {
                                                            return hit === identifier;
                                                        }
                                                        return hit.includes(identifier);
                                                    };
                                            
                                                    const candidates = this.contactDetails
                                                        .filter(matcher)
                                                        .map(item => item.id);
                                            
                                                    return candidates.length ? candidates[0] : defaultValue;
                                                }
                                            
                                                locationOf(contactId, defaultValue = null) {
                                                    const candidates = this.locations
                                                        .filter(item => item.id === contactId)
                                                        .map(item => item.location);
                                            
                                                    return candidates.length ? candidates[0] : defaultValue;
                                                }
                                            
                                                get data() {
                                                    if (!this.response) {
                                                        this.refreshClient();
                                                    }
                                                    return this.response;
                                                }
                                            
                                                get locations() {
                                                    return this.response.locations || [];
                                                }
                                            
                                                get followers() {
                                                    return this.response.followers || [];
                                                }
                                            
                                                get following() {
                                                    return this.response.following || [];
                                                }
                                            
                                                get contactDetails() {
                                                    return this.response.contactDetails || [];
                                                }
                                            
                                                get myPrefs() {
                                                    return this.response.myPrefs || [];
                                                }
                                            
                                                get deviceIdentifier() {
                                                    return `${this.response.firstName || ''} ${this.response.lastName || ''}`.trim();
                                                }
                                            
                                                toString() {
                                                    try {
                                                        return `<FindMyFriendsService: ${this.PyiCloud.apple_id}>`;
                                                    } catch {
                                                        return "<FindMyFriendsService: NotSetUp>";
                                                    }
                                                }
                                            }
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            531
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            11
                                            20
                                            1867
                                            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