bitfocus / companion-module-generic-http

Generic HTTP module
MIT License
9 stars 19 forks source link

Streamdeck actions not firing #5

Closed ryanjohnclark closed 4 years ago

ryanjohnclark commented 4 years ago

I have 2 stream decks on 2 separate computers on the same lan. I'm using the generic http on one to push a button on the other. The "other" stream deck is receiving the command as indicated by the button flashing but it does not trigger the action associated with the button. There is very little documentation that I can find on this but per some peer support the url was to send http://ip:port/press/bank/1/1 I am using the "get" action from the generic http instance. Could someone please take a look to see if the module has an issue or if my url needs modified? Thank you!

MichaelAllen commented 4 years ago

http://172.20.1.105:8000/press/bank/1/5 is the correct url format for remotely pressing button 1.5 with a Generic HTTP GET request. (substitute your IP and port, of course)

ryanjohnclark commented 4 years ago

My apologies, the url is formatted exactly as you show. The action is recognized by the other streamdeck but it doesn't execute the action. Screenshot_20200709-213558_Video Player

istnv commented 4 years ago

My apologies, the url is formatted exactly as you show. The action is recognized by the other streamdeck but it doesn't execute the action.

If you are trying to 'Page Up', those special buttons and internal actions fire directly, outside of the normal run 'actions' and only on the surface you push. HTTP doesn't know which surface you want moved. If you create an action to increment/decrement a specific surface, that will fire via HTTP.

ryanjohnclark commented 4 years ago

The button that I'm "virtually" pressing through the http command has one action in it. The action is to set page. I think it goes to page 11. I'm not sure I understand why this doesn't work. If I physically press the button it sets to page. If I "virtually" press the button via the http command on my other deck it does not set to page. I have included a short video. Something still feels wrong. While experimenting I tried the press and hold, release, and even color change examples provided on the setting page and none of those worked (I don't need them to, but I would they they should work.).

ryanjohnclark commented 4 years ago

I added the link twice through the icon above the comment box but don't see it in the previous comment. Here is the link pasted in just in case: https://youtu.be/xF3-Jq_JOpw

ryanjohnclark commented 4 years ago

Okay, I think I understand what you are saying though the behavior doesn't quite make sense to me. What is the best way for me to move from page 1 to page 11 on a deck when prompted by another?

haakonnessjoen commented 4 years ago

If you want to set the page of a specific stream deck device, make sure you have selected what device you want to set the page on, in the "set page" action. When you fire the button from http, it wouldn't know what stream deck device to change the page on, as they are local to each stream deck you have connected to companion.

MichaelAllen commented 4 years ago

@ryanjohnclark I understand what you are trying to do better now that I have seen the video. The issue is not with the action where you are sending the HTTP command, the problem is in the action on the receiving end.

As Håkon mentioned above, when a button is triggered remotely, Companion doesn't know which device "Current Surface" refers to. Instead, you have to manually select your streamdeck from the dropdown so that Companion knows which surface to flip the page on.

Change it from this:

To this:

ryanjohnclark commented 4 years ago

Works perfectly! Thanks to everyone for being so helpful!