• Модуль: 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()
	];
}