Бот в телеграм для чтения ленты вконтакте и RSS лент
http://telegra.ph/telefeedbot-05-12
Бот состоит из трех частей:
- Сервер базы данных boltsrv
- Сервер телеграм tgsrv
- Харвестер postsrv Для хранения опубликованных ссылок используется Redis. Сервер публикаций периодически опрашивает источники, в случае нахождения нового контента отправляет в бота.
- Создайте Telegram бота
- Активируйте бота
@BotFather
- Введите команду
/newbot
- Введите название бота
- Введите имя бота
- По итогу проделанных операций вы получите Token и ссылку на бота.
- Скопируйте ссылку в удобное место.
- Для работы функционала, связанного с VK необходимо получить токен пользователя.
- Перейдите по ссылке
https://vk.com/editapp?act=create
. - Создаем Standalone приложение.
- Получите ID только что созданного приложения.
- Перейдите по ссылке, подставив нужное значение:
https://oauth.vk.com/authorize?client_id=
ID_приложения&scope=groups%2Cwall%2Coffline%2Cphotos%2Cvideos%2Caudios%2Cdocuments&redirect_uri=https://oauth.vk.com/blank.html&display=page&v=5.63&response_type=token
- Авторизуйтесь в приложении.
- Приложение не будет собирать ваши данные, список разрешений приложений при необходимости можно сократить.
- После авторизации произойдёт переадресация на страницу с надписью "Пожалуйста, не копируйте данные из адресной строки для сторонних сайтов. Таким образом Вы можете потерять доступ к Вашему аккаунту." Делаем именно то, что надпись гласит не делать -- найдите в адресной строке параметр
"access_token="
и скопируйте его в удобное место.
- Скопируйте директорию
bin
из репозитория в любую удобную директорию - Запустите
install.sh
в интерактивном режиме - Введите пароль администратора.
- Установщик запросит токен TG. Используйте значения из пункта 1.6 общих действий.
- Установщик запросит токен VK. Используйте значения из пункта 2.6 общих действий.
- По возможности используйте несколько токенов. Просто добавляйте токены с новой строчки в файл
tokens.bot
, который находится в директории бота (по-умолчанию/usr/local/bin/telefeed/tokens.bot
). Чтобы сгенерировать дополнительный токен, проделайте шаги с 2.4 по 2.6.
- Используйте компьютер с GoLang или Docker контейнер
golang:alpine
. - Склонируйте данный репозиторий, например командой
git clone https://github.com/azhinu/Telefeed.git
(требует наличие GIT). - В случае необходимости, отредактируйте конфигурационный файл
params/params.go
. - Замените значения файла
server/telefeed.bot
значением из пункта 1.6. - Замените значение файла
server/vk_tokens.bot
значением из пункта 2.6. - Находясь в корневом каталоге репозитория произведите следующие действия:
mkdir -p /usr/local/bin/telefeed
cp server/{vk_tokens.bot,telefeed.bot} /usr/local/bin/telefeed/
go build -o /usr/local/bin/telefeed/ server/boltsrv.go
go build -o /usr/local/bin/telefeed/ server/tgsrv.go
go build -o /usr/local/bin/telefeed/ server/postsrv.go
cp systemd/telefeed.server /lib/systemd/system/
systemctl daemon-reload
systemctl enable telefeed
- Запустите бота командой
systemctl start telefeed
Гит пулл, докер композ ап, дан. Либо просто стянуть композ файл с поднять его. Крч, сами разберётесь.