차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
다음 판 양쪽 다음 판
ko:device_api [2017/09/05 11:29]
127.0.0.1 바깥 편집
ko:device_api [2020/02/19 13:41]
yjjung [BS2SimpleDeviceInfoEx]
줄 4: 줄 4:
  
   * [[BS2_GetDeviceInfo]]:​ 장치 정보를 가져옵니다.   * [[BS2_GetDeviceInfo]]:​ 장치 정보를 가져옵니다.
 +  * [[BS2_GetDeviceInfoEx]]:​ [+ 2.6.0] 장치 추가정보를 가져옵니다.
   * [[BS2_GetDeviceTime]]:​ 현재 시간을 가져옵니다.   * [[BS2_GetDeviceTime]]:​ 현재 시간을 가져옵니다.
   * [[BS2_SetDeviceTime]]:​ 현재 시간을 설정합니다.   * [[BS2_SetDeviceTime]]:​ 현재 시간을 설정합니다.
줄 14: 줄 15:
   * [[BS2_UpgradeFirmware]]:​ 펌웨어를 업그레이드합니다.   * [[BS2_UpgradeFirmware]]:​ 펌웨어를 업그레이드합니다.
   * [[BS2_UpdateResource]]:​ 리소스를 업데이트합니다.   * [[BS2_UpdateResource]]:​ 리소스를 업데이트합니다.
 +  * [[BS2_GetSpecifiedDeviceInfo]]:​ [+ 2.6.3] 장치 정보를 선택적으로 가져옵니다.
 +  * [[BS2_GetAuthOperatorLevelEx]]:​ [+ 2.6.3] 주어진 장치 관리자를 가져옵니다. (1000명 관리자 지원)
 +  * [[BS2_GetAllAuthOperatorLevelEx]]:​ [+ 2.6.3] 모든 장치 관리자를 가져옵니다. (1000명 관리자 지원)
 +  * [[BS2_SetAuthOperatorLevelEx]]:​ [+ 2.6.3] 장치 관리자를 추가합니다. (1000명 관리자 지원)
 +  * [[BS2_RemoveAuthOperatorLevelEx]]:​ [+ 2.6.3] 주어진 장치 관리자를 삭제합니다. (1000명 관리자 지원)
 +  * [[BS2_RemoveAllAuthOperatorLevelEx]]:​ [+ 2.6.3] 모든 장치 관리자를 삭제합니다. (1000명 관리자 지원)
 +
 ===== 구조체 ===== ===== 구조체 =====
 ==== BS2SimpleDeviceInfo ==== ==== BS2SimpleDeviceInfo ====
줄 72: 줄 80:
 |0x0C  |BioStation L2  | |0x0C  |BioStation L2  |
 |0x0D  |BioEntry W2  | |0x0D  |BioEntry W2  |
-|0x0E  |CoreStation ​ | +|0x0E  |CoreStation ​40  | 
-|0x0F  |Output Module| +|0x0F  |Output Module ​ 
-|0x10  |Input Module| +|0x10  |Input Module ​ 
-|0x11  |BioEntry P2| +|0x11  |BioEntry P2  
-|0x0F  |OM-120 ​ |+|0x12  |BioLite N2  | 
 +|0x13  |XPass2 ​ | 
 +|0x14  |XPass S3  | 
 +|0x15  |BioEntry R2  | 
 +|0x16  |XPass D2  | 
 +|0x17  |Door Module 21  | 
 +|0xFF  |Unknown Type  |
 </​WRAP>​ </​WRAP>​
  
줄 148: 줄 162:
 장치에서 AlphanumericID를 사용중인지 여부를 말하는 flag입니다. \\ 장치에서 AlphanumericID를 사용중인지 여부를 말하는 flag입니다. \\
  
-25. //​connectedIP//​ \\ +26. //​connectedIP//​ \\ 
 장치가 접속하고 있는 ip주소입니다. (0xFFFFFFFF if disconnected)\\ 장치가 접속하고 있는 ip주소입니다. (0xFFFFFFFF if disconnected)\\
  
-26. //​phraseCodeSupported//​ \\ +27. //​phraseCodeSupported//​ \\ 
 장치에서 사용자별 개인 메세지를 지원하는지 알 수 있는 flag입니다. \\ 장치에서 사용자별 개인 메세지를 지원하는지 알 수 있는 flag입니다. \\
  
-27. //​card1xSupported//​ \\ +28. //​card1xSupported//​ \\ 
 장치에서 1.x ToC 카드 읽기를 지원하는지 알 수 있는 flag입니다. \\ 장치에서 1.x ToC 카드 읽기를 지원하는지 알 수 있는 flag입니다. \\
  
-28. //​systemExtSupported//​ \\ +29. //​systemExtSupported//​ \\ 
 장치에서 RS-485 키 설정을 지원하는지 알 수 있는 flag입니다. \\ 장치에서 RS-485 키 설정을 지원하는지 알 수 있는 flag입니다. \\
  
