[asterisk-users] Problem with SIP, attended transfer and GROUP_COUNT

Karsten Wemheuer kwem at gmx.de
Tue Apr 15 12:38:53 CDT 2008


Hi,

maybe someone can give me a hint to solve the following issue. I want to
limit the calls to a specific SIP-destination. Disabling callwaiting at
the phones is not an option, because it should be configured via the *
database.

My solution uses GROUP_COUNT, which works fine most of the time. In case
of attended transfer (on SIP-basis, not via the #-mechanism of asterisk)
I have problems. 

To simplfy the scenario I stripped down the dialplan to the following.
>From somewhere on the wiki I am using the following context:

exten => 200,1,Set(GROUP()=${CALLERID(num)})
exten => 200,n,GotoIf($[${GROUP_COUNT(${EXTEN})} >= 1]?BLOCK)
exten => 200,n,Set(OUTBOUND_GROUP=${EXTEN})
exten => 200,n,Dial(SIP/katrin)
exten => 200,n(BLOCK),Busy

This block is used for other extensions 100 and 150 respectivily. It
works fine until I am using attended transfer. 

Example: kwe (Extension 100) is calling katrin (Extension 200). katrin
sets the call on hold and talks to hans (Extension 150).

At the cli I get the following result:
pbxtest*CLI> group show channels
Channel                    Group                 Category
SIP/kwe-081bf188           100                   (default)
SIP/katrin-081b70a8        200                   (default)
SIP/katrin-081bb020        200                   (default)
SIP/hans-0816b8b8          150                   (default)

which seems correct to me.

In case of a transfer of kwe to hans (katrin leaving), the result is:
pbxtest*CLI> group show channels
Channel                    Group                 Category
SIP/kwe-081bf188           100                   (default)
SIP/kwe-081bf188           200                   (default)
SIP/hans-0816b8b8          150                   (default)

I am confused about the second line, which leads to trouble. The above
context would think, that katrin is busy. In case of a blind transfer
everything is ok (the second line does not exist)

I have tested the above with * 1.4.14, 1.4.18-rc4 and 1.4.19

Is this a bug or a feature? Am I doing something wrong or should I file
a bug report?

Thanks in advance,

Regards
Karsten





More information about the asterisk-users mailing list