Issue with N-way call

srireddy
Joined: Wed 10 of Mar, 2010

Issue with N-way call

Posted:Wed 10 of Mar, 2010 (11:11 UTC)
Hi,

I am using the n-way-call dialplan solution found on voip-info.

http://www.voip-info.org/wiki/view/Aste ... call+HOWTO

Here is my idea:

There are 3 users, User1(100),User2(200),User3(300)

when user1 and 2 are in call,

user1 press *0, user2 is transffered to conference 444, then user1 will get dialtone to enter user3 number, after that user1 and 3 are connected,
when user1 press **, now this disconnects user1 from the call, but the call will be going on between user2 and user3.

but in N-way, user1 should be able to invite user3 by pressing ** and at the same time user1 should be in call.

but here it is disconnecting user1 from the call.

********************* extensions.conf *****************************************


[incoming]

exten => _XXX,1,Set(DYNAMIC_FEATURES=nway-start)
exten => _XXX,n,Dial(SIP/${EXTEN})

[dynamic-nway]
exten => _XXX,1,Answer
exten => _XXX,n,Set(CONFNO=${EXTEN})
exten => _XXX,n,Set(MEETME_EXIT_CONTEXT=dynamic-nway-invite)
exten => _XXX,n,Set(DYNAMIC_FEATURES=)
exten => _XXX,n,MeetMe(${CONFNO},pdMX)
exten => _XXX,n,Hangup

[dynamic-nway-invite]
exten => 0,1,Read(DEST,dial,,i)
exten => 0,n,Set(DYNAMIC_FEATURES=nway-inv#nway-noinv)
exten => 0,n,Dial(Local/${DEST}@dynamic-nway-dest,,g)
exten => 0,n,Set(DYNAMIC_FEATURES=)
exten => 0,n,Goto(dynamic-nway,${CONFNO},1)
exten => i,1,Goto(dynamic-nway,${CONFNO},1)

[dynamic-nway-dest]
exten => _XXX,1,Dial(SIP/${EXTEN})

[macro-nway-start]
exten => s,1,Set(CONFNO=444)
exten => s,n,ChannelRedirect(${BRIDGEPEER},dynamic-nway,${CONFNO},1)
exten => s,n,Read(DEST,dial,,i)
exten => s,n,Set(DYNAMIC_FEATURES=nway-inv#nway-noinv)
exten => s,n,Dial(Local/${DEST}@dynamic-nway-dest,,g)
exten => s,n,Set(DYNAMIC_FEATURES=)
exten => s,n,Goto(dynamic-nway,${CONFNO},1)

[macro-nway-ok]
exten => s,1,ChannelRedirect(${BRIDGEPEER},dynamic-nway,${CONFNO},1)

[macro-nway-notok]
exten => s,1,SoftHangup(${BRIDGEPEER})

***************** features.conf ******************

[applicationmap]
nway-start => *0,caller,Macro,nway-start
nway-inv => **,caller,Macro,nway-ok
nway-noinv => *#,caller,Macro,nway-notok


****************** sip.conf **************************

[100]
type=friend
username=user1
secret=user1
quality=yes
host=dynamic
canreinvite=no
context=incoming

[200]
type=friend
secret=user2
quality=yes
host=dynamic
canreinvite=no
context=incoming

[300]
type=friend
secret=user3
quality=yes
host=dynamic
canreinvite=no
context=incoming

******************************************


After pressing ** from user1(100) dialpad, it will be disconnected from the call and displays the following in asterisk CLI

Spawn extension (macro-nway-start, s, 5) exited non-zero on 'SIP/100-0982bd18' in macro 'nway-start'
— Auto fallthrough, channel 'SIP/100-0982bd18' status is 'ANSWER'

As per my understanding, its going to context nway-start and executes the first statement Answer() on the user1 which is already in ANSWER status.


Is anychanges needed in the above dialplan to make it working?

Thanks,

-Sri