Internet Communications Using SIP : Delivering VoIP and Multimedia Services With Session Initiation Protocol {2Nd Ed.}

(Steven Felgate) #1

Note that CPL also can be used for service creation for outgoing calls. Con-
sider the following example, also taken from the CPL RFC 3880:


<?xml version=”1.0” encoding=”UTF-8”?>
<cpl xmlns=”urn:ietf:params:xml:ns:cpl”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”urn:ietf:params:xml:ns:cpl cpl.xsd “>
<outgoing>
<address-switch field=”original-destination” subfield=”tel”>
<address subdomain-of=”1900”>
<reject status=”reject”
reason=”Not allowed to make 1-900 calls.”/>
</address>
</address-switch>
</outgoing>
</cpl>

In this example, any telephony URIs that begin with 1-900- ... are rejected by
the server because they might be 900-number toll calls.


SIP Common Gateway Interface


The SIP CGI is analogous to HTTP CGI used for web server service creation.
SIP CGI is defined by an informational RFC [6], which means that it is not a
standards track protocol. For example, web page forms are usually imple-
mented using HTTP CGI scripts. In a similar way, complex services can be pro-
grammed under control of network administrators using SIP CGI. SIP CGI
runs on a SIP server that interacts with a program containing the service logic
using the CGI interface. This arrangement is shown in Figure 7.4.


Figure 7.4 SIP CGI model


SIP
User Agent

SIP
User Agent

SIP Server

Request

Response

CGI Program:
perl, C, tcl, etc.

SIP CGI

SIP Server

Request

Response

Request

Response

SIP Service Creation 147
Free download pdf