- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/lib/disk/sender.php
- Класс: BitrixImDiskSender
- Вызов: Sender::sendFileToChat
static function sendFileToChat(
File $file,
int $chatId,
string $text,
$params = [],
$userId = null,
$fileSource = self::SOURCE_DEFAULT
): Result
{
$result = new Result();
$sender = new self();
$initResult = $sender->init($file, $chatId, $text, $params, $userId, $fileSource);
if (!$initResult)
{
return $result->addErrors($sender->errorCollection->getValues());
}
$accessResult = $sender->checkAccess();
if (!$accessResult)
{
return $result->addErrors($sender->errorCollection->getValues());
}
$uploadResult = $sender->uploadFileToChatStorage();
if (!$uploadResult)
{
return $result->addErrors($sender->errorCollection->getValues());
}
$result->setData(['IM_FILE' => $uploadResult]);
$sender->sendEvent();
return $result;
}