Release Candidate and Support: Amazon Echo Control Binding

Since this morning my Amazon Account Thing is offline:

Status: OFFLINE - CONFIGURATION_ERROR Login fails. Check your credentials and try to login with your webbrowser to http(s)://youropenhab:yourport/amazonechocontrol/echo1 Wichtige Mitteilung! Zum besseren Schutz Ihres Kontos geben Sie bitte nochmals Ihr Passwort ein, und geben Sie dann die Zeichen ein, die in der Abbildung unten gezeigt werden.

It seems Amazon is asking for something like a captcha, but where to call that captcha page?

http(s)://<youropenhab:yourport>/amazonechocontrol/echo1 does show:

1

but a click on “Amazon Account” does not load any page … same for

/amazonechocontrol/ and /amazonechocontrol/account

openHAB snapshot 2.4 #1292

Sorry, currently not.

1 Like

Hi Mark,
I think this is the wrong thread for your question. I assume your question is about alexa skill or a other binding, but it seems not related to the amazon echo control binding.
Kind regards, Michael

I know that there is somewhere a description on the amazon page how you can enter such a token in apps which does not support 2 factor authentication. But I think it will not work for the session renew required after some days.

Maybe it does not work with 2.4. I am currently very busy, so I can not test it in the moment.

What are the next steps

Currently I’am very busy (there are a lot of weddings and other work), so I have no time for OpenHAB.
This also means, that I will not give many support in this thread in the next time. Sorry!

But the good news, I will continue the development in autumn. The plan is to implement a MQTT connection to the amazon server to get live update for state changes from the echo devices. This would remove the polling I will be able to provide a new channel which gives feedback for the last spoken command to the echo device.

Best Regards,
Michael

2 Likes

Never mind, a server restart fixed it …

Hi Michi, You are quite correct. Sorry. I think I confused myself and need to slow down :rofl:

Same here. v2.3 Log shows:

Important message! To better protect your account, please re-enter your password, then enter the characters shown in the picture below.

Had to manually login and was then asked for captcha which took many attempts before successful login. Now back online.

Does this mean, this binding works only with oh2.3 stable or with snapshot as well?
Does it work with 2.4-snapshot as well?

Thank you and kind regards,
Michael

Yes. I’m using it with 2.4 snapshot build 1292:

1

I’m struggling with getting my binding online at the moment, but I fear I’m going to have the next problems with this captcha as well. As my openhab runs on a headless server I’m not able to login at amazon site with a browser.
Do you run also on a server without browser and if so, how did you get it working?

You don’t have to: just call the url from your network:
http://<youropenhab:yourport>/amazonechocontrol/

Yes.

Thank you very much, the binding is online and successfully logged in :slight_smile:

BTW: I’ve installed the binding via paperUI and this worked

1 Like

I’m still getting this on OH 2.4 build 1295…

2018-06-05 16:21:10.840 [WARN ] [org.eclipse.jetty.servlet.ServletHandler          ] - /amazonechocontrol/b5bbde81/
org.openhab.binding.amazonechocontrol.internal.ConnectionException: No session id received
    at org.openhab.binding.amazonechocontrol.internal.Connection.getLoginPage(Connection.java:435) [252:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
    at org.openhab.binding.amazonechocontrol.internal.AccountServlet.doGet(AccountServlet.java:219) [252:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) [32:javax.servlet-api:3.1.0]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [32:javax.servlet-api:3.1.0]
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:848) [86:org.eclipse.jetty.servlet:9.3.21.v20170918]
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:584) [86:org.eclipse.jetty.servlet:9.3.21.v20170918]
    at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) [184:org.ops4j.pax.web.pax-web-jetty:6.0.9]
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) [83:org.eclipse.jetty.security:9.3.21.v20170918]
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:284) [184:org.ops4j.pax.web.pax-web-jetty:6.0.9]
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) [86:org.eclipse.jetty.servlet:9.3.21.v20170918]
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) [184:org.ops4j.pax.web.pax-web-jetty:6.0.9]
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.server.Server.handle(Server.java:534) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:333) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) [85:org.eclipse.jetty.server:9.3.21.v20170918]
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) [77:org.eclipse.jetty.io:9.3.21.v20170918]
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) [77:org.eclipse.jetty.io:9.3.21.v20170918]
    at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) [77:org.eclipse.jetty.io:9.3.21.v20170918]
    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) [88:org.eclipse.jetty.util:9.3.21.v20170918]
    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) [88:org.eclipse.jetty.util:9.3.21.v20170918]
    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) [88:org.eclipse.jetty.util:9.3.21.v20170918]
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) [88:org.eclipse.jetty.util:9.3.21.v20170918]
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) [88:org.eclipse.jetty.util:9.3.21.v20170918]
    at java.lang.Thread.run(Thread.java:748) [?:?]

