- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/lib/V2/Message.php
- Класс: BitrixImV2Message
- Вызов: Message::uploadFileFromText
public function uploadFileFromText(): self
{
if ($this->getMessage() && $this->getChatId())
{
$message = $this->getMessage();
if (preg_match_all("/[DISK=([0-9]+)]/i", $message, $matches))
{
$fileFound = false;
foreach ($matches[1] as $fileId)
{
$newFile = CIMDisk::SaveFromLocalDisk($this->getChatId(), $fileId, false, $this->getContext()->getUserId());
if ($newFile)
{
$fileFound = true;
$this->getParams()->get(Params::FILE_ID)->addValue($newFile->getId());
}
}
if ($fileFound)
{
$message = preg_replace("/[DISK=([0-9]+)]/i", '', $message);
}
$this->setMessage($message);
}
}
return $this;
}