Jump to content

Issue with Device Status when accessing through proxy


MustangChris04

Recommended Posts

Posted

I'm having an issue with the Android app (and iOS) when trying to view the device's status when connected through a reverse proxy. The REST commands are working fine; I can sync and control devices. The only issue is that it shows all the devices as OFF and will not sync the status of the devices. I do see the subscribe requests going through though, but I suspect IIS doesn't know how to handle it or can't keep a socket open. Any ideas?

 

Thanks,

Christopher

 

Posted

Are you trying websockets? Or the proprietary subscription?

Problem is, the ISY sees the connection coming from the proxy, so that's where the data is sent. Your client never sees it. When using Apache as a proxy there is a module for proxying websockets correctly, but I've never tested it so cannot offer any advise on it. I do know I could not get the older subscription method working at all thru any proxy due to its design.

Posted

Hi Christopher,

 

The ISY does not support websockets (and neither does MobiLinc...MobiLinc is 100% TCP/IP based). The subscription channel from the ISY delivers all the real-time status information to clients like MobiLinc or the Admin Console. This is an open socket connection from the ISY to the client that the client initiates. I suspect you will have a difficult time getting a reverse proxy to work with the subscription channel.

 

Wes

Posted

Ah, interesting. I must have missed that. To be upfront, it wouldn't be easy to switch over. Websockets were designed to overcome long term connection issues with a web browser. There's very little info on these as it is in the web dev world. I've done just enough research on app dev and websockets that I'm not even sure it's easily possible without writing your own WS stack for iOS/Android with authentication (looks like there's a lot of issues with the known WS Javascript libraries and authentication already. And WS was written for the web browsers!). 

 

In short, trying to make WS fit into a software app just to get around/through a reverse proxy is a mess of a mashup of non-native technologies trying to work with each other. The good news is we already have a solution with our MobiLinc Connect service. I realize that you and Christopher are likely not interested in a cloud service, but this absolutely solves the remote access issue without exposing the ISY. And it works :)

 

Wes

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...