天猫精灵 OAuth2.0 (java)

1.前置条件

java语言、天猫精灵X1、技能类型->智能家居

2.OAuth2.0的搭建

    因为AliGenie平台要求对接需要采用通用的OAuth2.0开放授权协议,所以我们先需要搭建一个OAuth2.0的服务让AliGenie对接使用。

2.0.1

如图2.0.1配置所说,我们首先需要提供一个账户授权连接地址、一个client ID、一个Client Secret、Access Token URL
账户授权连接地址: 按照AliGenie平台描述的是一个OAuth2.0的授权页面。我们通常是做一个h5的登陆页面,在当前页面或者在控制类里面接收再跳转到一个h5页面进行当前系统的登录校验。登陆成功之后重定向到AliGenie访问带过来的redirect_uri去。注意:重定向redirect_uri里 需要带上code(也就是授权码)

Client ID:自己定义的客户端id 、可以留作纪录使用

Client Secret:自己定义的客户端芈月、可以当做校验使用

Access Token URL:当前重点,生成与AliGenie平台交互的token接口。返回可以参照AliGenie平台的规范,成功情况下返回access_token、refresh_token、expires_in  三个字段

后台使用jar: org.apache.oltu.oauth2.authzserver,org.apache.oltu.oauth2.resourceserver

3.设备管理

开发者网关地址:对于当前设备操作、查询的接口。当前接口会接收AliGenie传递的json

关注重点:namespace、name、accessToken

当前三种namespace:设备发现("AliGenie.Iot.Device.Discovery"),设备控制("AliGenie.Iot.Device.Control"),设备属性查询("AliGenie.Iot.Device.Query");

根据当前请求进行相应的操作,注意格式规范。

AliGenie.Iot.Device.Discovery类型:返回设备列表

AliGenie.Iot.Device.Control类型:得到当前设备的操作

AliGenie.Iot.Device.Query类型:设备的属性查询

接收到设备操作、就可以接进自己的设备和后台之间的通讯进行操作

到此为止、该写的代码已经完成

4.如何操作

一.帐号申请、绑定、测试

在AliGenie 用自己的或者单位的淘宝帐号进行申请(个人认证比较快)。

    1.认证通过之后填好服务设置(访问地址记得需要https加密类型)、

    2.在测试验证模块打开测试

    3.在技能发布添加对话信息等(对话信息记得和上面提到设备列表的名称相关联)

如我返回的两个设备名称是电视、空调。对话信息我则设置打开电视、打开空调

4.天猫精灵登录(当前淘宝帐号)、绑定天猫精灵设备。在智能家居模块点击进入,就可以看到你设备列表返回的数据。然后就可以操作天猫精灵了





二.需要注意点

1.服务设置需提供https访问、设备管理可以http访问。

2.在测试打开之后、可以不提供审核即可真机测试

3.设备列表的设备名称、技能信息尽量不带数字

4.忘记说了 我注册类型是智能家居类型

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,286评论 19 139
  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom阅读 2,742评论 0 3
  • 在我搭建基于Spring Cloud的微服务体系应用的时候所需要或者是常用的属性配置文件,还有这些属性的用途,此配...
    StrongManAlone阅读 4,177评论 0 18
  • 本文以一种简化的格式描述OAuth 2.0 ,以帮助开发人员和服务提供者实现该协议。 The OAuth 2 sp...
    JacoChan阅读 4,279评论 1 11
  • 花田半亩 记得第一次来咖啡屋是在上学期的一个夜里。过了近小一年,那个时候才知道学校竟然有这么一个地方。 昏黄的灯光...
    提笔落字木仓阅读 727评论 0 3