智能家居隐身接入

优质
小牛编辑
186浏览
2023-12-01

在完成「智能家居设备接入」后,有些厂商还希望在自有 APP 中集成若琪手机 SDK,通过若琪手机 SDK 登录为厂商 APP 用户自动绑定若琪账号,从而实现通过若琪语音控制自有设备的功能。

集成这部分能力,需要以下 4 个步骤:

1.1. 为若琪智能家居分配 appId 和 appSecret,实现基于 JWT 签名的服务端授权

在实现「智能家居设备接入流程」时,授权遵循的是 OAuth 2.0 协议。这是因为用户在若琪智能家居页面添加设备时,会选择某个厂商品牌,若琪账号绑定厂商账号的流程必须由用户主动发起。

而在「语音控制引擎接入」流程中,若琪账号由调用 SDK 登录接口时自动创建,对授权过程是无感知的。为了实现这种无感知的授权过程,我们会使用厂商分配的 appSecret 对 appId、厂商用户 ID 进行签名,厂商在接收到该签名时解码和验权。

因此,您需要预先准备:

1.2. 向若琪申请 clientId 和 clientSecret

你需要先在开放平台注册一个帐号,把帐号、联系邮箱、步骤一中分配好的 appId 和 appSecret,连同申请说明通过邮箱:smarthomeconnect@rokid.com 发给我们,申请 clientId 和 clientSecret。

1.3. 接入若琪手机 SDK

拿到了 clientId 和 clientSecret 后,配置并创建 SDK Client。

您可以参考以下文档集成若琪手机 SDK:

1.4. 接入智能家居 Homebase Open API

在若琪 SDK 中,您可以通过 SDK 提供的方法获取用户登录的 Token,具体参考以下文档:

接着,通过 Authorization HTTP 请求头携带用户 Token 来进行 Homebase Open API 鉴权。

例如:

发起设备搜索

调用这个接口, 我们会发一次用户设备同步:

接口地址: GET https://homebase-openapi.rokid.com/api/trigger-discovery

GET /api/trigger-discovery HTTP/1.1
Host: homebase-openapi.rokid.com
Authorization: <your-user-token-here-这里填写通过SDK获取的用户Token>
Cache-Control: no-cache

用户 Token 会过期, 发起设备搜索同步接口推荐放在 App 内执行。

1.5. 五、获得帮助

想要获得更多帮助,可以发邮件到如下商务邮箱:smarthomeconnect@rokid.com