And right after the bundle is installed, I see a really long error in the log that looks to be the captcha, but it is before the Account Thing is created. Here’s a portion of it…

2018-06-05 06:06:56.701 [INFO ] [nhab.binding.amazonechocontrol.internal.Connection] - Login failed: Login fails. Check your credentials and try to login with your webbrowser to http(s)://<youropenhab:yourport>/amazonechocontrol/c304735b
Important Message! To better protect your account, please re-enter your password and then enter the characters as they are shown in the image below.
2018-06-05 06:06:58.950 [INFO ] [nhab.binding.amazonechocontrol.internal.Connection] - Login failed: No session id received
2018-06-05 06:07:11.538 [WARN ] [nhab.binding.amazonechocontrol.internal.Connection] - Parsing json failed {}
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 8 column 1 path $
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:224) [23:com.google.gson:2.7.0]
        at com.google.gson.Gson.fromJson(Gson.java:887) [23:com.google.gson:2.7.0]
        at com.google.gson.Gson.fromJson(Gson.java:852) [23:com.google.gson:2.7.0]
        at com.google.gson.Gson.fromJson(Gson.java:801) [23:com.google.gson:2.7.0]
        at com.google.gson.Gson.fromJson(Gson.java:773) [23:com.google.gson:2.7.0]
        at org.openhab.binding.amazonechocontrol.internal.Connection.parseJson(Connection.java:565) [251:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
        at org.openhab.binding.amazonechocontrol.internal.Connection.getEnabledFlashBriefings(Connection.java:802) [251:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
        at org.openhab.binding.amazonechocontrol.handler.AccountHandler.updateFlashBriefingProfiles(AccountHandler.java:541) [251:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
        at org.openhab.binding.amazonechocontrol.handler.AccountHandler.updateFlashBriefingHandlers(AccountHandler.java:513) [251:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
        at org.openhab.binding.amazonechocontrol.handler.AccountHandler.updateFlashBriefingHandlers(AccountHandler.java:505) [251:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
        at org.openhab.binding.amazonechocontrol.handler.AccountHandler.getNewCurrentFlashbriefingConfiguration(AccountHandler.java:499) [251:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
        at org.openhab.binding.amazonechocontrol.internal.discovery.AmazonEchoDiscovery.startScan(AmazonEchoDiscovery.java:82) [251:org.openhab.binding.amazonechocontrol:2.4.0.201806040927]
        at org.eclipse.smarthome.config.discovery.AbstractDiscoveryService.startScan(AbstractDiscoveryService.java:208) [98:org.eclipse.smarthome.config.discovery:0.10.0.201805241348]
        at org.eclipse.smarthome.config.discovery.internal.DiscoveryServiceRegistryImpl.startScan(DiscoveryServiceRegistryImpl.java:427) [98:org.eclipse.smarthome.config.discovery:0.10.0.201805241348]
        at org.eclipse.smarthome.config.discovery.internal.DiscoveryServiceRegistryImpl.startScans(DiscoveryServiceRegistryImpl.java:412) [98:org.eclipse.smarthome.config.discovery:0.10.0.201805241348]
        at org.eclipse.smarthome.config.discovery.internal.DiscoveryServiceRegistryImpl.startScan(DiscoveryServiceRegistryImpl.java:260) [98:org.eclipse.smarthome.config.discovery:0.10.0.201805241348]
        at org.eclipse.smarthome.io.rest.core.internal.discovery.DiscoveryResource.scan(DiscoveryResource.java:97) [119:org.eclipse.smarthome.io.rest.core:0.10.0.201805241348]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
        at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:160) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) [170:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) [170:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors.process(Errors.java:315) [170:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors.process(Errors.java:297) [170:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors.process(Errors.java:267) [170:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) [170:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) [171:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) [168:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) [168:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) [168:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) [168:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) [168:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) [16:com.eclipsesource.jaxrs.publisher:5.3.1.201602281253]
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:848) [86:org.eclipse.jetty.servlet:9.3.21.v20170918]
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:584) [86:org.eclipse.jetty.servlet:9.3.21.v20170918]
        at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) [184:org.ops4j.pax.web.pax-web-jetty:6.0.9]
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) [83:org.eclipse.jetty.security:9.3.21.v20170918]
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:284) [184:org.ops4j.pax.web.pax-web-jetty:6.0.9]
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) [86:org.eclipse.jetty.servlet:9.3.21.v20170918]
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) [184:org.ops4j.pax.web.pax-web-jetty:6.0.9]
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.server.Server.handle(Server.java:534) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:333) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) [85:org.eclipse.jetty.server:9.3.21.v20170918]
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) [77:org.eclipse.jetty.io:9.3.21.v20170918]
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) [77:org.eclipse.jetty.io:9.3.21.v20170918]
        at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) [77:org.eclipse.jetty.io:9.3.21.v20170918]
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) [88:org.eclipse.jetty.util:9.3.21.v20170918]
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) [88:org.eclipse.jetty.util:9.3.21.v20170918]
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) [88:org.eclipse.jetty.util:9.3.21.v20170918]
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) [88:org.eclipse.jetty.util:9.3.21.v20170918]
        at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) [88:org.eclipse.jetty.util:9.3.21.v20170918]
        at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 8 column 1 path $
        at com.google.gson.stream.JsonReader.beginObject(JsonReader.java:385) ~[?:?]
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:213) ~[?:?]
        ... 69 more