-29. //​voipSupported//​ \\ +30. //​voipSupported//​ \\ 
 장치에서 VoIP를 지원하는지 알 수 있는 flag입니다. \\ 장치에서 VoIP를 지원하는지 알 수 있는 flag입니다. \\
 +
 +==== BS2SimpleDeviceInfoEx ====
 +BS2SimpleDeviceInfo 외 지원정보를 가져옵니다.\\
 +<code cpp>
 +typedef struct
 +{
 +    enum
 +    {
 + BS2_SUPPORT_RS485EX = 0x00000001,
 + BS2_SUPPORT_CARDEX ​ = 0x00000002,
 + BS2_SUPPORT_DST ​     = 0x00000004,
 + BS2_SUPPORT_DESFIREEX = 0x00000008,
 +
 + BS2_SUPPORT_ALL ​     = BS2_SUPPORT_RS485EX | BS2_SUPPORT_CARDEX | BS2_SUPPORT_DST | BS2_SUPPORT_DESFIREEX
 +    };
 +
 +    uint32_t supported;
 +    uint8_t ​ reserved[4];​
 +}BS2SimpleDeviceInfoEx;​
 +</​code>​
 +
 +1. //​supported//​ \\ 
 +현재 장치가 BS2SimpleDeviceInfo 에서 제공하는 기능 외의 정보를 추가적으로 가져옵니다.\\
 +아래 정의된 값으로 bit masking을 하여 지원 여부를 확인할 수 있습니다.
 +<WRAP group 70%>
 +^정의 ​ ^값  ^설명 ​ ^
 +|BS2_SUPPORT_RS485EX ​ |0x00000001 ​ |RS485 확장 지원 여부 (CoreStation 40에 해당) ​ |
 +|BS2_SUPPORT_CARDEX ​ |0x00000002 ​ |iClass SEOS 카드 사용 여부 ​ |
 +|BS2_SUPPORT_DST ​ |0x00000004 ​ |일광절약 시간 사용 여부 ​ |
 +|BS2_SUPPORT_DESFIREEX |0x00000008 |DesFire 카드 고급설정 지원 여부 [+2.6.4] |
 +|BS2_SUPPORT_ALL ​ |0x0000000F ​ |추가 정보 전체 제공 여부 ​ |
 +</​WRAP>​
 +
 +2. //​reserved//​ \\ 
 +예약된 공간입니다. \\ 
 +
 ==== BS2ResourceElement ==== ==== BS2ResourceElement ====
 <code cpp> <code cpp>
줄 193: 줄 243:
 5. //data// \\ 5. //data// \\
 바이너리 리소스 데이터입니다. \\ \\ 바이너리 리소스 데이터입니다. \\ \\
 +
 +==== BS2IPv6DeviceInfo ====
 +<code cpp>
 +enum {
 +    BS2_MAX_IPV6_ALLOCATED_ADDR = 8,
 +};
 +
 +typedef struct
 +{
 +    BS2_DEVICE_ID id;
 +    uint8_t reserved[1];​
 +    uint8_t bIPv6Mode;
 +    char ipv6Address[BS2_IPV6_ADDR_SIZE];​
 +    uint16_t portV6;
 +    char connectedIPV6[BS2_IPV6_ADDR_SIZE];​
 +    uint8_t numOfAllocatedAddressV6;​
 +    char allocatedIpAddressV6[BS2_IPV6_ADDR_SIZE][BS2_MAX_IPV6_ALLOCATED_ADDR];​
 +}BS2IPv6DeviceInfo;​
 +</​code>​
 +1. //id// \\ 
 +장치 식별자입니다. \\ \\ 
 +2. //​reserved//​ \\ 
 +예약된 공간입니다. \\ \\ 
 +3. //​bIPv6Mode//​ \\ 
 +현 장치가 IP V6로 동작하는지 여부를 나타내는 flag입니다. \\ \\ 
 +4. //​ipv6Address//​ \\ 
 +현재 장치의 IP V6 주소입니다. \\ \\ 
 +5. //portV6// \\ 
 +현재 장치의 IP V6 포트 번호입니다. \\ \\ 
 +6. //​connectedIPV6//​ \\ 
 +장치가 연결된 서버의 IP V6 주소입니다. \\ \\ 
 +7. //​numOfAllocatedAddressV6//​ \\ 
 +현재 장치에 할당되어진 IP V6 주소의 갯수를 나타냅니다. \\ \\ 
 +8. //​allocatedIpAddressV6//​ \\ 
 +현재 장치에 할당되어진 IP V6 주소입니다. numOfAllocatedAddressV6는 할당되어진 주소의 갯수를 나타냅니다. \\ \\
 +
 +==== BS2AuthOperatorLevel ====
 +<code cpp>
 +typedef struct {
 +    char userID[BS2_USER_ID_SIZE];​
 +    uint8_t level;
 +    uint8_t reserved[3];​
 +} BS2Operator;​
 +
 +typedef BS2Operator BS2AuthOperatorLevel;​
 +</​code>​
 +1. //userID// \\ 
 +사용자 식별자입니다. \\ \\ 
 +2. //level// \\ 
 +사용자가 인증되었을 때 식별자에 해당하는 권한을 지정합니다. \\ 
 +<WRAP group 50%>
 +^값  ^설명 ​ ^
 +|0  |권한 없음 ​ |
 +|1  |관리자 권한 ​ |
 +|2  |시스템 구성을 변경할 수 있는 권한 ​ |
 +|3  |사용자 정보를 변경할 수 있는 권한 ​ |
 +</​WRAP>​
 +3. //​reserved//​ \\ 
 +예약된 공간입니다. \\ 
 +