环信创建群组html,群组管理
群组管理
获取群组列表
调用listRooms函数获取当前登录用户加入的群组列表,示例如下。
// 列出所有群组
var listGroups = function () {
var option = {
success: function (rooms) {
console.log(rooms);
},
error: function () {
console.log('List groups error');
}
};
conn.listRooms(option);
};
查询群组成员
根据roomId查询群组成员。
// 查询群组成员
// 查询出来的member的结构为{affiliation: 'member', jid: 'easemob-demo#chatdemoui_wjy6@easemob.com'}
// 注意,这里的jid格式,成员的用户名是chatdemoui_之后,@easemob.com之前的字符串,如本例的wjy6是用户名
var queryRoomMember = function () {
var member = '';
conn.queryRoomMember({
roomId: '114715680632209992',
success: function (members) {
for (var o in members) {
member = members[o];
console.log(member);
}
}
});
};
获取群组黑名单
// 获取群组黑名单
var getGroupBlackList = function () {
var option = {
roomId: '1480758709661',
success: function (list) {
console.log('Get group black list: ', list);
},
error: function () {
console.log('Get group black list error.');
}
};
conn.getGroupBlacklist(option);
};
创建群组
创建群组,并设置群组属性的示例如下。
// 建立一个群组
var createGroup = function () {
var option = {
subject: 'groupName', // 群名称
description: 'create a group test', // 群简介
members: ['wjy6', 'asdfghj'], // 以数组的形式存储需要加群的好友ID
optionsPublic: true, // 允许任何人加入
optionsModerate: false, // 加入需审批
optionsMembersOnly: false, // 不允许任何人主动加入
optionsAllowInvites: false // 允许群人员邀请
};
conn.createGroup(option);
}
再在回调函数中的onPresence中添加:
If( message.type == 'createGroupACK'):
conn.createGroupAsync({
from: message.from,
success: function(option){
console.log('Create Group Succeed');
}
});
获取群组信息
应用场景:判断用户是否为该群管理员。
// 获取群组信息
var queryGroupInfo = function () {
conn.queryRoomInfo({
roomId: '1480747027186',
// settings 表示入群的权限,具体值待定
// members[0]里面包含群主信息,其结构为{affiliation: 'owner', jid: appKey + '_' + username + '@easemob.com'}
// jid中的username就是群主ID
// fields的结构为:
/*
{
affiliations: '2',
description: '12311231313', // 群简介
maxusers: '200', // 群最大成员容量
name: '123', // 群名称
occupants: '2',
owner: 'easemob-demo#chatdemoui_mengyuanyuan' // 群主jid
}
*/
success: function (settings, members, fields) {
console.log('settings: ', settings);
console.log('members: ', members);
console.log('fields: ', fields);
},
error: function () {
console.log('Error!');
}
});
};
修改群组信息
只有群组的管理员可以修改群组名称和群组简介,示例如下。
注意:在获取群组时候就可以获取群管理员的ID,从而前端可决定是否显示修改信息按钮。
// 修改群信息
var changeGroupInfo = function () {
var option = {
roomId: '1480756943693',
subject: 'ChangeTest', // 群组名称
description: 'Change group information test', // 群组简介
success: function () {
console.log('Change Group Names Success!');
}
};
conn.changeGroupSubject(option);
};
将好友加入群组
管理员可以将好友加入群组。
// 加好友入群
var addGroupMembers = function () {
var option = {
list: ['asdfghj', 'wjy6'],
roomId: '1480841456167'
};
conn.addGroupMembers(option);
};
将成员踢出群组
只有群组的管理员有权限将成员踢出群组,踢出群组的同时,将该群成员拉入群组黑名单。
注意:在获取群组时候就可以获取群管理员的ID,从而前端可决定是否显示踢人按钮。
// 将成员踢出群(同将群成员拉入群黑名单)
var addToGroupBlackList = function () {
var option = {
affiliation: 'owner', // 写死
roomId: '1480756943693', // 群组ID
success: function () {
console.log('add to black list succeed');
},
to: 'asdfghj' // 需要删除的成员ID
};
conn.addToGroupBlackList(option);
};
将好友移出群组黑名单
将好友移出群组黑名单后,该好友依然是群组成员。
// 将好友从黑名单移除
var removeFromGroupBlackList = function () {
var option = {
roomId: '1480841456167',
to: 'wjy6',
success: function () {
console.log('Remove from black list success!');
}
};
conn.removeGroupMemberFromBlacklist(option);
};
解散群组
只有群组的管理员有权限将成员踢出群组。群组解散后,所有群成员均退出该群。
注意:在获取群组时候就可以获取群管理员的ID,从而前端可决定是否显示解散按钮。
// 解散一个群组
var destroyGroup = function () {
var option = {
reason: 'Test Destroy Group',
roomId: '1480840256052',
success: function () {
console.log('Destroy group success!');
}
};
conn.destroyGroup(option);
};
退出群组
群成员可以主动退出群组,示例如下。
// 成员主动退出群
var leaveGroup = function () {
var option = {
to: 'asdfghj',
roomId: '1480747027186',
success: function () {
console.log('You leave room succeed!');
},
error: function () {
console.log('Leave room faild');
}
};
conn.leaveGroupBySelf(option);
};
发送消息
接收及处理消息
群聊接收及处理消息同单聊,消息体与单聊消息根据 message 的 type 进行区分,单聊为:chat,群聊为:groupchat,聊天室为:chatroom。根据消息的类型进行不同处理即可。
环信创建群组html,群组管理相关推荐
- 环信php创建群组,【PHP】接入环信创建群组和IM用户
序言 在环信的文档中介绍,可以看到是没有PHP的sdk的,那么就需要咱们自己简单的封装一下.我这里使用的是TP5 环信素材准备 (1)注册完之后会创建一个IM应用 (2)创建成功会有这下图这样的一个展 ...
- 环信群聊头像和发送gif图片
一.群聊头像 环信demo中没有做群聊的头像,需要开发者自己实现. 思路一: 先调用环信的方法,根据groupID获取到所有群成员,然后将群成员的头像进行处理,做成和微信一样九宫格头像 思路二:群聊头 ...
- 直播APP的应用(使用七牛直播平台SDK和环信IM低仿映客)
简介 这是一款低仿映客直播的Android直播聊天应用,本项目通过使用七牛的直播平台提供的sdk进行推流和拉流,使用环信IM来作为用户系统的管理直播聊天室中消息收发.发送礼物.弹幕.私信等功能.本项目 ...
- Java IM环信服务端集成之用户注册(三)
移动端用户注册 VS 环信IM 用户注册 一.IM 用户管理 注册 IM 用户[单个] 在 URL 指定的 org 和 APP 中创建一个新的用户,分两种模式:开放注册和授权注册. "开放注 ...
- 环信php创建群组,群组@功能
群组中,@某人的和群组普通消息没有区别,只是针对被@的用户在 UI 上显示会有不同.可以通过环信的扩展消息来实现. 发送方将想要@的人的环信 ID 通过扩展字段放到扩展消息中,并把消息发到群里. 群中 ...
- 环信SDK 头像、昵称、表情自定义和群聊设置的实现 二(附源码)
前言: 环信SDK 头像.昵称.表情自定义和群聊设置的实现 一(附源码) 接着上面说的,我们来说说表情,它在哪里可以自定义,怎么写,那个方法是添加表情的我们都说说,找到 ChatViewControl ...
- Greenplum【集群搭建 02】cgroup工具安装+用户资源组配置+集群资源组配置+数据库资源组配置+资源组相关信息(一篇学会资源组配置)
采用资源组的形式管理数据库集群的内存.cpu等信息,非特殊说明,需要在集群每台机器上执行. 1.安装cgroup工具 # 1.安装 yum install -y libcgroup-tools# 如果 ...
- 【ceph】ceph集群PG(归置组)存在的意义是什么?
Ceph 的 RADOS中,引入了 PG 的概念用以更好地管理数据.PG 的引入降低对数量巨大的对象的管理难度. 1.对象数量时刻处于变化中.而PG的数量经过人工规划因而严格可控. 2.PG数量远小于 ...
- 利用工具对百度网盘的群组、好友进行管理,批量分享文件
做百度网盘营销的小伙伴经常需要对百度网盘的群组.好友进行管理,但是百度网盘APP或者网页版里面对于这方面的功能太弱了,下面介绍如何利用工具对百度网盘群组.好友进行集中管理,并批量分享文件. 一,下载工 ...
最新文章
- Nagios的安装和基本配置(一:知识点总结及环境准备)
- 2018全球科技创新报告
- [转] C# Winform 拦截关闭按钮触发的事件
- Android之定时器实现的几种方式和removeCallbacks失效问题详解
- mysql必知必会_MySQL必知必会
- Delta3d插件机制
- 项目管理平台(总结篇二)
- 漫步线性代数二十六——特征值和特征向量(续)
- mac上配置mysql
- qt鼠标键盘钩子类设计
- 4种方法解决js跨域的实现方式
- 上海市计算机学会月赛 2022年6月月赛丙组
- 【机器学习】十二、一文看懂支持向量机原理
- Oracle中的sys用户和system用户
- 如何修改PDF文件,怎样将PDF文件拆分
- DC-DC电压基准芯片和REF芯片
- 【HDU】4942 Game on S♂play 线段树
- 操作系统春招面试复习之:文件管理
- Github 上火热的十个 Python 项目,从Debug工具到AI水军、量化交易系统。( 嗨学编程)
- Levy distribution(列维分布)和Levy fligt(列维飞行)
热门文章
- 创造与魔法游戏最新的服务器,创造与魔法MOD服务器
- openwrt c语言配置文件,OpenWrt学习笔记7 -- 让人类重建巴别塔的UCI之UCI配置文件
- ctr多少正常_你知道亚马逊的点击率多少算正常的吗?
- 4.什么是MESI缓存一致性协议?怎么解决并发的可见性问题?
- 束手无策 MSN、QQ盗号容易追讨难(转)
- keil的sct文件_keil .sct分散加载文件及其应用(重点必看)
- 汇编:assembly (intel x86/x86_64)
- MySQL的启动与简单命令_002
- MATLAB编程-弹簧振动动画
- 2873-36-1,Gancidin W,CYCLO(L-LEU-L-PRO),cyclo-L-Leu-L-Pro,环(L-脯氨酰-L-亮氨酰)