文档首页 > > 用户指南> IoT接入管理> 使用stomp.py接入IoT平台

使用stomp.py接入IoT平台

分享
更新时间: 2019/11/28 GMT+08:00

本节以stomp.py为例,介绍使用第三方软件以stomp协议接入IoT平台,实现采集物联网设备数据。STOMP即Simple (or Streaming) Text Orientated Messaging Protocol,简单(流)文本定向消息协议,它提供了一个可互操作的连接格式,允许STOMP客户端与任意STOMP消息代理(Broker)进行交互。

前提条件

  • 准备一台Linux虚拟机(推荐CentOS)。
  • Linux虚拟机已编译安装python2.7。

获取stomp.py

方法一:

通过git clone指令从github仓库中获得最新版本。

git clone https://github.com/jasonrbriggs/stomp.py

方法二:

访问https://github.com/jasonrbriggs/stomp.py,下载压缩包,并上传到linux虚拟机。

图1 下载安装包

获取stomp.py后,进入stomp目录,执行如下命令进行安装。

python setup.py install

stomp.py对接IoT平台方法

  1. 访问按照前提条件准备好的虚拟机。
  2. 执行如下命令调用python。

    python

  3. 执行如下命令进行订阅发布消息。

    >>> import stomp

    >>> c = stomp.Connection([('{Endpoint's IP}', 61613)])

    >>> c.start()

    >>> c.connect('{username}', '{password}', wait=True)

    >>> c.subscribe(destination='{topicname}', id=1, ack='auto')

    >>> c.send('{topicname}', '{message}')

    >>> exit()

    • {Endpoint's IP}:请设置为购买IoT接入实例中已创建的IoT实例的Endpoint匹配的IP地址。
    • {topicname}:输入订阅发布的Topic。
    • {message}:订阅的消息内容。
    • {username}:设备请求接入IoT实例所使用的用户名。
    • {password}:设备请求接入IoT实例所使用的密码。用户名和密码请保持与购买IoT接入实例中,创建的实例用户名、密码一致。

验证对接结果

示例:

>>> import stomp

>>> c = stomp.Connection([('192.168.100.5', 61613)])

>>> c.start()

>>> c.connect('test', 'password@123', wait=True)

>>> c.subscribe(destination='test', id=1, ack='auto')

>>> c.send('test', 'a test message')

>>> exit()

示例中,以发布一条主题为"test",内容为“a test message”的消息为例。此消息发布后,任何MQTT客户端或者STOMP客户端,若订阅了此主题,则均可立即收到对应的消息内容。

验证方法:

支持MQTT协议的订阅端,订阅了test主题的消息内容,则图2所示 ,可接收到消息内容。

图2 订阅成功示例
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区