[Serusers] trying to USE SER for a contact centre application

Neill Wilkinson neill.wilkinson at quortex.com
Mon Aug 23 21:37:14 CEST 2004


All,
 
just started using SER (great experience so far!). I'm trying to us it for a
contact centre application where I have a specific requirement that calls
can only be terminated in one direction, from a Cisco AS53xx gateway, not a
Cisco phone.
 
Here's the set-up and desired result:
 
User logs into the contact centre systems which initiates a call on the PSTN
side of the AS53xx. This then creates a VOIP (SIP) call leg from a dial-peer
on the gateway, via the SER proxy.
 
The agents all have Cisco 7960 IP phones which register with the SER
registrar. The INVITE is proxied via a simple location lookup in the SER
route[0] config file to the appropriate handset. The agent answers the call
and is "logged" in to the system.
 
Now's the fun part. I want to prevent the SIP leg being torn-down by the
agent either accidentally or on purpose hanging up the call from the
handset.
 
Here's the logic (pseudo code) I have though out: Trap the BYE from the
handset using a statement something like:
 
        if (method=="BYE" and uri=~"sip:[0-9]+@*") {
        # Agent phone initiated the BYE so do something
        route(1);
        } else {
        #do something else - pass on the message I guess
        };
 
route[1] {
    # use exec to call an external function
    exec_msg ('script.file');
    }
 
The external script needs to OK the BYE message - I assume use the FIFO
function to construct the OK message. 
 
Now the tricky part: how do I stop the called phone from hanging up, (I
tried a simple 403 Forbidden response) but that didn't work. So I thought
about the REFER method with the URL of the phone sending the BYE message-
can I send a refer to the Gateway (AS5300) that still thinks the dialogue is
open to the phone and "hopefully" get it to send a new INVITE dialogue to
the phone? Or would I have to generate a new INVITE sequence from the SER
proxy exec code? 
 
If its the latter, then I need access to the RTP port number on the AS53xx
from the original INVITE message - and this implies access to the SDP
payload - which I can't see from the SER script (unless anyone can tell me
how?)
 
Thanks in advance!!!
 
Neill....:o)

Neill Wilkinson

Senior Consultant

Quortex Consultants Ltd.

e: neill.wilkinson at quortex.com

 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20040823/b1a08a57/attachment.htm>


More information about the sr-users mailing list