Announcement

Collapse
No announcement yet.

Easy Trigger plug-in - Feature Requests

Collapse
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Originally posted by SteveMSJ View Post
    Spud,

    Thanks for a great plugin which I keep finding more uses for.

    I can call the plugin functions GetSchedule and SetSchedule fine from a script but I would like to create a new schedule. Is it possible for SetSchedule to create a new schedule if the schedule name doesn't already exist? Alternatively expose another function to create a new schedule?

    Thanks,

    Steve
    will do

    Comment


    • Originally posted by SteveMSJ View Post
      Spud,

      Thanks for a great plugin which I keep finding more uses for.

      I can call the plugin functions GetSchedule and SetSchedule fine from a script but I would like to create a new schedule. Is it possible for SetSchedule to create a new schedule if the schedule name doesn't already exist? Alternatively expose another function to create a new schedule?

      Thanks,

      Steve
      done in version 3.0.0.33 available in the BETA section of the updater, now the SetSchedule function will create the schedule if it doesn't exist already.

      Comment


      • Originally posted by spud View Post
        done in version 3.0.0.33 available in the BETA section of the updater, now the SetSchedule function will create the schedule if it doesn't exist already.


        Thanks, I wii give it a try tomorrow.

        Steve

        Comment


        • Originally posted by spud View Post
          done in version 3.0.0.33 available in the BETA section of the updater, now the SetSchedule function will create the schedule if it doesn't exist already.
          Originally posted by SteveMSJ View Post
          Thanks, I wii give it a try tomorrow.
          Steve
          Tested 3.0.0.33 and this works great. Thanks.

          Steve

          Comment


          • Spud,

            Would you be able to add these:

            <event> was just ran

            This Event was triggered by <event>
            ... good for basic sequences

            <event> was last triggered manually/directly
            ... good to determine if it was automation logic, or human intervention. For instance, if it was human intervention, you may want to leave the lights on, not

            Device value is set and NOT Equal to <value> for at least <time>


            Device value Just changed based on; <keyword> and/or Location and/or Name

            Time is NOT <between or after or before>

            example use cases:

            a. Trigger an event based on anything happening within a room or location, with 1 single IF... instead of multiples

            b. Currently I trigger a script and the event requires over 20 IFs where all devices the same <keyword> in the Name (Window)... if you add this to Easy Trigger, I would be able to replace 20 IFs with 1 IF.

            Similarly, there are many cases where the negative (NOT IF) is needed. Can you add new 'qualifiers'?

            We need qualifiers that allow EXCEPTIONS (aka NOT IF) - in some cases without Exceptions in the event, some things are just not possible in the Event engine and when a work-around is possible it requires logic to be verbose and tedious, and in many cases redundant across multiple events

            The below would Massively enhance the capabilities, IMO

            NOT IF <event> was last triggered manually, not from an event

            NOT IF <vDevice> was last triggered manually, not from an event



            ... currently a painful and only partial workaround is to create a separate Event which the first Event calls, where the 2nd Event includes exceptions in the form of more Conditions that further narrow the scope of the IF's. Completely inadequate and does not cover most situations that a NOT IF would easily handle within a single Event.

            Comment


            • Would be nice to trigger an event if state of any device in a group (i.e. any device of certain Type) changes. I.e. I have multiple thermostats - if any of them asks for heat - I want an event which will check if doors/windows closed.
              Last edited by alexbk66; July 24th, 2017, 09:00 PM.

              Comment


              • One thing I would like to see is the ability to use the delayed device action in HS3 when controlling a device using EasyTrigger..

                I am setting a device value to a global variable but the normal HS3 delayed device option does not appear. I am having to use a Wait statement which I'd prefer not to use.

                Comment


                • Originally posted by andyf View Post
                  One thing I would like to see is the ability to use the delayed device action in HS3 when controlling a device using EasyTrigger..

                  I am setting a device value to a global variable but the normal HS3 delayed device option does not appear. I am having to use a Wait statement which I'd prefer not to use.
                  I'll add a +1 to this request, as I've encountered this situation several times where I've wanted to use a delayed device action and had to use a Wait action instead.

                  Comment


                  • Originally posted by teladog01 View Post
                    I'll add a +1 to this request, as I've encountered this situation several times where I've wanted to use a delayed device action and had to use a Wait action instead.
                    Are you talking about the "After Waiting X days Y hours..." option there is at the bottom of the "Control Device" action?
                    If so, is there any difference between this option and adding a wait action before the control device action?

                    Comment


                    • Originally posted by spud View Post
                      Are you talking about the "After Waiting X days Y hours..." option there is at the bottom of the "Control Device" action?
                      If so, is there any difference between this option and adding a wait action before the control device action?
                      Yes, that is the option I am talking about. Using this "delayed device action" then allows to be able to use the "cancel a delayed device action" in other events. Yes, there is a "cancel another running event" action, but that usually isn't desirable since the Wait action blocks the entire event instead of proceeding on with the next action. Also, if the event has multiple Wait actions, one cannot discern if the event is cancelled during the desired wait period. There are probably other scenarios, these are the ones I've come across.

                      Comment


                      • Originally posted by spud View Post
                        Are you talking about the "After Waiting X days Y hours..." option there is at the bottom of the "Control Device" action?
                        If so, is there any difference between this option and adding a wait action before the control device action?
                        Yes, that's the one. Same reason, a Wait hangs up the thread rather than just scheduling a future device action and continuing. I did read in one of the how to's or clinics that it really wasn't recommended to use Wait.

                        It may be a plug-in doesn't have access to this but if it does I would really like to see this implemented.

                        This is a really great general use must have plug-in. Every couple of days I find events in my system that I realize I can make much simpler using an EasyTrigger feature.

                        Comment


                        • Originally posted by spud View Post
                          Are you talking about the "After Waiting X days Y hours..." option there is at the bottom of the "Control Device" action?
                          If so, is there any difference between this option and adding a wait action before the control device action?
                          To elaborate on what Nicolas said, a delayed device action allows an event to complete, placing a new event in a Delayed Actions queue with a time trigger. Even if you have dozens of delayed actions the primary event completes spinning off new self-deleting events for delayed actions and events. A "Wait" simply pauses an event each time a Wait is called. While you can cancel an event while it is in a Wait action, you have no way of knowing where in the event processing is if there is more than one wait.

                          A delayed device action is always preferable to a Wait.
                          Randy Prade
                          Aurora, CO
                          Prades.net

                          PHLocation - Pushover - EasyTrigger - UltraECM3 - Ultra1Wire3 - Arduino

                          Comment


                          • Thoughts?

                            Originally posted by Ltek View Post
                            Spud,

                            Would you be able to add these:

                            <event> was just ran

                            This Event was triggered by <event>
                            ... good for basic sequences

                            <event> was last triggered manually/directly
                            ... good to determine if it was automation logic, or human intervention. For instance, if it was human intervention, you may want to leave the lights on, not

                            Device value is set and NOT Equal to <value> for at least <time>


                            Device value Just changed based on; <keyword> and/or Location and/or Name

                            Time is NOT <between or after or before>

                            example use cases:

                            a. Trigger an event based on anything happening within a room or location, with 1 single IF... instead of multiples

                            b. Currently I trigger a script and the event requires over 20 IFs where all devices the same <keyword> in the Name (Window)... if you add this to Easy Trigger, I would be able to replace 20 IFs with 1 IF.

                            Similarly, there are many cases where the negative (NOT IF) is needed. Can you add new 'qualifiers'?

                            We need qualifiers that allow EXCEPTIONS (aka NOT IF) - in some cases without Exceptions in the event, some things are just not possible in the Event engine and when a work-around is possible it requires logic to be verbose and tedious, and in many cases redundant across multiple events

                            The below would Massively enhance the capabilities, IMO

                            NOT IF <event> was last triggered manually, not from an event

                            NOT IF <vDevice> was last triggered manually, not from an event



                            ... currently a painful and only partial workaround is to create a separate Event which the first Event calls, where the 2nd Event includes exceptions in the form of more Conditions that further narrow the scope of the IF's. Completely inadequate and does not cover most situations that a NOT IF would easily handle within a single Event.

                            Comment


                            • Originally posted by andyf View Post
                              Yes, that's the one. Same reason, a Wait hangs up the thread rather than just scheduling a future device action and continuing. I did read in one of the how to's or clinics that it really wasn't recommended to use Wait.

                              It may be a plug-in doesn't have access to this but if it does I would really like to see this implemented.

                              This is a really great general use must have plug-in. Every couple of days I find events in my system that I realize I can make much simpler using an EasyTrigger feature.
                              got it, but unfortunately I don't think I can create delayed event action using the HS API.

                              Comment


                              • Originally posted by Ltek View Post

                                <event> was just ran

                                This Event was triggered by <event>
                                ... good for basic sequences

                                <event> was last triggered manually/directly
                                ... good to determine if it was automation logic, or human intervention. For instance, if it was human intervention, you may want to leave the lights on, not
                                I don't think I can add those because the information on how the event has been triggered is not available from a plugin.


                                Originally posted by Ltek View Post
                                Device value is set and NOT Equal to <value> for at least <time>
                                We already discussed adding the "NOT Equal to <value> for at least <time>" condition a while ago, but it's very difficult to implement because there isn't any function in the API to get all the conditions, so the plugin don't know which device value to monitor.

                                Originally posted by Ltek View Post
                                Device value Just changed based on; <keyword> and/or Location and/or Name
                                I think I could add this one

                                Originally posted by Ltek View Post
                                Time is NOT <between or after or before>
                                I think you can already do these ones with some boolean logic

                                Time is NOT after = Time is before

                                Comment

                                Working...
                                X