Man kan nesten gjøre det med et event...
Med et script finnes det mange måter å gjøre det på, men de løsningene jeg har i hodet blir fort litt avanserte. Det er mulig det kan gjøres enklere...
Kanskje sånn. Stairs.vb
Sub Main(ByVal parms As String)
Dim devices() As String = parms.ToString.Split(",")
'Skrur alle på med et delay mellom hvert trinn
For Each d As String In devices
'Henter device ref
Dim dvRef As Integer = d
'Skrur den på
TurnOn(d)
'Venter et et kvart sekund mellom hvert trinn
System.Threading.Thread.Sleep(250)
Next
'Venter 5 sekunder
System.Threading.Thread.Sleep(5000)
'Skrur alle av med et delay mellom hvert trinn
For Each d As String In devices
'Henter device ref
Dim dvRef As Integer = d
'Skrur den av
TurnOff(d)
'Venter et et kvart sekund mellom hvert trinn
System.Threading.Thread.Sleep(250)
Next
End Sub
Sub TurnOff(ByVal input As Object)
Dim control As String = input
Dim devicevalue As Double = hs.DeviceValueEx(control)
Dim capi As HomeSeerAPI.CAPIControl = hs.CAPIGetSingleControl(input, True, "off", False, False)
If capi IsNot Nothing Then
hs.CAPIControlHandler(capi)
Else
hs.WriteLog("Trappetrinn Off", "Could not execute CAPIcontrol, it's nothing! (Input device value: " & devicevalue & ")")
End If
End Sub
Sub TurnOn(ByVal input As Object)
Dim control As String = input
Dim devicevalue As Double = hs.DeviceValueEx(control)
Dim capi As HomeSeerAPI.CAPIControl = hs.CAPIGetSingleControl(input, True, "on", False, False)
If capi IsNot Nothing Then
hs.CAPIControlHandler(capi)
Else
hs.WriteLog("Trappetrinn On", "Could not execute CAPIcontrol, it's nothing! (Input device value: " & devicevalue & ")")
End If
End Sub
Scriptet skrur på alle lys du setter inn som parameter (med komma som skille) med et kvart sekunds delay, venter 5 sekunder, og skrur av alle trappelys.
Jeg hadde hatt eventet likt, men laget to triggere for bevegelsessensoren. Den ene parameteren hadde jeg brukt lys-IDene i stigende rekkefølge, og for den andre i synkende rekkefølge, så slipper du å reversere array'en.