Actions Plug-in - Serial Command Actions

The Actions plug-in provides a more "friendly" way for other plug-ins to send "action" type serial commands to the HomeVision Controller. Use of action commands negates the need to look up the details of each serial command and then format your arguments into raw serial string.

For example, the following Tcl line:
action timer load 8 4:3:2.1
instead of:
hvSendCommand ,=080001020304
will load and start timer 8.

There are commands for the following objects/events: X-10, Custom Lights, Flags, Variables, Inputs, Outputs, Analog Inputs, Digital Temperature Sensors, Thermostats (HVAC), Macros, Infrared Signals, Timers, Scheduled Events, Periodic Events, and Security.

Action Command Format

Action commands take the following format:
action object_type cmd {object_id {args}}{,object_type cmd ...}

Where:
object_type
Must be one of: x10, light (for custom lights), flag, var, input, output, analog, temp (for Digital Temperature Sensors), hvac (for thermostats), macro, ir, timer, se pe, or security.
cmd
is the command desired for that object.
object_id
is the ID of the object/event. Format is 0-255. In addition, for X-10, Input and Output types, house/unit or group/port format can also be used. E.g., A1, K-7.
Note: Some object types have an "update" command for which an ID is not required, since the update acts on the entire set of objects.
args
Some commands require additional arguments. If needed, they should follow the object_id .
Multiple commands may be included by separating them with a "," possibly surrounded with whitespace.

For example:
action timer load 8 4:3:2.1, x10 on c2
In addition to use directly in a plug-in, actions can be triggered by serial commands.
action: timer load 8 4:3:2.1, x10 on c2;
Note the addition of a ":" after "action" and termination of the string by a ";".

Action Command Details

