通信命令分类090116Word文档下载推荐.docx

上传人:b****2 文档编号:14665997 上传时间:2022-10-23 格式:DOCX 页数:81 大小:43.22KB
下载 相关 举报
通信命令分类090116Word文档下载推荐.docx_第1页
第1页 / 共81页
通信命令分类090116Word文档下载推荐.docx_第2页
第2页 / 共81页
通信命令分类090116Word文档下载推荐.docx_第3页
第3页 / 共81页
通信命令分类090116Word文档下载推荐.docx_第4页
第4页 / 共81页
通信命令分类090116Word文档下载推荐.docx_第5页
第5页 / 共81页
点击查看更多>>
下载资源
资源描述

通信命令分类090116Word文档下载推荐.docx

《通信命令分类090116Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《通信命令分类090116Word文档下载推荐.docx(81页珍藏版)》请在冰豆网上搜索。

通信命令分类090116Word文档下载推荐.docx

4字节

18-21

5

消息类型

1字节

22

6

方向

1字节(1为上行)(0为下行)

23

7

下行消息目的地级别

1字节(Service程序向上报告是Service程序的级别)。

1=组;

0=点位

24

8

25-28

9

组ID

4字节,上行时是发起者,下行时为目的地

29-32

10

点位ID

33-36

11

指令

37

12

任务号

38-41

13

版本号

2字节

42—43

1.1.校验段CheckMsg

暂时不管

1.2.发送时间SendTime

消息发送时,发送者本地时钟。

1.3.失效时间InvalidationTime

消息发送后,如果超过“失效时间”这个时间点,就丢弃掉;

新增:

+失效时间,即到了某个时间点,该报文如果还没有发出,或者发出去,还没有收到回复;

就要失去效用,即需要丢弃;

1.4.长度Length

以字节数表示的消息的总长度,包括协议头部以及消息内容扩展。

1.5.消息类型MsgType

即命令分类,消息主要分为以下几个大类

符号名

备注

心跳类

M_MSGTYPE_BASE

0x01

注册类

M_MSGTYPE_REGISTER

0x02

查询类

M_MSGTYPE_QUERY

0x03

设置类

M_MSGTYPE_SET

0x04

更新类

M_MSGTYPE_UPDATE

0x05

其他类

M_MSGTYPE_OTHER

0x06

回复报文

M_MSGTYPE_ANSWER

0x07

1.6.方向Direct

主要有3个方向,定义消息方向的目的是简化路由器对消息的处理。

Ø

上行=1:

表示播放器向上级发送的消息,路由器直接向上转发。

下行=0:

表示上级节点发送给播放器的消息,路由器根据具体的消息级别进行转发。

最新定义:

消息方向

上行

M_DIRCTION_UP

下行

M_DIRECTION_DOWN

0x00

1.7.下行消息目的地级别Destination

表示接收该消息的组织。

路由器根据消息的级别和消息的域、组、节点等信息对消息进行路由。

3=目的地为:

中心服务器

2=目的地为:

域服务器

1=目的地为:

组服务器

0=目的地为:

点位(播放器)

目的地

M_DESTINATION_CENTRAL

M_DESTINATION_DOMAIN

M_DESTINATION_GROUP

M_DESTINATION_SITE

任何其他值都认为是错误的。

1.8.域DomainID、组IDGroupID、点位IDNodeID:

对于上行消息,域、组ID、点位ID表示消息的发出者的ID

如果节点是域服务器,则域<

>

0and组ID=0and点位ID=0

如果节点是组服务器,则域<

0and组ID<

0 and点位ID=0

如果节点是点位,则域<

0and组ID<

0 and点位ID<

0

对于下行消息,域、组ID、点位ID表示消息的目的地

如果域<

0and组ID=0and点位ID=0,则消息发给域服务器。

但是需要具体分析消息的目的地。

0and点位ID=0,则组服务器是接收者。

如果节点是点位,则域<

0and组ID<

0 and点位ID<

0,这个时候目的地是确定的。

可能群发的命令,以及如何处理群发的任务;

1.如果需要群发,判断第6,7,8,9字段;

2.Sender需要判断是否群发,如果群发,则自己产生报文,群发;

3.群发的命令可能为查询类,更新类,其他类以及设置类中的设置时间,设置分辨率,设置关机;

4.如果群发,报文要注明群发至哪个级别,如:

群发到点位,则下行消息目的地为点位(0),域,组ID为相应内容,点位ID=0;

群发至组服务器,则下行消息目的地为组

(1),域,为相应内容,组ID=0,点位ID=0;

群发至域服务器,则下行消息目的地为域

(2),域=0,组ID=0,点位ID=0;

1.9.指令Instrution

