Не удается вызвать message.topic в клиенте MQTT?

Ваш пример ссылается на загрузку 1.5.X, которая использует Jedis, по умолчанию lettuce используется в Boot 2.0, если вы хотите использовать Jedis, вам нужно вручную добавить зависимость. Кроме того, вы можете видеть, что Jedis не находится в вашем пути к классу, а lettuce есть.

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
</dependency>

Возможно, вам потребуется указать версию зависимостей. В качестве альтернативы вы можете просто настроить то, что вы пытаетесь с помощью lettuce.

0
задан Philipp 18 January 2019 в 20:24
поделиться

1 ответ

Paho-клиент имеет встроенный блок try / wait, который оборачивает вызов на on_message, чтобы предотвратить сбой сетевого потока из-за плохого поведения обратных вызовов.

Если вы хотите знать, где происходит сбой вашего кода, вы можете добавить свою собственную попытку / ожидание во внутреннюю часть функции on_message, чтобы показать проблему. Что-то вроде:

def on_message(client, userdata, msg):
    try:
        msg = msg.payload.decode()
        print("topic:", msg.topic)
        print("Received Message:      {}".format(msg))
    expect Exception, e:
        print(e)
0
ответ дан hardillb 18 January 2019 в 20:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: