Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[icloud] Binding stops working at 11th of May for everyone #10699

Closed
JensHoRi opened this issue May 15, 2021 · 6 comments
Closed

[icloud] Binding stops working at 11th of May for everyone #10699

JensHoRi opened this issue May 15, 2021 · 6 comments
Labels
bug An unexpected problem or unintended behavior of an add-on

Comments

@JensHoRi
Copy link

At 11th of May (some a few hours later) the binding stopped working.

Guess because of changes on findMyPhone API from Apple. Same time Apple launched "FindMyNetwork", so think within this the API did changed.

The Error in Detail:
Bridge goes offline (COMMUNICATION_ERROR
iCloud response invalid: null)

Someone did a DEBUG on Binding:

2021-05-09 17:55:04.236 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge handler initializing ...
2021-05-09 17:55:04.236 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge starting handler ...
2021-05-09 17:55:04.237 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...
2021-05-09 17:55:04.237 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge handler started.
2021-05-09 17:55:04.238 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge initialized.
2021-05-09 17:55:04.412 [WARN ] [l.handler.ICloudAccountBridgeHandler] - Unable to refresh device data
java.io.IOException: java.util.concurrent.ExecutionException: org.eclipse.jetty.client.HttpResponseException: HTTP protocol violation: Authentication challenge without WWW-Authenticate header
	at org.openhab.core.io.net.http.HttpUtil.executeUrlAndGetReponse(HttpUtil.java:260) ~[?:?]
	at org.openhab.core.io.net.http.HttpUtil.executeUrl(HttpUtil.java:155) ~[?:?]
	at org.openhab.core.io.net.http.HttpUtil.executeUrl(HttpUtil.java:130) ~[?:?]
	at org.openhab.core.io.net.http.HttpRequestBuilder.getContentAsString(HttpRequestBuilder.java:135) ~[?:?]
	at org.openhab.binding.icloud.internal.ICloudConnection.callApi(ICloudConnection.java:90) ~[?:?]
	at org.openhab.binding.icloud.internal.ICloudConnection.requestDeviceStatusJSON(ICloudConnection.java:71) ~[?:?]
	at org.openhab.binding.icloud.internal.handler.ICloudAccountBridgeHandler.lambda$0(ICloudAccountBridgeHandler.java:94) ~[?:?]
	at org.openhab.core.cache.ExpiringCache.refreshValue(ExpiringCache.java:101) ~[?:?]
	at org.openhab.core.cache.ExpiringCache.getValue(ExpiringCache.java:72) ~[?:?]
	at org.openhab.binding.icloud.internal.handler.ICloudAccountBridgeHandler.refreshData(ICloudAccountBridgeHandler.java:161) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
	at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: java.util.concurrent.ExecutionException: org.eclipse.jetty.client.HttpResponseException: HTTP protocol violation: Authentication challenge without WWW-Authenticate header
	at org.eclipse.jetty.client.util.FutureResponseListener.getResult(FutureResponseListener.java:118) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.util.FutureResponseListener.get(FutureResponseListener.java:101) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.HttpRequest.send(HttpRequest.java:730) ~[bundleFile:9.4.38.v20210224]
	at org.openhab.core.io.net.http.HttpUtil.executeUrlAndGetReponse(HttpUtil.java:251) ~[?:?]
	... 15 more
Caused by: org.eclipse.jetty.client.HttpResponseException: HTTP protocol violation: Authentication challenge without WWW-Authenticate header
	at org.eclipse.jetty.client.AuthenticationProtocolHandler$AuthenticationListener.onComplete(AuthenticationProtocolHandler.java:163) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:218) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:210) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.HttpReceiver.terminateResponse(HttpReceiver.java:481) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.HttpReceiver.terminateResponse(HttpReceiver.java:461) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.HttpReceiver.responseSuccess(HttpReceiver.java:424) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.messageComplete(HttpReceiverOverHTTP.java:365) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.http.HttpParser.handleContentMessage(HttpParser.java:591) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.http.HttpParser.parseContent(HttpParser.java:1716) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1545) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.parse(HttpReceiverOverHTTP.java:204) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.process(HttpReceiverOverHTTP.java:144) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.receive(HttpReceiverOverHTTP.java:79) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.http.HttpChannelOverHTTP.receive(HttpChannelOverHTTP.java:131) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onFillable(HttpConnectionOverHTTP.java:169) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:540) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:395) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:161) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:383) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:882) ~[bundleFile:9.4.38.v20210224]
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1036) ~[bundleFile:9.4.38.v20210224]

Because someone mentioned Home Assistant is still working with iCloud, there should be a solution, but the binding needs to be changed.

For more details

https://community.openhab.org/t/icloud-binding-communication-error/122131/39

@JensHoRi JensHoRi added the bug An unexpected problem or unintended behavior of an add-on label May 15, 2021
@openhab-bot
Copy link
Collaborator

This issue has been mentioned on openHAB Community. There might be relevant details there:

https://community.openhab.org/t/icloud-binding-communication-error/122131/45

@JensHoRi
Copy link
Author

JensHoRi commented May 16, 2021

Here my debug log if it helps - Looks some different, but same error in UI: Icloud response invalid: null

2021-05-16 20:35:13.699 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'iCloud.items'
2021-05-16 20:35:16.933 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'ICLOUD.things'
2021-05-16 20:36:38.095 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model '10_icloud.rules'
2021-05-16 22:27:25.071 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...
2021-05-16 22:31:14.639 [DEBUG] [nternal.ICloudTlsCertificateProvider] - bundle org.openhab.binding.icloud:3.1.0.M4 (246)[org.openhab.binding.icloud.internal.ICloudTlsCertificateProvider(297)] : Querying state active
2021-05-16 22:31:14.640 [DEBUG] [icloud.internal.ICloudHandlerFactory] - bundle org.openhab.binding.icloud:3.1.0.M4 (246)[org.openhab.binding.icloud.internal.ICloudHandlerFactory(296)] : Querying state active
2021-05-16 22:32:26.150 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...

And with TRACE on:

2021-05-16 22:32:26.150 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...
2021-05-16 22:37:27.230 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...
2021-05-16 22:42:28.215 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...
2021-05-16 22:42:29.293 [TRACE] [l.handler.ICloudAccountBridgeHandler] - json: {"desc":"default text from ResponseContentFilter"}
2021-05-16 22:47:29.293 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...
2021-05-16 22:47:30.391 [TRACE] [l.handler.ICloudAccountBridgeHandler] - json: {"desc":"default text from ResponseContentFilter"}
2021-05-16 22:52:30.392 [DEBUG] [l.handler.ICloudAccountBridgeHandler] - iCloud bridge refreshing data ...
2021-05-16 22:52:31.564 [TRACE] [l.handler.ICloudAccountBridgeHandler] - json: {"desc":"default text from ResponseContentFilter"}

@kaikreuzer
Copy link
Member

Fixed by #10710

@maihacke
Copy link
Contributor

maihacke commented Jul 11, 2022

I'm running OH 3.3.0. iCloud binding stopped working with the exact same stack trace. Has this really been fixed or is that fixed not part of 3.3.0?

Looks like this is a new problem tracked in #13090

@dathbe
Copy link

dathbe commented Jul 11, 2022

I'm nearly certain it's a new issue. Mine stopped working AFTER this May 17 fix. Also on 3.3.0.

@hmerk
Copy link
Contributor

hmerk commented Jul 11, 2022

See my comment in other issue.
It could be a similar reason.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug An unexpected problem or unintended behavior of an add-on
Projects
None yet
Development

No branches or pull requests

6 participants