ЛР3 "Изучение сетевых протоколов"
Цель работы
Реализация программного обеспечения на языке программирования 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 |
Результаты работы продемонстрировать преподавателю
Отчет
В отчете представить скриншоты и описание действий по пунктам, представленным в задании
Отчет по ГОСТу