Live800 鸿蒙访客端SDK开发指南 -harmony

本文档仅适用于 DevEco-Studio 环境的harmony 开发人员。

编译环境

1.创建应用

请与Live800PC版本后台,自行创建 SDK 应用。创建好应用后,获取到的有效的 AppKey、 ServerUrl 和 AppSecret,将用于 SDK 的对话配置(如果 PC 端没有显示 ServerUrl,请联系Live800技术支持)。

获取接口加密秘钥 AppSecret

  1. 可通过 PC 客服端”系统设置 -> 接口地址 -> 接口加密密钥“查看

    ps:请确认PC客服端是最新版本,否则会导致AppSecret不显示。

2.导入SDK

Live800 SDK 提供的压缩包中包含:visitorsdk.har、开发指南和 sdk Demo 代码。

步骤一:将Live800提供的visitorsdk.har放入主项目的lib目录下,如果没有该目录,你需要自行进行创建。

步骤二:在主项目中的 oh-package.json5 文件添加对har 包的依赖

步骤三:在主项目中的module.json5中添加一下权限

3.快速接入

SDK 用户只需要关心 sdkManagerUserInfo 两个类。sdkManager 用于 SDK 的全局配置,包括初始化、打开对话页面、修改主题色等。UserInfo 用于访客属性配置,包括访客 id、访客姓名、访客头像等信息。

3.1.初始化

在您想要进入客服页面前,您对SDK进行初始化,必须进行以下四项设置:

A.设置服务器地址 (服务器同时支持 http 和 https)

sdkManager.setServerUrl(this.serverUrl)

B.设置 appkey

sdkManager.setAppKey(this.appKey)

C.设置 appSecret

sdkManager.setAppSecret(this.appSecret)

D.设置UserInfo

sdkManager.setUserInfo(this.createUserInfo())

3.2.进入对话页面

完成初始化及必要设置后,调用以下方法进入客服对话页面(对应于 Demo 的 Index 类中的内容):

sdkManager.startServer()

示例:

4.API介绍

4.1 UserInfo介绍

设置访客信息 UserInfo,可以配置访客姓名、备注信息、IP地址等内容,这些信息将会上传给 Live800 服务器用于业务逻辑或展示。下面分别进行介绍说明(附加 * 号的为重点关注项)。

4.1.1访客ID*

userIdguestId 的使用场景如下:

  1. 当用户未登陆app时,为匿名访客,然后进入客服对话页面,并与客服产生对话消息(仅设置了 guestId,并未设置 userId);

  2. 然后,该访客登陆app,成为受信任访客,并联系客服(guestIduserId 均设置了);

  3. 如果1和2设置的 guestId 为同一个值,服务器将会识别为同一个访客,并将1产生的对话消息带给2。

登录用户ID

UserInfouserId 属性代表登陆用户ID ,用于识别登陆用户(受信任访客)的身份。如果当前用户不是登陆用户,则忽略这个属性 。 可以使用您 App 中的用户ID来作为 userId,设置这个属性以后,SDK会自动将当前访客识别为信任访客。

游客ID

LIVUserInfoguestId 属性代表游客ID(或未登陆用户的ID)。游客ID应该储在 App 中,并确保同一个游客用户(在同一个手机上)每次咨询客服使用同一个 guestId ,不同手机的游客用户 guestId 不同。相同的 guestId ,接入对话,在客服端上会认为是同一个游客。 游客ID,可以用 UUID 来保证唯一性。 如果您不想管理 guestId ,可以不用设置 ,SDK内部会生成默认的 guestId

userIdguestId 字段的限制:

  1. 只能由 [0-9a-zA-Z_-] 组成,即只能由字母、数字、下划线和横杠组成;

  2. 长度必须小于 50 个字符。

4.1.2访客姓名*

UserInfo 的 name 属性为访客姓名,设置以后,客服端就能显示访客的姓名,否则显示访客的 userId 。该属性仅对受信任访客生效,为选填项。

4.1.3访客性别

UserInfo 的 gender 属性为访客的性别,可选值为"男"或者"女"。设置以后,客服端就能显示访客的性别。该属性仅对受信任访客生效,为选填项。

4.1.4手机号码

UserInfo 的 mobileNo 属性为访客手机号码。设置以后,客服端就能显示访客的手机号码。该属性仅对受信任访客生效,为选填项。

4.1.5备注信息

UserInfo 的 memo 属性代表访客的备注信息。设置以后,客服端就能显示备注信息。该属性仅对受信任访客生效,为选填项。

4.1.6访客头像*

UserInfo 的 userPhotoWebUrl 属性代表访客头像的本地文件路径或远端地址,该头像目前只在 SDK 访客端生效,为选填项。

4.1.7访客等级

LIVUserInfo 的 grade 属性代表访客等级。该字段为内容为数字类型的字符串(取值范围为1-9)。数字越大代表其等级越高,业务逻辑上会影响其接入顺序,等级越高越优先接入。该属性仅对受信任访客生效,为选填项。

4.1.8.访客登录名

LIVUserInfo 的 loginName 属性为访客登录名。设置以后,客服端就能显示访客的登录名。该属性仅对受信任访客生效,为选填项。

4.1.9.访客请求信息

UserInfo 的 requestInfo 属性代表访客请求信息,对应于 RequestInfo 类,该项为选填项。

例如设置访客的 ip 地址:

RequestInfo 类中的所有字段如下:

4.2.0访客路由信息

UserInfo 的 routingInfo 属性代表访客路由配置,用于将当前访客接通到指定的客服或客服组,对应于 RoutingInfo 类,该项为非必填项,默认使用后台配置的对话接入规则。

RoutingInfo 中的所有字段如下:

例如将当前访客绑定到客服id为6840841的客服:

4.2 SdkManager介绍

4.2.1设置服务器地址

4.2.2设置appKey

4.2.3设置AppSecret

4.2.4设置userInfo

4.2.5打开客服页面

注意此方法需要在最后调用

5.版本更新说明

2025-3-5 v.1.0.0

鸿蒙首个版本