Публикует файл из директории сессии для просмотра пользователем прямо в чате. Поддерживаются интерактивные viewer'ы для 3D-моделей (STL), HTML-страниц, SVG, PDF, изображений и видео.
uploads/sessions/{session_id}/)./sessions/{session_id}/files/{filename}.content_publish(
filename="мой_файл.svg", # обязательно — имя файла в директории сессии
title="Моя диаграмма", # опционально — заголовок карточки
content_type="svg" # опционально — тип для viewer (автоопределение по расширению)
)
Директория сессии — это uploads/sessions/{session_id}/. Полный путь зависит от настроек сервера.
Как узнать путь:
filesystem info uploads/sessions/{session_id}
Или просто пишите файлы относительно текущей директории — если вы уже в рабочей директории, используйте полный путь через filesystem write.
# Создать SVG в директории сессии filesystem write uploads/sessions/sess-abc/chart.svg "<svg>...</svg>" # Опубликовать content_publish(filename="chart.svg", title="Диаграмма продаж")
# Прочитать текущий файл filesystem read uploads/sessions/sess-abc/chart.svg # Отредактировать filesystem write uploads/sessions/sess-abc/chart.svg "<svg>...исправлено...</svg>"
Пользователь увидит изменения мгновенно — URL не меняется.
| Расширение | Тип | Viewer |
|---|---|---|
.stl |
3D-модель | Three.js 3D viewer |
.html, .htm |
HTML | iframe |
.svg |
SVG | iframe |
.pdf |
iframe | |
.png, .jpg, .jpeg, .gif, .webp |
Изображение | img |
.mp4, .webm |
Видео | video |
Для неизвестных типов показывается карточка со ссылкой на скачивание.
content_publish не создаёт файлы, только регистрирует.chart.svg лучше чем file_1.svg.