openfire提供了很好的插件支持,安装也非常方便。
下面介绍一个使用Broadcast插件实现的简单群
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
就可以将它显示在群窗口中了
- 大小: 21.9 KB
分享到:
相关推荐
在这个“XMPP_OPenfire即时通讯IM-android版”项目中,我们关注的是在Android平台上利用Smack库实现与Openfire服务器的交互。 Smack是一个流行的Java库,支持XMPP协议,允许开发者在Java应用程序中实现IM功能。在这...
本项目"Android-XMPP-openfire-实现IM"正是围绕着这三个关键元素进行的。以下是关于这个主题的详细知识点: 1. **XMPP协议**: - **定义**:XMPP是一种基于XML的实时通信协议,设计用于传输结构化信息,主要用于IM...
先说一下为什么要写这篇博客,是因为本人在周末在研究XMPP和OpenFire,从网上下载了个Demo,但跑不起来,花了很长时间,经改造后,跑起来了,写个篇博文也是希望后边学习XMPP和OpenFire的同学下载后直接运行,少走...
- **实现插件类**:编写Java代码实现插件功能。 - **打包**:将插件打包成JAR或WAR文件。 - **部署**:上传至服务器,通过管理控制台启用插件。 #### 七、其他参考资料 - 官方文档、社区论坛、技术博客等资源可以...
Openfire的强大之处在于其易于部署和管理,以及提供了高度的可扩展性,允许开发者通过插件来扩展其功能。 Red5则是一个开放源代码的流媒体服务器,它支持实时流协议(RTMP)、RTMPT、RTMPE、RTMPTE和RTMPS,这使得它...