文档时间:2018.-1-24

首注:此文章是参照以下文章的整合与补充:

https://bbs.aliyun.com/read/309106.html?amp;displayMode=1&page=1&toread=1

https://help.aliyun.com/document_detail/50633.html?spm=5176.doc42693.6.567.LkRjr4

https://help.aliyun.com/document_detail/42693.html?spm=5176.doc42648.6.573.OEriWB

正文

服务端订阅设备获得消息模型

注:阅读本文档之前需要通读物联网套件开发帮助文档

1.首先用淘宝或者其他账号登录阿里云选择物联网套件

2.点击控制台,如果没有权限需要申请

一、创建产品

1、进入物联网套件控制台,创建产品

二、创建产品下的设备

1、进入产品,找到设备管理,添加设备

效果如下:

服务端订阅从队列中获取消息,这里完成的场景是灯泡产品的服务端订阅,来监听设备发送的消息

2、首先配置服务端订阅

保存之后如下图:

3、根据帮助文档中的服务端快速接入的指导完成服务端的代码配置,主要是产品和设备的key和 secret

https://help.aliyun.com/document_detail/50633.html?spm=5176.doc42693.6.567.LkRjr4

4、回到物联网套件页面,配置规则引擎,将topic中的消息转发到MNS消息队列中。

3-1、创建规则

4-2、配置处理数据

字段:直接填 *

topic:选中产品, / 后面的就填设备的Topic,如下图

添加规则引擎的操作方式:主题的创建可以参考第三步进行创建主题,创建之后选中即可

规则引擎配置完成效果如下:

三、查看消息队列

1、进入消息服务,根据区域找到第二步中的创建服务端订阅时,自动创建的队列,看看logging是否为true如果不是,可点击 修改设置 进行修改

2、创建主题

在与队列的相同区域下新建主题,并开启logging

3、配置主题的订阅列表,将主题中收到的消息转发到指定队列中

配置成功如下图:

6.代码中设置要接收消息的队列启动监听,也可以使用队列的SDK进行接收消息

队列的SDK:https://help.aliyun.com/document_detail/32449.html?spm=5176.doc27509.6.649.NJBOae

IOT的SDK:https://help.aliyun.com/document_detail/30579.html?spm=5176.doc30581.6.597.5046av

注:

6-1、在官网下载的SDK要导入maven包

6-2、accessId和accessKey的获取方式如下图,accountEndpoint要使用队列公网的地址

6-3、client.getQueueRef("需要接收消息的队列名称");

7.设备发送消息,观察服务端是否接收到

服务端收到消息

至此,简单的设备连接上云端并且发布消息到自己的服务端完成。

附上套件的maven包坐标与套件依赖的公共包

<!-- https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-iot -->

<dependency>

<groupId>com.aliyun</groupId>

<artifactId>aliyun-java-sdk-iot</artifactId>

<version>4.0.0</version>

</dependency>

<dependency>

<groupId>com.aliyun</groupId>

<artifactId>aliyun-java-sdk-core</artifactId>

<version>3.2.10</version>

</dependency>

