Общайтесь в VK через Telegram бота.
git clone https://github.com/Kylmakalle/tgvkbot
cd tgvkbot
./install.sh
Токен Telegram бота: 123456789:AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLL
VK APP ID (можно оставить пустым):
Далее потребуется ввести пароль от sudo
пользователя и Telegram-token, остальные переменные необязательны.
Установщик поставит Docker и docker-compose, настроит переменные окружения и запустит контейнер для обновлений, а затем поднимет бота с его базой данных.
Бот автоматически обновляется через образ на dockerhub, где на всякий случай фиксируются версии каждого коммита.
Стандартный установщик поднимает watchtower, который раз в час проверяет обновления.
Если по каким-то причинам хочется чтобы ботом пользовались исключительно определенные пользователи, то это можно сделать изменив файл конфигурации. Потребуется прописать параметр в таком виде, где числа - Telegram ID пользователей через запятую.
ALLOWED_USER_IDS=12345678,001238091
ID можно узнать командой /id
в боте или через других ботов/софт.
С недавнего времени бот поднимается с помощью готового docker образа. Если нужно сделать какую-то специфичную правку, то бота можно поднять через отдельный файл командой
docker-compose -f docker-compose.local.yml up
Все остальные действия (restart
, stop
, ...) привязанные к "локальному боту" нужно выполнять с флагом -f docker-compose.local.yml
Не забудьте отключить бота из образа командой docker-compose down
Подробнее о деплое через Dokku можно прочитать здесь.
На сервере:
dokku apps:create tgvkbot
dokku postgres:create tgvkbot_db
dokku postgres:link tgvkbot_db tgvkbot
dokku config:set tgvkbot BOT_TOKEN=<tg_token> [VK_APP_ID=<vk_app_id> ALLOWED_USER_IDS=<tg_user_ids,...> MAX_FILE_SIZE=<num> ...]
На локальном компьютере/где угодно в папке с репозиторием:
git remote add dokku dokku@<dokku_host_url>:tgvkbot
git push dokku
Ниже прокси для музыки, которые использовали ранее. Сейчас они нерелевантны, но код открыт и в боте есть поддержка кастомных бэкендов музыки.
API - https://github.com/Kylmakalle/thatmusic-api
Token Refresher - https://github.com/Kylmakalle/vk-audio-token/tree/refresh-api
MIT