天猫精灵智能家居对接,及天猫iot官网配置图文讲解(二)

天猫精灵智能家居对接,及天猫iot官网配置图文讲解(二)

2、天猫精灵设备对接

2-1、介绍

​ 上一章里,我已经讲了天猫精灵的技能配置设备创建登录验证这三个部分做了,此次篇文章就讲之后的设备查询,设备信息上报,以及获取开发权限

文章地址

天猫精灵智能家居对接,及天猫iot官网配置图文讲解(一)

2-2、设备查询请求

​ 在之前的文章中,最后面写的登录验证。在用户走到这一步时,会向服务器发送请求,请求内容在官方文档中很详细了。这里可以用一个类封装这些数据,格式是固定的

请添加图片描述

​ 用spring方法体中的@RequestBody,路径方法中接收参数,具体代码可以使用fastjson jar包,将字符串转成JSONObject格式的类之后,下一步就是执行具体的业务了。

​ 启动项目,开始测试,可以看到,下面的图片是接收到的请求路径和它所携带的数据。内容和官方提供的是一致的。

请添加图片描述

​ 之后对代码进行处理,代码的功能主要还是看header中的namespace和name这两个标签,访问返回中,namespace不用修改,但是要修改的是name。messageId保留不动,在此之前要了解一下设备发现中返回的设备协议。这边对设备进行封装。代码如下,构造方法,get,set和toString也是由读者自己生成。

public class Device {
   
    /**
     * 设备id
     */
    private String deviceId;
    /**
     * 设备别名
     */
    private String deviceName;
    /**
     * 设备英文名
     */
    private String deviceType;
    /**
     * 设备品牌
     */
    private String brand;
    /**
     * 产品型号
     */
    private String model;
    /**
     * 位置,这里是指厨房,客厅这些
     */
    private String zone;
    /**
     * 设备状态
     */
    private JSONObject status;
    /**
     * 设备的扩展信息
     */
    private JSONObject extensions;
}

​ 这里面的一些信息介绍

  1. deviceId,由开发者自己定义,长度不限,

  2. deviceName,设备被别名,也是由用户自己定义,开发者保存

  3. deviceType,这里不能随便填写,要和阿里精灵平台中的产品品类一致,但是不用填写中文,填写outlet就可以了

  4. brand,也是要和途中的产品品牌一致,这里是填写:“中文名·英文名”(图片这里有复制按钮)

  5. model,这里是开发者自己定义的代码数据了内容和产品型号是一致的

请添加图片描述

  1. zone,产品所在的位置,例如厨房,客厅,办公室这些。

    这个值,只会在第一次设备发现的时候提交有用,之后重复提交,都不会修改这个值,唯一有效的就是设备更新,告诉官方服务器设备已经被删除,然后再提交一次,这样就是一个新设备了。

  2. status,设备属性,这里的属性暂时只设置有开关两个,子参数为powerstate:1

  3. extensions,设备扩展信息

    ​ 下面创建一个类,模拟设备,内容如下

请添加图片描述

​ 路径映射方法如下

    @RequestMapping("getDevices")
    @ResponseBody
    public Map<String
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值