OBiTALK Community

General Support => Installation and Set-Up (Devices) => Topic started by: AAABen on June 14, 2013, 03:43:43 PM

Title: How to pass CID when forking a call?
Post by: AAABen on June 14, 2013, 03:43:43 PM
In "SP1 Service" I have
X_InboundCallRoute    set to be    {ph1,sp4(6688)}

But how can I pass the real CID from sp1 to sp4(6688)? I have tried

{ph1,sp4($1>6688)}, which seems does not work.
Title: Re: How to pass CID when forking a call?
Post by: azrobert on June 14, 2013, 06:58:18 PM
This doesn't work for every provider, but try:

Service Provider -> ITSP Profile D -> SIP

X_SpoofCallerID = Checked

And

{ph1,sp4(6688)}
Title: Re: How to pass CID when forking a call?
Post by: ianobi on June 15, 2013, 02:13:43 AM
Where using X_SpoofCallerID = Checked is a problem, leave it unchecked and try the following:

Voice Services > SP1 Service > X_InboundCallRoute:

{ph1,sp4(6688;ui=$1)}
Title: Re: How to pass CID when forking a call?
Post by: QBZappy on June 15, 2013, 06:56:15 AM
Quote from: ianobi on June 15, 2013, 02:13:43 AM
Where using X_SpoofCallerID = Checked is a problem, leave it unchecked and try the following:

Voice Services > SP1 Service > X_InboundCallRoute:

{ph1,sp4(6688;ui=$1)}


This is one of those little known gems which can be very handy. In the next version of the Admin guide more emphasis on CID setups with examples should be offered. They should be asking Ian to proof read the admin guide before releasing it.  :)
Title: Re: How to pass CID when forking a call?
Post by: ianobi on June 15, 2013, 07:47:29 AM
I don't think that Obihai can afford my pay rate of two beers per day  :D

Also, there's lots I don't know such as using GV with OBi, so we might have to split the proof reading into sections!
Title: Re: How to pass CID when forking a call?
Post by: zapattack on June 17, 2013, 11:52:17 PM
Instead of
{ph1,sp4(6688)}
format,
I used
{ph1},{sp4(6688)}
as shown in example(4) of the admin manual.
Title: Re: How to pass CID when forking a call?
Post by: azrobert on June 18, 2013, 07:42:26 AM
Quote from: zapattack on June 17, 2013, 11:52:17 PM
Instead of
{ph1,sp4(6688)}
format,
I used
{ph1},{sp4(6688)}
as shown in example(4) of the admin manual.

Are you sure your example works?
I always thought processing goes left to right and stops with the first matching rule.
Since you're not comparing for anything in either rule all calls will match the first rule and will be routed to ph1.  Processing will then stop and calls will never be routed to sp4.
Title: Re: How to pass CID when forking a call?
Post by: zapattack on June 19, 2013, 02:34:31 PM
Of course you are right. I did it
{sp2(xxxxxxx)}, {ph}
and only noticed the forwarding worked (obviously)!
However ui=$1 doesn't have any effect in my situation as I am routing to an OG trunk which has its own CID.
Title: Re: How to pass CID when forking a call?
Post by: ianobi on June 20, 2013, 10:00:23 AM
This appears to be a question of format. Using SIP URI format - anything@anywhere - ui=$1 seems to work fine, but without the @ it does not.

With X_SpoofCallerID = unchecked I tested:

Voice Services > SP1 Service > X_InboundCallRoute:
{ph1,sp2(anything@anywhere)}

This gives CallerID of AuthUserName of sp2.


Voice Services > SP1 Service > X_InboundCallRoute:
{ph1,sp2(anything@anywhere;ui=$1)}

This gives CallerID of the original caller.

Looks like spoofing can be done with With X_SpoofCallerID = unchecked, but only if SIP URI format is used. Another lesson learnt   :)