Differences
This shows you the differences between two versions of the page.
en:release_note_263 [2019/05/17 13:11] yjjung |
en:release_note_263 [2023/08/17 13:36] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | FIXME **This page is not fully translated, yet. Please help completing the translation.**\\ //(remove this paragraph once the translation is finished)// | ||
- | |||
- | ===== Version 2.6.3 ===== | ||
- | ==== Date ==== | ||
- | 2019-05-13 | ||
- | \\ | ||
- | |||
- | ==== New Features ==== | ||
- | * Supports device XPass D2 Keypad | ||
- | * Supports IPv6 | ||
- | * Gets configured server port | ||
- | * Supports setting packet response time out | ||
- | * User enrollment API BS2_EnrollUser and BS2_EnrollUserEx have been added | ||
- | * API BS2UserSmallBlob/BS2UserSmallBlobEx for efficient use of memory in regards to large capacity of BS2UserBlob/BS2UserBlobEx (pointer processing of User Photo area) | ||
- | * Supports more than 1000 admin users | ||
- | |||
- | <text size="x-large">1.</text> Device XPass D2 Keypad is supported. | ||
- | |||
- | <text size="x-large">2.</text> IPv6 connection is supported. \\ | ||
- | When initialize SDK, IPv6 is disabled as default. | ||
- | |||
- | * Structure [[configuration api#BS2IPV6Config]] has been added | ||
- | * Structure [[device_api#BS2IPv6DeviceInfo]] has been added | ||
- | * API [[BS2_SetDebugExCallback]] has been added | ||
- | * API [[BS2_GetIPConfigViaUDPEx]] has been added | ||
- | * API [[BS2_SetIPConfigViaUDPEx]] has been added | ||
- | * API [[BS2_GetIPV6Config]] has been added | ||
- | * API [[BS2_SetIPV6Config]] has been added | ||
- | * API [[BS2_GetIPV6ConfigViaUDP]] has been added | ||
- | * API [[BS2_SetIPV6ConfigViaUDP]] has been added | ||
- | * API [[BS2_GetIPV6ConfigViaUDPEx]] has been added | ||
- | * API [[BS2_SetIPV6ConfigViaUDPEx]] has been added | ||
- | * API [[BS2_GetEnableIPV4]]: has been added | ||
- | * API [[BS2_SetEnableIPV4]]: has been added | ||
- | * API [[BS2_GetEnableIPV6]]: has been added | ||
- | * API [[BS2_SetEnableIPV6]]: has been added | ||
- | * API [[BS2_SetServerPortIPV6]]: has been added | ||
- | * API [[BS2_GetServerPortIPV6]]: has been added | ||
- | * API [[BS2_SetSSLServerPortIPV6]]: has been added | ||
- | * API [[BS2_GetSSLServerPortIPV6]]: has been added | ||
- | * API [[BS2_GetSpecifiedDeviceInfo]]: has been added | ||
- | * API [[BS2_SearchDevicesCoreStationEx]]: has been added | ||
- | |||
- | <text size="x-large">3.</text> The APIs getting server port have been added. | ||
- | |||
- | * API [[BS2_GetServerPort]] has been added | ||
- | * API [[BS2_GetSSLServerPort]] has been added | ||
- | <text size="x-large">4.</text> You can set packet response timeout with device. | ||
- | |||
- | * API [[BS2_SetDefaultResponseTimeout]] has been added | ||
- | * API [[BS2_GetDefaultResponseTimeout]] has been added | ||
- | |||
- | <text size="x-large">5.</text> BS2_EnrollUser and BS2_EnrollUserEx for user enrollment API have been added.\\ | ||
- | It is the exactly same as the existing BS2_EnrolUser and BS2_EnrolUserEx APIs but only changed to correct spelling. \\ | ||
- | |||
- | * API [[BS2_EnrollUser]] has been added | ||
- | * API [[BS2_EnrollUserEx]] has been added | ||
- | |||
- | <text size="x-large">6.</text> 사용자 구조체 [[user management api#BS2UserBlob]]과 [[user management api#BS2UserBlobEx]]의 멤버 [[user management api#BS2UserPhoto]]는 고정메모리를 갖도록 설계되어 있습니다.\\ | ||
- | photo 기능을 사용하지 않는 경우에도 적지않은 크기의 메모리를 고정적으로 사용하게 됩니다.\\ | ||
- | 송수신하는 사용자 수가 많지 않은 경우 크게 문제되지 않으나,\\ | ||
- | 사용자 수가 많아지면 차지하는 메모리의 크기도 비례적으로 커지게 되는 문제가 발생할 수 있습니다. \\ | ||
- | 2.6.3에서는 [[user management api#BS2UserPhoto]]의 포인터 처리를 통해, 보다 효율적으로 메모리를 사용할 수 있는 함수를 새롭게 추가하였습니다. | ||
- | |||
- | * 구조체 [[user management api#BS2UserSmallBlob]] 추가 | ||
- | * 구조체 [[user management api#BS2UserSmallBlobEx]] 추가 | ||
- | * 함수 [[BS2_EnrollUserSmall]] 추가 | ||
- | * 함수 [[BS2_EnrollUserSmallEx]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallInfos]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallDatas]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallInfosEx]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallDatasEx]] 추가 | ||
- | * 함수 [[BS2_VerifyUserSmall]] 추가 | ||
- | * 함수 [[BS2_IdentifyUserSmall]] 추가 | ||
- | * 함수 [[BS2_VerifyUserSmallEx]] 추가 | ||
- | * 함수 [[BS2_IdentifyUserSmallEx]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallInfosFromDir]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallDatasFromDir]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallInfosExFromDir]] 추가 | ||
- | * 함수 [[BS2_GetUserSmallDatasExFromDir]] 추가 | ||
- | |||
- | <text size="x-large">7.</text> 장치 관리자를 1000명까지 등록할 수 있도록 추가되었습니다.\\ | ||
- | 기존 [[configuration api#BS2AuthConfig]]를 이용하여 장치 관리자 등록 시, 10명의 관리자까지 허용된다는 한계가 있었습니다.\\ | ||
- | 2.6.3부터는 아래 새롭게 제공되는 함수를 통해 최대 1000명까지 관리자 등록이 가능합니다.\\ | ||
- | <callout type="warning" icon="true"> | ||
- | <wrap em>주의 사항</wrap> \\ | ||
- | 아래 새롭게 제공되는 함수를 호출하게되면,\\ | ||
- | 기존 BS2AuthConfig를 통해 관리되던 관리자 목록을 1000명의 관리자 지원이 가능한 장소로 안전하게 이동시키고,\\ | ||
- | 해당 장소를 통해 장치관리자들을 관리하게 됩니다.\\ | ||
- | 이후부터는 아래의 새롭게 제공되는 함수들만을 이용하여 장치관리자를 관리해야 합니다.\\ | ||
- | 그리고 기존의 BS2AuthConfig를 통한 관리자 설정은 무시되어집니다.\\ | ||
- | \\ | ||
- | 아래의 장치관리자 확장용 신규함수가 호출되어지지 않는다면\\ | ||
- | 기존의 BS2AuthConfig 관련 함수를 통한 관리자 설정은 유효합니다. | ||
- | </callout> | ||
- | |||
- | * 구조체 [[device_api#BS2AuthOperatorLevel]] 추가 | ||
- | * 함수 [[BS2_GetAuthOperatorLevelEx]] 추가 | ||
- | * 함수 [[BS2_GetAllAuthOperatorLevelEx]] 추가 | ||
- | * 함수 [[BS2_SetAuthOperatorLevelEx]] 추가 | ||
- | * 함수 [[BS2_RemoveAuthOperatorLevelEx]] 추가 | ||
- | * 함수 [[BS2_RemoveAllAuthOperatorLevelEx]] 추가 | ||
- | |||
- | \\ | ||
- | ==== 수정 기능 ==== | ||
- | |||
- | <text size="x-large">1.</text> Firmware file 업그레이드 시, Code sign 체크를 장치에서 수행하였으나, 이후 SDK에서 수행하도록 수정되었습니다.\\ | ||
- | 따라서 부적절한 firmware file의 경우 보다 빠르게 오류를 반환할 수 있게되었습니다. | ||
- | |||
- | * 함수 [[BS2_UpgradeFirmware]] 참조 | ||
- | |||
- | <text size="x-large">2.</text> 소켓이 연결된 후 바로 끊어지게되면, 간헐적으로 모든 통신이 동작되지 않을 수 있는 문제를 수정하였습니다. \\ | ||
- | |||
- | <text size="x-large">3.</text> 다수의 장치가 동시에 SSL 연결 시도 시, 간헐적으로 통신이 연결되지 않을 수 있는 문제를 수정하였습니다. \\ | ||
- | |||
- | <text size="x-large">4.</text> 장치 검색 시 간헐적으로 crash되는 문제를 수정하였습니다. \\ | ||
- | |||
- | * 함수 [[BS2_SearchDevicesEx]] 참조 | ||
- | |||
- | <text size="x-large">5.</text> SDK 라이브러리의 사용종료 또는 라이브러리 내의 리소스 재할당을 위한 메모리 반납 단계에서\\ | ||
- | 간헐적으로 무응답(hang) 현상이 나타날 수 있는 문제를 수정하였습니다. \\ | ||
- | |||
- | * 함수 [[BS2_ReleaseContext]] 참조 | ||
- | * 함수 [[BS2_SetMaxThreadCount]] 참조 | ||
- | |||
- | <text size="x-large">6.</text> iClass SEOS 카드 장치에서 card config 취득 시 잘못된 오류(BS_SDK_ERROR_NOT_SUPPORTED)를 반환하는 문제를 수정하였습니다. \\ | ||
- | |||
- | * 함수 [[BS2_GetCardConfigEx]] 참조 | ||
- | |||
- | <text size="x-large">7.</text> 서로 다른 SSL 인증서 파일을 사용하는 장치들에서 동시에 SSL 연결 시도 시, 간헐적으로 연결이 되지 않는 문제를 수정하였습니다. \\ | ||
- | |||
- | <text size="x-large">8.</text> Lift control에서 잘못된 floor level을 가져오는 문제를 수정하였습니다. \\ | ||
- | |||
- | * 함수 [[BS2_GetFloorLevel]] 참조 | ||
- | |||
- | <text size="x-large">9.</text> 서버 매칭 사용 시 지문 template이 384byte로 고정되어 있던 제약을 수정하였습니다. \\ | ||
- | |||
- | <text size="x-large">10.</text> Slave 장치에서 지문관련 일부 함수가 동작되지 않는 문제를 수정하였습니다. \\ | ||
- | |||
- | * 함수 [[BS2_ScanFingerprint]] 참조 | ||
- | * 함수 [[BS2_VerifyFingerprint]] 참조 | ||
- | |||
- | <text size="x-large">11.</text> 장치 별로 지원하는 장치설정과 지원하지 않는 장치설정이 다를 수 있는데, \\ | ||
- | 특정 설정을 지원하지 않는 장치로부터 설정을 가져오는 경우 timeout까지 기다리는 부분을\\ | ||
- | BS_SDK_ERROR_NOT_SUPPORTED를 반환하도록 수정하였습니다. | ||
- | |||
- | * 함수 [[BS2_GetConfig]] 참조 | ||
- | |||
- | <text size="x-large">12.</text> Access schedule 설정 호출 시, 호출 이후 정상적으로 호출 결과를 반환받지 못하는 문제를 수정하였습니다. \\ | ||
- | |||
- | * 함수 [[BS2_SetAccessSchedule]] 참조 | ||
- | |||
- | <text size="x-large">13.</text> 장치가 서버모드로 연결 시, 처리방식을 동기식에서 비동기식으로 처리되도록 수정하였습니다. \\ | ||
- | |||
- | <text size="x-large">14.</text> SDK 초기화 단계에서 열기에 실패한 소켓을 정리하도록 수정하였습니다. \\ | ||
- | |||
- | <text size="x-large">15.</text> SSL 연결 종료 시 SSL 리소스를 정리하도록 수정하였습니다. \\ | ||
- | |||
- | <text size="x-large">16.</text> Socket에서 패킷 송수신 시 성능을 개선하였습니다.\\ | ||
- | (오류 발생 시 5ms 간격으로 재시도. 10회의 재시도 또는 100ms 이상 오류 지속 시 끊김 처리)\\ | ||
- | |||
- | <text size="x-large">17.</text> 이벤트 처리 thread 생성 함수의 인자의 의미를 조정하였습니다. \\ | ||
- | [[BS2_SetMaxThreadCount]] (2.6.3 이전):\\ | ||
- | 인자 값이 이벤트 처리 thread의 수만을 의미하지 않았습니다.\\ | ||
- | 실제로는 timer(2), server matching(1), notification(1), TCP/UDP 처리 각(1)\\ | ||
- | 총 6개의 예약 thread를 포함한 이벤트 처리 thread수를 지정해야했습니다.\\ | ||
- | 인자로 지정되는 thread의 최소값은 8이었습니다.\\ | ||
- | 실제 인자 값 8을 설정하면 내부적으로 예약 thread 총 6개를 뺀 실제 이벤트 처리 thread 수 2개를 설정하였습니다.\\ | ||
- | \\ | ||
- | [[BS2_SetMaxThreadCount]] (2.6.3 이후):\\ | ||
- | 인자로 지정하는 thread수가 이벤트 처리용 thread 수를 의미합니다. 따라서 최소값은 2입니다. | ||
- | <WRAP group> | ||
- | ^함수 ^초기값(이전) ^최소값(이전) ^초기값(이후) ^최소값(이후) ^ | ||
- | |BS2_SetMaxThreadCount |MAX(NumberOfCpuCores*5, 15) |8 |MAX(NumberOfCpuCores*5, 15) |2 | | ||
- | |BS2_SetMaxConnectThreadCount |8 |1 |8 |1 | | ||
- | </WRAP> | ||
- | |||
- | <text size="x-large">18.</text> 동일한 IP의 장치인 경우 복수 연결을 허용하지 않았으나, 동일 IP라도 다른 port인 경우 연결을 허용하도록 수정되었습니다. \\ | ||
- | |||
- | <text size="x-large">19.</text> [C#예제] BS2Door의 멤버 alarmFlags를 unconditionalLock으로 수정되었습니다. \\ | ||
- | |||
- | <text size="x-large">20.</text> [C#예제] BS2SoundAction 크기 변경 및 delay 멤버가 추가되었습니다. \\ | ||
- | |||
- | <text size="x-large">21.</text> [C#예제] LogControl에서 BS2_GetLogBlob의 BS2EventMaskEnum.JOB_CODE가 BS2EventMaskEnum.ALL로 수정되었습니다.\\ | ||
- | |||
- | <text size="x-large">22.</text> [C#예제] CardControl에서 불필요한 blacklist 코드를 제거하였습니다. \\ | ||
- | |||
- | <text size="x-large">23.</text> [C#예제] ConfigControl에서 BS2_SetDstConfig의 잘못된 코드 startTime.weekDay를 endTime.weekDay로 수정하였습니다.\\ | ||
- | |||
- | <text size="x-large">24.</text> [C#예제] SlaveControl에서 slave device에 대한 예제코드가 추가되었습니다. \\ | ||