56.9. CPO - Call path optimization

The call path optimization allows to optimize the path of calls. Supposing to have the following scheme:

Abilis 1 and Abilis 2 are connected between them with a cluster. A call is received by Abilis 1 and the operator routes the call toward Abilis 2. Then the remote user reroutes the call toward the Operator. Without CPO the calls (one from Abilis 1 to Abilis2 and one from Abilis 2 to Abilis 1) remain active and can cause a degradation of the quality.

With CPO active the calls drawn with dotted lines are closed and the initial one remains active.

[Note]Note

CPO feature is available also for IAX and SIP resources.

56.9.1. Example of activation of CPO

Supposing to have the following scheme:

Abilis1 and Abilis2 are connected between them with a cluster. The user (777) of Abilis1 make a call to user (888) of Abilis2. The user forward the call toward the other user (555) of Abilis1. Without CPO the calls (one from Abilis 1 to Abilis2 and one from Abilis 2 to Abilis 1) remain active and can cause a degradation of the quality.

With CPO active the calls drawn with dotted lines are closed and only one remains active, drawn with red line.

Suppose that VoIP tunnels and CTIR routings are already configured.

Type the d cticl command to display the CTI Cluster table.

  • ABILIS1

    [14:24:16] ABILIS_1:d cticl
    
    Configured Clusters:1         Activated Clusters:1         
    
    ---------+----------------------+----+-----+--------+-------------+------------
    CLUS:    |[DESCR:]
    [ID:]    |NUM-IN-REWRITE:       |SS: |CPO: |RG-IN:  |BUSY-ON-MAX: |CLIP-RULE: 
             |NUM:                  |PC: |LCS-GROUP:    |ADDRBOOK-NUM:
             |NUMx:
    ---------+----------------------+----+-----+--------+-------------+------------
    abilis2   ue*                    NO   NO    DISABLE  NO            PRIVATE
    [   1]    888                    NO   NONE           NUM
  • ABILIS2

    [14:23:55] ABILIS_2:d cticl 
    
    Configured Clusters:1         Activated Clusters:1        
    
    ---------+----------------------+----+-----+--------+-------------+------------
    CLUS:    |[DESCR:]
    [ID:]    |NUM-IN-REWRITE:       |SS: |CPO: |RG-IN:  |BUSY-ON-MAX: |CLIP-RULE: 
             |NUM:                  |PC: |LCS-GROUP:    |ADDRBOOK-NUM:
             |NUMx:
    ---------+----------------------+----+-----+--------+-------------+------------
    abilis1   ue*                    NO   NO    DISABLE  NO            PRIVATE
    [   1]    777                    NO   NONE           NUM
    -------------------------------------------------------------------------------

Type the following command to enable the CPO - Call path optimization. Call Transfer is sent out and it's accepted in input when the CPO parameter is configured as BID.

  • ABILIS1

    [14:24:16] ABILIS_1:s cticl id:1 cpo:bid
    
    COMMAND EXECUTED 
  • ABILIS2

    [14:24:16] ABILIS_2:s cticl id:1 cpo:bid
    
    COMMAND EXECUTED 
[Caution]Caution

Changes made on the CTI Clusters aren't immediately active. To activate them, execute the initialization command init ctisys.

Retype the d cticl command to display the changes made.

  • ABILIS1

    [14:24:16] ABILIS_1:d cticl
    
    Configured Clusters:1         Activated Clusters:1       
    
    ---------+----------------------+----+-----+--------+-------------+------------
    CLUS:    |[DESCR:]
    [ID:]    |NUM-IN-REWRITE:       |SS: |CPO: |RG-IN:  |BUSY-ON-MAX: |CLIP-RULE: 
             |NUM:                  |PC: |LCS-GROUP:    |ADDRBOOK-NUM:
             |NUMx:
    ---------+----------------------+----+-----+--------+-------------+------------
    abilis2   ue*                    NO   BID   DISABLE  NO            PRIVATE
    [   1]    888                    NO   NONE           NUM
  • ABILIS2

    [14:23:55] ABILIS_2:d cticl 
    
    Configured Clusters:1         Activated Clusters:1          
    
    ---------+----------------------+----+-----+--------+-------------+------------
    CLUS:    |[DESCR:]
    [ID:]    |NUM-IN-REWRITE:       |SS: |CPO: |RG-IN:  |BUSY-ON-MAX: |CLIP-RULE: 
             |NUM:                  |PC: |LCS-GROUP:    |ADDRBOOK-NUM:
             |NUMx:
    ---------+----------------------+----+-----+--------+-------------+------------
    abilis1   ue*                    NO   BID   DISABLE  NO            PRIVATE
    [   1]    777                    NO   NONE           NUM
    -------------------------------------------------------------------------------

