【问题标题】:Watson-IoT event listener in pythonPython 中的 Watson-IoT 事件侦听器
【发布时间】:2018-07-30 13:12:34
【问题描述】:

我正在尝试在 python 中创建一个侦听器,当事件发生时自动从 Watson-IoT 中的设备检索事件。当一个事件发生时,我想调用一个特定的函数。

我已通读文档和 API 规范,但找不到任何东西。

有没有办法做到这一点?

【问题讨论】:

  • 我也有同样的问题,一年前试过了,真的找不到解决办法,但是真的很需要这个。

标签: python ibm-cloud listener iot watson-iot


【解决方案1】:

查看 Python 客户端库:https://github.com/ibm-watson-iot/iot-python

这个特定示例应该非常有用,您无需修改​​即可运行它并查看响应事件和命令而调用的函数:https://github.com/ibm-watson-iot/iot-python/tree/master/samples/simpleApp

与样本最相关的部分是:

  1. creation of the callback handler - 当收到事件时,将调用此函数,允许您对该事件采取行动:

    def myEventCallback(event):
        print("%-33s%-30s%s" % (event.timestamp.isoformat(), event.device, event.event + ": " + json.dumps(event.data)))
    
  2. 客户端中的registration of the callback handler,它指示客户端为所有传入事件调用您的方法:

    client.deviceEventCallback = myEventCallback
    
  3. subscription to events,您可以限定订阅范围以避免处理不必要的事件,或者使用默认值订阅来自所有设备的所有事件:

    eventsMid = client.subscribeToDeviceEvents(deviceType, deviceId, event)
    

【讨论】:

    猜你喜欢
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 2020-09-06
    • 2021-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多