Number Pool

From Kolmisoft Wiki
Jump to navigationJump to search


Number Pool is array of various numbers. Number Pool can be used for Device or Provider as CallerIDs. This functionality gives you an ability to send different caller number on each Call. When Number Pool is chosen as CallerID in Device or Provider, during the Call system takes random number from all array of numbers which belongs to selected Number Pool. It is useful if you want to send different CallerID on each Call even if it is made from same Device.

Number Pools are also used in Static Blacklist/Whitelist to deny/allow specific numbers or prefixes.


Go to SETTINGS –> Billing –> Functions –> Number Pools

Number pool path.png

Here you are able to see list of all Number Pools which you have:

Number pool list.png

Also you can Icon add.pngAdd new Number Pool, Icon edit.png edit or delete old one. Click on details icon to see array of numbers in chosen Number Pool.

Number pool numbers.png

Here you are able to add new numbers from GUI or import from file (any number, leading "+" or "#" or a "%" wildcard is allowed in a number), delete the old ones or search for specific ones in a list. Wildcards such as "%" or "_" are available to use in the search form (e.g. search for "370%" will result in finding all numbers that begin with 370). If it is necessary to search for numbers such as "370%", the wildcard has to be escaped: "370\%". Characters are also available (e.g. Unknown).

Counter shows how many times number was chosen, when Pseudorandom with Deviation functionality is used.

Suitable file format

File type has to be TXT or CSV.

When opened on Notepad (or similar text editor), file content should look like this:


Number Pool as Device CallerID

Go to Device settings and choose Number Pool as CallerID. Please note that this functionality will change the original CallerID. User and Admin will see the changed number instead of the original one in the Last Calls. However, both numbers, the original and the new one will still be stored in the database.

Device callerid.png

Pseudorandom with Deviation

It means that numbers will be selected in such order:

  • Each number has a counter
  • Counter means how many times this number is selected
  • Deviation means how many times more one number can be selected more compared to the other numbers which are selected more seldom (least amount of times)
  • At first numbers are selected randomly and their counter is increased on each selection
  • When a number is selected it's counter is compared to the counter of the numbers which are selected more seldom
  • If the difference is more than a deviation value - another number is selected discarding the first one until the condition is met

This algorithm allows selecting numbers pseudo-randomly in such a manner that all the numbers are selected approximately the same amount of times

If the deviation is 0, then this is the most strict selection which will keep the selection of the numbers the same amount of times.

If the deviation is 999999, then this will be pure random selection and some numbers can be selected more times than others.

Example #1:

If we have 6 numbers with such counters: 3 3 3 2 2 2 and deviation is 0, then the next number will be selected only from the numbers with the counters 2 2 2.

Example #2:

If we have numbers with such counters: 5 5 4 4 4 3 3 3 2 2 2 and deviation is 2, then the next number is selected only from the numbers with the counters 4 4 4 3 3 3 2 2 2. (Least amount of times (2) + deviation (2) = 4 (highest counter))

Number Pool as Device CallerID when CallerID is invalid

Go to Device settings Advanced section and choose two Number Pools:

  • Number Pool with valid CallerIDs: - CallerIDs will be checked against this Pool
  • Random Number from a Number Pool: - if CallerID is NOT found in a Number Pool set in Number Pool with valid CallerIDs it will be changed to a random CallerID from this number pool.

Please note that Random Number from a Number Pool should contain only numbers without any wildcards like % or #.

Valid Callerid.png

Number Pool as Provider CallerID

Go to Provider settings and choose Number Pool as CallerID

Provider callerid.png

Number Pool as Blacklist / Whitelist

Go to User settings or Provider settings and choose Number Pool as Blacklist / Whitelist.

Note: when using Number Pools for Blacklist/Whitelist, it is possible to upload prefixes. To do so, just import prefixes with percent (%) or pound (#) sign at the end (example: 370% will act as prefix for 370xxxxxxxx number or 370######## each # represents ONE digit so using it this way you can determine the length of acceptable CallerIDs ).
Note: It is posible to upload 'empty' word, that means CLI is empty.

User blacklists details.png

Number Pool as Source Blacklist for DID

Number Pool can be set as Source Blacklist for specific DID in DID settings page.

Number Pool as Global Blacklist / Whitelist

Information available in Blocked Numbers page.

See also