2018-06-05 06:07:11.546 [WARN ] [nhab.binding.amazonechocontrol.internal.Connection] - Illegal json: 






<!doctype html><html class="a-no-js a-touch a-mobile" data-19ax5a9jf="mongoose">
  <head>
<script type='text/javascript'>var ue_t0=ue_t0||+new Date();</script>
<script type='text/javascript'>
var ue_csm = window,
    ue_hob = +new Date();
(function(d){var e=d.ue=d.ue||{},f=Date.now||function(){return+new Date};e.d=function(b){return f()-(b?0:d.ue_t0)};e.stub=function(b,a){if(!b[a]){var c=[];b[a]=function(){c.push([c.slice.call(arguments),e.d(),d.ue_id])};b[a].replay=function(b){for(var a;a=c.shift();)b(a[0],a[1],a[2])};b[a].isStub=1}};e.exec=function(b,a){return function(){if(1==window.ueinit)try{return b.apply(this,arguments)}catch(c){ueLogError(c,{attribution:a||"undefined",logLevel:"WARN"})}}}})(ue_csm);

I’m surprised I’m alone in this!

I’ve got my echo devices configured, and everything was working.

Now the log is showing errors repeating just about every minute.

here is a sample

2018-06-06 15:07:53.743 [hingStatusInfoChangedEvent] - 'amazonechocontrol:echo:ae467c3c:G090LF1174320B73' changed from ONLINE to OFFLINE (BRIDGE_OFFLINE)
2018-06-06 15:07:53.810 [hingStatusInfoChangedEvent] - 'amazonechocontrol:echo:ae467c3c:G090LF1174320DVQ' changed from ONLINE to OFFLINE (BRIDGE_OFFLINE)
2018-06-06 15:07:53.879 [hingStatusInfoChangedEvent] - 'amazonechocontrol:echo:ae467c3c:G090LF1174320CF1' changed from ONLINE to OFFLINE (BRIDGE_OFFLINE)
2018-06-06 15:08:00.308 [hingStatusInfoChangedEvent] - 'amazonechocontrol:echo:ae467c3c:G090LF1174320B73' changed from OFFLINE (BRIDGE_OFFLINE) to ONLINE
2018-06-06 15:08:01.095 [hingStatusInfoChangedEvent] - 'amazonechocontrol:echo:ae467c3c:G090LF1174320DVQ' changed from OFFLINE (BRIDGE_OFFLINE) to ONLINE
2018-06-06 15:08:01.878 [hingStatusInfoChangedEvent] - 'amazonechocontrol:echo:ae467c3c:G090LF1174320CF1' changed from OFFLINE (BRIDGE_OFFLINE) to ONLINE
2018-06-06 15:08:04.027 [hingStatusInfoChangedEvent] - 'amazonechocontrol:account:ae467c3c' changed from OFFLINE (CONFIGURATION_ERROR): Login fails. Check your credentials and try to login with your webbrowser to http(s)://<youropenhab:yourport>/amazonechocontrol/ae467c3c
Important Message! To better protect your account, please re-enter your password and then enter the characters as they are shown in the image below. to ONLINE

