- Модуль: imopenlines
- Путь к файлу: ~/bitrix/modules/imopenlines/lib/connector.php
- Класс: BitrixImOpenLinesConnector
- Вызов: Connector::OnReceivedStatusBlock
static function OnReceivedStatusBlock(Event $event): bool
{
$params = $event->getParameters();
if (empty($params))
{
return false;
}
$fields = [
'CONNECTOR_ID' => $params['connector'],
'CONFIG_ID' => $params['line'],
'EXTERNAL_CHAT_ID' => $params['chat']['id'],
'CONNECTOR_USER_ID' => $params['user'],
];
$sessionParams['USER_CODE'] = SessionCommon::combineUserCode($fields);
$session = new Session();
$resultLoadSession = $session->getLast($sessionParams);
if ($resultLoadSession->isSuccess())
{
$sessionId = $session->getData('ID');
$chat = $session->getChat();
$limit = [
'BLOCK_DATE' => new DateTime(),
'BLOCK_REASON' => Library::BLOCK_REASON_USER
];
if ($params['message']['type'] === 'message_deny')
{
ReplyBlock::add($sessionId, $chat, $limit);
}
elseif ($params['message']['type'] === 'message_allow')
{
ReplyBlock::delete($sessionId, $chat);
}
return true;
}
return false;
}