58.8. LCS - Last Calling number Service

When a person receives a call which comes from UMTSBOX, the calling number is that of the SIM inserted, and there is nothing we can do to change the situation. If the called person does not answer, he will later see a call coming from that number, he can try to call it back, but when the call enters the UMTSBOX it is routed to some "default" recipient, e.g. The operator, but the operator does not know what person in the company made the call. This can also be seen when as a gateway for calls is using a CTI cluster or a trunk: SIP or IAX. In order not to meet such situations, it was developed the LCS - Last Calling number Service.

[Important]Important

Last Calling number Service requires a separate licence.

Suppose to have this situation:

The basic principle of LCS:

Requirements for LCS configuration:

The CALLED and CALLING numbers are stored in the LCST - Last Calling number Service Table.

The operating principle of LCS:

[Tip]Tip

Interesting chapters:

Section 84.18, “How to configure Last Calling Service”;

Section 17.3, “Last Calling Service for UMTSBOX”;

Section 61.5.6, “Last Calling Service for a SIP user”.

58.8.1. LCSG - Last Calling number Service Group

LCSG is useful to manage LCS groups. The managing is made following the classic Abilis sintax: a/c/s/d lcsg <parameter:parameter>.

LCSG configuration holds all the rules required to manipulate the TON for CD and CG.

[08:14:51] ABILIS_CPX:a lcsg id:1 descr:GSM_LCS 

COMMAND EXECUTED 

[08:15:28] ABILIS_CPX:d lcsg                 

- Not Saved (SAVE CONF), Not Refreshed (INIT) ---------------------------------
----+--------------------------------------------------------------------------
ID: |[DESCR:]
    |NAT-PREFIX:            CB-CDI-ENABLED:        CB-CDO-NOMATCH:
    |INT-PREFIX:            CB-CDO-UNK:
    |COUNTRY-CODE:          CB-CDO-NAT:            CB-SDO:
    |CPS-LIST:              CB-CDO-INT:            CB-SGO:
    |[CTI Ports, CTI Clusters, IAX users, SIP users]
----+--------------------------------------------------------------------------
 1   [GSM_LCS]
     SYS (0)                *                      *
     SYS (00)               ux'CGO'                
     SYS (39)               ux0'CGO'               *
     #                      ux00'CGO'              *
----+--------------------------------------------------------------------------
[Warning]Warning

To activate the changes made on the LCSG, execute the initialization command init ctisys. Remember to save the configuration (save conf).

[Important]Important

Remember to set the LCS parameter to YES in the CTI routing (the one which routes calls to UMTSBOX).

Meaning of the most important parameters:

ID

Last Calling Number Service group identifier [1..32].

CPS-LIST

Name of an IN list holding Carrier Preselection prefixes or #. Originating call: if the called number has TON=u and starts with a prefix present in the list then the number is inserted in LCS table (CDO field) with TON=u and prefix removed. Callback call: not used.

NAT-PREFIX

National prefix. Max 6 digits (E.g. 0) or SYS. Originating call: if called number has TON=n the number is inserted in LCS table (CDO field) with TON=u and NAT-PREFIX added. Callback call: the calling number (CGI) is internally converted to TON=u with same rule of Originating call, and used to find a match with CDO field of LCS table.

INT-PREFIX

International prefix. Max 6 digits (E.g. 00) or SYS. Originating call: if called number has TON=i the number is inserted in LCS table (CDO field) with TON=u and INT-PREFIX added. An exception is when number has TON=i and starts with <COUNTRY-CODE>, in this case it is inserted with TON=u and the <COUNTRY-CODE> is removed. Callback call: the calling number (CGI) is internally converted to TON=u with same rule of Originating call, and used to find a match with CDO field of LCS table.

COUNTRY-CODE

Country code of local country. Max 6 digits (E.g. 39) or SYS. Used in numbers manipulation to identify the local country. Local country numbers have to be processed without the prefixes <INT-PREFIX><COUNTRY-CODE>. i<COUNTRY-CODE><number> is processed as u<number>. u<INT-PREFIX><COUNTRY-CODE> is processed as u<number>. Examples with INT-PREFIX:00 and COUNTRY-CODE:39 are: i39037612345678 -> u037612345678 u0039037612345678 -> u037612345678.

CB-CDI-ENABLED

