For the complete documentation index, see llms.txt. This page is also available as Markdown.

Time based actions

Copy the function below to the Global Configuration script. Call it in getGroupId(), mainConfigCheck() or any module config check function.

def isNight() {
    var d=60*60*24;
    var t = gkScript.time();
    t += gkScript.utcOffset();
    var localTime = t-t/d*d;

    // night is before 28.800 = 8 * 60 *60 = 8:00 local time
    // and after = 75.600 = 21 * 60 * 60 = 21:00 local time
    var night = ((localTime < 28800) || (localTime > 75600)) 
    return night;
}

The following script is an example to detect if it is a weekday on the client.

def isWeekend() {
	var isWeekend = false;
  	try
    {
  		var query = gkScript.wmiQuery("ROOT\\CIMV2", "SELECT * FROM win32_localtime");
  		var day = query[0]["DayOfWeek"];
  		gkScript.logDebug("Current day of week: " + to_string(day));
      	// day 0 = sunday; day 6 = saturday
  		if (day == 0 || day == 6)
  		{
    		isWeekend = true;
  		}
    } catch (e)
    {
    	gkScript.logError("Failed to retrieve day of week: " + e.what());
    }
  	return isWeekend;  
}

Last updated

Was this helpful?