Цель работы

Реализация программного обеспечения на языке программирования Python для взаимодействия с сетевыми протоколами

Задание

Необходимо написать скрипт на языке программирования Python для решения задач приведенных ниже.

Условия:

  • использовать функции/ООП
  • комментарии

Задачи:

  • ознакомиться с описанием REST API сервиса “Data provider” используя документацию Swagger
    • для перехода к документации узнать ip-адрес-сервера у преподавателя
    • перейти по адресу в браузере http://ip-адрес-сервера/swagger/
  • по REST API с сервисом “Data provider” провести авторизацию и получить токен доступа
  • по REST API с сервисом “Data provider” при помощи токена получать данные с группы API “Данные” и отправлять их на сервер MQTT
    • пример структуры сообщения представлен ниже, необходимо определить состояние (если не H, HH, L, LL то отправлять N)
    • выполнять в цикле раз в 10 секунд
    • адрес для подключения к mqtt ip-адрес-сервера:1883
  • также необходимо параллельно подписаться на топик RESULT/
  • при успешном выполнении задания в топик будет автоматически отправлено с подтверждением об усешности выполненной работы

Схема взаимодействия

Структура сообщения json для mqtt:

{
    "student": "Иванов Иван Иванович",
    "university_number": 182551,
    "group": "БАГ-40",
    "parameters": [
        {"name":"temperature", "value": 100, "state": "H"},
        {"name":"pressure", "value": 100, "state": "H"}
    ]
}

Определение состояния state:

Параметр LL L N H HH
Давление, p p<110 110<=p<130 130<=p<=170 170<p<=190 p>190
Температура, t t<10 10<=t<30 30<=t<=70 70<t<=90 t>90

Результаты работы продемонстрировать преподавателю

Отчет

В отчете представить скриншоты и описание действий по пунктам, представленным в задании. Отчет по ГОСТу

Защита