第一个 Openfire 插件给Client发送信息

本文分享了作者首次开发Openfire插件的经验,重点介绍了正确配置plugin.xml的方法,以及如何使用命令行工具进行打包。此外,还提供了一个简单的插件示例,展示了如何每隔10秒向客户端发送消息。

  相信大家都看了很多Openfire写插件的东西。写插件个人感觉最难的是,配置好Plugin.XML。还有就是写Java代码的时候Eclipse是不会给你报错的。

所以下面分享一下我的第一个插件经验吧,我在写这个插件的时候也很迷茫,在看了很多资料之后才有点了解。

  1.plugin.xml中的<class>节点一定要对应你的java文件中的Package名。最好的办法是复制随便一个插件的XML,然后对应改一下,这样就安全很多。

  2.相信很多第一次写插件的时候,会不清楚怎么Ant。方法是用cmd来运行的,用CD方法 比如你的E:\openfire\build下有你的build.xml

如果你是XP的话,很简单 CD: E:\openfire\build 回车,然后ant plugins。 但是如果你是WIN7的话,那就要这样的 CD: E:\openfire\build 之后

还要输入E:\回车,然后在ant plugins。

  3.cmd 运行打包过程中,如果插件没问题的话,你在cmd中查找,比如你的项目名叫做abcPlugin 你查找这个名字的时候,找到的话,表明,很遗憾,你的打包不通过,反之恭喜你,成功打包了,重新运行Openfire吧。

  4.openfire插件也不是很难,多看别人的代码就好了:

以下是我的一个算是helloworld吧:

public void initializePlugin(PluginManager manager, File pluginDirectory) {
// TODO Auto-generated method stub
System.out.println("我的Jar包启动的HelloWorld—————————————————————————————555999");
System.out.println("我的Jar包启动的HelloWorld——————————————————————————————3333");
formatter=new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
new Thread(){
@Override
public void run() {
while(true){
try {
sleep(10000);


} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("hello");
XMPPServer.getInstance().getSessionManager().sendServerMessage(null, "hello :"+formatter.format(new java.util.Date()));
}
};
}.start();
System.out.println("我的Jar包启动的HelloWorld——————————————————————————————2222");

想client发送信息,每10秒发送一个hello,很简单吧。
openfire集成了很多功能,是个很不错的服务器。

转载于:https://www.cnblogs.com/jarrah/archive/2012/03/29/2423382.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值