重庆互联网,19年企业互联网解决经验,专业网站开发、移动端开发、微信端开发、小程序开发!
重庆网络推广公司

腾讯小微(152)— 智能家居接入(5)

作者:重庆互联网小徐 发布时间:2024-12-10 浏览:14072 赞(5837 收藏 评论(0)

授权

Smart Home Skill API遵循OAuth2.0规范。 从Smart Home Skill API发送到技能适配器的每个请求都包含OAuth访问令牌。 此外,任何可云控设备的设备云都必须支持 授权码授权模式。 确保实施OAuth的第三方提供商已经将分配给智能家居技能的OAuth重定向地址添加到白名单中。 您可以在开发人员门户上的应用程序的配置页面上找到此URL。 要了解有关腾讯小微身份验证如何工作的更多信息,请参阅{文档待定}。

厂商授权小微

用户在厂商提供的授权url(在注册技能时填写)登录自己的厂商账号,完成授权处理,技能适配器厂商收到请求处理完毕后,调用redirect_uri,并返回授权码给小微. redirect_uri示例:https://xiaowei.weixin.qq.com/api/iot/xw_iot_third_party&scope=&state=3624673158dab4796-fa37-1441-57b0-9c5139518006

小微获取access token

向技能适配器厂商的access_token_uri地址发送post请求以获取acces token,Content-Type 为application/json。请求参数为grant_type、client_id、client_secret、code、redirect_uri 一个access token 请求参数示例:

access_token_uri: https://xx.xxxxxxx.com/app/oauth.reqaccess
{
    "client_id": "L40KnWmoJWRjrwY8sHj****",
    "client_secret": "KPltGeJqMJeOYHOk05**o***",
    "code": "8962478_FO4_fwwxqKortx9Oeo1*****",
    "grant_type": "authorization_code",
    "redirect_uri": ""
}

小微刷新access token

向技能适配器厂商的access_token_uri地址发送post请求以刷新token,Content-Type 为application/json。请求参数为grant_type、client_id、client_secret、refresh_token 刷新token请求参数示例:

access_token_uri: https://xx.xxxxxxx.com/app/oauth.reqaccess
{
    "client_id": "L40KnWmoJWRjrwY8sHj****",
    "client_secret": "KPltGeJqMJeOYHOk05**o***",
    "grant_type": "refresh_token",
    "refresh_token": "*********"
}

技能适配器厂商返回access token

服务厂商返回access token,包含字段为refresh_token、expires_in、access_token 返回数据示例:

{
    "refresh_token": "8962478_FO4_EZBuGz0sp2vqEq*******",
    "expires_in": 15552000,
    "access_token": "8962478_FO4_EZBuGz0sp2vqEqx*******"
}

小微授权厂商

小微侧进行接口鉴权,厂商在请求小微接口之前,必须获取token。token有效期一般为72000,如果token过期,需要再次调用获取token接口,重新获取有效token.

厂商获取token

获取token接口地址

https://cloudim.weixin.qq.com/cloudim/cloudxw-bin/xwapi/iot/xw_iot_brand_token

Head说明

参数名称
Content-Typeapplication/json

ReportStateGetTokenRequest:

{
    "xw_transfer_req": {
        "iot_req": {
            "secret": "6fbe1772dcf2912267abf7e833675a56",           //为sha256(secret+appid+当前时间戳)
            "appid": 40,
            "comm_type": 14,               //必须为14 
            "timestamp": "1580533086"   
        }
    }
}

说明

属性描述是否必需
xw_transfer_req.iot_req.secretsecret由腾讯小微智能家居平台发放,此字段值为sha256(secret+appid+当前时间戳)值
xw_transfer_req.iot_req.appid腾讯小微智能家居平台发放,获取token必须 int型
xw_transfer_req.iot_req.comm_type必须为14
xw_transfer_req.iot_req.timestamp当前时间戳

ReportStateGetTokenResponse:

{
    "code": 0,
    "acccessToken": "string",
    "expires_in": 72000,
    "msg": "获取token成功"
}

说明

属性描述是否必需
code返回的状态码,0:成功, 1: 获取token失败:缺少必要参数或者格式错误,2: 获取token失败,6:系统错误
acccessToken返回的token数据。
expires_in有效时间。
msg提示信息。当code为0时,提示"获取token成功"。当code为1时,提示"获取token失败:缺少必要参数或者格式错误",当code为2时,获取token失败。当code为6时,系统错误。

“腾讯小微”小程序兼容性

强烈建议选择跳转开发者自有智能家居小程序来完成用户授权。可让用户更短的路径完成授权。

如采用跳转web授权页面来完成用户授权,需要在原有厂商技能用户授权登录页的授权域名根目录下,放置 《小微认证文件》(对应文件名和内容都不可更改),并发送邮件到 xiaowei_smarthome@tencent.com 申请开通对应的授权URL地址的访问,以确保能在腾讯小微小程序中正常打开。

重庆互联网项目从2004年开始为各行各业提供互联网发展解决方案,专业从事网站、小程序、微信公众号、APP、电商平台、系统等互联网平台开发,帮助企业实现从传统行业到互联网的完美转型。截止目前,重庆互联网合作的企业遍布全国各地,20年的开发经验和完善的售后服务体系获得合作客户的高度认可!

关注重庆互联网官方公众号,即可获取粉丝专享福利!

重庆互联网公众号二维码.jpg

网友留言评论
我要评论
评论

欢迎广大用户为此页面进行评价,评价成功将获得积分奖励!

  • 赞(0
    踩(0
重庆网站定制建设
  • 重庆网站建设平台
  • 重庆网站优化公司
  • 重庆网络推广公司哪家好
  • 重庆APP制作公司
版权所有 ©2004-2024 重庆市渝中区圣灵科技信息有限公司 渝ICP备16004600号-14 渝公网安备50010802001420号 电子营业执照
重庆公众号制作哪家好
二维码
联系客服 重庆商城网站建设