Здесь все, что касается протокола MQTT
Здравствуйте! Подскажите, пожалуйста, почему топики созданные в RIC доступны только для публикации в других MQTT приложениях?
(контроллер передаёт показания датчика в топик на платформе Rightech, здесь все изменения отображаются, а в стороннем приложении - нет. При этом публикации с другого приложения в этот топик работают - могу отправить туда произвольное показание в числовом виде). Что я делаю не так?
Добрый день!
А стороннее приложение как подключено к RIC?
Если я правильно понимаю ваш кейс, то нужно чтобы ваш контроллер был подключенн к платформе (работает). Внутри объекта в платформе данные попадают только от этого конкретного подключения.
Если вы хотите в тот же объект отобразить данные то в объекте это сделать не получится. Как вариант вы можете создать дашборд и вывести туда данные от 2х обеъктов. Один ваш контроллер - второй ваше приложение.
вариант2: в теории можно подписаться через механизм подписок MQTT вашим контроллером на данные объекта-приложениz и когда на контроллере вы их получите, то можете их отправить в платформу уже с контроллера. Немного не очевидно, но работать будет
Спасибо за ответ! стороннее приложение подключено по протоколу TCP. Внутри объекта данные принимаются с контроллера, а через стороннее приложение я хочу видеть показания параллельно платформе,но не вижу… Если я правильно понимаю, то - подписавшись с стороннего приложения на тот же самый топик с данными на платформе, я должен видеть их и в стороннем приложении, но могу только отправлять и на платформе это отображается. (Моя цель - подписаться и видеть то,что отправляет контроллер)
Здравствуйте, хочу синхронизировать между собой два устройства, но не понимаю как можно реализовать передачу пакета данных между моделями на сервере, подскажите, пожалуйста
Добрый день!
Если у вас MQTT, я бы рекомендовал использовать механизм подписок встроенный в сам протокол MQTT. https://rightech.io/ru/developers/faq/mqtt#mqtt. Т.е. подписавшись на топик на одном устройстве вы будете получать данные другого с тем же топиком.
Через сервер это можно сделать через автоматы, но возможно это не то решение что вам нужно. Автоматы помогут, например, если нужно из-за данных одного объекта отправить команду на другой. Если сделать автомат, который будет работать сразу с несколькими объектами вы сможете передавать данные одного устройства на другое. через конструкцию object[0].state
для первого объекта в автомате и object[1].state...
для второго. Работает аналогично как описано в документации - https://rightech.io/ru/developers/logic/create#формирование-сообщений