Skip to content

Запуск ботов

На данном этапе у вас уже должен быть частично сконфигурирован .conf и установлен Ngrok

Введите в комнадную строку

1
ngrok http 8000

Info

Эта инструкция открывает localhost:8000, вы можете менять значение 8000 на любое другое в зависимости от того, на каком порту находится ваш сервер

Теперь у вас есть публичная ссылка. Скопируйте вариант с https. Далее нужно будет вставить эту ссылку в несколько мест

  • Файл .conf в переменную PUBLIC_URL
  • Раздел Callback API в VK, поле Адрес
    • Также сразу убедитесь, что версия API выставлена 5.103
  • Настройки навыка Алисы, поле Backend, с выставленным пунктом Webhook URL

Запускаем сервер!

Запустите bot.py

Это главный сервер, отвечающий за наших ботов. Он автоматически привяжет ваш публичный адрес из PUBLIC_URL к Telegram. Теперь нажмите на кнопку Подтвердить в меню Callback API VK. Наша библиотека сама определит запрос подтверждения и ответит на него.

Добавление ботов в группы

Помните мы говорили про TELEGRAM_GROUP? Самое время добыть его! Создайте пустую группу и добавьте в нее вашего Telegram бота. Посмотрите логи сервера в консоли. Вы должны найти Warning сообщение с ID группы.

Создайте также пустую беседу в VK и добавьте в нее бота. ID всех бесед привязаны к боту, в которых он есть, поэтому самая первая беседа, в которую добавят бота будет иметь ID = 1. Этот ID используется по умолчанию для предзагрузки, поэтому вам не нужно прописывать его в файл конфигурации.

Что такое предзагрузка?

Мы целиком и полностью за скорость ответа пользователю. Поэтому наше внимание было сфокусировано на возможности загрузить контент заранее. Так мы можем избежать длительного ожидания ответа на стороне пользователя и бессмысленного расхода сетевых ресурсов на стороне сервера.

Зачем нужны группы?

Для реализации нашей задумки на платформах VK и Telegram мы используем группы/беседы, куда боты могут отправлять контент. После этого мы получаем ID загруженного контента. Его же в свою очередь можно указать для отправки контента пользователю непосредственно с сервера платформы.

Если все прошло успешно, вы можете написать ботам на всех платформах. В ответ они должны прислать сообщение "Hello world"