更新记录
1.0.5(2022-06-15) 下载此版本
1、更新安卓调用客服闪退问题
1.0.3(2022-06-10) 下载此版本
1.更新插件
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 10.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | 适用版本区间:9 - 15 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
简介
这是网易七鱼在线客服SDK的UniApp原生封装插件,支持Android/iOS,支持平台版的很多功能,支持自定义配置等等。
关于SDK的文档,请参考官方文档。
注意,本插件只能在App端使用,小程序或者H5请使用七鱼官方的Web SDK或者微信小程序SDK。
本插件向 UniApp 公开了大部分 API,方便您自由使用相关功能。
如果在插件使用中遇到了问题或者bug,或者有缺少的API, 欢迎向我提出建议,我会尽量修改以满足您的要求。
使用说明
请绑定插件至您的项目,然后在插件配置中配置您的七鱼在线客服appKey,否则客服功能将无法正常使用。
绑定后请生成一个自定义调试基座,调试时请选择自定义调试基座。
在代码中导入模块,然后调用相关方法,例如:
const qiyukfModule = uni.requireNativePlugin('imengyu-Qiyukf-QiyukfModule')
qiyukfModule.openService({
staffId: 481473168,
title: '咨询客服',
sourceUrl: 'mine',
sourceTitle: '我的',
}, (res) => {
console.log(res);
});
具体方法说明,见下方 API 文档。
API 文档
事先说明: Android 与 iOS 两个端提供的 API 并不是完全相同的,因为七鱼SDK本身提供的就不一样,插件并没有过度封装成一样的方法,因为这本身没有意义,而且很可能会造成您使用上出现疑问。因此,大部分API与七鱼官方一致,方便您查阅官方文档。Android 与 iOS 两个端的差异需要您在自己的App中分别处理。
所有Android/iOS两个端的差异会在下方说明。
在使用本插件之前请查阅官方SDK文档:Android 和 iOS。
基础
CRM对接
-
setUserInfo(data, callback)
上报用户信息。
- data 参数
属性 类型 必填 说明 userId string 是 用户唯一性标识 data string 是 JSON 字符串形式,展示在客服端信息 authToken string 否 若企业需校验用户的 AuthToken,在此字段填写,为空则不校验 - callback 回调参数
属性 类型 必填 说明 success boolean 是 表示是否成功 errMsg string 否 错误信息 code number 否 七鱼返回的状态码 -
clearUserInfo()
注销用户.
SDK 方法
-
isInit(options, callback)
获取七鱼SDK当前是否已初始化。
- options 参数
无参数
- callback 回调参数
属性 类型 必填 说明 isInit boolean 是 当前是否已初始化 -
toggleNotification(options)
(Android)通知栏消息提醒开关控制。
默认情况下,只有访客在聊天界面时,才不会有通知栏提醒,其他界面以及 App 在后台时,都会有消息提醒。如果当 App 在前台时,不需要通知栏提醒新消息,可以调用toggleNotification关闭消息提醒,然后在 App 退到后台时,调用toggleNotification重新打开。
- options 参数
属性 类型 必填 说明 on boolean 是 用户唯一性标识 -
clearCache()
清空七鱼缓存文件, 不会清空聊天记录。
打开客服窗口
-
openService(options, eventBus)
打开七鱼SDK客服窗口。
第一次打开需要指定options参数,第二次调用时如果之前的客服会话未关闭,则参数无效,需要先调用
closeService
关闭当前客服会话,再重新打开。-
Android 参数与返回:
-
options 参数
属性 类型 必填 说明 staffId number 否 客服ID groupId number 否 客服组ID shopId number 否 要咨询的商家 ID 平台电商调用,非平台电商不需要该字段。 robotFirst boolean 否 如果指定了 groupId 或者 staffId 时,该参数有效。表示会先进机器人,之后如果用户转人工服务,再分配给上面指定的groupId 或者 staffId robotId number 否 机器人ID,如果开启了机器人,该参数有效。如果不设置,将连接默认机器人。 机器人ID可以在管理后台的 设置 -> APP接入 中查看。 faqGroupId number 否 机器人热门问题组 ID 如果指定了此参数,且请求客服为机器人客服,则会下发该 ID 对应的热门问题。 热门问题组 ID 可在管理后台查询。 quickEntryList Array<QuickEntry>
否 人工客服时显示在输入框上方的快捷入口,如“选订单”,点击后可以响应自定义事件。在 setCustomEventsHandler
设置自定义事件接收器中会以 QuickEntryClick 事件回调。lifeCycleOptions LifeCycleOptions
否 对用户咨询会话的一些生命周期控制选项。通过这些选项,APP可以自定义是否允许用户主动结束会话, 用户主动退出排队等开关,以及排队过程中用户按返回键的提示语等信息。 默认为 null productDetail ProductDetail
否 访客发起会话时所带的商品消息信息 shopEntrance ShopEntrance
否 商家入口信息 如果为 null ,则不显示商家入口 sessionListEntrance SessionListEntrance
否 会话列表入口信息 如果为 null ,则不显示会话列表入口 prompt string 否 连接专属客服成功时候的提示语 custom string 否 可自定义传入的字符串,比如商品详细信息,用户操作状态等等, 在分配客服时该字段会传递给客服。 sourceTitle string 否 来源标题 sourceUrl string 否 来源链接 此处不做链接相关校验,可传任意字符串 VIPStaffAvatarUrl string 否 专属客服头像的 url ,如果配置了该字段,那么与这个客服聊天的消息都会为这个字段 vipStaffName string 否 专属客服的名字 vipStaffWelcomeMsg string 否 专属客服的欢迎语 vipStaffid string 否 专属客服的 id vipLevel number 否 用户VIP等级 0:非VIP(默认) 1-10:VIP等级 11:通用VIP(不显示等级) robotWelcomeMsgId string 否 机器人欢迎语 id ,可以通过该参数配置不同的机器人欢迎语 leaveMsgTemplateId string 否 留言模版 id ,可以通过指定该参数配置不同的留言模版 forbidUseCleanTopStart boolean 否 是否禁止使用 FLAG_ACTIVITY_CLEAR_TOP 去启动客服 Activity,默认为 false - QuickEntry 结构
属性 类型 必填 说明 id number 是 这个快捷入口ID title string 是 快捷入口标题 iconUrl string 是 快捷入口图标的URL - ShopEntrance 结构
属性 类型 必填 说明 logo string 是 商家logo url 图片地址 name string 是 商家名称 最多显示三个字符超出将显示“xx...” - SessionListEntrance 结构
属性 类型 必填 说明 position string 是 入口图片资源id名称。建议为半透明图片,如果不设置将显示默认图片 imageResId string 是 入口位置。目前包含TOP_LEFT和TOP_RIGHT,即屏幕左上角和右上角,如果不设置将默认位于右上角 - LifeCycleOptions 结构
属性 类型 必填 说明 canCloseSession boolean 否 设置是否允许用户主动结束会话。 设置该选项后,在会话状态下,右上角会有结束会话的入口 canQuitQueue boolean 是 设置是否允许用户主动退出排队。 设置该选项后,在排队状态下,右上角会有退出排队的入口。如果用户通过按返回键退出,会给出提示。 quitQueuePrompt string 是 设置排队状态下,按返回键时给用户的提示语,提示用户是否要退出排队。 注意: 该选项只有在 canQuitQueue 设置为 true 时才有效。 - ProductDetail 结构
属性 类型 说明 title string 设置自定义商品消息的标题,非必填,未填写时不显示,消息传输时不超过100字,超过时自动截断进行传输。 picture string 设置自定义商品消息的缩略图地址,非必填,未填写时显示默认图片,消息传输时不超过1000字,超过时自动截断进行传输。 desc string 设置自定义商品消息的摘要,非必填,未填写时不显示,消息传输时不超过300字,超过时自动截断进行传输。 note string 设置自定义商品消息的备注,非必填,未填写时不显示,消息传输时不超过100字,超过时自动截断进行传输。 url string 设置自定义商品消息点击后的跳转地址,非必填,未填写时不可点击,消息传输时不超过1000字,超过时自动截断进行传输。 show number 访客发起会话时,设置自定义商品消息是否显示在访客端,非必填,1为显示,未填写或者填入其他值时不显示在访客端。 alwaysSend boolean 设置是否每次打开聊天窗口都发送商品消息。(相同的商品信息不会重复发送) openTemplate boolean 是否开启新模版的展示 sendByUser boolean 设置商品是否需要手动发送 actionText string 设置底部发送链接的 text actionTextColor string 设置发送链接文字的颜色 isOpenReselect boolean 设置是否展示重新选择按钮 reselectText string 设置重新选择按钮的文案 handlerTag string 设置重新选择事件的标志,当点击重新选择按钮的点击事件可能会用到 ext string 设置扩展字段 tags ProductDetailTag[] 设置快捷入口列表。 -
ProductDetailTag 结构
属性 类型 说明 data string 设置传递给iframe页面的数据 focusIframe string 如果这个url需要跳转到七鱼客服界面中嵌入的iframe标签, 可通过该接口传入对应的标签名 data string 设置操作入口的显示名字。 url string 设置点击响应跳转的url地址
-
eventBus 返回
属性 类型 必填 说明 type string
是 事件类型,见下方 ... 否 不同事件类型有不同参数,见下方 - OpenServiceResult :调用 openService 返回的结果
属性 类型 必填 说明 success boolean 是 表示是否成功 errMsg string 否 错误信息 - SessionUpdate :当前会话更新时发生回调,例如添加、删除、新消息等
属性 类型 必填 说明 success boolean 是 表示是否成功 shopId string 是 当前会话的商家ID contactId string 是 当前会话的联系ID content string 是 当前会话的最新一条消息内容 time string 是 当前会话的最新一条消息的时间戳 unreadCount string 是 当前会话的商家的未读消息条数 msgStatus string 是 当前会话的最新一条消息状态 有这几种状态 draft,sending,success,fail,read,unread - SessionDelete :当前会话结束删除时发生
属性 类型 必填 说明 success boolean 是 表示是否成功 shopId string 是 当前会话的商家ID -
iOS 参数与返回:
-
options 参数
属性 类型 必填 说明 sourceTitle string 否 来源标题 title可对应管理后台“App核心页面列表”中“页面名称”(v5.10.0) sourceUrl string 否 来源链接 urlString可对应管理后台“App核心页面列表”中“页面链接”(v5.10.0) 此处不做链接相关校验,可传任意字符串 custom string 否 来源自定义信息 shopId string 否 如果是平台企业,可以填写目标商家ID,非平台不需要此字段 groupId number 否 访客分流 分组Id staffId number 否 访客分流 客服Id robotId number 否 机器人Id vipLevel number 否 vip等级 commonQuestionTemplateId number 否 常见问题 模板Id robotWelcomeTemplateId number 否 机器人欢迎语 模板Id shuntTemplateId number 否 多入口分流 模板Id title string 否 会话窗口标题 openRobotInShuntMode boolean 否 访客分流 是否开启机器人 仅设置staffId/groupId时生效 commodityInfo QYCommodityInfo 否 商品信息展示 canCopyCommodityInfo boolean 否 商品消息是否支持长按复制urlString信息,默认为true staffInfo QYStaffInfo 否 人工客服信息 quickEntryList Array<QYButtonInfo>
否 输入区域上方工具栏内的按钮信息 autoSendInRobot boolean 否 机器人自动发送商品信息功能 messagePageLimit number 否 每页消息加载的最大数量,默认为20条 hideHistoryMessages boolean 否 是否收起历史消息,默认为false;若设置为true,进入会话界面时若需创建新会话,则收起历史消息 historyMessagesTip string 否 历史消息提示文案,默认为“——以上为历史消息——”;仅在hideHistoryMessages为true,首次下拉历史消息时展示 - QYCommodityInfo 商品信息结构
属性 类型 必填 说明 pictureUrlString string 否 商品图片链接,字符数要求小于1000 title string 否 商品标题,字符数要求小于100 desc string 否 商品描述,字符数要求小于300 note string 否 备注信息,可以显示价格,订单号等,字符数要求小于100 urlString string 否 跳转url,字符数要求小于1000 tagsArray QYCommodityTag[] 否 标签数据,数组类型 tagsString string 否 标签数据,字符串类型,与数组类型二选一 show boolean 否 发送时是否在访客端隐藏,默认隐藏 isPictureLink boolean 否 是否仅显示商品图片,默认否 sendByUser boolean 否 是否由访客主动发送,默认否;设置为true,消息下方新增发送按钮 (v4.4.0) actionText string 否 发送按钮文案 actionTextColor string 否 发送按钮文案颜色 ext string 否 一般用户不需要填这个字段,这个字段仅供特定用户使 -
QYCommodityTag 结构
属性 类型 必填 说明 label string 否 标签标题 url string 否 跳转URL focusIframe string 否 data string 否 -
QYButtonInfo 结构
属性 类型 必填 说明 title string 是 标题 id number 是 按钮ID - QYStaffInfo 人工客服信息结构
属性 类型 必填 说明 staffId string 否 客服ID,限制20字符 nickName string 否 客服昵称,限制20字符 iconURL string 否 客服头像URL accessTip string 否 接入提示,限制50字符 infoDesc string 否 客服信息描述 -
eventBus 返回
属性 类型 必填 说明 type string
是 事件类型,见下方 ... 否 不同事件类型有不同参数,见下方 - OpenServiceResult :调用 openService 返回的结果
属性 类型 必填 说明 success boolean 是 表示是否成功 errMsg string 否 错误信息 - SessionUpdate :当前会话更新时发生回调,例如添加、删除、新消息等
属性 类型 必填 说明 success boolean 是 表示是否成功 shopId string 是 当前会话的商家ID content string 是 当前会话的最新一条消息内容 time string 是 当前会话的最新一条消息的时间戳 unreadCount string 是 当前会话的商家的未读消息条数 - SessionDelete :当前会话结束删除时发生
属性 类型 必填 说明 success boolean 是 表示是否成功 shopId string 是 当前会话的商家ID - ReceiveMessage :当前会话有新消息时发生
属性 类型 必填 说明 message QYMessage 是 新消息 - ShopEntranceClick :点击右上角按钮回调(对于平台电商来说,这里可以考虑放“商铺入口”)
无特殊参数。
- SessionListEntranceClick :点击聊天内容区域的按钮回调(对于平台电商来说,这里可以考虑放置“会话列表入口“)
无特殊参数。
- QuickEntryClick : 工具栏内按钮点击回调定义
属性 类型 必填 说明 title string 是 按钮标题 id string 是 按钮ID actionType number 是 actionType为1表示发送文本消息title,2表示openURL或是自定义行为 index number 是 index表示该button位置 -
QYMessage 结构
属性 类型 必填 说明 type string 是 消息类型 None未知,Text文字,Image图片,Audio音频,Video视频,File文件, Custom自定义 text string 是 消息文本内容 content string 是 消息文本内容,同text time number 是 消息时间戳
-
-
closeService(options, callback)
关闭
openService
打开的客服会话。- options 参数
无参数
- callback 回调参数
属性 类型 必填 说明 success boolean 是 表示是否成功 errMsg string 否 错误信息
发送消息
-
sendProductMessage(options)
发送商品信息。
- options 参数
属性 类型 必填 说明 shopId string 否 如果是平台企业,可以填写目标发送商家ID,非平台不需要此字段 ... 是 Android 商品结构请参考 openService
的 ProductDetail 结构... 是 iOS 商品结构请参考 openService
的 QYCommodityInfo 结构 -
sendMessage(options)
手动发送信息。
- options 参数
属性 类型 必填 说明 shopId string 否 如果是平台企业,可以填写目标发送商家ID,非平台不需要此字段 type string 是 不同类型消息参数不同,见下方 -
file 发送文件消息
属性 类型 必填 说明 filePath string 是 文件路径,请转为绝对路径 displayName string 否 显示名称 IOS 需要传 -
text 发送文字消息
属性 类型 必填 说明 text string 是 文字 -
video 发送视频消息
属性 类型 必填 说明 filePath string 是 文件路径,请转为绝对路径 displayName string 否 视频显示名称, IOS 不用传 width number 否 视频显示宽度, IOS 不用传 height number 否 视频显示高度, IOS 不用传 duration number 否 视频时长, IOS 不用传 -
image 发送图片消息
属性 类型 必填 说明 filePath string 是 文件路径,请转为绝对路径 displayName string 否 图片显示名称, IOS 不用传
新消息提醒与未读数
未读数
-
getUnreadCount(options, callback)
获取总的未读数。
- options 参数
无参数
- callback 回调参数
属性 类型 必填 说明 unreadCount number 是 总的未读数 -
clearUnreadCount()
清除全部未读数。
-
POPClearUnreadCount(options)
平台企业清除全部未读数。
- options 参数
属性 类型 必填 说明 shopId string 是 商家ID -
addUnreadCountChangeListener(options, callback)
添加未读数变化监听回调。
添加成功后会回调返回一次count为0,用于接收id。
- options 参数
无参数
- callback 回调参数
属性 类型 必填 说明 count number 是 当前未读数 id number 是 当前监听回调的ID,可以使用 removeUnreadCountChangeListener 停止监听 -
removeUnreadCountChangeListener(options)
移除未读数变化监听回调。
- options 参数
属性 类型 必填 说明 id number 是 addUnreadCountChangeListener 返回的监听回调的ID
新消息提醒
普通版新消息是通过 addUnreadCountChangeListener 判断未读数是否变化,变化就是有新消息,然后调用 queryLastMessage 获取最后一条消息内容,就可以显示提示框了。
平台版因为要区分不同的会话,您可调用 POPAddSessionListChangedListener 添加商家更新监听器,处理商家状态变化。
关于通知栏新消息的点击处理
-
Android通知栏新消息的点击处理,参见官方文档。
插件封装了官方文档中提供的方法,你可以在 App.vue OnShow 中调用以下方法:
qiyukfModule.checkIntentForMessage((dat) => { if(dat.hasExtra) { if(dat.messages.length > 0) { console.log('点击了新消息!', dat.messages[0]); //在这里可以自由处理,例如,重新打开客服窗口 qiyukfModule.resetIntent(); //处理后需要重置Intent数据,防止重复打开 } } });
checkIntentForMessage(callback)
点击通知栏提醒直接跳转到会话窗口检查 (Android)。
- callback 回调参数
属性 类型 必填 说明 hasExtra boolean 是 表示当前用户是否点击了通知栏 messageContent boolean 是 消息文字 messages array 否 当前消息数组,消息结构与 queryLastMessage 返回的结构一致 key string 否 resetIntent()
重置检查Intent (Android)。处理后需要重置Intent数据,防止重复打开。
changeNotificationOptions(options)
Android 通知栏配置。
-
options参数
属性 类型 必填 说明 notificationColor string 否 通知颜色 notificationSound string 否 通知声音文件路径 notificationSmallIconId string 否 通知小图标的resId ring boolean 否 是否播放铃声 showBadge boolean 否 是否显示徽章 hideContent boolean 否 是否隐藏消息内容 downTimeToggle boolean 否 titleOnlyShowAppName boolean 否 标题是否只显示应用名称 downTimeEnableNotification boolean 否 customTitleWhenTeamNameEmpty string 否 downTimeBegin string 否 downTimeEnd string 否 ledARGB number 否 呼吸灯的ARGB数值 ledOnMs number 否 呼吸灯亮时间 ledOffMs number 否 呼吸灯灭时间 notificationFoldStyle string 否 ALL, CONTACT, EXPAND notificationExtraType string 否 MESSAGE, JSON_ARR_STR
-
IOS通知栏新消息的点击处理可以调用 setCustomEventsHandler 设置自定义事件处理,你需要处理 NotificationClick 事件,请参考 setCustomEventsHandler ,或者是打开客服时监听回调的 ReceiveMessage 事件。
获取最后一条消息
-
queryLastMessage(options, callback)
(Android)获取和客服的最后一条聊天消息内容。
- options 参数
无参数
- callback 回调参数
属性 类型 必填 说明 content string 是 消息内容 time number 是 消息时间戳 remoteRead boolean 是 远程是否已读 sessionId string 是 消息所属会话ID fromAccount string 是 消息所属账号
评价
-
openEvaluation(options, callback)
(Android)打开评价界面,如果自定义了评价界面会跳转自定义的评价界面,如果没有自定义,则进行七鱼评价界面的流程.
- options 参数
无参数
- callback 回调参数
属性 类型 必填 说明 data boolean 否 评价结果对象 result number 否 评价结果状态码 success boolean 是 表示是否成功 errMsg string 是 错误信息 -
setCustomEvaluation(options, callback)
设置自定义评价接口,只能设置一次,可使用deleteCustomEvaluation删除。
-
options 参数
-
Android
无参数
-
iOS
属性 类型 必填 说明 shopId string 否 平台版是你需要请求的商家ID,普通版可以为空 -
callback 回调参数
-
Android
属性 类型 必填 说明 type string 是 事件类型,有不同的参数,见下 success boolean 是 表示是否成功 errMsg string 是 错误信息 - EvaluationStateChange 评价状态更改事件
属性 类型 必填 说明 state number 是 评价状态 0:不可评价,1:可评价,2:评价完成 - EvaluationMessageClick 邀评消息被点击,App 方可以在此方法启动自己的评价界面
属性 类型 必填 说明 entry EvaluationOpenEntry 否 评价配置数据 -
EvaluationOpenEntry 结构
属性 类型 必填 说明 evaluatorScenes number 否 评价配置数据 lastSource number 否 评价配置数据 lastRemark String 否 评价配置数据 exchange String 否 评价配置数据 sessionId number 否 评价配置数据 title String 否 评价配置数据 type number 否 评价配置数据 resolvedEnabled number 否 评价配置数据 resolvedRequired number 否 评价配置数据 evaluationEntryList Array<EvaluationOptionEntry>
否 评价配置数据 - EvaluationOptionEntry 结构
属性 类型 必填 说明 commentRequired boolean 否 评价配置数据 name string 否 评价配置数据 tagList string[] 否 评价配置数据 tagRequired boolean 否 评价配置数据 value number 否 评价配置数据
-
iOS
属性 类型 必填 说明 type string 是 事件类型,有不同的参数,见下 success boolean 是 表示是否成功 errMsg string 是 错误信息 - RobotEvaluation 机器人满意度评价事件
属性 类型 必填 说明 data QYEvaluactionData 是 评价数据,包括评价模式、选项及标签、上次评价结果等数据,据此构建评价界面 - Evaluation 人工满意度评价事件
属性 类型 必填 说明 data QYEvaluactionData 是 评价数据,包括评价模式、选项及标签、上次评价结果等数据,据此构建评价界面 - QYEvaluactionData 结构
属性 类型 必填 说明 urlString string 是 评价页面URL,对应“管理后台-评价样式-新页面”填写的字符串 sessionId number 是 评价会话ID,提交评价结果时需透传 optionList Arrray<QYEvaluationOptionData>
是 选项数据 mode string 是 评价模式 resolvedEnabled boolean 是 是否向访客收集“您的问题是否解决” resolvedRequired boolean 是 “您的问题是否解决”是否必填 -
QYEvaluactionData.mode 枚举
- QYEvaluationModeTwoLevel 模式一(二级满意度):满意/不满意
- QYEvaluationModeThreeLevel 模式二(三级满意度):满意/一般/不满意
- QYEvaluationModeFourLevel 模式三(四级满意度):非常满意/满意/不满意/非常不满意
- QYEvaluationModeFiveLevel 模式四(五级满意度):非常满意/满意/一般/不满意/非常不满意
-
QYEvaluationOptionData 结构
属性 类型 必填 说明 option string 是 选项类型 name string 是 选项名称 score number 是 选项分值 tagList string[] 是 标签 tagRequired string 是 标签是否必填 remarkRequired string 是 备注是否必填 - QYEvaluationOptionData.option 枚举
- QYEvaluationOptionVerySatisfied 非常满意
- QYEvaluationOptionSatisfied 满意
- QYEvaluationOptionOrdinary 一般
- QYEvaluationOptionDissatisfied /不满意
- QYEvaluationOptionVeryDissatisfied 非常不满意
-
-
deleteCustomEvaluation()
删除 setCustomEvaluation 设置的评价接口
-
sendEvaluationResult(options, callback)
(iOS)发送人工满意度评价结果.
- options 参数
属性 类型 必填 说明 shopId string 否 平台版是你需要请求的商家ID,普通版可以为空 - QYEvaluactionResult
属性 类型 必填 说明 sessionId number 是 评价会话ID,不可为空 mode string 是 评价模式,透传 QYEvaluactionData.mode(提交机器人评价结果时此项必须) selectOption QYEvaluationOptionData 是 选中的选项,不可为空 (结构参见setCustomEvaluation) selectTags string[] 是 选中的标签,若selectOption的tagRequired必填,则selectTags不可为空 remarkString string 是 评价备注,若selectOption的remarkRequired必填,则remarkString不可为空 resolveStatus string 是 QYEvaluationResolveStatus 是否解决,若resolvedRequired必填,则resolveStatus不可为None -
QYEvaluationResolveStatus 枚举
- QYEvaluationResolveStatusResolved 已解决
- QYEvaluationResolveStatusUnsolved 未解决
-
callback 回调参数
属性 类型 必填 说明 state string 否 评价结果状态 QYEvaluationState result number 否 评价结果状态码 success boolean 是 表示是否成功 errMsg string 是 错误信息 - QYEvaluationState 枚举
- QYEvaluationStateSuccessFirst = 1 成功-首次评价
- QYEvaluationStateSuccessRevise 成功-修改评价
- QYEvaluationStateFailParamError 失败-发送参数错误
- QYEvaluationStateFailNetError 失败-网络错误
- QYEvaluationStateFailNetTimeout 失败-网络超时
- QYEvaluationStateFailTimeout 失败-评价超时
- QYEvaluationStateFailUnknown 失败-未知原因不可评价
-
sendRobotEvaluationResult(options, callback)
(iOS)发送机器人满意度评价结果。
参数,回调 与
sendEvaluationResult
基本相同。 -
doCustomEvaluation(options, callback)
(Android)自定义评价界面进行评价。
- options 参数
属性 类型 必填 说明 shopCode string 是 商家ID, 在 EvaluationOpenEntry 里面有这个值,只需要回传就可以了 sessionId number 是 会话 ID ,在 EvaluationOpenEntry 里面有这个值,只需要回传就可以了 score number 是 评分 remark string 是 评价内容 tagList string[] 是 标签 name string 是 评价结果的文案,例如非常满意、满意、不满意等 - callback 回调参数
属性 类型 必填 说明 type string 是 事件类型,有不同的参数,见下 success boolean 是 表示是否成功 errMsg string 是 错误信息 -
POPOpenEvaluation(options, callback)
(Android)平台版打开七鱼SDK评价。
- options 参数
属性 类型 必填 说明 key string 是 createConsultSource 创建的 key - callback 回调参数
同 openEvaluation 返回参数。
人工客服
-
requestStaff(options)
(Android)普通版请求人工客服。
- options 参数
属性 类型 必填 说明 hunmanOnly boolean 否 是否只请求人工客服,true 则只请求人工客服 false 则为人工客服和机器人都可以 return 请求是否成功,有可能你当前的状态不需要请求客服,也有可能你已经在人工的状态了,那么也会返回 true -
requestStaff(options)
(iOS)请求人工客服。
- options 参数
属性 类型 必填 说明 shopId string 否 平台版是你需要请求的商家ID,普通版可以为空 - 返回参数
类型 string。
-
requestStaff2(options)
(Android)请求人工客服。
- options 参数
属性 类型 必填 说明 shopId string 否 要操作的会话平台ID,普通版可以不传 hunmanOnly boolean 是 是否只请求人工客服,true 则只请求人工客服 false 则为人工客服和机器人都可以 return 请求是否成功,有可能你当前的状态不需要请求客服,也有可能你已经在人工的状态了,那么也会返回 true requestStaffScenes number 是 请求客服的当前场景,因为现在请求客服事件可以进行拦截,这个值是与 RequestStaffEntry 中 scenes 中相对应的 staffId number 是 staffId groupId number 是 groupId -
changeHumanStaffWithStaffId(options, callback)
(iOS)切换人工客服。
- options 参数
属性 类型 必填 说明 shopId string 否 平台版是你需要请求的商家ID,普通版可以为空 closetip string 是 关闭客服的提示语 isHuman boolean 是 转接客服是否只请求人工 staffId number 是 想要转接的客服 id groupId number 是 想要转接的分组 id 如果同时设置 staffId 和 groupId 那么以 staffId 为主 - callback 回调参数
属性 类型 必填 说明 success boolean 是 表示是否成功 errMsg string 是 错误信息 -
transferStaff(options)
(Android)转接客服的接口,在必要的时候可以通过此方法进行客服的转接 方法内部实现是,现结束当前客服的会话,然后在重新连接一下客服。
- options 参数
属性 类型 必填 说明 shopId string 否 要操作的会话平台ID,普通版可以不传 closeSessionMsg string 是 关闭客服的提示语 isHuman boolean 是 转接客服是否只请求人工 staffId number 是 staffId groupId number 是 groupId -
quitQueue(options)
(Android)退出排队的方法。
- options 参数
属性 类型 必填 说明 shopId string 否 要操作的会话平台ID,普通版可以不传
多个客服窗口(平台版)
这里插件做了一层封装, 因为平台版有多个聊天会话,如果每次打开都需要传参数,非常麻烦。所以这里有个封装,你可以调用 createConsultSource 先创建一个会话,然后调用 POPOpenService 打开会话,第二次(例如从通知栏点击重新打开聊天),就不需要重新传一遍参数,只需要传入一个key即可,POPOpenService 会重新打开会话窗口。
-
createConsultSource(options)
创建会话。
- options 参数
参数同 openService 的参数。
-
isConsultSourceExists(options, callback)
获取一下指定的key会话是否创建。
- options 参数
属性 类型 必填 说明 key string 是 要检查的key - callback 返回参数
属性 类型 必填 说明 exists boolean 是 是否创建 -
deleteConsultSource(options)
删除指定的key会话。此操作会直接结束会话。
- options 参数
属性 类型 必填 说明 key string 是 要检查的key -
findConsultSourceKeyByShopId(options, callback)
通过shopId操作已创建的会话key。
- options 参数
属性 类型 必填 说明 shopId string 是 要检查的shopId - callback 返回参数
属性 类型 必填 说明 key string 是 找到的会话key,如果找不到,则返回空 -
getOpenedConsultSourceKeys(options, callback)
获取创建的会话列表。
- options 参数
无
- callback 返回参数
属性 类型 必填 说明 list array 是 列表, 结构参见下方 属性 类型 必填 说明 key array 是 会话key value object 是 - -
POPOpenService(options, callback)
平台版打开七鱼SDK客服窗口。
- options 参数
属性 类型 必填 说明 key string 是 createConsultSource 创建的会话key - callback 返回参数
返回参数同 openService 返回参数。
会话列表(平台版)
-
getSessionList(options, callback)
获取最近联系商家列表(主动获取会话列表)。
- options 参数
无
- callback 回调参数
属性 类型 必填 说明 list array 是 会话列表, 条目结构见下方 -
会话列表条目结构 (Android)
属性 类型 必填 说明 contactId string 是 联系ID msgStatus number 是 消息状态 -1 draft, 0 sending, 1 success, 2 fail, 3 read, 4 unread unreadCount number 是 未读数 content string 是 最后一条消息内容 time number 是 最后一条消息的时间戳 -
会话列表条目结构 (iOS)
属性 类型 必填 说明 contactId string 是 联系ID status number 是 消息状态 -1 draft, 0 sending, 1 success, 2 fail, 3 read, 4 unread unreadCount number 是 未读数 hasTrashWords boolean 是 是否有垃圾敏感词汇 content string 是 最后一条消息内容 lastMessageText string 是 最后一条消息内容 sessionName string 是 聊天会话名称 avatarImageUrlString string 是 聊天头像路径 time number 是 最后一条消息的时间戳
-
POPAddSessionListChangedListener(options, callback)
注册最近联系商家更新监听器(添加、删除、新消息等)
- options 参数
无参数
- callback 回调参数
属性 类型 必填 说明 type string 是 事件类型,'AddSuccess' 'SessionUpdate' 'SessionDelete' id number 是 当前监听回调的ID,可以使用 POPRemoveSessionListChangedListener 停止监听 -
AddSuccess 添加成功回调
-
SessionUpdate 会话更新回调(添加、新消息等)
属性 类型 必填 说明 list array 是 当前会话列表,条目结构详细见上方“会话列表条目结构” -
SessionDelete 会话删除回调
属性 类型 必填 说明 shopId string 是 会话的商家ID
-
POPRemoveSessionListChangedListener(options)
注销最近联系商家更新监听器(添加、删除、新消息等)
- options 参数
属性 类型 必填 说明 id number 是 POPAddSessionListChangedListener返回的ID -
POPQueryLastMessage(options, callback)
(Android)平台版获取和客服的最后一条聊天消息内容。。
- options 参数
属性 类型 必填 说明 shopId string 是 商家ID - callback 回调参数
返回消息结构与 queryLastMessage 返回的结构一致。
-
POPGetShopInfo(options, callback)
(Android)平台版根据商家ID获取商家信息,如名称,logo。
- options 参数
属性 类型 必填 说明 shopId string 是 商家ID - callback 回调参数
属性 类型 必填 说明 account string 是 账号 avatar string 是 商家头像URL name string 是 商家名称 -
POPQuerySessionStatus(options, callback)
(Android)平台版获取会话状态。
- options 参数
属性 类型 必填 说明 shopId string 是 商家ID - callback 回调参数
属性 类型 必填 说明 status string 是 NONE 未知,IN_SESSION 正在聊天,IN_QUEUE 正在排队 -
POPDeleteSession(options)
(Android)删除最近联系商家记录。
- options 参数
属性 类型 必填 说明 shopId string 是 商家ID clearMsgHistory boolean 是 是否同时清空消息记录 -
POPDeleteRecentSessionByShopId(options)
(IOS)七鱼平台删除会话项, 删除会话列表中的会话。
- options 参数
属性 类型 必填 说明 shopId string 是 商家ID deleteMessages boolean 是 是否同时清空消息记录
工单
-
openUserWorkSheetActivity(options)
自助启动查询工单界面。
- options 参数
属性 类型 必填 说明 templateIds number[] 是 工单模板 id isOpenUrge boolean 是 是否打开催单功能 shopId string 是 如果是平台版本传递 shopId,如果是非平台可以为空 - IOS 将结果以字符串形式返回。
-
presentWorkOrderViewControllerWithTemplateID(options)
(iOS)弹出工单页面自助提工单。
- options 参数
属性 类型 必填 说明 shopId string 否 平台版是你需要请求的商家ID,普通版可以为空 templateID number 是 工单模板 id - 返回参数
类型 string。
自定义界面
-
changeUICustomization(options)
更改界面自定义方法。
-
options 参数
-
以下仅显示参数与类型,具体说明请参考官方文档。
-
Android
- 请参考官方文档。
- 关于自定义资源。您可以在自己的项目中新建nativeplugins/imengyu-Qiyukf/android/res/drawable,在其中放置自己的图片资源。
{ msgBackgroundUri: string, msgBackgroundColor: string, msgListViewDividerHeight: number, hideLeftAvatar: boolean, hideRightAvatar: boolean, avatarShape: number, leftAvatar: string, rightAvatar: string, isShowTitleAvatar: boolean, tipsTextColor: string, tipsTextSize: number, msgItemBackgroundLeft: string, msgItemBackgroundRight: string, msgRobotItemBackgroundLeft: string, msgRobotItemBackgroundRight: string, audioMsgAnimationLeft: string, audioMsgAnimationRight: string, textMsgColorLeft: string, hyperLinkColorLeft: string, textMsgColorRight: string, hyperLinkColorRight: string, textMsgSize: number, inputTextColor: string, inputTextSize: number, topTipBarBackgroundColor: string, topTipBarTextSize: number, topTipBarTextColor: string, titleBackgroundColor: string, titleBarStyle: number, buttonBackgroundColorList: string, buttonTextColor: string, hideAudio: boolean, hideAudioWithRobot: boolean, hideEmoji: boolean, screenOrientation: number, hideKeyboardOnEnterConsult: boolean, robotBtnBack: string, robotBtnTextColor: string, inputUpBtnBack: string, inputUpBtloadingAnimationDrawablenBack: string, editTextHint: string, //说明参见 自定义样式 右上角按钮样式自定义 titleBarConfig: { titleBarRightQuitBtnBack: string, titleBarRightHumanBtnBack: string, titleBarRightEvaluatorBtnBack: string, titleBarRightImg: string, titleBarRightTextColor: string, titleBarRightText: string, }, //说明参见 自定义样式 输入栏区域自定义 inputPanelOptions: { voiceIconResId: string, emojiIconResId: string, photoIconResId: string, moreIconResId: string, showActionPanel: boolean, actionPanelOptions: { backgroundColor: string, actionListProvider: [{ type: 'Image'|'Camera'|'InquireWorkSheet'|'WorkSheet'|'Album'|'Custom', templateId?: number, //类型为 WorkSheet 需要填写此工单模板ID templateIds?: number[], //类型为 InquireWorkSheet 需要填写此工单模板ID数组 }], }, }, }
- TitleBarRightBtnClick 将发送全局事件: QiyuTitleBarRightBtnClick。
- inputPanelOptions 说明参见 自定义样式 输入栏区域自定义
- titleBarConfig 说明参见 自定义样式 右上角按钮样式自定义
- inputPanelOptions.actionPanelOptions类型为WorkSheet要填写工单模板ID, 参见 高级功能 访客自助提工单。
- inputPanelOptions.actionPanelOptions类型为 InquireWorkSheet需要填写工单模板ID, 参见 高级功能 访客自助查询工单。
-
iOS
- 请参考官方文档。
- 图片资源必须是本地路径。
{ sessionBackground: string, themeColor: string, customerHeadImage: string, rightItemStyleGrayOrWhite: number, showCloseSessionEntry: boolean, showHeadImage: boolean, showTopHeadImage: boolean, customerHeadImageUrl: string, customerMessageBubbleNormalImage: string, customerMessageBubblePressedImage: string, customMessageTextColor: string, customMessageHyperLinkColor: string, customMessageTextFontSize: string, serviceHeadImage: string, serviceMessageBubbleNormalImage: string, serviceMessageBubblePressedImage: string, serviceMessageTextColor: string, serviceMessageTextFontSize: number, serviceMessageHyperLinkColor: string, tipMessageTextColor: string, tipMessageTextFontSize: number, bypassDisplayMode: number, sessionMessageSpacing: number, headMessageSpacing: number, messageButtonTextColor: string, messageButtonBackColor: string, actionButtonTextColor: string, actionButtonBorderColor: string, inputTextColor: string, inputTextFontSize: number, inputTextPlaceholder: string, showAudioEntry: boolean, showAudioEntryInRobotMode: boolean, showEmoticonEntry: boolean, showImageEntry: boolean, autoShowKeyboard: boolean, showShopEntrance: boolean, imagePickerColor: string, showSessionListEntrance: boolean, bottomMargin: number, sessionListEntranceImage: string, sessionListEntrancePosition: number, sessionTipTextColor: string, sessionTipTextFontSize: number, customInputItems: [ { normalImage?: string, selectedImage?: string, key: string, text: string, } ], }
- customInputItems 说明参见 自定义样式 配置更多按钮
- customInputItems 的点击事件会在 QiyuCustomInputItemClick 全局事件发送。event.detail.key 是点击的条目key。
-
-
resetUICustomizationToDefault(options)
重置界面自定义至默认。
- options 参数
无
自定义事件
-
setCustomEventsHandler(options, callback)
设置自定义事件接收器。
- options 参数
无
-
callback 回调参数
-
Android
属性 类型 必填 说明 type string 是 事件类型,见下方 - UrlClick 链接点击事件
属性 类型 必填 说明 url string 是 链接 - MessageItemClick 消息条目点击事件
属性 类型 必填 说明 url string 是 链接 - QuickEntryClick 输入栏快捷入口点击事件
属性 类型 必填 说明 shopId string 是 商家ID iconUrl string 是 图标ID id string 是 QuickEntry的ID name string 是 QuickEntry的名称 - ShopEntranceClick 商家入口点击事件
属性 类型 必填 说明 shopId string 是 商家ID - SessionListEntranceClick 最近联系商家入口点击事件
无特殊参数。
-
iOS
属性 类型 必填 说明 type string 是 事件类型,见下方 - LinkClick 链接点击事件
属性 类型 必填 说明 linkAddress string 是 链接 - BotClick 机器人部分模板消息点击事件
属性 类型 必填 说明 target string 是 - params string 是 - - PushMessageClick 七鱼推送消息点击事件
属性 类型 必填 说明 linkAddress string 是 链接 - ShowBotCustomInfo 机器人自定义信息回调
属性 类型 必填 说明 array string 是 - - CommodityAction 订单卡片按钮点击事件
属性 类型 必填 说明 commodityInfo object 是 商品信息 - ExtraClick 消息扩展视图点击事件
属性 类型 必填 说明 extInfo string 是 extInfo - NotificationClick 系统消息点击
属性 类型 必填 说明 message object 是 消息结构 - EventClick 消息内部分点击事件数据透传
属性 类型 必填 说明 eventName string 是 eventData string 是 messageId string 是 - CustomButtonClick 自定义事件按钮点击事件
属性 类型 必填 说明 params object 是 参数 - AvatarClick 消息头像点击事件
属性 类型 必填 说明 avatarType number 是 头像类型 0人工客服 1机器人客服 2企业 3访客 accountID string 是 账号ID
-
resetCustomEventsHandlerToDefault(options)
删除 setCustomEventsHandler 设置的自定义事件接收器。
- options 参数
无