文档时间: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. 小白的Python之路 day5 configparser模块的特点和用法

    configparser模块的特点和用法 一.概述 主要用于生成和修改常见配置文件,当前模块的名称在 python 3.x 版本中变更为 configparser.在python2.x版本中为Conf ...

  2. 如何实现dede首页栏目文章指定调用

    如何实现dede首页栏目文章指定调用,首页文章栏目指定ID调用 dobote | 浏览 11891 次 推荐于2016-05-20 10:53:26 最佳答案 {dede:arclist flag=' ...

  3. IOS中UIScrollView的contentSize、contentOffset和contentInset属性

    IOS中,UIScrollView是可以滚动的视图,其中最常用的UITableView就是继承了UIScrollView. 跟所有的view一样,UIScrollView有一个frame属 性,同时, ...

  4. Java常用的框架

    一.SpringMVC http://blog.csdn.net/evankaka/article/details/45501811 Spring Web MVC是一种基于Java的实现了Web MV ...

  5. vue学习笔记(三)——目录结构介绍

    1.初始目录结构如下: 2.目录结构介绍 目录/文件 说明 build 最终发布的代码存放位置. config 配置目录,包括端口号等.我们初学可以使用默认的. node_modules npm 加载 ...

  6. 共轭梯度算法求最小值-scipy

    # coding=utf-8 #共轭梯度算法求最小值 import numpy as np from scipy import optimize def f(x, *args): u, v = x a ...

  7. 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+- ...

  8. junit源码解析总结

    前面的博客我们也已经整理到了,我们使用junit38,在写测试类的时候我们的测试类必须继承TestCase.这个所有测试类的父类在junit.framework包下面. 前面我们的整理都是说直接在ID ...

  9. 输入和输出--File类

    输入和输出 写在前面的:Java中的输入和输出还是比较重要的,之前我都没想整理IO和多线程的,但是在研究后面的好多东西时候,经常要读取资源文件,这个时候就不得不回过头来整理IO了.要玩熟Java的输入 ...

  10. hibernate 基础

    Hibernate:是开源的ORM框架技术,对jdbc进行了非常轻量级的对象封装,处于业务逻辑层和数据库层之间,称作持久化层. 持久化层的作用:把程序生成的对象持久化到数据库,也就是保存到数据库.   ...