Невозможно настроить идентификатор клиента MQTT с помощью библиотеки Adafruit MQTT

Я использую созданную Adafruit библиотеку MQTT, расположенную здесь, и сама библиотека прекрасно работает, однако Я обнаружил, что не могу изменить идентификатор клиента или настроить PINGRESP. Код, который я сейчас использую, можно увидеть ниже:

WiFiClient client;
Adafruit_MQTT_Client mqtt(&client, "10.116.10.191", 1883);

Когда клиент подключается к брокеру MQTT, идентификатор клиента превращается в случайную строку букв, цифр и символов, как показано ниже:

1534023607: Client ]7llG5K6J4=^tPHJHqgTUFc<Ep^m3vJ`4vSL2oB<cO[^_chw[GBp]v3smagpOqWS has exceeded timeout, disconnecting.
1534023608: New connection from 10.116.7.21 on port 1883.
1534023608: New client connected from 10.116.7.21 as ^k_aQq];7xigbIUD`htDex>IPfAoNX:4JiUkR9vY9WG[`m`GL[KqZJAk7RaEkkIu (c1, k300).
1534023608: Sending CONNACK to ^k_aQq];7xigbIUD`htDex>IPfAoNX:4JiUkR9vY9WG[`m`GL[KqZJAk7RaEkkIu (0)
1534023608: Received SUBSCRIBE from ^k_aQq];7xigbIUD`htDex>IPfAoNX:4JiUkR9vY9WG[`m`GL[KqZJAk7RaEkkIu
1534023608:     quantity (QoS 0)
1534023608: ^k_aQq];7xigbIUD`htDex>IPfAoNX:4JiUkR9vY9WG[`m`GL[KqZJAk7RaEkkIu 0 quantity
1534023608: Sending SUBACK to ^k_aQq];7xigbIUD`htDex>IPfAoNX:4JiUkR9vY9WG[`m`GL[KqZJAk7RaEkkIu

По прошествии определенного времени клиент превышает время ожидания и отключается. Будем очень признательны за любые советы по преодолению этого препятствия.


person HobarGJ    schedule 11.08.2018    source источник
comment
Не используйте скриншоты для текста. Просто включите текст в сам вопрос.   -  person Håken Lid    schedule 12.08.2018


Ответы (1)


Глядя на источник для библиотеки, подразумевается, что вы должны передать clientid в качестве аргумента конструктору клиента после порта брокера.

 Adafruit_MQTT_Client(Client *client, const char *server, uint16_t port,
   const char *cid, const char *user, const char *pass):

Из здесь

e.g.

WiFiClient client;
Adafruit_MQTT_Client mqtt(&client, "10.116.10.191", 1883, "clientfoo");

Также смотрите этот блог сообщение от Adafruit

person hardillb    schedule 11.08.2018
comment
Это было результатом добавления clientID (Rear-Controller) после порта MQTT Broker # - Новый клиент подключен с 10.116.7.21 как GFONMktFXFSG1rARE@JWCRv@P^XwLifdo‹rCg]YFs4Ndf_›2_XIsjFsAtS08Cf\: (c1, k300, uRear-контроллер). - person HobarGJ; 12.08.2018