对接背景
项目团队人员较少,项目比较复杂,还是一个海外网址
一、对接环形客服云
1、客服云需要对接环信的用户体系,用户体系有日活收费
,首通888包含一万日活,超出一万加850。不开通日活的话只能免费试用100个会话。
2、访客身份默认为一个用户(在用户认证中可以看到),算入日活。
对接环信IMSDK
1、环信会话接口需要单独开通
- 需要联系客服经理开通
- 获取会话接口
WebIM.conn.getSessionList
接口不稳定,时而熟读很快,时而很慢,有的时候甚至还获取不到数据
报错形式:
2、环信坑点
- 开发的appkey建议使用自己注册的
xxxxxxxxxxxxxxxx#demo
(基本的权限都有),不要用共用的appkey,共用的appkey容易崩。 - 环信服务器用户名
默认是小写
,建议小写注册或者登录时转为小写 - 发送自定义消息,customExts中value值
不能为undefined
的,否则会报错 - 拒绝用户加入群rejectJoinGroup方法,不触发joinPublicGroupDeclined事件
3、需要自己搭建后台功能点、否则功能不完善
3.1 添加联系人
- 此接口中的
to
可以随意填写,环信后台没有校验,没有回调,不管是啥都可以发送成功,疑似是mqtt实现的此功能 - 此接口中的
to
随意填写的值发添加好友申请,后去注册此随意填写的值账号,登录后能接收到未注册时发来的添加还有申请。所以通过自己搭建后台在发送消息前过滤处理
。 - 添加好友可以
自己发送给自己
并接受到添加好友消息、已经是好友的还能继续发送
并接受到添加好友消息。所以通过自己搭建后台在发送消息前过滤处理
。 - 添加好友事件,通过
WebIM.conn.listen 监听 onPresence
接受消息,收到不处理,再登录,收不到。而且还没有去重。所以通过自己搭建后台来保存未处理的消息
3.2 删除联系人
- 删除联系人通过
WebIM.conn.listen 监听onPresence
方法,双方都能接受到提示。而好友申请拒绝操作也是通过WebIM.conn.listen 监听onPresence
方法发送消息给申请方,申请方无法区分是不同意申请提示还是删除好友提示。
3.3 好友备注
- 环信不提供,需要自己实现
3.4 新建群组
- 新增群时,群描述字段desc设置,获取数据时得到的数据时群名称
3.5 历史记录查询
- 环信不提供,需要自己实现