易截截图软件、单文件、免安装、纯绿色、仅160KB

Java利用MSNP协议登录MSN

请参见上一篇文章,登录MSN协议
具体Java实现:
命令序列:<<代表发送,>>代表结果
1.连接DS(Dispatcher Server),得到NS(Notification Server)
<<VER 1 MSNP18 CVR0
>>VER 1 MSNP18
<<CVR 2 0x0804 winnt 5.1 i386 MSNMSGR 14.0.8089.0726 msmsgs yourAccount
>>CVR 2 14.0.8089 14.0.8089 14.0.8089 http://msgruser.dlservice.microsoft.com/download/0/9/7/0974F7CD-D082-46FE-922D-806670345793/zh-chs/wlsetup-cvr.exe http://download.live.com/?sku=messenger
<<USR 3 SSO I yourAccount
>>XFR 3 NS 207.46.124.86:1863 U D
private String dsHost = "64.4.9.254";//ds host
private String nsHost;//ns host
private int port = 1863;//port
private int trId = 1;//命令序列号
private String ticketToken;//在获取联系人时用
//得到向MSN服务器发送的命令
private String getMSNCommand(String cmd, String ... args) {
StringBuilder sb = new StringBuilder();
sb.append(cmd).append(' ');
sb.append(trId++).append(' ');
for (int i = 0; i < args.length; i++) {
if (i < args.length - 1) {
sb.append(args[i]).append(' ');
} else {
sb.append(args[i]);
}
}
sb.append("\r\n");
return sb.toString();
}
//初始化NS地址
private void initNSHost() throws TelnetException {
NonBlockTelnetClient client = new NonBlockTelnetClient(dsHost, port);
client.connect();
String cmd = getMSNCommand("VER", "MSNP18", "CVR0");
client.sendCommand(cmd);
String resp = client.getOutputByLine();
System.out.println("resp=" + resp);
cmd = getMSNCommand("CVR", "0x0804", "winnt", "5.1", "i386", "MSNMSGR", "14.0.8089.0726", "msmsgs", username);
client.sendCommand(cmd);
resp = client.getOutputByLine();
System.out.println("resp=" + resp);
cmd = getMSNCommand("USR", "SSO", "I", username);
client.sendCommand(cmd);
resp = client.getOutput


相关文档:

传智播客java学习 工作流初步


我今天预习了工作流的知识,我做了简单的笔记:
工作流(Workflow)
工作流就是工作流程的计算机化,即将工作流程中的工作如何前后组织在一起的
逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。
工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计
算机,按某种预定规则自动传递文 ......

传智播客java学习 OA项目1

今天是学习OA系统的第一天,我对今天的上课内容做了简单的总结:
OA简介:
OA是OFFICE AUTOMATION的缩写,本意为利用技术的手段提高办公的效率,进而实现办公的自动化处理。采用Internet/Intranet技术,基于工作流的概念,使企业内部人员方便快捷地共享信息,高效地协同工作;改变过去复杂、低效的手工办公方式,实现迅速 ......

传智播客java学习 OA审批流转1


我今天学习了审批流转的知识:
1,为什么要有审批流转(目的)
2,审批流转模块要实现的功能(要求)
3,解决方案与界面
1,目的
    1,审批流转就是把单位内部的各项审批电子化,如工作请示、出差申请、采购申
       请、报销等日常工作流程。
    ......

传智播客java学习 jpa进阶_ejb初步


我今天学习了徐老师讲的ejb3的知识,我做了简单的笔记:
       上午讲的是jpa的知识,下午讲的是EJB3的知识:
       JPQL语句:hibernate的HQL语句一样。
简单查询:
  Query query = em.createQuery("SELECT c from Customer c");
  retur ......

java 学习心得体会(二)


66.  EJB容器提供的服务
        主要提供声明周期管理、代码产生、持续性管理、安全、事务管理、锁和并发行管理等服务。
67.  EJB规范规定EJB中禁止的操作有哪些?
        1.不能操作线程和线程API(线程API指非线程对象的方法如n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号