对接天猫精灵X1 (https 的申请)
1 起因
公司是做智能家居的,最近公司要求对接天猫精灵的智能家居功能,所以就来对接天猫精灵X1 了。
新产品,大家都懂的,坑是有不少的,正常事。
1 首先,语言是 c#,不要和我讲 php 是世界最好的语言,语言只是一种具体实现的工具,重点是你的思维,你有没有这种想法。
2 其次,官方文档一定要看。
3 既然是 c# ,用的是 .net framework 4.5 ,
2. 对接
自己在对接的时候,没查到相关的资料,只查到一个 PHP 版的相关资料,认真看了下,参考了一下,但帮助不是很大,这点很烦,
还是自己实际操作来得实在。
1 根据官方的 技能发布流程 得知,我们至少要有一台 天猫精灵X1 ,下个 天猫精灵APP ,完成配网先,进入 官方的控制台 ,创建 智能家居 技能。然后先随便填写 技能的基本信息,为了测试,技能我直接写了 测试功能 。
2 点下一步,重点来了,要我们输入 账户授权连接、Client ID、Client Secret、 Access Token URL、厂商登出 URL 这几个东西了,先随便填写信息上去,保存。等我们把授权平台搭建好了,再回头来填写正确的。如下图:
现在我们就遇到了几个问题:
1.对外的服务器。
2.SSL证书 要通过认证的,不认证,天猫直接拒绝访问。
3.搭建授权平台。
问题1:服务器:
域名、服务器这个问题就自己看着办吧。
现在假设你有一个域名,并且拥有了一个服务器了。
问题2:SSL 证书的申请
此文章只讲怎么得到免费的 https 认证吧,实际用的时候,公司准备去买收费的 SSL 证书,这个我就不考虑,这儿只讲免费的SSL。
SSL 证书申请地址:https://www.sslforfree.com/
上来就能直接看到大大的提示,输入你的站点:
接下来会到另一个确认页,有3种选项,第一个是FTP自动认证(这个没试过),第二个手动认证,第三个手动认证(通过DNS,也没试过)我们选中间的,手动认证。点击之后,再点击 Manually Verify Domain 。
下载 检验文件,在你的域名下的根目录创建文件夹(".well-known."),再进入 ".well-known." 文件夹中再创建文件夹("acme-challenge"),然后把下载到的文件(就是下图中的 1. Download File #1 ,点击之后下载到的文件)放进 "acme-challenge"文件夹中。接下来就是访问它给出的地址,,由于我们用是 IIS,所以还要配置一下,添加 mine 类型,扩展名: . Mine 类型填: text/plain .然后就OK了。
如果通过验证后,就会开始为生成申请网站 SSL 凭证。当凭证生成后,可以看到[Get Notified of Expiration],因为申请的凭证有效期只有90天,所以可以在此设定一组 Email 和密码,可以在凭证过期前(一周左右)得到通知,以免错过延长(renew)时间。
点击 Download All SSL Certificate Files 下载证书。
下载完,有3个文件:ca_bundle.crt,certificate.crt,private.key
但我们不能直接用来导入IIS中使用,可以自己下个 open-ssl 去合成可用的。但我这儿偷懒了下,在 https://www.myssl.cn/tools/merge-pfx-cert.html 上面,把它合成了 ssl.pfx 。接下来就是导入 IIS 中,配置一下站点的 https 证书,访问一下,谷歌浏览器 的地址栏会告诉你它是否是安全的。https 就这样解决了。
问题3:授权平台。
等我下一篇文章再来介绍 OAuth 授权平台怎么搞。
吐槽一下,2018年5月31日15:55:18,本来今天是能对接完成的,但 阿里的真机测试 好像出了问题,今天的账户授权 按钮都没了,昨天下午6点多还是正常的,今天来上班之后就不见了,早上反馈到现在还没修复,也没给出个所以然来。
对接天猫精灵X1 (https 的申请)的更多相关文章
- (一) 天猫精灵接入Home Assistant- hass对接天猫精灵
1如何利用论坛的认证服务器对接天猫精灵 说起天猫精灵的接入,最早是由c1pher(25989406)大神通过开发自定义技能接入,后面qebabe大神进行了改进,可以直接通过HASS API读取hass ...
- 天猫精灵X1智能音箱使用感想
11.22音箱到手,等了刚好一个月. 主要是测评语音交互功能. 测试条件:正宗普通话. 1)问天气.温度:表现良好.2)找手机功能:试了多次,每次都说手机号码格式不对3)小孩听故事:正常.但是开头会有 ...
- 天猫精灵对接1:outh对接
公司的智能家居产品需要接入语音控制,目前在对接阿里语音的天猫精灵 对接天猫精灵的第一步是完成outh鉴权 https://doc-bot.tmall.com/docs/doc.htm?spm=0.76 ...
- 天猫精灵对接2(OAuth 搭建)
根据 接入方式及流程 中的说明,可知,搭建过程中,我们需要自己整一个 OAuth 的授权平台,具体说明可以参考蟋蟀大哥的文章 ASP.NET WebApi OWIN 实现 OAuth 2.0 ,我的 ...
- (零 ) 天猫精灵接入Home Assistant-总说明
天猫精灵设备管理 https://bbs.hassbian.com/tmall 自己的hass访问地址 http://[自己的IP或域名]:8123/states 自己的MQTT服务器访问 http: ...
- 接入天猫精灵auth2授权页面https发送ajax请求
已存在一个应用A,采用的是http交互, 在接入天猫精灵时,要求请求类型是https,所以在应用服务前加了个nginx转发https请求.在绑定授权页面,会发送ajax请求验证用户名和密码,采用htt ...
- (二 -3-1) 天猫精灵接入Home Assistant-自动发现Mqtt设备--灯系列 实战
#本片教程介绍了具体如何实现天猫精灵控制一个灯. 前提: HASS平台 你已经搭建一个可以在公网IP访问到的HASS平台--- 我用的是租了阿里云服务器,买了个域名,ubuntu1604系统 你已经搭 ...
- (二 -5) 天猫精灵接入Home Assistant-自动发现Mqtt设备--电风扇
官网:https://www.home-assistant.io/components/fan.mqtt/ 1 添加配置文件 要在安装中启用MQTT风扇,请将以下内容添加到您的configuratio ...
- 【阿里云IoT+YF3300】16.云端一体化,天猫精灵操控YF3300
“你好天猫精灵”,“主人有什么吩咐”,“打开灯”,“好的,灯已打开”.对于这样的对话应该大多数人都很熟悉,这就是智能家居的缩影.对于现在市面上层出不穷的智能家居系统,功能越来越繁杂,可是因为开发难度高 ...
随机推荐
- vue父子组件状态同步的最佳方式续章(v-model篇)
大家好!我是木瓜太香!一名前端工程师,之前写过一篇<vue父子组件状态同步的最佳方式>,这篇文章描述了大多数情况下的父子组件同步的最佳方式,也是被开源中国官方推荐了,在这里表示感谢! 这次 ...
- Hadoop之MapReduce开发总结
@ 目录 1.输入数据接口:InputFormat 2.逻辑处理接口:Mapper 3.Partitioner分区 4.Comparable排序 5.Combiner合并(可选) 6.Reduce端分 ...
- Kubernetes调度流程与安全(七)
一.Kubernetes中的调度流程 1,介绍 Scheduler 是 k8s 中的调度器,主要的任务是把定义的 Pod 分配到集群的节点上.Scheduler 是作为一个单独的程序运行的,启动之后会 ...
- 设计模式之Command
由于学习hystrix的使用和原理 所以就学习了command模式https://www.jdon.com/designpatterns/command.htm Command模式是最让我疑惑的一 ...
- springboot:druid 404
druid配置是在servlet中添加,所以需要servlet扫描 aplication里添加@ServletComponentScan("com")
- JVM学习(八)指令重排序
一.数据依赖性 在学习JVM的指令重排序之前,我们先了解一下什么是数据依赖性: 编译器和处理器在处理具体的指令时,可能会对操作进行重排序来提高执行性能[多条指令并行执行,所以提升性能的同时也可能会导致 ...
- Java Web学习(六)HttpServletRequest(客户端请求)
一.定义 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有 ...
- Java基础——锁
1.锁 当一个共享资源被多方访问时为了避免发生冲突而施加的一种机制 2.乐观锁和悲观锁 Java中锁在宏观分为乐观锁和悲观锁 乐观锁:是一种乐观思想,认为多读少写,一般情况下数据在修改时不会出现冲突, ...
- Python-面向网络编程-socket原理
socket 整个计算机网络是由协议构成,想要通信必须遵守对应的协议,如Web中的http协议.传输协议TCP和UDP等等.在网络工程师的眼中,可能现在网络上的一切都是socket,一切皆socket ...
- c#数据处理总结(分组、交并差与递归)
前言:最近项目比较忙,完全没有时间写下总结笔记,今天抽出时间来写下笔记,供写后台的你来做数据处理后台代码编写的参考. 一.分组 var GroupForList = numberList.GroupB ...