敬告:此 DEMO 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,了解更多。
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版 jsBridge-v20251019.zip,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
♦ 环信 IM即时通讯
基本设置
appKey:
autoLogin:
useEncryption:
requireReadAck:
requireDeliveryAck:
debug:
jsBridge.easeIm.init({
//字符串,环信平台上创建的应用 AppKey
appKey: "{{init.appKey}}",
//布尔,如果之前处于登录状态,初始化成功后是否自动登录
autoLogin: {{init.autoLogin}},
//布尔,是否对发送消息进行加密
useEncryption: {{init.useEncryption}},
//布尔,是否发送消息已读回执
requireReadAck: {{init.requireReadAck}},
//布尔,是否发送消息已送达回执
requireDeliveryAck: {{init.requireDeliveryAck}},
//布尔,是否开启调试模式
//调试模式能输出更多的日志信息,但会影响运行性能
debug: {{init.debug}}
}, function(sucess, res) {
alert(sucess ? "成功" : "失败\n" + JSON.stringify(res));
});
username:
token:
password:
//token 和 password 任选其一,优先使用 token
jsBridge.easeIm.login({
//字符串,用户ID
//请使用 用户体系集成 RESTful API 管理用户
//或环信控制台 用户管理
username: "{{login.username}}",
//字符串,用户鉴权token
token: "{{login.token}}",
//字符串,密码
password: "{{login.password}}"
}, function(sucess, res) {
alert(sucess ? "登录成功" : "登录失败\n" + JSON.stringify(res));
});
jsBridge.easeIm.logout(function(succ, data) {
alert(succ ? "退出成功" : "退出失败\n" + JSON.stringify(data));
});
jsBridge.easeIm.userInfo({
//可选,默认头像图片链接
avatar: "https://appdabao.yimenapp.com/assets/trtc/a.png",
//可选,设置一组用户信息
//以 username 为唯一标识增加或覆盖已有的用户信息
users: [
{
//字符串,用户ID
username: "user1",
//字符串,昵称
nickname: "张三",
//字符串,头像图片链接
avatar : "https://appdabao.yimenapp.com/assets/trtc/a1.png"
},
{
username: "user2",
nickname: "李四",
avatar : "https://appdabao.yimenapp.com/assets/trtc/a2.png"
}
]
}, function(succ, data) {
alert(succ ? "设置成功" : "设置失败\n" + JSON.stringify(data));
});
jsBridge.easeIm.status(function(succ, data) {
//data.inited 是否已初始化
//data.connected 是否已连接到IM服务器
//data.logined 是否已登录
//data.username 已登录时,当前登录的用户ID
alert(JSON.stringify(data));
});
conversationId :
jsBridge.easeIm.unreadMessageCount({
//可选,会话ID,留空则返回所有会话的总未读消息数
conversationId: $("#unread_conversationId").val()
}, function(succ, data) {
alert(succ ? data.count : JSON.stringify(data));
});
UI 相关
title:
conversationId :
chatType:
historyMsgId:
isRoam:
inputMenuStyle:
jsBridge.easeIm.chat({
//字符串,标题栏文字,一般用对方昵称或备注
title: "{{chat.title}}",
//字符串,会话ID,单聊时指对方ID,群聊和聊天室时指群和聊天室ID
conversationId: "{{chat.conversationId}}",
//字符串,聊天类型
//single 单聊
//group 群聊
//room 聊天室
chatType: "{{chat.chatType}}",
//字符串,消息ID,用于查询历史记录时的定位消息ID
historyMsgId: "{{chat.historyMsgId}}",
//布尔,是否开启漫游,用于标记是否优先从服务器拉取消息
isRoam: {{chat.isRoam}},
//字符串,输入区菜单样式
//all 完整模式
//disableVoice 不可用语音
//disableEmojIcon 不可用表情
//disableVoiceEmojIcon 不可用语音和表情
//onlyText 仅文本输入
inputMenuStyle: "{{chat.inputMenuStyle}}",
//字符串数组,点 + 号打开的扩展功能
//留空则全部显示
inputExtItems: [
"camera", //相机
"album", //相册
"video", //视频
"file" //文件
]
}, function(sucess, res) {
if (!sucess) {
alert("开启聊天失败\n" + JSON.stringify(res));
}
});
监听回调数据: