跳到主要内容

画面集成

用户经常有需要在自有产品界面上临时访问设备画面的场景。而现有访问设备画面只能通过海为的应用产品。

画面集成功能是指用户可以通过接口获取到自有设备访问画面地址,从而可以将设备画面集成到自定义的应用或场景中进行访问和操作。

如果是局域网集成画面访问,只需要直接访问设备的 IP 地址即可,但如果是互联网的场景下要集成画面访问,就必须通过此说明书提供的功能来实现。


使用说明

1. 云网站

登录个人云网站,在云数据中心,将需要使用画面集成功能的设备添加到项目中,然后在项目编辑界面开启“画面集成”功能。

2. 云数据中心

记录云网站的登录账号、云数据中心的项目私钥、该项目下对应需要画面集成的设备 PN 码。

按照画面集成接口文档规范方式请求接口,即可获取访问设备的 URL,并可将 URL 集成到自定义的应用中进行访问。

提示

生成的 URL 有效时间为 5 分钟,过期后需要重新请求。


接口文档

API 接口:

接口https://cloud.haiwell.com/api/project/getProjectMachineVisitUrl
方法POST
描述取得访问设备的 URL
  • 参数:
字段是否必填描述备注
account账号项目所属账号(手机号、邮箱)
privateKey项目私钥云数据中心的项目私钥
machineCode机器码设备的 PN 码
platform平台代码1:浏览器、2:APP、7:小程序
or只读1:只读
un用户名组态端:用户安全处配置的本地用户名
pwd登录密码此本地用户的登录密码
loginway登录方式是否使用项目所属账号所关联的本地用户账号登录。 0:否;1:是;默认为 0

提示

1、“只读”字段不可与 “用户名“ 或 “登录密码” 或 “登录方式”一起使用。

2、当请求参数包含“用户名”、“登录密码”等信息,App 端有关联本地用户,且登录方式值为“1”时,将优先使用参数自带的“用户名”信息进行登录。

返回值:
Success:
result:{
url: "https://xxxx?passid=xxxx&platform=1&from=api",
testUrl:"https://xxxx/test"
}

Error:
error:{
code:"08012001" // 传入参数错误
}

error:{
code:"08010002" // 找不到设备,可能私钥、账号或机器码有误
}

error:{
code:"08012003" // 画面集成开关未开启
}

error:{
code:"08012004" // 云服务未开启
}
示例:
// 设置参数
var para = {
account: "13888888888", // 账号
privateKey: "df5exxxxxxxxxc9a1d", // 项目私钥
machineCode: "6102193407020190011", // 机器码
platform: 1 // 平台代码
};

// 发送请求
http.POST("https://cloud.haiwell.com/api/project/getProjectMachineVisitUrl", para).then(res => {
if (res.error != undefined) {
if (res.error.code == "08012001") {
// 参数设置错误
} else if (res.error.code == "08010002") {
// 找不到设备,可能私钥、账号或机器码有误
} else if (res.error.code == "08012003") {
// 【云数据中心】画面集成未开启
} else if (res.error.code == "08012004") {
// 设备【云服务】未开启
} else {
// 请求出错
}
} else if (res.result) {
// 请求成功,设置 URL
this.visitUrl = res.result.url;
} else {
// 发生未知错误
}
});

微信小程序域名配置

在 request 合法域名及 web-view 域名中添加以下域名:

https://cloud.haiwell.com

https://cn11.tunnel.iotbus.net

https://cn12.tunnel.iotbus.net

https://cn21.tunnel.iotbus.net

https://cn22.tunnel.iotbus.net