Для отправки клиенту видео в мессенджер можно использовать смарт тег video. Параметры данного смарт тега зависят от канала, в который необходимо направлять видео, так как для отправки видео в большинстве мессенджеров необходимо предварительно его загрузить и отправлять в канал, указывая идентификатор видео.
Формат тега следующий:
{"tag_type":"video", "title":"Пример видео", "video_vk_code":"53921536_456239079", "video_link":"url_видео", "video_vk_hash":"hash_видео_ВК", "facebook_attachment_id": "id_вложения_facebook", "telegram_file_id":"id_файла_Telegram" }, где
- tag_type – всегда video,
- title – произвольное название видео для пользователя,
- video_link – ссылка на видео для каналов, где нет специальной поддержки,
- video_vk_code – идентификатор видео, загруженного ВКонтакте. Для получения данного идентификатора необходимо загрузить требуемое видео в группу и взять идентификатор из ссылки на видео. Например, https://vk.com/video-134183993_456239025
- video_vk_hash – необходимо для встраивания видео внутрь Sherlock. Берется из ссылки, формируемой при открытии видео ВКонтакте. Все необходимые параметры можно взять с диалога ВКонтакте Поделиться видео => Экспортировать
- facebook_attachment_id – если указано, то в Facebook берется сохраненное видео.
- telegram_file_id - если указано, то в Telegram применяется отправка файла по id, а не URL.
Для отправки клиенту видео смарт тег, сформированный описанным образом, необходимо добавить в текст команды Сообщение клиенту.
Примечание: в Telegram для видео файлов при отправке по ссылке применяется лимит в 20Gb. Для видео большего объема его необходимо предварительно загрузить на сервера Telegram и использовать telegram_file_id для отправки файла. Для получения telegram_file_id необходимо:
- Отправить видео файл боту от имени пользователя
- Взять из контекста значение System.ChannelFileId