87 lines
2.8 KiB
Markdown
87 lines
2.8 KiB
Markdown
# Протокол Обмена С БВК
|
||
|
||
Документ основан на файле
|
||
`Протокол_обмена_медиакомплекса_и_БВК.pdf`.
|
||
|
||
## Роли
|
||
|
||
- БВК — HTTP-клиент.
|
||
- Медиакомплекс — HTTP-сервер.
|
||
- Адрес по документу: `172.16.16.2:13280`.
|
||
|
||
## Установка Контента
|
||
|
||
```text
|
||
GET /set-content?route=<R>&str=<S>&tpl_name=<T>
|
||
```
|
||
|
||
Параметры передаются в query string и должны быть URL-encoded.
|
||
|
||
| Параметр | Описание |
|
||
| --- | --- |
|
||
| `route` | номер маршрута, от 1 до 3 символов |
|
||
| `str` | текст бегущей строки |
|
||
| `tpl_name` | название шаблона медиаконтента |
|
||
|
||
Текущие значения по умолчанию в библиотеке:
|
||
|
||
| Поле | Лимит по умолчанию |
|
||
| --- | ---: |
|
||
| `route` | 3 символа |
|
||
| `str` | 200 символов |
|
||
| `tpl_name` | 200 символов |
|
||
|
||
Точные лимиты для `str` и `tpl_name` нужно подтвердить у интегратора, потому что
|
||
текстовый слой PDF неоднозначно распознает исходное значение.
|
||
|
||
## Запрос Контента
|
||
|
||
```text
|
||
GET /get-content
|
||
```
|
||
|
||
Ответ:
|
||
|
||
```json
|
||
{
|
||
"route": "<R>",
|
||
"str": "<S>",
|
||
"tpl_name": "<T>"
|
||
}
|
||
```
|
||
|
||
Mila хранит `updated_at` внутри состояния, но HTTP-ответ оставляет строгим и
|
||
отдает только поля, описанные в протоколе.
|
||
|
||
## Коды Ответов
|
||
|
||
| Код | Значение |
|
||
| ---: | --- |
|
||
| 200 | OK |
|
||
| 400 | ошибка в запросе или валидации |
|
||
| 404 | путь не найден |
|
||
| 405 | метод не поддерживается |
|
||
| 500 | внутренняя ошибка сервера |
|
||
| 503 | состояние еще не готово или зависимость недоступна |
|
||
|
||
## Важное Ограничение
|
||
|
||
Протокол БВК передает только:
|
||
|
||
- номер маршрута;
|
||
- текст бегущей строки;
|
||
- название шаблона медиаконтента.
|
||
|
||
Он не передает:
|
||
|
||
- координаты;
|
||
- направление движения;
|
||
- текущий сегмент маршрута;
|
||
- процент прохождения маршрута;
|
||
- ближайшую остановку;
|
||
- ближайшие достопримечательности.
|
||
|
||
Поэтому Mila не должна использоваться как источник геопозиции или route
|
||
progress. Эти данные должны приходить из отдельного источника: NMEA, API,
|
||
симулятора или другого механизма геолокации.
|