"Call me" Service (callback request)
1 About the service
"Call me" is a callback service that can be used on your own websites – for example as a "Call me back" button. A visitor enters their phone number and is automatically called back from the customer's switchboard. The callback can be placed in a dedicated callback queue, where a lower weighting (priority) can be set, or in an existing queue used for incoming calls, if one wishes to prioritize them in the same way.
Because the service is open and available to anyone visiting the website, it is also a potential target for abuse – for example repeated calls to the same number, automated requests from the same source, or attempts to overload the switchboard. This document describes the configuration that governs the service, and the rules put in place to prevent such abuse.
The configuration must be set by the ITX Support.
Note A request must pass all rules in order to be approved. If it is rejected by even one rule, no new callback is created.
2 Rules to prevent abuse
2.1 Restriction per phone number
Quarantine (cooldown). Blocks new requests from a number if less time has passed than cooldown since the previous request. Prevents the same number from triggering many calls in quick succession.
Attempt limit within a time window (duration + maxTries). Blocks new requests from a number when the number of requests within the duration window has exceeded maxTries. Prevents the same number from being used repeatedly over time.
2.2 Restriction per IP address
The same rules also apply at the IP level. This catches abuse from a single source even if the sender switches between different phone numbers:
ipCooldown– minimum time between two requests from the same IP address.ipDuration+ipMaxTries– maximum number of requests from the same IP address within the time window.
2.3 Capacity protection (maxConcurrentCallbacks)
Blocks new requests if the number of callbacks already queued is equal to or greater than maxConcurrentCallbacks. Protects the switchboard against overload during high volume. If the value is not set in the configuration, the default value is used.
2.4 Blocklist (excludedNumbers)
Blocks new callbacks for numbers on the blocklist excludedNumbers. Used to exclude known abusers or unwanted numbers.
2.5 Format validation (numberFormat)
Blocks requests where the number is not valid according to the defined format – specified by length (length) and prefix (prefix). Prevents invalid and non-genuine submissions. For example, one can restrict to Norwegian phone numbers (+47).
3 Parameter overview
The table summarizes all parameters in the configuration.
| Parameter | Unit | Description |
|---|---|---|
duration | Hours | Time window for maximum number of attempts per number (used together with maxTries). |
cooldown | Minutes | Minimum time that must pass between two requests from the same number. |
maxTries | Count | Maximum number of requests per number within the duration window. |
ipDuration | Hours | Time window for maximum number of attempts per IP address (used together with ipMaxTries). |
ipCooldown | Minutes | Minimum time that must pass between two requests from the same IP address. |
ipMaxTries | Count | Maximum number of requests per IP address within the ipDuration window. |
maxConcurrentCallbacks | Count | Maximum number of callbacks that can be queued simultaneously on the corporationGroup. Default 50 if not set. |
numberFormat | length + prefix | Defines valid number format: expected length and prefix, e.g. Norwegian phone numbers. It is required to define one or more number formats. |
excludedNumbers | List | Numbers that are blocked from the service. |
testIpAddresses | List | IP addresses used for testing the service, e.g. the customer's own IP addresses. |
4 Making a callback request
When the necessary configurations have been set up, the following request can be executed to request a callback:
POST /rest/itxpbx/requestcallback
Example request
More properties available in the API specification
{
"number": "+4712345678",
"queueCode": "example-queue-code"
}