- Модуль: imopenlines
- Путь к файлу: ~/bitrix/modules/imopenlines/lib/connector.php
- Класс: BitrixImOpenLinesConnector
- Вызов: Connector::sendStatusRead
public function sendStatusRead($connector, $messages, $event)
{
if (empty($messages))
{
return false;
}
if ($connector['connector_id'] == self::TYPE_NETWORK)
{
}
elseif ($connector['connector_id'] == 'lines')
{
Log::write(array($connector, $messages, $event), 'STATUS READ');
$maxId = 0;
foreach ($messages as $messageId)
{
$maxId = $maxId < $messageId? $messageId: $maxId;
}
$chat = new CIMChat();
$chat->SetReadMessage($connector['chat_id'], $maxId, true);
}
elseif (ImOpenLinesConnector::isLiveChat($connector['connector_id']))
{
Log::write(array($connector, $messages, $event), 'STATUS READ');
$maxId = 0;
foreach ($messages as $messageId)
{
$maxId = $maxId < $messageId? $messageId: $maxId;
}
$chat = new ImOpenLinesChat($connector['chat_id']);
$chat->updateFieldData([ImOpenLinesChat::FIELD_LIVECHAT => [
'READED' => 'Y',
'READED_ID' => $maxId,
'READED_TIME' => new DateTime()
]]);
}
else
{
$sendMessages = Array();
foreach ($messages as $messageId)
{
$sendMessages[] = Array(
'chat' => Array(
'id' => $connector['chat_id']
),
'message' => Array(
'id' => $messageId
)
);
}
$connector = new Output($connector['connector_id'], $connector['line_id']);
$connector->setStatusReading($sendMessages);
}
return false;
}