Бот для быстрой конвертации валют и криптовалют с использованием Inline Query
Бот позволяет конвертировать валюты fiat => fiat, crypto => fiat, fiat => crypto, crypto => crypto
Note
Ссылка на прод бота: <временно отсутствует>
- Бот построен на Aiogram с использованием Python
- В качестве данных о курсах фиатных валют подтягивается json с курсами ЦБРФ
- В качестве данных о курсах криптовалют делается запрос к API ресурса Cryptocompare
При запуске бот подтягивает актуальные курсы валют, делая запросы к Cryptocompare и cbr-xml-daily, кеширует их на час и хендлит инлайн-запросы с 2 или 3 аргументами вида:
@curbeebot (количество) (исходная валюта) [валюта конвертации]
К примеру:
@CurbeeBot 1 USDВыведет все доступные конвертации из USD
@CurbeeBot 1 ETH RUBВыведет курс для 1 ETH в рублях.
В дальнейшем, каждые 3600 секунд бот будет обновлять актуальные данные и кешировать их до следующего обновления.
Tip
tl;dr скачайте исходники, заполните ADMIN_IDS, BOT_TOKEN и укажите свой API Key Cryptocompare в currency_rates; запустите удобным образом.
Всё просто!
Добавьте необходимые вам тикеры валют в @dp.inline_handler (fiat_symbols, crypto_symbols), а также в CurrencyRates => get_crypto_rates (fsyms и tsyms) (не забудьте проверить, доступны ли эти тикеры в Cryptocompare)
Теперь, при инициализации бота и обновлении курсов будут подтягиваться новые валюты.
Форк -> Новая ветка от prod -> Пулл реквест
Бот распространяется по лицензии WTFPL. Больше деталей в файле LICENSE
За идею - оригинальному боту @ccurbot
За образец файла, который вы сейчас читаете - SecondThundeR