Cisco Cisco Expressway Maintenance Manual

Page of 399
CPL reference
Call Processing Language (CPL) is an XML-based language for defining call handling. This section gives 
details of the Expressway’s implementation of the CPL language and should be read in conjunction with the 
CPL standard 
.
The Expressway has many powerful inbuilt transform features so CPL should be required only if advanced 
call handling rules are required.
The Expressway supports most of the CPL standard along with some TANDBERG-defined extensions. It 
does not support the top level actions <incoming> and <outgoing> as described in RFC 3880. Instead it 
supports a single section of CPL within a <taa:routed> section.
When Call Policy is implemented by uploading a CPL script to the Expressway, the script is checked against 
an XML schema to verify the syntax. There are two schemas - one for the basic CPL specification and one 
for the TANDBERG extensions. Both of these schemas can be 
 and used 
to validate your script before uploading to the Expressway.
The following example shows the correct use of namespaces to make the syntax acceptable:
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<cpl xmlns="urn:ietf:params:xml:ns:cpl"
 
  xmlns:taa="http://www.tandberg.net/cpl-extensions"
 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 
  xsi:schemaLocation="urn:ietf:params:xml:ns:cpl cpl.xsd">
 
  <taa:routed>
 
    <address-switch field="destination">
 
      <address is="reception@example.com">
 
        <proxy/>
 
      </address>
 
    </address-switch>
 
  </taa:routed>
 
</cpl> 
Source and destination address formats
When the descriptions in this section refer to the source or destination aliases of a call, this means all 
supported address formats (URIs, IP addresses, E.164 aliases and so on).
CPL address-switch node
The address-switch node allows the script to run different actions based on the source or destination 
aliases of the call. It specifies which fields to match, and then a list of address nodes contains the possible 
matches and their associated actions.
The address-switch has two node parameters: field and subfield.
address
The address construct is used within an address-switch to specify addresses to match. It supports the 
use of 
Valid values are:
Cisco Expressway Administrator Guide (X8.5.1)     
Page 288 of 399
Reference material
CPL reference