You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## How to use the library (Mobile SDK integration only, no API protection)
@@ -119,7 +119,7 @@ catch (QueueITException e) { } // Gets thrown when a request is already in progr
119
119
| eventIdOrAlias | Yes | Id of the waiting room or alias |
120
120
| layoutName | No (Waiting Room's default theme) | Layout name to use for the waiting room. If omitted, the Waiting Room's default layout will be used |
121
121
| language | No (Waiting Room's default language) | Language id to use for the waiting room. If omitted, the Waiting Room's default language will be used |
122
-
| waitingRoomDomain | No (`{customerId}.queue-it.net`) | Custom Waiting Room domain to use for the requests from Mobile to Queue-it. Can be a Proxy Domain, if you are using Bring Your Own CDN |
122
+
| waitingRoomDomain | No (`{customerId}.queue-it.net`) | Custom Waiting Room domain to use for the requests from Mobile to Queue-it. Can be a Proxy Domain, if you are running Queue-it Behind Proxy|
123
123
| queuePathPrefix | No (none) | Queue Path Prefix to use, if you are running Waiting Room on same domain as your normal website. Requires waitingRoomDomain to also be provided. If not, then this parameter will be ignored. |
124
124
| queueListener | Yes | Listener with callback functions. Must implement the `QueueListener` interface. |
125
125
| options | No (`QueueItEngineOptions.getDefault()`) | Allows you to configure the WebView used to show the Waiting Room. Can disable back button (default: disabled) and set a custom User Agent (default: "") |
@@ -175,7 +175,7 @@ Calling any of these methods will result in executing `onSuccess` or `onFailure`
175
175
| eventIdOrAlias | Yes | Id of the waiting room or alias |
176
176
| layoutName | No (Waiting Room's default theme) | Layout name to use for the waiting room. If omitted, the Waiting Room's default layout will be used |
177
177
| language | No (Waiting Room's default language) | Language id to use for the waiting room. If omitted, the Waiting Room's default language will be used |
178
-
| waitingRoomDomain | No (`{customerId}.queue-it.net`) | Custom Waiting Room domain to use for the requests from Mobile to Queue-it. Can be a Proxy Domain, if you are using Bring Your Own CDN |
178
+
| waitingRoomDomain | No (`{customerId}.queue-it.net`) | Custom Waiting Room domain to use for the requests from Mobile to Queue-it. Can be a Proxy Domain, if you are running Queue-it Behind Proxy|
179
179
| queuePathPrefix | No (none) | Queue Path Prefix to use, if you are running Waiting Room on same domain as your normal website. Requires waitingRoomDomain to also be provided. If not, then this parameter will be ignored. |
180
180
| queueITWaitingRoomProviderListener | Yes | Listener with callback functions. Must implement the `QueueITWaitingRoomProviderListener` interface. |
181
181
@@ -191,13 +191,13 @@ QueueITWaitingRoomView queueITWaitingRoomView = new QueueITWaitingRoomView(MainA
## Client-side mobile integration with Bring Your Own CDN
194
+
## Client-side mobile integration with Queue-it Behind Proxy (Bring your own CDN)
195
195
196
196
> Note: This only applies if you are using the Mobile SDK as a client-side protection only. I.e. this does not apply if you are protecting the API endpoints your Mobile app is using.
197
197
198
198
> If you have server-side Queue-it protection on your API endpoints, please see section [below](#mobile-sdk-integration-with-protected-api-queue-it-connector-on-server-side).
199
199
200
-
If you are running Queue-it with Bring Your Own CDN, on your own reverse proxy, the Mobile Integration can also be setup to run behind your reverse proxy.
200
+
If you are running Queue-it behind your own reverse proxy the Mobile Integration can also be setup to run behind your proxy.
201
201
202
202
To do this simply use your Proxy Domain as the `waitingRoomDomain` parameter to `QueueITEngine.run`. If you are running Queue-it Waiting Room on the same domain as your normal website, you also need to provide the `queuePathPrefix` parameter, to ensure your proxy can route the request to Queue-it origin.
# Using Queue-it server-side connector (KnownUser) to protect APIs, consumed by mobile app
2
-
3
2
If you are using Queue-it's server-side connector (KnownUser) to protect your API, you utilize this in your mobile app, to run a hybrid setup.
4
3
5
4
This greatly increases the protection and prevents visitors from bypassing the client-side Queue-it integration.
6
5
7
6
The flow in this setup is the following (simplified):
8
-
9
7
1. Mobile app calls API endpoints and includes the special Queue-it header
10
8
Endpoint is protected by Queue-it connector
11
9
2. Queue-it connector has Trigger/Condition setup to match an Integration Action/Rule, with Queue action-type
@@ -24,30 +22,28 @@ To integrate with a protected API we need to handle the validation responses tha
24
22
All calls to protected APIs need to include the `x-queueit-ajaxpageurl` header with a non-empty value and a Queue-it accepted cookie (if present).
25
23
The integration can be described in the following steps:
26
24
27
-
1. API Request with `x-queueit-ajaxpageurl`_or_ Queue-it accepted cookie is made
25
+
1. API Request with `x-queueit-ajaxpageurl`*or* Queue-it accepted cookie is made
28
26
2. We get a response which may either be the API response or an intercepted response from the Queue-it connector
29
27
3. Scenario 1, user should not be queued (response does not have the `x-queueit-redirect` header)
30
-
1. We store the Queue-it cookies from the response, to include in later API calls
28
+
1. We store the Queue-it cookies from the response, to include in later API calls
31
29
4. Scenario 2, user should be queued
32
-
1. If the user should be queued we'll get a `200 Ok` response with a `x-queueit-redirect` header. We need to extract the `c`(Customer ID) and `e` (Waiting Room ID) query string parameters from the `x-queueit-redirect` header and call `QueueITEngine.run` with them, just as you would normally do with the SDK
33
-
2. We wait for the `onQueuePassed` callback and we store the QueueITToken passed to the callback
34
-
3. We can repeat the API request, this time appending the `queueittoken={QueueITToken}` query string parameter, to prevent the server-side connector from intercepting the call again
35
-
4. We store the Queue-it cookies from the final response, so they can be set in other API calls
30
+
1. If the user should be queued we'll get a `200 Ok` response with a `x-queueit-redirect` header. We need to extract the `c`(Customer ID) and `e` (Waiting Room ID) query string parameters from the `x-queueit-redirect` header and call `QueueITEngine.run` with them, just as you would normally do with the SDK
31
+
2. We wait for the `onQueuePassed` callback and we store the QueueITToken passed to the callback
32
+
3. We can repeat the API request, this time appending the `queueittoken={QueueITToken}` query string parameter, to prevent the server-side connector from intercepting the call again
33
+
4. We store the Queue-it cookies from the final response, so they can be set in other API calls
## Client-side and server-side mobile integration (hybrid) with Bring Your Own CDN
40
-
41
-
> Note: This only applies if you are using the Mobile SDK as a client-side protection _and_ are using server-side protection using the Queue-it KnownUser Connector.
37
+
## Client-side and server-side mobile integration (hybrid) with Queue-it Behind Proxy (Bring your own CDN)
38
+
> Note: This only applies if you are using the Mobile SDK as a client-side protection *and* are using server-side protection using the Queue-it KnownUser Connector.
42
39
43
40
> If you are only using client-side protection, using the Mobile SDK, refer to the documentation in the [main documentation](https://github.com/queueit/android-webui-sdk/blob/master/README.md)
44
41
45
-
If you are running Queue-it with Bring Your Own CDN, on your own reverse proxy, the Mobile Integration can also be setup to run behind your reverse proxy. For the hybrid setup, your KnownUser connector will also need to run in "Bring Your Own CDN" mode. Please contract Queue-it Support, for any questions related to the KnownUser Connector setup with Bring Your Own CDN.
46
-
47
-
### Setup Mobile SDK with Bring Your Own CDN, with protected API
42
+
If you are running Queue-it behind your own reverse proxy the Mobile Integration can also be setup to run behind your proxy. For the hybrid setup, your KnownUser connector will also need to run in "Behind Proxy" mode. Please contract Queue-it Support, for any questions the KnownUser Connector Behind Proxy Setup.
48
43
44
+
### Setup Mobile SDK with Behind Proxy, with protected API
49
45
To do this simply use your Proxy Domain as the `waitingRoomDomain` parameter to `QueueITEngine.run`, after getting the Queue-it intercepted response back from your API.
50
46
51
47
If you are running Queue-it Waiting Room on the same domain as your normal website, you also need to provide the `queuePathPrefix` parameter, to ensure your proxy can route the request to Queue-it origin.
52
48
53
-
This means in ahove [Implementation](#implementation) section, point 4.1, you must also provide `waitingRoomDomain` and optionally `queuePathPrefix` to `QueueITEngine.run`, to serve the Waiting Room through your reverse proxy.
49
+
This means in ahove [Implementation](#implementation) section, point 4.1, you must also provide `waitingRoomDomain` and optionally `queuePathPrefix` to `QueueITEngine.run`, to serve the Waiting Room through your reverse proxy.
0 commit comments