노트이러한 맥락에서 EK80 프로세서 유닛을 "서버"라고 부르고, EK80 프로그램을 "서버 응용 프로그램"이라고 부를 수 있습니다.
그리고 로컬 컴퓨터에서 실행할 목적으로 직접 개발한 프로그램을 "클라이언트 응용 프로그램"이라고 일컫습니다.
ConnectRequest
ConnectRequest 메시지의 내용은 아래와 같습니다.
struct ConnectRequest
{
char Header[4]; // ”CON\0”
char ClientInfo[1024]; // e.g. ”Name:Simrad;Password:\0”
};
Response
EK80 서버 응용 프로그램이 Response 메시지로 응답합니다.
|
• |
ConnectRequest 명령이 정상적으로 실행된 경우에는 응답 메시지에 클라이언트 ID가 저장됩니다. |
|
• |
ConnectRequest 명령이 정상적으로 실행되지 않은 경우에는 오류 메시지가 저장됩니다. |
struct Response
{
char Header[4]; // ”RES\0”
char Request[4]; // ”CON/0”
char MsgControl[22]; // ”\0”
char MsgResponse[1400]; // Response text containing result of connection request
};
MsgResponse 필드는 ResultCode와 Parameters로 구성됩니다.
|
1 |
ResultCode에는 ConnectRequest 명령 결과가 저장됩니다. 사용되는 값은 다음과 같습니다.
|
• |
E_ACCESSDENIED: 알 수 없는 계정 또는 잘못된 암호로 인해 작동이 실패하였습니다. |
|
• |
E_FAIL: 알 수 없는 오류로 인해 작동이 실패하였습니다. |
|
|
2 |
Parameters는 표시될 수 있는 다양한 "이름:값" 쌍을 콤마로 구분한 목록입니다. 이 파라미터는 ConnectRequest가 성공한 경우에만 제공됩니다. 사용되는 값은 다음과 같습니다.
|
• |
ClientID: 앞으로 서버 응용 프로그램과의 모든 통신에 사용할 현재 클라이언트 ID |
|
• |
AccessLevel: 현재 클라이언트의 종합적인 액세스 레벨 |
|
예를 들어 연결에 성공할 경우 다음을 포함한 MsgResponse 메시지가 표시됩니다.
ResultCode:S_OK,
Parameters:{ClientID:1,AccessLevel:1}\0
연결 명령에 실패하면 ResponseField에 ResultInfo 필드가 포함됩니다. ResultInfo 필드에는 오류를 설명한 텍스트가 표시됩니다.