In the call log we will have the following:

  • ABILIS1

    [15:48:42] ABILIS_1:d ldme
    
    Current Local Time: Friday 24/06/2016 15:50:52 (UTC+2.00)
    
    Date   Time   Resource   Ses   Id   Event          Parameters
    ------ ------ ---------- ----- ---- -------------- --------------------------------------
    240616 154948 CtiP-150       4    4 E-DialRx       CH:1 BC:Speech CG:uxq777 USER:777
    240616 154948 CtiP-150       4    4 E-CallRx       CH:1 BC:Speech CD:ux888 CG:uxq777 
                                                       USER:777
    240616 154948 CtiP-150       4    4 E-Route Match  PR:0  
    240616 154948 CtiCl-1        4    4 E-CallTx       BC:Speech TY:VtoC CD:ux888 CG:uxq777 
                                                       CODERS:G.711A,G.711u
    240616 154948 CtiP-150       4    4 E-NumComplete  CDI:ux888 CDO:ux888
    240616 154948 CtiCl-1        4    4 E-ProgressRx   CODERS:G.711A
    240616 154948 CtiCl-1        4    4 E-AlertRx      CH:34 CODERS:G.711A
    240616 154948 CtiP-150       4    4 E-AlertTx      CH:1 PI: 81 88
    240616 154950 CtiCl-1        4    4 E-ConnRx       CH:34 CODERS:G.711A
    240616 154950 CtiP-150       4    4 E-ConnTx       CH:1
    240616 154957 CtiCl-1        5    5 E-DialRx       CH:61 BC:Speech CD:ux5 CG:ueq888
                                                       CODERS:Spirit
    240616 154958 CtiCl-1        5    5 E-CallRx       CH:61 BC:Speech CD:ux555 CG:ueq888 
                                                       CODERS:Spirit
    240616 154958 CtiCl-1        5    5 E-Route Match  PR:1  
    240616 154958 CtiSip         5    5 E-CallTx       BC:Speech TY:CtoS CD:ue555 CG:ueq888 
                                                       CODERS:G.711A,G.711u
    240616 154958 CtiCl-1        5    5 E-ProgressTx   
    240616 155003 CtiCl-1        5    5 E-NumComplete  CDI:ux555 CDO:ue555
    240616 155004 CtiSip         5    5 E-AlertRx      CH:4 USER:sip_user
    240616 155004 CtiCl-1        5    5 E-AlertTx      CH:61
    240616 155015 CtiSip         5    5 E-ConnRx       CH:4 CODERS:G.711A
    240616 155015 CtiCl-1        5    5 E-ConnTx       CH:61 CODERS:Spirit
    240616 155022 CtiCl-1        5    5 E-CpoRx        
    240616 155022 CtiCl-1        4    6 E-CallTransfer ID-IN:4 ID-OUT:5
    240616 155022 CtiCl-1        5    6 E-CallTransfer ID-IN:4 ID-OUT:5
    240616 155022 CtiCl-1        4    4 E-DiscTx       CH:34 CAUSE:81 90 (LPN, Normal call 
                                                       clearing) 
    240616 155022 CtiCl-1        5    5 E-DiscTx       CH:61 CAUSE:81 90 (LPN, Normal call 
                                                       clearing) 
  • ABILIS2

    [15:54:42] ABILIS_2:d ldme
    
    Current Local Time: Friday 24/06/2016 15:55:04 (UTC+2.00)
    
    Date   Time   Resource   Ses   Id   Event          Parameters
    ------ ------ ---------- ----- ---- -------------- --------------------------------------
    240616 154948 CtiCl-1      144  144 E-CallRx       CH:34 BC:Speech CD:ux888 CG:uxq777 
                                                       CODERS:G.711A,G.711u
    240616 154948 CtiCl-1      144  144 E-Route Match  PR:0  
    240616 154948 CtiP-101     144  144 E-CallTx       BC:Speech TY:CtoV CD:ux888 CG:uxq777
    240616 154948 CtiCl-1      144  144 E-NumComplete  CDI:ux888 CDO:ux888
    240616 154948 CtiP-101     144  144 E-AlertRx      CH:1 USER:888
    240616 154948 CtiCl-1      144  144 E-AlertTx      CH:34 CODERS:G.711A
    240616 154950 CtiP-101     144  144 E-ConnRx       CH:1
    240616 154950 CtiCl-1      144  144 E-ConnTx       CH:34 CODERS:G.711A
    240616 154956 CtiP-101     145  145 E-DialRx       CH:1 BC:Speech CG:uxq888 USER:888
    240616 154957 CtiP-101     145  145 E-CallRx       CH:1 BC:Speech CD:ux5 CG:uxq888 
                                                       USER:888
    240616 154957 CtiP-101     145  145 E-Route Match  PR:1 
    240616 154957 CtiCl-1      145  145 E-CallTx       BC:Speech TY:VtoC CD:ux555 CG:uxq888
                                                       CODERS:Spirit
    240616 154958 CtiCl-1      145  145 E-ProgressRx   
    240616 155003 CtiP-101     145  145 E-NumComplete  CDI:ux555 CDO:ux555
    240616 155004 CtiCl-1      145  145 E-AlertRx      CH:61
    240616 155004 CtiP-101     145  145 E-AlertTx      CH:1 PI: 81 88
    240616 155015 CtiCl-1      145  145 E-ConnRx       CH:61 CODERS:Spirit
    240616 155015 CtiP-101     145  145 E-ConnTx       CH:1
    240616 155021 CtiP-101     144  146 E-CallTransfer ID-IN:144 ID-OUT:145
    240616 155021 CtiP-101     145  146 E-CallTransfer ID-IN:144 ID-OUT:145
    240616 155021 CtiCl-1      144  146 E-DiscRx       CH:34 CAUSE:81 90 (LPN, Normal call 
                                                       clearing)
    240616 155021 CtiCl-1      144  146 E-DiscTx       CH:61 CAUSE:81 90 (LPN, Normal call 
                                                       clearing)
    240616 155021 CtiCl-1      144  146 E-DiscConfTx   CH:34

On the Abilis1 were two calls (VtoC and CtoS) and after Call Path Optimization was remained only one VtoS. On the Abilis2 were two calls (CtoV and VtoC) and after call transfer, these calls was closed.