这是本文档旧的修订版!


Web IM SDK 更新日志


  • [IM SDK] 增加创建聊天室、查询\修改聊天室详情、查询\设置\移除管理员
  • [IM SDK] 修复对消息扩展类型解析错误
  • [IM SDK] 修复发送图片文件消息时,支持直接发送url
  • [IM SDK] 修改对于被禁言、拉黑等导致的发送消息失败,将从fail回调出去,不再从全局的onError回调
  • [多人音视频] 通过joinRoom创建的房间支持小程序
  • [多人音视频] 增加创建会议支持自定义共享桌面个数
  • [多人音视频] 修复了safari 浏览器的兼容性问题
  • [多人音视频] 支持 electorn 共享桌面
  • [IM SDK] 支持附件下载重定向
  • [IM SDK] 支持图片检测违规抛出单独的异常
  • [IM SDK] 增加分页获取聊天室成员api
  • [IM SDK] 增加上传修改群/聊天室公告、获取群/聊天室公告、上传/下载/删除群/聊天室文件、获取群/聊天室文件列表APIs
  • [IM SDK] 修改重连间隔
  • [IM SDK] 去掉对上传文件大小的限制, 由服务端来限制
  • [IM SDK] 增加聊天室禁言、解除禁言、获取禁言列表、加入黑名单、移除黑名单、获取黑明单列表APIs
  • [多人音视频] 增加上麦申请/下麦降级/申请主持人/全体静音/全体解除静音/静音个人/解除静音个人 APIs
  • [多人音视频] 增加了支持多集群部署 API
  • [多人音视频] 增加了 推流CDN/更新推流布局 APIs
  • [多人音视频] 修复了引入 webrtc 报错 regenerator-runtime
  • [多人音视频] joinRoom API 通过appkey 拼接URL
  • [sdk] 支持一键禁言、白名单等群/聊天室的操作
  • [sdk] 支持发自定义消息
  • [sdk] 消息体里增加ContentsType,来表示消息类型
  • [sdk] 修复扩展消息不能使用number类型数据
  • [sdk] 登录接口的'Content-type'改为'application/json'
  • [sdk] 修复回复多余回执导致堵塞的情况
  • [sdk] 修复dnsconfig配置问题
  • [多人音视频] 增加添加加入房间API joinRoom
  • [多人音视频] 增加管理员变更回调 onAdminChanged
  • [多人音视频] 增加会议属性相关 API
  • [多人音视频] 定义视频流类型 StreamType
  • [多人音视频] 添加共享桌面 ‘停止共享’ 回调函数 option.stopSharedCallback
  • [sdk] https下增加dns配置
  • [sdk] 增加群组回执
  • [sdk] 修复resource错误等bug
  • [sdk] 音视频增加录制、合并设置
  • [sdk] sdk增加消息去重机制
  • [sdk] 回调消息增加时间戳
  • [sdk] 简化好友添加和移除黑名单方法
  • [sdk] 扩展消息支持json对象
  • [sdk] 退出不执行onclose
  • [sdk] Electron下不能建立链接问题

Bug修复:

  • [sdk] 扩展消息bug
  • [sdk] 群组类消息撤回bug
  • [sdk] 优化历史消息
  • [sdk] 发送语音消息、视频消息回调bug

新功能:

  • [sdk] dns下上传文件走dns

Bug修复:

  • [sdk] 无法拉取历史消息
  • [sdk] loc/cmd消息 messageId bug

新功能:

  • [sdk] 基于私有协议重写
  • [sdk] 增加拉取历史消息接口
  • [sdk] 增加撤回消息接口
  • [sdk] 增加接受群邀请接口
  • [demo] 增加接受群邀请功能
  • [demo] 增加和调整一些群操作通知

Bug修复:

  • [demo] 修复音视频通话时显示名称不对
  • [demo] 加入群组群组列表不实时更新
  • [demo] 用户名大写导致群组中无法识别人管理员

新功能:

  • [sdk] 通过设置 isHttpDNS 为 true,从服务端获取 DNS 配置文件,SDK中改进自动重连的功能
  • [demo] 配置文件文件增加配置 isHttpDNS
  • [demo] 项目初始化 sdk 增加 isHttpDNS
  • [demo] 解决safari视频无图片、无声音问题

Bug修复:

新功能:

  • [demo] 多人音视频

