文档时间: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. 【自制工具类】Java删除字符串中的元素

    这几天做项目需要把多个item的id存储到一个字符串中,保存进数据库.保存倒是简单,只需要判断之前是否为空,如果空就直接添加,非空则拼接个"," 所以这个字符串的数据结构是这样的 ...

  2. 将DedeCMS从子目录移动到根目录的方法

    http://www.commonie.com/a/chat/dedeskill/298.html 以前做了一个Wordpress的博客,后来觉得采用DedeCMS更好一点,所以就有了转向DedeCM ...

  3. php 使用 ffmpeg 转换视频,截图,并生成缩略图

    http://blog.csdn.net/toss156/article/details/7003059 把ffmpeg 和  生成缩略图整合了一下. include("ImageResiz ...

  4. [field:softlinks/]逻辑过程

    在plus/download.php 在dededln\include\taglib\channel\softlinks.lib.php

  5. jsoup爬取图片到本地

    因为项目需求,需要车辆品牌信息和车系信息,昨天用一天时间研究了jsoup爬取网站信息.项目是用maven+spring+springmvc+mybatis写的. jsoup开发指南地址:http:// ...

  6. scrapy_ItemLoader

    什么是Itemloader? 一种容器,实现直白高效字段提取 直接赋值取值的方式,会出现一下几个问题 代码量一多,各种css和xpath选择器,充斥整个代码逻辑,没有规则,不利于维护 对于一个字段的预 ...

  7. python_爬校花图片

    如何用python爬取校花图片并保存到本地来? 1. 获取什么数据? 校花名字  name 校花所在学校 school 校花图片的url   img_ulr 2.如何获取? 打开网页http://ww ...

  8. Linux指令--telnet

    telnet命令通常用来远程登录.telnet程序是基于TELNET协议的远程登录客户端程序.Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户 ...

  9. Java代码编写的一般性指导

    (1) 命名规则:这个最基本,也最重要,请牢记. 1,类名首字母应该大写. 2,字段.方法以及对象(句柄)的首字母应小写. 3,对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字 ...

  10. php微信扫码支付

    一 概述 扫码支付是商户系统按微信支付协议生成支付二维码,用户再用微信"扫一扫"完成支付的模式.该模式适用于PC网站支付.实体店单品或订单支付.媒体广告支付等场景.前几天公司需要做 ...