- Модуль: imbot
- Путь к файлу: ~/bitrix/modules/imbot/lib/bot/openlineslistenerexample.php
- Класс: BitrixImBotBotOpenlinesListenerExample
- Вызов: OpenlinesListenerExample::onMessageAdd
static function onMessageAdd($messageId, $messageFields)
{
if ($messageFields['SYSTEM'] == 'Y')
return false;
if (!BitrixImUser::getInstance($messageFields['FROM_USER_ID'])->isConnector())
{
$messageId = self::getLastMessageId($messageFields['DIALOG_ID']);
if ($messageId)
{
self::setLastMessageId($messageFields['DIALOG_ID'], 0);
CIMMessenger::DisableMessageCheck();
CIMMessenger::Delete($messageId, null, true);
CIMMessenger::EnableMessageCheck();
}
return false;
}
BitrixImBotLog::writeToFile(self::BOT_CODE.'.log', $messageFields, 'BOT: RECEIVE MESSAGE');
$answerMessage = strrev($messageFields['MESSAGE']);
$messageId = self::getLastMessageId($messageFields['DIALOG_ID']);
if ($messageId)
{
self::setLastMessageId($messageFields['DIALOG_ID'], 0);
CIMMessenger::DisableMessageCheck();
CIMMessenger::Delete($messageId, null, true);
CIMMessenger::EnableMessageCheck();
}
$messageId = BitrixImBot::addMessage(Array('BOT_ID' => $messageFields['BOT_ID']), Array(
'DIALOG_ID' => $messageFields['DIALOG_ID'],
'MESSAGE' => "I`m prepare answer: [i][PUT=".$answerMessage."]".$answerMessage."[/PUT][/i] :)",
'SYSTEM' => 'Y',
));
self::setLastMessageId($messageFields['DIALOG_ID'], $messageId);
return true;
}