Insteon PLM Ruby Code 760: Difference between revisions
Appearance
No edit summary |
Added category: GSD |
||
| (One intermediate revision by one other user not shown) | |||
| Line 1: | Line 1: | ||
{{Versioninfo}} | {{Versioninfo}} | ||
[[category: Insteon]] | [[category: Insteon]] | ||
[[Category: GSD]] | |||
<pre>#### Written by Dan Damron | <pre>#### Written by Dan Damron | ||
#### #760 Send Command to Child #### | #### #760 Send Command to Child #### | ||
| Line 23: | Line 24: | ||
case pk_command | case pk_command | ||
when '192' #ON | when '192' #ON | ||
if chiltType == | if chiltType ==2198 then #used when Device is Thermostat | ||
param = {'Command' => 'SndIns', | param = {'Command' => 'SndIns', | ||
'Parameter1' => @insteonID[0], | 'Parameter1' => @insteonID[0], | ||
| Line 45: | Line 46: | ||
when '193' #OFF | when '193' #OFF | ||
log("childtype:" +childtype.to_s) | log("childtype:" +childtype.to_s) | ||
if childtype == | if childtype == 2198 then #used when Device is Thermostat | ||
param = {'Command' => 'SndIns', | param = {'Command' => 'SndIns', | ||
'Parameter1' => @insteonID[0], | 'Parameter1' => @insteonID[0], | ||
Latest revision as of 09:30, 3 July 2016
| Version | Status | Date Updated | Updated By |
|---|---|---|---|
| 710 | Unknown | N/A | N/A |
| 810 | Unknown | N/A | N/A |
| 1004 | Unknown | N/A | N/A |
| 1204 | Unknown | N/A | N/A |
| 1404 | Unknown | N/A | N/A |
| Usage Information | |||
#### Written by Dan Damron
#### #760 Send Command to Child ####
@insteonID = id.chomp.split('.')
@parameters = parameters
@command = pk_command
@cmd = cmd
childType =device_.childdevices_[cmdTo].devtemplid_ # find out device type
$cmdParams = cmd.params_
log('#760:id=' + id.inspect)
log('#760:parameters=' + parameters.inspect)
log('#760:pk_command=' + pk_command.inspect)
log('#760:cmd=' + cmd.inspect)
### ok, I get the insteonID in @insteonID
# pk_command has one of THREE values, 192, 193, or NOTHING
# when I click 50%, I get in parameters: 76
# but NOTHING in pk_command.
case pk_command
when '192' #ON
if chiltType ==2198 then #used when Device is Thermostat
param = {'Command' => 'SndIns',
'Parameter1' => @insteonID[0],
'Parameter2' => @insteonID[1],
'Parameter3' => @insteonID[2],
'Parameter4' => 'OF', # Flags
'Parameter5' => '6B', # Insteon Thermostat Control
'Parameter6' => '06'} # ON
else
param = {'Command' => 'SndIns',
'Parameter1' => @insteonID[0],
'Parameter2' => @insteonID[1],
'Parameter3' => @insteonID[2],
'Parameter4' => 'OF', # Flags
'Parameter5' => '11', # Insteon SetLevel
'Parameter6' => 'FF'} # FULL ON
end
$cmdqueue << param
SndIns()
when '193' #OFF
log("childtype:" +childtype.to_s)
if childtype == 2198 then #used when Device is Thermostat
param = {'Command' => 'SndIns',
'Parameter1' => @insteonID[0],
'Parameter2' => @insteonID[1],
'Parameter3' => @insteonID[2],
'Parameter4' => '0F',
'Parameter5' => '6B',
'Parameter6' => '09'} #OFF
else #used when Device not Thermostat
param = {'Command' => 'SndIns',
'Parameter1' => @insteonID[0],
'Parameter2' => @insteonID[1],
'Parameter3' => @insteonID[2],
'Parameter4' => '0F',
'Parameter5' => '13', #OFF
'Parameter6' => '00'}
end
$cmdqueue << param
SndIns()
#when '280' # Heat/Cool/Auto
#log('Test Param:' +$cmdParams.to_s)
#case $cmdParams.to_s
#when '8H' # Heat Command
#param = {'Command' => 'SndIns',
#'Parameter1' => insteonID[0],
#'Parameter2' => insteonID[1],
#'Parameter3' => insteonID[2],
#'Parameter4' => '0F',
#'Parameter5' => '6B', # Indicates device is a Thermostat
#'Parameter6' => '04'} # sets to Heat Mode
#$cmdqueue << param
# SndIns()
#when '8C' # Cool Command
#param = {'Command' => 'SndIns',
#'Parameter1' => insteonID[0],
#'Parameter2' => insteonID[1],
#'Parameter3' => insteonID[2],
#'Parameter4' => '0F',
#'Parameter5' => '6B',
#'Parameter6' => '05'} # Sets to Cool
#$cmdqueue << param
# SndIns()
#when '8A' # Auto Command
#param = {'Command' => 'SndIns',
#'Parameter1' => insteonID[0],
#'Parameter2' => insteonID[1],
#'Parameter3' => insteonID[2],
#'Parameter4' => '0F',
#'Parameter5' => '6B',
#'Parameter6' => '06'} # Sets to Auto
#$cmdqueue << param
#SndIns()
#end
when ''
if parameters=='76'
#SetLevel 50%
param = {'Command' => 'SndIns',
'Parameter1' => @insteonID[0],
'Parameter2' => @insteonID[1],
'Parameter3' => @insteonID[2],
'Parameter4' => 'OF', # Flags
'Parameter5' => '11', # Insteon SetLevel
'Parameter6' => '76'} # 50%
$cmdqueue << param
SndIns()
end
end