更新时间:2025-01-23 08:32:09下载pdf
云项目中提供消息订阅功能,当项目中的设备相关状态发生变化时(如设备注册、设备数据上报、设备离线等),开放消息平台通过 Pulsar 主动推送各种事件数据给外部合作伙伴,以满足合作伙伴对消息实时性和消息持久化的要求。
目前涂鸦基于开源的 Pulsar 系统进行了定制改进,并提供 Python 版本 Pulsar SDK。
本文通过使用 Python 开发工具 PyCharm 进行消息接收实践。
Github clone:PyCharm
修改示例代码 consumer_example.py
中的配置信息:
ACCESS_ID
:填写云开发平台中 API 授权密钥的 Access ID/Client ID。ACCESS_KEY
:填写云开发平台中 API 授权密钥的 Access Secret/Client Secret。PULSAR_SERVER_URL
:根据开通消息订阅的数据中心进行选择。
MQ_ENV
:消息订阅通道
MQ_ENV_PROD
:正式环境MQ_ENV_TEST
:测试环境在开发工具 PyCharm 中,选中 consumer_example.py
文件,右键单击,并执行 Run。
通过 App 端操作设备。如打开测试设备的开关,或者调整设备其他参数。
在开发工具 PyCharm 上自动获取到消息推送展示。
数据展示,字段含义请参考 消息类型 。
接收的消息
received message origin payload: {"data":"5dBU8WiRS1+zydoFTtaVKuL+DnRGSSj1VvrRH4pN1kvawIq2mG/fZTd9TCimqpGPzQtf9wFhkSQ6IBE2P3yYPj6CrsqFEQvL9PFeHpD9Z9KadznFwSQX6sgRa2f2ANFHDTC8pZ0+fLnWge7AqPG4LdxobOPC7kNpk92hmXjB0PEOZ2Du4MbP4NSN49QcJ4MPoKVOkbMxkxYUbynUW5fQ6FgHYZYcTUp+a0vF/oS3VL3jGH5tallpI10RZxofJ72f","protocol":4,"pv":"2.0","sign":"b8a548131304b49b524fca193f9ffd63","t":1630979005761}
解析 payload
数据
decryptContentData={"dataId":"fe3a7d80-0f7c-11ec-8511-024283c73485","devId":"vdev******86991","productKey":"na****jz","status":[{"1":"true","code":"switch_led","t":1630979005725,"value":true}]}
payload
数据解析方法参见 数据签名和解密。SDK 中已封装 payload
解密方法。
接收的消息
received message origin payload: {"data":"z/xrNsO26LmxprqP0OaMSXdSXy2jAEiz0blUCnlUZe7awIq2mG/fZTd9TCimqpGPzQtf9wFhkSQ6IBE2P3yYPj6CrsqFEQvL9PFeHpD9Z9KadznFwSQX6sgRa2f2ANFHDTC8pZ0+fLnWge7AqPG4LSlV4VEv7NtZ0T9wsM0xsQe+Gd3lcDRjtoWkeHTaIhvNzw8Y01IymwbZVRlVvpO3bLeIRohJoYtnI0lpflt6tcoKE7H3tlNNyLhx/y903ldy7z0o3iD5KROUiGtsAvdO0WfAsVxl87x4EbH6A7FLPOR2vyfiUckMP3+KlQR/CA6UtuuExvaaSNCeSx8NL2Rpmw==","protocol":4,"pv":"2.0","sign":"7ce23e6fb11386020cc4a58524cf2a4e","t":1630979195061}
解析 Data
数据
decryptContentData={"dataId":"6f0f12a7-0f7d-11ec-8511-024283c73485","devId":"vdev******86991","productKey":"na****jz","status":[{"2":"white","code":"work_mode","t":1630979195023,"value":"white"},{"3":"764","code":"bright_value_v2","t":1630979195023,"value":764}]}
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