Skip to content

Commit

Permalink
3.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
willmorgan committed Feb 1, 2022
1 parent 49938eb commit 844e468
Show file tree
Hide file tree
Showing 3 changed files with 86 additions and 33 deletions.
37 changes: 37 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,37 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## 01.02.2022 3.4.0

## Fixed

- **UI** - Fixed an issue where the UI scaled incorrectly when shifting between orientations and resizing the window
- **UI** - We've reduced the "page jank" when resizing the UI, when the window resizes change or the phone rotates

## Changes

- **UI** - We've smoothed out the "move closer" prompt to avoid toggling between two UI states.
- **Timeouts** - We now handle timeout logic in a much clearer way:
- The SDK emits an error event with feedback code `error_token_timeout` if the user starts the iProov session too late.
- As before, if the user starts iProoving but doesn't stream imagery in time, the SDK emits a failure event with the
feedback code `failure_user_timeout`.
- **Error messaging** and **language** - We've increased the level of detail, see `iproov-en.json` for the new strings:
- When the SDK runs any of the following callbacks: `error`, `cancelled`, `interrupted`, `permission_denied`, `no_camera` or `unsupported`:
- The language string mapping to the `feedback` event property is now displayed as the heading.
- A new language string has been added for each `feedback` code, suffixed with `_message`.
- Example: `error_no_camera` is the heading term, defaulting to "We couldn't find a camera connected to your device"
- Example: `error_no_camera_message` is the text term displayed beneath the heading, defaulting to "A camera must be available to use iProov"
- If your integration specifies language strings but doesn't implement the new `_message` suffix, then we fall back to the old behaviour:
- Heading using the "error" language term, and text using the corresponding feedback code's language term.

## Added

- **Genuine Presence Assurance** - added reflection strength estimation capabilities
- **Language strings**:
- `error_token_timeout` and `error_token_timeout_message` when sessions don't start within 10 minutes of token create
- `iproov_ready_title` to allow internationalisation of "Ready to iProov" on the ready callback
- `iproov_ready_button` to allow internationalisation of "Scan face" for the ready callback button

## 14.01.2022 3.3.8

## Fixed
Expand All @@ -26,6 +57,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

- **Native bridge** - fixed an issue with possible interplay with Zone.js

## 22.12.2021 3.3.7

## Fixed

- **Native bridge** - fixed an issue with possible interplay with Zone.js

## 09.12.2021 3.3.6

## Fixed
Expand Down
39 changes: 20 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# iProov Biometrics Web SDK v3.3.8
# iProov Biometrics Web SDK v3.4.0

## 📖 Table of contents

Expand Down Expand Up @@ -180,8 +180,8 @@ You can set a custom close button by setting a valid URI as below:

```html
<iproov-me
token="***YOUR_TOKEN_HERE***"
close_button="https://www.materialui.co/materialIcons/navigation/close_black_72x72.png"
token="***YOUR_TOKEN_HERE***"
close_button="https://www.materialui.co/materialIcons/navigation/close_black_72x72.png"
></iproov-me>
```

Expand Down Expand Up @@ -212,16 +212,16 @@ You can customise the look and feel of the main layout by changing the following
```javascript
{
header_background_color: "rgba(0, 0, 0, .68)", // Header area - usually grey, encloses title and close button
header_text_color: "#fff", // Header text
footer_background_color: "rgba(0, 0, 0, .68)", // Footer area
footer_text_color: "#fff", // Footer text
progress_bar_color: "#000", // GPA progress bar. Positioned above the footer and behind the text.
loading_tint_color: "#5c5c5c", // The app is connecting to the server or no face found. Default: grey.
not_ready_tint_color: "#f5a623", // Cannot start iProoving until the user takes action (e.g. move closer, etc). Default: orange.
ready_tint_color: "#01bf46", // Ready to start iProoving. Default: green.
oval_scanning_color: "#fff", // The colour of the oval while scanning in GPA.
liveness_tint_color: "#1756e5", // Liveness tint colour. Default: blue.
liveness_scanning_tint_color: "#5c5c5c", // Liveness is scanning. Default: lightGrey.
header_text_color: "#fff", // Header text
footer_background_color: "rgba(0, 0, 0, .68)", // Footer area
footer_text_color: "#fff", // Footer text
progress_bar_color: "#000", // GPA progress bar. Positioned above the footer and behind the text.
loading_tint_color: "#5c5c5c", // The app is connecting to the server or no face found. Default: grey.
not_ready_tint_color: "#f5a623", // Cannot start iProoving until the user takes action (e.g. move closer, etc). Default: orange.
ready_tint_color: "#01bf46", // Ready to start iProoving. Default: green.
oval_scanning_color: "#fff", // The colour of the oval while scanning in GPA.
liveness_tint_color: "#1756e5", // Liveness tint colour. Default: blue.
liveness_scanning_tint_color: "#5c5c5c", // Liveness is scanning. Default: lightGrey.
}

```
Expand All @@ -230,10 +230,10 @@ The example below changes the default grey no face to `#4293f5` (blue), giving f

