今天,用JAVA做了一个简单的MSN.由于微软开发了MSN协议,所以,程序员要开发自己的MSN软件很容易,比如,用VB编MSN时,直接加载系统里的MSN组件,就可以像使用一般对象一样简单,填充式的完成几个消息事件就OK了.当然,直接使用系统里的MSN组件来开发MSN的程序员很少很少,因为这些功能无法满足程序员自己动手的满足感,也不能让程序员发挥自己的水平,灵活表现.
当前,开源方面关于MSN的项目里,C#的有一个应用比较广泛的开源组件:dotMSN,使用这个来做MSN很方便,引入dotMSN对象后,添加其提供的消息处理事件,就可以方便的完成一个MSN了,这就是内核.一般开源的MSN现在几乎都已经做成这样模式了.
而在JAVA方面呢,则主要有两个开源类库:一个是韩国人开发的JMSN,另一个则是一个类库,或者说API,就是msnm-lib,其实,在JMSN里就包涵了这个API.而我今天做的这个简单的MSN就是基于这个msnm-lib来做的.详细做法就是把网上的教程里的代码拿下来而已,呵呵,实际上不是自己做的.呵呵,就当是学习学习嘛.
其详细制作过程已经发到"编程仓库"里了:http://www.busfly.cn/CSDN/post/java-do_MSN_JMSN-Messenger.html
学做这个MSN的目标是学习JAVA,并且希望自己能用上自己的作品.
现在只是做了一个简单的,就百来行代码,没有窗口界面,所以我想把他做成一个成熟的作品.那就要以后加油学习啦.哈哈.
简单做一下笔记:
首先要用import引入MSNM的类库,在程序里定义一个MSNMessenger对象,将密码和账号初始化给这个对象,设置这个对象的在线状态,再添加这个对象的监听处理事件对象.提交登录.
好了,剩下的事件就交给那具监听处理事件对象了.不过,在主程序里还要有一个事件处理,就是发送退出的事件,这是个主动事件,所以一定要在自己的程序里做.
一般来说,在这个监听处理对象里,只要处理以下这些事件就可以了.
/**
* 某人正在输入信息
*/
public void progressTyping(
}
/**
* 收到消息的时候执行该方法
*/
public void instantMessageReceived(
}
/**
* 登录成功后执行该方法
*/
public void loginComplete(MsnFriend own) {
}
/**
* 登录失败后执行该方法
*/
public void loginError(String header) {
}
/**
* 好友离线时执行该方法
*/
public void userOffline(String loginName) {
}
/**
* 好友上线时执行该方法
*/
public void userOnline(MsnFriend friend) {
}
/**
* 有人加我为好友时执行
*/
public void whoAddedMe(MsnFriend friend) {
}
/**
* 有人把我从好友列表中删除时执行
*/
public void whoRemovedMe(MsnFriend friend) {
}
当然,如果你还有更多的需求,那就自己参考一下API的MsnAdapter这个类对象吧.
这几天好好研究一下那些类库
Tags: MSN QQ 机器人 |
原创文章如转载,请注明:转载自:巴士飞扬-技术BLOG : http://www.busfly.net/
本文链接地址:http://www.busfly.net/post/java-msn-start.html
如果你喜欢本文,请顶一下,支持我,你的支持是我继续发好文章的最大动力。谢谢。
好东西需要分享,快把本文发给你的朋友吧~!~