Я добавил одну функцию в timeman mosule следующим образом.
class CTimeManReport extends CAllTimeManReport
{
function testAgent()
{
mail('[email protected]','agent','agent');
return "testAgent();";
}
}
Теперь я хочу запускать эту функцию каждые 60 секунд. Я добавил агента через панель управления в разделе агентов, но он запускается только один раз.
После запуска агента Битрикс добавил в базу данных значение, которое возвращает функция агента. Так что в вашем случае это должно быть return "CTimeManReport::testAgent();"
потому что ваша функция является методом класса.
Кроме того, это должен быть метод класса, а не метод экземпляра, поэтому добавьте public static
перед вашей функцией
Итак, попробуйте сделать что-то подобное:
class CTimeManReport extends CAllTimeManReport
{
public static function testAgent()
{
mail('[email protected]','agent','agent');
return "CTimeManReport::testAgent();";
}
}
Если этот совет не поможет, вы можете добавить поддержку cron для своих агентов, потому что по умолчанию они работают при перезагрузке страниц. следить эта ссылка для инструкций
Постскриптум не добавляйте свой собственный код в код модуля bitrix. Потому что вы можете потерять свой код после обновления битрикс. Добавьте свой собственный код или включите ваши классы в local/php_interface/init.php
Других решений пока нет …