当前位置: 首页 > 工具软件 > cl-xmpp > 使用案例 >

xmpp with openfire插件-利用Broadcast实现群

张淳
2023-12-01
Broadcast插件是一个向用户发送广播消息的插件。 

安装插件 
登录openfire管理控制台-插件-插件管理-有效的插件 
可以看到开放源代码插件列表 
找到Broadcast  点击右则的‘+’号安装即可 

然后到插件管理-插件中,可以看到Broadcast已经在安装的插件列表中 

Broadcast可以通过系统属性来进行配置 
plugin.broadcast.serviceName 
Broadcast的服务名,如果没有设置,默认的就是 "broadcast". 

plugin.broadcast.disableGroupPermissions 
组广播授权,设为'true',允许任何用户对组中发送广播 
设为'false',只有组成员或管理员可以向一个组中发送广播 
默认值是'false' 

plugin.broadcast.groupMembersAllowed 
组成员广播授权,设为'true',允许组成员对组中发送广播 
设为'false',只有管理员可以对组中发送广播 
默认值是'true' 
这个配置只有在plugin.broadcast.disableGroupPermissions为'false'才有效 

plugin.broadcast.allowedUsers 
指定用户广播授权,设定只允许用户的成员发送广播 
如果没有指定,任何用户都可以对所有用户广播 
指定用户的格式为完整的JID ( hety@testserver.cn) 


我们假设有这样一个群应用的环境: 
在企业应用中所有的好友都是同事,群中的成员也是所有的同事 
任何人都可以在群中发言 
这样broadcast的组授权设置就可以不用 
全部使用默认设置,serviceName也用默认的‘ broadcast’ :) 


这样就可以用下面的数据包发送一个群消息 

<message from="cl@testserver.cn/xiaoe" id="xiaoeiq-8" to="all@broadcast.testserver.cn" type="chat">   
<body>hello group</body>   
<thread>xiaoeiq-9</thread>   
<x xmlns="jabber:x:event">   
<offline/><composing/>   
</x>   
</message>

在此openfire服务器上的所有用户都将收到这条消息 

而客户端实现很方便,只需要判断message.to 为all@broadcast.testserver.cn 
就可以将它显示在群窗口中了 



转发地址:http://www.cnblogs.com/hannover/archive/2009/02/25/1398191.html

 类似资料: