Code:
Sub Main(ByVal Parms as String) Dim ParmArray() as String ParmArray = Parms.tostring.split(",") dim targetDev1 as Double = CDbl(ParmArray(0)) 'reference ID of the device to use for existing value dim targetDev2 as Double = CDbl(ParmArray(1)) 'reference ID of the device to set based on value of targetDev1 dim Debug as Boolean = True Dim logName = "Dim Follower" 'set log name for HS log Dim dev1Value,dev2Value As Double dev1Value = hs.DeviceValue(targetDev1) dev2Value = hs.DeviceValue(targetDev2) If Debug Then hs.writelog(logName,CStr(targetDev1) & ":" & CStr(dev1Value)) If dev1Value <> dev2Value Then Select Case dev1Value Case 1 to 98 ' Device DIM, set its current dim level hs.CAPIControlHandler(hs.CAPIGetSingleControl(targetDev2, false, CStr(dev1Value), false, true)) If Debug Then hs.writelog(logName,CStr(targetDev2) & ":" & CStr(dev1Value)) Case 99 ' Device ON, set it to on hs.CAPIControlHandler(hs.CAPIGetSingleControl(targetDev2, false, "On", false, false)) If Debug Then hs.writelog(logName,CStr(targetDev2) & " Set to On") Case 0 ' Device OFF, set it to off hs.CAPIControlHandler(hs.CAPIGetSingleControl(targetDev2, false, "Off", false, true)) If Debug Then hs.writelog(logName,CStr(targetDev2) & " Set to Off") End Select Else If Debug Then hs.writelog(logName,"Devices are at same value already") End If End Sub
Code:
hs.SetDeviceValueByRef(targetDev2, dev1Value, True)
Cheers
Al
Leave a comment: