Xmpp smack 聊天室岗位以及角色的管理

参考的smack documentation:https://www.igniterealtime.org/builds/smack/docs/latest/documentation/,以及XEP-0045协议:http://wiki.jabbercn.org/XEP-0045




管理岗位
//muc 为 MultiUserChat 一个对象
muc.grantMembership(String jid) //授予一个会员岗位 (参数:用户jid),这时muc的岗位必须得是Admin(管理员)或者Owner(所有者)
muc.grantAdmin(String jid) //授予一个管理员岗位(参数:用户jid),这时muc的岗位必须得是Owner(所有者)
muc.grantOwnership(String jid) //授予一个所有者岗位(参数:用户jid),这时muc的岗位必须得是Owner(所有者)
muc.revokeMembership(String jid) //撤销一个会员岗位(参数:用户jid),这时muc的岗位必须得是Admin(管理员)或者Owner(所有者)
muc.revokeAdmin(String jid) //撤销一个管理员岗位(参数:用户jid),这时muc的岗位必须得是Owner(所有者)
muc.revokeOwnership(String jid) //撤销一个所有者岗位(参数:用户jid),这时muc的岗位必须得是Owner(所有者)



管理角色
//muc 为 MultiUserChat 一个对象
muc.grantVoice(String nickname) //授予发言权(参数:用户在房间的nickname),这时用户的角色由visitor(游客)变成participant(与会者),这时muc的角色必须是主持人(注意:Admin(管理员)、Owner(所有者)默认是一个主持人)
muc.revokeVoice(String nickname) //撤销发言权(参数:用户在房间的nickname),这时用户的角色由participant(与会者)变成visitor(游客),这时muc的角色必须是主持人(注意:Admin(管理员)、Owner(所有者)默认是一个主持人)
muc.grantModerator(String nickname) //授予一个用户主持人的角色(参数:用户在房间的nickname),这时用户的角色由participant(与会者)变成moderator(主持人),授予的权限应该是一个岗位为Admin(管理员)或者Owner(所有者)的主持人角色 
muc.revokeModerator(String nickname) //撤销一个用户主持人的角色(参数:用户在房间的nickname),这时用户的角色由moderator(主持人)变成participant(与会者),撤销的权限应该是一个岗位为Admin(管理员)或者Owner(所有者)的主持人角色 



至于由于权限不够抛出的异常信息,请看XEP-0045协议,另外,Asmack与smack大同小异,应该是差不多的。本文仅供参考。
有错误的地方,请各位不吝指教!!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值