iCloud SSL issue again

This worked for me, Thanks !

Yes it came back online after a bundle restart.
It is still online now (after 15 mins) so I am hopeful.

It should be and I hope it stays like that.

Hi,

Uninstalled icloud binding on paper ui
Dropped new jar into addons folder
installed icloud binding on paper ui
restarted OH

Iā€™ve even tried unistalling the binding from console and restarting, bundle:list shows the 2.5.2.2020001211144 version is active, but no joyā€¦

Unfortunately still getting ā€˜offline - communication errorā€™ in paper ui and ā€˜General SSLEngine problemā€™ in the logs, do i need to do any restarts or similar, I assumed the full OH restart would get itā€¦

UPDATE: bundle:restart seems to have kicked it into life, currently connected and online so fingers crossedā€¦

Thanks for the update, will report back with any news.

So you dropped the jar in the addons folder and then installed the icloud binding again from PaperUI?
You shouldnā€™t do that. There is no additional step required after dropping a jar file in the addons folderā€¦

You have to replace the fmipmobile.crt file inside of the icloud-binding.jar with the actual certificate of the fmipmobile.icloud.com website.

then include this modified binding in OH and it works again.

:wink:

Yes, I think I got a bit click / refresh happy the first time and ended up confusing things while it was still restarting and probably installed / uninstalled things too quickly and it effectively cancelled itself out. Once I gave it 10 mins to calm down and uninstalled via console it worked fine.

Still working so far and seems to be back to the right refresh time etc so fingers crossed.

Thank you @rkrisi, I installed your local build and it is working for 6,5h now without any major issues.

I only find one (okay, two with the same timestamp) ā€œUnable to refresh device data/General SSLEngine problemā€ entries since the start. Good job.

Are you planing to move your changes to the official repository, so everyone is able to find it there instead of your local google drive?
https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/addons/bundles/org.openhab.binding.icloud/2.5.2-SNAPSHOT/org.openhab.binding.icloud-2.5.2-SNAPSHOT.jar

Could you fast explain, what changes you did to solve the issues, so itā€™s documented for further issues?

Thanks a lot.

its a newer crt-file in the bindingā€¦

Yes sure.

Here is the PR, so it will be included in the next version (hopefully) if they approve it:

You can also find here the exact changes I did to the binding.
I just provided a GDrive link, because somehow the build server didnā€™t included the yesterdays changes in its buildā€¦ (I donā€™t know why).
Two things changed:

  • Added a new cert file, because the certification changed again. As I can remember it changed last summer, so this is not an ultimate solution. When I will have more time, I will try to implement to automatically pull this certifcation, so there will be no more problems like this.
  • Another issue was a few days ago, that the binding stopped updating itself, because it received a non-JSON response and there was an exception which stopped the binding auto-update feature. Looks like something changed in the APIā€¦
4 Likes

Continuing the discussion from iCloud SSL issue again:

Could you please provide a full HOWTO with all needed resources (working links), console commands etc. to get this binding working again? This would be very helpful. Thank you very much

Great thanks! It worked - only a few of these, but itā€™s working again:-)

2020-01-22 13:13:22.009 [WARN ] [l.handler.ICloudAccountBridgeHandler] - Unable to refresh device data
java.io.IOException: java.util.concurrent.TimeoutException: Total timeout 15000 ms elapsed
	at org.eclipse.smarthome.io.net.http.HttpUtil.executeUrlAndGetReponse(HttpUtil.java:259) ~[?:?]
	at org.eclipse.smarthome.io.net.http.HttpUtil.executeUrl(HttpUtil.java:156) ~[?:?]
	at org.eclipse.smarthome.io.net.http.HttpUtil.executeUrl(HttpUtil.java:131) ~[?:?]
	at org.eclipse.smarthome.io.net.http.HttpRequestBuilder.getContentAsString(HttpRequestBuilder.java:135) ~[?:?]
	at org.openhab.binding.icloud.internal.ICloudConnection.callApi(ICloudConnection.java:91) ~[?:?]
	at org.openhab.binding.icloud.internal.ICloudConnection.requestDeviceStatusJSON(ICloudConnection.java:72) ~[?:?]
	at org.openhab.binding.icloud.internal.handler.ICloudAccountBridgeHandler.lambda$0(ICloudAccountBridgeHandler.java:95) ~[?:?]
	at org.eclipse.smarthome.core.cache.ExpiringCache.refreshValue(ExpiringCache.java:101) ~[?:?]
	at org.eclipse.smarthome.core.cache.ExpiringCache.getValue(ExpiringCache.java:72) ~[?:?]
	at org.openhab.binding.icloud.internal.handler.ICloudAccountBridgeHandler.refreshData(ICloudAccountBridgeHandler.java:152) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_222]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:1.8.0_222]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_222]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_222]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_222]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_222]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_222]


Yes, it happend without any obvious reason at 10:30 pm CET on Jan 21st

EDIT: Fixed with jar 2.5.2.2020001211144
Thanks a lot @rkrisi

Think this is all that needs to be done, feel free to update if Iā€™ve missed something, (quick typing between phone calls at work).

  1. Go into the console
  2. type bundle:list
  3. make a note of the number next to the icloud binding
  4. type bundle:uninstall xxx (where xxx is the number from the list in 3)
  5. download the latest jar file from this thread
  6. put the jar file into the addons folder (removing any older jar files of the icloud binding)
  7. restart OH
  8. marvel in the wonder of the icloud binding working again.
  9. if you really want to you can log into the console and type bundle:list again and check the version number of the new binding matches what you expect it to be, (in this case it is currently 2.5.2.2020001211144)

Sometimes the API wonā€™t respond. I have increased the timeout to 15 secs, thought it might help a little bit, but it seems notā€¦

Hi,

I followed this detailed step-by-step approach to install the latest version of iCloud binding (bundle list tells me 2.5.2.202001231549)

However, the openhab logs still shows the General SSLEnging problem. Is anyone else also still experience issues? Did I miss a step to solve the problem?

(running on Openhabian 2.5.0)

Thanks for any hint.

Itā€™s the same here. It was tested with version 2.5.2.202001231549 on a Debian installation with openhab 2.5.0-1 and 2.5.1-2.

Caused by: java.util.concurrent.ExecutionException: java.io.EOFException: HttpConnectionOverHTTP@34a106e::DecryptedEndPoint@33feaa1a{fmipmobile.icloud.com/17.248.148.79:443<->/192.168.3.12:48074,CLOSED,fill=-,flush=C,to=0/0}

Please use my GDrive link.
Somehow Jenkins is not building the jar based on my latest changes I donā€™t know whyā€¦
Anyway, the updated version should be included in the next release.

It worked for me also. Thank you very much!

my Openhabian is runnig 2.4.0-1 and the JAR from your GDrive dosnĀ“t work.
Today I can not Update my openhab to 2.5.
Do you have any JAR (with the fixed certificates) for Version 2.4?