Bug修复:

  • [demo] 在视频界面中,切到其他界面,视频界面不在了。但是视频还在继续中
  • [demo] 火狐 邀请 chrome, 进入多人会议,都收不到视频通知
  • [demo] 不选择会话,收不到视频来电
  • [demo] 多人视频 开关视频键状态不对
  • [demo] chrome和firfox多人音视频会议中,chrome不显示firefox用户的视频
  • [demo] 多人视频,一个浏览器登录两个账号,有一个账号 ui经常收不到视频邀请

新功能:

  • [demo] 多人音视频
  • [sdk] 多人音视频

Bug修复:

  • [demo] 无法发送表情

新功能:

  • [demo] 添加Rest Interface的Test case
  • [demo] sdk/demo 上传功能兼容ie8

Bug修复:

  • [demo] 多设备登录异常
  • [demo] 新建需要审批的公有群,加入必须有审批流程
  • [demo] 鼠标悬浮在群禁言图标上出现提示信息“禁言”
  • [demo] demo.html中从cdn引入sdk
  • [demo] 修复无法准确统计离线消息数的bug
  • [demo] window.history.pushState在windows的chrome上有兼容性问题,统一改成window.location.href
  • [demo] window.location.href = xxxx,如果修改的是href.search参数(?a=x&b=y)时候, 如果遇到file方式打开本地index.html会直接跳转页面,造成登录一直不成功,改成修改 href.hash 参数(#a=x&b=y)
  • [demo] 将群管理员可操作的项目展示给管理员

新功能:

  • [sdk] 新增jsdoc

Bug修复:

  • [sdk] ios(8.1)webview 已读和已送到回执异常
  • [sdk] 多设备登录异常
  • [demo] 多设备登录异常

新功能:

  • [sdk] 修改delivery ack和read ack的格式
  • [sdk] 用户在离线状态下发送消息,会自动重连并将未成功发送的消息发送出去
  • [sdk] WEBIM支持多设备,添加加入聊天室事件
  • [sdk] 给delivered和ack加上from字段
  • [demo] 添加Rest Interface的 Test case
  • [demo] sdk/demo上传功能兼容ie8

Bug修复:

  • [sdk] 提升ie8的兼容性
  • [sdk] 自己发送的消息的已读ack,不再发送给自己
  • [demo] 新建需要审批的公有群,加入必须有审批流程
  • [demo] 鼠标悬浮在群禁言图标上出现提示信息“禁言”
  • [demo] demo.html中从cdn引入sdk
  • [demo] 修复无法准确统计离线消息数的bug
  • [demo] window.history.pushState在windows的chrome上有兼容性问题,统一改成window.location.href
  • [demo] window.location.href = xxxx,如果修改的是href.search参数(?a=x&b=y)时候, 如果遇到file方式打开本地index.html会直接跳转页面,造成登录一直不成功,改成修改 href.hash 参数(#a=x&b=y)
  • [demo] 将群管理员可操作的项目展示给管理员

新功能:

  • [sdk] debug.js融合到sdk当中,优化日志内容输出
  • [sdk] 通过Rest屏蔽群组
  • [sdk] 通过Rest发出入群申请
  • [sdk] 通过Rest获取群组列表
  • [sdk] 通过Rest根据groupid获取群组详情
  • [sdk] 通过Rest列出某用户所加入的所有群组
  • [sdk] 通过Rest列出群组的所有成员
  • [sdk] 通过Rest禁止群用户发言
  • [sdk] 通过Rest取消对用户禁言的禁止
  • [sdk] 通过Rest获取群组下所有管理员
  • [sdk] 通过Rest获取群组下所有被禁言成员
  • [sdk] 通过Rest设置群管理员
  • [sdk] 通过Rest取消群管理员
  • [sdk] 通过Rest同意用户加入群
  • [sdk] 通过Rest拒绝用户加入群
  • [sdk] 通过Rest添加用户至群组黑名单(单个)
  • [sdk] 通过Rest添加用户至群组黑名单(批量)
  • [sdk] 通过Rest将用户从群黑名单移除(单个)
  • [sdk] 通过Rest将用户从群黑名单移除(批量)
  • [demo] 聊天窗口中记录可清空
  • [demo] 聊天窗口中发送方聊天记录显示状态(未送达、已送达、已读)
  • [demo] 查看聊天室成员
  • [demo] 通过链接直接打开与好友的对话框
  • [demo] 新增申请加入公开群面板
  • [demo] 在申请加入公开群面板可下拉分页获取公开群
  • [demo] 在申请加入公开群面板可点击群名称可查看群详情
  • [demo] 在申请加入公开群面板可搜索群查看群详情
  • [demo] 在申请加入公开群面板群详情页面可申请加入群组
  • [demo] 群主可同意、拒绝加群申请
  • [demo] 在群主的群成员列表中新增添加/移除管理员、禁言/解禁群成员按钮

Bug修复:

  • [sdk] 添加好友会产生多余的订阅消息
  • [sdk] 频繁的发送消息会导致消息id重复的问题
  • [sdk] 适配SDK发送文件和图片的大小
  • [demo] 优化sdk/demo.html,修复某些依赖文件找不到的问题
  • [demo] 修复离线消息数量统计不准确问题

新功能:

  • [sdk] webrtc新增语音呼叫

Bug修复:

  • [sdk] webrtc:Firefox在结束通话后的问题
  • [sdk] webrtc:多次接通挂断之后,逻辑功能混乱
  • [sdk] webrtc:正常挂断不应该提醒offline
  • [sdk] webrtc:重连后无法处理音视频IQ消息

Bug修复:

  • [sdk] 成功/失败的回调函数如果没有定义会报错

新功能:

  • [demo] 增加webrtc视频聊天的声音开关
  • [demo] 动态创建chatWindow,提高网页性能
  • [demo] 切换leftbar时会给chatWindow添加遮罩,返回之前的leftbar时会直接跳到之前选中的cate和chatWindow
  • [demo] 登录成功后,刷新页面不会再回到登录页

Bug修复:

  • [sdk] 移除sdk中所有log方法
  • [sdk] 退出muc group room 时,追加发送一条unavailable的presence stanza

新功能:

  • [demo] 在demo.html中新增视频聊天及发送视频文件的功能

Bug修复:

  • [sdk] 解决在手机浏览器在后台运行时无法断线重连的问题
  • [demo] WebIM建群,等待后台建群成功后再拉取群信息并更新UI中的群列表
  • [demo] WebIM群加人,群主和被添加的群成员均可以收到通知
  • [demo] WebIM群主将群成员从黑名单移除后,不再回到群成员列表中,而直接被删除

新功能:

  • [sdk] 新增 demo.html, 演示如何调用sdk的各种接口

Bug修复:

  • [demo] 创建群组成功之后,立即刷新群组列表,不再等1秒
  • [sdk] sdk与上层Demo解耦,删除Demo相关代码
  • [sdk] 删除server不支持的connection.prototype.createRoom

新功能:

  1. GNU风格的版本号命名格式: 主版本号.子版本号.修正版本号 (新版本规则的1.4.5 = 旧版本规则的1.1.4.5)
  2. [demo] 好友之间可以通过webrtc进行视频聊(仅支持 https + Webkit浏览器)
  3. [demo] 支持同一账号最多8个标签页登录 isMultiLoginSessions:true
  4. [demo] http访问加入ip策略功能,防止DNS劫持 isHttpDNS:true
  5. [sdk] 新增两种安装引用方式(具体引用方式,请参考集成方式
    • 添加 <script>标签,并通过WebIM命名空间访问websdk
    • NPM(websdk 已经发布到NPM),先require,再访问WebIM

Bug修复:

  1. [sdk] 解散群组不更新UI
  2. [sdk] 修复了发送cmd消息成功后无法调用回调函数的bug

功能改进:

  1. [demo] 支持 Windows SDK。<http://www.easemob.com/download/im>
  2. [demo] 新增黑名单功能。
  3. [demo] 获取聊天室列表: 支持分页、下拉刷新,新增以下2个参数:pagenum 和 pagesize。
  4. [demo] 群组增加以下功能:创建群组、修改群组名称、修改群组简介、群组成员管理、加入公开群。
  5. [sdk] strophe 从 v1.2.2 升级到 v1.2.8,在生产模式使用 strophe-1.2.8.min.js, 在开发模式使用 strophe.js。
  6. [sdk] 支持自动重连: 在 webim.config.js 文件中新增相关参数 `autoReconnectNumMax` 和 `autoReconnectInterval`。

Bug fixes:

  1. [demo] 增加 `babel-core/browser-polyfill.js`文件,修复了 IE 不支持 HTML5 elements 的 bug。
  2. [demo] 修复了有未读消息时点击联系人不生效的bug。
  3. [sdk] 修复了strophe.js v1.2.8在IE9中使用BOSH会报错的bug。 <https://github.com/strophe/strophejs/issues/213>
  4. [sdk] 修复了存在大量离线消息时收发消息延迟的bug。客户端将发送ack应答消息的速度限制在5个/秒,不影响其他正常消息。
  5. [sdk] 将心跳消息从空body的 json message 切换为 ping/pong iq。前者会作为离线消息被XMPP Server缓存。

功能改进:

  1. 新版demo
  2. 添加isAutoLogoin参数,默认setPresence
  3. 拆分sdk为四个文件,最终打包成一个webim.im.sdk.js
  4. 增加try catch,尽量减少因为外部的错误导致的连接断开
  5. 修改错误码,不再返回错误提示消息,在文档体现

Bug fix:

  1. 无法传file_length
  2. 特殊字符无法显示
  3. im用户为数字时,toLowercase报错
  4. 发送音频增加时长参数

功能改进:

  1. 增加聊天室加入成功、失败回调
  2. 增加网络监测回调onOnline、onOffline
  3. 处理Web IM与Android/iOS SDK 3.x和2.x的兼容性
  4. demo新增发送文件功能
  5. 收到AMR自动转MP3

Bug fix:

  1. 修复心跳会创建多个timer
  2. 联系人名称过长导致的样式问题
  3. IE9发送附件失效
  4. IE9添加好友报错

功能改进:

  1. 将表情包移除sdk,可导入自定义表情。
  2. 增加XMPP连接多resource支持的参数。
  3. 对于不支持wss,如qqX5内核浏览器,自动降级为https long polling。
  4. 增加聊天室功能。
  5. v1.1.0与之前版本sdk部分api已不兼容,添加shim.js,做降级支持。
  6. 新增消息发送的成功失败回调。
  7. 优化代码,修复退出时websocket报错。

功能改进:

  1. 增加连接心跳支持,保持客户端连接不间断。
  2. 增加XMPP连接多resource支持。
  3. 实现Web IM SDK Websocket支持。
  4. 增加Token登录。
  5. 在Demo中对不支持异步上传的浏览器使用第三方插件(swfupload)提供支持。
  6. 对于不支持audio标签的浏览器,使用jPlayer解决无法播放语音的问题,但此方案当前只支持MP3。
  7. 重整目录结构,SDK相关文件在sdk文件夹内部;添加easemob.im.config.js,只需配置此js里面相关字段即可。
  8. 改进code,支持多环境快速调试。
  9. 支持IE7、IE8、IE9(在Demo中,接收的音频消息只能播放MP3格式)。

新功能:

  1. 优化底层连接,减少系统登录耗时。
  2. 添加透传消息支持(注册onCmdMessage事件,以监听服务器端推送的透传消息)。
  3. 添加收到消息后,自动发送回复消息给服务器。
  4. 当图片下载失败时默认再一次下载。

新功能:

  1. 收到文件消息通知,暂不支持下载。
  2. 收到视频消息通知,暂不支持下载。

Bug Fix:

  1. 修复bug。修复不点击‘退出’按钮直接关闭浏览器下次登录消息丢失的bug。

Bug Fix:

  1. 修复bug。群聊位置消息作为单聊消息处理。
  2. 修改bug。好友列表为空时陌生人消息不显示。

新功能:

  1. 增加陌生人聊天功能。
  2. 添加新用户注册功能。
  3. 支持https访问模式。
  4. 支持token登录。
  5. 支持语音消息。
  6. 消息体支持自定义扩展,添加ext属性。
  7. Demo示例支持未读消息提醒。

功能改进:

  1. 修复bug。demo联系人过多时的样式问题。
  2. 修复bug。conn = new Easemob.im.Connection();变量名不为conn或者conn不是全局变量时接收不到消息。
  3. 修复bug。群组离线消息当作陌生人消息处理。
  4. 修复bug。IE浏览器接受文本消息以换行符开始时会遮挡联系人名称。
  5. 修复bug。在线用户被邀请加入群组不能实时显示,必须重新登录。
  6. 丰富相关文档内容。

上一页:工具类说明

下一章:微信小程序集成