Загрузка изображения через интерактивную кнопку Slack

У меня есть такая интерактивная кнопка, которую я помещаю внизу сгенерированного сообщения:

Нажатие кнопки вызывает диалог:

Если я введу общедоступный URL-адрес изображения в поле "URL-адрес", оно будет успешно отправлено на сервер, и я смогу обновить сгенерированное сервером сообщение с изображением. Но вместо того, чтобы загружать файл куда-то и копировать его туда, я бы хотел нажать "загрузить изображение" в диалоговом окне и выбрать файл с диска. Это возможно?

1 ответ

Решение

Нет. Загрузка файлов в настоящее время не поддерживается в Slack Dialogs.

Но вы можете реализовать это самостоятельно с помощью скрипта загрузки, который запускается в браузере и вызывается кнопкой ссылки из Slack. Это будет работать аналогично этому примеру для загрузки файла.

Кнопка ссылки представляет собой вариант кнопки сообщения и должна быть помещена в сообщение (например, рядом с кнопкой добавления заметки), но не может быть помещена в диалог.

Вот основная схема:

  1. Пользователь нажимает на кнопку "Добавить изображение" в сообщении
  2. Обзор открывает и запускает скрипт загрузки
  3. Скрипт загрузки запрашивает у пользователя, какой файл загружать
  4. Скрипт загружает файл (например, на ваш сервер или Slack) и связывает его с запросом пользователя

Что нужно учитывать:

  • Вы должны связать текущий сеанс со своим сценарием, например, путем передачи идентификатора в ссылке (что может привести к проблемам безопасности)
  • Эта функция загрузки не будет модальной, как ваш диалог, поэтому ваше приложение должно иметь возможность обрабатывать асинхронную / параллельную загрузку файлов

Проверьте эти страницы для получения дополнительной информации о загрузке файлов через браузер:

Другие вопросы по тегам