HM-SPMS/product/common/sysconfig/potobuf/DataProcMessage.proto
2025-03-13 11:01:20 +08:00

150 lines
5.5 KiB
Protocol Buffer
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//========================================================================================
// @file DataProcMessage.proto
// @brief 数据处理服务(DP)所使用的消息,用于变化数据发布等
// @author zhouzhenglong yikenan
//========================================================================================
syntax="proto2";
import "Public.proto";
package iot_idl;
// 缩写说明:
// DPCDA : Data Process Change Data API 数据处理服务变化数据(订阅、发布)接口
// SUB : Subscriber 变化数据的订阅者比如HMI
// PUB : Publisher 变化数据的发布者即DP
//========================================================================================
// 消息类型枚举
//========================================================================================
enum enDataProcMessage
{
//< APP2DP数据的消息总线消息Para1是订阅变化计数
MT_DPCDA_APP2DP_CHG = 1; //< 订阅变化数据的APP向DP发布其订阅变化
MT_DPCDA_APP2DP_CHG_CNT = 2; //< 订阅变化数据的APP向DP发布其订阅变化计数定期发送
MT_DPCDA_APP2DP_ALL = 3; //< 订阅变化数据的APP向DP点对点回复其全部订阅
MT_DPCDA_DP2APP_ALL_REQ = 4; //< DP向订阅变化数据的APP请求其全部订阅
MT_DP_CHANGE_DATA = 6; //data_process发给HMI/统计等各个应用的实时数据
MT_TOPO_QCOLOR_NOTIFY = 20; //topo_server 发给HMI 的通知消息
}
//< DPCDA接口订阅交互所使用的消息结构
//========================================================================================
//< 单个订阅信息
message SDpcdaSubInfo
{
required string tab_name =1; //< 表名
required string tag_name =2; //< 标签名
required string col_name =3; //< 列名
}
//< MT_DPCDA_SUB2PUB_CHG、ALL 所使用的消息结构,使用消息类型区分
message SDpcdaSubPkg
{
repeated SDpcdaSubInfo add_sub =1; //< 增加的订阅
repeated SDpcdaSubInfo del_sub =2; //< 删除的订阅
}
//< 单个订阅信息
message SPointMsg
{
required int32 nDominId =1; // 域id
required int32 nAppId =2; // 应用id
required string sTable =3; //< 表名
required string sKey =4; //< 标签名
required string sColumn =5; //< 列名
}
//< 多个订阅信息
message SPointMsgPackage
{
repeated SPointMsg PointMsg =1;
}
//< MT_DPCDA_SUB2PUB_CHG_CNT、MT_DPCDA_PUB2SUB_ALL_REQ 无需消息结构
//??????
//========================================================================================
message SRealTimePkgHead
{
required string strSrcTag =1; //?????????????
required int64 nTimeStamp =2; //< 1970年以来的ms数主要为了事故追忆使用
};
//AI??????? data_process->hmi ;?????HMI
//========================================================================================
message SAiRealTimeData
{
required int32 nLocation =1;
required int32 nSubSystem =2;
required string strTableName =3;
required string strTagName =4;
required string strColumnName =5;
required float fValue =6;
required uint32 uStatus =7;
};
//PI??????? data_process->hmi ;?????HMI
//========================================================================================
message SPiRealTimeData
{
required int32 nLocation =1;
required int32 nSubSystem =2;
required string strTableName =3;
required string strTagName =4;
required string strColumnName =5;
required double dValue =6;
required uint32 uStatus =7;
};
//DI??????? data_process->hmi ;?????HMI
//========================================================================================
message SDiRealTimeData
{
required int32 nLocation =1;
required int32 nSubSystem =2;
required string strTableName =3;
required string strTagName =4;
required string strColumnName =5;
required int32 nValue =6;
required uint32 uStatus =7;
};
//MI??????? data_process->hmi;?????HMI
//========================================================================================
message SMiRealTimeData
{
required int32 nLocation =1;
required int32 nSubSystem =2;
required string strTableName =3;
required string strTagName =4;
required string strColumnName =5;
required int32 nValue =6;
required uint32 uStatus =7;
};
//Table Realtime Data publish struct
//========================================================================================
message STableRealTimeData
{
required string strTableName =1;
required string strTagName =2;
required string strColumnName =3;
optional int32 nLocation =4;
optional int32 nSubSystem =5;
required SVariable varValue =6; //??????
};
//HMI??????? data_process->hmi;?????HMI
//========================================================================================
message SRealTimeDataPkg
{
required SRealTimePkgHead stHead =1;
repeated SAiRealTimeData stAiRtd =2;
repeated SPiRealTimeData stPiRtd =3;
repeated SDiRealTimeData stDiRtd =4;
repeated SMiRealTimeData stMiRtd =5;
repeated STableRealTimeData stTblRtd =6;
};