boddy2
Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору xorofullЕсли у тебя 159 (160) то вот так: Код: Set Args = WScript.Arguments.Unnamed ' заметь, в вышеприведенном скрипте ошибка ( if Args.Count <> 2 then) if Args.Count < 2 then WScript.Echo "??? usage: cscript.exe userpause.vbs APIPassword GroupID /sn:ServerName" WScript.Quit end if APIPass = Args(0) Obj = Args(1) If WScript.Arguments.Named.Exists("sn") Then ServName = WScript.Arguments.Named.Item("sn") Set Srv = CreateObject("TrafInsp.TrafInspAdmin",ServName) Else Set Srv = CreateObject("TrafInsp.TrafInspAdmin") End If Srv.APILogon(APIPass) ' Получаем список клиентов группы UserList = Srv.ApiGetBillProp(3, Obj) ' Проверяем, что это таблица - двухмерный массив If Not IsArray(UserList) Or Not IsArray(UserList(0)) Then WScript.Echo "Нет данных" WScript.Quit End If For I = 0 To UBound(UserList, 1) User = UserList(I) ' Получили строку - описание пользователя UserID = User(1) ''''>>>>'''' Srv.APISetUserState UserID, -1, 1, "Script userpause.vbs", "Перевод в ПАУЗА" ''''>>>>'''' Srv.APISetUserState UserID, -1, 2, "Script user_run.vbs", "Разрешить работу" ''''>>>>'''' Srv.APISetUserState UserID, -1, 0, "Script userclear.vbs", "ОБНУЛИТЬ сесию" End If Next | Аккуратно с вариантом "ОБНУЛИТЬ сесию" - это полностью ощищает принятое-отправленное-оплаченное-баланс для клиента, везде ставит нули. Srv.APISetUserState : UserID, Cash, State, Comment, Comment2 Cash: в 159 (160) версиях отрицательный параметр игнорируется State: 0 - стоп (обнуление), 1 - паузить, 2 - стартовать Запускать: cscript.exe userpause.vbs APIPassword Admins - паузит группу Admins cscript.exe userpause.vbs APIPassword "" - паузит всех юзеров без разбору. |