CRM对接

网易七鱼系统可在访客匿名状态下使用,同时提供对接企业 CRM 系统能力。轻量对接是指企业产品客户端(或网站)在获取到用户账号信息之后,将访客信息作为参数传递给网易七鱼系统,数据将展现在客服工作界面的当前会话和历史会话的 用户资料 标签下。

上报用户信息

QYUserInfo类用于承载用户信息,提供如下属性:

属性 类型 必须 说明
userId NSString 用户唯一性标识
data NSString 数组 JSON 字符串形式,展示在客服端信息

其中data属性采用数组的 JSON 字符串形式描述用户详细信息,数组中每个元素代表一个数据项,数据项以<key, value>对形式为基础,增加了额外字段以控制显示样式,具体可参考 网易七鱼企业信息对接开发指南

获取[QYSDK sharedSDK]单例后,调用如下接口上传用户信息:

/**
 *  设置个人信息。用户帐号登录成功之后,调用此函数
 *  注意:此方法尽量在账号登录成功后调用,而不应仅在进入客服界面时调用;否则可能会造成客服连接状态不稳定
 *
 *  @param userInfo 个人信息
 */
- (void)setUserInfo:(QYUserInfo *)userInfo;

/**
 *  设置个人信息,带authToken校验。用户帐号登录成功之后,调用此函数
 *
 *  @param userInfo 个人信息
 *  @param block authToken校验结果的回调
 */
- (void)setUserInfo:(QYUserInfo *)userInfo authTokenVerificationResultBlock:(QYCompletionWithResultBlock)block;

其中setUserInfo: authTokenVerificationResultBlock: 方法回调 AuthToken 校验结果,AuthToken 可通过[QYSDK sharedSDK]单例的如下接口设置:

/**
 *  设置authToken
 */
- (void)setAuthToken:(NSString *)authToken;

注销用户

App 退出账号时须调用 SDK 的注销操作。由[QYSDK sharedSDK]单例提供接口:

[[QYSDK sharedSDK] logout:^(BOOL success) {}];

该接口仅在用户退出账号或是账号过期等情况下调用,应避免频繁调用造成反复创建账号。

常见问题

  1. setUserInfo:调用时机导致的客服连接状态不稳定
    • setUserInfo:标准使用方法为 App 账号登录成功后,将拿到的账号信息构建成QYUserInfo对象进行上报。由于数据上报需要时间,加上不同的userId可能会导致通信底层账号切换,故当此方法调用时机与连接客服时机较近时,可能会导致无法连接客服问题,请及时调整接口调用时机。