Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/azhinu/telefeed

Telegram RSS/VK Reader
https://github.com/azhinu/telefeed

rss-reader telegram-bot vk-api

Last synced: about 2 months ago
JSON representation

Telegram RSS/VK Reader

Awesome Lists containing this project

README

        

# Оно сломалось. Мб когда-нибудь починится

# Telefeed

Бот в телеграм для чтения ленты вконтакте и RSS лент

# Описание

http://telegra.ph/telefeedbot-05-12

# Как это работает

Бот состоит из трех частей:
- Сервер базы данных boltsrv
- Сервер телеграм tgsrv
- Харвестер postsrv
Для хранения опубликованных ссылок используется Redis.
Сервер публикаций периодически опрашивает источники, в случае нахождения нового контента отправляет в бота.

# Установка

### Общие действия

1. Создайте Telegram бота
1. Активируйте бота `@BotFather`
2. Введите команду `/newbot`
3. Введите название бота
4. Введите имя бота
5. По итогу проделанных операций вы получите Token и ссылку на бота.
6. Скопируйте ссылку в удобное место.
2. Для работы функционала, связанного с VK необходимо получить токен пользователя.
1. Перейдите по ссылке `https://vk.com/editapp?act=create`.
2. Создаем Standalone приложение.
3. Получите ID только что созданного приложения.
4. Перейдите по ссылке, подставив нужное значение: `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`
5. Авторизуйтесь в приложении.
* Приложение не будет собирать ваши данные, список разрешений приложений при необходимости можно сократить.
6. После авторизации произойдёт переадресация на страницу с надписью "Пожалуйста, не копируйте данные из адресной строки для сторонних сайтов. Таким образом Вы можете потерять доступ к Вашему аккаунту." Делаем именно то, что надпись гласит не делать -- найдите в адресной строке параметр `"access_token="` и скопируйте его в удобное место.

### Установка бинарных файлов для Debian-based AMD64

1. Скопируйте директорию `bin` из репозитория в любую удобную директорию
2. Запустите `install.sh` в интерактивном режиме
3. Введите пароль администратора.
4. Установщик запросит токен TG. Используйте значения из пункта 1.6 общих действий.
5. Установщик запросит токен VK. Используйте значения из пункта 2.6 общих действий.
* По возможности используйте несколько токенов. Просто добавляйте токены с новой строчки в файл `tokens.bot`, который находится в директории бота (по-умолчанию `/usr/local/bin/telefeed/tokens.bot`). Чтобы сгенерировать дополнительный токен, проделайте шаги с 2.4 по 2.6.

### Установка из исходников

1. Используйте компьютер с GoLang или Docker контейнер `golang:alpine`.
2. Склонируйте данный репозиторий, например командой `git clone https://github.com/azhinu/Telefeed.git` (требует наличие GIT).
3. В случае необходимости, отредактируйте конфигурационный файл `params/params.go`.
4. Замените значения файла `server/telefeed.bot` значением из пункта 1.6.
5. Замените значение файла `server/vk_tokens.bot`значением из пункта 2.6.
6. Находясь в корневом каталоге репозитория произведите следующие действия:
```shell
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
```
7. Запустите бота командой `systemctl start telefeed`

### Docker

Гит пулл, докер композ ап, дан.
Либо просто стянуть композ файл с поднять его. Крч, сами разберётесь.