```html
<iproov-me
token="***YOUR_TOKEN_HERE***"
loading_tint_color="#4293f5"
not_ready_tint_color="rgb(245, 66, 66)"
ready_tint_color="purple"
token="***YOUR_TOKEN_HERE***"
loading_tint_color="#4293f5"
not_ready_tint_color="rgb(245, 66, 66)"
ready_tint_color="purple"
></iproov-me>
```

Expand Down Expand Up @@ -467,7 +467,7 @@ Properties of the event's **detail** payload:
| **is_native_bridge** | All | Boolean value if event originates from the native bridge |

> - - The `frame` property is for UI/UX purposes only and is only available if enabled on your service provider and token configuration. Imagery upon which authentication may later rely must be obtained from the token validate endpoint by a secure server-to-server call.
> † - The **type** and **frame** properties are not available when running in Native Bridge mode.
> † - The **type** and **frame** properties are not available when running in Native Bridge mode.
In the case of the **cancelled**, **interrupted**, **failed**, **error** and **unsupported** events, the _feedback_ code can be used for dealing with special cases, and the _reason_ can be displayed to the user. The following are possible responses:

Expand All @@ -484,7 +484,7 @@ In the case of the **cancelled**, **interrupted**, **failed**, **error** and **u
| **error_camera_in_use** | The camera is already in use and cannot be accessed | _error_ |
| **error_camera_not_supported** | The camera resolution is too small | _error_ |
| **error_device_motion_unsupported** | Your device does not seem to fully report device motion | _error_ |
| **error_expired_token** | The token has already been used or has expired | _error_ |
| **error_expired_token** | Token expired because it wasn't claimed in time | _error_ |
| **error_fullscreen_change** | Exited fullscreen without completing iProov | _cancelled, interrupted_ |
| **error_invalid_token** | The token is invalid | _error_ |
| **error_network** | Network error | _error_ |
Expand All @@ -498,6 +498,7 @@ In the case of the **cancelled**, **interrupted**, **failed**, **error** and **u
| **motion_too_much_movement** | Please keep still | _failed_ |
| **network_problem** | Sorry, network problem | _error_ |
| **sdk_unsupported** | The SDK has passed end of life and is no longer supported | _error_ |
| **user_timeout** | The user started the claim but did not stream in time | _failed_ |

### Listeners

