Difference between revisions of "Insteon PLM Ruby Code 351"
From LinuxMCE
m (Added category: GSD) |
|||
(4 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | <pre> | + | {{Versioninfo}} |
− | #### Written by Dan Damron | + | [[Category: GSD]] |
+ | <pre>#### Written by Dan Damron | ||
#### #351 Process IDLE #### | #### #351 Process IDLE #### | ||
############################ RECEIVE Error Trap ########################### | ############################ RECEIVE Error Trap ########################### | ||
if $cmdqueue.length != 0 | if $cmdqueue.length != 0 | ||
if $resetNext != 0 | if $resetNext != 0 | ||
− | log($ | + | log($red + 'receive timeout='+$resetNext.to_s + $grey) |
end | end | ||
if $cmdqueue.to_s == $savedstate | if $cmdqueue.to_s == $savedstate | ||
if $resetNext == $timeout | if $resetNext == $timeout | ||
− | + | if $attempts == 2 then | |
− | + | #Third attempt.. fail the command. | |
− | + | log('Third attempt, Failing Command!') | |
− | + | $recvbuff = '' | |
− | + | $currentcmd = 0 | |
− | + | $attempts = 0 | |
− | + | #Here, I should remove the child | |
+ | removecurrentcommand | ||
− | + | ||
− | + | else | |
− | + | #Command has stalled. Reset wait flag and resend command. | |
+ | log('Command Stalled! resetting and retrying') | ||
− | + | log('Current Command:' + $currentcmd.to_s) | |
− | + | $recvbuff = '' | |
− | + | $currentcmd = 0 | |
− | + | $attempts += 1 | |
− | + | #hack to reset the command | |
− | + | if $cmdqueue[0]['Command'] == 'InsStdMsg' | |
− | + | $cmdqueue[0]['Command'] = 'SndIns' | |
− | + | end | |
− | + | end | |
$wAIT = false | $wAIT = false | ||
$resetNext = 0 | $resetNext = 0 | ||
Line 41: | Line 44: | ||
$attempts = 0 | $attempts = 0 | ||
end | end | ||
− | end | + | end</pre> |
− | </pre> | + | [[category: Insteon]] |
Latest revision as of 14:52, 7 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 #### #351 Process IDLE #### ############################ RECEIVE Error Trap ########################### if $cmdqueue.length != 0 if $resetNext != 0 log($red + 'receive timeout='+$resetNext.to_s + $grey) end if $cmdqueue.to_s == $savedstate if $resetNext == $timeout if $attempts == 2 then #Third attempt.. fail the command. log('Third attempt, Failing Command!') $recvbuff = '' $currentcmd = 0 $attempts = 0 #Here, I should remove the child removecurrentcommand else #Command has stalled. Reset wait flag and resend command. log('Command Stalled! resetting and retrying') log('Current Command:' + $currentcmd.to_s) $recvbuff = '' $currentcmd = 0 $attempts += 1 #hack to reset the command if $cmdqueue[0]['Command'] == 'InsStdMsg' $cmdqueue[0]['Command'] = 'SndIns' end end $wAIT = false $resetNext = 0 SndIns() else $resetNext +=1 end else $resetNext = 0 $savedstate = $cmdqueue.to_s $attempts = 0 end end