阿里云学习之IOT物联网套件(配置篇)
文档时间: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物联网套件(配置篇)的更多相关文章
- 阿里云学习之IOT物联网套件(客户端与服务端的后台数据传输)
设备端代码(mqttClient):https://help.aliyun.com/document_detail/42648.html?spm=5176.doc30579.6.569.ZEgA1g ...
- 阿里云ECS主机多个网站配置,是有先后顺序的
注意:阿里云ECS主机多个网站配置,是有先后顺序的: 进入路径:/alidata/server/httpd-2.4.2/conf/vhosts/ 注意这个2.4.2是自己的版本不一样,但是找到 se ...
- 阿里云ECS服务器Linux环境下配置php服务器(二)--phpMyAdmin篇
上一篇讲了PHP服务器的基本配置,我们安装了apache,php,还有MySQL,最后还跑通了一个非常简单的php页面,有兴趣的朋友可以看我的这篇博客: 阿里云ECS服务器Linux环境下配置php服 ...
- 阿里云centOS6 下python安装及配置、pip安装及配置、ipython安装及配置
我是在阿里云服务器上进行的python环境搭建,阿里云服务器会自带python但是版本低,所以打算自己安装一个,期间遇到各种问题,而且百度根本不够用无奈上的外网很快解决了.在此分享一下. 一.pyth ...
- 阿里云入坑指南&&nodejs 安装配置
买了阿里云1G1核1M的机器(800元,3年) 登录阿里云-实例-选择实例所在地区-重置密码 用公网IP ssh连接 #升级CentOS yum -y update #安装or更新组件 yum -y ...
- 阿里云centos7.4下tomcat8.5配置ssl证书
环境 阿里云centos7.4 域名也是阿里申请的 jdk1.8 tomcat8.5 1.申请证书 登录到阿里云的域名管理,可以看到已经申请过得域名,我这里第一个已经配置了ssl,第二个未配置,点击更 ...
- 阿里云ECS服务器购买流程 (自定义配置购买、按月、按量购买)教程
阿里ECS云服务器自定义购买流程 本文提供全图文流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...
- LNMP笔记:阿里云32位 CentOS 5.4 配置 LNMP环境
最近比较郁闷的是 WordPress大学 服务器故障,由于诸多原因没及时处理,导致10多天无法访问.倡萌也是刚接触服务器环境配置,维护的确力不从心,没办法排查出错误根源,所以只好重置系统盘,重新配置L ...
- 阿里云服务器CentOS6.9 nexus私服配置
从nexus官网下载nexus版本. 下载地址如下:https://help.sonatype.com/repomanager2/download 如果要下载3.X版本的,可以把repomanager ...
随机推荐
- 小白的Python之路 day5 configparser模块的特点和用法
configparser模块的特点和用法 一.概述 主要用于生成和修改常见配置文件,当前模块的名称在 python 3.x 版本中变更为 configparser.在python2.x版本中为Conf ...
- 如何实现dede首页栏目文章指定调用
如何实现dede首页栏目文章指定调用,首页文章栏目指定ID调用 dobote | 浏览 11891 次 推荐于2016-05-20 10:53:26 最佳答案 {dede:arclist flag=' ...
- IOS中UIScrollView的contentSize、contentOffset和contentInset属性
IOS中,UIScrollView是可以滚动的视图,其中最常用的UITableView就是继承了UIScrollView. 跟所有的view一样,UIScrollView有一个frame属 性,同时, ...
- Java常用的框架
一.SpringMVC http://blog.csdn.net/evankaka/article/details/45501811 Spring Web MVC是一种基于Java的实现了Web MV ...
- vue学习笔记(三)——目录结构介绍
1.初始目录结构如下: 2.目录结构介绍 目录/文件 说明 build 最终发布的代码存放位置. config 配置目录,包括端口号等.我们初学可以使用默认的. node_modules npm 加载 ...
- 共轭梯度算法求最小值-scipy
# coding=utf-8 #共轭梯度算法求最小值 import numpy as np from scipy import optimize def f(x, *args): u, v = x a ...
- python_求1-2+3-4+......-100的值
求1-2+3-4+5---100 = ? 逻辑整理: -- 本质上可以转换一下,1+3+5+--+99 -(2+4+--+100) 加减部分间隔都为2,先求1+3+5+--+99的值, 再求2+4+- ...
- junit源码解析总结
前面的博客我们也已经整理到了,我们使用junit38,在写测试类的时候我们的测试类必须继承TestCase.这个所有测试类的父类在junit.framework包下面. 前面我们的整理都是说直接在ID ...
- 输入和输出--File类
输入和输出 写在前面的:Java中的输入和输出还是比较重要的,之前我都没想整理IO和多线程的,但是在研究后面的好多东西时候,经常要读取资源文件,这个时候就不得不回过头来整理IO了.要玩熟Java的输入 ...
- hibernate 基础
Hibernate:是开源的ORM框架技术,对jdbc进行了非常轻量级的对象封装,处于业务逻辑层和数据库层之间,称作持久化层. 持久化层的作用:把程序生成的对象持久化到数据库,也就是保存到数据库. ...