[Solved] Alexa more than one echo leads to error messages

Hi Team,
as soon. as I add items for a second or third echo device I receive error messages while viewing the PaperUI Control.

  • Platform information:

    • Hardware: Raspberry Pi 3B+
    • OS: OpenHabianPi
    • Java Runtime Environment: from OpenHabianPi
    • openHAB version: 2.4.0.1
  • Issue of the topic: Error Message as soon as more than one echo device is configured

  • Please post configurations (if applicable):

    • Items configuration related to the issue
    • Sitemap configuration related to the issue
    • Rules code related to the issue
    • Services configuration related to the issue
  • If logs where generated please post these here using code fences:

    (
    Linux openHABianPi 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Mar 27 09:53:56 2019 from 192.168.1.129

2019-03-29 16:46:57,483: FireMotD: Info: No FireMotD ExportFile detected. Please generate with “sudo ./FireMotD -S”

          Welcome to            __  _____    ____  _
        ____  ____  ___  ____  / / / /   |  / __ )(_)___ _____
       / __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __  / / __ `/ __ \
      / /_/ / /_/ /  __/ / / / __  / ___ |/ /_/ / / /_/ / / / /
      \____/ .___/\___/_/ /_/_/ /_/_/  |_/_____/_/\__,_/_/ /_/
          /_/
              openHAB 2.4.0-1 (Release Build)

[17:05:36] root@openHABianPi:/var/log/openhab2# vi openhab.log

    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168) [87:org.eclipse.jetty.util:9.4.11.v20180605] 
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126) [87:org.eclipse.jetty.util:9.4.11.v20180605] 
    at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366) [87:org.eclipse.jetty.util:9.4.11.v20180605] 
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:762) [87:org.eclipse.jetty.util:9.4.11.v20180605] 
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:680) [87:org.eclipse.jetty.util:9.4.11.v20180605] 
    at java.lang.Thread.run(Thread.java:748) [?:?] 

Caused by: org.openhab.binding.amazonechocontrol.internal.HttpException: GET url ‘https://alexa.amazon.de/api/behaviors/entities?skillId=amzn1.ask.1p.music’ failed: Bad Request **
** at org.openhab.binding.amazonechocontrol.internal.Connection.makeRequest(Connection.java:549) ~[?:?]

at org.openhab.binding.amazonechocontrol.internal.Connection.makeRequestAndReturnString(Connection.java:407) ~[?:?]
at org.openhab.binding.amazonechocontrol.internal.Connection.getMusicProviders(Connection.java:1256) ~[?:?]
at org.openhab.binding.amazonechocontrol.internal.statedescription.AmazonEchoDynamicStateDescriptionProvider.getStateDescription(AmazonEchoDynamicStateDescriptionProvider.java:248) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getDynamicStateDescription(ChannelStateDescriptionProvider.java:132) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getStateDescription(ChannelStateDescriptionProvider.java:118) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getStateDescriptionFragment(ChannelStateDescriptionProvider.java:80) ~[?:?]
at org.eclipse.smarthome.core.internal.service.StateDescriptionServiceImpl.mergeStateDescriptionFragments(StateDescriptionServiceImpl.java:104) ~[?:?]
at org.eclipse.smarthome.core.internal.service.StateDescriptionServiceImpl.getStateDescription(StateDescriptionServiceImpl.java:90) ~[?:?]
at org.eclipse.smarthome.core.items.GenericItem.getStateDescription(GenericItem.java:399) ~[?:?]
at org.eclipse.smarthome.io.rest.core.item.EnrichedItemDTOMapper.considerTransformation(EnrichedItemDTOMapper.java:110) ~[?:?]
at org.eclipse.smarthome.io.rest.core.item.EnrichedItemDTOMapper.map(EnrichedItemDTOMapper.java:62) ~[?:?]
at org.eclipse.smarthome.io.rest.core.item.EnrichedItemDTOMapper.map(EnrichedItemDTOMapper.java:56) ~[?:?]
at org.eclipse.smarthome.io.rest.core.internal.item.ItemResource.lambda$0(ItemResource.java:238) ~[?:?]
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:?]
at java.util.HashMap$KeySpliterator.tryAdvance(HashMap.java:1574) ~[?:?]
at java.util.stream.StreamSpliterators$WrappingSpliterator.lambda$initPartialTraversalState$0(StreamSpliterators.java:294) ~[?:?]
at java.util.stream.StreamSpliterators$AbstractWrappingSpliterator.fillBuffer(StreamSpliterators.java:206) ~[?:?]

    at java.util.stream.StreamSpliterators$AbstractWrappingSpliterator.doAdvance(StreamSpliterators.java:169) ~[?:?] 
    at java.util.stream.StreamSpliterators$WrappingSpliterator.tryAdvance(StreamSpliterators.java:300) ~[?:?] 
    at java.util.Spliterators$1Adapter.hasNext(Spliterators.java:681) ~[?:?] 
    at org.eclipse.smarthome.io.rest.Stream2JSONInputStream.fillBuffer(Stream2JSONInputStream.java:94) ~[?:?] 
    at org.eclipse.smarthome.io.rest.Stream2JSONInputStream.read(Stream2JSONInputStream.java:70) ~[?:?]

– VISUAL – 174 31879,101-108 99%

Since you didn’t post what binding version is used see this post for installing the latest version to see if that helps.

Hi Michael,
I tested the 2.5(6) Beta. (renamed it as … 2.4.0.jar and created a new sha1).
But I still get the sitemap error:

HTTP ERROR 500

Problem accessing /basicui/app. Reason:

Server Error

Caused by:

org.openhab.binding.amazonechocontrol.internal.HttpException: GET url ‘https://alexa.amazon.de/api/behaviors/entities?skillId=amzn1.ask.1p.music’ failed: Bad Request
at org.openhab.binding.amazonechocontrol.internal.Connection.makeRequest(Connection.java:549)
at org.openhab.binding.amazonechocontrol.internal.Connection.makeRequestAndReturnString(Connection.java:407)
at org.openhab.binding.amazonechocontrol.internal.Connection.getMusicProviders(Connection.java:1256)
at org.openhab.binding.amazonechocontrol.internal.statedescription.AmazonEchoDynamicStateDescriptionProvider.getStateDescription(AmazonEchoDynamicStateDescriptionProvider.java:248)
at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getDynamicStateDescription(ChannelStateDescriptionProvider.java:132)
at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getStateDescription(ChannelStateDescriptionProvider.java:118)
at org.eclipse.smarthome.core.thing.internal.ChannelStateDescriptionProvider.getStateDescriptionFragment(ChannelStateDescriptionProvider.java:80)
at org.eclipse.smarthome.core.internal.service.StateDescriptionServiceImpl.mergeStateDescriptionFragments(StateDescriptionServiceImpl.java:104)
at org.eclipse.smarthome.core.internal.service.StateDescriptionServiceImpl.getStateDescription(StateDescriptionServiceImpl.java:90)
at org.eclipse.smarthome.core.items.GenericItem.getStateDescription(GenericItem.java:399)
at org.eclipse.smarthome.core.items.GenericItem.getStateDescription(GenericItem.java:393)
at org.eclipse.smarthome.ui.internal.items.ItemUIRegistryImpl.getLabel(ItemUIRegistryImpl.java:338)
at org.eclipse.smarthome.ui.basic.internal.render.AbstractWidgetRenderer.preprocessSnippet(AbstractWidgetRenderer.java:121)
at org.eclipse.smarthome.ui.basic.internal.render.SelectionRenderer.renderWidget(SelectionRenderer.java:76)
at org.eclipse.smarthome.ui.basic.internal.render.PageRenderer.renderWidget(PageRenderer.java:194)
at org.eclipse.smarthome.ui.basic.internal.render.PageRenderer.processChildren(PageRenderer.java:160)
at org.eclipse.smarthome.ui.basic.internal.render.PageRenderer.processChildren(PageRenderer.java:181)
at org.eclipse.smarthome.ui.basic.internal.render.PageRenderer.processPage(PageRenderer.java:124)
at org.eclipse.smarthome.ui.basic.internal.servlet.WebAppServlet.service(WebAppServlet.java:189)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:535)
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1317)
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1219)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.Server.handle(Server.java:531)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:281)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:762)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:680)
at java.lang.Thread.run(Thread.java:748)
Powered by Jetty:// 9.4.11.v20180605

To let someone know their name has been mentioned use the @ symbol, like @AndreasGremm.:wink:

I reduced the .items entries to a minimum and got rid of the error message.

While testing I observed that the “echo” is e.g. not showing the bluetoothMAC while the echospot do show the Mac-address of the connected bluetooth device in PaperUI.

// Bluetooth
String Echo_Kueche_BluetoothMAC “Kueche Bluetooth MAC Address” (Alexa_Kueche) {channel=“amazonechocontrol:echo:d9b9966d:G090ST0274460JSJ:bluetoothMAC”}
Switch Echo_Kueche_Bluetooth “Kueche Bluetooth” (Alexa_Kueche) {channel=“amazonechocontrol:echo:d9b9966d:G090ST0274460JSJ:bluetooth”}
String Echo_Kueche_BluetoothDeviceName “Kueche Bluetooth Device” (Alexa_Kueche) {channel=“amazonechocontrol:echo:d9b9966d:G090ST0274460JSJ:bluetoothDeviceName”}

Maybe an Echo version issue but I’m really not sure. @michi may have a better idea of what’s needed to correct this.

Yes, this is the callstack of the original binding, not the beta. The beta fix this issue

1 Like

ok, how to install the beta?
As I still have the error, my installation of the beta seems to be wrong.
Any hint?

Where did you place the jar file?

The correct location is /usr/share/openhab2/addons

Works like a charm :slight_smile:

Good to hear.:+1:

Please mark the topic solved by clicking the square box on the post that provided the solution and edit the title to start with [Solved]. This will hopefully help others with a similar situation find a quick solution.

Thanks