Чтобы бот завелся нужен config.cfg
в той же директории что и сам бот, структура этого файла следующая:
[TELEGRAM]
API_TOKEN: <your token here>
Задача Надо реализовать бота-проверяльщика для мониторинга состояния Anchor Protocol в блокчейне Terra. Протокол - средство для получения пассивного дохода путем предоставлениям криптовалютных займов другим участникам. Участие в протоколе - дело рискованное. Поэтому необходимо уметь мониторить:
- ключевую ставку в протоколе
- резервы
Изменения по этим показателям запрашиваются в блокчейне и поступают пользователю в Телеграм-бот. Это очень удобно, потому что многие пользователи Terra сидят в Телеграме.
Сторонние Сервисы Штука для работы с Telegram API, наша самописная штука на Node.js, которая, в свою очередь, работает на Anchor SDK.
Документация https://shibaeff.github.io/anchorBotDocs/
Интерфейс
/apy - add a new APY notifier
/list - list all current notifiers
/anc_price - get the current price of ANC token
/luna_price - get the current price of LUNA
/anc_cap - get the current ANC token market cap
/ust_cap - get the current UST market cap
/ust_price - get the current UST price
/help - show this help
Deploy
local, simple:
- set your configs to config.cfg (telegram), set global LC_ALL
[TELEGRAM]
API_TOKEN = 0xyourToken
[REMOTE]
HOST=0.0.0.0
- run
LC_ALL=ru_RU.UTF8 python3 .
orpython3 .
docker-based, local:
- set your configs to .env
KEY=5241538
LC_ALL=ru_RU.UTF8
- run
docker-compose up
docker-based, remote:
- set your configs to .env
KEY=5241538
LC_ALL=ru_RU.UTF8
- run
deploy.sh [email protected]
- where you want to deploy
Checkup
- flake8, pydocstyle: run
doit run_checks
- tests: 5 tests for functions, located at anchor_binding
- documentation is available here: ; documentation was generated with sphinx (use
doit docs
) - localization: run
doit compile_run
; before deployment setLC_ALL
(english is default, ru_RU.UTF8 should be set in env) - automatization: Dockerfile, docker-compose are available.