分享

中国移动MM7 API用户手册

 飞Pho 2011-03-08
中国移动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:消息内容的尺寸超出允许发送的大小

  [版权归中国移动,本站做转录]

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约