Репозиторий: https://github.com/pachca/public-integrations/tree/main/Unfurling-bot
Unfurl-бот разворачивает ссылки из рабочих сервисов и показывает для них превью в Пачке. Например, вы можете отправить ссылку на карточку из Trello, Kaiten или на сообщение из Пачки в чат. Вместо простой ссылки для всех будет отображаться небольшое превью того, что указано по ссылке: заголовок, описание или изображение.
У этой интеграции мы подготовили три варианта для развертывания:
Также в боте уже написаны обработчики ссылок для Пачки Trello и Kaiten. А если вам нужно добавить обработчики для других инструментов, в README есть шаблон по их написанию.
Ниже будет инструкция по локальному развертыванию бота и быстрому запуску на Vercel для команд, которым не хочется разбираться с арендой и настройкой своих серверов. Другие способы запуска бота описаны в README интеграции.
UNFURL_BOT_TOKEN
- токен бота во вкладке APIPACHCA_WEBHOOK_SECRET
- Signing secret на вкладке Исходящих вебхуков..env
Для работы бота необходимо настроить переменные окружения, которые бот использует для авторизации в сторонних сервисах и показа превью из них.
В репозитории есть пример файла .env.example
- в нем указаны переменные, для которых написаны соответствующие обработчики. Если вы пользуетесь этими сервисами, то можете просто скопировать .env.example, переназвать его в .env
и заполнить файл вашими переменными.
Переменные, для которых реализованы обработчики:
UNFURL_BOT_TOKEN
PACHCA_WEBHOOK_SECRET
PACHCA_API_TOKEN
TRELLO_KEY
TRELLO_TOKEN
KAITEN_TOKEN
Kindly reminder: При необходимости добавьте новые обработчики и токены других сервисов. Для упрощения задачи, в нашем репозитории в README есть пример, как можно реализовать новые обработчики.
Как правило, этот пункт нужен только для проверки работоспособности бота. Если вам не нужно проверять бота, вы сразу же можете задеплоить его на Vercel или свой сервер.
Для упрощения процесса проверки рекомендуем запускать бота через Docker. Так вам не нужно будет скачивать Ruby, гемы для него и т.д. Для этого необходимо скачать Docker с их официального сайта, а дальше провести установку по инструкции ниже.
docker --version docker-compose --version
git clone https://github.com/artemypmnchk/pachca_unfurl_public.git cd pachca_unfurl_public
docker-compose up -d
Для работы с Пачкой боту нужен публичный URL, чтобы отправлять на него вебхуки. Для этого необходимо скачать ngrok, чтобы сделать боту публичны URL.
ngrok http 4567
https://xxxx-xx-xx-xxx-xx.ngrok-free.app
. На этот URL бот будет отправлять ссылки из Пачки, для которых нужно показать превью.https://xxxx-xx-xx-xxx-xx.ngrok-free.app/v1/unfurl
Примечание: Обратите внимание, что бесплатный URL ngrok меняется при каждом запуске, поэтому подходит только для проверок.
Другие команды для бота описаны в README в нашем репозитории.
1. Если у вас еще нет аккаунта Vercel, зарегистрируйтесь на их официальном сайте vercel.com.
2. Дальше нужно скопировать наш репозиторий в ваш GitHub или, если вы его скачали на свое устройство, загрузить его на гит и синхронизировать с Vercel.
3. После импорта репозитория на Vercel: настройте переменные окружения. Для Vercel они задаются не в файле .env, а на самой платформе. Их можно задать при импорте проекта, а также в разделе "Settings" -> "Environment Variables":
UNFURL_BOT_TOKEN
- токен для авторизации в API Пачки
PACHCA_WEBHOOK_SECRET
- Signing secret бота в ПачкеTRELLO_KEY
, PACHCA_API_TOKEN
, TRELLO_TOKEN
, KAITEN_TOKEN
и т.д.)4. Настройте вебхук в Пачке, указав URL вашего приложения с путем /unfurl
(например, https://your-app.vercel.app/unfurl
)
Если вдруг что-то не получилось, описание непонятно или хотелось бы увидеть дополнительные возможности в интеграции, то мы всегда будем рады пообщаться с вами, чтобы улучшить инструкцию.
Для этого напишите нашей команде поддержки в Телеграм бот