Yup, my original plan was for the UI to run on any PC but as it evolved I learned how to run something like this right from the Hub. KInda cool. lol (I renamed it "Save Flow")
Thanks and that's definitely on the list. Next up is Notifications though.
True, but the JSON file can't have any spaces in the name, so I left the Naming in the App up to you.
Everyone, keep coming with the little nick picking stuff. That's what will make it look and act better for everyone.
I haven't started using this, but a couple pre-emptive suggestions:
Different colors for trigger, condition, and action. Reason: in a flow chart, we have different shapes. Can't do that here. Instead, different colors.
Border colors: put green or red border around conditions that are currently true or false, respectively. It would be awesome if the connecting lines could also red or green. And then same borders around the action. Reason: it would be easy to see which path(s) are active from beginning to end and help "why didn't xyz happen?". Simply follow all of the green paths until one box has a red border.
I was wondering why you decided to use MakerAPI for the access point. Makes sense with the original approach. Since the app and interface is now all running on the hub, you could potentially just use device input menus to allow users to select the devices right from within the app, and skip the MakerAPI stuff.
I’d be very happy to provide more detail on this topic, though my availability is limited until Wednesday. Meanwhile, here’s a high-level overview to help address your question.
First, for context, please keep in mind that I use WebCoRE. Variables in WebCoRE offer more features than those in Hubitat’s native environment. For example, in WebCoRE, variables can hold not only values but also physical devices (allowing ad hoc grouping), other variables (for type conversion), expressions (to evaluate dynamic values), and arguments—though I have not personally used arguments and am not fully clear on their function.
In WebCoRE, there are commonly two types of variables I use:
Local variables, which exist only within a single piston (script), and
Global variables, which are shared and accessible across all pistons.
Here are some examples of variables I use in pistons I have written, including their types and purposes:
Examples of Variables Used in Pistons:
@DayOff — Global Boolean
This variable indicates whether the current day is a day off (True/False). Multiple pistons check this variable to adjust their behavior, such as skipping routines like morning alarms or irrigation on days off. Because this information needs to be shared, it is a global variable.
PauseDuration — Local Integer
Used within an irrigation piston to specify how many minutes the watering system should be paused. This variable is local because it is only relevant to that specific piston.
LastWateringDate — Local Date/Time Variable
Stores the date and time when the irrigation system last ran. This allows the piston to check if watering occurred recently before starting a new cycle. It is a local variable because it is only used within the irrigation piston.
SelectedPlaylistVS — Local Device Variable
Stores the virtual switch that triggered Sonos playback in a multi-playlist control piston. This variable exists only during the piston’s execution, so it is local.
@WindowSensors — Global Device List
Holds a list of window contact sensors used by multiple pistons to check if any windows are open. Because this list is referenced across pistons, it is a global variable.
If you need more detailed explanations or additional examples, I can provide those when I have more time.
I have followed all the steps. When I get to the part to hit the blue link for "Flow Engine Editor" it goes to hubip/local/flowengineeditor.html and says "Not found".
When I press "Done" the following comes up in the logs:
Massive update, local/global variables! Have no idea if this is going to work, lol. But for those of you that use variables, give it a shot! (just do a 'Repair' in HPM)
@curtman3 - Not sure what went wrong but try the new version
edit: Just found a bug in the Editor - 'Repair' again!
Welcome back Bryan, when I open the flow engine editor and when I click the load flow button, I get this error. But when I select a flow all works out ok. It's like it's trying to open a flow before a flow is even selected to be opened.
BTW, nice app! This is what VRB should have been conceptually and visually. Hope you might be able to strike a deal so this becomes part of the built in apps and make it more integrated in the ecosystem instead of having to use work arounds because of limitations to user apps.