iCloud binding refresh device data failed (again)

I havent. But this really seems like apple has changed something on their side…

Just posting to say that I am also seeing this problem. No 2FA. Posting so i can follow happy to test any bindings with a solution.

same issue here, 2FA activated

Looking at home assistant’s iCloud binding, it is still working (haven’t found anyone reporting outage), and also have several good addition (dynamic device update for example). Should we get ideas from that implementation?

hmm that´s strange, for me i did some updates 6 i think and after that maybe because of the restart it stops working…

Great idea, I briefly scanned the underlying implementation, they use slightly different end-points and there binding does not (seem to) support working around the 2FA like we did now. So it requires a lot of work to implement this :frowning:

https://fmipmobile.icloud.com/fmipservice/device/{some-id}/playSound vs https://fmipmobile.icloud.com/fmipservice/client/web/playSound and also the authentication mechanism seems to have changed.

Yes that happens recently also to a big binding, the harmony hub :frowning:

Yes I also use harmony hub… But they somehow ‘fixed’ this. Apple won’t fix our ‘issue’ :slight_smile:

I also had a look at their config/code.
So basically what they do is ‘faking’ as a client. That’s how they can acquire the 2FA code through the phone, right?
It has one downside, sometimes you have to reenter this code (about every 2 months).

This seems a bigger rework to do… But doesn’t it looks like a more ‘stable’ solution? I know we can’t know this for sure, but if we only have this one option…

It looks like the only solution to me, but indeed whether its for the long or a short period of time no one knows. As long as Apple does not offer an official API things like this will be all we have…

A lot of effort also went into switching to the more future proof API: https://github.com/openhab/openhab2-addons/pull/4926

Yes I know it. That’s why I thought this could be the case in this scenario as well. Maybe it will be a good pre-work to look back (mostly in home-assistant forums?) how many times and in which complexity level this API has changed (we can only get estimations here as well…).

Just saw the binding is back on track and seems to be working since this morning.

3 Likes

Well… not working here. And fmip.icloud.com returns:

Http/1.1 Service Unavailable

I had to disable and enable the iCloud bridge thing (in PaperUI) to get it working again.

Just bundle:refresh on the openhab-cli

1 Like

Is there a way to schedule a bundle:refresh every few days to keep this working?

1 Like

What kind of problem do you encounter during use? Why you have to refresh it every few days?

I had problems with my iCloud binding and couldn´t find any solution.
I´m using a dummy account that only has access to the iCloud locations and can´t do anything like buying apps.
The log only said:

2019-03-13 16:56:33.162 [hingStatusInfoChangedEvent] - 'icloud:device:openHAB:iPMichael' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2019-03-13 16:56:33.233 [hingStatusInfoChangedEvent] - 'icloud:device:openHAB:iPMichael' changed from INITIALIZING to OFFLINE (CONFIGURATION_ERROR): The device is not included in the current account

Today i logged into the account and had a look at the find my iphone feature.
I could see every device that is connected to the family.
Back at the log and what do i see?

2019-03-13 17:01:35.369 [hingStatusInfoChangedEvent] - 'icloud:device:openHAB:iPMichael' changed from OFFLINE (CONFIGURATION_ERROR): The device is not included in the current account to ONLINE
2019-03-13 17:01:35.421 [vent.ItemStateChangedEvent] - iPMichael_LastUpdate changed from 2019-03-04T16:35:22.000+0100 to 2019-03-13T16:57:36.092+0100

So my iCloud binding was offline because i never really logged into my dummy account after creating it.

kind regards
Michael

My iCloud Binding stopped 2 days ago. Had to manually restart it myself.
event.log shows this:

2019-03-20 12:24:49.168 [DEBUG] [internal.handler.ICloudDeviceHandler] - initializeThing thing [icloud:device:0d051c7e:9abd6490]; bridge status: [ONLINE]

After this entry, the devices will be discovered, but not updated propery.
After restarting the binding with bundle:restart x it worked immediately. We’ll see how long :slight_smile:

Yes I also has this bug long time ago. It suddenly stops after working for many-many days (usually more than a month) and it stops without a sign (everything is online, but it doesn’t update the device’s info).