# 网易七鱼 Uniapp SDK 开发指南

# 概述

此文档说明了Uniapp接入方式。

# 准备工作

  1. 已申请七鱼appkey

  2. 拿到七鱼Uniapp插件包

插件市场下载链接 (opens new window)

# 插件接入

导入步骤若存疑,可以详看Uniapp官网开发文档

  1. 将插件包导入到Uniapp工程的nativeplugins(如无可以创建)文件夹中

  2. manifest.json配置,App原生插件配置-》选择本地插件选项,导入七鱼插件包,并且填入对应的appKey

App原生插件配置

# 使用流程

  1. improt七鱼Module,如
 var qiyuModule = uni.requireNativePlugin("Netease-QiyuModule")
  1. 调用初始化方法initSdk

  2. 初始化成功后,可以按需调用七鱼api

部分api需要区分android/ios平台传不同参数,故api文档按平台来写,使用可以参考七鱼插件demo工程中的qiyu-module.vue

# API- Android

Api名称与作用同七鱼官方开发文档 (opens new window)

  1. initSdk()
  • 初始化,无回调
  1. 设置用户信息,有回调,该方法以及第一个入参的结构同七鱼官网开发文档- 上报用户信息 (opens new window)
setUserInfo({
userId: “”,
data: “”,
}, () => {}) 
  1. 方法参数以及作用详见:http://qiyukf.com/docs/guide/android/6-功能配置.html - 商品卡片 (opens new window) ,source的结构同ConsultSource
 openServiceActivity({
    title: '测试界面2',
    source: { 
        title: 'sse',
        vipLevel: 1, // 设置用户VIP等级
        robotId: 2222, //分配机器人
        staffId: 3444, //分配客服
        // groupId: 345, //客服组id
        // groupTmpId: 455, //分流客服组id
        robotFirst: false, //是否客服组优先
    },
}
  1. logout()
  • 退出登陆
  1. toggleNotification(boolean)
  • 推送开关
  1. 更新聊天界面配置,即时生效。

uiCustomization结构参考 http://qiyukf.com/docs/guide/android/5-自定义样式.html - 聊天窗口自定义 (opens new window)

updateOptions({
    isMixSDK: false,
    logSwitch: false,
    uiCustomization: {
        hideLeftAvatar: false,
        isShowTitleAvatar: true,
        hideRightAvatar: false,
        inputTextColor: '#ff5500',
    },
    statusBarNotificationConfig: {
        showBadge: false,
        titleOnlyShowAppName: true,
    }
}) 

# API- iOS

iOS端原生api参考:http://qiyukf.com/docs/guide/ios/2-接入说明.html (opens new window)

uniapp插件提供以下方法配置:

  • initSdk()
参数 参数说明
appKey 七鱼注册的企业唯一标识
appName 应用名称
pkCerName PushKit推送证书名;对应云信的pkCername(可以不传)
  • setUserInfo()
参数 参数说明
userId 用户唯一标识,如果传空则为匿名用户
data 透传数据,sdk不处理,直接转发给客服端

回调:code:200表示成功,其余表示失败

  • openServiceActivity()
参数 参数说明
title 客服页面标题
source 配置参数,具体传参格式及说明,参考demo
openMode 打开页面的方式push/present,默认push方式
  • logout()

切换账号时需要调此方法,再调setUserInfo