OnSendMessageCustom
Описание и параметры
OnSendMessageCustom - новое сообщение из Открытой Линии. Обязательно нужно вызвать в ответ метод sendStatusDelivery иначе в мессенджере сообщение будет значиться как недоставленное.
В событие приходят следующие параметры:
Параметр | Описание |
---|---|
CONNECTOR | ID коннектора, по нему проверяете, касается ли событие вас. |
LINE | ID линии |
DATA | Массив массивов, описывающих сообщение:
array ( //Массив параметров для связи (возвращается в сообщении о доставке) 'im' => array ( //ID чата в рамках битрикс24 'chat_id' => 845, //ID сообщения в рамках битрикс24 'message_id' => 344029, ), 'message' => array ( //Текст сообщения 'text' => '[b]Сергей "Покоев":[/b][br] Тестовое сообщение' ), 'chat' => array ( //ID внешнего чата 'id' => '2', ), ); |
Пример
\Bitrix\Main\EventManager::getInstance()->addEventHandler("imconnector", "OnSendMessageCustom", Array("Message", "OnSendMessageCustomHandler")); class Message { function OnSendMessageCustomHandler(\Bitrix\Main\Event $event) { $connector = $event->getParameter('CONNECTOR'); $line = $event->getParameter('LINE'); $data = $event->getParameter('DATA'); foreach ($data as $message) { $statusDelivery[]= array( 'im' => $message['im'], 'message' => array( 'id' => array(5), ), 'chat' => array( 'id' => $message['chat']['id'] ), ); } if(!empty($statusDelivery)) { \Bitrix\ImConnector\CustomConnectors::sendStatusDelivery($connector, $line, $statusDelivery); } //test define("LOG_FILENAME", $_SERVER["DOCUMENT_ROOT"]."/log.txt"); AddMessage2Log(var_export(array('$connector' => $connector, '$line' => $line,'$data' => $data),1), 'SendMessage'); //END test } }
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.