指令需要与消息类型结合使用,用来判断消息的具体类别,及要调用相应的报文处理模块,采取的具体动作来处理。

CMD_BASE_HBEAT

心跳

CMD_BASE_HBREPORT

心跳报告

下级状态变化的报告报文

CMD_REG_REGISTER

注册

CMD_REG_LINK_TEST

连接测试

CMD_REG_LOGIN

播放器登陆

CMD_QUERY_DEVICE

查询设备端情况

CMD_QUERY_SERVER

查询服务器情况

CMD_SET_DATE_TIME

设置时间

CMD_SET_LOCALIP

设置本地IP

CMD_SET_CTRLIP

设置控制服务器IP

CMD_SET_FTPIP

设置FTP服务器IP

CMD_SET_RESOLUTION

设置分辨率

CMD_SET_PASSWORD

设置设备端密码

CMD_SET_DEV_RESET

设置设备/服务器重置(恢复出厂设置)

CMD_SET__DEV_INIT

0x08

设置设备/服务器初始化

CMD_SET_LOGGING

0x09

设备/服务器调试状态设定

CMD_SET_SAFETY

0x0A

安全设置(待定)

CMD_SET_PWRONOFF

0x0B

设置关机时间

CMD_UPD_FIRMWARE

更新固件

CMD_UPD_CONFIG

更新配置

CMD_UPD_PALYLIST

更新节目列表

CMD_UPD_SCROLL_TEXT

更新滚动字幕

CMD_UPD_LIST

更新列表信息

CMD_UPD_WEATHER

更新天气信息

CMD_UPD_IMMED_V

更新插播视频

CMD_UPD_IMMED_I

更新插播图片

CMD_UPD_IMMED_T

更新插播文字

CMD_UPD_LOGO

更新LOGO

OTHER_UPLD_OPERLOG

上载操作记录

OTHER_UPLD_PLAYREC

上载播放记录

OTHER_UPLD_FILELIST

上载本地文件列表

OTHER_UPLD_SYSTEM

上载系统运行记录

OTHER_DEL_FILE

删除指定文件

OTHER_PRGM_REG

文件入库

RECEIVE

收到报文回复

TASK_ERROR

任务出错回复

TASK_OVER

任务完成

DOWNLOAD_OVER

下载完成

QUERY_ANSWER_C

设备端查询回复

QUERY_ANSWER_S

服务器查询回复

具体的命令指令,见“命令格式详细”部分。

1.10.任务号TaskID

或者称为消息序列号。

A.任务号按层级编号,自动增长

——设备端0级1~9,999;

——接入/组1级10,000~19,999;

——路由/域2级20,000~29,999;

——中心3级30,000~39,999;

B.对于同一个任务号的应答,不管应答多少次,应答的任务号始终为任务发起端的任务号;

C.总是由发起者产生新任务号;

D.所有的任务号循环使用,到达最大后回头;

E.当进程退出:

——将任务号记录下来,再次启动时,将任务号+1处理;

(推荐)

F.D.G..P.T,应该可以保证任务号唯一。

表一:

ActiveTask,所有未完成的任务在此记录(设备和服务器必须由这个列表来跟踪每个任务执行情况;

如果一个任务执行完毕,比如获得最终应答,则从此表中删除);

表二:

TaskHistory,处理完毕的在此记录(所有接收到此报文的都有记录);

ActiveTask表需要定时序列化到硬盘,防止系统突然故障后数据丢失。

TaskHistory可以合并到系统的事件记录文件中。

G.因为新产生的任务号不会很多,一般不会出现一天就有重复任务号的情况;

H.心跳报文不考虑任务号(取0);

1.11.版本号Versions

用来标志命令格式的版本;

100――――1.0目前的版本号。

1.12.消息内容扩展

消息的具体内容,每个命令的处理程序需要解析之,进行相应的处理,并反馈相应的消息。

具体参见“命令详解”部分。

目前只考虑了三级服务器,同时第二级、第三级也可能就是点位。

所以在配置文件及消息中需要区别两点:

节点的级别、节点的类型。

所有的报文处理的类需要从同一基类开始。

这些类需要实现一个共同的接口。

比如产生报文;

解析报文;

加解密等。

2.命令格式详细

1.心跳类(命名空间OLC)

新增考虑:

如果某段时间,比如:

组服务器发生故障,我的域服务器可以直接去访问到播放器;

这样,首先,域服务器要有各个点位的IP地址,密钥,主动连接到播放器,而且域服务器和点位之间要有链路可以到达;

心跳类的第10字段“指令”对照表

变量

HEART

HEARTREPORT

心跳类播放器状态

PLAYING

播放

SLEEPING

休眠

POWEROFF

关机

播放器关机前,要发;

OFF_LINE

离线

不明问题

●心跳报文OnLine.cs

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1