注册

IM 和 客服 并存开发指南—iOS篇

 如果觉得哪里描述的不清晰,可评论内指出,会不定期更新。

 一、SDK 介绍
      HelpDesk.framework 为 客服SDK(带实时音视频)
      HelpDeskLite.framework 为 客服SDK(不带实时音视频)
      Hyphenate.framework 为 IM SDK(带实时音视频)
      HyphenateLite.framework 为 IM SDK(不带实时音视频)
      环信客服SDK 基于 IM SDK 3.x , 如果同时集成 客服 和 IM,只需要在初始化、登录、登出操作时使用客服SDK 提供的相应API,IM 的其他API均不受影响。
      UI 部分集成需要分别导入 HelpDeskUI 和 IM demo 中的UI文件(也可以自定义UI)。 下面详细介绍IM 和 客服共存的开发步骤。

二、注意事项
      1、开发过程中,初始化、登录和登出,务必只使用客服访客端SDK的API。
      2、需要联系商务开通客服长连接。
           不开通长连接,会出现用户长时间(一天或几天)不使用app,再打开app会无法正常使用im相关功能的问题,报错信息一般是User is not login。
      3、IM SDK 和客服SDK 都包括了模拟器的CPU 架构,在上传到app store时需要剔除模拟器的CPU 架构,保留  armv7、arm64,参考文档:上传appstore以及打包ipa注意事项。 

三、资源准备
      到环信官网下载客服访客端的开源的商城Demo源码 + SDK,下载链接:http://www.easemob.com/download/cs  选  择“iOS SDK”下载(如下图)。
      

下载客服.png


      到环信官网下载IM的开源的Demo源码 + SDK ,下载链接:http://www.easemob.com/download/im 选择 iOS SDK(如下图)。
      

下载IM.png



下载的 IM SDK+Demo 和 客服SDK+Demo 中都有 IM 的 Hyphenate.framework 或 HyphenateLite.framework,为了保持版本的匹配,我们只使用 IM Demo 中的 UI, 而不使用 IM SDK 中 的 Hyphenate.framework 或 HyphenateLite.framework 文件。

四、集成步骤
      1、阅读客服访客端SDK集成文档,集成客服,地址:http://docs.easemob.com/cs/300visitoraccess/iossdk。 
      2、阅读 IM 的集成文档,地址:http://docs-im.easemob.com/im/ios/sdk/prepare 
      3、将 IM Demo 中的 UI 文件按照自己的需求分模块导入到工程中
      4、将 IM 的 UI 所依赖的第三方库集成到项目中(IM集成文档内有说明)
      5、在pch文件中引入 EMHeaders.h 
          #ifdef __OBJC__ 
            //包含实时音视频功能 
            #import  
            // 若不包含实时音视频,则替换为 
            // #import  
            #import "HelpDeskUI.h" 
            #import "EMHeaders.h" 
         #endif
      6、由于HelpDeskUI 和 IM UI 中都使用了 第三方库,如果工程中出现三方库重复的问题,可将重复文件删除,如果部分接口已经升级或弃用可自行升级、调整。

提供的兼容Demo介绍:
     1、Demo集成了初始化sdk、登录、退出登录、IM单聊、联系客服的简单功能,处理了第三方库冲突的问题。
     2、pch文件中的appkey等信息需要换成开发者自己的。
     3、Demo源码下载地址: https://pan.baidu.com/s/1v1TUl-fqJNLQrtsJfWYGzw 
         提取码: kukb 

0 个评论

要回复文章请先登录注册