FlyingDiver / Indigo-streamdeck

Plugin(s) to use an Elgato StreamDeck with the Indigo Home Automation system
The Unlicense
0 stars 1 forks source link

Indigo Server address isn't unique to each Stream Deck button #1

Closed autolog closed 2 years ago

autolog commented 3 years ago

Something I hadn't noticed which is a problem, is that when you alter the Indigo Server address on a Custom Indigo Action button, it changes the address on all Custom Indigo Action buttons (across all Stream Deck folders). So that means you can only address one Indigo Server i.e. the Indigo Server address isn't unique to each button AFAICS.

See post: https://forums.indigodomo.com/viewtopic.php?p=202129#p202129

FlyingDiver commented 3 years ago

I'm going to see if I can keep the last IP address entered as the global default, but allow over-riding it on a per-button basis. Basically, save it both places, which won't change existing buttons if a new one is added.

autolog commented 3 years ago

I'm going to see if I can keep the last IP address entered as the global default, but allow over-riding it on a per-button basis. Basically, save it both places, which won't change existing buttons if a new one is added.

That sounds good - thanks :)

FlyingDiver commented 3 years ago

I punted saving the IP address between buttons. Each button saves it's own IP address, and not shared to new buttons.

https://github.com/FlyingDiver/indigo-streamdeck/releases/tag/0.0.3

FlyingDiver commented 3 years ago

Grab the .sdPlugin files from the latest commit. I think it's fixed.

FlyingDiver commented 3 years ago

And do the icons look right?

autolog commented 3 years ago

And do the icons look right?

Yes they do - Is there something specific I should be checking?

autolog commented 3 years ago

Grab the .sdPlugin files from the latest commit. I think it's fixed.

The data is now being retained OK AFAICS.

However, it doesn't appear to be sending the button presses through to the correct Indigo? My dev machine is 192.168.1.2 and production is 192.168.1.8. When I press the button to send a toggle device to production, nothing appears in the log on my production machine but does on the dev machine e.g.:

StreamDeck Debug onMessage from client: 12, message: {u'payload': {u'action': u'com.flyingdiver.indigo.action', u'device': u'FF4308CC130C5D449A62405F343C4886', u'event': u'keyDown', u'context': u'EAA0BAB819DB0DF1947A904D577F011D', u'payload': {u'isInMultiAction': False, u'coordinates': {u'column': 5, u'row': 3}, u'settings': {u'actionRequest': u'indigo-device-toggle', u'eventID': u'173401744', u'indigoAddress': u'192.168.1.8:11465'}}}, u'message-type': u'keyDown', u'title': u'YAMAHA'} StreamDeck Debug onMessage keyPress: {u'payload': {u'action': u'com.flyingdiver.indigo.action', u'device': u'FF4308CC130C5D449A62405F343C4886', u'event': u'keyDown', u'context': u'EAA0BAB819DB0DF1947A904D577F011D', u'payload': {u'isInMultiAction': False, u'coordinates': {u'column': 5, u'row': 3}, u'settings': {u'actionRequest': u'indigo-device-toggle', u'eventID': u'173401744', u'indigoAddress': u'192.168.1.8:11465'}}}, u'message-type': u'keyDown', u'title': u'YAMAHA'} StreamDeck Debug onClose client: 12 StreamDeck Debug onConnect client: 13 StreamDeck Debug onConnect activeConnections: {13: {'handler': <websocket_server.WebSocketHandler instance at 0x10cb00e60>, 'id': 13, 'address': ('192.168.1.2', 58486)}} StreamDeck Debug onMessage from client: 13, message: {u'payload': {u'application': {u'platform': u'mac', u'version': u'4.9.4.13228', u'language': u'en'}, u'plugin': {u'version': u'0.0.4'}, u'devices': [{u'size': {u'rows': 4, u'columns': 8}, u'type': 2, u'id': u'FF4308CC130C5D449A62405F343C4886', u'name': u'Stream Deck XL'}], u'devicePixelRatio': 2}, u'message-type': u'applicationInfo'} StreamDeck Debug onMessage applicationInfo Adding/Updating device: {u'size': {u'rows': 4, u'columns': 8}, u'type': 2, u'id': u'FF4308CC130C5D449A62405F343C4886', u'name': u'Stream Deck XL'} StreamDeck Debug onMessage from client: 13, message: {u'payload': {u'action': u'com.flyingdiver.indigo.action', u'device': u'FF4308CC130C5D449A62405F343C4886', u'event': u'keyUp', u'context': u'EAA0BAB819DB0DF1947A904D577F011D', u'payload': {u'isInMultiAction': False, u'coordinates': {u'column': 5, u'row': 3}, u'settings': {u'actionRequest': u'indigo-device-toggle', u'eventID': u'173401744', u'indigoAddress': u'192.168.1.8:11465'}}}, u'message-type': u'keyUp', u'title': u'YAMAHA'} StreamDeck Debug onMessage keyPress: {u'payload': {u'action': u'com.flyingdiver.indigo.action', u'device': u'FF4308CC130C5D449A62405F343C4886', u'event': u'keyUp', u'context': u'EAA0BAB819DB0DF1947A904D577F011D', u'payload': {u'isInMultiAction': False, u'coordinates': {u'column': 5, u'row': 3}, u'settings': {u'actionRequest': u'indigo-device-toggle', u'eventID': u'173401744', u'indigoAddress': u'192.168.1.8:11465'}}}, u'message-type': u'keyUp', u'title': u'YAMAHA'}

I have updated the plugin on both the Dev and Production system and restarted the plugins and Stream Deck App numerous times. I do note that the Stream Deck Indigo device on the production machine has a status of no which implies it isn't connected?

FlyingDiver commented 3 years ago

Oh, I see what I missed. I only updated the inspector code to save the IP address, not the action code which uses it. Oops. I haven't touched this code in a long time.

FlyingDiver commented 3 years ago

Ok, new commit now. Same files.

autolog commented 3 years ago

Installed it and now both (dev and prod) aren't working. Dev which was working is not showing any debug messages - I have Detailed Debugging turned on. I have reloaded the Indigo plugin and quit and started the Stream Deck App.

FlyingDiver commented 3 years ago

Sigh. Obviously I'm missing something in the API. No time to look into it this morning.

autolog commented 3 years ago

Sigh. Obviously I'm missing something in the API. No time to look into it this morning.

No problem. It is good of you to look at it. I will fallback to V0.0.2. :)

github-actions[bot] commented 3 years ago

Stale issue message