访客端双通道功能

移动客服系统与访客端之间支持环信即时通讯云和 REST API 两条通道进行消息收发。

  • 环信即时通讯云消息通道为第一通道,消息经过 IM 服务器到达移动客服的 Gateway,默认情况下均使用该通道收发消息。
  • REST API 消息通道为第二通道,当IM服务器暂时不可用时,消息自动切换到第二通道。此时,访客和客服之间依然可以发送和接收文本消息、订单消息、机器人消息等。

集成 IM SDK 后可以使用第一通道收发消息,第二通道(即“访客端双通道功能”)需要单独集成。

如果您已集成移动客服 Android SDK移动客服 iOS SDK,可以直接使用双通道功能,无需再次集成。

注意事项

  • 暂时只有 Android 版访客端支持双通道功能。
  • 集成双通道功能前,需要先集成 Android 版 IM SDK 2.x,客服SDK自带双通道。

集成步骤

第 1 步:确认您已经集成了 Android 版 IM SDK 2.x。

注:如果您尚未集成 IM SDK,请仔细阅读 APP SDK集成,并参照“商城Demo”集成。

第 2 步:下载扩展包imsdkx-v1.0.3-dependence-2.3.3,解压缩,并将其添加到含有 IM SDK 的项目中的 libs 文件夹下,点击 Build –> Make Project。

第 3 步:选中项目,点击工具栏 Edit –> Find –> Replace,分别替换下面的字符串(为防止出错,请按照次序替换):

  1. EMChatManager –> KefuChatManager
  2. EMConversation –> KefuConversation
  3. EMConversationType –> KefuConversationType
  4. EMChat –> KefuChat

操作如下图:

第 4 步:添加双通道核心代码。在聊天界面(demo 中为 ChatActivity)添加如下代码:

  • onCreate内调用bind方法
    KefuChatManager.getInstance().bindChatUI(toChatUsername);
  • onDestroy内调用
    KefuChatManager.getInstance().unBind();

您已经成功集成双通道模式啦!

受益功能:

  1. 添加了客服与访客之间消息的ACK机制,确保消息到达率。
  2. 在 IM 服务器暂时不可用时,客服和访客之间通讯自动切换至第二通道,使体验无影响。