MQTT
Драйвер устройства MQTT позволяет AggreGate Server подключаться к брокеру MQTT и подписываться на темы (topics). Полученные сообщения представлены как события устройства.
![]() | MQTT – протокол обмена сообщениями стандарта ISO типа "издатель/подписчик" , используемый в добавок к протоколу TCP/IP. |
Информация о драйвере
ID плагина драйвера: | com.tibbo.linkserver.plugin.device.mqtt |
Общие настройки
Не определены.
Настройки уровня пользователя
Не определены.
Свойства device
Настройки подключения
Настройки подключения определяют, как AggreGate Server взаимодействует с MQTT брокером. Данные настройки доступны через опцию Редактировать свойства аккаунта устройства контекста Device. Доступны следующие свойства подключения:
Настройка | Описание |
Метод подключения | Определяет, как устройство устанавливает соединение с брокером MQTT. Возможны следующие варианты:
|
Адрес брокера | IP адрес или имя хоста брокера MQTT. |
Порт | Укажите порт, на котором слушает брокер MQTT. Если порт не указан, устройство попытается подключиться к брокеру, используя порт по умолчанию, подходящий для выбранного Метода подключения. |
Темы | Таблица тем и параметров Качества услуг (QoS (Quality of Service)). Темы поддерживают подстановочные знаки. Параметр QoS может быть выставлен на 0, 1 или 2.
|
Формат данных сообщения | Тип данных поля Данные сообщения событий Message. Возможные типы:
|
ID клиента | Идентификатор каждого клиента, устанавливающего соединение с сервером. ID клиента должен быть уникальным для всех клиентов. Используется сервером для хранения данных, которые связаны с клиентом, поэтому важно, чтобы этот параметр оставался неизменным, когда запрашивается соединение с сервером в течение подписок или достоверных сообщений. По умолчанию ID клиента генерируется автоматически. |
Чистая сессия | Устанавливает, должен ли клиент и сервер запоминать состояние при перезапуске и переподключении. Если уставлено на false, и клиент и сервер будут сохранять состояние при перезагрузке клиента, сервера и переподключении. Доставка сообщений будет надежной и отвечать указанному QoS, даже при перезапуске клиента, сервера или соединения. Если уставлено на true, клиент и сервер не сохранят состояние при перезагрузке клиента, сервера или подключения. |
Интервал Keep Alive | Это значение, измеряемое в секундах, определяет максимумальный временной интервал между отправленными или полученными сообщениями. Это позволяет клиенту определить, что сервер больше недоступен, без необходимости ждать таймаута TCP/IP. Клиент обеспечит то, что по крайней мере одно сообщение находится в сети в пределах каждого интервала keep alive. При отсутствии сообщения с данными в пределах временного периода, клиент посылает очень маленькое "пинг" сообщение, которое будет подтверждено сервером. Значение 0 отменяет обработку параметра в клиенте. |
Таймаут подключения | Устанавливает значение таймаута подключения. Это значение, измеряемое в секундах, определяет максимальный временной интервал, в течение которого клиент будет ожидать установления подключения к серверу MQTT. Таймаут по умолчанию – 30 секунд. Значение 0 отменяет обработку таймаута. Это означает, что клиент будет ждать до тех пор, пока подключение не установится или будет отклонено. |
Политика доверия сертификатов | Определяет способ проверки сертификатов, предоставленных через соединение SSL/TLS. |
Сертификат | Псевдоним сертификата SSL/TLS для использования при аутентификации. Сертификат с этим псевдонимом должен существовать в хранилище клиентских сертификатов сервера. |
Имя пользователя | Имя пользователя, которое используется для подключения к брокеру MQTT. |
Пароль | Пароль, который используется для подключения к брокеру MQTT. |
Включить офлайн буфер | Активирует использование офлайнового буфера сообщений для неподтвержденных сообщений. |
Размер буфера | Максимальное число сообщений, которые могут храниться в буфере. |
Удалять наиболее старые сообщения | Определяет, будут ли удаляться наиболее старые сообщения, когда количество сообщений в буфере достигает максимума. Если это значение false, будут игнорироваться сообщения сверх установленного максимума. |
Активы device
Драйвер не поддерживает активы.
Настройки device
Драйвер устройства MQTT создает одну переменную настроек Device:
Имя переменной | Описание переменной | Комментарии |
messageCount | Количество сообщений | Количество полученных сообщений. Значение обновляется после каждой синхронизации. При переподключении количество становится снова 0. |
clientID | ID клиента | Идентификатор клиента, связанный с этим устройством. |
Операции device
Опубликовать текстовое сообщение
Отправить текстовое сообщение брокеру.
У формата функции параметров входа есть следующие поля:
Имя | Тип | Описание |
Topic | Строка | Тема, относительно которой будет опубликовано сообщение. |
QoS | Целочисленное | Количество уровня сервиса. Валидные значения 0, 1 или 2. |
Retained | Булевое | Должны сохраняться или нет сообщения брокером. |
Message | Строка | Текстовое сообщение для отправки. |
У функций нет параметров выхода.
Опубликовать двоичное сообщение
Отправьте брокеру двоичное сообщение.
Формат входных параметров функции имеет следующие поля:
Имя | Тип | Описание |
Topic | Строка | Тема, относительно которой будет опубликовано сообщение. |
QoS | Целочисленное | Количество уровня сервиса. Валидные значения 0, 1 или 2. |
Retained | Булевое | Следует ли сохранять сообщение у брокера. |
Message | Блок данных | Двоичное сообщение с данными для отправки. |
У функций нет параметров выхода.
События device
Сообщение
Запускается, когда AggreGate Server получает входящее сообщение MQTT.
Имя события | message |
Записи: | 1 |
Формат записи:
Имя поля | Тип поля | Заметки |
topic | String | Тема, относительно которой должно быть опубликовано сообщение. |
message | String | Текст сообщения, если сообщение было опубликовано в виде строки. |
messageData | Data Block | Блок данных сообщения, если сообщение было опубликовано в виде двоичных данных. |
id | String | Идентификатор сообщения. |
qos | Integer | QoS, связанное с сообщением. |
retained | Boolean | Было ли сообщение сохранено брокером. |
duplicate | Boolean | Является ли это сообщение дубликатом. |
Подключение
Данный драйвер переводит устройство в режим онлайн, если было установлено соединение с брокером MQTT.
Was this page helpful?
