Для каждого подключения MQTT требуется уникальный идентификатор клиента. Благодаря этому уникальному идентификатору клиента брокер может узнать, когда клиент повторно подключится и может закрыть старое потенциально полуоткрытое TCP-соединение для клиента. Кроме того, брокер MQTT может проводить постоянный сеанс для клиентов MQTT, если они этого желают (cleanSession = false на CONNECT). Если вы отключите и снова подключитесь к одному и тому же идентификатору клиента, вы получите все сообщения для своих подписок, которые вы, возможно, пропустили, и брокер знает ваши старые подписки для этого идентификатора клиента.
Спасибо за информацию. но когда я пытаюсь использовать класс IMqqttClient class r IMqtttAsynchClient, нет никакого способа указать его идентификатор clientID или IP. я запустил интернет для любого примера для вышеупомянутых классов, чтобы увидеть, как можно указать ID и IP, но таких примеров нет. какие-либо рекомендации или рекомендации? – rmaik
Это интерфейсы и не могут быть созданы. –
@AlessandroDaRugna может быть, это может быть квест для вас :) http://stackoverflow.com/questions/27174271/what-is-the-clientid-needed-for – rmaik