差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 上一修订版 两侧同时换到之后的修订记录 | ||
im:web:intro:integration [2020/07/02 10:48] zhangdong [配置] |
im:web:intro:integration [2021/09/15 02:08] allenwang |
||
---|---|---|---|
行 1: | 行 1: | ||
====== Web IM 集成介绍 ====== | ====== Web IM 集成介绍 ====== | ||
+ | |||
+ | ===== 准备条件 ===== | ||
+ | |||
+ | **如果要实现RTC功能,你需要满足以下条件:** | ||
+ | |||
+ | * **你已分别创建了环信应用及声网应用** | ||
+ | * **已完成环信IM的基本功能,包括登录、好友、群组以及会话等的集成** | ||
+ | * **上线之前开通声网token验证时,用户需要实现自己的AppServer,根据环信ID,生成Token,创建Token服务及使用AppServer生成Token的过程参见https://docs.agora.io/cn/live-streaming/token_server** | ||
+ | * **我们提供了开源的AppServer,可以供参考:https://github.com/easemob/easemob-im-app-server/tree/master/agora-app-server** | ||
===== 搭建本地测试环境 ===== | ===== 搭建本地测试环境 ===== | ||
行 68: | 行 77: | ||
====引用本地文件==== | ====引用本地文件==== | ||
- | 1. 下载demo后,将sdk目录下的 webimSDK.js、EMedia_x1v1.js、EMedia_sdk-dev.js 拷贝到系统相应的目录下。 | + | 1. 下载demo后,将sdk目录下的 webimSDK.js(现SDK包命名为websdk+版本号的形式,例如:websdk3.4.2.js)、EMedia_x1v1.js、EMedia_sdk-dev.js,按照实际项目需求选择对应的SDK拷贝到系统相应的目录下。**PS:websdk:提供全功能即时通讯SDK接口,Emedia:提供音视频功能相关SDK接口。如需音视频功能,EMedia_x1v1.js与EMedia_sdk-dev.js只引用EMedia_x1v1.js即可**。 |
2.新版本中 WebIMConfig 文件只做参数定义方便实例化 SDK 时使用,仅与自己项目结构有关。详细使用可以查看 /demo/src/config/WebIM.js文件 | 2.新版本中 WebIMConfig 文件只做参数定义方便实例化 SDK 时使用,仅与自己项目结构有关。详细使用可以查看 /demo/src/config/WebIM.js文件 | ||
行 95: | 行 104: | ||
https : false, // 是否使用https | https : false, // 是否使用https | ||
- | isHttpDNS: true, // 3.0 SDK支持,防止DNS劫持从服务端获取XMPPUrl、restUrl | + | isHttpDNS: true, // 3.0 SDK支持,防止DNS劫持从服务端获取XMPPUrl、restUrl |
isMultiLoginSessions: false, // 是否开启多页面同步收消息,注意,需要先联系商务开通此功能 | isMultiLoginSessions: false, // 是否开启多页面同步收消息,注意,需要先联系商务开通此功能 | ||
行 105: | 行 114: | ||
heartBeatWait: 30000, // 心跳间隔(只在小程序中使用) | heartBeatWait: 30000, // 心跳间隔(只在小程序中使用) | ||
- | delivery: true, // 是否发送已读回执 | + | delivery: false, // 是否发送已读回执 |
- | useOwnUploadFun: false // 是否使用自己的上传方式(如将图片文件等上传到自己的服务器,构建消息时只传url) | + | useOwnUploadFun: false, // 是否使用自己的上传方式(如将图片文件等上传到自己的服务器,构建消息时只传url) |
+ | |||
+ | deviceId: 'webim' // 设备ID,默认可不传,如果传一个固定值,在没开启多端登录的情况下同一个账号会互踢 | ||
</code> | </code> | ||
+ | |||
+ | ''注意:'' | ||
+ | |||
+ | ''为满足不同客户的业务需求,环信在多地部署了数据中心。不同数据中心的REST API请求域名、WebSocket访问域名不同。请根据您所在数据中心进行配置。'' | ||
+ | |||
+ | ''环信不同数据中心的REST API请求域名、WebSocket访问域名: '' | ||
+ | |数据中心|REST API请求地址|WebSocket访问域名| | ||
+ | |国内1区|a1.easemob.com 或 a1.easecdn.com|im-api-v2.easemob.com 或 im-api-v2.easecdn.com| | ||
+ | |国内2区|a31.easemob.com 或 a31.easecdn.com|im-api-v2-31.easemob.com 或 im-api-v2-31.easecdn.com| | ||
+ | |国内VIP区|请咨询商务经理|请咨询商务经理| | ||
+ | |客服专用|请咨询商务经理|请咨询商务经理| | ||
+ | |新加坡1区|a1-sgp.easemob.com 或 a1-sgp.easecdn.com|im-api-sgp-v2.easemob.com 或 im-api-sgp-v2.easecdn.com| | ||
+ | |美东1区|a41.easemob.com 或 a41.easecdn.com|msync-api-41.easemob.com 或 msync-api-41.easecdn.com| | ||
+ | |法兰克福1区|a51.easemob.com 或 a51.easecdn.com|msync-api-51.easemob.com 或 msync-api-51.easecdn.com| | ||
+ | '' 应用所在数据中心可以在环信用户管理后台>应用信息中查看:[[https://console.easemob.com/app/im-service/detail|Console中查看请求域名]] '' | ||
+ | |||
+ | {{:im:server:ready:console查看可用区.jpg?800|}} | ||
2.0 SDK,在 webim.config.js 文件内进行以下配置: | 2.0 SDK,在 webim.config.js 文件内进行以下配置: | ||
行 128: | 行 156: | ||
autoReconnectNumMax: 2, // 断线重连最大次数 | autoReconnectNumMax: 2, // 断线重连最大次数 | ||
- | |||
- | autoReconnectInterval: 2, // 断线重连时间间隔 | ||
- | heartBeatWait: 4500, // 使用webrtc(视频聊天)时发送心跳包的时间间隔,单位ms | + | autoReconnectInterval: 3, // 断线重连每次尝试连接的间隔 |
+ | |||
+ | heartBeatWait: 30000, // 使用webrtc(视频聊天)时发送心跳包的时间间隔,单位ms | ||
delivery: true, // 是否发送已读回执 | delivery: true, // 是否发送已读回执 |