惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Help Net Security
Help Net Security
G
Google Developers Blog
雷峰网
雷峰网
WordPress大学
WordPress大学
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Engineering at Meta
Engineering at Meta
Security Latest
Security Latest
T
Threat Research - Cisco Blogs
AWS News Blog
AWS News Blog
F
Full Disclosure
C
Cybersecurity and Infrastructure Security Agency CISA
T
The Exploit Database - CXSecurity.com
J
Java Code Geeks
U
Unit 42
C
Cyber Attacks, Cyber Crime and Cyber Security
V
V2EX
C
Cisco Blogs
博客园 - 司徒正美
Project Zero
Project Zero
L
LINUX DO - 热门话题
阮一峰的网络日志
阮一峰的网络日志
Blog — PlanetScale
Blog — PlanetScale
Scott Helme
Scott Helme
A
About on SuperTechFans
Hugging Face - Blog
Hugging Face - Blog
S
Securelist
小众软件
小众软件
aimingoo的专栏
aimingoo的专栏
S
Schneier on Security
G
GRAHAM CLULEY
酷 壳 – CoolShell
酷 壳 – CoolShell
Cyberwarzone
Cyberwarzone
MongoDB | Blog
MongoDB | Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 叶小钗
T
Threatpost
Recorded Future
Recorded Future
C
CXSECURITY Database RSS Feed - CXSecurity.com
宝玉的分享
宝玉的分享
N
News and Events Feed by Topic
人人都是产品经理
人人都是产品经理
The Register - Security
The Register - Security
S
Security Archives - TechRepublic
博客园 - Franky
N
News | PayPal Newsroom
Simon Willison's Weblog
Simon Willison's Weblog
S
SegmentFault 最新的问题
W
WeLiveSecurity
A
Arctic Wolf
B
Blog

博客园 - 永不放弃-Jack wu

在IIS7下,利用Intelligencia.UrlRewriter进行URLReWrite Sql Service 常用函数 select时锁定记录问题 实现一个用户取过的数据不被其他用户取到 确保绝对随机数(无重复) C# 循环产生多个随机数重复问题 中国移动MM7 API用户手册(七) 中国移动MM7 API用户手册(五) - 永不放弃-Jack wu 中国移动MM7 API用户手册(六) 中国移动MM7 API用户手册(四) 中国移动MM7 API用户手册(三) 中国移动MM7 API用户手册(二) 中国移动MM7 API用户手册(一) ASP.NET中进行消息处理(MSMQ) 三 ASP.NET中进行消息处理(MSMQ) 二 ASP.NET中进行消息处理(MSMQ) 一 五险一金相关知识(转) - 永不放弃-Jack wu 彩信SMIL文件学习 Log4Net使用指南 - 永不放弃-Jack wu
中国移动MM7 API用户手册(八)
永不放弃-Jack wu · 2011-04-22 · via 博客园 - 永不放弃-Jack wu

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发送过来的DeliverReqDeliverReportReqReadReplyReq时,可以经过判断后,返回给MMSC一个状态码和状态描述,可以返回的StatusCodeStatusText分别如下:

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:接收失败;

-103I/O错误;

-104Socket不通;

-105:待发送的消息为空;

-106:发送消息不正确;

-107:接收消息为空;

-108Bad Request

-109XML解析错误;