Announcement

Collapse
No announcement yet.

Easy Trigger plug-in - Beta Testing

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

    Easy Trigger plug-in - Beta Testing

    This plugin is a collection of triggers/conditions and actions which let you create advanced events without any scripting.

    Please read the User Guide before installing.

    Please report any bug.

    Changes to v3.0.0.54
    - Fixed timer that check schedule triggers so that it fires at XXmin00secs

    Changes to v3.0.0.53
    - Added trigger "Any device's value in this group had its value set and expression is true..."
    - Split ETDeviceName global variables into ETDeviceName, ETDeviceLocation1, ETDeviceLocation2

    Changes to v3.0.0.52
    Added new trigger and condition: "String changes and matches this regular expression"
    Added Day type schedule where time ranges are the same for all days

    Changes to v3.0.0.51
    - Added option to the Toggle action to be able to map a toggle value to a range of status value

    Changes to v3.0.0.50
    - Fixed several issues with schedules

    Changes to v3.0.0.49
    - Added new trigger: "This device had its value set and expression is true..."
    - Group conditions are now available from scripts

    Changes to v3.0.0.48
    - Used Tasks to handle HSEvent callbacks in parallel

    Changes to v3.0.0.47
    - Fixed error raised when a trigger references a device group which does not exist anymore.

    Changes to v3.0.0.46
    - Added the condition "This device's value has changed within the last..."

    Changes to v3.0.0.45
    - Added ETDeviceRef, ETDeviceName, ETDeviceValue and ETDeviceStatus global variables which are set with the triggering device when a group triggers.

    Changes to v3.0.0.44
    - Increased maximum of number of toggle values to 20
    - Allow empty string for string triggers and conditions

    Changes to v3.0.0.43
    - Sorted list of events in Enable/Disable event actions
    - Optimized device group conditions

    Changes to v3.0.0.42
    - Added "Enable Event" and "Disable Event" actions

    Changes to v3.0.0.41
    - Added "Set Group of Devices to Expression" action

    Changes to v3.0.0.40
    - Added "case insensitive" option to devices'string triggers and conditions

    Changes to v3.0.0.39
    - User defined groups are now created from the Config page.

    Changes to v3.0.0.38
    - Added possibility to use user defined groups

    Changes to v3.0.0.37
    - Added possibility to change "Any" to "All" for group conditions

    Changes to v3.0.0.36
    - Added sub choices "Not equal to", "greater than" and "less than" to the "Any Device's value in Group is..." triggers and conditions.

    Changes to v3.0.0.35
    - Added "Any Device's value in Group is..." triggers and conditions

    Changes to v3.0.0.34
    - Added 3 device's value conditions:
    This device's value has been in range [X,Y] for at least...
    This device's value has NOT been in range [X,Y] for at least...
    This device's value has NOT changed for at least...

    Changes to v3.0.0.33
    - Let the scripting function SetSchedule create a new schedule, when the the schedule provided as parameter does not exist yet.

    Changes to v3.0.0.32
    - Sort device list according to HS3 settings "Device Location Display Options"

    Changes to v3.0.0.31
    - implemented device filter for triggers and actions
    - added an advanced option for the Toggle Action, to use the closest toggle value as reference when the device current value is not equal to one of the toggle value.
    - added GetScheduleNextTimeRangeStart and GetScheduleNextTimeRangeEnd scripting functions

    Changes to v3.0.0.30
    - added SetSchedule and GetSchedule scripting functions

    Changes to v3.0.0.29
    - Added 4 time conditions:
    The time is before (sunrise +/- T)
    The time is after (sunrise +/- T)
    The time is before (sunset +/- T)
    The time is after (sunset +/- T)

    Changes to v3.0.0.28
    - Added "IsTimeInScheduleTimeRange" and "IsPluginRunning" as scripting functions

    Changes to v3.0.0.27
    - Added "Set Schedule to another Schedule" action

    Changes to v3.0.0.26
    - Fixed encoding of special characters for Actions and Triggers

    Changes to v3.0.0.25
    - Added "Toggle Device" action

    Changes to v3.0.0.24
    - Fixed shutdown of plugin

    Changes to version 3.0.0.22
    - Added support for ranges and "Any value" to "This device's value was and becomes"trigger
    - Fixed problem with "Set Device's string" action

    Changes to version 3.0.0.21
    - Fixed problem with overlapping time slots in schedules

    Changes to version 3.0.0.20
    - Added "Set Device to Expression" action
    - Fixed Copy/Paste of actions and triggers

    Changes to version 3.0.0.19
    - Update device list everytime a device is added/deleted or have its name or location changed.

    Changes to version 3.0.0.18
    - Added trigger "This device's value has NOT changed for exactly..."

    Changes to version 3.0.0.17
    - Added triggers: "This device's value has been in range [X,Y] for exactly..." and "This device's value has NOT been in range [X,Y] for exactly..."

    Changes to version 3.0.0.16
    - Fixed an issue with random triggers when events are created using the copy button.

    Changes to version 3.0.0.15
    - Added "Set Device's string" action

    Changes to version 3.0.0.13
    - Added "Set Device to another Device" action

    Changes to version 3.0.0.12
    - Added "<>" (i.e. Not Equal) as a possible operator for device comparison

    Changes to version 3.0.0.11
    - Accept "Mon 00:00" as a possible end time in schedules

    Changes to version 3.0.0.10
    - Added possibility to add time ranges relative to sunrise or sunset, in schedules.

    Changes to version 3.0.0.9
    - Added "device's string is not" and "device's string does not contain" triggers and conditions

    Changes to version 3.0.0.8
    - Fixed problem when trying to set a non integer value with the "Set Device To Variable" action

    Changes to version 3.0.0.7
    - Added possibility to add offset for the "Set Device To Variable" action

    Changes to version 3.0.0.6
    - Added random triggers and conditions

    Changes to version 3.0.0.5
    - Added possibility to add offset for triggers and conditions base on comparaison between 2 device values

    Changes to version 3.0.0.4:
    - Added "Set Device To Variable" action

    Changes to version 3.0.0.3:
    - Added "plugin is running" and "plugin is not running" conditions
    - Added menu link to User Guide

    Changes to version 3.0.0.2:
    - set schedule overlay fixed property to false, so that you can scroll to its bottom when the window is too small.

    Changes to version 3.0.0.1:
    - Added following conditions:
    * This device's string is...
    * This device's string contains...
    * Comparison between 2 device values is true.
    * The time is in this schedule time range:
    * The time is NOT of this schedule time range
    Last edited by spud; November 22, 2018, 05:09 PM.

    #2
    I have been testing it and look forward to the conditions.

    I'm trying to understand the logic of device comparisons. I am comparing temperatures and I have the trigger set such that A > B. It appears that he trigger only occurs when the threshold is initially crossed. By that I mean that
    • if the two devices change value resulting in A becoming greater than B the trigger occurs.
    • If the two temperatures change and A remains greater than B there is no trigger.
    • If the two temperatures change and A becomes less than B, then they change again making A Greater than B a trigger would occur.
    • These same rules would apply to all of the comparison conditions. A trigger will only occur the first time the comparison is true. It will not trigger again if both devices change with no resultant change in the overall comparison


    That is the way it appears to behave, am I understanding it correctly? If this is by design, I really like it much better than constantly triggering as one or the other devices change value without affecting the outcome of the comparison.
    HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

    Comment


      #3
      Originally posted by rprade View Post
      I have been testing it and look forward to the conditions.

      I'm trying to understand the logic of device comparisons. I am comparing temperatures and I have the trigger set such that A > B. It appears that he trigger only occurs when the threshold is initially crossed. By that I mean that
      • if the two devices change value resulting in A becoming greater than B the trigger occurs.
      • If the two temperatures change and A remains greater than B there is no trigger.
      • If the two temperatures change and A becomes less than B, then they change again making A Greater than B a trigger would occur.
      • These same rules would apply to all of the comparison conditions. A trigger will only occur the first time the comparison is true. It will not trigger again if both devices change with no resultant change in the overall comparison


      That is the way it appears to behave, am I understanding it correctly? If this is by design, I really like it much better than constantly triggering as one or the other devices change value without affecting the outcome of the comparison.
      Yes this is by design. I think you understand it well, but note that the device values don't have to both change: if A changes, B doesn't change, and comparison becomes true then the trigger occurs, if B changes, A doesn't change and comparison becomes true then the triggers occurs.

      The trigger is called "Comparison between 2 device values becomes true." but I find it hard to find a short sentence expressing all those rules and since English is not my first language, suggestions are welcomed.

      Conditions will be released soon, probably today.

      Comment


        #4
        Originally posted by spud View Post
        Yes this is by design. I think you understand it well, but note that the device values don't have to both change: if A changes, B doesn't change, and comparison becomes true then the trigger occurs, if B changes, A doesn't change and comparison becomes true then the triggers occurs.

        The trigger is called "Comparison between 2 device values becomes true." but I find it hard to find a short sentence expressing all those rules and since English is not my first language, suggestions are welcomed.

        Conditions will be released soon, probably today.
        i understood - I should have stated "either or both devices" instead of "both". The main thing is if the comparison is true and one or both devices change with the comparison remaining true it will not re-trigger. It will only trigger when it first became true.
        HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

        Comment


          #5
          conditions have been added in version 3.0.0.1 available in first post.

          Comment


            #6
            Hi Spud,

            Just tried your plugin, at first to edit schedule, but I can't see

            "Cancel" and "OK" tabs at the bottom to save the schedule.

            Screen image is attached.

            Did I miss anything ?

            Regards,
            Fischi
            Attached Files

            Comment


              #7
              Originally posted by Fischi View Post
              Hi Spud,

              Just tried your plugin, at first to edit schedule, but I can't see

              "Cancel" and "OK" tabs at the bottom to save the schedule.

              Screen image is attached.

              Did I miss anything ?

              Regards,
              Fischi
              Oooops you're right, it looks like the schedule overlay is too big and for some reason no scrollbar is added to the browser window. I'll try to fix that, in the meantime one possible workaround is to zoom out the page in your browser: "Ctrl" + "-"

              Comment


                #8
                Originally posted by Fischi View Post
                Hi Spud,

                Just tried your plugin, at first to edit schedule, but I can't see

                "Cancel" and "OK" tabs at the bottom to save the schedule.

                Screen image is attached.

                Did I miss anything ?

                Regards,
                Fischi
                fixed in version 3.0.0.2

                Comment


                  #9
                  Feature Request:

                  It would be awesome to have more than one "schedule" on a screen.

                  For example, be able to control one device....

                  from 8-1 do this;
                  from 1:05-4 do that;
                  from 4:05-7 do the other....

                  For example, setting a thermostat or light intensity....
                  HomeSeer Version: HS4 Pro Edition 4.2.19.0 (Windows - Running as a Service)
                  Home Assistant 2024.3
                  Operating System: Microsoft Windows 11 Pro - Desktop
                  Z-Wave Devices via two Z-Net G3s
                  Zigbee Devices via RaspBee on RPi 3b+
                  WiFi Devices via Internal Router.

                  Enabled Plug-Ins
                  AK GoogleCalendar 4.0.4.16,AK HomeAssistant 4.0.1.23,AK SmartDevice 4.0.5.1,AK Weather 4.0.5.181,AmbientWeather 3.0.1.9,Big6 3.44.0.0,BLBackup 2.0.64.0,BLGData 3.0.55.0,BLLock 3.0.39.0,BLUPS 2.0.26.0,Device History 4.5.1.1,EasyTrigger 3.0.0.76,Harmony Hub 4.0.14.0,HSBuddy 4.51.303.0,JowiHue 4.1.4.0,LG ThinQ 4.0.26.0,ONVIF Events 1.0.0.5,SDJ-Health 3.1.1.9,TPLinkSmartHome4 2022.12.30.0,UltraCID3 3.0.6681.34300,Z-Wave 4.1.3.0

                  Comment


                    #10
                    Great job so far!

                    How about a trigger for 'A device has a value greater than'...

                    I can't seem to be able to find one within HomeSeer!

                    I have a device (electric heater) that I use an Aeon Energy Switch, I only want the IR to send an off if the switch is reporting more than 2 watts.
                    Bryan
                    Software/Hardware: Win10 Pro, HS 3 Pro, HS Touch, Echo, Edgeport/4, Z-Net w/88 Devices, Insteon PLM w/19 Devices, Nest, GC-100-6, W800RF32A, WS-2080 Weather Station (KMADRACU10)
                    Plug-in/Scripts: Alexa API, BLBackup, BLGData, BLLED, BLLock, BLRF, BLTVGuide, Blue Iris, BLUPS, Current Cost 3P, DirectTV, FitbitSeer, Insteon, Nest, Pushover 3P, Random, Restart, Tasker, UltraGCIR3, UltraWeatherWU, Z-Wave

                    Comment


                      #11
                      Originally posted by ewkearns View Post
                      It would be awesome to have more than one "schedule" on a screen.

                      For example, be able to control one device....

                      from 8-1 do this;
                      from 1:05-4 do that;
                      from 4:05-7 do the other....

                      For example, setting a thermostat or light intensity....
                      one thing I could add is to to let you enter global variables value for each time range, for example you would set intensity=X with different values for each time range. Then in the event you would use the trigger "The time enters this schedule time range" and in the action you would set your light or thermostat device to the value set in the intensity global variable.

                      How does it sound? is it something you would use?

                      Note that you would still need a small script for the event action to set the device value, because I don't think there is any HS action capable of setting a device value using a global variable.

                      Comment


                        #12
                        Originally posted by TechHA View Post
                        Great job so far!

                        How about a trigger for 'A device has a value greater than'...

                        I can't seem to be able to find one within HomeSeer!

                        I have a device (electric heater) that I use an Aeon Energy Switch, I only want the IR to send an off if the switch is reporting more than 2 watts.
                        what about the trigger called "This device had its value set and is greater than" ?

                        Comment


                          #13
                          Originally posted by spud View Post
                          one thing I could add is to to let you enter global variables value for each time range, for example you would set intensity=X with different values for each time range. Then in the event you would use the trigger "The time enters this schedule time range" and in the action you would set your light or thermostat device to the value set in the intensity global variable.

                          How does it sound? is it something you would use?

                          Note that you would still need a small script for the event action to set the device value, because I don't think there is any HS action capable of setting a device value using a global variable.

                          This is an event action that I wish HS would implement, to set a device value according to the value of another device or variable, especially for lighting devices as well. I used a virtual device and script to do it in HS2, and in HS, it could be done according to a virtual device value or a global variable. It is actually something we should ask Rich to implement.

                          Edit: Shot Rich an email. I would like to see this action. Spud, please also support from your side.

                          Hey, when will this be in the store?
                          Last edited by Automated; April 2, 2015, 08:21 AM.

                          Comment


                            #14
                            Originally posted by Automated View Post
                            This is an event action that I wish HS would implement, to set a device value according to the value of another device or variable. I used a virtual device and script to do it in HS2, and in HS, it could be done according to a virtual device value or a global variable. It is actually something we should ask Rich to implement.

                            Edit: Shot Rich an email. I would like to see this action. Spud, please also support from your side.

                            Hey, when will this be in the store?
                            We could ask Rich, but I hope you are patient....
                            I entered several bugzilla tickets for new triggers a long time ago, I got tired waiting for them that's why I started coding them myself in this plugin.
                            I may add this new event action in this plugin too.

                            the plugin will be in the store soon (probably next week)

                            Comment


                              #15
                              Originally posted by spud View Post
                              We could ask Rich, but I hope you are patient....
                              I entered several bugzilla tickets for new triggers a long time ago, I got tired waiting for them that's why I started coding them myself in this plugin.
                              I may add this new event action in this plugin too.

                              the plugin will be in the store soon (probably next week)
                              Great, my wallet is ready! Yes, I will just switch to your plugin for a lot of the event actions then. It will save a lot of coding. I don't mind the scripts and such, and they will always be necessary, but well...built-in is always nice.

                              Comment

                              Working...
                              X