动态内容分发接口规范.docx
《动态内容分发接口规范.docx》由会员分享,可在线阅读,更多相关《动态内容分发接口规范.docx(39页珍藏版)》请在冰豆网上搜索。
动态内容分发接口规范
╳╳╳╳-╳╳-╳╳实施
╳╳╳╳-╳╳-╳╳发布
中国移动通信集团公司发布
QB-╳╳-╳╳╳-╳╳╳╳
中国移动通信企业标准
中国移动动态内容分发业务接口规范
InterfacespecificationofChinamobileDynamicContentDeliveryService
(报批稿)
版本号:
1.0.0
前言
本规范对中国移动动态内容分发业务涉及的接口进行规范,以保证中国移动通信集团动态内容分发业务系统在多终端厂家环境下能够顺利开展业务。
本规范结合了中国移动特定的业务要求,为中国移动动态内容分发业务从终端到内容服务的开发、运行、管理和维护等提供技术依据。
本标准由中国移动通信集团公司技术部提出并归口。
本标准由部门负责解释。
本标准起草单位:
中国移动通信集团公司研究院。
本标准主要起草人:
孙杰、温亮生、常嘉岳、任鹏。
目录
1范围4
2引用标准4
3术语和定义4
4符号和缩略语5
5系统接口描述5
6本规范中相关定义的说明6
7DCD1接口定义6
7.1WAPPUSH消息触发终端数据同步事件7
7.2请求类型定义7
7.3数据同步请求消息8
7.4数据同步响应消息9
7.5数据下载请求消息13
7.6数据下载响应消息13
8DCD2接口定义14
9安全要求14
10模板格式定义15
10.1模板编号15
10.2模板为XML格式15
11错误重传机制及错误代码定义17
12编制历史17
附件一:
WAPPushSLNotification消息举例17
附件二数据同步消息举例17
附件三数据下载消息举例20
附件四模板21
1范围
本规范涉及的接口包括DCD1(DCD平台与DCD客户端之间的接口)、DCD2(DCD平台与SP或CP之间的接口)。
本规范着重描述各接口的消息定义以及各消息所传送的内容、格式,多个网元在实现特定业务时的信令配合不在本规范范围之内。
2引用标准
[1]动态内容分发业务(DCD)总体技术要求,中国移动通信集团公司
[2]动态内容分发系统设备规范,中国移动通信集团公司
[3]动态内容分发业务规范,中国移动通信集团
3术语和定义
必选
本规范中规定的“必选”字段要求设备必须实现并且在消息中必须携带。
可选
本规范中规定的“可选”字段设备可以实现并在消息中携带,如果消息中没有携带,表示设备暂不支持。
视情况而定
本规范中规定的“视情况而定”字段要求设备必须实现但是否在消息中携带需要根据相关条件确定。
频道
是动态内容分发业务下发的组织形式,是内容分发和计费的最小单元。
频道项
频道中的个体,例如具体的新闻故事。
一个频道可以由多个频道项组成。
可选频道
DCD服务开通时,移动用户不能自动接收到该频道内容。
移动用户通过订购和退订流程对该频道进行订购和退订。
起始频道
DCD服务开通时,移动用户自动接收该频道。
移动用户也可以要求退订该频道。
起始频道一般都是免费频道。
随时在线频道
移动用户会自动收到这种频道的内容,不需要订购也不能退订。
随时在线频道一般是免费频道,。
欢迎频道
移动用户会自动收到这种频道的内容,不需要订购也不能退订。
欢迎频道在用户使用一段时间后(该时间可由部署人员配置)会自动消失,也就是说欢迎频道在新用户初次使用的一段时间将会自动展现给用户。
欢迎频道一般是免费频道。
完整故事
每个频道项中可以导向一个完整的WAP页,可以详细介绍这个频道项,并可以链接到其他的WAP页面
必选
项是指终端产品所必须提供的功能或性能要求;
可选
项指在目前看来是中国移动需求的发展方向,或终端产品在目前阶段可不提供的功能或性能要求
已提交
最新提交的内容的初始状态。
已发布
已获批准并且可供移动用户订购的内容。
尽管系统中可能存在一个内容的多个版本,但是,只有一个版本处于这个状态。
停止发布
如果一个频道被设置为停止发送,那么未订购该频道的移动用户将不可再订购的该频道;但是,在其状态改变之前已经订购该频道的移动用户将可以继续使用该频道并被计费,直至该频道被删除。
终止服务
如果一个频道被设置为中止服务,服务器将停止向客户端定期发送该频道的更新内容,同时,服务器将下发一个特殊的频道故事,显示该频道服务终止的提示,恢复服务后此提示消失。
DCD客户端
安装在终端上的用于和DCD平台进行数据交互并显示频道频道项内容的客户端软件。
4符号和缩略语
CDR:
CallDetailRecord呼叫详细记录
DCD:
DynamicContentDelivery动态内容分发
5系统接口描述
动态内容分发业务系统结构如下:
DCD1:
动态内容分发服务器与DCD终端之间的接口;
DCD2:
动态内容分发服务器与SP或CP系统之间的接口;
6本规范中相关定义的说明
本章定义各接口摘要消息的应用协议框架,并说明DCD服务功能的技术实现。
摘要消息可以归类为由请求和响应构成的事务处理。
DCD1接口用户数据同步消息和数据下载消息交互,不包括请求完整故事的wap请求消息。
DCD1接口和通过数据同步消息中携带的URL地址发起的数据获取消息均采用“CMWAP”APN。
对于本规范涉及的关于企业代码(SPID),和业务代码(ServiceID)的说明请参见《动态内容分发业务规范》。
图6.1数据同步请求消息流程
7DCD1接口定义
参考点DCD1定义了DCD客户端和内容分发服务器之间的事务处理。
这些事务处理包括业务浏览、查询、订购、退订。
本规范版本中,DCD1接口采用HTTP1.1作为承载协议,以XML语言表述。
图6.1以端到端的方式说明了其中的一些事务处理及其关系。
7.1WAPPUSH消息触发终端数据同步事件
服务器端可以主动通过WAPPUSH消息触发的终端数据同步,对于WAPPUSH触发方式,要求如下:
WAPPUSH消息采用SL方式。
PUSHApplicationID为x-oma-DCD:
DCD.ua,填写时为X-WAP-Application-Id:
application/x-oma-DCD:
DCD.ua
DCD客户端在接收到PUSH消息后,采用以下步骤形成数据同步URL并发起同步请求:
1)取出预先配置好的基本URL信息,包括host,port,,且此信息不可更改;
2)WAPPUSH消息中的URL地址是一个完整的URL地址。
为了保证安全,终端在取出WAPPUSH消息中的URL信息,需截取出该完整地址中去除host和port的以根目录开始的相对地址,和终端上预先配置的基本URL信息的host和port一起,重新组织一个新的完整的URL,即新的完整URL=配置基本host+“:
”+配置基本port+根目录开始的相对地址
3)以上一步组织的新的完整URL发起数据同步请求。
7.2请求类型定义
在同步请求消息和下载请求消息中,都必须在请求消息头中填写请求类型X-DP-RequestType.下表定义了数据请求消息头中请求类型:
请求类型名称
功能描述
HEADER填写规则
ttl
因DCD服务器设定的内容更新时间到达而发起的内容同步请求
X-DP-RequestType:
ttl
man
用户手工发起的内容同步请求
X-DP-RequestType:
man
svr
因DCD服务器下发的WAPPUSH消息触发的内容同步请求
X-DP-RequestType:
svr
mc(可选)
因主清除操作触发的内容初始化请求
X-DP-RequestType:
mc
mr(可选)
因主复位操作触发的内容初始化请求
X-DP-RequestType:
mr
sim
因SIM卡更换触发的内容初始化请求
X-DP-RequestType:
sim
data
预留,暂时不用
X-DP-RequestType:
data
data2
多个内容打包为一个响应包下载
X-DP-RequestType:
data2
data3
每个图片一个请求包下载
X-DP-RequestType:
data3
7.3数据同步请求消息
数据同步请求消息采用HTTP1.1作为承载,数据同步请求消息的方式为GET方式
数据同步请求定义:
以下是请求头类型传送相关信息。
请求头字段名称
存在情况
功能描述
类型
每个的长度
填写规则
X-DP-RequestType
必选
请求类型
String
20
ttl,man,svr,mc,mr,sim,中的任何一个
User-Agent
必选
DCD客户端描述,包括:
DCD终端类型、DCD客户端标识编号、支持的JVM能力等信息
String
255
参照中国移动wap终端规范填写
Version
必选
客户端支持的DCD接口版本
String
11
XX.XX.XX.XX
例如:
1.0.1.3
X-DP-Global-Sync-Anchor
可选
频道的同步定位符
String
100
例如:
globalanchor,swfasfewrw
多个定位符可以用逗号分隔。
对于新终端第一次使用该业务以及当终端主清除,主复位,更换sim卡时,该参数为可选,其余情况下终端需要根据服务器端上次给定的值进行请求。
X-DP-Sync-Anchor
可选
频道项的同步定位符
String
91
例如:
h7gd0vk=e.ewopg8q3.5k.0.ixeanzuw.8,dfaesd32=e.ewopg8q3.5k.0.35fdfwrwfd.8,多个定位符可以用逗号分隔。
每个定位符由频道编号加等号加该频道项所在的频道的feed-meta中属性anchor的值。
请参见同步响应消息标签说明。
对于新终端第一次使用该业务以及当终端主清除,主复位,更换sim卡时,该参数为可选,其余情况下终端必须根据服务器端上次给定的值进行请求。
X-DP-Cell-Id
可选
终端所处的小区代码
String
10
String类型
Accept-Encoding
可选
支持的压缩编码格式
String
15
Compress、gzip
7.4数据同步响应消息
数据同步响应消息头定义如下:
HEADER名称
存在情况
功能描述
类型
长度
HEADER填写规则
X-DP-RequestType
可选
参见数据同步请求消息
String
15
参见数据同步请求消息
X-DP-Global-Sync-Anchor
可选
参见数据同步请求消息
String
100
参见数据同步请求消息
X-DP-Sync-Anchor
可选
参见数据同步请求消息
String
91
参见数据同步请求消息
Content-type
必选
描述同步数据类型
String
32
application/dcd.xml
X-DP-nextURI
可选
描述客户端在下一次请求时的目标地址,该地址必须以”/”开始,表明是以当前web服务的根目录开始的相对地址
String
64
在下一次请求时客户端必须用该参数组成完整的URL地址,规则如下:
http:
//host:
por+X-DP-nextURI。
如果没有该参数,则用原来的URL进行访问
同步响应包体采用XML来组织数据,其结构如下
标签名称
父标签
子标签
属性(大小字符数)
功能描述
meta
feed*
响应消息的起始和结束标签
sync-pkg
global-meta
generator#
feed-meta*
元数据标签,指明定购频道列表,同步定位符,目标显示区域,内容更新时间
meta
anchor(100)
ttl(15)
server-time(15)
频道项元数据标签。
anchor:
同步定位符。
ttl属性单位为毫秒。
如果ttl属性为0,那么不允许终端主动定期触发内容同步请求,而只能由DCD服务器主动触发数据同步请求。
server-time指定服务器侧的系统时间,取值为从GMT1970年1月1日00:
00:
00起的毫秒值。
meta
ctxt-id(20)
anchor(70)
target(35)
charge
(1)
频道数据的元数据标签。
表明此频道为已定购的频道。
Ctxt-id属性为必选属性,是频道的唯一标识,必须是全局唯一的,不可重用。
为20位以内的数字。
Anchor属性为此频道的定位符。
Target属性决定内容在终端上的显示位置。
目前唯一取值“container1”。
charge属性表明该频道是否为收费频道,单独的收费频道charge=”Y”,免费频道charge=”N”,打包收费的频道charge=”P”
#
title
summary
link#
content*
entry#
version#(15)
ctxt-id(20)
template-id(20)
entry-template-id#(20)
feed-type(10)
excerpt#(10)
excerpt-default#(10)
频道标识标签。
version该频道在服务器上的颁布号。
ctxt-id属性为必选属性,是频道的唯一标识,必须是全局唯一的,不可重用。
feed-type属性指明此频道的频道项的类型。
仅有文本的频道项,其feed-type=“ftto”;只有图形格式的频道项,则feed-type=“ftio”,既包含文本和图形的频道项feed-type=”ftti”,对于包含音频和(或)视频等多媒体信息的频道,feed-type=”ftmm”。
默认情况下template-id填写default
entry-template-id:
标识频道的频道项所使用的模板,默认时填写default。
如果频道项为文本项,则必须填写title字段。
excerpt-default是设置当前频道所有频道项的默认excerpt值
feed
entry
type#(32)
频道(feed)或频道项(entry)标题标签type属性目前唯一取值“text/plain”
feed
entry
type#(32)
频道或频道项的描述信息标签
type属性目前唯一取值“text/plain”
feed
entry
rel(10)
type#(32)
href(1024)
title(60)
指明点击某频道或某频道项后链接的URL地址,可以有多个
rel目前取值仅有rel="alternate"。
type同
标签title为该连接的标题,作为该连接的显示内容
feed
entry
type#(32)
mode#(10)
name(20)
ctxt-id(20)
href#(1024)
autoplay$
(1)
频道或频道项的内容元素标签,比如图片信息等。
频道中引用此标签用在频道模板所使用的缺省内容。
type属性指明内容的MIME类型。
mode属性指明内容的编码方式。
name属性指明模板中的一个参考点。
ctxt-id属性为必选属性,是内容的唯一标识,必须是全局唯一的,不可重用。
为20位以内的数字。
href:
如果为一个标准格式的URL地址,则采用标准HTTP1.1协议获取内容;
对于音视频内容,必须填写autoplay属性,要求终端自动播放,则autoplay=’Y’,否则autoplay=’N’
feed
title#
summary#
link#
issued#
author#
content#
activation#
expiration#
ctxt-id(20)
template-id#(20)
entry-type(10)
excerpt#(10)
template-href#(1024)
频道项标签,可能包含一篇文字或一个图片项等。
entry-type标示为频道项的类型,仅有文本的频道项,其entry-type=“etto”;只有图形格式的频道项,则entry-type=“etio”,既包含文本和图形的频道项entry-type=”etti”,对于包含音频和(或)视频等多媒体信息的频道项,entry-type=”etmm”。
ctxt-id是频道项的唯一标识,必须是全局唯一的,不可重用。
为20位以内的数字。
template-id指明频道项所使用的模板编号,缺省填写default。
template-id重载entry-template-id的规定。
excerpt:
指明是否使用屏保显示区。
它重载feed标签的excerpt-default属性。
entry-type和template-href属性的定义与feed标签一致。
template-href与template-id的属性同时出现,是指template-id对应的模版文件对应的URL地址。
entry
频道项发布的时间。
取值为从GMT1970年1月1日00:
00:
00起的毫秒值。
entry
name
url#
email#
频道项的作者
entry
type#(32)
终端开始显示频道项的时间。
取值为从GMT1970年1月1日00:
00:
00起的毫秒值。
type属性取值可能为type=’rel’或type=’absolute’,表示相对或绝对时间。
如果设为rel,表示相对时间,与终端的现在时间相加,得出开始显示该频道项的时间。
entry
type#(32)
终端停止显示频道项的时间。
取值为从GMT1970年1月1日00:
00:
00起的毫秒值。
type属性取值可能为type=’rel’或type=’absolute’,表示相对或绝对时间。
如果设为rel,表示相对时间,与终端的现在时间相加,得出停止显示该频道项的时间。
author
作者姓名
author
为一个指向该作者相关信息的网页地址
author
作者的email地址
说明:
1.:
定购的频道必须在meta数据中罗列出来。
2.模板采用数据下载请求消息或者标准的HTTP1.1请求获取。
3.一个频道或频道项可以包含多个标签。
4.如果频道的模板属性“template-id”没有定义,那么显示频道项时,根据频道项模板“entry-template-Id”来显示每个频道项。
5.每个频道包含0至多个频道项。
6.Title,summary的长度默认分别是60和250字节
7.带#的属性或者子标签项目可以有一个或者多个,也可以没有该项目;而带*的属性或者子标签项目,必须至少有一个,也可以有多个。
没有任何标志的属性或者字标签项目为有且仅有一个;带$的属性或者子标签项目表示,满足某些条件时为必填项,不满足条件时不填写。
8.template-id为模版编号,详细描述请参见模版格式定义
9.对于未更新的频道项及频道的同步响应处理:
对于没有更新的频道项,可以用来表示。
对于没有更新的频道(包括频道的title等信息以及频道项都没有更新),由于在中已经表明了该用户已经订阅了该频道,所以没有必要在响应信息包中增加标签。
但是如果频道中有任何信息的更新,都得在响应信息包中填写完整的标签(频道的title信息以及频道项信息)。
7.5数据下载请求消息
数据下载请求消息的方式:
GET方式。
数据下载请求消息头定义如下:
HEADER名称
存在情况
功能描述
类型
长度
HEADER填写规则
X-DP-RequestType
必选
请求类型
String
15
data,data2,data3
X-DP-Request-Id
必选
需要从DCD服务器下载的内容列表。
列表内容是前一个数据同步请求消息包含的客户端本地没有,需要更新数据的template-id或者ctxt-id值,采用逗号分割。
String
20
例如:
news20193a,news20194a,news20195a
User-Agent
必选
DCD客户端描述,包括:
DCD终端类型、DCD客户端标识编号、支持的JVM能力等信息
String
255
参照中国移动wap终端规范填写
Version
必选
客户端支持的DCD接口版本
String
11
XX.XX.XX.XX
例如:
1.0.1.3
X-DP-Cell-Id
可选
终端所处的小区代码
String
10
String类型
Accept-Encoding
可选
支持的压缩编码格式
String
15
Compress、gzip
具体实例见附录。
7.6数据下载响应消息
下载响应消息头如下:
HEADER名称
存在情况
功能描述
类型
长度
HEADER填写规则
Content-type
必选
描述同步数据的类型,以MIME为标准
String
100
对于多个数据同步,该值应填写为:
multipart/mixed
X-DP-nextURI
可选
描述客户端在下一次请求时的目标地址,该地址必须以”/”开始,表明是以当前web服务的根目录开始的相对地址
String
64
如果有该参数,则在下一次请求时客户端必须用该参数组成完整的URL地址,规则如下:
http:
//host:
port+X-DP-nextURI。
如果没有该参数,则用原来的URL进行访问
8DCD2接口定义
遵循标准RSS2.0接口定义。
下表总结了动态内容分发业务对于被汇聚的内容源频