ThingPlug GMMP library for mbed
Dependents: ThingPlug_WiFi_Example
Operation/ProfileInfo/Struct_ProfileInfo.h@0:32c20cfb2b30, 2015-07-23 (annotated)
- Committer:
- lesmin
- Date:
- Thu Jul 23 00:55:15 2015 +0000
- Revision:
- 0:32c20cfb2b30
initial commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lesmin | 0:32c20cfb2b30 | 1 | /** GMMP Operation 중 제어 명령 수행 결과 보고 명령에 사용되는 구조체 |
lesmin | 0:32c20cfb2b30 | 2 | * @file Struct_ProfileInfo.h |
lesmin | 0:32c20cfb2b30 | 3 | * @date 2013/11/21 |
lesmin | 0:32c20cfb2b30 | 4 | * @version 0.0.0.1 |
lesmin | 0:32c20cfb2b30 | 5 | * @ref GMMPHeader참조 |
lesmin | 0:32c20cfb2b30 | 6 | **/ |
lesmin | 0:32c20cfb2b30 | 7 | |
lesmin | 0:32c20cfb2b30 | 8 | #ifndef STRUCT_PROFILEINFO_H_ |
lesmin | 0:32c20cfb2b30 | 9 | #define STRUCT_PROFILEINFO_H_ |
lesmin | 0:32c20cfb2b30 | 10 | |
lesmin | 0:32c20cfb2b30 | 11 | #include "Define.h" |
lesmin | 0:32c20cfb2b30 | 12 | #include "Struct_Common.h" |
lesmin | 0:32c20cfb2b30 | 13 | |
lesmin | 0:32c20cfb2b30 | 14 | #pragma pack(1) |
lesmin | 0:32c20cfb2b30 | 15 | /** |
lesmin | 0:32c20cfb2b30 | 16 | * @struct stProfileReqHdr |
lesmin | 0:32c20cfb2b30 | 17 | * @brief GMMP TCP Packet 구조 중 Request 수행 시 Message Header와 Message Body 영역 |
lesmin | 0:32c20cfb2b30 | 18 | * OMP에서 Profile Info 메시지를 OMP에 전송한다. |
lesmin | 0:32c20cfb2b30 | 19 | */ |
lesmin | 0:32c20cfb2b30 | 20 | typedef struct { |
lesmin | 0:32c20cfb2b30 | 21 | /** |
lesmin | 0:32c20cfb2b30 | 22 | *@var usDomainCode |
lesmin | 0:32c20cfb2b30 | 23 | *@brief 서비스 영역별 구분 코드\n |
lesmin | 0:32c20cfb2b30 | 24 | - AlphaNumeric : 문자,숫자 조합, 특수문자제외, SPACE 허용 안하며 빈자리는 0x00(NULL)로 채운다.\n |
lesmin | 0:32c20cfb2b30 | 25 | */ |
lesmin | 0:32c20cfb2b30 | 26 | /** |
lesmin | 0:32c20cfb2b30 | 27 | *@var usGWID |
lesmin | 0:32c20cfb2b30 | 28 | *@brief M2M GW ID |
lesmin | 0:32c20cfb2b30 | 29 | */ |
lesmin | 0:32c20cfb2b30 | 30 | /** |
lesmin | 0:32c20cfb2b30 | 31 | *@var usDeviceID |
lesmin | 0:32c20cfb2b30 | 32 | *@brief M2M Device ID, 값이 0x0이면 GW 명령이다. |
lesmin | 0:32c20cfb2b30 | 33 | */ |
lesmin | 0:32c20cfb2b30 | 34 | U8 usDomainCode[LEN_DOMAIN_CODE]; |
lesmin | 0:32c20cfb2b30 | 35 | U8 usGWID[LEN_GW_ID]; |
lesmin | 0:32c20cfb2b30 | 36 | U8 usDeviceID[LEN_DEVICE_ID]; |
lesmin | 0:32c20cfb2b30 | 37 | }stProfileReqHdr; //Profile Request |
lesmin | 0:32c20cfb2b30 | 38 | |
lesmin | 0:32c20cfb2b30 | 39 | /** |
lesmin | 0:32c20cfb2b30 | 40 | * @struct stProfileRspHdr |
lesmin | 0:32c20cfb2b30 | 41 | * @brief GMMP TCP Packet 구조 중 Response 수행 시 Message Header와 Message Body 영역 |
lesmin | 0:32c20cfb2b30 | 42 | * OMP에서 Multimedia URL Info 제공 명령 수신 시 사용된다. |
lesmin | 0:32c20cfb2b30 | 43 | */ |
lesmin | 0:32c20cfb2b30 | 44 | typedef struct { |
lesmin | 0:32c20cfb2b30 | 45 | /** |
lesmin | 0:32c20cfb2b30 | 46 | *@var usDomainCode |
lesmin | 0:32c20cfb2b30 | 47 | *@brief 서비스 영역별 구분 코드\n |
lesmin | 0:32c20cfb2b30 | 48 | - AlphaNumeric : 문자,숫자 조합, 특수문자제외, SPACE 허용 안하며 빈자리는 0x00(NULL)로 채운다.\n |
lesmin | 0:32c20cfb2b30 | 49 | */ |
lesmin | 0:32c20cfb2b30 | 50 | /** |
lesmin | 0:32c20cfb2b30 | 51 | *@var usGWID |
lesmin | 0:32c20cfb2b30 | 52 | *@brief M2M GW ID |
lesmin | 0:32c20cfb2b30 | 53 | */ |
lesmin | 0:32c20cfb2b30 | 54 | /** |
lesmin | 0:32c20cfb2b30 | 55 | *@var usDeviceID |
lesmin | 0:32c20cfb2b30 | 56 | *@brief M2M Device ID, 값이 0x0이면 GW 명령이다. |
lesmin | 0:32c20cfb2b30 | 57 | */ |
lesmin | 0:32c20cfb2b30 | 58 | /** |
lesmin | 0:32c20cfb2b30 | 59 | *@var ucResultCode |
lesmin | 0:32c20cfb2b30 | 60 | *@brief Result Code (0x00 : Success, other : Fail Reason) @ref OMPErrorCode.h 참조 |
lesmin | 0:32c20cfb2b30 | 61 | */ |
lesmin | 0:32c20cfb2b30 | 62 | /** |
lesmin | 0:32c20cfb2b30 | 63 | *@var unHeartbeatPeriod |
lesmin | 0:32c20cfb2b30 | 64 | *@brief Heartbeat 주기로서 분(min)단위이다.\n |
lesmin | 0:32c20cfb2b30 | 65 | *@brief 0x00 : Non Always On 단말\n |
lesmin | 0:32c20cfb2b30 | 66 | *@brief other : TCP Always On 단말\n |
lesmin | 0:32c20cfb2b30 | 67 | *@brief (Device Profile 조회시에는 해당 값이 0으로 전달)\n |
lesmin | 0:32c20cfb2b30 | 68 | */ |
lesmin | 0:32c20cfb2b30 | 69 | /** |
lesmin | 0:32c20cfb2b30 | 70 | *@var unReportPeriod |
lesmin | 0:32c20cfb2b30 | 71 | *@brief 보고 주기로서 분(minute) 단위이다.\n |
lesmin | 0:32c20cfb2b30 | 72 | *@brief (Device Profile 조회시에는 해당 값이 0으로 전달) |
lesmin | 0:32c20cfb2b30 | 73 | */ |
lesmin | 0:32c20cfb2b30 | 74 | /** |
lesmin | 0:32c20cfb2b30 | 75 | *@var unReportOffset |
lesmin | 0:32c20cfb2b30 | 76 | *@brief 보고 주기 Offset 시간으로서 초(sec) 단위이다.\n |
lesmin | 0:32c20cfb2b30 | 77 | @brief 0이면 보고주기때 보고하고, 0이 아니면 보고 주기가 되었을때 단말은 Reporting OffSet Time 이후에 주기보고 동작을 해야한다. |
lesmin | 0:32c20cfb2b30 | 78 | @brief (Device Profile 조회시에는 해당 값이 0으로 전달) |
lesmin | 0:32c20cfb2b30 | 79 | */ |
lesmin | 0:32c20cfb2b30 | 80 | /** |
lesmin | 0:32c20cfb2b30 | 81 | *@var unResponseTimeout |
lesmin | 0:32c20cfb2b30 | 82 | *@brief M2M 단말의 Request메시지에 대한 Response 메시지의 Timeout(최소 30sec 이상으로 설정한다.)\n |
lesmin | 0:32c20cfb2b30 | 83 | *@brief (Device Profile 조회시에는 해당 값이 0으로 전달)\n |
lesmin | 0:32c20cfb2b30 | 84 | */ |
lesmin | 0:32c20cfb2b30 | 85 | /** |
lesmin | 0:32c20cfb2b30 | 86 | *@var usModel |
lesmin | 0:32c20cfb2b30 | 87 | *@brief 제조사에서 부여한 Device 의 이름 |
lesmin | 0:32c20cfb2b30 | 88 | */ |
lesmin | 0:32c20cfb2b30 | 89 | /** |
lesmin | 0:32c20cfb2b30 | 90 | *@var usFirmwareVersion |
lesmin | 0:32c20cfb2b30 | 91 | *@brief Firmware Version |
lesmin | 0:32c20cfb2b30 | 92 | */ |
lesmin | 0:32c20cfb2b30 | 93 | /** |
lesmin | 0:32c20cfb2b30 | 94 | *@var usSoftwareVersion |
lesmin | 0:32c20cfb2b30 | 95 | *@brief Software Version |
lesmin | 0:32c20cfb2b30 | 96 | */ |
lesmin | 0:32c20cfb2b30 | 97 | /** |
lesmin | 0:32c20cfb2b30 | 98 | *@var usHardwareVersion |
lesmin | 0:32c20cfb2b30 | 99 | *@brief Hardware Version |
lesmin | 0:32c20cfb2b30 | 100 | */ |
lesmin | 0:32c20cfb2b30 | 101 | U8 usDomainCode[LEN_DOMAIN_CODE]; |
lesmin | 0:32c20cfb2b30 | 102 | U8 usGWID[LEN_GW_ID]; |
lesmin | 0:32c20cfb2b30 | 103 | U8 usDeviceID[LEN_DEVICE_ID]; |
lesmin | 0:32c20cfb2b30 | 104 | U8 ucResultCode; |
lesmin | 0:32c20cfb2b30 | 105 | U8 unHeartbeatPeriod[4]; |
lesmin | 0:32c20cfb2b30 | 106 | U8 unReportPeriod[4]; |
lesmin | 0:32c20cfb2b30 | 107 | U8 unReportOffset[4]; |
lesmin | 0:32c20cfb2b30 | 108 | U8 unResponseTimeout[4]; |
lesmin | 0:32c20cfb2b30 | 109 | U8 usModel[32]; |
lesmin | 0:32c20cfb2b30 | 110 | U8 usFirmwareVersion[16]; |
lesmin | 0:32c20cfb2b30 | 111 | U8 usSoftwareVersion[16]; |
lesmin | 0:32c20cfb2b30 | 112 | U8 usHardwareVersion[16]; |
lesmin | 0:32c20cfb2b30 | 113 | }stProfileRspHdr; //Profile Response |
lesmin | 0:32c20cfb2b30 | 114 | |
lesmin | 0:32c20cfb2b30 | 115 | /** |
lesmin | 0:32c20cfb2b30 | 116 | * @struct Profile_Req |
lesmin | 0:32c20cfb2b30 | 117 | * @brief GMMP TCP Packet 구조 중 Request Profile Info 구조체 |
lesmin | 0:32c20cfb2b30 | 118 | * OMP에 Request Profile Info 데이터 전송한다. |
lesmin | 0:32c20cfb2b30 | 119 | */ |
lesmin | 0:32c20cfb2b30 | 120 | typedef struct { |
lesmin | 0:32c20cfb2b30 | 121 | /** |
lesmin | 0:32c20cfb2b30 | 122 | *@var header |
lesmin | 0:32c20cfb2b30 | 123 | *@brief @ref GMMPHeader 참조 |
lesmin | 0:32c20cfb2b30 | 124 | */ |
lesmin | 0:32c20cfb2b30 | 125 | /** |
lesmin | 0:32c20cfb2b30 | 126 | *@var body |
lesmin | 0:32c20cfb2b30 | 127 | *@brief @ref stProfileReqHdr 참조 |
lesmin | 0:32c20cfb2b30 | 128 | */ |
lesmin | 0:32c20cfb2b30 | 129 | GMMPHeader header; |
lesmin | 0:32c20cfb2b30 | 130 | stProfileReqHdr body; |
lesmin | 0:32c20cfb2b30 | 131 | }Profile_Req; |
lesmin | 0:32c20cfb2b30 | 132 | |
lesmin | 0:32c20cfb2b30 | 133 | /** |
lesmin | 0:32c20cfb2b30 | 134 | * @struct Profile_Rsp |
lesmin | 0:32c20cfb2b30 | 135 | * @brief GMMP TCP Packet 구조 중 Response Profile Info 구조체 |
lesmin | 0:32c20cfb2b30 | 136 | * OMP에 Response Profile Info 데이터 수신한다. |
lesmin | 0:32c20cfb2b30 | 137 | */ |
lesmin | 0:32c20cfb2b30 | 138 | |
lesmin | 0:32c20cfb2b30 | 139 | typedef struct { |
lesmin | 0:32c20cfb2b30 | 140 | /** |
lesmin | 0:32c20cfb2b30 | 141 | *@var header |
lesmin | 0:32c20cfb2b30 | 142 | *@brief @ref GMMPHeader 참조 |
lesmin | 0:32c20cfb2b30 | 143 | */ |
lesmin | 0:32c20cfb2b30 | 144 | /** |
lesmin | 0:32c20cfb2b30 | 145 | *@var body |
lesmin | 0:32c20cfb2b30 | 146 | *@brief @ref stProfileRspHdr 참조 |
lesmin | 0:32c20cfb2b30 | 147 | */ |
lesmin | 0:32c20cfb2b30 | 148 | GMMPHeader header; |
lesmin | 0:32c20cfb2b30 | 149 | stProfileRspHdr body; |
lesmin | 0:32c20cfb2b30 | 150 | }Profile_Rsp; |
lesmin | 0:32c20cfb2b30 | 151 | #pragma pack(0) |
lesmin | 0:32c20cfb2b30 | 152 | |
lesmin | 0:32c20cfb2b30 | 153 | #endif /* STRUCT_PROFILEINFO_H_ */ |