Since there is no way to set a timer from a script, I'm left with building an event to turn off a device after a set amount of time. Has anyone done this?
Thanks;
Don
Thanks;
Don
If this is your first visit, be sure to check out the FAQ. You must register before you can post.
IMPORTANT: Your first post will be checked for appropriate content. This may take a bit of time.
' ' Triggertime in seconds ' Sub MakeEvent(ByVal TriggerTime As Integer, ByVal strEventName As String, ByVal strEventGroup As String) Dim EvRef As Integer Dim OldEvRef As Integer Dim EvTime As Date 'Delete event if already exists oldEvRef = hs.GetEventRefByName(strEventName) If oldEvRef > 0 Then 'event does exist hs.DeleteEventByRef(oldEvRef) End If ' Create the new Event EvRef = hs.NewEventEx(strEventName, strEventGroup, "") ' Enable the Event hs.EnableEventByRef(EvRef) ' Set the trigger time EvTime = DateAdd("s", TriggerTime, Now) hs.EventSetTimeTrigger(EvRef, EvTime) 'Delete the event after triggering hs.DeleteAfterTrigger_Set(EvRef) End Sub
Sub Main(parm as object) Const ScriptName = "CreateEvent" Dim strEventGroup As String = "Test_Event_Group" Dim strEventName As String = "Test_Event_Name" Dim strEventLaunchByRefProc As String = "LaunchEventByRef" Dim strEventLaunchScript As String = "Launch_This_Script.vb" Dim strEventLaunchByNameProc As String = "Calling_This_Procedure" Dim strEventLaunchProcParams As String = "With_These_Parameters" Dim EvRef As Integer Dim OldEvRef As Integer Dim EvTime As Date 'Delete event if already exists oldEvRef = hs.GetEventRefByName(strEventName) If oldEvRef > 0 Then 'event does exist hs.DeleteEventByRef(oldEvRef) End If ' Create the new Event EvRef = hs.NewEventEx(strEventName, strEventGroup, "") ' Enable the Event hs.EnableEventByRef(EvRef) Try hs.AddActionRunScript(EvRef, strEventLaunchScript, strEventLaunchByNameProc, strEventLaunchProcParams) hs.WriteLog(ScriptName , "New Event Created." ) hs.WriteLog(ScriptName , "Event Ref: " + Str(EvRef)) hs.WriteLog(ScriptName , "Event Group: " + strEventGroup ) hs.WriteLog(ScriptName , "Event Name: " + strEventName ) hs.WriteLog(ScriptName , "Event Type: " + strEventLaunchByRefProc ) hs.WriteLog(ScriptName , "Event Script: " + strEventLaunchScript ) hs.WriteLog(ScriptName , "Event Calls this Procedure : " + strEventLaunchByNameProc ) hs.WriteLog(ScriptName , "With These Parameters: " + strEventLaunchProcParams ) Catch ex As Exception hs.WriteLog(ScriptName , String.Format("Error adding event action to event '{0}': {1}", strEventName, ex.Message)) Throw Ex End Try End Sub
Sub Main(parm as object) hs.WriteLog("DummyScript" , "I am a dummy script. I do not do anything.") End Sub Sub Calling_This_Procedure(parm as String) hs.WriteLog("DummyScript" , "I have been called with paramaters: " + parm) End Sub
Comment