Announcement

Collapse
No announcement yet.

Lights not returning to their original settings after animation ends

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • randman
    replied
    2.0.3.2 of the plugin finally became available for download today . I've incorporated ListRunningAnimations() into my script, and it works great! Thanks!!!!

    Leave a comment:


  • randman
    replied
    Originally posted by w.vuyk View Post
    I have just submitted the new version 2.0.3.2 of the plugin to HST, this adds the new command for you.

    Wim
    Awesome! I’ll try it as soon as it’s available for download. Thank you!!

    Leave a comment:


  • w.vuyk
    replied
    I have just submitted the new version 2.0.3.2 of the plugin to HST, this adds the new command for you.

    Wim

    Leave a comment:


  • randman
    replied
    Originally posted by w.vuyk View Post
    The new function is not a discussion here . In fact in my edits at this very moment it is already available. I was just pointing to an possibility to ignore a running animation that could continue after starting another animation(alert). The new function will be available as ListRunningAnimations() as List(of String)

    Wim
    Okay. Thanks!

    Leave a comment:


  • w.vuyk
    replied
    The new function is not a discussion here . In fact in my edits at this very moment it is already available. I was just pointing to an possibility to ignore a running animation that could continue after starting another animation(alert). The new function will be available as ListRunningAnimations() as List(of String)

    Wim

    Leave a comment:


  • randman
    replied
    Originally posted by w.vuyk View Post

    After rereading your description, I wonder if you have seen the option "Continue after any other Hue command" when creating an animation? An alert (with restore to original values enabled) can run on top of a sunset animation, the sunset will take over again after the alert has finished?
    I saw that option earlier but it wasn’t clear to me. Let me play with that option on the sunset/sunrise animation. Sounds like a useful option to continue an “ambience” animation when it is preempted by an “alert” animation and then ends.

    However, if an alert animation is currently running (such as a code Red alert), and either (1) another alert (maybe a code Yellow alert issue) occurs, or (2) it is time to start the sunset/sunrise animation, I would like a way to know not to start the new animations so they don’t interrupt the first (e.g. Red) alert animation. To do that, a way of knowing what animations are currently running would be helpful.

    Leave a comment:


  • w.vuyk
    replied
    Originally posted by randman View Post
    . But, if a sunrise or sunset animation is already running, it should be preempted (stopped) by an alert-related animation. Looks like things can get messy if more than one animation is running at the same time on the same light group :-)
    After rereading your description, I wonder if you have seen the option "Continue after any other Hue command" when creating an animation? An alert (with restore to original values enabled) can run on top of a sunset animation, the sunset will take over again after the alert has finished?

    Leave a comment:


  • randman
    replied
    Originally posted by w.vuyk View Post
    I will make it will be there in the next release. No estimate yet on when the new release will be available
    Awesome! Thanks so much!!

    Leave a comment:


  • w.vuyk
    replied
    I will make it will be there in the next release. No estimate yet on when the new release will be available

    Leave a comment:


  • randman
    replied
    After playing with the JowiHue Plug-in for a couple of weeks now, I gotta say, I love this plug-in! I just read some other threads about creating sunrise and sunset animations, so I'm looking into having those start automatically via HomeSeer events as well. I need additional logic so that if an alert-related animation is currently running, another less critical animation (like sunrise or sunset animation) won't start so as not to disturb an alert-related animation. But, if a sunrise or sunset animation is already running, it should be preempted (stopped) by an alert-related animation. Looks like things can get messy if more than one animation is running at the same time on the same light group :-) . I can probably track things via virtual devices to see what is supposed to be currently running, but rainy day scenarios may cause my virtual devices' views to be out-of-sync with reality/actual JowiHue view. So, yeah, as you suggested, an API that can return a list of running animations would be great!

    Originally posted by w.vuyk View Post
    You can choose on this I guess, a scripting command to query of a certain animation is running, or a command for returning a list of all animations running? Which do you prefer?

    Leave a comment:


  • randman
    replied
    Originally posted by jvm View Post

    For situations like that, Easy Trigger supports the condition "This device's value has changed within the last [select time period]" which can be use to give you the effect you're looking for ( i.e., you can implement "AND IF a <device> has been On for at most Xs" as two conditions (a) Device X is on, and (X) Device X's value has changed within the last [time period].) Thus, if device X is on and has not changed within the time period you set, you know it has been on for more than the period you want.


    And as a FYI, Easy Trigger also supports an analogous "This device's value has NOT changed within the last [select time period]'. There's a free trial period for the plugin if you want to give it a try. I find it to be one of the most useful tools I know of to help write events.
    Yes, this plugin would’ve saved me a lot of coding if I had started using it a long time ago.

    Leave a comment:


  • jvm
    replied
    Originally posted by randman View Post


    Aside: I recently ran into an event condition that I may need help with from the Easy Trigger plug-in... I need a condition "AND IF a <device> has been On for at most Xs", but HomeSeer only supports "AND IF a <device> has been On for at least Xs".

    Thanks.
    For situations like that, Easy Trigger supports the condition "This device's value has changed within the last [select time period]" which can be use to give you the effect you're looking for ( i.e., you can implement "AND IF a <device> has been On for at most Xs" as two conditions (a) Device X is on, and (X) Device X's value has changed within the last [time period].) Thus, if device X is on and has not changed within the time period you set, you know it has been on for more than the period you want.


    And as a FYI, Easy Trigger also supports an analogous "This device's value has NOT changed within the last [select time period]'. There's a free trial period for the plugin if you want to give it a try. I find it to be one of the most useful tools I know of to help write events.

    Leave a comment:


  • randman
    replied
    Originally posted by jvm View Post
    I'm not that familiar with JowieHue, but I'm assuming it represents each of the lights in your animation as a device in HomeSeer. If so, I think the Easy Trigger plugin provides a straightforward solution to saving the lights' states before your animation and restoring it after. This can be done by using the "Push" and "Pop" device functions in the current (0.61) beta version of Easy Trigger.

    1. Form an Easy Trigger group that includes all of the lights in the animation (Set up the group from the [Plug-Ins] -> [Easy Trigger] -> [Config] page. Let's call it "Animation_Lights".
    2. Create an event with Actions that are structured like this . . .
    • "Easy Trigger: Push to Stack" (Group) Animation_Lights
    • "Run A Script or Command" (Your Script)
    • "Easy Trigger: Pop from stack and Set Devices" (Group) Animation_Lights

    Thanks for the info. This looks interesting for more general-use cases or if I need much more customized functionality. I like the JowiHue plug-in's "Return to original settings after animation ends" feature since it does the heavy lifting underneath the covers (and no need to keep my Hue group in sync with an Easy Trigger group). When I explicitly do StopAnimation or if an animation ends by itself (when it is not defined to run indefinitely), then each light in the group will automatically revert to its original settings. If an animation ends by itself (if it's not defined to run indefinitely), my script/logic won't be automatically aware that it ended, so I won't have the opportunity to do the popping. (Aside: I recently ran into an event condition that I may need help with from the Easy Trigger plug-in... I need a condition "AND IF a <device> has been On for at most Xs", but HomeSeer only supports "AND IF a <device> has been On for at least Xs". So either I create a timer and use the timer in the condition, or get the Easy Trigger plug-in... anyway, that's another story).

    Thanks.

    Leave a comment:


  • randman
    replied
    Originally posted by w.vuyk View Post
    I can imagine that in your situation you'd like to have a slow animation running in the living room, but would like to also have a short alert going on the front door bell, which should not break the living room animation, but should stop a kitchen animation (just fantasizing here)
    Yes, exactly! I have a group of Hue lights that are dedicated for just doing ambiance lighting or alert-related JowiHue animations for notification purposes. This group won't be running non-alert animations (just JowiHue-defined alert-related animations). In addition, I have other Hue lights/groups that are NOT used for alert notifications, but might run non-alert-related animations which I don't want to disturb when I need to run an alert notification on the first group. So, what I'd like to do is: if an alert condition occurs, then start an alert-related animation (e.g. turn "red" or "yellow", etc.) if there is no alert-related animation already running.

    Originally posted by w.vuyk View Post
    You can choose on this I guess, a scripting command to query of a certain animation is running, or a command for returning a list of all animations running? Which do you prefer?
    Either one would work for me. Some thoughts: Option 1 (a command to query if a certain animation is running) is simpler for my particular use case. However, Option 2 (a command that returns a list of all animations running), might be better for general-use for other user cases or other users of this plug-in. If I had a list of all running animations (Option 2), I can always search the list to see if a particular animation is running or not. But with Option 1, getting a list of running animations is a little more difficult (one would have to call GetAnimations to get the complete list of all running and not-running animations, and then parse each entry in the list using Option 1 to figure out which from the list are currently running). Also, with Option 2, it would be another way to get the number of currently running animations (currently, I call hs.DeviceStringByName("JowiHue JowiHue Philips hue") and then check/parse if it returns "animations(s) running" to get the count).

    So, to answer your question, maybe option 2 would be better for general use.

    Originally posted by w.vuyk View Post
    Animations running by other apps are not known to any other apps, including the JowiHue plugin, as the bridge itself is not aware ot the existence of animations at all.
    Yes, that's good. I also tested this last night and hs.DeviceStringByName("JowiHue JowiHue Philips hue") didn't see animations that I started from outside of JowiHue (not that I normally would start animations outside JowieHue, but I just wanted to confirm).

    Thanks, Wim!!

    Leave a comment:


  • jvm
    replied
    I'm not that familiar with JowieHue, but I'm assuming it represents each of the lights in your animation as a device in HomeSeer. If so, I think the Easy Trigger plugin provides a straightforward solution to saving the lights' states before your animation and restoring it after. This can be done by using the "Push" and "Pop" device functions in the current (0.61) beta version of Easy Trigger.

    1. Form an Easy Trigger group that includes all of the lights in the animation (Set up the group from the [Plug-Ins] -> [Easy Trigger] -> [Config] page. Let's call it "Animation_Lights".
    2. Create an event with Actions that are structured like this . . .
    • "Easy Trigger: Push to Stack" (Group) Animation_Lights
    • "Run A Script or Command" (Your Script)
    • "Easy Trigger: Pop from stack and Set Devices" (Group) Animation_Lights

    Leave a comment:

Working...
X