Skip to content

weescr/VKGIFSBot

Repository files navigation

Telegram Bot API VK API VK GIFS Bot

VK GIFS Bot

Peek 2021-07-09 01-02

VKGIFSBot - удобный бот для отправки GIF-изображений из ВКонтакте в Телеграмe. Работает это очень просто: бот получает токен ВКонтакте API и делает запрос docs.get, который возвращает доступные документы пользователя. Происходит отбор GIF-изображений и они возвращаются ботом через Inline. Для токенов я создал своё Standalone-приложение ВКонтакте, которое запрашивает доступ ТОЛЬКО к файлам. Это важно, потому что бот не лезет куда-то дальше, а значит ваши сообщения в безопасности.

Поиск

Я добавил функцию поиска гифок, которую можно использовать во время инлайн запроса к боту.

Peek 2021-07-09 01-11

Отправка GIF в документы ВКонтакте

Для того, чтобы отправить GIF из Телеграма в ВКонтакте воспользуйтесь командой /backup и отправьте GIF. Peek 2021-07-09 01-41

Ограничения

InlineQuery в Телеграме может возвращать только 50 элементов, поэтому пришлось добавить кнопку "Следующие 50 GIF". При нажатии на неё пользователь отправляет боту /start.

Но на самом деле отправляется /start next - это называется Deep linking. Это полезно знать разработчикам ботов для Телеграма, поэтому я оставлю ссылку.

Слишком большие GIF-изображения также не отображаются.

UPD

Оказывается в InlineQuery можно передать аргумент next_offset, который по сути является оффсетом для инлайн-окна. Другими словами, когда пользователь будет листать инлайн-ответ, еще раз вызовется инлайн-функция, только с оффсетом, который вы указали в next_offset и его можно обработать, чтобы вернуть следующие 50 GIF.

Зачем я использую базу данных?

В проекте предусмотрена база данных для сохранения токенов пользователей в случае неисправности сервера.

Как запустить?

Введите телеграм токен в dockerfile и выполните:

docker build -t vkgifsbot .
docker run -d --name vkgifs -v /local/path/to/rep/db:/usr/src/app/db --rm vkgifsbot

TODO

...

Можете поставить звёздочку или поддержать через Киви, мне будет очень приятно!

About

Inline Телеграм бот для отправки GIF-изображений из ВКонтакте

Resources

License

Stars

Watchers

Forks