跳到主要内容

访客端开发文档

简介

微语访客端用于帮助开发者快速在自己的应用中集成在线客服功能,支持Web、iOS、Android、微信小程序等多平台接入。

访客端聊天界面

访客端聊天界面(ChatBox)是用户与客服交互的核心组件,它提供了丰富的功能以确保良好的沟通体验。

主要功能

  1. 消息展示

    • 支持多种消息类型:文本、图片、文件、视频、商品信息等
    • 消息气泡显示发送状态:发送中、发送成功、发送失败等
    • 消息时间戳显示
    • 支持富文本内容渲染
  2. 消息输入

    • 文本输入与发送
    • 表情选择器
    • 图片上传功能
    • 文件上传功能
    • 输入预览(对方可见正在输入的内容)
  3. 机器人交互

    • 智能机器人应答
    • 常见问题推荐
    • 相似问题推荐
    • 机器人结果评价(有用/无用反馈)
    • 机器人对话转人工客服
  4. 留言功能

    • 非工作时间或客服不在线时的留言提交
    • 支持文字和图片留言
    • 留言状态跟踪
    • 留言回复展示
  5. 服务评价

    • 客服主动邀请评价
    • 用户主动评价
    • 评分与评价内容提交
    • 问题是否解决的标记
  6. 智能提示

    • 实时输入建议
    • 输入关键词相关问题推荐
    • 热门问题展示
  7. 消息操作

    • 消息复制
    • 图片预览
    • 文件下载
    • 上下文菜单(右键菜单)

网络通信

聊天界面使用两种通信方式:

  1. WebSocket (STOMP) - 用于实时消息通信

    • 消息发送与接收
    • 状态更新
    • 输入预览
    • 在线状态维护
  2. HTTP请求 - 用于非实时操作

    • 会话初始化
    • 历史消息获取
    • 文件上传
    • 评价提交
    • 留言提交

客户化配置

访客端支持多种客户化配置:

  1. 主题设置

    • 明暗模式切换
    • 自定义导航栏颜色
    • 自定义背景色和文字颜色
  2. 多语言支持

    • 内置多语言支持
    • 可选语言:中文、英文等
  3. 界面布局

    • 导航栏显示/隐藏
    • 宽窄屏幕自适应
    • 右侧面板显示/隐藏
  4. 功能开关

    • 留言功能开关
    • 评价功能开关
    • 机器人功能开关
    • 文件上传开关

上下文沟通

为了提供更智能的服务,访客端会收集并利用以下上下文信息:

  1. 访客信息

    • UID
    • 昵称
    • 头像
    • VIP级别
    • 自定义字段
  2. 浏览信息

    • 浏览器类型
    • 操作系统
    • 设备信息
    • 来源页面
    • 页面标题
  3. 会话信息

    • 会话ID
    • 会话类型
    • 历史消息

技术实现细节

  1. 状态管理

    • 使用Zustand管理全局状态
    • 消息列表、访客信息等状态集中管理
  2. 消息处理

    • 消息发送队列
    • 消息状态追踪
    • 消息重发机制
  3. 实时预览

    • 使用防抖(debounce)技术优化实时预览
    • 输入内容智能建议
  4. 网络容错

    • WebSocket断线重连
    • 消息发送失败重试
    • 网络错误提示
  5. 安全处理

    • 消息内容安全检测
    • XSS防护
    • 敏感信息过滤

参数配置

ChatBox组件支持多种参数配置:

参数名类型说明默认值
orgstring企业UID-
tstring会话类型(0:一对一; 1:工作组, 2:机器人, 16:历史)"1"
sidstring会话ID(客服UID/工作组UID/机器人UID)-
langstring语言设置("zh-cn"/"zh-tw"/"en")"zh-cn"
modestring主题模式(light/dark/system)"system"
backgroundColorstring自定义导航背景色-
textColorstring自定义导航文字颜色-
refererstring来源页面-
titlestring页面标题-
urlstring页面URL-
navbarboolean是否显示导航栏,0表示隐藏true
navbarThemestring导航栏主题-
visitorUidstring自定义访客唯一ID自动生成
nicknamestring自定义访客昵称"访客"
avatarstring自定义访客头像默认头像
vipLevelstring访客VIP等级"0"
extrastring自定义访客额外信息(JSON格式)-
loadHistorystring是否自动加载历史聊天记录,值为"1"时加载,其他值不加载,详见历史消息-
goodsInfostring商品信息(JSON格式),详见商品信息对接-
orderInfostring订单信息(JSON格式),详见订单信息对接-
userInfostring用户信息(JSON格式),详见用户信息对接-

常见问题

如何跟已有用户系统对接?将访客信息传递给客服端?

可以通过以下方式将已有用户系统的信息传递给客服端:

  1. URL参数传递:在初始化聊天窗口时,通过URL参数传递用户信息

    https://chat.example.com?visitorUid=user123&nickname=张三&avatar=https://example.com/avatar.jpg&vipLevel=2

进阶使用

相关功能

这页文档对您有帮助吗?