正文

中国移动MM7 API用户手册(八)2006-06-20 09:22:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/ggbm/16057.html

分享到:

4.6 发送取消消息(下行业务) 当VASP发送MM7SubmitReq消息给MMSC成功后,VASP可以发送取消消息,以取消之前所发送给MMSC的消息。具体构建取消消息见4.2.2.2。   package com.cmcc.mm7.vasp.conf;   import com.cmcc.mm7.vasp.message.*; import com.cmcc.mm7.vasp.service.MM7Sender; import com.cmcc.mm7.vasp.common.*; import java.io.*;   public class VaspSendTest { public static void main(String[] args) {        MM7Config mm7Config = new MM7Config("../config/mm7Config.xml"); //设置ConnConfig.xml文件的路径 mm7Config.setConnConfigName(“../config/ConnConfig.xml”);        MM7Sender mm7Sender = new MM7Sender(mm7Config);               MM7CancelReq cancelReq = new MM7CancelReq();            cancel.setTransactionID("关联标识");                      //从MM7SubmitRes中获得MessageID               cancelReq.setMesageID(“待取消的消息的标识符”);        MM7RSRes res = mm7Sender.send(cancelReq);        System.out.println("res.statuscode=" + res.getStatusCode() +                            ";res.statusText=" + res.getStatusText());        } }   4.7 发送替换消息(下行业务) 当VASP发送MM7SubmitReq消息给MMSC成功后,VASP可以发送替换消息,以替换之前所发送给MMSC的消息。具体构建替换消息见4.2.2.3。 package com.cmcc.mm7.vasp.conf;   import com.cmcc.mm7.vasp.message.*; import com.cmcc.mm7.vasp.service.MM7Sender; import com.cmcc.mm7.vasp.common.*; import java.io.*;   public class VaspSendTest { public static void main(String[] args) {        MM7Config mm7Config = new MM7Config("./config/mm7Config.xml"); //设置ConnConfig.xml文件的路径 mm7Config.setConnConfigName(“./config/ConnConfig.xml”);        MM7Sender mm7Sender = new MM7Sender(mm7Config);               MM7ReplaceReq  replace = new MM7ReplaceReq();         replace.setTransactionID("关联标识");               //从MM7SubmitRes中获得MessageID               replace.setMessageID("被当前消息所替换的消息的标识符");               //创建消息内容体         MMContent content = new MMContent();         content.setContentType(MMConstants.ContentType.MULTIPART_MIXED);         MMContent sub1 = MMContent.createFromString("This is a test11");         sub1.setContentID("1.txt");         content.addSubContent(sub1);         MMContent sub2 = MMContent.createFromString("This is a Test22");         sub2.setContentID("2.txt");         content.addSubContent(sub2);         replace.setContent(content);        MM7RSRes res = mm7Sender.send(replace);        System.out.println("res.statuscode=" + res.getStatusCode() +                            ";res.statusText=" + res.getStatusText());        } } 5.开发过程中需用的一些Status解释 5.1 关于VASP接收到消息后设置返回响应(Res)的状态码及状态报告的解释 当VASP收到MMSC发送过来的DeliverReq、DeliverReportReq、ReadReplyReq时,可以经过判断后,返回给MMSC一个状态码和状态描述,可以返回的StatusCode和StatusText分别如下: 1000 : 成功; 1001 : 部分成功; 2000 : 客户机错误; 2001 : 操作受限; 2002 : 地址错误; 2003 : 找不到地址; 2004 : 多媒体内容被拒绝; 2005 : 找不到消息ID; 2006 : 找不到链接ID; 2007 : 消息格式破坏; 3000 : 服务器错误; 3001 : 不可接受; 3002 : 消息被拒绝; 3003 : 不支持多个地址; 4000 : 一般服务错误; 4001 : 标识不正确; 4002 : 版本不支持; 4003 : 操作不支持; 4004 : 验证错误; 4005 : 服务错误; 4006 : 无法提供服务; 4007 : 服务被拒绝;   5.2 关于VASP收到DeliverReq中MMStatus的解释 VASP收到DeliverReq消息后,其中有个MMStatus字段值,是个byte型,因此说明一下具体数字所表示的含义: 0 :过期; 1 :接收; 2 :系统拒绝; 3 :用户拒绝; 4 :未知; 5 :转发;   5.3 关于VASP收到ReadReplyReq中ReadStatus的解释 VASP收到ReadReplyReq消息后,其中有个ReadStatus字段值,是个byte型,因此说明一下具体数字所表示的含义: 0 :已读取; 1 :未读被删; 2 :未知; 6.获取MM7 API版本信息的方法 VASP要想获得自己当前使用的API的版本号,首先在环境变量中设置mm7api.jar包存放的路径,然后点击开始菜单的运行,输入cmd进入Dos 窗口,敲命令:  E:\> java com.cmcc.mm7.vasp.common.RetriveApiVersion 回车 可以看到打印信息如下: 当前使用的MM7 API的版本为:V1.5.1_20040512   7. MM7 API返回StatusCode说明 -100:系统错误; -101:超时发送失败; -102:接收失败; -103:I/O错误; -104:Socket不通; -105:待发送的消息为空; -106:发送消息不正确; -107:接收消息为空; -108:Bad Request; -109:XML解析错误;    

阅读(5607) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册