SleepIQ Binding issue polling Sleep Number API

Hello,

I have been troubleshooting a SleepIQ issue for a few weeks with no resolution. What I have observed is that the SleepIQ binding will work correctly for 30 minutes after the bundle is restarted in the Kraft console. After 30 minutes of reporting from the SleepIQ API it becomes inconsistent. For example, one successful update over an hour which is causing automation issues with inconsistent bed presence.

See below log file:

2019-11-08 09:53:29.871 [WARN ] [org.glassfish.jersey.internal.Errors] - The following warnings have been detected: WARNING: Cannot create new registration for component type class org.syphr.sleepiq.api.impl.SleepIQImpl$1: Existing previous registration found for the type.

2019-11-08 09:53:30.037 [DEBUG] [internal.handler.SleepIQCloudHandler] - Unexpected error while communicating with SleepIQ cloud
java.lang.NullPointerException: null
	at org.openhab.binding.sleepiq.internal.handler.SleepIQCloudHandler.refreshBedStatus(SleepIQCloudHandler.java:159) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?]
	at java.lang.Thread.run(Thread.java:745) [?:?]
2019-11-08 09:53:30.175 [WARN ] [org.glassfish.jersey.internal.Errors] - The following warnings have been detected: WARNING: Cannot create new registration for component type class org.syphr.sleepiq.api.impl.SleepIQImpl$1: Existing previous registration found for the type.

2019-11-08 09:53:30.335 [ERROR] [core.thing.internal.ThingManagerImpl] - Exception occurred during notification about bridge status change on thing 'sleepiq:dualBed:1:master': null
java.lang.NullPointerException: null
	at org.openhab.binding.sleepiq.internal.handler.SleepIQCloudHandler.getBed(SleepIQCloudHandler.java:242) ~[?:?]
	at org.openhab.binding.sleepiq.internal.handler.SleepIQDualBedHandler.updateProperties(SleepIQDualBedHandler.java:100) ~[?:?]
	at org.openhab.binding.sleepiq.internal.handler.SleepIQDualBedHandler.bridgeStatusChanged(SleepIQDualBedHandler.java:92) ~[?:?]
	at org.eclipse.smarthome.core.thing.internal.ThingManagerImpl$4.run(ThingManagerImpl.java:901) [109:org.eclipse.smarthome.core.thing:0.10.0.oh240]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?]

I have tried to back off the refresh rate on the sleep number API that was previously working at a 60 second refresh interval without any change. This binding was working fine for > 6 months prior to this and started about two weeks ago. I am not sure if something changed in the SleepIQ API with a recent software update.

Thanks,

Dan

Summary

This text will be hidden