Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FeatureRequest: Granular delays #2

Closed
AlexWHughes opened this issue Jun 4, 2020 · 7 comments
Closed

FeatureRequest: Granular delays #2

AlexWHughes opened this issue Jun 4, 2020 · 7 comments
Assignees
Labels
enhancement New feature or request

Comments

@AlexWHughes
Copy link

It would be great to allow people to pick parameters that are then triggered during the next "drop" or tempo change. All of the triggering can be done within MA what twitch2MA needs to do is allow messages to be either queued or discarded once the first command has been selected.

For example, if someone says !red they have to wait till either a telnet message is sent back or they have to wait 30 seconds, etc to prevent choices being overwritten.

If you could set parameter based group ones for colour, video, gobo, etc then multiple people could contribute to the "look"

@schw4rzlicht schw4rzlicht added the enhancement New feature or request label Jun 4, 2020
@schw4rzlicht
Copy link
Owner

schw4rzlicht commented Jun 4, 2020

All of the triggering can be done within MA what twitch2MA needs to do is allow messages to be either queued or discarded once the first command has been selected.

For example, if someone says !red they have to wait till either a telnet message is sent back or they have to wait 30 seconds, etc to prevent choices being overwritten.

That's kind of unclear to me since Telnet is unidirectional (EDIT Unidirectional in a sense that we cannot affect messages received from the MA). The challenge would be to tell twitch2ma when to accept commands again.

When you speak about queing: Do you just want to queue twitch commands and let the desk "get" the next command when needed (via whatever mechanism)?

When using timeouts configured in config.json how would you go about synchronizing?

If you could set parameter based group ones for colour, video, gobo, etc then multiple people could contribute to the "look"

This could easily be done using something like parameters for commands. So you could define a !color command and add parameters like blue, red etc. That should be relatively easy to implement and wouldn't break older configurations.

@schw4rzlicht
Copy link
Owner

I already implemented that part:

This could easily be done using something like parameters for commands. So you could define a !color command and add parameters like blue, red etc. That should be relatively easy to implement and wouldn't break older configurations.

It's not a stable release yet but you can test it when installing 1.6.0-rc1 like this:

@AlexWHughes
Copy link
Author

The telnet back was just more of a brain dump. I don't think its a requirement or has much value.

MA would have to talk back on a different port and while it is possible just allowing delays for parameters is a great step forward. The only value is two way communication is you can send an message back to twitch2MA to say "hey I am ready to take another command"

@schw4rzlicht
Copy link
Owner

Implementation details:

  • add optional configuration for each command/parameter which defines a sACN universe and channel
  • when configured, ignore timeout and only accept new commands when the configured channel is at 100%
  • send a message to Twitch chat when somebody tries to execute something that is currently blocked by sACN

Does that match the feature request?

@AlexWHughes
Copy link
Author

That does only addition I would make would be
send a message to Twitch chat that can be customised when somebody tries to execute something that is currently blocked by sACN

@schw4rzlicht schw4rzlicht self-assigned this Jun 7, 2020
schw4rzlicht added a commit that referenced this issue Jun 10, 2020
schw4rzlicht added a commit that referenced this issue Jun 10, 2020
schw4rzlicht pushed a commit that referenced this issue Jun 10, 2020
# [1.13.0-rc.1](v1.12.0...v1.13.0-rc.1) (2020-06-10)

### Bug Fixes

* Enable graceful shutdown ([24272bd](24272bd))
* Fix line numbers being wrong in index tests (see evanw/node-source-map-support#279) ([56fd884](56fd884))
* Graceful closing connections ([9b2ceb7](9b2ceb7))
* Improve graceful shutdown ([626430d](626430d))

### Features

* Add command to log when permissions are denied ([40bdf94](40bdf94))
* Add sACN lock ([c3a08c5](c3a08c5)), closes [#2](#2)
@schw4rzlicht
Copy link
Owner

sACN locks are available in 1.13.0-rc.1. Feedback appreciated :)

schw4rzlicht pushed a commit that referenced this issue Jun 15, 2020
# [1.13.0](v1.12.0...v1.13.0) (2020-06-15)

### Bug Fixes

* Add default sACN object to config ([15970fb](15970fb))
* Add more error capturing ([5b576a6](5b576a6))
* Add more help to errors ([d7c9103](d7c9103)), closes [#7](#7)
* Detect corrupt sACN ([675cbbc](675cbbc))
* Enable graceful shutdown ([24272bd](24272bd))
* Error handling for Twitch chat client ([dc0fda9](dc0fda9))
* Error reporting when config file was not found ([78fc048](78fc048))
* Exit instead of throw ([fb5576f](fb5576f))
* Filter exceptions ([7777311](7777311))
* Fix line numbers being wrong in index tests (see evanw/node-source-map-support#279) ([56fd884](56fd884))
* Graceful closing connections ([9b2ceb7](9b2ceb7))
* Improve error handling ([58c40cf](58c40cf))
* Improve graceful shutdown ([626430d](626430d))
* Integration tests ([61194d8](61194d8))
* Make sACN interface configurable ([48eafa0](48eafa0))
* Null pointer when config.sacn is not used ([08b69f2](08b69f2))
* Null pointer when sACN was never received ([bc30dd9](bc30dd9))
* Resolve path to .env ([9d97959](9d97959))
* Resolve sentry.json ([4f60c91](4f60c91))
* Throw TelnetError where it occurs ([efb525a](efb525a))
* Timing out sACN according to E1.31 specs ([ffdaf65](ffdaf65))
* Wrong function call in production ([cef76ca](cef76ca))

### Features

* Add command to log when permissions are denied ([40bdf94](40bdf94))
* Add sACN lock ([c3a08c5](c3a08c5)), closes [#2](#2)
* Add sACN status ([c14bdba](c14bdba))
* Add sentry ([95ba4fe](95ba4fe))
@schw4rzlicht
Copy link
Owner

Fixed in 1.13.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants