1、软件项目开发接口文档 v2.0案卷号 接口文档-V2.0日期 2011-07-22研发平台软件项目软件项目接口文档作 者: 完成日期: 签 收 人: 签收日期: 修改情况记录:版本号 修改批准人 修改人 安装日期 签收人2.0软件项目开发接口文档 v2.0目录第 1 章 引言 31.1 编写目的 31.2 术语 31.3 参考文献 3第 2 章 接口定义 42.1 同步接口指令 4软件项目开发接口文档 v2.0引言1.1 编写目的说明对程序系统的接口设计、数据结构设计等,为开发编码奠定基础。本文档描述本地 UI 软件的 JavaScript 代码和 STB 浏览器组件库 iPanel 之间的交
2、互接口,包括请求的格式,请求结果的格式,相关错误的定义,以及请求和结果返回的交互流程。本文的主要读者为需要系统前端开发人员、STB 开发人员,以及需要了解本前端与 STB接口的相关人员。1.2 术语术语或缩写词 说明性定义IPTV 交互式网络电视STB 机顶盒HTML 超文本置标语言JavaScript 一种应用于客户端 Web 开发的脚本语言CSS 层叠样式表DOM 文档对象模型JSON 专门为浏览器中的网页上运行的 JavaScript 代码而设计的一种数据格式XML 可扩展置标语言iPanel IPTV 终端浏览器1.3 参考文献序号 资料名 文件编号 发表日期 出版单位软件项目开发接口
3、文档 v2.0第 2 章 接口定义本软件页面与底层交互采用 iPanel 扩展的 ioctlRead/Write 方式进行,数据交换采用json 字符串/String 方式。2.1 同步接口指令媒体播控媒体类型约定:0-电影;1-音乐;2-图片;3-文本静音模式约定:0-关闭(off) ;1-打开(on)视频类型约定:0-高清;1-标清;2-普通;3-片花;语法 iPanel.ioctlWrite(“Media.Open“, “)功能 写入媒体播放路径及类型。参数 属性 名称Name 媒体路径Type 媒体类型返回 无举例 iPanel.ioctlWrite(“Media.Open“,“nam
4、e“:“/mnt/hd/逃亡鳄鱼岛.avi“,“type“:“0“)语法 iPanel.ioctlWrite(“Media. Pause“, “)功能 写入媒体暂停路径及类型。参数 属性 名称软件项目开发接口文档 v2.0Name 媒体路径Type 媒体类型返回 无举例 iPanel.ioctlWrite(“Media. Pause“,“name“:“/mnt/hd/逃亡鳄鱼岛.avi“,“type“:“0“)语法 iPanel.ioctlWrite(“Media. Resume“, “)功能 写入媒体继续路径及类型。参数 属性 名称Name 媒体路径Type 媒体类型返回 无举例 iPane
5、l.ioctlWrite(“Media. Resume“,“name“:“/mnt/hd/逃亡鳄鱼岛.avi“,“type“:“0“)语法 iPanel.ioctlWrite(“Media. Position“, “)功能 写入媒体播放位置参数。参数 属性 名称x 媒体 x 坐标y 媒体 y 坐标w 媒体宽度h 媒体高度软件项目开发接口文档 v2.0返回 无举例 iPanel.ioctlWrite(“Media. Position“,“x“:“0“,“y“:“0“,“w“:“1280“,“h“:“720“)语法 iPanel.ioctlRead(“Media. Position“)功能 读取媒
6、体播放位置参数。参数 无返回 Json 串举例 返回 JSON 串:“x“:“0“,“y“:“0“,“w“:“1280“,“h“:“720“语法 iPanel. ioctlWrite (“Media. Stop“,“)功能 写入媒体播放停止路径及类型。参数 属性 名称Name 媒体路径Type 媒体类型返回 无 举例 iPanel.ioctlWrite(“Media. Stop “,“name“:“/mnt/hd/逃亡鳄鱼岛.avi“,“type“:“0“)语法 iPanel. ioctlWrite (“Media. Forward“,“)功能 写入媒体播放快进模式及类型。参数 属性 名称软件
7、项目开发接口文档 v2.0Mode 快进模式Type 媒体类型返回举例 iPanel.ioctlWrite(“Media. Forward“,“mode“:“8“,“type“:“0“)语法 iPanel. ioctlWrite (“Media. Rewind“,“)功能 写入媒体播放快退模式及类型。参数 属性 名称Mode 快退模式Type 媒体类型返回举例 iPanel.ioctlWrite(“Media. Forward“,“mode“:“8“,“type“:“0“)语法 iPanel. ioctlRead (“Media. GetVolume“)功能 读取媒体播放音量。参数 无返回 S
8、tring举例 20语法 iPanel. ioctlRead (“getMemoryItem”)软件项目开发接口文档 v2.0功能 获取记忆的功能导航。参数 无返回 String举例 20语法 iPanel. ioctlWrite (“setMemoryItem”,index)功能 设置记忆的功能导航。参数 无返回 无举例语法 iPanel. ioctlRead(“Media. GetMute “)功能 读取媒体播放静音设置。参数 无返回 String举例 0语法 iPanel. ioctlWrite(“Media. SetBook“,“)功能 写入媒体订购信息。参数 属性 名称Name 媒体
9、名称返回 返回 ok 或者失败信息(资费不够等)软件项目开发接口文档 v2.0举例 iPanel.ioctlWrite(“Media. SetBook “,“/mnt/hd/逃亡鳄鱼岛.avi “)语法 iPanel. ioctlRead(“Media. GetBook,Name“)功能 读取媒体订购信息。参数 属性 名称Name 媒体名称Count 媒体总份数Price 媒体总资费(元)返回 Json 串举例 “name“:“/mnt/hd/逃亡鳄鱼岛.avi “,“count“:“2“,“price“:“66.50 “语法 iPanel. ioctlRead(“Media. GetCurr
10、entDownFile“)功能 读取下载媒体信息。参数 属性 名称Name 媒体名称Size 媒体大小Speed 下载速度Percent 下载百分比DownedSize 已下载大小 Status 下载状态软件项目开发接口文档 v2.0返回 Json 串举例 “name“:“/mnt/hd/逃亡鳄鱼岛.avi “,“size“:“102445676KB“,“speed“:“538KB/S “,“percent“:“15% “,“downedsize“:“34567KB “,“status“:“正在下载“语法 iPanel. ioctlRead(“Media. GetFileInfo,path“)
11、path 当前媒体路径功能 读取媒体信息。参数 属性 名称Name 媒体名称singer 演唱者currentPlayTime 当前播放时间during 媒体时长loopMode 循环模式 videoOutput 视频输出other 其他信息返回 Json 串举例 “name“: “/mnt/hd/逃亡鳄鱼岛 1.avi “, “singer“: “刘德华“, “currentPlayTime“: “00:00:32“, “duration“: “0:01:00 “,“loopMode“: “全循环 “, “videoOutput“: “sVideo “, “other“: “16:9 字幕:
12、无 双声道 “;软件项目开发接口文档 v2.0语法 iPanel. ioctlRead(“Media. GetNextFileInfo,path“)path 当前媒体路径功能 读取子集中下一个媒体信息,以便播放。没有子集返回空参数 属性 名称Name 媒体名称singer 演唱者currentPlayTime 当前播放时间during 媒体时长loopMode 循环模式 videoOutput 视频输出other 其他信息返回 Json 串举例 “name“: “/mnt/hd/逃亡鳄鱼岛 1.avi “, “singer“: “刘德华“, “currentPlayTime“: “00:00:
13、32“, “duration“: “0:01:00 “,“loopMode“: “全循环 “, “videoOutput“: “sVideo “, “other“: “16:9 字幕:无 双声道 “;媒体类型约定:0-电影;1-音乐;2-图片电影风格类型约定:0-剧情片;1-喜剧片;2-恐怖片;3-科幻片音乐风格类型约定:0-流行;1-古典;2-民歌;3-港台软件项目开发接口文档 v2.0图片容器格式约定:0-jpg;1-png;2-gif语法 iPanel. ioctlRead(“FSO.GetFiles,MenuIndex,currentFileIndex,usb“)MenuIndex:
14、菜单索引如 1,2,3,currentFileIndex:当前文件索引如 1,2,3,usb :外置移动硬盘还是内置硬盘功能 读取指定类型,指定链表位置的文件列表。参数 属性 名称Name 媒体名称返回 Json 串举例 “/mnt/hd/逃亡鳄鱼岛.avi “,“ /mnt/hd/逃亡.avi“语法 iPanel. ioctlRead(“Media.getSubDrama,path“)path:文件路径如 /mnt/hd/逃亡.avi功能 获取下载完成的子集 我的专区 电视剧。参数 属性 名称path 文件路径返回 json举例 no: 1, name: /mnt/hd/放牛班的春天01.a
15、vi , no: 2, name: /mnt/hd/放牛班的春天02.avi 软件项目开发接口文档 v2.0;语法 iPanel. ioctlRead(“FSO.GetFiles,MenuIndex,fileLength,usb“)MenuIndex: 菜单索引如 1,2,3usb :外置移动硬盘还是内置硬盘功能 读取指定类型的媒体的总数量。参数 属性 名称length 文件长度返回 String举例 12语法 iPanel. ioctlRead(“local. menuItems “)功能 读取菜单。*【电视剧场】1*【我的影视】2*【家庭院线】3*【我的专区】4*【信息空间】5,*【热门推
16、荐】6,*【帮助】 7, 帮助模块中的 3个子模块(下载状态、帮助、设置)可分别控制*【移动信息】8, 当关闭外置节目播放时,移动信息中不显示外置节目 当关闭外置文件播放时,移动信息中不显示外置文件 当终端未登录服务器时,移动信息中不显示外置文件*【动听世界】9,*【自定义模块A】,*【自定义模块B】,软件项目开发接口文档 v2.0*【自定义模块C】,*【自定义模块D】,*【自定义模块 E】参数返回 json举例 “9“,“10“,“1“,“2“,“3“,“4“,“5“,“6“,“7“,“8“SPDIF 输出编码方式约定:0-PCM 编码;1-数字编码声道输出方式约定:0-双声道;1-5.1
17、声道视频高清(HDMI)输出方式约定:0-1080i;1-1080p;2-720p视频标清输出方式约定:0-AV视频高清 Ypbpr 输出方式约定: 0-1080i;1-1080p;2-720p电视输出标准约定:0-NTSC;1-PAL电视比例约定:0-4:3;1-16:9网络状态约定:0-网络断开;1-网络连接;2-网络不存在磁盘管理方式约定:0-本地磁盘格式化;1-移动磁盘格式化;2-磁盘整理下载路径方式约定:0-移动硬盘;1-内置硬盘字体大小方式约定:0-大字体;1-中字体;2-小字体;字体颜色方式约定: 0-红;1-橙;2-黄;3-绿;4-青;5-蓝;6-紫;7-白;网络设置模式方式约
18、定: 0- WIFI 搜索;1- WIFI 静态配置;2- WIFI软件项目开发接口文档 v2.0动态配置;3-动态;4-静态;5-adsl 账户;6- adsl 登录;7- adsl离线; 软件查询模式方式约定: 0-出厂设置;1-版本升级;2-版本信息;3- 网络状态查询; 软键盘开关约定: 0-打开;1-关闭网络状态约定:var NetWorkStatusMode = ERROR: 0, name: 网络连接异常请检查连接, setname: “网络连接异常请检查连接“, icon: “red“ , CONNECTING: 1, name: 正在连接 , setname: “与服务器正在
19、连接“, icon: “orange“ , SUCCESS: 2, name: 连接成功 正在登录, setname: “与服务器连接成功,正在登录“, icon: “orange“ , NORMAL: 3, name: 网络连接正常, setname: “网络连接正常“ , icon: “green“ , W_ERROR: 4, name: 无线网络连接异常请检查连接, setname: “无线网络连接异常请检查连接“, icon: “red“ , W_CONNECTING: 5, name: 无线正在连接 , setname: “无线与服务器正在连接“, icon: “orange“ ,
20、W_SUCCESS: 6, name: 无线连接成功 正在登录, setname: “无线与服务器连接成功 正在登录“, icon: “orange“ , W_NORMAL: 7, name: 无线网络连接正常, setname: “无线软件项目开发接口文档 v2.0网络连接正常“, icon: “green“ ;账户登录模式约定:var NetworkSetMode = DYNAMIC: 0, /动态配置STATIC: 1, /静态IPADSL_ACCOUNT: 2, /ADSL账户ADSL_LOGIN: 3, /ADSL登录ADSL_OFFLINE: 4, /ADSL离线WIFI_SEAR
21、CH: 5, /无线网络搜索WIFI_DYNAMIC: 6, /无线网络动态WIFI_STATIC: 7 /无线网络静态;语法 iPanel. ioctlWrite (“System. SetAudioSPDIFOutPut“,“)功能 写入系统音频 SPDIF 配置信息。参数 属性 名称SPDIF spdif 输出返回 无举例 iPanel.ioctlWrite(“System. SetAudioSPDIFOutPut “,“0“)软件项目开发接口文档 v2.0语法 iPanel. ioctlRead(“System. GetAudioSPDIFOutPut“)功能 读取系统音频 SPDIF
22、 配置信息。参数 属性 名称SPDIF spdif 输出返回 String举例 “0“语法 iPanel. ioctlWrite (“System. SetAudioChanelOutPut“,“)功能 写入系统音频 Chanel 配置信息。参数 属性 名称Chanel 声道输出返回 无举例 iPanel.ioctlWrite(“System. SetAudioChanelOutPut “,“0“)语法 iPanel. ioctlRead(“System. GetAudioChanelOutPut“)功能 读取系统音频 Chanel 配置信息。参数 无返回 String举例 “0“软件项目开发
23、接口文档 v2.0语法 iPanel. ioctlWrite (“System. SetVideoHDMIOutPut“,“)功能 写入系统视频高清配置信息。参数 属性 名称video 视频输出模式返回 无举例 iPanel.ioctlWrite(“System. SetVideoHDMIOutPut “,“0“)语法 iPanel. ioctlRead (“System. GetVideoHDMIOutPut“)功能 读取系统视频高清配置信息。参数 属性 名称video 音频输出模式返回 String举例 0语法 iPanel. ioctlWrite (“System. SetVideoSD
24、OutPut“,“)功能 写入系统视频标清配置信息。参数 属性 名称video 视频输出模式返回 无举例 iPanel.ioctlWrite(“System. SetVideoSDOutPut “,“0“)软件项目开发接口文档 v2.0语法 iPanel. ioctlRead (“System. GetVideoSDOutPut“)功能 读取系统视频标清配置信息。参数 无返回 String举例 0语法 iPanel. ioctlWrite (“System. SetVideoYpbprOutPut“,“)功能 写入系统视频高清 Ypbpr 配置信息。参数 属性 名称video 视频输出模式返回
25、 无举例 iPanel.ioctlWrite(“System. SetVideoYpbprOutPut“,“0“)语法 iPanel. ioctlRead (“System. GetVideoYpbprOutPut“)功能 读取系统视频高清 Ypbpr 配置信息。参数 无返回 String举例 0语法 iPanel. ioctlWrite(“System.SetTVSystem“,“)软件项目开发接口文档 v2.0功能 写入系统初始电视标准配置信息。参数 属性 名称System 电视标准返回 无举例 iPanel.ioctlWrite(“System.SetTVSystem“,“0“)语法 i
26、Panel. ioctlRead (“System.GetTVSystem“)功能 读取系统初始电视标准配置信息。参数返回 String举例 0语法 iPanel. ioctlWrite (“System.SetTVScale“,“)功能 写入系统初始电视比例配置信息。参数 属性 名称Scale 电视比例返回 无举例 iPanel.ioctlWrite(“System.SetTVScale “,“0“)语法 iPanel. ioctlRead (“System.GetTVScale“)功能 写入系统初始电视比例配置信息。参数 无软件项目开发接口文档 v2.0返回 String举例 0语法 iP
27、anel. ioctlWrite (“System.SetNetworkMode“,“)功能 写入系统初始当前网络设置模式。参数 属性 名称Mode 设置模式返回 无举例 iPanel.ioctlWrite(“System. SetNetworkMode “,“0“)语法 iPanel. ioctlRead (“System. GetNetworkMode“)功能 读取系统初始网络设置模式。参数 无返回 String举例 0语法 iPanel. ioctlWrite (“System.SetSoftWareQueryMode“,“)功能 写入系统初始当前网络设置模式。参数 属性 名称Mode
28、设置模式软件项目开发接口文档 v2.0返回 无举例 iPanel.ioctlWrite(“System. SetSoftWareQueryMode“,“0“)语法 iPanel. ioctlRead (“System. GetSoftWareQueryMode“)功能 读取系统初始网络动态配置信息。参数 无返回 String举例 0语法 iPanel. ioctlWrite (“System.SetNetworkDynamic“,“)功能 写入系统初始网络动态配置信息。参数 无返回 String (0 成功 1 失败)举例 iPanel.ioctlWrite(“System.SetNetwor
29、kDynamic“,“)语法 iPanel. ioctlRead (“System.GetNetworkDynamic“)功能 读取系统初始网络动态配置信息。参数 无返回 String举例 192.168.0.1语法 iPanel. ioctlWrite (“System.SetNetworkStatic“,“软件项目开发接口文档 v2.0“)功能 写入系统初始网络静态配置信息。参数 属性 名称IP ip 地址Mask mask 地址Gateway gateway 地址DnsIP dns ip 地址返回 无举例 iPanel.ioctlWrite(“System.SetNetworkStati
30、c “,“ip“:“127.0.0.1“,“mask“:“127.0.0.1“,“gateway“:“127.0.0.1“,“dns“:“127.0.0.1“)语法 iPanel. ioctlRead (“System.GetNetworkStatic“)功能 读取系统初始网络静态配置信息。参数 无返回 json 串举例 “ip“:“127.0.0.1“,“mask“:“127.0.0.1“,“gateway“:“127.0.0.1“,“dns“:“127.0.0.1“语法 iPanel. ioctlWrite(“System.SetNetworkADSLAccount“,“)功能 写入系统初
31、始网络 ADSL 账户配置信息。软件项目开发接口文档 v2.0参数 属性 名称Name 用户名Password 密码返回 无举例 iPanel.ioctlWrite(“System.SetNetworkADSLAccount “,“name“:“tony“,“password“:“tu84556“)语法 iPanel. ioctlRead(“System.GetNetworkADSLAccount“)功能 读取系统初始网络 ADSL 账户配置信息。参数 无返回 json 串举例 “name“:“tony“,“password“:“tu84556“语法 iPanel. ioctlWrite(“S
32、ystem.SetFactory“,“)功能 写入系统初始软件恢复出厂配置信息。参数 无返回 无举例 iPanel.ioctlWrite(“System.SetFactory“,“)语法 iPanel. ioctlWrite(“System.SetUpgrade“,“)功能 写入版本升级指令。参数 无软件项目开发接口文档 v2.0返回 无举例 iPanel.ioctlWrite(“System.SetUpgrade“,“-1“)语法 iPanel. ioctlRead (“System.GetUpgrade“)功能 读取版本升级指令信息。参数 无返回 String举例 “语法 iPanel.
33、ioctlRead (“System.GetVersion“)功能 读取系统初始软件版本信息。参数 无返回 json 串举例 “functionver“:“jxhy20080344“,“pagever“:“jxp2004“,“vedioout“:“svedio“,“vedioscale“:“4:3“,“localvolumn“:“109GB“,“localremainvolumn“:“20GB“,“mobilevolumn“:“200GB“,“mobileremainvolumn“:“40GB“语法 iPanel. ioctlWrite (“System. SetVersion “,“)功能
34、读取系统初始软件版本信息。参数 属性 名称FunctionVer 功能版本软件项目开发接口文档 v2.0PageVer 页面版本VedioOut 输出设置VedioScale 视频比例LocalVolumn 本地磁盘容量LocalRemainVolumn 本地磁盘剩余容量MobileVolumn 移动磁盘容量MobileRemainVolumn 移动磁盘剩余容量返回 无举例 iPanel.ioctlWrite(“System.SetVersion “,“functionver“:“jxhy20080344“,“pagever“:“jxp2004“,“vedioout“:“svedio“,“ve
35、dioscale“:“4:3“,“localvolumn“:“109GB“,“localremainvolumn“:“20GB“,“mobilevolumn“:“200GB“,“mobileremainvolumn“:“40GB“)语法 iPanel. ioctlRead(“System.GetNetworkStatus“)功能 读取系统初始软件网络状态信息。参数 无返回 Json 串举例 “status“:“0“,“method“:“1“,“macaddress“:“00-25-5E-FF-27-48“,“ currentip “:“127.0.0.1“语法 iPanel. ioctlWri
36、te (“System.SetNetworkStatus“,“软件项目开发接口文档 v2.0“)功能 写入系统初始软件网络状态信息。参数 属性 名称Statuas 网络状态method 登录方式macaddress mac 地址currentip 当前 ip返回 无举例 iPanel.ioctlWrite(“System.SetNetworkStatus “,“0 “)语法 iPanel. ioctlWrite(“System.SetDiskManager “,“)功能 写入系统初始磁盘管理配置信息。参数 属性 名称Mode 管理方式返回 无举例 iPanel.ioctlWrite(“Syst
37、em.SetDiskManager“,“0“)语法 iPanel. ioctlRead (“System.GetDiskManager“)功能 读取系统初始磁盘管理配置信息。参数 无返回 String软件项目开发接口文档 v2.0举例 0语法 iPanel. ioctlWrite(“System.SetAcount“,“)功能 写入系统初始账号配置信息。参数 属性 名称Name 用户名Password 密码IP IP返回 无举例 iPanel.ioctlWrite(“System.SetAcount “,“name“:“tony“,“password“:“tu84556“,“ipname“:“
38、,“ ip “:“127.0.0.1“)语法 iPanel. ioctlRead (“System.GetAcount“)功能 读取系统初始账号配置信息。参数 无返回 Json 串举例 “name“:“tony“,“password“:“tu84556“, “inputmode“:“0“,“ ipfamilyselected“:“ipname“:“北京建新“,“ip“:“192.3.8.1“, “ipfamily“: “ipname“:“中国电信“,“ip“:“127.0.0.1“, “ipname“:“中国联通“,“ip“:“167.8.9.1“软件项目开发接口文档 v2.0语法 iPane
39、l. ioctlWrite(“System.SetDownPath“,“)功能 写入系统初始下载路径配置信息。参数 属性 名称Mode 路径模式返回 无举例 iPanel.ioctlWrite(“System.SetDownPath “,“0“)语法 iPanel. ioctlRead (“System. GetDownPath“)功能 读取系统初始下载路径配置信息。参数 无返回 String举例 0语法 iPanel. ioctlWrite(“System.SetFontSize“,“)功能 写入系统初始字幕大小配置信息。参数 属性 名称Mode 大小方式返回 无举例 iPanel.ioct
40、lWrite(“System.SetFontSize“,“0“)语法 iPanel. ioctlRead (“System.GetFontSize“)功能 读取系统初始字幕大小配置信息。软件项目开发接口文档 v2.0参数 无返回 String举例 0语法 iPanel. ioctlWrite(“System.SetFontColor“,“)功能 写入系统初始字幕颜色配置信息。参数 属性 名称Mode 颜色方式返回 无举例 iPanel.ioctlWrite(“System.SetFontColor “,“0“)语法 iPanel. ioctlRead (“System.GetFontColor“,“)功能 读取系统初始字幕颜色配置信息。参数 无返回 String举例 0语法 iPanel. ioctlRead(“System.GetNaviMenu“)功能 读取系统主界面导航菜单配置信息。参数 无返回 String 数组举例 “0“,“1“,“2“