I can confirm that my theory was correct. I was able to get the iCloud binding working by replacing the fmipmobile.crt
file contained in the add-on folder, recompiling the iCloud binding, and installing that as an add-on. For those interested, here is a step-by-step:
- Uninstall the iCloud Binding from the PaperUI. None of my Things disappeared after doing this step, so you should be fine as well.
- Go to my GitHub fork and follow the instructions in the README to build the iCloud binding. My fork contains the updated iCloud certificate to use.
- Grab the built
jar
and put it in the appropriate add-on folder on your openHAB instance (perhaps usingscp
). For most of you all, this will be/usr/share/openhab2/addons/
. - Open Karaf and run the command:
bundle:install http://central.maven.org/maven2/com/google/code/gson/gson/2.8.5/gson-2.8.5.jar
Gson is an iCloud binding dependency that you must install manually because you are installing the binding as an add-on (as opposed to having openHAB install it for you).
- Also in Karaf, run
bundle:list
to get a list of your bindings. Find the START ID (first column) for the iCloud binding. Then, run
bundle:start <START ID>
If you run bundle:list
again, you should see that the state of the iCloud binding changed from “Installed” to “Active”.
- Go back to PaperUI to check whether your iCloud Things are now online!
I submitted a pull request to the openHAB2 add-ons to get this fixed, but I have no idea how long it’d take to get out to users. Also, I strongly suspect that we are going to run into this problem again 12 months from now, since the certificate in my GitHub fork expires on “Sun Aug 23 08:45:49 PDT 2020”, so I really think that the owners of the binding should re-consider checking this certificate into the binding…