Expand Down
43 changes: 29 additions & 14 deletions iproov-en.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,38 @@
"client_camera": "There was an error getting video from the camera",
"enrol": "Enrol",
"error": "Error",
"error_asset_fetch": "Unable to fetch assets",
"error_camera": "Camera error",
"error_camera_in_use": "The camera is already in use and cannot be accessed",
"error_asset_fetch": "Transaction setup problem",
"error_asset_fetch_message": "We had a network problem setting up this transaction; please check your device connection and try again.",
"error_camera": "There was a problem accessing your camera",
"error_camera_message": "We encountered an unknown camera error. Please try closing other applications using the camera and try again.",
"error_camera_in_use": "Your camera is already in use",
"error_camera_in_use_message": "Please try closing other applications using the camera and try again.",
"error_camera_not_supported": "The camera you are using isn't supported",
"error_camera_permission_denied": "Camera permission denied",
"error_camera_permission_denied_message": "Permission to access the camera has been denied. Please allow camera access to use iProov. If you have already allowed access, please reload the page.",
"error_camera_not_supported_message": "We couldn't request a high enough quality video from your camera.",
"error_camera_permission_denied": "Permission to access the camera has been denied",
"error_camera_permission_denied_message": "Please allow camera access, then reload the page for the settings to take effect.",
"error_device_motion_denied": "Device motion permission denied",
"error_device_motion_denied_message": "Permission to access device motion has been denied. Please allow device motion access to use iProov. You may need to reload the page or reopen the tab.",
"error_device_motion_unsupported": "Your device does not seem to fully report device motion",
"error_fullscreen_change": "Exited full-screen without completing iProov",
"error_expired_token": "The token has already been used or has expired",
"error_invalid_token": "The token is invalid",
"error_device_motion_unsupported_message": "Some devices do not support device motion, please try using another device.",
"error_fullscreen_change": "Cancelled",
"error_fullscreen_change_message": "Exited full-screen without completing iProov, please try again.",
"error_token_timeout": "Your session did not start in time",
"error_token_timeout_message": "This normally happens if your session didn't start in time. Please try again.",
"error_invalid_token": "Your token is invalid",
"error_invalid_token_message": "This usually happens when your iProov configuration isn't correct. Please check and try again.",
"error_network": "Network error",
"error_no_camera": "No Camera Detected",
"error_no_camera_message": "A camera must be available to use iProov",
"error_network_message": "We couldn't stream your video fast enough; please check your device's connection and try again.",
"error_no_camera": "We couldn't find a camera connected to your device",
"error_no_camera_message": "A camera must be available to use iProov.",
"error_no_face_found": "No face could be found",
"error_no_face_found_message": "Please ensure your camera is front facing and is not covered or blocked.",
"error_not_supported": "Unsupported",
"error_not_supported_message": "Your device is not supported",
"error_not_supported_message": "We can't access your device's sensors to iProov you. Please check your device and settings before trying again.",
"error_server": "Server error",
"error_too_many_requests": "Sorry, this service is exceptionally busy right now; please try again later.",
"error_server_message": "Sorry, but there was an error with the service. Please try again.",
"error_too_many_requests": "Please try again later",
"error_too_many_requests_message": "Sorry, this service is exceptionally busy right now; please try again later.",
"failed": "Failed",
"failure_ambiguous_outcome": "Ambiguous outcome",
"failure_lighting_backlit": "Strong light source detected behind you",
Expand All @@ -33,6 +47,8 @@
"failure_motion_too_much_movement": "Please do not move while iProoving",
"failure_network_problem": "Sorry, network problem",
"failure_user_timeout": "Your session has expired",
"iproov_ready_title": "Ready to iProov",
"iproov_ready_button": "Scan face",
"iproov_success": "You have iProoved successfully",
"label_camera_selector": "Choose camera:",
"iframe_bridge_title": "Ready to iProov",
Expand All @@ -51,7 +67,7 @@
"prompt_connecting": "Connecting…",
"prompt_get_ready": "Get ready…",
"prompt_grant_permission": "Grant Camera Access",
"prompt_grant_permission_message": "Camera access must be granted to use iProov",
"prompt_grant_permission_message": "Camera access must be granted to use iProov.",
"prompt_genuine_presence_align_face": "Put your face in the oval",
"prompt_kiosk_align_face": "Put your face in the oval",
"prompt_kiosk_keep_still": "Keep still",
Expand All @@ -69,6 +85,5 @@
"prompt_too_right": "Move left",
"prompt_increase_screen_brightness": "Increase screen brightness",
"prompt_poor_lighting_conditions": "Move away from bright light",
"prompt_calibrating": "Calibrating…",
"sdk_unsupported": "The SDK has passed end of life and is no longer supported"
}

0 comments on commit 844e468

Please sign in to comment.