Rule Machine Expert Features [deprecated]

There is and it’s right here
https://www.ivona.com

2 Likes

That’s awesome, Mike. Hopefully you can whip up a device type to get Ivona working as a capability.speechSynthesis device for ST!!

2 Likes

It’s already been done by @uli , unfortunately it requires a custom intermediate proxy service to assemble the output streem into a complete mp3…
This is a system that st should implement for tts…

1 Like

No SH*T.

I have very few apps left most are for 3rd party connections, what little I do have left it is because I am too busy building NEW functionality with rule machine to focus on collapsing the little one off apps I do have left.

BUT… now I am scared if something happens bad to rule machine, like i accidentally remove it or for whatever reason I need to rebuild all my rules I am going to be royally f’d since there is so much logic and time in it.

This would be really interesting, using dynamic input.

I am currently using the Aeon Doorbell and pre-recorded announcements I make on testtospeech.com to alert me to specific events that ST can trigger on using Rule Machine.

This is an excellent point. I went through this not too long ago when I had a dozen rules and twenty triggers. For whatever reason in the development I had to blow it all off and redo it. Mind you, this is my and my wife’s home, and she doesn’t particularly like me using it as a development testbed.

So I went through the IDE list of apps, and hand wrote a bunch of notes on what I had. Most rules are very simple in my setup. Everything is there in the IDE. What we need is a tool to walk the IDE list of rules, and build a summary to print out, or refer to. Unfortunately, there is no way to “save” the rules or to “restore”.

2 Likes

OK then, if there is no way to backup and restore rules (Yet) one would be irrational to use RM for anything complex enough that you couldn’t re-create all your rules in a few minutes.

That is a massive limitation on its usefulness and by extension, of the whole ST ecoverse.

Would you use a computer that couldn’t be backed up for anything more important than gaming or casual browsing?

I’m thinking that RM ought to be able to walk the menus that create the rules and trigger a series of screenshots, if nothing else.

Imagine if ST “crashed” and your setup was lost, and you had to start from scratch with no notes. How long would that take you? For me the answer is on the order of 10 hours of effort to rebuild from scratch, my guesstimate.

It isn’t like backing up a computer at all. Recovering a single lost document could represent a huge loss compared to 10 hours of rebuilding.

No such capability exists in SmartThings. But you could write a web-walker to do it from the IDE pages.

LOL, actually there is a way, I just thought of it in the wee hours of this morning, it should be possible to completely export and then restore a given rule, or any app for that matter with the correct hooks.
Stay tuned…

4 Likes

For me, right now, maybe 20 minutes, but wait a year when I’ve forgotten how all this stuff works because I haven’t messed with it for a while, and given a lack of any documentation for anything, it might be easier to buy new stuff. Meanwhile, I won’t be making many rules or any complex rules using RM.

Either ST is a hobbyist’s toy, or it is ready for serious use (partially due to RM); at the moment, it is missing so many things, and requires so much fooling around with completely undocumented software, that it is still in the former category. IMHO, ST is not yet ready for widespread consumer use.

not for nothing, but you’re expecting a couple of community hacks to develop and provide functionality that ST doesn’t even provide for their native apps?

Sorry, but this thread isn’t the rag on ST thread, there’s plenty of those already.

2 Likes

I’d expect ST to work it out, if anyone does - they are the ones with a large financial stake in ST success. Not ragging on anyone, just disappointed and surprised that ST isn’t more complete.

Rule Machine Update Required

Please update Rule Machine and Rule from Github for proper functioning of Expert Features.

Rule Machine github: https://github.com/bravenel/Rule-Trigger/blob/master/smartapps/bravenel/rule-machine.src/rule-machine.groovy8. Save and Publish for me.

Rule github: https://github.com/bravenel/Rule-Trigger/blob/master/smartapps/bravenel/rule.src/rule.groovy6

I am going to resurrect this one and add some additional information on why I feel it’s a value add:

In addition to human understandable labels, the value is that arbitrary labels adds a layer of abstraction which allows for extensibility.

Say I have 22 Rules that use custom command “play(1)”, and I want to change “play(1)” to “play(2)”, there are 22 places that has to be changed - and they are UNKNOWN, so you have to dig through each rule to search and replace.

I know, woe is me. Not complaining, love everything about it, just really pointing out how the enhancement can improve the usability

With labels, one may be able to add that label to a series of rules actions, then if that label’s defined action is later changed, all those rules using that label as an action follow in line.

Also, as I write this out, labeled groups / and nested groups of devices on which to execute the commands would have some of the same benefits. Understandable names not necessarily being one of them, and not as big of a deal in my use cases for the extensible uses. Certainly the actions are much more important, at least to me. :yum:

In order for this to work the custom commands would have to be editable (alias issues aside), currently they are not.
You can only add or delete them. Editing a configured command in the context of how they are being stored and distributed within the app isn’t as simple as editing your typical app input field.
I have an app where I do just this type of editing of state maps, it’s a lot of crufty code to get it done, and the mobile UI offers nothing to make the task any easier.
Even with this editing feature, each rule would have to be tapped through, as the children build their available command list dynamically from the parent.
There isn’t any way to implement this feature as you have further defined it without a complete re-write of the expert componentry, as well as expert’s integration into Rules.
I can look at aliasing, as that potentially could be done without impacting existing rules.

Having said that, I’m just a regular guy, with a full time job (and something of a life), and I’ve already a stack of things ahead of this request that I’m working on, namely:
1–smartApp add in methods to support application backup and recovery (SmartThings Application Recovery Tools, START)
2–then custom attribute conditional support in Rule Machine

1 is about 90% complete on the client side
2 is just a brain cramp right now…

1 Like

You bet, that’s understood. Same here. :smile:

And Backup / Recovery is more important to me as well, for sure.

Anyway, thank you for the code, just chipping in thoughts.

I have a feature request, but I don’t know if it’s possible, It’s a bit like the opposite of the current expert features implementation:

Rather than having these commands as possible actions, listen for these commands being triggered elsewhere as a trigger for Rule Machine to do another action

1 Like

We have looked at this idea, and rejected it.

Is it not possible?..

It is possible, but Bruce and I agree that rule machine has pretty much pushed the limits of what can be done with the current mobile development platform. We both have concerns that implementing this would push it over the edge.