- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/lib/V2/Message/Delete/DeleteService.php
- Класс: BitrixImV2MessageDeleteDeleteService
- Вызов: DeleteService::getFormatPullMessage
public function getFormatPullMessage(bool $completeDelete): array
{
$params = [
'id' => (int)$this->message->getId(),
'type' => $this->chat->getType() === Chat::IM_TYPE_PRIVATE ? 'private' : 'chat',
'text' => Loc::getMessage('IM_MESSAGE_DELETED'),
'senderId' => $this->message->getAuthorId(),
'params' => ['IS_DELETED' => 'Y', 'URL_ID' => [], 'FILE_ID' => [], 'KEYBOARD' => 'N', 'ATTACH' => []],
'chatId' => $this->chat->getChatId(),
];
if (!$this->chat instanceof ChatPrivateChat)
{
$params['dialogId'] = $this->chat->getDialogId();
}
if ($completeDelete && $this->needUpdateRecent)
{
if ($this->chatLastMessage['ID'] !== 0)
{
$newLastMessage = new Message($this->chatLastMessage['ID']);
if ($newLastMessage->getId())
{
$params['newLastMessage'] = $this->formatNewLastMessage($newLastMessage);
}
}
else
{
$params['newLastMessage'] = ['id' => 0];
}
}
return [
'module_id' => 'im',
'command' => $completeDelete ? 'messageDeleteComplete' : 'messageDelete',
'params' => $params,
'push' => $completeDelete ? ['badge' => 'Y'] : [],
'extra' => Common::getPullExtra()
];
}