有没有一种方法可以对Adafruit MQTT python客户端订阅使用多个提要?

时间:2018-07-03 03:48:35

标签: python mqtt feeds adafruit

我正在使用Adafruit IO MQTT python客户端基于提要执行代码。我希望一个供稿执行一个功能,而另一个供另一个执行。我看过 this 并四处搜寻,但没有发现任何内容可显示如何订阅多个供稿。

2 个答案:

答案 0 :(得分:0)

您可以简单地多次拨打subscribe,如下所示:

for feed_id in ['feed1', 'feed2']:
  client.subscribe(feed_id)

这是MQTT协议的基本功能。您的on_message_处理程序将收到供稿ID作为参数。

答案 1 :(得分:0)

您必须自己构建它

只需在on_message回调中添加if语句,即可根据主题(feed_id)选择其他函数,例如

def message(client, feed_id, payload, retain):
    if feed_id == 'foo/bar':
       #call foo function
       foo(paylaod)
    elif feed_id == 'bar/foo':
       #call bar function
       bar(payload)