0
点赞
收藏
分享

微信扫一扫

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台


文章目录

  • ​​前言​​
  • ​​准备​​
  • ​​相关资料​​
  • ​​相关介绍​​
  • ​​消息通信​​
  • ​​云产品流转​​
  • ​​RocketMQ​​
  • ​​服务订阅​​
  • ​​MNS​​
  • ​​AMQP​​
  • ​​Topic通信​​
  • ​​创建设备​​
  • ​​Mqttfx设备接入(模拟设备)​​
  • ​​安装mqtt.fx 1.71版本​​
  • ​​测试下行(服务端----发布消息--->设备)​​
  • ​​测试上行(设备----发布消息--->服务端)​​
  • ​​服务端订阅-AMQP 配合mqtt.fx 连通测试​​
  • ​​java 服务端订阅-AMQP-SDK接入​​
  • ​​mqtt.fx 设备发布消息​​
  • ​​结果​​
  • ​​第三方(手机APP/服务端)经阿里云平台发布消息(Publish)​​
  • ​​其他​​

前言

最近在做已接入阿里云平台的设备,通过阿里云物联网平台 经过中间件(消息服务/阿里云产品等)再流转到其他企业服务器的东西。

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_阿里云

准备

阿里云账号:这个得自己创建了
阿里云物联网平台
阿里云物联网平台公共实例

相关资料

​​阿里云帮助手册​​【阿里云生活物联网架构师专题 ⑧】基于在 SpringBoot Java私有云上接收阿里云物联网设备的各种状态数据,实现m2m流转

相关介绍

消息通信

​​https://help.aliyun.com/document_detail/146382.html​​ 由于我是做后端数据的 比较关心如何接入阿里云平台,发现有以下几种方式:

  • 云产品流转(RocketMQ等)
  • 服务订阅 (MNS、AMQP)
  • 使用Topic通信(自定义Topic、使用物模型功能相关Topic)

云产品流转

​​https://help.aliyun.com/document_detail/30553.html​​

RocketMQ

服务订阅

​​https://help.aliyun.com/document_detail/89225.html​​

私有云可以直接订阅产品下多种类型的消息:设备上报消息、设备状态变化通知、设备生命周期变更、网关发现子设备上报、设备拓扑关系变更等。配置服务端订阅后,物联网平台会将产品下所有设备的已订阅类型的消息转发至您的服务器。

MNS

​​https://help.aliyun.com/document_detail/68948.html​​

AMQP

​​https://help.aliyun.com/document_detail/130827.html​​[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_开发语言_02

注意:只能订阅消息 不能和物联网设备通信

Topic通信

​​https://help.aliyun.com/document_detail/90567.html​​

创建设备

Mqttfx设备接入(模拟设备)

​​Mqttfx设备接入,里面视频很重要!​​

安装mqtt.fx 1.71版本

基本步骤:

  1. Etras->Edit Connect Profiles
  2. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_服务端_03

  3. 编辑Broken Address和ClientId (在设备页面查看)
  4. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_阿里云_04

  5. 添加上对应的值
  6. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_开发语言_05

  7. 3.添加username和passwd
  8. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_开发语言_06

  9. 4.选择ssl
  10. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_自定义_07

  11. 5.最后点击ok
  12. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_自定义_08

6.点击Connect,绿色表示连接成功

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_java_09

测试下行(服务端----发布消息—>设备)

使用自定义Topic测试-发布 (mqtt.fx的设备订阅消息-阿里云平台发布消息)

  1. 产品页中选择自定义Topic 订阅user/get 复制到mqtt.fx (记得修改{device_name}为阿里云上创建的设备的设备名)
  2. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_服务端_10


  3. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_java_11

  4. 复制到该处, 点击Subscribe
  5. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_java_12

  6. 2.发布消息(进入设备->Topic列表->发布消息 输入helloworld)
  7. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_服务端_13

  8. 3.mqtt.fx接受到消息
  9. [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_阿里云_14

  10. 说明下行测试通信成功

测试上行(设备----发布消息—>服务端)

使用自定义Topic测试-订阅 (mqtt.fx的设备发布消息-阿里云平台订阅消息)

  1. 产品页中选择自定义Topic 发布user/update 复制到mqtt.fx (记得修改{device_name}为阿里云上创建的设备的设备名)

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_阿里云_15


2. 复制到MQtt.fx Publish(注意更改设备名)输入内容“test” 点击Publish

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_阿里云_16


3. 阿里云平台查看消息

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_开发语言_17


[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_java_18


[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_开发语言_19


查看收到test消息 说明上行 mqtt.fx 发布成功

服务端订阅-AMQP 配合mqtt.fx 连通测试

服务端订阅消息,只能收消息。不能发送消息到设备。

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_服务端_20

java 服务端订阅-AMQP-SDK接入

​​参考文档​​ 基本步骤:

  1. 跑demo​​demo地址​​
  2. 配置信息
  3. 启动demo

配置

[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_java_21

mqtt.fx 设备发布消息

publish消息

结果

第三方(手机APP/服务端)经阿里云平台发布消息(Publish)

​​自定义topic​​​​PubSubDemo 包括设备连接Demo(LinkitPubClient/LinkitSubClient)和服务端发布Demo(PopPubServer)​​

注:
这里也可以用阿里云 ​​​在线调试工具​​ 进行模拟服务端通过阿里云平台向设备发送消息

步骤:

  • 下载安装运行PopPubServer demo
  • 配置阿里云账号及产品信息
  • [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_java_22

注意:添加instancesId demo里面默认没有添加,导致报错 iot.Sre.IotInstanceNotFound

  • 连接启动mqtt.fx 并且订阅自定义topic /user/get
  • 修改服务端请求的自定义topic 同样请求/user/get
  • 启动服务端
  • [笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台_java_23

其他

​​查看地区码(RegionID)​​

​​云端开发指南​​

​​在线调试工具。​​


举报

相关推荐

0 条评论