Release Notes
Have a feature request? Contact us
2.0.0 - 2022/05/17
Breaking Changes
Extensive UI overhaul of all components and functionality.
Passive Component:
Removed all localization options for a future localization overhaul.
Removed useModal parameter from passive component (As part of the UI overhaul, there is no longer a modal option).
Removed readonlyMode parameter from passive component (The same functionality can now be achieved by using the newly added wizard component).
Removed returnImage parameter from passive component (The image is now always included on the result).
Visual UI overhaul.
Result Component:
Removed all localization options for a future localization overhaul.
Changed the onRetry event to onRetake.
Visual UI overhaul.
JavaScript API configuration options:
Changed passiveLivenessParamName property to passiveLivenessImageParamName
Adjusted blurThreshold property default value from 7.0 to 7.5 in order to account for new dimensions.
Added blurThresholdMobileModifier property with a default value of 1.25 in order to apply different thresholds on different platforms. This is to account for the fact that mobile devices generally have better quality cameras and may be more strict with blur detection.
Changed faceDistancePortratThreshold property from 0.75 to 0.5
Changed messageSuccess property default value from 'Good job!' to 'Good job! Please wait...' to cater for video recording.
Added messageIncompatibleVideo property for instances where video recording is not supported.
Added showDebugOverlay property.
Changes & additions
Added WizardComponent with additional components to allow for a configurable flow:
PrepareComponent
DeviceSelectComponent
Added optional parameters to the getVideoInputDevices function on the API to specify whether or not the UI should be blocked while loading input devices, along with the capability to specify an element to block.
Added checks for video recording feature availability on compatibility check function.
1.6.3 - 2022/04/04
Changes & additions
Added capability to record video. In the configuration options section, please see the following properties for details on how to make use of this feature:
includeVideo
videoDuration
messageHold
passiveLivenessVideoParamName
Added a
video
property to the passive liveness result object that gets populated whenincludeVideo
is set totrue
.Removed the
returnImage
property from the passive liveness call and changed it to always be included. This is to reduce clutter and align video and image data return behavior.Added threshold reduction functionality that can be applied if face tracking fails to detect a face for an extended period of time. See
thresholdAdjustInterval
andthresholdAdjustAmount
properties under configuration options.
Bug fixes
Fixed a bug on Firefox where emulation detection using the facing mode executed incorrectly.
1.6.2 - 2022/02/24
Changes & additions
Added the capability to cater for disabilities during liveness detection, specifically for lost eyes.
Added emulation checks.
Added a property on liveness detection results to indicate which camera was used.
Bug fixes
Fixed a bug where certain error responses were handled like a success.
1.6.1 - 2022/01/17
Changes & additions
Added a
returnImage (boolean)
parameter to theopenPassiveLivenessDetection
function ofSybrin.Biometrics.Api
(defaultfalse
). When set totrue
, the selfie image will be returned on thePassiveLivenessResult
as a data URI string.Added a
returnImage (boolean)
parameter to the constructor of the Passive Component (defaultfalse
). When set totrue
, the selfie image will be returned on thePassiveLivenessResult
as a data URI string.
1.6.0 - 2022/01/13
Changes & additions
The SDK is now provides two different options for referencing the main library:
A singular file that contains all functionality (sybrin.biometrics.all.js). This matches implementations from previous versions.
A split approach where Biometrics specific functionality is provided in one file (sybrin.biometrics.js) and common functionality shared by other Sybrin web SDKs is provided in another (sybrin.common.js). This approach is new and is intended to reduce the overall page size in solutions that make use of multiple Sybrin web SDKs by including common functionality only once.
1.5.0 - 2021/12/02
Changes & additions
Added device selection functionality.
1.4.2 - 2021/11/19
Changes & additions
Added configuration to integrate with the companion Sybrin Onboarding API as a middleware proxy when bundled with the web SDK. These configuration options include
useIntegrationApi
,integrationApiBaseUrl
andauthToken
.Added a
passiveLivenessBodyValues
configuration option to pass down additional form body values during the passive liveness API call, similar to thepassiveLivenessHeader
configuration option.
1.4.1 - 2021/11/10
Changes & additions
Changed the Passive Component's internal error handling to always trigger the
onLivenessResult
event, even after anonLivenessError
event occurred. While not a breaking change, this could have an external effect on flows where the web SDK has been implemented, specifically where the Passive Component'sonLivenessResult
andonLivenessError
events are used to manage flow steps.Added an
eyeDetectionThreshold
configuration option for adjusting eye detection sensitivity.The values set in the
passiveLivenessHeaders
configuration option will now be included in debug information when used.
Bug fixes
Fixed some internal memory cleanup errors.
Fixed an issue that caused the web SDK to stop working when re-initializing the JavaScript API.
1.4.0 - 2021/10/12
Breaking changes
Face detection technique has changed and no longer uses the same detection models as before. Please ensure that you have the new model files as listed in the Get Started section.
Removed
faceDetectionModel
as well asfaceDetectionScoreThreshold
configuration option.Removed
faceDistanceThreshold
configuration option and replaced it withfaceDistanceLandscapeThreshold
andfaceDistancePortraitThreshold
respectively for different orientations.
Changes & additions
Added eye detection features, along with
messageEyeClosed
configuration option.Changed
messageAlignment
configuration option default value from "Please center face and open your eyes" to "Please center face".Added debug functionality features, along with
recordDebugInfo
anddebugInfoEndpoint
configuration options.Added a
tokenTimeout
configuration option that determines how long a token is valid and will be reused for before a new authentication call is made.Increased the default blur threshold from 5.5 to 7.0 (see
blurThreshold
under the API configuration options).Enhanced performance by adding preprocessing to downscale the image that is analyzed for viability.
Added
targetProcessingSize
configuration option to set the target value of the largest dimension that the image will be resized to during preprocessing.Added compatibility check features, along with
messageIncompatible
andmessageIncompatibleSafari
configuration options.
Bug fixes
Fixed a bug where the modal didn't take up the whole screen when the component was hosted in certain containers.
1.3.0 - 2021/09/28
Breaking changes
The default model files have been renamed in order to allow for multiple models to choose from. Please see the Get Started section for an overview of the new file structure, as well as the updated API configuration options for details on how to configure model usage via the
faceDetectionModel
property. The new names for the files are:assets/express-model-shard1.xml
assets/express-model-weights_manifest.json
Changes & additions
Added a more accurate, but larger model for face detection that can optionally be used instead of the default express model. This can be configured via the
faceDetectionModel
property on the API configuration options.Added a strongly typed
ClientInfo
class that is now returned by thegetClientInfo
call.Added more detailed information to be returned from
getClientInfo
.Added custom header configuration for authentication (
authHeaders
) and passive liveness (passiveLivenessHeaders
) API calls that can be set using the API configuration options.Changed the default blur text to "Image too blurry" (see
messageBlurry
under the API configuration options).Changed the default message when no face is detected to "Scanning for face..." (see
messageNoFace
under the API configuration options).Significantly reduced the default face detection score threshold from 0.5 to 0.15 (see
faceDetectionScoreThreshold
under the API configuration options).Slightly increased the default blur threshold from 5.0 to 5.5 (see
blurThreshold
under the API configuration options).
Bug fixes
Fixed a memory leak that occurred while the video feed was being processed.
Fixed a bug where resizing while the video feed is already open would not properly adjust processing areas.
Fixed a bug on iPad where the video feed was blank.
Fixed a bug on iPad where the video cutout would sometimes not re-render correctly on resize or orientation change.
Fixed some exceptions not being handled properly.
Fixed media stream remaining open for longer than necessary after a photo was successfully taken.
Fixed styling being applied to some elements too strictly (would have needed to use !important to style said elements before).
1.2.0 - 2021/09/10
Breaking changes
Changed all
onBeforeWebcam
events toonBeforeLiveness
.
Changes & additions
Inverted the video feed when a frontal camera is being used in order to improve the alignment process.
Added typings for Typescript. These can be found under the
src
folder.The library no longer requires
sybrin.biometrics.css
to be included and referenced separately for default component styling to take effect. You may still apply overrides using your own stylesheet by referencing a custom .css file after the library.Added a read-only mode to the passive component which disables all events.
Added an option to set request headers for asset retrieval requests.
Bug fixes
Fixed a bug where an error occurred if the SDK was included multiple times.
Fixed a bug where the
correlationId
property was required to be passed down to the passive component.
1.1.0 - 2021/08/20
Changes & additions
Added blur detection as well as a configuration option to set the blur threshold.
Added lighting detection as well as configuration options to set values and thresholds to use when checking for image overexposure or underexposure.
Added facial distance detection as well a configuration option to set the distance threshold.
Removed hold delay before image is taken as new quality detection negates the need for it. With this, also removed
holdDelay
,messageHold
andmessageAbort
configuration options as they are no longer used.Added version info retrieval functionality.
Added client info retrieval functionality.
Added instructions page to the passive component in order to pre-emptively give the user some guidelines on how to ensure a viable selfie.
Added localization options to passive component initialization for changing guideline instruction texts.
Added
useModal
configuration option to the passive component which enables launching the video feed in a modal.Added a spinner that appears when a selfie is being processed during passive liveness detection.
Slightly tweaked the face bounding box borders to fit better vertically.
Updated the demo application to make use of the newly added client info retrieval functionality and initialize the passive component to use the newly added modal functionality only when the client environment is not mobile.
Bug fixes
Ensured that the video stream always closes when the passive component is destroyed.
Last updated