最近项目需求,需要使用树莓派订阅云服务器消息队列相应主题的消息。树莓派端程序运行环境为Python,消息队列使用ActiveMQ,如何配置其外网访问上一篇文章中有介绍,此处不再赘述。
树莓派使用消息队列需要借助stompy库,目前此库仅支持Python2。首先现在库文件,然后再Python2的环境中运行setup.py文件即可。下载地址为:https://pypi.org/project/stompy/
当然更简单的方法为:pip2 install stompy,轻松搞定。
接下来为简单的示例代码:
#!/usr/bin/python
from stompy.simple import Client
#消息队列服务器与端口号
stomp = Client("129.28.65.99", 61613)
#设置客户端连接名称
stomp.connect("consumer", "pass")
#订阅topic并使用消息选择器过滤
stomp.subscribe("/topic/Mytopic",conf={'selector' : "CustomId = '2170220005'"})
#获取订阅到的消息
message = stomp.get()
print message.body
stomp.ack(message)
stomp.unsubscribe("/topic/Mytopic")
stomp.disconnect()
需要注意的是一定要在python2环境中运行