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
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.
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.
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
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>
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.
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
use of
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.
for this matching on the display subfield; however the Expressway allows it on any type of
field.
Cisco Expressway Administrator Guide (X8.1)
Page 243 of 344
Reference material
CPL reference