Say I am using an app like Gentle Wake Up, and it gets started by some event.
How do I stop it mid cycle?
Say I am using an app like Gentle Wake Up, and it gets started by some event.
How do I stop it mid cycle?
You can uninstall it. Unless there is some method coded in the app to cause it to āstop mid cycleā, which can be triggered by some event, the app cannot be stopped.
Yeah, I was going to say āother than uninstalling it, of courseā.
Weird. Calling them āappsā, but then having no option to stop a process is pretty counterintuitive. I canāt think of any other type of āappā I use that cannot be stopped.
What?!
Practically every background App in Android and iPhone cannot be stopped by the user. And far too many Apps have background threads.
A few, to be precise, can be āforce stoppedā using the Android App Manager, but this practice is not recommended.
Sure, in an OS. This isnāt an OS. Itās a bunch of independent asynchronous execution threads.
You do have options to āstopā a SmartApp. But, one has to define terms. A SmartApp isnāt ārunningā in the sense that Safari runs on OS X. Itās just code sitting there activated by external events. Those external events can come from sensors, or schedules, etc. Probably what you want to do is to kill off future scheduled executions, or disable certain sensor inputs. Thatās about the only thing that āstopā could mean. Those things could be coded into a SmartApp. Of course, one would also need a method to ārestartā the app, which would really mean re-enabling sensors or rescheduling future executions.
What I did was created a mode titled ādisabledā because I never switch into that mode I will go into the smart app and select āonly when mode isā and set it to disabled. That way I can control when it gets executed. Of course not every app has that option but it is pretty easy to hack the code to put it in.
Unfortunately, there is only one Mode variable, and most SmartApps use it in the positive, not negative (i.e., ārun if mode is A, B, or Cā; rather than ārun when mode not Dā.
Thus every time you add a new mode, you need to update EVERY filtered SmartAppās configuration.
Safer to create one or more āmaster Virtual Switch(es)ā for disabling, but, while not too hard, itās unfortunately not inherent to the architecture.
Iāve feature requested new Device Capability āModeā specifically for this use case, but dead in the water.
Any more progress on this idea yet?
I think you need to be a bit more specific, which idea? If itās āstop a smart appā, there wonāt be any progress because that makes no sense. If itās ādisableā something, there are many ways to do that, but there is no underlying feature of ST that directly supports ādisableā. It is possible to implement smart apps that have disable functionality, for example, to disable motion-active events from turning on lights, or motion-inactive events from turning them off.
Well, I guessā¦what Iām looking for is the ability to temporarily disable somethingā¦ANYTHINGā¦GEEZ!..in ST. lol
I have seen a few threads where people are trying to get at it from one angle or another, but I donāt really give a crap which angle eventually gets implemented. There just needs to be a way of temporarily disabling Things.
e.g Letās say I eventually get my currently wired home security alarm system integrated with my ST (working on one of the many angles on that). Well, if Iām tinkering on things or doing maintenance or whatever, I will want the disable mechanism to be simple (click the disable button), easy (itās right thereā¦no searching for it), straight-forward (nothing complex to have to do or think about; there is enough complexity already lol), intuitive (doesnāt need to be āconfiguredā elsewhere to make it available here or there, but is just there, where any normal person would expect it to be), and integrated by ST (I shouldnāt have to go around and āconfigureā ANYTHING to make sure the disable button is in all of my apps, but it is something that should just simply be there, part of what a SmartApp is).
It would be nice if there were a disable option attached to every type of thing; including a Master Disable optionā¦to completely disable all devices/things/apps and interactivity (e.g. no IFTTT triggers, etc).
I get that there is the issue of whether to disable devices or SmartApps, etc, and I know there are a number of ways of going about it, etc. Iām not attached to any particular way of getting it done. I just want to do something that seems like it shouldnāt have to be a āfeature requestā (I have never encountered a thing or device or gadget or machine or program of any kind that didnāt already have some sort of disable mechanism built into it long before I ever got to touch it; no disrespect to ST. Iām just shocked).
There are hundreds (perhaps literally?) of āexpected featuresā that are missing from SmartThings. I think what you describe is quite useful and should be available down to the individual device, actually.
But besides the custom-solution option, the only answer is āTake a numberā¦ā; there are hundreds of feature requests in the (very much unpublished) queue.
Indeed.
4309w3u4ogijse489tuow39ijgpos9e4g089sj0g9ijw3049gu0ws94tuj
Actually, what your talking about only really makes sense as to SmartApps. Without SmartApps, devices donāt do anything except throw events. If no one listens to those events, no big deal.
So, if you are done being on your soap box, there are PRACTICAL ways to do this, i.e., disable a given SmartApp. Virtually all SmartApps have built-in mode restrictions available, often hidden under More Options. Give yourself an extra mode: you could even call it āDisableā. All you have to do to ādisableā a SmartApp is to give it a mode restriction to only run when mode is Disable. Presto. Itās disabled. Thatās as easy as going in and throwing a ādisableā switch somewhere, and has the same effect.
Sorryā¦I didnāt notice the box there. Mostly just processing things outloud.
I read and completely understand the words youāre saying, but Iām still not sure I understand.
When you said, āAll you have to do to ādisableā a SmartApp is to give it a mode restriction to only run when mode is Disable.ā, I think Iām losing you around āa mode restriction to only run when mode is Disableā.
I guessā¦1. what is a mode restriction? and 2. why would it only run when mode is set to disable? Wouldnāt that be only run when mode is set to enabled?
Sorryā¦I know some of this is just because Iām still so new to ST. So, if there is already a thread for this, please send me there.
If you tell the SmartApp only to run in a mode that wonāt ever be THE current mode, then it wonāt ever run. Your normal modes can be whatever. Thatās how you disable the app. To re-enable the app, you remove that mode restriction.
Look at the bottom of the first page during the installation or updating of an app, e.g., even that Garage Vent Fans that I published, there is a selection called āSet for specific mode(s)ā. Open that up and select the modes you want the app to run in; the default is All Modes.
In some apps, this is hidden under something labeled ā+ More Optionsā. Open that up, and āOnly when mode isā is there. Same outcome.
OKā¦yepā¦Iām on it. Thanks!
Nowā¦looking for where to create a new mode (i got this)ā¦
Go to the Dashboard, click the 3 dots upper right, My Locations, Gear icon, scroll to bottom of that page. This is one of the more obvious destinations in the app, and Iām shocked that not everyone finds it immmediatly
Haha, ya, I just accomplished same via the IDE.
I totally see it now.
So, to disable it, just uncheck all of the other modes and check the one I created for this purpose. Yes?
Then, if I want to add this functionality to other SmartApps that lack it, is there any chance itās just a matter of finding the right section of code and copy/paste it into my other SmartApps?