- 浏览: 400766 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
wcjagta:
...
dedecms插件开发教程 -
xc2013:
看起来不错 先下载来试试
ECSHOP完全静态化解决方法 -
greemranqq:
你好,我在xp 上做实验,也是JS css带不过来,关于 ro ...
nginx资源定向 css js路径问题 -
hotsmile:
表结构给出来吧,测试的提示说要注册,
中国移动CMPP短信开发平台通讯包 2.8 -
mengdejun:
gang80306176 写道这个插件怎么用和安装普通插件一样 ...
phpcms2008 sp4单网页编辑器插件
import net.sf.jml.MsnContact; import net.sf.jml.MsnContactPending; import net.sf.jml.MsnGroup; import net.sf.jml.MsnList; import net.sf.jml.MsnMessenger; import net.sf.jml.MsnSwitchboard; import net.sf.jml.event.MsnContactListListener; import net.sf.jml.event.MsnMessageListener; import net.sf.jml.impl.MsnMessengerFactory; import net.sf.jml.message.MsnControlMessage; import net.sf.jml.message.MsnDatacastMessage; import net.sf.jml.message.MsnInstantMessage; import net.sf.jml.message.MsnSystemMessage; import net.sf.jml.message.MsnUnknownMessage; import net.sf.jml.message.p2p.MsnP2PMessage; @SuppressWarnings("unused") public class MSNDaemonOther { private String account="mak0000@msn.com"; private String password="*************"; private MsnMessenger messenger=null; public MSNDaemonOther() { } private void start() { this.messenger=MsnMessengerFactory.createMsnMessenger(account,password); this.messenger.addMessageListener(new MsnMessageAdapter(this.messenger)); this.messenger.setLogIncoming(true); this.messenger.setLogOutgoing(true); this.messenger.login(); } public void end() { this.messenger.logout(); } public static void main(String[] args) { MSNDaemonOther msn=new MSNDaemonOther(); msn.start(); } } class MsnMessageAdapter implements MsnMessageListener{ private MsnMessenger messenger=null; public MsnMessageAdapter(MsnMessenger messenger) { super(); this.messenger = messenger; } public void controlMessageReceived(MsnSwitchboard arg0, MsnControlMessage arg1, MsnContact arg2) { System.out.println("正在输入"+arg2.getEmail()); } public void datacastMessageReceived(MsnSwitchboard arg0, MsnDatacastMessage arg1, MsnContact arg2) { System.out.println("2"); } public void instantMessageReceived(MsnSwitchboard arg0, MsnInstantMessage arg1, MsnContact arg2) { System.out.println("收到消息:"+arg1.getContent()); if(arg1.getContent().equals("-h")) this.messenger.sendText(arg2.getEmail(),"1"); else if(arg1.getContent().equals("-v")) this.messenger.sendText(arg2.getEmail(),"2"); else if(arg1.getContent().equals("-q")) this.messenger.sendText(arg2.getEmail(),"3"); else if(arg1.getContent().equals("-x")) this.messenger.sendText(arg2.getEmail(),"4"); else this.messenger.sendText(arg2.getEmail(),"小孟在线 mengdejun.javaeye.com \r-h帮助 \r-v 验证\r-q 退出\r-x 其他"); } public void offlineMessageReceived(String arg0, String arg1, String arg2, MsnContact arg3) { System.out.println("收到在线消息 1:"+arg0+" 2:"+arg2); } public void p2pMessageReceived(MsnSwitchboard arg0, MsnP2PMessage arg1, MsnContact arg2) { System.out.println("收到P2P消息:"+arg1.getAppId()); } public void systemMessageReceived(MsnMessenger arg0, MsnSystemMessage arg1) { System.out.println("收到系统消息:"+arg1.getContent()); } public void unknownMessageReceived(MsnSwitchboard arg0, MsnUnknownMessage arg1, MsnContact arg2) { System.out.println("收到未知消息:"+arg1.getContentAsString()); }} class MsnContactListAdapter implements MsnContactListListener { private MsnMessenger messenger=null; public MsnContactListAdapter(MsnMessenger messenger) { super(); this.messenger = messenger; } public void contactAddCompleted(MsnMessenger arg0, MsnContact arg1, MsnList arg2) { // TODO Auto-generated method stub } public void contactAddInGroupCompleted(MsnMessenger arg0, MsnContact arg1, MsnGroup arg2) { // TODO Auto-generated method stub } public void contactAddedMe(MsnMessenger arg0, MsnContact arg1) { // TODO Auto-generated method stub } public void contactAddedMe(MsnMessenger arg0, MsnContactPending[] arg1) { // TODO Auto-generated method stub } public void contactListInitCompleted(MsnMessenger arg0) { // TODO Auto-generated method stub } public void contactListSyncCompleted(MsnMessenger arg0) { // TODO Auto-generated method stub } public void contactPersonalMessageChanged(MsnMessenger arg0, MsnContact arg1) { // TODO Auto-generated method stub } public void contactRemoveCompleted(MsnMessenger arg0, MsnContact arg1, MsnList arg2) { // TODO Auto-generated method stub } public void contactRemoveFromGroupCompleted(MsnMessenger arg0, MsnContact arg1, MsnGroup arg2) { // TODO Auto-generated method stub } public void contactRemovedMe(MsnMessenger arg0, MsnContact arg1) { // TODO Auto-generated method stub } public void contactStatusChanged(MsnMessenger arg0, MsnContact arg1) { // TODO Auto-generated method stub } public void groupAddCompleted(MsnMessenger arg0, MsnGroup arg1) { // TODO Auto-generated method stub } public void groupRemoveCompleted(MsnMessenger arg0, MsnGroup arg1) { // TODO Auto-generated method stub } public void ownerDisplayNameChanged(MsnMessenger arg0) { // TODO Auto-generated method stub } public void ownerStatusChanged(MsnMessenger arg0) { // TODO Auto-generated method stub }}
package net.sf.jml.example; import net.sf.jml.MsnContact; import net.sf.jml.MsnLogoutReason; import net.sf.jml.MsnMessenger; import net.sf.jml.MsnProtocol; import net.sf.jml.MsnSwitchboard; import net.sf.jml.MsnUserStatus; import net.sf.jml.event.MsnAdapter; import net.sf.jml.event.MsnContactListAdapter; import net.sf.jml.impl.MsnContactImpl; import net.sf.jml.impl.MsnMessengerFactory; import net.sf.jml.message.MsnControlMessage; import net.sf.jml.message.MsnDatacastMessage; import net.sf.jml.message.MsnInstantMessage; import net.sf.jml.message.MsnSystemMessage; import net.sf.jml.message.MsnUnknownMessage; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * @author Roger Chen */ public class SimpleMsn { private static final Log log = LogFactory.getLog(SimpleMsn.class); private String email; private String password; private MsnMessenger messenger; public SimpleMsn(String email, String password) { this.email = email; this.password = password; } public void start() { messenger = MsnMessengerFactory.createMsnMessenger(email, password);//创建MsnMessenger messenger.setSupportedProtocol(new MsnProtocol[] { MsnProtocol.MSNP11 });//设置登录协议 messenger.getOwner().setInitStatus(MsnUserStatus.ONLINE);//设置用户状态 messenger.setLogIncoming(true);// messenger.setLogOutgoing(true);// //添加监听 messenger.addListener(new MsnListener()); //登录 messenger.login(); messenger.addContactListListener(new MsnContactListAdapter() { public void contactStatusChanged(MsnMessenger msn, MsnContact con) { System.out.println(con.getDisplayName()); System.out.println(con.getPersonalMessage()); System.out.println(((MsnContactImpl) con).getCurrentMedia()); } public void contactListInitCompleted(MsnMessenger messenger) { listContacts(); } }); } private void listContacts() { //取得MSN好友列表 MsnContact[] cons = messenger.getContactList().getContacts(); for (MsnContact con : cons) { System.out.println(con.getDisplayName()); System.out.println(con.getEmail()); System.out.println(con.getStatus()); System.out.println(con.getPersonalMessage()); //发送信息 if(con.getStatus() != MsnUserStatus.OFFLINE) { messenger.sendText(con.getEmail(),"hello"); } } } public static void main(String[] args) throws Exception { String email = www.xiaoshanju; String password = "萧山居"; new SimpleMsn(email, password).start(); } private static class MsnListener extends MsnAdapter { //异常时发生 public void exceptionCaught(MsnMessenger messenger, Throwable throwable) { log.error(messenger + throwable.toString(), throwable); try { Thread.sleep(30000); } catch (InterruptedException e) { e.printStackTrace(); } messenger.login(); } //登录完成时发生 public void loginCompleted(MsnMessenger messenger) { log.info(messenger + " login complete "); } //注销时发生 public void logout(MsnMessenger messenger, MsnLogoutReason reason) { log.info(messenger + " logout"); if (reason == MsnLogoutReason.SessionClosed) { messenger.login(); } } //收到正常信息的时候发生 public void instantMessageReceived(MsnSwitchboard switchboard, MsnInstantMessage message, MsnContact friend) { log.info(switchboard + " recv instant message " + message); switchboard.sendMessage(message, false); } //收到系统信息的时候发生,登录时 public void systemMessageReceived(MsnMessenger messenger, MsnSystemMessage message) { log.info(messenger + " recv system message " + message); } //当在联系人聊天窗口获得光标并按下第一个键时发生 public void controlMessageReceived(MsnSwitchboard switchboard, MsnControlMessage message, MsnContact contact) { log.info(switchboard + " recv control message from " + contact.getEmail()); switchboard.sendMessage(message, false); } //收到系统广播信息时发生 public void datacastMessageReceived(MsnSwitchboard switchboard, MsnDatacastMessage message, MsnContact friend) { log.info(switchboard + " recv datacast message " + message); switchboard.sendMessage(message, false); } //收到目前不能处理的信息时发生 public void unknownMessageReceived(MsnSwitchboard switchboard, MsnUnknownMessage message, MsnContact friend) { log.info(switchboard + " recv unknown message " + message); } public void contactListInitCompleted(MsnMessenger messenger) { log.info(messenger + " contact list init completeted"); } //更新好友列表完成时发生 public void contactListSyncCompleted(MsnMessenger messenger) { log.info(messenger + " contact list sync completed"); } public void contactStatusChanged(MsnMessenger messenger, MsnContact friend) { log.info(messenger + " friend " + friend.getEmail() + " status changed from " + friend.getOldStatus() + " to " + friend.getStatus()); } public void ownerStatusChanged(MsnMessenger messenger) { log.info(messenger + " status changed from " + messenger.getOwner().getOldStatus() + " to " + messenger.getOwner().getStatus()); } public void contactAddedMe(MsnMessenger messenger, MsnContact friend) { log.info(friend.getEmail() + " add " + messenger); } public void contactRemovedMe(MsnMessenger messenger, MsnContact friend) { log.info(friend.getEmail() + " remove " + messenger); } //关闭一个聊天窗口时发生 public void switchboardClosed(MsnSwitchboard switchboard) { log.info(switchboard + " closed"); } //打开一个聊天窗口时发生 public void switchboardStarted(MsnSwitchboard switchboard) { log.info(switchboard + " started"); } public void contactJoinSwitchboard(MsnSwitchboard switchboard, MsnContact friend) { log.info(friend.getEmail() + " join " + switchboard); } public void contactLeaveSwitchboard(MsnSwitchboard switchboard, MsnContact friend) { log.info(friend.getEmail() + " leave " + switchboard); } } }
jml的全称是"Java MSN Messenger Library (JML)"
官方地址是:http://jml.blathersource.org/
现在的最新版本是1.0
下载地址是:http://sourceforge.net/projects/java-jml/files/
- commons-logging-1.1.1.jar (59.4 KB)
- 下载次数: 10
- httpcore-4.1.jar (176.8 KB)
- 下载次数: 11
- jml-1.0b4.jar (315.9 KB)
- 下载次数: 14
发表评论
-
使用LumaQQ来开发QQ机器人
2011-05-04 09:25 1742自从博客园闪存发布了Q ... -
Java 本地接口规范
2011-04-16 23:04 1170JNI是Java Native Interface的缩写,中 ... -
java 和 C++ Socket通信(java作为服务端server,C++作为客户端client,解决中文乱码问题GBK和UTF8)
2011-04-16 22:47 3565代码: http://files.cnblogs.com/ ... -
中国移动CMPP短信开发平台通讯包 2.8
2011-04-16 21:53 2662[size=x-small;]1 软件完全用JAVA开发,便于 ... -
HTML解析器 jsoup
2011-04-11 16:20 991jsoup 是一款 Java 的HTML 解析器,可直接解析某 ... -
一个简单的文字加密解密类
2011-04-11 14:09 1178我们玩游戏神马的,在安装文件夹里或许会有一些TXT文件,但打开 ... -
谷歌遭甲骨文死磕 高斯林或成救世主?
2011-04-06 09:59 872被誉为Java之父的James Gosling,在从甲骨文高调 ... -
Jigloo
2011-03-25 19:13 1032Jigloo Jigloo 是一个 Eclipse ... -
基于java的网络抓包技术研究与实现
2011-03-25 18:57 1609一、实验内容描述本 ... -
Eclipse全屏插件
2011-03-21 21:55 939下载地址 -
jsp java分页标签
2010-11-19 14:48 1515package org.whvcse.common; ... -
java之数据库缓存
2010-10-27 18:57 1684import java.io.File; import ja ... -
java 字体对话框
2010-10-21 20:30 1239package org.whsvc.font; 武汉软件 ... -
java servlet生成html
2010-10-17 12:31 8227package com.html; import jav ... -
java下载程序
2010-09-12 18:00 2097import java.io.BufferedInputStr ... -
jsp 上传下载配置文件
2009-10-11 21:51 1759<?xml version="1.0" ... -
jsp 上传下载源代码
2009-10-11 21:48 2172package org.whvcse.upload.impl; ... -
java数据库连接池 V1.0
2009-10-11 21:37 1963package com.mdj.dmdatabase.test ... -
java 纯Socket发送邮件
2009-10-11 21:32 1488import java.io.*; import java. ... -
jdbc读写Excel源代码
2009-10-11 21:29 4213package com.mysql.odbc; import ...
相关推荐
本系统通过java jml 实现msn功能 并且可以自动聊天 jml的jar包需要你自己去下载 需要三个 cindy.jar commons-logging.jar junit.jar
java msn 实现接口jar包 Java MSN 实现msn发信息
NULL 博文链接:https://zhouxianglh.iteye.com/blog/614561
java实现的msn机器人,可以自动应答,主动邀请,主动接受邀请。函数库实现msn所有功能
Java 建模语言 (JML) 是一种行为接口规范语言,可用于指定 Java 模块的行为(如契约设计——DBC)。 它有许多工具可以进行断言检查、单元测试等。
JML(Java Modeling Language)是用于对Java程序进行规格化设计的一种表示语言。JML是一种行为接口规格语言 (Behavior Interface Specification Language,BISL),基于Larch方法构建。BISL提供了对方法和类型的规格...
jml-src-1.0b4 java操作msn的源码
NULL 博文链接:https://asivy.iteye.com/blog/1006353
NULL 博文链接:https://mengqingyu.iteye.com/blog/408214
Roy Tsang开发的基于Java Msn Lib(JML)的Web msn客户端。 您可以通过gmail dot com的roy dot cstsang与我联系。
java实现计算器 import java.awt.*; import javax.swing.*; public class jisuanqi extends JFrame { JMenuBar jmb; //菜单栏组件 JMenu jm1,jm2,jm3; //菜单组件 JMenuItem jml1, jml2,jml3,jml4,jml5,jml6; //...
guiceyloops.zip,jml:简化jms消息路由和转换的库guiceylops是一个极简的库,用于帮助使用guice测试jee应用程序。
用于智能卡的 Java Card 应用程序原型及其客户端应用程序。 它是在 JML(Java 建模语言)的支持下开发的,用于正式指定在 Java Card 中开发 HealthCard 应用程序的要求。
BSearchAutoGenerated 该项目包含经典二进制搜索算法的实现,该算法与该算法的CafeOBJ规范一致。 更具体地说,CafeOBJ是... 然后,我验证了Java实现是否符合JML规范(使用Esc / Java2工具),以及原始的CafeOBJ规范。
OpenJUMP 试点项目-Java 统一制图平台 OpenJUMP 是“Java 统一制图平台”GIS 软件 JUMP 的社区驱动分支。最初的 JUMP 由 Vivid Solutions 开发,于 2003 年在 GPL2 下发布 特征 矢量 GIS(也可以读取栅格) 提供...
JMLCute使用jCUTE的Concolic引擎和AspectJML的JML编译器为给定项目的源代码及其JML规范的项目生成JUnit测试用例。 建造 jmlcute在Linux 64位系统上运行。 如果您有Vagrant,请运行“ vagrant up”以构建系统,然后...
jml-build jml构建系统 这包含在 Make 之上的一个薄层,允许构建更复杂的项目。 命令保留在 Makefile 中,因此不需要额外的工具。 它主要针对 C++ 项目。 它支持以下内容: 非递归修改递归子目录 c/c++/fortran ...
VDM_JML转换方法的研究及其在开发过程中的应用 面向对象的形式化方法