阿里云学习之IOT物联网套件(配置篇)的更多相关文章

  1. 阿里云学习之IOT物联网套件(客户端与服务端的后台数据传输)

    设备端代码(mqttClient):https://help.aliyun.com/document_detail/42648.html?spm=5176.doc30579.6.569.ZEgA1g ...

  2. 阿里云ECS主机多个网站配置,是有先后顺序的

    注意:阿里云ECS主机多个网站配置,是有先后顺序的: 进入路径:/alidata/server/httpd-2.4.2/conf/vhosts/  注意这个2.4.2是自己的版本不一样,但是找到 se ...

  3. 阿里云ECS服务器Linux环境下配置php服务器(二)--phpMyAdmin篇

    上一篇讲了PHP服务器的基本配置,我们安装了apache,php,还有MySQL,最后还跑通了一个非常简单的php页面,有兴趣的朋友可以看我的这篇博客: 阿里云ECS服务器Linux环境下配置php服 ...

  4. 阿里云centOS6 下python安装及配置、pip安装及配置、ipython安装及配置

    我是在阿里云服务器上进行的python环境搭建,阿里云服务器会自带python但是版本低,所以打算自己安装一个,期间遇到各种问题,而且百度根本不够用无奈上的外网很快解决了.在此分享一下. 一.pyth ...

  5. 阿里云入坑指南&&nodejs 安装配置

    买了阿里云1G1核1M的机器(800元,3年) 登录阿里云-实例-选择实例所在地区-重置密码 用公网IP ssh连接 #升级CentOS yum -y update #安装or更新组件 yum -y ...

  6. 阿里云centos7.4下tomcat8.5配置ssl证书

    环境 阿里云centos7.4 域名也是阿里申请的 jdk1.8 tomcat8.5 1.申请证书 登录到阿里云的域名管理,可以看到已经申请过得域名,我这里第一个已经配置了ssl,第二个未配置,点击更 ...

  7. 阿里云ECS服务器购买流程 (自定义配置购买、按月、按量购买)教程

    阿里ECS云服务器自定义购买流程 本文提供全图文流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  8. LNMP笔记:阿里云32位 CentOS 5.4 配置 LNMP环境

    最近比较郁闷的是 WordPress大学 服务器故障,由于诸多原因没及时处理,导致10多天无法访问.倡萌也是刚接触服务器环境配置,维护的确力不从心,没办法排查出错误根源,所以只好重置系统盘,重新配置L ...

  9. 阿里云服务器CentOS6.9 nexus私服配置

    从nexus官网下载nexus版本. 下载地址如下:https://help.sonatype.com/repomanager2/download 如果要下载3.X版本的,可以把repomanager ...

随机推荐

  1. UserView--第一种方式set去重,基于Spark算子的java代码实现

    UserView--第一种方式set去重,基于Spark算子的java代码实现 测试数据 java代码 package com.hzf.spark.study; import java.util.Ha ...

  2. Linuxc - 通过管道,让小程序更有活力

    通过管道,让小程序更有活力 root@jiqing:~/cspace/les6# ls avg.c avg.out input.c input.out 一个负责输入,一个负责统计平均值 avg.c # ...

  3. (2-3)Eureka详解

    基础架构 服务注册中心 服务提供者 服务消费者 服务治理 服务提供者 服务注册.在服务注册时,需要确认一下eureka.client.registerwith-eurek=ture参数是否正确,默认是 ...

  4. java—— finall 关键词

    _ *{ margin: 0; padding: 0; } .on2{ margin: 10px 0; cursor: pointer; user-select: none; color: white ...

  5. python3 第二十章 - 函数式编程之Higher-order function(高阶函数)

    什么是高阶函数?把函数作为参数传入或把函数做为结果值返回,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式.函数式编程的特点: 函数本身可以赋值给变量,赋值后变量为函数: 允许将函数本身 ...

  6. python_将多个小字符拼接成大字符?

    案例: 下面有一个列表,如何把这个列表拼接成一个字符串? l = [1, 2, 3, 4, 'a', 'b', 'c'] 有哪些方法? 方法1: for进行迭代拼接 #!/usr/bin/python ...

  7. HTML学习(二)

    表格和列表 <!-- /* @dl→definition list(定义列表),ul→unordered list(无序列表),ol→ordered list * @一个完整的表格.table. ...

  8. centos 如何关闭防火墙?

    1 查看防火墙状态: 命令: /etc/init.d/iptables status 如果是开着显示内容类是截图 2 临时关闭防火墙: 命令:/etc/init.d/iptables stop     ...

  9. MySQL--REPEATABLE-READ隔离级别下读取到的“重复数据”

    在MySQL中,使用MVCC来实现REPEATABLE-READ隔离级别,由于SELECT操作不会对数据加锁,其他回话可以修改当前回话所读取过的数据而不会被阻塞,因此读写不冲突. 在MVCC并发控制中 ...

  10. Css3中的 calc()使用

    http://www.w3cplus.com/css3/how-to-use-css3-calc-function.html