Subject: A question about CPL

From: "Xiaoming Zhao" <[email-masked]>
Date: Sat, 6 Mar 1999 10:59:47 +0800

Hi,
  I'm a freshman on IP telephony, especially CPL. After I read the CPL draft, I have a question.

What's the relationship between several scripts for one user?
    For example, Jones is an IPtel user. Of course a script for what actions should be taken when calls for Jones come is needed. However, another script used when Jones calls out for someone else is also needed. How can these two scripts work correctly together?

--------------------------------------------
Xiaoming Zhao.
[email-masked]

Institute of Communications Engineering. 
210016, Nanjing, Jiangsu, P.R. of China.
--------------------------------------------

---

From: Jonathan Lennox <[email-masked]>
Date: Tue, 9 Mar 1999 23:53:02 -0500 (EST)

On Sat, March 6 1999, "Xiaoming Zhao" wrote to "[email-masked]" saying:

>     For example, Jones is an IPtel user. Of course a script for what
> actions should be taken when calls for Jones come is needed. However,
> another script used when Jones calls out for someone else is also
> needed. How can these two scripts work correctly together?

This is discussed somewhat in the CPL framework/requirements document; That
draft may have expired by now, but you can find it in several formats linked
from <http://www.cs.columbia.edu/~lennox/>
(draft-ietf-iptel-cpl-requirements-00).  I was hoping to do a revision of it
for the Minneapolis IETF, but didn't get it done in time.  This is probably
an issue which needs to be clarified further in the revision.

There are two questions here: one is can a user have several scripts, and
the second is how do several scripts interact.  In the first case, the
answer is yes; I envision a user typically having separate incoming and
outgoing scripts.  The first of these is invoked when a call reaches the
server with Jones in the To: field; the second one when Jones is in the From
field.  (How these scripts are distinguished to the server is an open issue
for draft-ietf-iptel-sip-reg-payload-00, and any other CPL transport
protocols.)  I'm not sure what other categories of scripts are necessary for
a CPL.  

The second question is theoretically simpler, though implementation of it
will probably be tricky.  This isn't so much a case of the interaction of
Jones's outgoing script and Jones's incoming script so much as it is the
interaction of Jones's outgoing script and Smith's incoming script, when
Jones calls Smith.  In this case, you don't want this to behave any
differently whether Jones and Smith are using the same CPL server or two
different ones -- the call will first be handled by Jones's script, and if
that script directs the call to be placed to Smith, Smith's script will be
invoked.  Whether signalling information was sent over the wire in between
these two invocations (two different CPL servers) or not (one CPL server
with two users' scripts) is irrelevant.

Things get a little trickier if you want to add administrative scripts to
the mix, because some administrative scripts have to run before user
scripts, and some afterward, particularly for things like administrative
incoming and outgoing call screening where the user is potentially trying to
evade the administrator's restrictions.  But the basic model holds: we can
take advantage of the distributed nature of IPTel call processing to model
multiple scripts as though they always ran on separate servers, even when
they actually don't.

-- 
Jonathan Lennox
[email-masked]

---------
This message came from the IETF IPTEL Working Group Mailing List.