Skip to content
This repository has been archived by the owner on Mar 12, 2019. It is now read-only.

Improve automation parameters, add functionality for more automation #336

Open
jhakala opened this issue Nov 27, 2017 · 0 comments
Open

Comments

@jhakala
Copy link
Member

jhakala commented Nov 27, 2017

Taken from #330. Notes from that issue:

If we have AutoConfigure, why not AutoStart or TakeRun?

This could be done but I'd like to brainstorm how best to expand the automation functionality. Right now we have a special BoolT FM parameter for EXIT and AUTOCONFIGURE, so instead of making more and more special parameters, we could devise an all-purpose automation parameter. I am thinking the best solution is to replace the current automation parameters with a MapT that specifies a map of {state: command} to carry out automatically, i.e. an automatic start could be encoded as:

{  "Initial": "Initialize",
   "Halted": "Configure", 
   "Configured": "Start"
}

My first thoughts are that that format would make it a lot easier to define new automated actions in the future; e.g. one would not have to give a special name to a sequence of actions and implement it specifically; instead one would either:
a) put the exact JSON for a series of steps into the GUI code, and handle it there, or
b) abstract it out of the GUI a bit; instead, have the GUI send e.g. a StringT AUTOSTART over to the server side, and then the FM server-side code can populate the correct series of actions into the JSON parameter. That way the GUI code could be less in charge of defining the sequences for a particular routine. [This solution would probably mean creating two new parameters, the MapT that specifices the actions (populated on the server side), plus a StringT that the GUI populates for the GUI to send over to the server-side--it would read the StringT and then populate the MapT of actions.]

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant