Required Suite
Terms that every application should support
Commands
-
run
-- Sent to an application when it is launched
-
quit
-- Quit an application program
Standard Suite
Common terms for most applications
Commands
-
count
-- Return the number of elements of a particular class within an object
-
reference
-- the object whose elements are to be counted
-
each type class
-- the class of the elements to be counted
-
Result: integer
-- the number of elements
-
data size
-- Return the size, in bytes, of an object
-
reference
-- the object whose data size is to be returned
-
Result: integer
-- the size of the object in bytes
-
select
-- Select the specified object
-
reference
-- the object to select
-
make
-- Make a new element
-
new type class
-- the class of the new element
-
[with properties record]
-- the initial values for the properties of the element
-
Result: reference
-- Object specifier for the new element
-
delete
-- Delete an element from an object
-
reference
-- the element to delete
-
duplicate
-- Duplicate object(s)
-
reference
-- the object(s) to duplicate
-
Result: reference
-- to the duplicated object(s)
-
exists
-- Verify if an object exists
-
reference
-- the object in question
-
Result: boolean
-- true if it exists, false if not
-
get
-- Get the data for an object
-
reference
-- the object whose data is to be returned
-
Result: anything
-- The data from the object
-
set
-- Set an object's data
-
reference
-- the object to change
-
to anything
-- the new value
Classes
-
window
-- A window
- Plural name:
- Properties:
-
bounds
bounding rectangle
-- the boundary rectangle for the window
-
closeable
(r/o)
boolean
-- Does the window have a close box?
-
floating
(r/o)
boolean
-- Does the window float?
-
modal
(r/o)
boolean
-- Is the window modal?
-
name
(r/o)
string
-- the title of the window
-
position
(r/o)
point
-- upper left coordinates of window
-
resizable
(r/o)
boolean
-- Is the window resizable?
-
titled
(r/o)
boolean
-- Does the window have a title bar?
-
visible
boolean
-- Is the window visible?
-
zoomable
(r/o)
boolean
-- Is the window zoomable?
-
zoomed
boolean
-- Is the window zoomed?
Indigo Main Suite
Terms specific to Indigo Application
Commands
-
turn on
-- Turn a device on
-
string
-- the device name to turn on
-
[in integer]
-- time delay in seconds
-
[for integer]
-- time duration in seconds to keep device on
-
turn off
-- Turn a device off
-
string
-- the device name to turn off
-
[in integer]
-- time delay in seconds
-
[for integer]
-- time duration in seconds to keep device off
-
toggle
-- Toggle the on/off state of a device
-
string
-- the device name to toggle on/off
-
[in integer]
-- time delay in seconds
-
[for integer]
-- time duration in seconds until device is toggled back to original state
-
dim
-- Dim a device
-
string
-- the device name to dim
-
[by integer]
-- relative amount to dim device (0 - 100)
-
[to integer]
-- absolute value for brightness of the device (0 - 100)
-
[in integer]
-- time delay in seconds
-
brighten
-- Brighten a device
-
string
-- the device name to brighten
-
[by integer]
-- relative amount to brighten device (0 - 100)
-
[to integer]
-- absolute value for brightness of the device (0 - 100)
-
[in integer]
-- time delay in seconds
-
status request
-- Send status request message to device
-
string
-- the target device name
-
all lights on
-- Turn on all lights
-
[string]
-- optional x10 house code of lights to turn on -- leave blank to turn on all lights
-
all lights off
-- Turn off all lights
-
[string]
-- optional x10 house code of lights to turn off -- leave blank to turn off all lights
-
all off
-- Turn off all devices
-
[string]
-- optional x10 house code of devices to turn off -- leave blank to turn off all devices
-
execute group
-- Execute an action group
-
string
-- the name of the action group to execute
-
[in integer]
-- time delay in seconds
-
execute time date action
-- Execute all of the actions within a time date action (ignores any conditions)
-
string
-- the name of the time date action to execute
-
execute trigger action
-- Execute all of the actions within a trigger action (ignores any conditions)
-
string
-- the name of the trigger action to execute
-
execute script
-- Executes one of the currently installed scripts
-
«class furl»
-- the file URL of the script to run
-
enable time date action
-- Enable the execution of a time/date action
-
string
-- the name of the time/date action to enable
-
[in integer]
-- time delay in seconds
-
[for integer]
-- time duration in seconds until the time/date action is disabled
-
disable time date action
-- Disable the execution of a time/date action
-
string
-- the name of the time/date action to disable
-
[in integer]
-- time delay in seconds
-
[for integer]
-- time duration in seconds until the time/date action is enabled
-
enable trigger action
-- Enable the execution of a trigger action
-
string
-- the name of the trigger action to enable
-
[in integer]
-- time delay in seconds
-
[for integer]
-- time duration in seconds until the trigger action is disabled
-
disable trigger action
-- Disable the execution of a trigger action
-
string
-- the name of the trigger action to disable
-
[in integer]
-- time delay in seconds
-
[for integer]
-- time duration in seconds until the trigger action is enabled
-
remove delayed actions
-- Removes all delayed actions, or removes delayed actions for a specific device or trigger
-
[for device string]
-- the device name to remove all delayed actions for (ex: remove delayed actions for device "office light")
-
[for trigger string]
-- the trigger name to remove all delayed actions for (ex: remove delayed actions for trigger "porch motion detected")
-
build device state list
-- Returns a string containing all of the current device states
-
Result: string
-- text string containing all of the current device states
-
build event log list
-- Returns a string containing the latest log history lines
-
[line count integer]
-- optional number of lines to return -- leave blank to return entire saved log history (last 1500 lines)
-
[time stamp every line boolean]
-- optionally show time stamp on every line
-
[as html boolean]
-- optionally return HTML formatted text
-
Result: string
-- text string containing the latest log history
-
calculate sunset
-- Return date and time of next sunset
-
[for date]
-- optional specific date to calculate sunset on -- leave blank to calculate next sunset from current time
-
Result: date
-- the date and time of next sunset
-
calculate sunrise
-- Return date and time of next sunrise
-
[for date]
-- optional specific date to calculate sunrise on -- leave blank to calculate next sunrise from current time
-
Result: date
-- the date and time of next sunrise
-
log
-- Output text string to Event Log
-
string
-- the text to output
-
[using type string]
-- specifies the log message type (ex: log "temperature is now 77" using type "Thermostat")
-
reload attachments
-- Reloads all attachment scripts
-
send email to
-- Send email message
-
string
-- the email recipient address (use semicolons to separate multiple addresses)
-
[with subject string]
-- the subject line of the email
-
[with body string]
-- the body text of the email
-
send insteon group
-- Send insteon group/scene command to remote modules
-
instnTurnOn / instnFastOn / instnTurnOff / instnFastOff
-- the insteon group function type
-
[using index integer]
-- the insteon group/scene broadcast number (ex: send insteon group instnTurnOn using index 5)
-
[using name string]
-- (or) the insteon group/scene broadcast name (ex: send insteon group instnTurnOn using name "my lighting scene name")
-
send insteon raw
-- Send insteon raw direct command bytes to a remote module
-
cmd1 integer
-- the first command byte (0 to 255)
-
cmd2 integer
-- the second command byte (0 to 255)
-
to address string
-- the destination insteon address (ex: send insteon raw cmd1 68 cmd2 02 to address "05.09.00")
-
send insteon remote poke
-- Remotely poke data (byte, byte list) to an insteon module (be careful!)
-
to address string
-- the destination insteon address (ex: send insteon remote poke to address "05.09.00" at memory location 1024 byte 128)
-
at memory location integer
-- the memory location to which to poke the byte data
-
[byte small integer]
-- the byte value to poke
-
[byte list list of small integer]
-- (or) a list of bytes (integers) to poke
-
send insteon powerlinc set button pressed
-- Send the insteon command simulating that the PowerLinc's set button was held down
-
send x10 address
-- Send an x10 address to the interface with NO function code
-
string
-- the x10 house code/device code address (ex: send x10 address "D6")
-
send x10 brighten
-- Send x10 brighten command to the interface
-
integer
-- relative amount to brighten device (0 - 100)
-
to address string
-- the x10 house code/device code address (ex: send x10 brighten 20 to address "D6")
-
send x10 dim
-- Send x10 dim command to the interface
-
integer
-- relative amount to dim device (0 - 100)
-
to address string
-- the x10 house code/device code address (ex: send x10 dim 20 to address "D6")
-
send x10 on
-- Send x10 on command to the interface
-
to address string
-- the x10 house code/device code address (ex: send x10 on to address "D6")
-
send x10 off
-- Send x10 off command to the interface
-
to address string
-- the x10 house code/device code address (ex: send x10 off to address "D6")
-
send x10 preset
-- Send an x10 preset value and address to the interface
-
integer
-- preset value (0 to 31) to send
-
to address string
-- the x10 house code/device code address (ex: send x10 preset 15 to address "D6")
-
send x10 extended
-- Send x10 extended bytes and address to the interface
-
data integer
-- the extended data (first byte) (0 to 255)
-
command integer
-- the extended command (second byte) (0 to 255)
-
to address string
-- the x10 house code/device code address (ex: send x10 extended data 63 command 165 to address "D6")
-
send x10 status request
-- Send x10 status request command to the interface
-
to address string
-- the x10 house code/device code address (ex: send x10 status request to address "D6")
-
send x10 status response on
-- Send x10 status response on command to the interface
-
to address string
-- the x10 house code/device code address (ex: send x10 status response on to address "D6")
-
send x10 status response off
-- Send x10 status response off command to the interface
-
to address string
-- the x10 house code/device code address (ex: send x10 status response off to address "D6")
-
send x10 hail request
-- Send x10 hail request command to the interface
-
to address string
-- the x10 house code/device code address (ex: send x10 hail request to address "D6")
-
send x10 hail ack
-- Send x10 hail acknowledge command to the interface
-
to address string
-- the x10 house code/device code address (ex: send x10 hail ack to address "D6")
-
upload actions
-- Uploads Trigger and Time/Date Actions to the interface
-
transaction suppress logging
-- Suppresses, within this transaction block, event logging
-
transaction suppress state change sending
-- Suppresses, within this transaction block, all interface command sending for device state changes
Classes
-
application
-- An application program
- Plural name:
- Properties:
-
online
boolean
-- true if interfaces are online
-
main interface enabled
boolean
-- true if main interface is enabled
-
main interface port name
(r/o)
string
-- serial port name used by main interface
-
main interface type name
(r/o)
string
-- main interface type name
-
RF interface enabled
boolean
-- true if RF interface is enabled
-
RF interface port name
(r/o)
string
-- serial port name used by RF interface
-
RF interface type name
(r/o)
string
-- RF interface type name
-
database file
(r/o)
«class furl»
-- file URL for the currently active database file
-
script files
(r/o)
list of «class furl»
-- list of file URLs for all installed scripts
-
default x10 house code
string
-- default x10 house code used when creating new devices and actions
-
smart coalesce functions
boolean
-- true if x10 functions are coalesced on output to main x10 interface
-
nested action limit
integer
-- maximum number of allowed nested actions before reset (5 - 75)
-
daylight
(r/o)
boolean
-- true if current time is after sunrise and before sunset
-
latitude
(r/o)
real
-- the user's current latitude (range: 90 to -90; negative values are South of equator)
-
longitude
(r/o)
real
-- the user's current longitude (range: 180 to -180; negative values are West of Prime Meridian)
-
current time date action name
(r/o)
string
-- name of time/date action currently being executed
-
current trigger action name
(r/o)
string
-- name of trigger action currently being executed
-
current action group name
(r/o)
string
-- name of action group currently being executed
- Elements:
-
window -- by
index, name, range, filter
-
device -- by
index, relative, name
-
time date action -- by
index, relative, name
-
trigger action -- by
index, relative, name
-
action group -- by
index, relative, name
-
variable -- by
index, relative, name
-
device
-- A device
- Plural name:
- Properties:
-
name
string
-- the name
-
description
string
-- the device description
-
address
string
-- the insteon or x10 address (r/o for insteon addresses)
-
type
x10 / insteon
-- the device type
-
model
string
-- the device model name
-
display in remote ui
boolean
-- true if device should be shown in remote UI
-
last changed
(r/o)
date
-- the time/date this device state last changed
-
supports on off
(r/o)
boolean
-- true if device has an off/off state
-
on state
boolean
-- true if device is on
-
supports dimming
(r/o)
boolean
-- true if device supports dimming
-
brightness
integer
-- current brightness value of device (0 - 100)
-
supports sprinkler
(r/o)
boolean
-- true if device controls sprinkler zone valves
-
sprinkler zone
integer
-- active sprinkler zone on device (0=off, 1=zone1, 2=zone2, etc.)
-
supports multiple i/o
(r/o)
boolean
-- true if device has multple inputs or outputs
-
binary outputs
list of boolean
-- list of all boolean output values
-
binary inputs
(r/o)
list of boolean
-- list of all boolean input values
-
analog inputs
(r/o)
list of integer
-- list of all analog input values
-
sensor inputs
(r/o)
list of integer
-- list of all sensor input values
-
supports hvac
(r/o)
boolean
-- true if device controls an HVAC module or thermostat
-
temperatures
(r/o)
list of small real
-- list of all temperature values available
-
humidities
(r/o)
list of small real
-- list of all humidity values available
-
heat setpoint
small real
-- current heat setpoint
-
cool setpoint
small real
-- current cool setpoint
-
hvac mode
offMode / heatOn / coolOn / heatCoolOn / runProgramHeat / runProgramCool / runProgramAuto
-- current thermostat mode
-
fan mode
fanAutoOn / fanAlwaysOn
-- current fan mode
-
supports all lights on and off
(r/o)
boolean
-- true if device supports all lights on/off messages
-
supports all off
(r/o)
boolean
-- true if device supports all off messages
-
supports status request
(r/o)
boolean
-- true if device supports status request messages
-
time date action
-- A time/date based action
- Plural name:
- Properties:
-
name
string
-- the name
-
description
string
-- the time/date action description (not visible in UI)
-
time trigger type
absolute / sunrise / sunset / countdown
-- the trigger time-of-day type
-
date trigger type
absolute / specificDays / everyDay
-- the trigger date or day-of-week type
-
absolute trigger time
date
-- (use if time and/or date trigger type is absolute) the absolute time/date of the trigger
-
days of week
string
-- (use if date trigger type is specificDays) seven '1' or '0' characters, one for each day (ex: 0111110 is Monday through Friday)
-
countdown delta
integer
-- (use if time trigger type is countdown) the number of seconds between triggers
-
sun delta
integer
-- (use if time trigger type is sunrise or sunset) the number of seconds (+ or -) to offset from sunrise or sunset
-
randomize by
integer
-- the number of seconds by which to randomly vary the trigger time
-
auto delete
boolean
-- true if this time/date action should automatically delete after triggering
-
enabled
boolean
-- true if this time/date action is currently enabled
-
upload
boolean
-- true if this time/date action is set to upload to the interface
-
stealth
boolean
-- true if this time/date action should suppress trigger logging
-
next trigger time
(r/o)
date
-- the next time/date this action will be executed
- Elements:
-
trigger action
-- A trigger based action
- Plural name:
- Properties:
-
name
string
-- the name
-
description
string
-- the trigger action description (not visible in UI)
-
trigger type
x10orRF / insteonReceived / deviceChanged / variableChanged / emailReceived / startup / powerFailure / interfaceInitialized / interfaceFailure
-- the trigger type
-
device name
string
-- (use if trigger type = x10orRF, insteon, deviceChanged) the trigger device name
-
state change type
stateBecomesTrue / stateBecomesFalse / stateBecomesEqual / stateBecomesNotEqual / stateBecomesGreaterThan / stateBecomesLessThan / stateChanges
-- (use if trigger type = deviceChanged) the trigger device state change type
-
state selector
string
-- (use if trigger type = deviceChanged) the trigger device state compare selector
-
state value
string
-- (use if trigger type = deviceChanged) the trigger device state compare value
-
variable change type
varBecomesTrue / varBecomesFalse / varBecomesEqual / varBecomesNotEqual / varBecomesGreaterThan / varBecomesLessThan / varChanges
-- (use if trigger type = variableChanged) the trigger variable change type
-
variable name
string
-- (use if trigger type = variableChanged) the trigger variable name
-
variable value
string
-- (use if trigger type = variableChanged) the trigger variable value
-
email filter
anyEmailReceived / matchEmailFields
-- (use if trigger type = emailReceived) the email received trigger filter type
-
email subject
string
-- (use if trigger type = emailReceived and matchEmailFields) the trigger email subject compare value
-
email from
string
-- (use if trigger type = emailReceived and matchEmailFields) the trigger email from compare value
-
enabled
boolean
-- true if this trigger action is currently enabled
-
upload
boolean
-- true if this trigger action is set to upload to the interface
-
stealth
boolean
-- true if this trigger action should suppress trigger logging
- Elements:
-
action group
-- An action group
- Plural name:
- Properties:
-
name
string
-- the name
-
description
string
-- the group description
-
display in remote ui
boolean
-- true if action group should be shown in remote UI
- Elements:
-
variable
-- A user defined variable
- Plural name:
- Properties:
-
name
string
-- the name
-
value
string
-- the value
-
display in remote ui
boolean
-- true if variable should be shown in remote UI
-
action step
-- An action
- Plural name:
- Properties:
-
action type
none / controlLightOrAppliance / controlSprinkler / executeGroup / executeScript / modifyVariable / enableTrigger / disableTrigger / enableTimeDateTrigger / disableTimeDateTrigger / sendEmail / resetInterfaces / sendGroupSceneCommand
-- the action type
-
device name
string
-- (use if action type = controlLightOrAppliance or controlSprinkler) the device name to change
-
device action
allOff / allLightsOn / allLightsOff / turnOn / turnOff / toggleDevice / setBrightness / brightenDevice / dimDevice / statusRequest
-- (use if action type = controlLightOrAppliance) the type of action to send to the device
-
device value
integer
-- (use if action type = controlLightOrAppliance) the device action value
-
sprinkler action
runSchedule / stopSchedule / pauseSchedule / resumeSchedule / prevZone / nextZone / zoneOn
-- (use if action type = controlSprinkler) the type of sprinkler action to execute
-
zone index
integer
-- (use if sprinkler action = zoneOn) the zone index which should be turned on
-
zone durations
list of real
-- (use if sprinkler action = runSchedule) list of zone durations to schedule
-
group name
string
-- (use if action type = executeGroup) the action group name to execute
-
script code
string
-- (use if action type = executeScript) the applescript code to execute
-
variable action
setValue / incrementValue / decrementValue
-- (use if action type = modifyVariable) the type of variable action to execute
-
variable name
string
-- (use if action type = modifyVariable) the variable name to modify
-
variable value
string
-- (use if action type = modifyVariable) the new variable value
-
trigger name
string
-- (use if action type = enableTrigger, disableTrigger, enableTimeDateTrigger, disableTimeDateTrigger) the trigger name to enable or disable
-
email to
string
-- (use if action type = sendEmail) the recipient's email address
-
email subject
string
-- (use if action type = sendEmail) the email subject
-
email body
string
-- (use if action type = sendEmail) the email body
-
delay amount
integer
-- the time to delay the action execution in seconds (0 for no delay)
-
replace existing
boolean
-- if true then any existing delayed actions are replaced
-
complement delay
integer
-- the time before complement action is executed in seconds (0 for no complement)
-
speak text
string
-- the text to speak
Indigo PlugIn Suite
Subroutines called on attachment scripts
Commands
-
receive insteon event
-- Sent to all attachments when Indigo receives an Insteon event from any interface
-
instnTurnOn / instnFastOn / instnTurnOff / instnFastOff / instnBrightenDevice / instnDimDevice / instnStatusRequest / instnStartDim / instnStopDim / instnStartBrighten / instnStopBrighten / instnStatusChanged
-- the insteon function type
-
[for address integer]
-- the insteon address as a long integer (ex: "543221")
-
[using broadcast group integer]
-- the insteon group broadcast number as an integer (ex: "1"); if 0, then command type is direct to a single address or is a global broadcast command
-
[with increment integer]
-- relative amount of dim or brighten (0 - 100)
-
[command value integer]
-- command value (0 to 255; ex: sprinkler valve status)
-
receive x10 event
-- Sent to all attachments when Indigo receives an X10 event from any interface
-
x10AllOff / x10AllLightsOn / x10AllLightsOff / x10TurnOn / x10TurnOff / x10BrightenDevice / x10DimDevice / x10StatusRequest / x10ExtendedCode / x10HailRequest / x10HailAcknowledge / x10PresetDim / x10ExtendedXfer / x10StatusOn / x10StatusOff
-- the x10 function type
-
[for address string]
-- the x10 house code/device code address (ex: "D6")
-
[with dim integer]
-- relative amount of dim or brighten (0 - 100)
-
[with preset integer]
-- the preset value (0 to 31)
-
[with xdata integer]
-- the extended data (first byte) (0 to 255)
-
[with xcommand integer]
-- the extended command (second byte) (0 to 255)
-
receive av event
-- Sent to all attachments when Indigo receives an A/V command from an RF interface
-
rcvd_0 / rcvd_1 / rcvd_2 / rcvd_3 / rcvd_4 / rcvd_5 / rcvd_6 / rcvd_7 / rcvd_8 / rcvd_9 / rcvd_power / rcvd_pc / rcvd_display / rcvd_menu / rcvd_recall / rcvd_enter / rcvd_exit / rcvd_title / rcvd_right / rcvd_left / rcvd_down / rcvd_up / rcvd_return / rcvd_mute / rcvd_ab / rcvd_channelUp / rcvd_channelDown / rcvd_volumeUp / rcvd_volumeDown / rcvd_play / rcvd_record / rcvd_stop / rcvd_pause / rcvd_rewind / rcvd_fforward
-- the A/V function type
-
receive security event
-- Sent to all attachments when Indigo receives a security command from an RF interface
-
sec_ArmHome_min / sec_ArmHome_max / sec_ArmAway_min / sec_ArmAway_max / sec_Disarm / sec_PanicPressed / sec_PanicReleased / sec_LightsOn / sec_LightsOff / sec_SensorNormal_min / sec_SensorNormal_max / sec_SensorAlert_min / sec_SensorAlert_max
-- the security function type
-
[with code integer]
-- security code identifier for device (0 - 255)
-
receive power failure
-- Sent to all attachments when Indigo detects a power failure
|