Adding a waiting room¶
Note
If the optional attributes are not set, the system adds a default value.
Note
The body does not contain the attributes id, created, and modified. The system sets the values of these attributes after the entry is created.
Send a POST request to the /waiting-room endpoint.
Description¶
The Add-Waiting-Room request allows the user to add a waiting room for a subdomain of the organisation.
Requirements¶
Values of the request: none
Objects: WaitingRoomVO
Request¶
To add a waiting room, no additional information needs to be added to the path of the request.
All waiting rooms are added without reference to the subdomain for which the waiting room is defined.
For a detailed specification of which information is required to add a waiting room, an object WaitingRoomVO with the following attributes needs to be defined in the body:
| Attributes | Description | Values |
|---|---|---|
name |
The name of the waiting room. | string |
maxConcurrent |
The maximum number of visitors allowed to access the customer infrastructure at the same time. As soon as the value is exceeded, each additional visitor is directed to the waiting room. | integer |
sessionTimeout |
The duration in seconds for which an inactive session can access the customer infrastructure. If the session is not accessed again within this time, access for the session is disabled. | integer |
waitRefresh |
The duration in seconds after which the waiting page is reloaded. If the session is not accessed again after the third reload, it is removed from the queue. | integer |
vhostId |
The ID of the subdomains for which the waiting room is available. | integer |
content |
The HTML-Code for the waiting room template. | string |
The following attributes are optional:
| Attributes | Description | Values |
|---|---|---|
paths |
A path within the apex domain or subdomain to which the waiting room is to apply. The path must be defined as a regular expression. The default value in the PATH field is .. If the default value . is used as the path, the waiting pages and settings of all waiting rooms with a path of the corresponding apex domain or subdomain are overwritten. | string |
subDomainName |
The name of the subdomain for which the waiting room is available. | string |
The system responds by returning the object WaitingRoomVO with the information about the new entry.
Waiting room content¶
For each waiting room added via the waiting room function, a waiting page is saved. Initially, a default template is available for selection. You can also upload your own waiting page as a *.htm or *.html file. Placeholders ensure that the waiting page correctly shows all required information about the waiting room. A table with the most important placeholders is shown below:
| Variable name | Description |
|---|---|
!WAIT_REFRESH! |
Defines the number of seconds between page refreshes. This variable must be included as an http-equiv=refresh meta tag in the HTML head, so that the page reloads automatically and gives visitors feedback about their current position in the queue. |
!CURRENT_POSITION! |
Shows the visitor’s position in the queue. |
!SUBDOMAIN! |
Shows the host name without the protocol and path. |
!QUEUE_SIZE! |
Shows the total number of visitors in the queue. |
!QUEUE_PROGRESS! |
Shows the number of visitors behind the current person. Can be used to give visual feedback about the progress in the queue, for example via a progress bar. |
Example template¶
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="refresh" content="!WAIT_REFRESH!" />
<title>!SUBDOMAIN! Waiting Room</title>
<style>
body {
font-family: Arial, Helvetica, sans-serif;
font-optical-sizing: auto;
font-style: normal;
min-height: 100vh;
margin: 0;
}
.background {
background: linear-gradient(
133.66deg,
#7dff54 -13.21%,
#54ddc2 38.6%,
#003bcc 97.97%
);
display: flex;
justify-content: center;
align-items: center;
}
.card {
background-color: #ffffff;
width: clamp(400px, 60%, 800px);
}
.card-content {
padding: min(4vw, 40px);
}
.progress-bar {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
display: flex;
color: #003bcc;
width: 100%;
height: 8px;
}
Example¶
Example request body:
{
"name": "string",
"maxConcurrent": 0,
"sessionTimeout": 0,
"waitRefresh": 0,
"vhostId": 0,
"content": "string",
"paths": "string",
"subDomainName": "string"
}
Responses¶
The following responses are available:
| STATUS CODE | DESCRIPTION |
|---|---|
| 201 | The request has succeeded and a new object has been created. |
| 400 | The request was unsuccessful. The request was invalid or information is missing. |
| 401 | The request has not succeeded because the user authentication was incorrect. |
| 403 | The request has not succeeded because the user does not have the right permissions. |