Действующий
Соединение с сервером может быть защищенным или незащищенным. Параметры соединения задаются инициатором соединения в поле пакета NPH_SGC_CONN_REQUEST. В первом случае все пакеты передаются в зашифрованном виде, за исключением пакетов установки соединения:
В случае отказа в установке соединении (на любом этапе) сервер посылает клиенту незашифрованный пакет NPH_RESULT с кодом ошибки.
Поле | Длина | Тип | Описание | Может ли данное поле (значение) изменяться |
2 | unsigned int16 | Версия протокола NDTP (старший номер) | Нет. В поле всегда должно быть установлено значение 1 | |
2 | unsigned int16 | Версия протокола NDTP (младший номер) | Да | |
2 | unsigned int16 | Опции соединения, определяет настройки соединения, которые будут использоваться после установки соединения. (бит2: рассчитывать CRC пакетов (0 - нет, 1 - да) | Нет. Все значения битов кроме второго должны быть установлены в 0. Значение второго бита должно быть установлено в 1 | |
4 | unsigned int32 | Адрес участника соединения, пославшего пакет | Да | |
4 | unsigned int32 | Максимальный размер пакета, который сможет обработать данный участник соединения | Нет. Все значения битов должны быть установлены в 0 |
Так как сервер не устанавливает соединения, то пакет запроса соединения посылают только клиенты (СТС).
Поля и определяют версию протокола, по которой собирается работать клиент. всегда должно быть установлено в 1.
Пакет с массивом данных для аутентификации клиента NPH_SGC_CONN_AUTH_STRING имеет следующий формат поля :
Поле | Длина | Тип | Описание | Может ли данное поле (значение) изменяться |
var | char[] | Массив данных. Длина массива определяется по полю | Да |
- NPH_SND_HISTORY - передача навигационных данных, сохраненных в памяти устройства ("ретроспективы").
Передача навигационных данных, сохраненных в памяти устройства, предназначена для случаев нарушения соединения с сотовой сетью. При потере соединения клиент записывает данные во внутренний буфер. При восстановлении соединения клиент передает данные из внутреннего буфера. На стороне сервера при обработке данных необходимо различать случаи передачи данных в реальном времени и из внутреннего буфера. Для этого введены отдельные типы пакетов для передачи данных в режиме реального времени из внутренней памяти.
Поле | Длина | Тип | Описание | Может ли данное поле (значение) изменяться |
< Type > | 1 | unsigned int8 | Тип ячейки (определяет длину и содержимое). Различаются следующие типы: 0 - основные навигационные данные; 2 - данные от внутренних портов; 8 - данные от датчиков уровня продукта в отсеках. | Да |
< Number > | 1 | unsigned int8 | Определяет навигационный приемник: N=0 - GPS приемник, N=1 - GLONASS приемник. Если Type=13, данное поле определяет номер отсека, к которому подключен уровнемер. | Да |
< Data > | var | сhar[] | Данные от датчика. Структура определяется полем | Да |
Пакеты передачи навигационных данных NPH_SND_HISTORY и NPH_SND_REALTIME имеют следующий формат поля :
Структура поля состоит из ячеек, каждая из которых имеет поля , и переменной длины. Длина каждой ячейки поля определяется полем .
Ячейки следуют строго по увеличению поля . Возможно следование нескольких ячеек с одинаковым полем , но обязательно разными полями , которое определяет номер датчика, от которого направлен данный пакет. Время формирования данных от внешних датчиков определяется пакетом навигационных данных.
Поле | Длина | Тип | Описание | Может ли данное поле (значение) изменяться |
20 | struct | |||
4 | unsigned int32 | Содержит значение реального времени | Да | |
4 | unsigned int32 | Содержит долготу в градусах, умноженную на 10 000 000 | Да | |
4 | unsigned int32 | Содержит широту в градусах, умноженную на 10 000 000 | Да | |
1 | unsigned int8 | bit7 - достоверность навигационных данных (1-достоверны, 0 - нет); bit6 - полушарие долготы (1 - E, 0 - W);bit5 - полушарие широты (1 - N, 0 - S);bit4 - флаг работы от встроенного аккумулятора;bit3 - флаг первоначального включения;bit2 - состояние SOS (1 - SOS, 0 - нет SOS)bit1 - флаг тревожной информации (один из параметров находится в диапазоне тревоги) | Да. Примечание: в настоящей версии bit2 не должен устанавливаться | |
1 | unsigned int8 | Напряжение батареи, 1 бит = 20мВ | Да | |
2 | unsigned int16 | Пройденный путь, м | Да | |
2 | signed int16 | Высота над уровнем моря в метрах (-18000 - +18000) | Да | |
1 | unsigned int8 | Количество видимых спутников | Да | |
1 | unsigned int8 | PDOP - Снижение точности по местоположению. Термин, использующийся в области систем глобального позиционирования для параметрического описания геометрического взаиморасположения спутников относительно антенны приёмника. Этот параметр должен передаваться на сервер для дальнейшего использования | Да |