206 lines
6.7 KiB
Protocol Buffer
206 lines
6.7 KiB
Protocol Buffer
syntax = "proto2";
|
|
package iot_idl.sequence;
|
|
|
|
//简写说明
|
|
//Opt : 操作控制台
|
|
//seq : sequence server 顺控服务
|
|
//Hmi : 人机界面
|
|
|
|
enum enChannelMsgType
|
|
{
|
|
MT_SEQAGE_CTRL_HMI_DOWN = 2; // sequence_server 顺控控制下行报文(sequence_server<-hmi)
|
|
MT_SEQAGE_CTRL_HMI_UP = 3; // sequence_server 顺控控制上行报文(sequence_server->hmi)
|
|
}
|
|
|
|
// seq 和 hmi 之间的消息类型
|
|
//========================================================================================
|
|
enum enSeqMsgType
|
|
{
|
|
enumStatusMessage = 1; //seq -> hmi 顺控状态更新
|
|
enumSeqOperateMessage = 3; //hmi->seq hmi发送给顺控服务的操作
|
|
enumSeqOperateMessageAck = 4; //seq ->hmi hmi发送给顺控服务的操作应答
|
|
enumUiRequestMessage = 5; //seq->hmi人工干预请求
|
|
enumUiRequestMessageAck = 6; //hmi->seq人工干预请求 应答
|
|
}
|
|
|
|
//========================================================================================
|
|
//seq 包头消息,每个消息必须包含
|
|
//========================================================================================
|
|
message SeqPkgHead
|
|
{
|
|
required string source_tag = 1; // 发送源 可选项: hmi,sequence,opt
|
|
required enSeqMsgType msg_type = 2; //消息类型
|
|
|
|
required int32 source_domain = 3; //消息所在域
|
|
required int32 target_domain = 4; //消息发送至目标域
|
|
|
|
required int32 para1 = 5; //预留
|
|
required int32 para2 = 6;
|
|
};
|
|
|
|
//========================================================================================
|
|
// seq -> hmi 的消息定义 - begin
|
|
//========================================================================================
|
|
|
|
enum enErrorCode
|
|
{
|
|
enumCode_SUCCESS = 0; //正常
|
|
enumCode_ERRO_UNKNOW = 1; //未知错误
|
|
enumCode_ERRO_TIMEFLAG_OLD = 2; //时标不一致
|
|
enumCode_ERRO_NOFOUND_SEQ = 3; //没有找到该顺控
|
|
enumCode_ERRO_ACTION_TIMEOUT = 4; //动作执行超时
|
|
enumCode_ERRO_ACTION_RECOVER = 5; //主备切换\顺控恢复 导致的顺控失败
|
|
enumCode_ERRO_ACTION_OPT_FAILED = 6; //动作执行失败
|
|
enumCode_ERRO_ACTION_UI_TIMEOUT = 7; //动作执行人工干预超时
|
|
enumCode_ERRO_ACTION_SEND_FAILED = 8; //发送动作操作失败
|
|
}
|
|
|
|
//错误参数
|
|
message ErrorParameter
|
|
{
|
|
required enErrorCode ErrorCode = 1; //错误码
|
|
required string ErrorDescription = 2; //错误描述
|
|
}
|
|
|
|
//错误参数
|
|
message ExecuteStatusParameter
|
|
{
|
|
required int32 StatusCode = 1; //状态码 0为成功 非零为错误状态
|
|
optional ErrorParameter erro_param = 2; //错误参数
|
|
}
|
|
|
|
//顺控状态
|
|
enum ENSeqStatus
|
|
{
|
|
enumSEQ_RESTING_STATUS = 0; //未执行
|
|
enumSEQ_RUNNING_STATUS = 1; //正在执行
|
|
enumSEQ_TRIGGERED_STATUS = 2; //已触发
|
|
enumSEQ_FAILED_STATUS = 3; //执行失败
|
|
enumSEQ_SUCCESS_STATUS = 4; //执行成功
|
|
enumSEQ_STOP_STATUS = 5; //执行终止
|
|
enumSEQ_PAUSE_STATUS = 6; //执行暂停
|
|
enumSEQ_SKIP_STATUS = 7; //执行跳过
|
|
};
|
|
|
|
//勾选状态
|
|
enum ENSeqNodeCheckStatus
|
|
{
|
|
enumNodeUnChecked = 0; //不勾选
|
|
enumnodePartiallyChecked = 1; //部分勾选
|
|
enumNodeChecked = 2; //勾选
|
|
};
|
|
|
|
//动作信息
|
|
message ActionNodeStatusParameter
|
|
{
|
|
required string action_name = 1; //功能名称
|
|
required string action_desc = 2; //描述
|
|
required ENSeqNodeCheckStatus check_state = 3; //勾选状态
|
|
required ENSeqStatus node_state = 4; //节点状态
|
|
required int64 timeflag = 5; //时标
|
|
};
|
|
|
|
//功能信息
|
|
message FucNodeStatusParameter
|
|
{
|
|
required string fuc_name = 1; //功能名称
|
|
required string fuc_desc = 2; //描述
|
|
required ENSeqNodeCheckStatus check_state = 3; //勾选状态
|
|
required int64 timeflag = 4; //时标
|
|
required ENSeqStatus node_state = 5; //节点状态
|
|
repeated ActionNodeStatusParameter nodelist = 6; //动作节点
|
|
};
|
|
|
|
|
|
//顺控信息
|
|
message SeqNodeStatusParameter
|
|
{
|
|
required string seq_name = 1; //顺控名称
|
|
required string seq_desc = 2; //顺控描述
|
|
required ENSeqNodeCheckStatus check_state = 3; //勾选状态
|
|
required int64 timeflag = 4; //时标
|
|
required ENSeqStatus node_state = 5; //节点状态
|
|
repeated FucNodeStatusParameter nodelist = 6; //功能节点
|
|
};
|
|
|
|
message ActorParameter
|
|
{
|
|
required int32 user_id = 1; //用户id
|
|
required int32 user_groupId = 2; //用户组id
|
|
required string host_name = 3; //主机名
|
|
required string user_name = 4; //用户名
|
|
}
|
|
|
|
//seq -> hmi 顺控服务发送给hmi的 顺控状态 顺控状态只发送,不需要hmi应答
|
|
message StatusChangeMessage
|
|
{
|
|
required SeqPkgHead pkg_head = 1;
|
|
required SeqNodeStatusParameter nodelist = 2;
|
|
repeated ExecuteStatusParameter execute_status = 3;
|
|
};
|
|
|
|
enum ENUiOperateType
|
|
{
|
|
enumUI_OP_RETRY = 1; //重试
|
|
enumUI_OP_STOP = 2; //终止
|
|
enumUI_OP_SKIP = 3; //跳过
|
|
};
|
|
|
|
//seq -> hmi 人工干预请求
|
|
message UiRequestMessage
|
|
{
|
|
required SeqPkgHead pkg_head = 1;
|
|
required ActorParameter actor = 2;
|
|
required SeqNodeStatusParameter nodelist = 3;
|
|
required ExecuteStatusParameter execute_status = 4;
|
|
};
|
|
|
|
//hmi -> seq hmi发送给顺控服务的 人工干预应答
|
|
message UiRequestMessageAck
|
|
{
|
|
required SeqPkgHead pkg_head = 1;
|
|
required ActorParameter actor = 2;
|
|
required SeqNodeStatusParameter nodelist = 3;
|
|
required ENUiOperateType optype = 4;
|
|
};
|
|
//========================================================================================
|
|
// seq -> hmi 的消息定义 - end
|
|
//========================================================================================
|
|
|
|
|
|
//========================================================================================
|
|
// hmi -> seq 的消息定义 - begin
|
|
//========================================================================================
|
|
//hmi->seq操作类型
|
|
enum ENSeqOperateType
|
|
{
|
|
enumOP_SEQ_START = 0; //顺控开始
|
|
enumOP_SEQ_STOP = 1; //顺控终止
|
|
enumOP_SEQ_PAUSE = 2; //顺控暂停
|
|
enumOP_SEQ_CONTINUE = 3; //顺控继续
|
|
enumOP_SES_START = 4; //单步开始
|
|
enumOP_SES_CONTINUE = 5; //单步继续
|
|
};
|
|
|
|
//hmi->seq hmi发送给顺控服务的操作
|
|
message SeqOperateMessage
|
|
{
|
|
required SeqPkgHead pkg_head = 1;
|
|
required SeqNodeStatusParameter seq_node = 2;
|
|
required ActorParameter actor = 3;
|
|
required ENSeqOperateType opreate_type = 4;
|
|
};
|
|
|
|
//seq ->hmi hmi发送给顺控服务的操作应答
|
|
message SeqOperateMessageAck
|
|
{
|
|
required SeqPkgHead pkg_head = 1;
|
|
required SeqNodeStatusParameter seq_node = 2;
|
|
required ENSeqOperateType opreate_type = 3;
|
|
required ActorParameter actor = 4;
|
|
required ExecuteStatusParameter execute_status = 5;
|
|
};
|
|
|
|
//========================================================================================
|
|
// hmi -> seq 的消息定义 - end
|
|
//======================================================================================== |