Бот, пересылающий записи из групп ВК в канал/чат/ЛС в Telegram.
pip3 install -U TG-AutoPoster
Внимание! Если у вас уже есть файл конфигурации в формате INI от старой версии бота он будет автоматически конвертирован в новый формат.
- Создайте файл config.yaml, скопируйте в него содержимое файла config.yaml.example и выполните настройку ключа vk
Параметр | Описание |
---|---|
login | Логин ВК |
pass | Пароль ВК |
token (необязательно) | Рекомендуется к использованию. Cервисный ключ доступа или ключ доступа пользователя (подробнее). Если он задан, то логин и пароль не используются. При его использовании не будут доступны аудиозаписи (при использовании сервисного ключа доступа также не будут доступны истории). Получить ключ доступа пользователя можно с помощью этого сервиса. |
- Получите ваши api_id и api_hash на https://my.telegram.org/apps и настройте ключ telegram (подробнее об Telegram API Keys здесь)
Параметр | Описание |
---|---|
api_id | App api_id |
api_hash | App api_hash |
bot_token | Токен Telegram бота, полученный у @BotFather |
- Если необходимо, настройте использование SOCKS прокси, добавив ключ proxy со следующим содержимым:
Параметр | Возможные значения | Описание |
---|---|---|
enabled | true, false | Использовать ли прокси |
hostname | IP адрес (или домен) прокси сервера | |
port | Порт прокси сервера | |
username (необязательно) | Имя пользователя | |
password (необязательно) | Пароль |
- Замените название ключа с domain1 на домен группы ВК (или на ссылку группы) и выполните соответствующую настройку этого ключа.
Параметр | Описание |
---|---|
channel | Список ID каналов/чатов в Telegram, разделенных пробелом, в которые отправлять посты из групп ВК |
last_id (необязательно) | ID последнего отправленного поста. Если параметр отсутствует, он будет добавлен автоматически со значением 0 |
pinned_id (необязательно) | ID закреплённого поста. |
last_story_id (необязательно) | ID последней отправленной истории. |
- Для изменения настроек автопостинга добавьте ключ settings хотя бы с одним из следующих параметров
Параметр | Возможные значения | Описание |
---|---|---|
sign_posts | true, false | Указывать ли автора поста (если это возможно) и ссылку на оригинальный пост. По умолчанию: true |
send_reposts | false, post_only, true | Отправлять ли репосты? Подробнее в config.yaml.example. По умолчанию отправка репостов отключена. |
send_stories | false, true | Отправлять ли истории? По умолчанию: false |
what_to_send | all, text, link, photo, doc, video, music, polls | Какие типы вложений отправлять. Подробнее в config.yaml.example. По умолчанию отправляются все вложения. |
stop_list | Абсолютный путь к файлу, содержащий стоп-слова (в файле должно быть по одному слову на каждой строке). Если вы не хотите использовать стоп-слова удалите этот параметр из файла конфигурации | |
blacklist | Абсолютный путь к файлу, содержащий слова, которые будут удалены из текста отправляемого поста. Поддерживаются регулярные выражения. | |
disable_notification | true, false | Отправляет сообщения молча. Пользователи получат уведомление без звука. По умолчанию: false |
disable_web_page_preview | true, false | Отключить предпросмотр ссылок в сообщениях. По умолчанию: true |
posts_count | число от 1 до 100 | Количество отправляемых ботом новых постов за раз. По умолчанию 11. |
Все необязательные параметры ключа settings могут быть заданы индивидуально для каждой группы
Также автопостинг можно настраивать через чат с ботом. Подробнее можно узнать, отправив боту команду /help
Для работы с несколькими группами добавьте новые ключи в соответствии с пунктом № 4
- Для запуска используйте TG_AutoPoster.sh или команду
python3 -m TG_AutoPoster
- Активируйте бота командой /start
Для доступных параметров командой строки используйте bash TG_AutoPoster.sh --help
или python3 -m TG_AutoPoster --help
Дополнительно: Использование Docker контейнера
Отчеты об ошибках и предложения отправлять в:
- GitHub Issues
- Telegram: @QwertyAdrian
Для пожертвований на развитие проекта: