차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 다음 판 양쪽 다음 판 | ||
ko:device_api [2017/09/05 11:29] 127.0.0.1 바깥 편집 |
ko:device_api [2020/08/28 12:35] 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_FACE_EX = 0x00000010, | ||
+ | |||
+ | BS2_SUPPORT_FINGER_SCAN = 0x00010000, | ||
+ | BS2_SUPPORT_FACE_SCAN = 0x00020000, | ||
+ | BS2_SUPPORT_FACE_EX_SCAN = 0x00040000, | ||
+ | |||
+ | BS2_SUPPORT_ALL = BS2_SUPPORT_RS485EX | BS2_SUPPORT_CARDEX | BS2_SUPPORT_DST | BS2_SUPPORT_DESFIREEX | BS2_SUPPORT_FACE_EX | BS2_SUPPORT_FINGER_SCAN | BS2_SUPPORT_FACE_SCAN | BS2_SUPPORT_FACE_EX_SCAN, | ||
+ | }; | ||
+ | |||
+ | uint32_t supported; | ||
+ | uint8_t reserved[4]; | ||
+ | }BS2SimpleDeviceInfoEx; | ||
+ | </code> | ||
+ | |||
+ | 1. //supported// \\ | ||
+ | 현재 장치가 BS2SimpleDeviceInfo 에서 제공하는 기능 외의 정보를 추가적으로 가져옵니다.\\ | ||
+ | 아래 정의된 값으로 bit masking을 하여 지원 여부를 확인할 수 있습니다. | ||
+ | <WRAP group 80%> | ||
+ | ^정의 ^값 ^설명 ^ | ||
+ | |BS2_SUPPORT_RS485EX |0x00000001 |RS485 확장 지원 여부 (CoreStation 40에 해당) | | ||
+ | |BS2_SUPPORT_CARDEX |0x00000002 |iClass SEOS 카드 사용 여부 | | ||
+ | |BS2_SUPPORT_DST |0x00000004 |일광절약 시간 사용 여부 | | ||
+ | |BS2_SUPPORT_DESFIREEX |0x00000008 |DesFire 카드 고급설정 지원 여부 [+ V2.6.4] | | ||
+ | |BS2_SUPPORT_FACE_EX |0x00000010 |FaceStation F2용 얼굴인증 지원 여부 [+ V2.7.1] | | ||
+ | |BS2_SUPPORT_FINGER_SCAN |0x00010000 |지문 검출이 가능한 장치 인지 여부 [+ V2.7.1] | | ||
+ | |BS2_SUPPORT_FACE_SCAN |0x00020000 |얼굴 검출이 가능한 장치 인지 여부 'FS2, FL' [+ V2.7.1] | | ||
+ | |BS2_SUPPORT_FACE_EX_SCAN |0x00040000 |얼굴 검출이 가능한 장치 인지 여부 'FSF2' [+ V2.7.1] | | ||
+ | |BS2_SUPPORT_ALL |0x0000000F |추가 정보 전체 제공 여부 | | ||
+ | </WRAP> | ||
+ | |||
+ | 2. //reserved// \\ | ||
+ | 예약된 공간입니다. \\ | ||
+ | |||
==== BS2ResourceElement ==== | ==== BS2ResourceElement ==== | ||
<code cpp> | <code cpp> | ||
줄 193: | 줄 252: | ||
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// \\ | ||
+ | 예약된 공간입니다. \\ | ||
+ |