Kaspersky Security Center Automation  10.0
Sample. Registering update agents for hosts in group.

JScript sample code.

function AcquireAdServerProxy()
{ 
	var oSrvConnectionProps = new ActiveXObject("klakaut.KlAkParams");
	oSrvConnectionProps.Add("Address", "localhost:13000");
	oSrvConnectionProps.Add("UseSSL", true);

	var oAdmServer = new ActiveXObject("klakaut.KlAkProxy");
	oAdmServer.Connect(oSrvConnectionProps);
	g_oLog.WriteLine("Server version is " + oAdmServer.VersionId);
	return oAdmServer;
};

function SetUpdateAgents(oAdmServer)
{
	//for example, register all hosts in selected group (not in subgroups) as Update Agents

	var oHosts = new ActiveXObject("klakaut.KlAkHosts");
	oHosts.AdmServer = oAdmServer;

	var oUpdAgents = new ActiveXObject("klakaut.KlAkUpdateAgents");
	oUpdAgents.AdmServer = oAdmServer;

	var oGroups = new ActiveXObject("klakaut.KlAkGroups");
	oGroups.AdmServer = oAdmServer;

	//select root group
	var lGroup2Process = oGroups.GroupIdGroups;

	var oFileds2Return = new ActiveXObject("klakaut.KlAkCollection");
	oFileds2Return.SetSize(2);
	oFileds2Return.SetAt(0, "KLHST_WKS_HOSTNAME");
	oFileds2Return.SetAt(1, "KLHST_WKS_DN");

	var oFileds2Order = new ActiveXObject("klakaut.KlAkCollection");

	var oChunkAccessor = oHosts.FindHosts(
							"(&(KLHST_INSTANCEID <> \"\")(KLHST_WKS_GROUPID = " + lGroup2Process + "))", //all hosts with nagent that have lGroup2Process as parent group
							oFileds2Return,
							oFileds2Order);
	var lRecords = oChunkAccessor.Count;
	g_oLog.WriteLine("Found hosts, " + lRecords);

	var enumObj = new Enumerator(oChunkAccessor);
	for (;!enumObj.atEnd();enumObj.moveNext()) 
	{
		var oObj = enumObj.item();
		var strName = oObj.Item("KLHST_WKS_HOSTNAME");
		var strDN = oObj.Item("KLHST_WKS_DN");
		g_oLog.WriteLine("Found host: " + strDN);
	
		//register found host as update agent
		var oUpdAgentProps = new ActiveXObject("klakaut.KlAkParams");
		oUpdAgentProps.Item("hosname") = strName; 
		oUpdAgentProps.Item("dn") = "UpdateAgent" + strDN;
		oUpdAgentProps.Item("groupid") = lGroup2Process;
		; 
		oUpdAgents.RegisterUpdateAgent(oUpdAgentProps, true);
};
};


var g_oFileSystemObject;
var g_oLog;

// prepare logging
g_oFileSystemObject = new ActiveXObject("Scripting.FileSystemObject");
g_oLog = g_oFileSystemObject.CreateTextFile("log.txt", true);

SetUpdateAgents(AcquireAdServerProxy());

g_oLog.Close();