• Модуль: imbot
  • Путь к файлу: ~/bitrix/modules/imbot/lib/bot/serviceexample.php
  • Класс: BitrixImBotBotServiceExample
  • Вызов: ServiceExample::register
static function register(array $params = Array())
{
	if (!BitrixMainLoader::includeModule('im'))
		return false;

	$agentMode = isset($params['AGENT']) && $params['AGENT'] == 'Y';

	if (self::getBotId())
		return $agentMode? "": self::getBotId();

	$botId = BitrixImBot::register(Array(
		'CODE' => self::BOT_CODE,
		'TYPE' => BitrixImBot::TYPE_SUPERVISOR,
		'MODULE_ID' => self::MODULE_ID,
		'CLASS' => __CLASS__,
		'METHOD_MESSAGE_ADD' => 'onMessageAdd',
		'METHOD_MESSAGE_UPDATE' => 'onMessageUpdate',
		'METHOD_MESSAGE_DELETE' => 'onMessageDelete',
		'METHOD_WELCOME_MESSAGE' => 'onChatStart',
		'METHOD_BOT_DELETE' => 'onBotDelete',
		'PROPERTIES' => Array(
			'NAME' => "Service Bot for logging messages (example)",
			'WORK_POSITION' => "Collect and process messages from chats",
		)
	));
	if ($botId)
	{
		self::setBotId($botId);
	}

	return $agentMode? "": $botId;
}