VK-TG connector - это Telegram-бот, позволяющий обмениваться сообщениями с пользователями социальной сети ВКонтакте.
- Получение и отправка сообщений.
- Создание ответов.
- Перенаправление сообщений пользователей Vk в отдельные чаты.
- Уведомления о прочитанных сообщениях.
-
Установите Docker и Docker-compose. Запустите сервис Docker.
-
Создайте бота в Telegram с помощью @BotFather (подробную инструкцию можно найти в интернете).
-
Склонируйте репозиторий в удобную для вас директорию на компьютере:
git clone [email protected]:CuriousGecko/vk-tg-connector.git
cd vk-tg-connector/infra
-
Наполните файл env.docker своими данными.
ВАЖНО: держите ваши токены и пароли в секрете, нигде не публикуйте их и никому не пересылайте!
VK_ID # ваш id в Vk.
VK_ACCESS_TOKEN # укажите токен приложения Vk, которому вы разрешили доступ к личным сообщениям, списку друзей и прочим данным. Можно воспользоваться готовым приложением. Подтвердите предоставление доступа, в открывшейся вкладке скопируйте из адресной строки ссылку целиком, либо значение параметра access_token.
TELEGRAM_CHAT_ID # ваш id в Telegram. Можно узнать у @userinfobot.
TELEGRAM_BOT_TOKEN # токен вашего бота, выданный @BotFather.
LOG_LEVEL # установите уровень логирования (DEBUG, INFO, WARNING, ERROR или CRITICAL)
READ_NOTIFICATION_MODE # в каком виде придет уведомление, когда пользователь Vk прочитает ваше сообщение:
2 # в виде сообщения в чате. 1 # на вашем сообщении в Telegram будет установлена реакция 👀. 0 # уведомления отключены.
POSTGRES_USER # укажите желаемое имя пользователя в БД PostgreSQL.
POSTGRES_PASSWORD # придумайте надежный пароль.
POSTGRES_DB # название БД.
POSTGRES_PORT # измените порт, если потребуется. Также необходимо будет внести изменения в docker-compose.yml
-
Запустите приложение:
sudo docker compose -f docker-compose.yml up
-
Создайте бота в Telegram с помощью @BotFather (подробную инструкцию можно найти в интернете).
-
Склонируйте репозиторий в удобную для вас директорию на компьютере:
git clone [email protected]:CuriousGecko/vk-tg-connector.git
cd vk-tg-connector
-
Скопируйте env.dev в корневую директорию проекта и переименуйте в .env:
cp dev/env.dev .env
-
Наполните файл .env своими данными (описание ключевых параметров смотрите в предыдущем разделе). Дополнительные параметры:
USE_POSTGRES # выбор базы данных:
True: использовать PostgreSQL. False: использоваться SQLite (все остальные параметры POSTGRES будут игнорироваться).
POSTGRES_HOST # хост (укажите localhost или ip, где развернута БД. По умолчанию сервис db_postgres для Docker).
POSTGRES_PORT # порт (по умолчанию 5432).
POSTGRES_DB # название БД (по умолчанию chats).
ECHO # вывод SQL-запросов в терминал (True|False, по умолчанию False).
-
Создайте виртуальное окружение:
python -m venv venv
-
Активируйте виртуальное окружение.
Если у вас Windows:
source venv/scripts/activate
Linux/macOS:
source venv/bin/activate
-
Установите зависимости:
pip install -r requirements.txt
-
Запустите приложение:
python connector.py
Для вызова бота отправьте ему команду /start
Важно отметить, что взаимодействовать с ботом может только его владелец.
Для отображения команд бота введите / или нажмите соответсвующую кнопку.
Это приложение предоставляется "как есть", без каких-либо гарантий, явных или подразумеваемых. Автор не несет ответственности за любой ущерб, возникший в результате использования этого приложения.
Пользователь самостоятельно несет ответственность за любые действия, совершенные с использованием этого приложения. Используя это приложение, вы соглашаетесь с этим отказом от ответственности.
Автор оставляет за собой право вносить изменения в приложение без предварительного уведомления.
В проекте используются библиотеки python-telegram-bot и SQLAlchemy. Полный список зависимостей находится в requirements.txt.
Автор проекта: Леонид Цыбульский