Anyone else seeing this issue?

I’m able to login to alexa.amazon.com (with a different browser) and don’t see a captcha. I’m not able to attempt the login through my openhab system though.

thanks

I am getting like this . all other working fine

2018-06-07 11:38:48.435 [ome.event.ItemCommandEvent] - Item ‘Echo_Living_Room_MusicProviderId’ received command ROBIN

2018-06-07 11:38:48.451 [vent.ItemStateChangedEvent] - Echo_Living_Room_MusicProviderId changed from TUNEIN to ROBIN

2018-06-07 11:38:58.956 [ome.event.ItemCommandEvent] - Item ‘Echo_Living_Room_AmazonMusic’ received command ON

2018-06-07 11:38:58.973 [vent.ItemStateChangedEvent] - Echo_Living_Room_AmazonMusic changed from OFF to ON

2018-06-07 11:38:59.804 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method ‘ThingHandler.handleCommand()’ on ‘org.openhab.binding.amazonechocontrol.handler.EchoHandler@1f7fbc8’: POST url ‘https://alexa.amazon.in/api/np/command?deviceSerialNumber=G2A0P307738303DS&deviceType=A7WXQPH584YP’ failed: Not Found

org.openhab.binding.amazonechocontrol.internal.HttpException: POST url ‘https://alexa.amazon.in/api/np/command?deviceSerialNumber=G2A0P307738303DS&deviceType=A7WXQPH584YP’ failed: Not Found

at org.openhab.binding.amazonechocontrol.internal.Connection.makeRequest(Connection.java:404) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at org.openhab.binding.amazonechocontrol.internal.Connection.command(Connection.java:627) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at org.openhab.binding.amazonechocontrol.internal.Connection.playAmazonMusicTrack(Connection.java:657) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at org.openhab.binding.amazonechocontrol.handler.EchoHandler.handleCommand(EchoHandler.java:345) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at com.sun.proxy.$Proxy151.handleCommand(Unknown Source) [263:org.openhab.binding.amazonechocontrol:2.3.0]

2018-06-07 11:39:05.610 [ome.event.ItemCommandEvent] - Item ‘Echo_Living_Room_Player’ received command PLAY

2018-06-07 11:39:05.625 [vent.ItemStateChangedEvent] - Echo_Living_Room_Player changed from PAUSE to PLAY

2018-06-07 11:39:06.353 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method ‘ThingHandler.handleCommand()’ on ‘org.openhab.binding.amazonechocontrol.handler.EchoHandler@1f7fbc8’: POST url ‘https://alexa.amazon.in/api/behaviors/operation/validate’ failed: Bad Request

org.openhab.binding.amazonechocontrol.internal.HttpException: POST url ‘https://alexa.amazon.in/api/behaviors/operation/validate’ failed: Bad Request

at org.openhab.binding.amazonechocontrol.internal.Connection.makeRequest(Connection.java:404) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at org.openhab.binding.amazonechocontrol.internal.Connection.makeRequestAndReturnString(Connection.java:286) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at org.openhab.binding.amazonechocontrol.internal.Connection.playMusicVoiceCommand(Connection.java:904) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at org.openhab.binding.amazonechocontrol.handler.EchoHandler.handleCommand(EchoHandler.java:196) [263:org.openhab.binding.amazonechocontrol:2.3.0]

at com.sun.proxy.$Proxy151.handleCommand(Unknown Source) [263:org.openhab.binding.amazonechocontrol:2.3.0]

2018-06-07 11:39:08.619 [vent.ItemStateChangedEvent] - Echo_Living_Room_AmazonMusic changed from ON to OFF

2018-06-07 11:39:08.734 [vent.ItemStateChangedEvent] - Echo_Living_Room_Player changed from PLAY to PAUSE

2018-06-07 11:39:14.068 [ome.event.ItemCommandEvent] - Item ‘Echo_Living_Room_Shuffle’ received command OFF

2018-06-07 11:39:14.095 [vent.ItemStateChangedEvent] - Echo_Living_Room_Shuffle changed from ON to OFF

no - you are not alone. I have the same.
There is a bug in openHAB 2.3 in Windows too. OpenHAB creates filenames for the echo-binding with colons (:slight_smile: which are forbidden in Windows. i dont know if These two effects are linked……the developer of the binding doesnt give a Statement to this behaviour….

I don’t understand this - does Amazon already offer an MQTT broker which you can consume information about Alexa?