mcallegari / qlcplus

Q Light Controller Plus (QLC+) is a free and cross-platform software to control DMX or analog lighting systems like moving heads, dimmers, scanners etc. This project is a fork of the great QLC project written by Heikki Junnila that aims to continue the QLC development and to introduce new features.
Apache License 2.0
918 stars 349 forks source link

WebAPI Test page doesn't contain Animation widget example #1559

Closed yestalgia closed 1 month ago

yestalgia commented 2 months ago

Issue Description:

One of our users recently brought up a concern regarding the lack of documentation for retrieving information about Animation widgets through the QLC+ Web API. Currently, the Web API test page does not include any information on how to access Animation widget data.

User Report:

On our forum, a user expressed their difficulty in retrieving Animation widget information through the API. They mentioned that while the web access page visually displays all the added buttons inside the animation, accessing this information programmatically seems challenging as the page is prerendered and doesn't expose the actual API calls. Despite being able to control values manually by inspecting the websocket traffic, automating this process requires retrieving the information first. https://qlcplus.org/forum/viewtopic.php?t=17313

Action Needed:

It's imperative to address this issue by updating the Web API test page to include documentation specifically for retrieving Animation widget data. This would enable users to programmatically interact with Animation widgets and automate processes effectively.

Proposed Solution:

Additional Notes: Ensuring comprehensive documentation for all features, including Animation widgets, is essential for empowering users to leverage the full potential of QLC+ through the Web API. By addressing this issue, we can enhance the usability and accessibility of QLC+ for our diverse user community.

yestalgia commented 2 months ago

@Itay-Lifshitz Can you take a look at this for us? The code for the Web API Test Page can be found here: https://github.com/mcallegari/qlcplus/blob/master/webaccess/res/Test_Web_API.html

mcallegari commented 2 months ago

This is the added API: https://github.com/mcallegari/qlcplus/blob/master/webaccess/res/virtualconsole.js#L707

Binary-Vanguard-12138 commented 2 months ago

@Itay-Lifshitz Can you take a look at this for us? The code for the Web API Test Page can be found here: https://github.com/mcallegari/qlcplus/blob/master/webaccess/res/Test_Web_API.html

OK, will check.

Binary-Vanguard-12138 commented 1 month ago

@mcallegari In #1566 , I added some components for demonstrating the virtual console animation widget. Currently, it is only for preset buttons. I would like to ask what kind of Animation widget information we need to retrieve through API calls. @yestalgia

RektByMemes commented 1 month ago

@Binary-Vanguard-12138 I was the person who raised the question on the QLC+ forum. I checked your changes and can see you made an example on how to trigger the animation preset with a controlId. Is there any way to retrieve this Id of the preset buttons that are present on the animation though the websocket?

mcallegari commented 1 month ago

@RektByMemes I have added an API to retrieve the sub-controls information. See updated API test page. In conjunction with the recently added MATRIX_* commands in virtualconsole.js there should be enough flexibility now.

Since this has been basically implemented for you and considering the effort that 3 people have put in it, please consider to recognize this as a custom feature by supporting the project in any way you can. Thanks

RektByMemes commented 1 month ago

Sure, no problem, I'll see how I'll be able to help you