The following list identifies the allowable commands. Except for IDs in house/unit or group/unit form, commands and parameters are case-sensitive.
X-10 command
action x10 command id ##
id is the X-10 address, in either house/unit code form (e.g., A2 or A-2), or in decimal format (0-255)
Allowable values for command:
    on
    off
    toggle
    bright   (Requires ## argument for number of times to brighten)
    dim   (Requires ## argument for number of times to dim)
    level   (Requires ## argument for level)
    presetdim   (Requires ## argument for Dim level)
    neutral
    houseunit
    functionon
    functionoff
    functionbright
    functiondim
    functionalllightson
    functionalllightsoff
    functionallunitsoff
    pcslevel   (Requires ## argument for level)
    directtolevel   (Requires ## argument for level)
    directolevel   (Requires ## argument for level)
    x10scene   (Requires ## argument for scene number)
    levitonscene   (Requires ## argument for scene number)
    enable
    disable
    enable-off
    disable-off
    enable-on
    disable-on
    update


Examples:
    action x10 on a1
    action x10 off P11
    action x10 level a-1 10
    action x10 bright 0 4
    action x10 pcslevel A1 5


Custom Light command
action light command id ##
id is custom light address in decimal format
Allowable values for command:
    on
    off
    bright   (Requires ## argument for number of times to brighten)
    dim   (Requires ## argument for number of times to dim)
    level   (Requires ## in the form: LL RR for level and ramp rate)
    update*

* Not available for controller PROM versions earlier than 3.44.

Examples:
    action light on 1
    action light off 2
    action light level 1 10 2
    action light bright 3 4
    action light dim 3 2


Macro command
action macro command id
id is macro ID # in decimal format (0-255)
Allowable values for command:
    run
    enable
    disable


Example:
    action macro run 4


Infrared command
action ir command id ##
id is infrared signal ID # in decimal format (0-255)
Allowable values for command:
    transmit   (Requires ## argument for number of times to transmit)
    enable-recv
    disable-recv
    enable-xmit
    disable-xmit


Example:
    action ir transmit 9 1


Input Port command
action input command id
id is input ID # in either group/unit code form (e.g., B2 or B-2), or in decimal format (0-255)
Allowable values for command:
    enable
    disable
    enable-low
    disable-low
    enable-high
    disable-high
    update


Examples:
    action input enable 0
    action input disable B2
    action input disable-high c-8
    action input update


Output Port command
action output command id
id is output ID # in either group/unit code form (e.g., A2 or A-2), or in decimal format (0-255)
Allowable values for command:
    low
    high
    toggle
    enable
    disable
    update


Examples:
    action output high 0
    action output low A2
    action output toggle A-4


Flag command
action flag command id
id is flag ID # in decimal format (0-255)
Allowable values for command:
    set
    clear
    neutral
    toggle
    update


Examples:
    action flag set 127
    action flag clear 43
    action flag toggle 2
    action flag neutral 22


Variable command
action var command id ##
id is variable ID # in decimal format (0-255)
Allowable values for command:
    set   (Requires ## to set the variable equal to, in decimal format (0-255)
    increment
    decrement
    update


Examples:
    action var increment 13
    action var decrement 63
    action var set 12 255


Timer command
action timer command id ##
id is timer ID # in decimal format (0-255)
Allowable values for command:
    start
    stop
    clear
    load   (Requires ## in the form: HH MM SS CC or HH:MM:SS.CC)
Note: The load command automatically starts the timer after loading.


Examples:
    action timer start 0
    action timer stop 12
    action timer load 4 0 30 00 00
    action timer load 5 0:30:00.00


Scheduled event command
action se command id
id is scheduled event ID # in decimal format (0-255)
Allowable values for command:
    run
    enable
    disable


Examples:
    action se run 3
    action se enable 2
    action se disable 1


Periodic event command
action pe command id
id is periodic event ID # in decimal format (0-255)
Allowable values for command:
    run
    enable
    disable
    rate=everyloop
    rate=1minute
    rate=5minutes
    rate=15minutes
    rate=1hour
    rate=2hours
    rate=4hours
    rate=8hours
Note: there are no spaces in the rate commands.


Examples:
    action pe run 4
    action pe rate=5minutes 12
    action pe enable 5
    action pe disable 6


Thermostat command
action hvac command id ##
id is the zone # in decimal format (1-16)
Allowable values for command:
    run
    hold
    heat
    cool
    auto
    off
    fanon
    fanauto
    raise   (1 degree)
    lower   (1 degree)
    setpoint   (Requires ## to set the temperature, in decimal format 0-255)
    update*
* Note: For systems with PROM versions earlier than 3.44, a macro serial command may be specified for parameter HVACUpdateCommand in the [actions] section of the homevision.ini/.homevisionrc file. If HVACUpdateCommand is set, then its value is used for the update command instead of the default one.

Examples:
    action hvac run 1
    action hvac cool 1
    action hvac fanon 2
    action hvac raise 1
    action hvac setpoint 1 75


Security system commands
Security system commands come in two forms: seczone/secpartition, which are consistent with previously defined commands, and the newer security, which combines the two into one command name. Either form can be used in any combination.

action seczone command id
id is the zone in decimal format, 0-63 for zones 1-64.
Allowable values for command:
    togglebypass


Examples:
    action security togglebypass 0   (Zone 1)
action secpartition command id
id is the zone or partition in decimal format.
You can identify multiple partitions by setting the appropriate bits and converting to decimal format 1-255:
    Bit 0 set for partition 1
    Bit 1 set for partition 2
    Bit 2 set for partition 3
    Bit 3 set for partition 4
    Bit 4 set for partition 5
    Bit 5 set for partition 6
    Bit 6 set for partition 7
    Bit 7 set for partition 8
Allowable values for command:
    toggleinstant
    togglechime
    armhome
    armaway
    disarm
    chimeon
    chimeoff
    soundfire
    soundmedical
    soundpolice


Examples:
    action secpartition armhome 5   (Partitions 1 and 3)
    action secpartition chimeon 8   (Partition 4)

action security command id
id is the zone or partition in decimal format. There are two different formats, depending on the command:
  • For togglebypass, enter the zone number in decimal format 0-63 for zones 1-64.
  • For commands all other commands, you can identify multiple partitions by setting the appropriate bits and converting to decimal format 1-255:
      Bit 0 set for partition 1
      Bit 1 set for partition 2
      Bit 2 set for partition 3
      Bit 3 set for partition 4
      Bit 4 set for partition 5
      Bit 5 set for partition 6
      Bit 6 set for partition 7
      Bit 7 set for partition 8
Allowable values for command:
    togglebypass
    toggleinstant
    togglechime
    armhome
    armaway
    disarm
    chimeon
    chimeoff
    soundfire
    soundmedical
    soundpolice


Examples:
    action security togglebypass 0   (Zone 1)
    action security armhome 3   (Partitions 1 and 2)
    action security toggleinstant 2   (Partition 2)


Analog Input command
action analog command
Allowable values for command:
    update


Example:
    action analog update


Digital Temperature Sensor command
action temp command
Allowable values for command:
    update


Example:
    action temp update


Wait command
action wait command ##
Allowable values for command:
    for   (Requires ## to set the wait time in milliseconds, in decimal format


Example:
    action ir transmit 28 1, wait for 1000, ir transmit 30 1
Last modified: 5 June 2020, 09:13 CET