При удаленной работе в эфире иногда возникает желание подглядеть — а где сейчас вещает интересующий тебя DX. Открывать dx-кластер в браузере или запускать приложение на компьютере, затем искать с помощью фильтров нужный позывной — долго. Для цели оперативной проверки самых свежих спотов отлично подойдет Telegram бот.
Telegram бот DX_Alarm_bot написан на python и размещен на том же сервере, что и блог, который вы читаете. Его функциональность очень проста — при отправке команды /get <позывной>
бот присылает в ответ споты за последние 15 минут, полученные с сайта pskreporter. Это выглядит примерно так:
Исходный код бота выложен на GitHub. Несколько слов о реализации.
Pskreporter умеет отдавать споты в adif формате за выбранный промежуток времени по конкретному позывному. Это делается запросом:
https://pskreporter.info/cgi-bin/pskdata.pl?&adif=1&days=0.01&senderCallsign=CALL
После получения файла adif происходит его обработка небольшим скриптом на языке Python. В результате формируется таблица с датой, временем, частотой, позывным и видом модуляции. Именно эта таблица и отправляется пользователю в ответ на /get запрос.
Исходные тексты бота можно изменять по своему желанию, для его работы необходимо просто клонировать репозиторий с GitHub и добавить в корень проекта файл с именем .env
содержащий ваш токен бота. Все необходимые библиотеки установлены в виртуальном окружении.
Пока что бот присылает в основном FT8 споты. В качестве развития проекта можно добавить в него работу с сервисом reversebeacon.net и получать телеграфные споты напрямую от скиммеров со всего мира.
P.S.: Для тех, кто заинтересуется темой создания Telegram ботов, есть хорошая обучающая книга.
Вот чего бы хотелось — указания своей геопозиции и запрос спотов из указанного радиуса от неё. Так-то неплохо, но чем поможет спот из Южной Америки мне в Питере? 🙂
73! R1BLH
Прохождение в своем регионе каждый плюс-минус представляет. Увидев спот днем на 160м, естественно, даже пытаться не стоит. Зато сразу понятно, что там, где dx нужен, его пока нет.
Антон, привет!
Проблема в том, что reversebeacon не отдает данные по api )))
Приходится брать в руки что-то вроде beautiful soup или иной парсер и добывать споты с таблицы напрямую )))
У меня есть заготовка, если нужно для старта — напиши скину код, чуток времени сэкономишь ))) там нужно будет только доделать часть, которая отделит новые споты от уже прочитанных, т.к. они добавляются в таблицу динамически.
Спасибо! Скинь в Телеграме — https://t.me/ra0sms