Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yepiwt/gatevktg
Общайтесь в ВКонтакте (оффлайн) из телеграма
https://github.com/yepiwt/gatevktg
python telegram-bot vk vkontakte
Last synced: 4 days ago
JSON representation
Общайтесь в ВКонтакте (оффлайн) из телеграма
- Host: GitHub
- URL: https://github.com/yepiwt/gatevktg
- Owner: yepIwt
- Created: 2020-11-17T21:43:56.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2021-05-27T08:32:51.000Z (over 3 years ago)
- Last Synced: 2024-10-31T13:46:05.717Z (about 2 months ago)
- Topics: python, telegram-bot, vk, vkontakte
- Language: Python
- Homepage:
- Size: 121 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Gate из VK в TG
## Немного о проекте
Я решил заняться этим проектом, потому что хотел уйти из ВКонтаке, но при этом не хотел терять кучу знакомых, которых нет в в телеграме. Для того, чтобы общаться с ними и **не быть онлайн** я использую ВКонтакте Сообщества. Новые пользователи не будут писать мне т.к я оффлайн, а старые всегда будут знать где меня найти.## Принцип работы
У меня есть группа ВК, телеграм бот и два чата с ним. Есть [апи вк](https://vk.com/dev), [апи тг](https://core.telegram.org/bots/api#available-methods) и две асинхронные библиотеки: [для вк](https://github.com/fscdev/vkwave) и [для тг](https://github.com/aiogram/aiogram). Здесь необходимо использовать именнно асинхронные библиотеки, потому что необходимо иметь два одновременных поллинга. Два чата в телеграме служат для разделения на текущий чат (несколько людей) и диалог(личная переписка с человеком). Далее в "Использование".## Создание ботов и сообществ
### ВКонтакте
Создайте сообщество и перейдите в `Управление` --> `Работа с API` --> `Создать ключ` --> `Разрешить приложению доступ к сообщениям сообщества` --> `Создать`. Далее `Long Poll API` -> `Включено` и `версия 5.126`. Включаем уведомления о новых сообщениях через Long Poll: `Типы событий` --> Ставим все галочки в блоке `Сообщения`. Также необходимо включить сообщения в сообществе: `Управление` --> `Сообщения` --> `Сообщения сообщества` --> `Включены` --> Сохранить.
Чтобы легко добавлять сообщество в беседы необходимо выполнить следующие действия: `Управление` --> `Настройки` --> `Сообщения` --> `Настройки для бота` --> `Возможность ботов` --> `Включены` --> `Разрешать добавлять сообщество в беседы` --> Сохранить. Теперь появился удобный виджет:
При добавлении бота в беседу необходимо дать ему права на чтение сообщений. Сделать это можно перейдя в информацию о беседе, наведя на стрелочку справа от бота и нажать `Дать доступ ко всей переписке`.
### Телеграм
Перейдите в BotFather и создайте нового бота. Далее создайте две группы с ботом. Пример для ПК: Боковое меню --> `New Group` --> Введите имя группы --> `Next` --> В поиске находите созданного бота через `@` --> `Create`. Обязательно, разрешите боту чтение сообщений в группах.
## Настройка
* Установите необходимые зависимости: `pip install -r requirements.txt`
* Запустите `script.py` и введите новый пароль, токены и айди вк-группы.
Конфиг шифруется т.к в нем лежат токены, которые нельзя никому передавать.
* Зарегистрируйте чаты ботом как тг-чат (далее *чатейшен*) и тг-диалог (*конверсейшен*).
```
/regchat
/regconv
```
## Использование
### Выбор конверсейшена и чатейшена
Я добавил *inline* выбор диалогов и чатов, для диалогов используйте
```
/convs
```
Для чатов
```
/chats
```Когда появляется новое сообщение в вк:
* Если сообщение из текущего чат или диалога, то оно отсылается в *чатейшен* или *конверсейшен*.
* В противном случае *связисту* отправляется уведомление от тг-бота, которое содержит минимальную информацию.Вы можете переключаться между текущими чатами или диалогами с помощью команд выше.
## Поддержка
Сейчас я использую этот проект каждый день (я ушел из вк). Новым фичам быть!