Документация для разработчиков

Класс CAgent

CAgent - класс для работы с функциями-агентами.

Методы класса

Метод Описание С версии
AddAgent Добавляет функцию-агент.3.1.3
CheckAgents Проверяет и запускает функции-агенты.
Delete Удаляет функцию-агент по ее ID.4.0.13
RemoveAgent Удаляет функцию-агент по ее имени.4.0.13
RemoveModuleAgents Удаляет все функции-агенты указанного модуля.3.3.10

См. также



Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Артемий Исаев
Что бы из функции агента повлиять на время его следующего запуска, необходимо использовать в функции глобальную переменную.
Код
$GLOBALS['pPERIOD'] ='3600'; //запуск через час
В этом случае вы переопределите значение переданное из поля  AGENT_INTERVAL, но не измените его.


Например у вашего агента интервал запуска 120 секунд и вам надо налету(при выполнении самого агента) поменять на 3600 секунд

Есть два возможных варианта

1. в агенте используете
Код
$GLOBALS['pPERIOD'] ='3600'; //запуск через час
в этом случае уже следующий запуск произойдёт через 3600 секунд

2. в агенте выполняете изменение записи об агенте в БД, обновляя значения поля AGENT_INTERVAL
Код
CAgent::Update($ID_Agent, array("AGENT_INTERVAL"=>"3600")); 
в этом случае следующий запуск будет 120 секунд, а последующие через 3600
4
Егор Солуянов
Поиск по имени агента
Код
$res = CAgent::GetList(Array("ID" => "DESC"), array("NAME" => "Tickets::GetService();"));
while($res->NavNext(true, "agent_")):
    echo "[".$agent_ID."] ".$agent_NAME."<br>";
endwhile;
 
7
Илья Пятин
Также присутствуют методы
CAgent::GetById($ID)
CAgent::GetList($arOrder, $arFilter)
CAgent::Update($ID, $arFields)
© «Битрикс», 2001-2018, «1С-Битрикс», 2018
Наверх