Thank for the inputs. Good to have some real testers :-)
- using new==1 instead of new=='1' for checking the status crashes luup. This can also can cause constant restarts as the condition is still being met, so it can be hard to clear. It might be good to handle this scenario
will be adding a pcall() to protect this now
- It would be really helpful to support triggers or watches. If you want to use a scene controller for example, to override a timed light, you need to only transition on a new event, even if the scene doesn't change. I.e. you can't evaluate just the current value, but only 'new' values. This could be done perhaps with the scene time, but haven't figured that out yet
I do not understand. if you have a transition with your remote controller and a condition on a variable like sl_LastScene and button value, it should be able to match the transition at the press of the button ( since transition are evaluated based on luup.watch , so based on trigger
- small detail, but using just an arrow for a transition doesn't work. You need a timer with at least 1 second. This could be intent to prevent race conditions but if thats the case perhaps a one second delay can be inferred rather than 'breaking' the state machine.
agreed, but I d rather the user know what he is doing, indeed a transition must wait on something. I ll check what could be done to default something
- It would be nice to enable/disable individual workflows as new things are being tested
adding it
- The workspace editor can't scroll horizontally, at least in Safari. This can cause problems switching between devices or resolutions as if you design it in something with a large screen, you can't see it all on a smaller screen
are you talking about mobile safari , or desktop safari ? on mobile device I know but some other things are not working well on mobile. i wonder if people would really use mobile to edit workflows. on IE and Chrome I do get the proper scrolling behavior ( it appear only when the area is larger than the screen and it automatically enlarge the area if you drag and drop something beyond the boundaries right now ). I need to find a safari desktop to test. I ll probably not be able to fix it no mobile screens, touch & scrolling are not consistent enough there and jointjs library has its own quirckness as well
- A feature request would be to have the equivalent of a variable container built into the workflow engine, either globally or local to a given workflow. The use case is to maintain values in addition to maintaining state. For example a thermostat controller could have a variable for temperature, that is edited based on schedule, occupancy or incremented up/down by either a echo, switch or whatever. For the inc/dec case, you need the previous value which could have been set thru a number of methods, and polling the device and inc/decing is not ideal. This could be integrated into the state actions. The only remaining thing the user would need to do (this could be built in as well, or done separately), is to track the updates to this variable and push them to a device. You wouldn't want to do that manually in the state machine, you'd want that evaluated based on changes to the variable alone
we need to discuss this more, I am not undersatnding yet fully how this would work. Also fearing that I do not want to turn into a whole lot of code writing for the users because if you talk about variable, you ll likely talk about arythmetic expressions with them etc..
- A timer which has no name, but a time won't execute. Not a big one but if you are lazy it will lock things up. Generally the timer name is sort of pointless as we only have 1 timer, and I seem to have transitions with just a timer only, making the naming redundant
fixing this in the UI
- When a luup crash occurs, the state machine seems to restore to the last state. Not sure if that is the best behavior or returning to the start state is best. If we hold the same state, it would be nice to leverage the global reset of sorts to return to start, but I'm not sure there is a great way to do this that would work for all workflows. If there was a 'restart' device/variable we could trigger the start state on, that might be useful.
Yes , I kind of prefer the restart in the state where it was, but I am adding a UPNP ALtUI action to reset a particular workflow so you can then use this as a scene action or even as a workflow state action.
will be in next release
[/list]