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

Commands #60

Open
exalate-issue-sync bot opened this issue May 10, 2019 · 0 comments
Open

Commands #60

exalate-issue-sync bot opened this issue May 10, 2019 · 0 comments

Comments

@exalate-issue-sync
Copy link

exalate-issue-sync bot commented May 10, 2019

Support commands - these might reboot the device, restart the Player, or control external devices - e.g. turn off/on TV screen.

Commands are defined in three ways:

  • Command code: these type of commands are configured in the Display Setting Profile on the CMS and sent to the display in the <commands> node of Register Display. They contain a code, a command string and a validate string.
  • Shell command widget: these are on a Layout and either have a command code or a command string.
  • Schedule commands: these appear in the return from the schedule XMDS call and always refer to a command code.

The command string should be executed by the Player as the user account running the player and if a validate string is passed the output of the command should be tested and a true/false notify status request sent with lastCommandSuccess property.

There are various uses cases for commands:

  • Rebooting the device
  • Turning a connected monitor on/off
  • Executing a 3rd party script which does some other actions

The CMS and other players have support for various other functionality such as RS232 commands, Android intents, HTTP requests, etc. For the moment these are out of scope and can be addressed in a later issue.

@exalate-issue-sync exalate-issue-sync bot added this to the 1.8 R3 milestone May 10, 2019
@exalate-issue-sync exalate-issue-sync bot modified the milestones: 1.8 R3, 1.8 R4 Aug 13, 2019
@exalate-issue-sync exalate-issue-sync bot modified the milestones: 1.8 R4, 1.8 R5 Sep 2, 2019
@dasgarner dasgarner added this to To do in Linux Player Kanban Dec 4, 2019
@dasgarner dasgarner modified the milestones: 1.8 R5, 1.8 R6 Jan 9, 2020
@dasgarner dasgarner modified the milestones: 1.8 R6, 1.8 R7 Jul 6, 2020
@Stivius Stivius moved this from To do to Priority for Edge in Linux Player Kanban Apr 28, 2021
@Stivius Stivius moved this from Priority for Edge to In Progress in Linux Player Kanban May 5, 2021
Stivius pushed a commit to Stivius/xibo-linux that referenced this issue Jul 5, 2021
- support for sync and async execution
- add tests for single command execution (both sync and async)
- validation string for result check
- command code to support predefined commands
- commands executor as a central point for any command execution
Stivius pushed a commit to Stivius/xibo-linux that referenced this issue Jul 5, 2021
Stivius pushed a commit to Stivius/xibo-linux that referenced this issue Jul 5, 2021
Stivius pushed a commit to Stivius/xibo-linux that referenced this issue Jul 5, 2021
- add locks in CommandsExecutor and CommandImpl
- add commands execution set to track active commands
- refactoring in CommandsExecutor
Stivius pushed a commit to Stivius/xibo-linux that referenced this issue Jul 5, 2021
@dasgarner dasgarner modified the milestones: 1.8 R7, 1.8 R8 May 16, 2022
@dasgarner dasgarner mentioned this issue May 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Linux Player Kanban
  
In Progress
Development

No branches or pull requests

1 participant