即时通讯 -九游会国际

webapp快捷打包
即时通讯
转到模块插件

敬告:此 demo 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,九游会国际-九游会真人第一品牌

js-sdk 引用方式:

♦ 普通网页 script 方式加载:下载最新版 ,请在页面上调用 jsbridge 接口之前引用 jsbridge-mini.js 库;

♦ js module 方式引用:npm install ym-jsbridge

♦ 融云 - / sdk;

♦ 接入应用;

js api 接入步骤:

♦ 1. 执行 jsbridge.rc.init 初始化融云系统;

♦ 2. 执行 jsbridge.rc.setuserinfolistener 设置用户资料监听器;

♦ 3. 执行 jsbridge.rc.connect 连接服务器;

♦ 4. 调用业务接口;

基础

init 初始化

• 调用融云其他 api 接口之前需先执行初始化,只需执行一次。

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_init

jsbridge.rc.init({
  //在融云上创建应用获得的 app key
  //注意:开发环境 与 生产环境 的 app key 是不同的
  appkey    : "8luwapkv8bqil",
  //是否启用离线推送功能
  //需配置推送功能:融云后台 - im 服务 - 应用标识 - 设置推送
  enablepush: true
}, function(succ) {
  alert(succ ? "成功" : "失败");
});

setuserinfo 设置用户资料

jsbridge.rc.setuserinfo({
  //用户id
  userid    : "yimenapp2",
  //昵称
  username  : "userid 的昵称",
  //头像
  useravatar: "http://pics.sc.chinaz.com/files/pic/icons128/5104/3.png"
});
alert("已设置");

setuserinfolistener 设置用户资料 监听器

• 当 app 要显示用户信息(昵称,头像)的时候会调用此监听器,参数 userid 指示要显示哪个用户的信息;

• 请在回调函数内调用 jsbridge.rc.setuserinfo 设置用户信息;

jsbridge.rc.setuserinfolistener(function(userid) {
  //userid 用户id
  console.log(userid);
  //从服务器获取用户信息,调用 setuserinfo 设置昵称和头像
  jsbridge.rc.setuserinfo({
    userid    : userid,
    username  : "userid 的昵称",
    useravatar: "http://pics.sc.chinaz.com/files/pic/icons128/5104/3.png" //userid 的头像
  });
});
alert("已设置");

connect 连接服务器 - 用户1

• 成功连接到融云服务器后才能正常调用其他业务接口。

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_connect

• 服务器端接口 https://www.rongcloud.cn/docs/server.html#user_get_token

//用执行服务器端接口 user.register(user) 拿到的 token 连接服务器
// https://www.rongcloud.cn/docs/server_sdk_api/user/user.html#register
jsbridge.rc.connect({
  //yimenapp
  //调用融云服务器端接口获取到的用户 token
  //参考 https://www.rongcloud.cn/docs/server.html#user_get_token
  token     : "dloijyj0kc5aba68y0chjtf0gmkrswihfwmcwqh7svaltzgqdnpv9oz0fkoxqaff4jpvy7se8tmyvlnbmtl3ma==",
  //用户昵称
  username  : "闲张三",
  //用户头像
  useravatar: "http://pics.sc.chinaz.com/files/pic/icons128/5104/3.png",
  //可选,字符串类型,视频解析度与帧率,默认 vd_480x640_15f
  //仅用于视频会话
  callvideoprofile: "vd_480x640_15f"
}, function(succ, message) {
  alert(succ ? "成功" : "失败:\n"   message);
});
/**
callvideoprofile 属性支持以下字符串:
字符串             支持平台
vd_144x176_15f     android & ios
vd_144x176_24f     android
vd_144x176_30f     android
vd_144x256_15f     android
vd_144x256_24f     android
vd_144x256_30f     android
vd_240x240_15f     android
vd_240x240_24f     android
vd_240x240_30f     android
vd_240x320_15f     android & ios
vd_240x320_24f     android
vd_240x320_30f     android
vd_360x480_15f     android & ios
vd_360x480_24f     android
vd_360x480_30f     android
vd_360x640_15f     android & ios
vd_360x640_24f     android
vd_360x640_30f     android
vd_368x640_15f     android
vd_368x640_24f     android
vd_368x640_30f     android
vd_480x640_15f     android & ios (默认)
vd_480x640_24f     android
vd_480x640_30f     android
vd_480x720_15f     android & ios
vd_480x720_24f     android
vd_480x720_30f     android
vd_480x854_15f     android
vd_480x854_24f     android
vd_480x854_30f     android
vd_720x1280_15f    android & ios
vd_720x1280_24f    android
vd_720x1280_30f    android
vd_1080x1920_15f   android
vd_1080x1920_24f   android
vd_1080x1920_30f   android
**/

connect 连接服务器 - 用户2

• 成功连接到融云服务器后才能正常调用其他业务接口。

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_connect

//用执行服务器端接口 user.register(user) 拿到的 token 连接服务器
// https://www.rongcloud.cn/docs/server_sdk_api/user/user.html#register
jsbridge.rc.connect({
  //yimenapp2
  token: "w32pgrighahmh26vmkrxq42wpo2 ax21vvoa1b6apxlc5/bkuadzumetotpsnvxz2lbdfvokzahphvb7rvtxzkzd9zqglua5",
  //用户昵称
  username  : "忙李四",
  //用户头像
  useravatar: "http://pics.sc.chinaz.com/files/pic/icons128/5105/0.png"
}, function(succ, message) {
  alert(succ ? "成功" : "失败:\n"   message);
});

