中国移动MM7 API用户手册 版本:V1.5.7 [移动集团公司] 目录 1.概述 2.概念 2.1企业代码 2.2服务代码 2.3业务代码 2.3.1上行业务的业务代码规范 2.3.2下行业务的业务代码规范 2.4操作指令码 2.5下行业务 2.6上行业务 2.7递送报告 3.安装方法 3.1 MM7 API的使用 3.2配置文件的设置 4.开发方法 4.1 VASP接收传送请求(上行业务) 4.1.1 方式1:普通应用程序中的用法 4.1.2 方式2:Web应用程序中的用法 4.2发送多媒体消息的过程(下行业务) 4.2.1准备 4.2.2创建待发送消息 4.2.2.1 创建提交增值业务的多媒体消息(MM7SubmitReq) 4.2.2.2 创建取消多媒体消息(MM7CancelReq) 4.2.2.3 创建替换多媒体消息(MM7ReplaceReq) 4.2.3 创建消息内容体 4.2.4 发送多媒体消息 4.2.5发送MM7SubmitReq消息到移动终端实例 4.3 VASP接收传送消息以及发送提交消息实例 4.4 VASP接收状态报告(上行业务) 4.4.1方式1:普通应用程序中的用法 4.4.2方式2:Web应用程序中的用法 4.5 VASP接收读后回复报告(上行业务) 4.5.1方式1:普通应用程序中的用法 4.5.2方式2:Web应用程序中的用法 4.6 发送取消消息(下行业务) 4.7 发送替换消息(下行业务) 5.开发过程中需用的一些Status解释 5.1 关于VASP接收到消息后设置返回响应(Res)的状态码及状态报告的解释 5.2 关于VASP收到DeliverReq中MMStatus的解释 5.3 关于VASP收到ReadReplyReq中ReadStatus的解释 6.获取MM7 API版本信息的方法 7. MM7 API返回StatusCode说明 1.概述 该文档说明了SP如何使用中国移动集团公司的MM7 API程序与彩信中心进行对接,实现MM7接口的通讯,开发增值业务应用。 该MM7 API是使用纯Java开发的,使用的JDK的版本为JDK1.4.0。所以使用该API进行开发时,要求使用的JDK版本必须是JDK1.4.0以上版本。该API所使用的通讯承载协议是HTTP/1.1。 缩略词: MM: Multimedia Message (多媒体消息) MMS: Multimedia Message Service(多媒体消息服务) MMSC: Multimedia Message Service Center(多媒体消息服务中心) VAS: Value Added Service(增值业务) SP: Service Provider(业务提供商) HTTP: Hypertext Transfer Protocol(超文本传输协议) 2.概念 2.1企业代码 企业代码是企业身份的标识,网络中地址翻译、计费、结算等均以企业代码为依据。企业代码的数据需要在MMSC和BOSS系统中进行配置。企业代码以数字表示,共6位,从"8XY000"至"8XY999",其中"XY"为各移动分公司代码。 彩信全网业务的SP企业代码为8XY001-8XY999。(目前短信全网业务的企业代码为9XY001-9XY500,WAP全网业务的企业代码为 9XY501-9XY999。)彩信地方业务的SP企业代码由各地方移动公司按照业务许可的顺序依次分配制定,"XY"具体分配情况见相关表格。 2.2服务代码 服务代码是:用户使用彩信的发送、上传等上行类业务时,需要输入的接收方号码;或SP在根据用户的点播请求在向用户发送、下载等下行类业务时,用户终端中显示的发送方的号码。服务代码的数据需要在MMSC上进行配置,用于路由的查找和状态报告的返回。服务代码以数字表示。 全国业务的服务代码长度统一为4位,即"1000"-"9999";本地业务服务代码长度统一为5位,即"01000"-"09999"。 以下号码或号段暂不分配: 13XX(XX=00-99)、20XX(XX=01-99)、168X(X=0-9)、186X(X=0-9)、1258/1259、172X(X=0-9)、6XXX、7XXX。 上述代码的分配和使用情况均可以在www.m;res.statusText=" + res.getStatusText()); } } 4.3 VASP接收传送消息以及发送提交消息实例 举一个实例说明VASP构建MM7SubmitReq,发送给MMSC,并得到返回消息,通过StatusCode判断,本次发送是否成功,若成功,得到MessageID,以便以后希望取消或替换该消息时用。 public class MyReceiver extends MM7Receiver { //定义一个MM7DeliverReq,以便得到MMSC发过来的Deliver消息。(必备) public static MM7DeliverReq deliverReq = new MM7DeliverReq(); //Main方法 public static void main(String[]args) { //初始化VASP MM7CStatusText="+ submitRes.getStatusText()); System.out.println("MessageID="+ submitRes .getMessageID()); } } public MM7VASPRes doDeliver(MM7DeliverReq request) { /*接收从MMSC发过来的传送消息,以便取出其中的部分值构造提交消息或得到一些有用 信息,如MMSC的标识符等*/ deliverReq = request; System.out.println("收到手机"+request.getSender() +"提交的消息,标题为:"+request.getSubject()); System.out.println("MMSC的标识符为:"+request. GetMMSRelayServerID()) ; //SP需要进行一些处理,例如构建MM7DeliverRes消息,设置ServiceCode或StatusCode MM7DeliverRes mm7DeliverRes = new MM7DeliverRes(); mm7DeliverRes.setServiceCode("服务代码"); //可选 mm7DeliverRes.setStatusCode(MMC;res.statusText=" + res.getStatusText()); } } 4.7 发送替换消息(下行业务) 当VASP发送MM7SubmitReq消息给MMSC成功后,VASP可以发送替换消息,以替换之前所发送给MMSC的消息。具体构建替换消息见4.2.2.3。 package com.cmcc.mm7.vasp.c;res.statusText=" + res.getStatusText()); } } 5.开发过程中需用的一些Status解释 5.1 关于StatusCode和StatusText的解释 当VASP收到MMSC发送过来的DeliverReq、DeliverReportReq、ReadReplyReq时,可以经过判断后,返回给 MMSC一个状态码和状态描述,可以返回的StatusCode和StatusText分别如下,同样当VASP收到MMSC返回的SubmitRes、 CancelRes、ReplaceRes、RSErrorRes时,可能得到的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收到DeliveryReportreq中MMStatus的解释 VASP收到DeliveryReportReq消息后,其中有个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:没有返回正确的消息; -104:Socket不通; -105:待发送的消息为空; -106:发送消息不正确; -107:接收消息为空; -108:Bad Request; -109:XML解析错误; -110:Server Could not fulfill the request -113:消息内容的尺寸超出允许发送的大小 [版权归中国移动,本站做转录] |
|