openHAB 5.3.0.M1.
All of my other devices are already mentioned on github.
Current recurring log entries
2026-08-31 17:00:33.268 [INFO ] [zonechocontrol.internal.connection.Connection] - getting items from list 'YW16bjEuYWNjb3VudC5BR05VRjZVRUM0TkdWSFFBWVVURlRPV09CUUFRLVNIT1BQSU5HX0lURU0=' failed
org.openhab.binding.amazonechocontrol.internal.ConnectionException: https://eu-api-alexa.amazon.com/api/namedLists/YW16bjEuYWNjb3VudC5BR05VRjZVRUM0TkdWSFFBWVVURlRPV09CUUFRLVNIT1BQSU5HX0lURU0=/items?_=1788188426984 failed with code 503: Service Temporarily Unavailable
at org.openhab.binding.amazonechocontrol.internal.util.HttpRequestBuilder$HttpResponseListener.onComplete(HttpRequestBuilder.java:412)
at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:218)
at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:210)
at org.eclipse.jetty.client.HttpReceiver.terminateResponse(HttpReceiver.java:481)
at org.eclipse.jetty.client.HttpReceiver.terminateResponse(HttpReceiver.java:461)
at org.eclipse.jetty.client.HttpReceiver.responseSuccess(HttpReceiver.java:424)
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.messageComplete(HttpReceiverOverHTTP.java:374)
at org.eclipse.jetty.http.HttpParser.parseFields(HttpParser.java:1188)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1560)
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.parse(HttpReceiverOverHTTP.java:208)
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.process(HttpReceiverOverHTTP.java:148)
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.receive(HttpReceiverOverHTTP.java:80)
at org.eclipse.jetty.client.http.HttpChannelOverHTTP.receive(HttpChannelOverHTTP.java:131)
at org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onFillable(HttpConnectionOverHTTP.java:172)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:555)
at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:410)
at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:164)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
at java.base/java.lang.Thread.run(Thread.java:1583)
...
2026-09-01 05:54:46.057 [WARN ] [nechocontrol.internal.push.PushSessionHandler] - Session 836272859 failed: null
2026-09-01 09:42:40.659 [WARN ] [onechocontrol.internal.push.PushStreamAdapter] - Exception while processing message
com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated string at line 1 column 744 path $.directive.payload.renderingUpdates[0].resourceMetadata
See https://github.com/google/gson/blob/main/Troubleshooting.md#malformed-json
at com.google.gson.Gson.fromJson(Gson.java:1384)
at com.google.gson.Gson.fromJson(Gson.java:1259)
at com.google.gson.Gson.fromJson(Gson.java:1169)
at com.google.gson.Gson.fromJson(Gson.java:1106)
at org.openhab.binding.amazonechocontrol.internal.push.PushStreamAdapter.onData(PushStreamAdapter.java:104)
at org.eclipse.jetty.http2.HTTP2Stream.notifyData(HTTP2Stream.java:658)
at org.eclipse.jetty.http2.HTTP2Stream.onData(HTTP2Stream.java:394)
at org.eclipse.jetty.http2.HTTP2Stream.process(HTTP2Stream.java:315)
at org.eclipse.jetty.http2.HTTP2Session.onData(HTTP2Session.java:287)
at org.eclipse.jetty.http2.HTTP2Connection$ParserListener.onData(HTTP2Connection.java:400)
at org.eclipse.jetty.http2.parser.BodyParser.notifyData(BodyParser.java:108)
at org.eclipse.jetty.http2.parser.DataBodyParser.onData(DataBodyParser.java:150)
at org.eclipse.jetty.http2.parser.DataBodyParser.onData(DataBodyParser.java:145)
at org.eclipse.jetty.http2.parser.DataBodyParser.parse(DataBodyParser.java:111)
at org.eclipse.jetty.http2.parser.Parser.parseBody(Parser.java:227)
at org.eclipse.jetty.http2.parser.Parser.parse(Parser.java:156)
at org.eclipse.jetty.http2.HTTP2Connection$HTTP2Producer.produce(HTTP2Connection.java:271)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produceTask(EatWhatYouKill.java:362)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:186)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:137)
at org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:193)
at org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:148)
at org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:371)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:555)
at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:410)
at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:164)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: com.google.gson.stream.MalformedJsonException: Unterminated string at line 1 column 744 path $.directive.payload.renderingUpdates[0].resourceMetadata
See https://github.com/google/gson/blob/main/Troubleshooting.md#malformed-json
at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1817)
at com.google.gson.stream.JsonReader.nextQuotedValue(JsonReader.java:1177)
at com.google.gson.stream.JsonReader.nextString(JsonReader.java:964)
at com.google.gson.internal.bind.TypeAdapters$15.read(TypeAdapters.java:461)
at com.google.gson.internal.bind.TypeAdapters$15.read(TypeAdapters.java:449)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$2.readIntoField(ReflectiveTypeAdapterFactory.java:271)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$FieldReflectionAdapter.readField(ReflectiveTypeAdapterFactory.java:559)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:517)
at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:40)
at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:84)
at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:64)
at org.openhab.binding.amazonechocontrol.internal.util.NonNullListTypeAdapterFactory$DeserializeNonNullTypeAdapter.read(NonNullListTypeAdapterFactory.java:72)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$2.readIntoField(ReflectiveTypeAdapterFactory.java:271)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$FieldReflectionAdapter.readField(ReflectiveTypeAdapterFactory.java:559)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:517)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$2.readIntoField(ReflectiveTypeAdapterFactory.java:271)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$FieldReflectionAdapter.readField(ReflectiveTypeAdapterFactory.java:559)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:517)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$2.readIntoField(ReflectiveTypeAdapterFactory.java:271)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$FieldReflectionAdapter.readField(ReflectiveTypeAdapterFactory.java:559)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:517)
at com.google.gson.Gson.fromJson(Gson.java:1358)
... 37 more
...
2026-09-01 09:42:40.689 [WARN ] [onechocontrol.internal.push.PushStreamAdapter] - Don't know how to handle frame starting with a.media.access.shared.model.MusicNowPlayingData\\\",\\\"transport\\\":{\\\"playPause\\\":\\\"ENABLED\\\",\\\"next\\\":\\\"DISABLED\\\",\\\"previous\\\":\\\"DISABLED\\\",\\\"shuffle\\\":\\\"HIDDEN\\\",\\\"repeat\\\":\\\"HIDDEN\\\",\\\"seekForward\\\":\\\"HIDDEN\\\",\\\"seekBackward\\\":\\\"HIDDEN\\\",\\\"thumbsUp\\\":\\\"HIDDEN\\\",\\\"thumbsDown\\\":\\\"HIDDEN\\\"},\\\"progress\\\":{\\\"visible\\\":true,\\\"mediaProgress\\\":10003434,\\\"mediaLength\\\":0,\\\"allowScrubbing\\\":false,\\\"showTiming\\\":true},\\\"playerState\\\":\\\"PAUSED\\\",\\\"queueId\\\":\\\"4b505576-0faf-4fb5-811e-f1399546918b\\\",\\\"mediaId\\\":\\\"4b505576-0faf-4fb5-811e-f1399546918b:1\\\",\\\"quality\\\":{\\\"name\\\":\\\"Default Quality\\\",\\\"badge\\\":{\\\"altText\\\":null,\\\"url\\\":\\\"\\\",\\\"contentType\\\":null}},\\\"provider\\\":{\\\"providerName\\\":\\\"ARD Sounds\\\",\\\"providerLogo\\\":{\\\"altText\\\":\\\"ARD Sounds\\\",\\\"url\\\":\\\"https://s3.amazonaws.com/CAPS-SSE/alexa_music_skills/28d5/ask.skill.wordmark.0bdc3c9a9f8949d98a0c1cf0a18e9aa7/APP_WORDMARK_LARGE?versionId=2_20.CltzIj.HizIujLTC31M_NK9V.Sx&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260901T073033Z&X-Amz-SignedHeaders=host&X-Amz-Expires=7200&X-Amz-Credential=AKIAWBV6LQ4QGZPQZQYL%2F20260901%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=1e884e932ab86ac65bd00853cc0f0ea27a0e9c545724b4aecb8786b7855ab902\\\",\\\"contentType\\\":\\\"image/*\\\"}},\\\"mainArt\\\":{\\\"altText\\\":null,\\\"contentType\\\":\\\"image/jpeg\\\",\\\"tinyUrl\\\":\\\"https://api.ardmediathek.de/image-service/image-collections/urn:ard:image-collection:823f9d14033a2db9/1x1?ch=cc5af2649e307a77&w=320\\\",\\\"smallUrl\\\":\\\"https://api.ardmediathek.de/image-service/image-collections/urn:ard:image-collection:823f9d14033a2db9/1x1?ch=cc5af2649e307a77&w=320\\\",\\\"mediumUrl\\\":\\\"https://api.ardmediathek.de/image-service/image-collections/urn:ard:image-collection:823f9d14033a2db9/1x1?ch=cc5af2649e307a77&w=320\\\",\\\"largeUrl\\\":\\\"https://api.ardmediathek.de/image-service/image-collections/urn:ard:image-collection:823f9d14033a2db9/1x1?ch=cc5af2649e307a77&w=320\\\",\\\"fullUrl\\\":\\\"https://api.ardmediathek.de/image-service/image-collections/urn:ard:image-collection:823f9d14033a2db9/1x1?ch=cc5af2649e307a77&w=640\\\"},\\\"infoText\\\":{\\\"title\\\":\\\"NDR 2 (Hamburg) Livestream\\\",\\\"subText1\\\":null,\\\"subText2\\\":null,\\\"multiLineMode\\\":false},\\\"mediaReference\\\":{\\\"namespace\\\":\\\"Alexa.Audio.PlayQueue\\\",\\\"name\\\":\\\"item\\\",\\\"value\\\":\\\"{\\\\\\\"contentId\\\\\\\":\\\\\\\"{\\\\\\\\\\\\\\\"catalog\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"radio\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"core\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"station\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\\":null,\\\\\\\\\\\\\\\"options\\\\\\\\\\\\\\\":null,\\\\\\\\\\\\\\\"coreId\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"urn:ard:permanent-livestream:56d71679a77b2ca9\\\\\\\\\\\\\\\"}\\\\\\\",\\\\\\\"queueId\\\\\\\":\\\\\\\"q2/2026-07-14T04:24:20.632Z/01KXFDWRWRMWWBSFA1W5FTW1ZF\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"{\\\\\\\\\\\\\\\"catalog\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"radio\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"core\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"station\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\\":null,\\\\\\\\\\\\\\\"options\\\\\\\\\\\\\\\":null,\\\\\\\\\\\\\\\"coreId\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"urn:ard:permanent-livestream:56d71679a77b2ca9\\\\\\\\\\\\\\\"}\\\\\\\",\\\\\\\"content\\\\\\\":{\\\\\\\"id\\\\\\\":\\\\\\\"{\\\\\\\\\\\\\\\"catalog\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"radio\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"source\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"core\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"station\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\\":null,\\\\\\\\\\\\\\\"options\\\\\\\\\\\\\\\":null,\\\\\\\\\\\\\\\"coreId\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\"urn:ard:permanent-livestream:56d71679a77b2ca9\\\\\\\\\\\\\\\"}\\\\\\\",\\\\\\\"metadataType\\\\\\\":\\\\\\\"RADIO\\\\\\\"}}\\\"},\\\"sources\\\":[]},\\\"playbackError\\\":false,\\\"errorMessage\\\":null}},\\\"name\\\":\\\"NotifyNowPlayingUpdated\\\"}\",\"timeStamp\":1788248560598}"}]}}}
2026-09-01 17:10:44.488 [INFO ] [zonechocontrol.internal.connection.Connection] - getting items from list 'YW16bjEuYWNjb3VudC5BR05VRjZVRUM0TkdWSFFBWVVURlRPV09CUUFRLVNIT1BQSU5HX0lURU0=' failed
...