Совместимость со Slack
Интеграции, написанные для Slack, как правило, работают в Loop без изменений.
Что Loop преобразует автоматически
-
Разметка в ответах. Элементы разметки Slack превращаются в Markdown Loop:
<https://loop.ru/>— ссылка, например{"text": "<https://loop.ru/>"};<https://loop.ru/|здесь>— ссылка с текстом, например{"text": "Нажмите <https://loop.ru/|здесь>"};<@USER_ID>— упоминание пользователя, например{"text": "<@5fb5f7iw8tfrfcwssd1xmx3j7y> это уведомление"};<!channel>,<!here>,<!all>— упоминание канала, например{"text": "<!channel> это уведомление"}.
Чтобы отключить преобразование для конкретного ответа slash-команды, передайте
"skip_slack_parsing": true. -
Формат запросов. Запросы, которые Loop отправляет в ваш сервис, содержат те же поля, что и в Slack (
token,team_id,channel_id,user_id,command,text,response_urlи др.), поэтому обработчик Slack-команды не нужно переписывать.
Ограничения
icon_emojiв ответах slash-команд не поддерживается — используйтеicon_url.<#CHANNEL_ID>не превращается в ссылку на канал.<!everyone>и<!group>не поддерживаются.- Параметры
mrkdwn,parseиlink_namesигнорируются: Loop всегда обрабатывает Markdown и упоминания. - Жирный текст пишется как
**bold**, а не*bold*. - Slack подставляет значения по умолчанию для некоторых незаполненных полей, Loop — нет. Например, без
response_typeответ будет временным (ephemeral).