Kiosk Mode
Kiosk Mode, available on iDFace Max, replaces the device's main screen with a customizable interface, with configurable header, messages, colors, icons, and buttons. The buttons are managed through the kiosk_buttons object and can perform actions such as opening the SIP intercom contact list, unlocking the door by PIN, or reading a QR code.
Kiosk Mode Configurations
General settings of the kiosk mode. The parameters below belong to the guiFaceID module and can be changed through the set_configuration.fcgi command.
| Field | Type | Description |
|---|---|---|
| kiosk_mode_enabled | int | Enables or disables Kiosk Mode. Values: "0" for disabled and "1" for enabled. |
| kiosk_header_title | string | Main text message displayed in the header of the main screen. |
| kiosk_header_subtitle | string | Secondary text message displayed in the header of the main screen. |
| kiosk_message_title | string | Main text message displayed in the middle of the main screen. |
| kiosk_message_subtitle | string | Secondary text message displayed in the middle of the main screen. |
| kiosk_text_color | string | Text color of all text displayed on the main screen. The value should be a hexadecimal color prefixed with #. |
| kiosk_device_name | string | Device name text displayed in the top bar of the main screen. |
| kiosk_general_icons_color | string | Color of all icons displayed on the main screen and derived screens. The value should be a hexadecimal color prefixed with #. |
Request example
This request configures the Kiosk Mode parameters.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"guiFaceID": {
"kiosk_mode_enabled": "1",
"kiosk_header_title": "The Pike",
"kiosk_header_subtitle": "227 Pane Road, Newington",
"kiosk_message_title": "Hi",
"kiosk_message_subtitle": "Detecting\nFace or QR code...",
"kiosk_text_color": "#FFFFFF",
"kiosk_device_name": "ACCESS",
"kiosk_general_icons_color": "#000000"
}
}
)
});
GET /get_kiosk_icons_list.fcgi
Gets a list of icons uploaded for Kiosk Mode.
Parameters
- This request has no parameters.
Response
- icons (array): An array of objects containing the filename of each icon.
- max_files (int): Indicates the maximum number of icons.
Request example
$.ajax({
url: "/get_kiosk_icons_list.fcgi?session=" + session,
type: 'GET'
});
Response example
{
"icons": ["mykioskicon"],
"max_files": 4
}
GET /get_kiosk_icon.fcgi
Gets the file of the selected icon.
Parameters - filename (string): File name.
Response * The icon image file.
Request example
$.ajax({
url: "/get_kiosk_icon.fcgi?filename=mykioskicon&session=" + session,
type: 'GET'
});
POST /set_kiosk_icon.fcgi
Uploads an icon.
Parameters - filename (string): File name. * Icon image (binary) to be uploaded to the device.
Response - success (boolean): Indicates the success of the operation. - filename (string): Submitted file name.
Request example
$.ajax({
url: "/set_kiosk_icon.fcgi?filename=mykioskicon&session=" + session,
type: 'POST',
contentType: 'application/octet-stream',
processData: false,
data: image
});
Response example
{
"success": true,
"filename": "mykioskicon"
}
POST /delete_kiosk_icon.fcgi
Deletes an icon.
Parameters - filename (string): File name.
Response - success (boolean): Indicates the success of the operation.
Request example
$.ajax({
url: "/delete_kiosk_icon.fcgi?filename=mykioskicon&session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({})
});
Response example
{
"success": true
}
Authentication attempts lockout
In Kiosk Mode, it is possible to temporarily block PIN or QR code authentication after multiple consecutive failures. These parameters belong to the identifier module (see Configuration Parameters).
| Field | Type | Description |
|---|---|---|
| kiosk_block_enabled | int | Enables or disables the PIN or QR code lockout mechanism in case of multiple authentication failures. Values: "0" for disabled and "1" for enabled. |
| kiosk_max_attempts | int | Maximum number of authentication attempts before lockout. |
| kiosk_block_interval | int | Lockout duration in seconds. |
Request example
This request enables the lockout after 3 failed attempts, with a duration of 60 seconds.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"identifier": {
"kiosk_block_enabled": "1",
"kiosk_max_attempts": "3",
"kiosk_block_interval": "60"
}
}
)
});