connect 连接服务器 - 用户3

• 成功连接到融云服务器后才能正常调用其他业务接口。

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_connect

//用执行服务器端接口 user.register(user) 拿到的 token 连接服务器
// https://www.rongcloud.cn/docs/server_sdk_api/user/user.html#register
jsbridge.rc.connect({
  //yimen_user3
  token: "xhmn0ttzzkgjswbr2rxgro2wpo2 ax21vvoa1b6apxlc5/bkuadzulefdnkh25p0ivnfgwkkf89za nufdtouaolvx8l gtp",
  //用户昵称
  username  : "枯叶碟",
  //用户头像
  useravatar: "http://pics.sc.chinaz.com/files/pic/icons128/7422/m13.png"
}, function(succ, message) {
  alert(succ ? "成功" : "失败:\n"   message);
});

disconnect 断开服务器连接

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_disconnect

jsbridge.rc.disconnect(function(succ) {
  alert(succ ? "成功" : "失败");
});

logout 断开服务器连接并退出融云

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_disconnect

jsbridge.rc.logout(function(succ) {
  alert(succ ? "成功" : "失败");
});

im 即时通讯

startconversation 启动聊天会话 1

• 开启会话

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_conversation_list_config

//开启会话
jsbridge.rcim.startconversation({
  //必须,数字类型,会话类型
  conversationtype: 1,
  //必须,字符串类型,会话对象,根据不同的 conversationtype,可能是用户id、群组id 或 聊天室id
  targetid: "yimenapp",
  //可选,字符串类型,会话标题
  title   : "聊起来1~~"
}, function(succ) {
  if (!succ) alert("失败");
});
/**
会话类型说明(conversationtype):
1 : private
2 : discussion
3 : group
4 : chatroom
5 : customer_service
6 : system
7 : app_public_service
8 : public_service
9 : push_service
11: encrypted
12: rtc_room
**/

startconversation 启动聊天会话 2

• 开启会话

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_conversation_list_config

//开启会话
jsbridge.rcim.startconversation({
  //必须,数字类型,会话类型
  conversationtype: 1,
  //必须,字符串类型,会话对象,根据不同的 conversationtype,可能是用户id、群组id 或 聊天室id
  targetid: "yimenapp2",
  //可选,字符串类型,会话标题
  title   : "聊起来2~~"
}, function(succ) {
  if (!succ) alert("失败");
});

startconversationlist 启动聊天会话列表

• 打开全部类型的会话列表

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_conversation_list_config

//打开全部类型的会话列表
jsbridge.rcim.startconversationlist({
  //可选,数字数组,指定需要展开显示的会话类型(会话列表默认为分组聚合(折叠)显示,这里指定不折叠(展开)显示的会话类型,参见 startconversation 方法
  flat: [2, 3, 5]
}, function(succ) {
  if (!succ) alert("失败");
});

startsubconversationlist 启动聚合后的某类型会话列表

• 打开某种类型会话列表

• 参考官方说明 https://www.rongcloud.cn/docs/android.html#integration_conversation_list_config

//打开单个类型的会话列表
jsbridge.rcim.startsubconversationlist({
  //必须,数字类型,打开单个类型的会话列表,会话类型 startconversation 方法
  conversationtype: 1
}, function(succ) {
  if (!succ) alert("失败");
});

unreadmessagecount 获取未读消息数量

• 获取未读消息数量

jsbridge.rcim.unreadmessagecount(function(count) {
  alert(count   " 条未读");
});

音视频通话

startsinglecall 发起单人通话 - 用户1

• 发起单人通话

• 参考官方说明 https://www.rongcloud.cn/docs/ios_callkit.html#start_call

jsbridge.rccall.startsinglecall({
  //通话对方用户 id
  targetid: "yimenapp",
  //true - 视频通话,false - 音频通话
  video   : true
}, function(succ) {
  if (!succ) alert("失败");
});

startsinglecall 发起单人通话 - 用户2

• 发起单人通话

• 参考官方说明 https://www.rongcloud.cn/docs/ios_callkit.html#start_call

jsbridge.rccall.startsinglecall({
  //通话对方用户 id
  targetid: "yimenapp2",
  //true - 视频通话,false - 音频通话
  video   : true
}, function(succ) {
  if (!succ) alert("失败");
});

startmulticall 发起多人通话 - 用户3

• 发起多人通话

• 参考官方说明 https://www.rongcloud.cn/docs/ios_callkit.html#start_call

jsbridge.rccall.startmulticall({
  //通话对方用户 id
  targetid: "yimenapp2",
  //true - 视频通话,false - 音频通话
  video   : true,
  //会话类型
  conversationtype: 1,
  //参与者用户 id 列表
  userids : ["yimenapp2", "yimen_user3"]
}, function(succ) {
  if (!succ) alert("失败");
});
/**
会话类型(conversationtype):
1 : private             私聊
2 : discussion          讨论组
3 : group               群组
4 : chatroom            聊天室
5 : customer_service
6 : system
7 : app_public_service
8 : public_service
9 : push_service
11: encrypted
12: rtc_room
**/
网站地图