Callback call: called numbers enabled to LCS service processing. Callback calls whose called number is not enabled are forwarded with called number unmodified. Max 20 characters [0..9, *] optionally preceded by TON [u, i, n, o, s, h, k] and/or NP [x, e, d, t, l, p] attributes or the name of a list between single quotes. The '*' is allowed only alone or as the last character. (E.g. ne1234567 or 4567* or * or 'my_list') See also HELP ISDN ATTRIBUTES and HELP ISDN VALUES.

CB-CDO-UNK

Resulting called number of the Callback call when the matching record has CGO with TON=u (UNKNOWN). CGO or max 20 digits [0..9] optionally preceded by TON [u, i, n, o, s, h, k] and/or NP [x, e, d, t, l, p] attributes or 'CGO[.Sy/Ly/Ry]' macro or combination of digits and macro. (E.g. # or CGO or ne1234567 or ux'CGO' or ux11'CGO.S2') See also HELP ISDN ATTRIBUTES and HELP ISDN VALUES.

CB-CDO-NAT

Resulting called number of the Callback call when the matching record has CGO with TON=n (NATIONAL). CGO or max 20 digits [0..9] optionally preceded by TON [u, i, n, o, s, h, k] and/or NP [x, e, d, t, l, p] attributes or 'CGO[.Sy/Ly/Ry]' macro or combination of digits and macro. (E.g. # or CGO or ne1234567 or ux'CGO' or ux11'CGO.S2') See also HELP ISDN ATTRIBUTES and HELP ISDN VALUES.

CB-CDO-INT

Resulting called number of the Callback call when the matching record has CGO with TON=i (INTERNATIONAL). CGO or max 20 digits [0..9] optionally preceded by TON [u, i, n, o, s, h, k] and/or NP [x, e, d, t, l, p] attributes or 'CGO[.Sy/Ly/Ry]' macro or combination of digits and macro. (E.g. # or CGO or ne1234567 or ux'CGO' or ux11'CGO.S2') See also HELP ISDN ATTRIBUTES and HELP ISDN VALUES.

CB-SDO

Resulting called sub-address of the Callback call when there is a match in LCS table or CB-CDO-NOMATCH <> *. * or max 20 ASCII characters without spaces. (E.g. * or ABCD123 or #). See also HELP ISDN VALUES.

CB-SGO

Resulting calling sub-address of the Callback call when there is a match in LCS table or CB-CDO-NOMATCH <> *. * or # or max 20 ASCII characters without spaces. (E.g. * or ABCD123 or #). See also HELP ISDN VALUES

CB-CDO-NOMATCH

Resulting called number of the Callback call when there isn't a match in LCS table. Callback calls without a match in LCS table and with CB-CDO-NOMATCH:* are passed unmodified. * or max 20 digits [0..9] optionally preceded by TON [u, i, n, o, s, h, k] and/or NP [x, e, d, t, l, p] attributes. See also HELP ISDN ATTRIBUTES and HELP ISDN VALUES.

58.8.2. LCST - Last Calling number Service Table

LCS automatically stores the pair of calling and called numbers in the LCST. The table can be also manipulated with the d/a/c lcst commands.

[10:40:02] ABILIS_CPX:d lcst

Number of entries: 1000

-----+----------------------+----------------------+---------------------+-----
GROUP|          CDO         |         CGO          |   Updated on (UTC)  |TOUT
     |                      |                      |  [Expiry on (UTC)]  |
-----+----------------------+----------------------+---------------------+-----
1     u12345678              u11                    26/02/2020 09:36:22   NONE
1     u99999999              u12                    28/03/2020 16:53:58   NONE
...

Meaning of the most important parameters:

GROUP

LCS group identifier [1..32].

CDO

Called number of the originating call. Used to match the Calling number (CGI) of the callback call.

CGO

Calling number of the originating call. Used to compose the Called number (CB-CDO-xxx) of the callback call.

Updated on

UTC date and time of the record insertion or update.

Expiry on

UTC date and time of the record expiration.

[Caution]Caution

Only for TOUT not equal to NONE.

TOUT

Expiration time of the record [NONE, CB, 1..999 hour]:

  • NONE: never deleted unless the table is full;

  • CB: deleted on answered callback;

  • 1..999 hour: deleted after the specified interval.