Cisco Cisco Expressway Maintenance Manual
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’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.
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
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
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
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).
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.
associated actions.
The address-switch has two node parameters:
field
and
subfield
.
Address
The
address
construct is used within an
address-switch
.
Valid values are:
is=string
Selected field and subfield exactly match the given string.
contains=string
Selected field and subfield contain the given string. Note that the CPL standard only allows for
this matching on the display subfield; however the Expressway allows it on any type of field.
this matching on the display subfield; however the Expressway allows it on any type of field.
255
Cisco Expressway Administrator Guide
Reference Material