体育万博app下载_manbetx客户端网页版_bet万博网站

从v5.3.2开始、sdk增加直播体育万博app下载_manbetx客户端网页版_bet万博网站功能、推出直播领域消息解决方案。

                                

体育万博app下载_manbetx客户端网页版_bet万博网站跟普通的IM群(微信群,QQ群等)相比最大的不同点在于它是一个比较开放的虚拟组织。我们可以将直播体育万博app下载_manbetx客户端网页版_bet万博网站比喻成一个广场,广场是开放无边界的,所有的人都可以随进随出,而群就像一个房间,是一个有边界有容量上限的私密组织,并且进入这个房间需要一定条件,一般是主动申请加入或被邀请加入。

                      

1、相关接口

                

直播sdk相关接口分2大类别:

                                

后台Rest提供接口。具体参考文档地址:服务器直播体育万博app下载_manbetx客户端网页版_bet万博网站接口                                     

  • 创建体育万博app下载_manbetx客户端网页版_bet万博网站                                   
  • 切换体育万博app下载_manbetx客户端网页版_bet万博网站状态(开启/关闭/销毁)
  •                             

    SDK接口文档(本页面提供)

                                        

    H5 SDK内部提供的接口: 进入体育万博app下载_manbetx客户端网页版_bet万博网站,体育万博app下载_manbetx客户端网页版_bet万博网站内发送消息,获取体育万博app下载_manbetx客户端网页版_bet万博网站信息,获取体育万博app下载_manbetx客户端网页版_bet万博网站成员,获取成员信息,对成员进行禁言、拉黑、踢出,修改个人信息,修改体育万博app下载_manbetx客户端网页版_bet万博网站信息,退出体育万博app下载_manbetx客户端网页版_bet万博网站等接口。

                               

    2、体育万博app下载_manbetx客户端网页版_bet万博网站三种成员角色

          创建者(权限最高)>管理员>普通成员(权限高的能对权限低的做相应处理)。

                                        

  • 创建者:可以对所有成员进行管理,包括禁言/解除禁言/拉黑/从黑名单移除/踢出/修改体育万博app下载_manbetx客户端网页版_bet万博网站信息。
  •                                         

  • 管理员:只能对成员进行管理,禁言/解除禁言/拉黑/从黑名单移除/踢出。
  •                                         

  • 普通成员:无权限
  •                                                                                             

    3、体育万博app下载_manbetx客户端网页版_bet万博网站操作代码示例

                                                             

    进入体育万博app下载_manbetx客户端网页版_bet万博网站

    用户要在体育万博app下载_manbetx客户端网页版_bet万博网站内说话,必须先调用接口进入此体育万博app下载_manbetx客户端网页版_bet万博网站。用户进入体育万博app下载_manbetx客户端网页版_bet万博网站后,不会收到此体育万博app下载_manbetx客户端网页版_bet万博网站的历史消息推送。如有历史消息需求,可以调用消息查询接口进行显示。

                        

  • var enterChatroomBuilder = new RL_YTX.EnterChatroomBuilder();
  • enterChatroomBuilder.setRoomId(roomId);
  • enterChatroomBuilder.setNickName(nickName);
  • enterChatroomBuilder.setInfoExt("小龙人");
  • enterChatroomBuilder.setNotifyExt("霸气侧漏进入房间!");
  • enterChatroomBuilder.setNeedNotify(2);
  • RL_YTX.enterChatroom(enterChatroomBuilder,function (e) {
  • IM.roomNumber = roomId;
  • callback(e);},function (err) {
  • console.error(err);})                                                                              
  • 体育万博app下载_manbetx客户端网页版_bet万博网站内发送消息

    跟普通发消息一样,接收者为roomId。

                         

  • //新建消息体对象
  • var obj = new RL_YTX.ChatroomMsgBuilder();
  • //假设页面存在一个id为file的<input type=”file”>元素 
  • //获取图片或附件对象
  • var file = document.getElementById("file").files[0];
  • //设置图片或附件对象
  • obj.setFile(file);
  • //设置发送的文本内容
  • obj.setText(text);
  • //设置发送的消息类型:1文本消息(体育万博app下载_manbetx客户端网页版_bet万博网站内只支持发送文本消息)
  • obj.setType(1);
  • //设置接收者
  • obj.setReceiver(“roomId”);
  • RL_YTX.sendChatroomMsg(obj, function(){
  • //发送消息成功//处理用户逻辑,通知页面
  • }, function(obj){
  • //失败//发送消息失败//处理用户逻辑,通知页面刷新,展现重发按钮
  • };                                                                                 
  • 获取体育万博app下载_manbetx客户端网页版_bet万博网站信息

    此接口可以远程获取体育万博app下载_manbetx客户端网页版_bet万博网站信息,开发者自行修改页面信息。         

                                

  • var FetchChatroomInfoBuilder = new RL_YTX.FetchChatroomInfoBuilder(IM.roomId);
  • RL_YTX.fetchChatroomInfo(FetchChatroomInfoBuilder,function (obj) {
  • console.log(obj);},function (err) 
  • {
  • console.error(err);
  • })                                                          
  • 修改体育万博app下载_manbetx客户端网页版_bet万博网站信息

    此接口可修改体育万博app下载_manbetx客户端网页版_bet万博网站信息,可单独修改某一项信息。                                        

  • var updateChatroomInfoBuilder = new RL_YTX.UpdateChatroomInfoBuilder();
  • updateChatroomInfoBuilder.setRoomId(IM.roomId);if(type === "roomname"){
  • updateChatroomInfoBuilder.setRoomName(content);// 修改房间名称}else if(type === "announcement"){
  • updateChatroomInfoBuilder.setAnnouncement(content);// 修改房间公告}else if(type === "roomext"){
  • updateChatroomInfoBuilder.setRoomExt(content);// 房间信息扩展字段}
  • RL_YTX.updateChatroomInfo(updateChatroomInfoBuilder,function (e) {
  • console.log(e)
  • callback();},function (err) {
  • console.error(err);
  • })                                       
  • 获取体育万博app下载_manbetx客户端网页版_bet万博网站成员    

                                       

  • var fetchChatroomMembersBuilder = new RL_YTX.FetchChatroomMembersBuilder(IM.roomId);
  • fetchChatroomMembersBuilder.setRoomId(IM.roomId);
  • fetchChatroomMembersBuilder.setType(1);//成员类型 1.全部成员 2.指定成员
  • fetchChatroomMembersBuilder.setUserId(null);// userId为空时,从头查询
  • fetchChatroomMembersBuilder.setPageSize(20);// 每页数量
  • RL_YTX.fetchChatroomMembers(fetchChatroomMembersBuilder,function (obj) {
  • console.log(obj);
  • IM.addToOnlineList(obj);},function (err) {
  • console.error(err);
  • })                                                                 
  • 体育万博app下载_manbetx客户端网页版_bet万博网站角色管理

    角色权限高的用户可以对角色权限低的用户设置拉黑状态。

                          

  • //用于设置体育万博app下载_manbetx客户端网页版_bet万博网站成员类型,分别为管理员、普通成员用户
  • var UpdateChatRoomMemberRoleBuilder = new RL_YTX.UpdateChatRoomMemberRoleBuilder();
  • UpdateChatRoomMemberRoleBuilder.setRoomId(IM.roomId);
  • UpdateChatRoomMemberRoleBuilder.setUserId(memberId);
  • UpdateChatRoomMemberRoleBuilder.setType(2);
  • //2 管理员 3 普通成员
  • UpdateChatRoomMemberRoleBuilder.setNeedNotify(2);
  • //是否需要通知, 1 不通知 2 通知
  • UpdateChatRoomMemberRoleBuilder.setNotifyExt(memberId +"成为管理员" );
  • // 通知信息扩展字段
  • RL_YTX.updateChatRoomMemberRole(UpdateChatRoomMemberRoleBuilder,function () {
  • callback();},function (err) {
  • console.error(err);})                                
  •                                               

    拉黑/移除黑名单

    角色权限高的用户可以对角色权限低的用户设置拉黑状态。  

                                       

  • var defriendMemberBuilder = new RL_YTX.DefriendMemberBuilder();
  • // 房间id
  • defriendMemberBuilder.setRoomId(IM.roomId);
  • // 用户id
  • defriendMemberBuilder.setUserId(memberId);
  • //1拉黑 2取消拉黑(默认2)
  • defriendMemberBuilder.setState(1);
  • //是否需要通知, 1 不通知 2 通知 (默认2)
  • defriendMemberBuilder.setNeedNotify(2);
  • defriendMemberBuilder.setNotifyExt("因为暗恋女主播被踢出去了");
  • //通知信息扩展字段
  • RL_YTX.defriendMember(defriendMemberBuilder,function (e) {
  • console.log(e)
  • callback();},function (err) {
  • console.error(err)})
  •                                                                  

    对体育万博app下载_manbetx客户端网页版_bet万博网站成员进行禁言/解除禁言

    创建者、管理员可以对成员进行禁言/解除禁言

                                            

  • var forbidChatRoomMemberBuilder = new RL_YTX.ForbidChatRoomMemberBuilder();
  • forbidChatRoomMemberBuilder.setRoomId(IM.roomId);// 房间id
  • forbidChatRoomMemberBuilder.setUserId(memberId);// 用户id
  • forbidChatRoomMemberBuilder.setState(1);//1禁言 2取消禁言(默认2)
  • forbidChatRoomMemberBuilder.setMuteDuration(time);//单位:分钟 当禁言时,需要禁言时长b
  • forbidChatRoomMemberBuilder.setNeedNotify(2);//是否需要通知, 1 不通知 2 通知 (默认2)
  • forbidChatRoomMemberBuilder.setNotifyExt("因为暗恋女主播被禁言了");//通知信息扩展字段
  • RL_YTX.forbidChatRoomMember(forbidChatRoomMemberBuilder,function (e) {
  • console.log(e)
  • callback();},function (err) {
  • console.error(err)})                                                                                   
  • 体育万博app下载_manbetx客户端网页版_bet万博网站全员禁言/解除禁言

    创建者能进行此操作。    

                                        

  • var allMuteBuilder = new RL_YTX.AllMuteBuilder();
  • allMuteBuilder.setRoomId(IM.roomId);
  • allMuteBuilder.setAllMuteMode(2);// 是否全员禁言 1 不是 2 是
  • allMuteBuilder.setNeedNotify(2);// 是否需要通知, 1 不通知 2 通知 (默认2)
  • allMuteBuilder.setNotifyExt("都悄悄地");// 通知信息扩展字段
  • RL_YTX.AllMuteMode(allMuteBuilder,function (e) {
  • console.log(e)
  • callback},function (err) {
  • console.error(err)});                                                                                                   
  • 踢出成员

    创建者或管理员可以将权限比自己低的用户踢出体育万博app下载_manbetx客户端网页版_bet万博网站。              

                            

  • var kickMemberBuilder = new RL_YTX.KickMemberBuilder();
  • kickMemberBuilder.setRoomId(IM.roomId);
  • kickMemberBuilder.setUserIds([“111”,”222]);
  • kickMemberBuilder.setNeedNotify(2);
  • kickMemberBuilder.setNotifyExt("违规");
  • console.log(kickMemberBuilder);
  • RL_YTX.kickMember(kickMemberBuilder,function (e) {
  • console.log(e);
  • callback();},function (err) {
  • console.log(err);if(err.code === 620010){
  • console.error('你没有权限');}})                                          
  • 离开体育万博app下载_manbetx客户端网页版_bet万博网站

    浏览器端多半为直接关闭浏览器,在关闭浏览器之前触发此事件。(onbeforeunload),或与Connector断开连接之后,自动退出房间。                

                            

  • var exitChatroomBuilder = new RL_YTX.ExitChatroomBuilder();
  • exitChatroomBuilder.setRoomId(IM.roomId);// 房间id
  • exitChatroomBuilder.setNeedNotify(2);//是否需要通知, 1 不通知 2 通知 (默认2)
  • exitChatroomBuilder.setNotifyExt(IM.user_account+ " 退出了体育万博app下载_manbetx客户端网页版_bet万博网站");// 通知信息扩展字段
  • RL_YTX.exitChatroom(exitChatroomBuilder,function (e) {
  • callback();},function (err) {
  • console.error(err);
  • })}
  •                                                                                                           

    修改个人信息                

                            

  • var updateMyChatroomMemberInfoBuilder = new RL_YTX.UpdateMyChatroomMemberInfoBuilder();
  • updateMyChatroomMemberInfoBuilder.setRoomId(IM.roomId);if(type === "nickname"){
  • updateMyChatroomMemberInfoBuilder.setNickName(content); //个人昵称}else if(type === "infoext"){
  • updateMyChatroomMemberInfoBuilder.setInfoExt(content);// 个人信息扩展字段}
  • RL_YTX.updateMyChatroomMemberInfo(updateMyChatroomMemberInfoBuilder,function (e) {
  • console.log(e)
  • callback();},function (err) {
  • console.error(err);})}                                                                              
  • 体育万博app下载_manbetx客户端网页版_bet万博网站通知消息

    用户加入,退出,被禁言,被踢出,被拉黑,变更角色等,体育万博app下载_manbetx客户端网页版_bet万博网站内的成员都会收到通知消息。

               

  • RL_YTX.onCharRoomEventLinstener(callback);
  • if(obj.type === 1){
  • //有用户加入
  • }else if(obj.type === 2){
  • //修改体育万博app下载_manbetx客户端网页版_bet万博网站通知
  • }else if(obj.type === 3){
  • //设置角色通知
  • }else if(obj.type === 4){
  • //有用户被踢出
  • }else if(obj.type === 5){
  • //有用户退出
  • }else if(obj.type === 6){
  • //全员禁言
  • }else if(obj.type === 7){
  • //体育万博app下载_manbetx客户端网页版_bet万博网站全员取消禁言
  • }else if(obj.type === 8){
  • //单人禁言
  • }else if(obj.type === 9){
  • //成员取消禁言
  • }else if(obj.type === 10){
  • //拉入黑名单
  • }else if (obj.type === 11){
  • //成员取消拉黑
  • }else if(obj.type === 12){
  • //体育万博app下载_manbetx客户端网页版_bet万博网站关闭
  • }else if(obj.type === 14){
  • //修改体育万博app下载_manbetx客户端网页版_bet万博网站信息
  • }                    
  •