Skip to content

tromv3/airspace_locator_bot

Repository files navigation

AirSpaceLocator Bot

Бот разработан, чтобы обеспечить простой способ получения данных о местоположении воздушных судов в режиме реального времени.

Используемые технологии

  • Python 3.

Модули (основные)

  • pyTelegramBotAPI.
  • basemap.
  • dadata.
  • peewee

Функционал

  • Получение данных с AirLabs.
  • Фильтрация полученных данных(по высоте, типу, принадлежности).
  • Отрисовка полученных данных.
  • Получение подробной информации о воздушном судне с SKYbrary.

TODO

  • Легенда карты.
  • Создание отчетного файла.
  • Парсинг информации с SKYbrary.

Установка и запуск

Установка

  • Клонировать Git репозиторий.
git clone https://github.com/tromv3/airspace_locator_bot.git
  • Сменить директорию.
cd python_basic_diploma
  • Установить необходимые модули с помощью pip.
pip install -r requirements.txt

Конфигурация

Необходимо внести значения переменных в файл с расширением .ENV (файл конфигурации).

Переменные в файле конфигурации

  • BOT_TOKEN - токен Telegram (BotFather).
  • AIR_LABS_API_KEY - API токен AirLabs.
  • DADATA_TOKEN - токен DaData (для использования геокодера).
  • DADATA_SECRET_KEY - секретный ключ DaData (для использования геокодера).

Запуск бота

python main.py 

Интерфейс пользователя

Основные команды

Команда Описание
/start Запуск бота
/cancel Возвращение в главное меню
/help Вывод справки по основным командам
/history Вывод последних 50 запросов пользователя (значение задается переменной count_req в файле config.py)

Основное меню

Команда Описание
Изменить имя Изменение имени пользователя
Изменить местоположение Изменение местоположения
Получить данные о воздушных судах Получении информации с AirLabs
Подробно о воздушном судне Вывод подробной информации о воздушном судне с SKYbrary
Отрисовать полученные данные Отрисовка полученной информации на карте

Меню фильтров

Команда Описание
Фильтр по высоте (max) Фильтр по максимальной высоте
Фильтр по высоте (min) Фильтр по минимальной высоте
Фильтр по типу Фильтр по типу судна
Фильтр по принадлежности Фильтр по принадлежности (стране) судна
Показать воздушные суда Вывод информации пользователю

Меню местоположение

Команда Описание
Ввести адрес Ввести адрес и получить координаты с помощью геодекодера DaData
Ввести координаты Ввод координат вручную
Отправить свое местоположение Ввод местоположению с помощью геолокации

Скриншоты интерфейса

Screenshot_1.png

Screenshot_2.png

Screenshot_3.png

Screenshot_4.png

Screenshot_5.png

Screenshot_6.png

Screenshot_7.jpg

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages