[Home]

Summary:ASTERISK-10738: DLCX verb not recgonized
Reporter:Matt Vlasach (mattv)Labels:
Date Opened:2007-11-12 02:53:14.000-0600Date Closed:2011-06-07 14:03:04
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Channels/chan_mgcp
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) 20071113__bug11217.diff.txt
Description:I have a Cisco IAD paired with Asterisk working (for the most part) just fine.  The call flow is as follows: Caller -> PBX ->(T1 CAS)-> Cisco IAD -> (MGCP) -> Asterisk.

However, when the caller hangs up, the Cisco IAD sends a MGCP 'DLCX' verb to Asterisk to indicate the channel is to be terminated, to which Asterisk replies:

WARNING[18528]: chan_mgcp.c:3256 handle_request: Unknown verb 'DLCX' received from 10.0.0.155

The call continues until the call plan times out and disconnects.  The bad part about this is the Cisco thinks that particular MGCP line is freed, and when a new call comes into the Asterisk, it tries to use that line and it gets a busy.

Is this a problem with Asterisk or a problem with the Cisco/Asterisk integration?  The DLCX verb is pretty common, so I imagine it should work?

Note: I can't get other things like hook flashes to work either...

Thank you in advance!

****** ADDITIONAL INFORMATION ******

mgcp.conf:
;
; MGCP Configuration for Asterisk
;
[general]
port = 2727
bindaddr = 10.0.0.154
disallow = all
allow = ulaw
allow = alaw

[iad01.claims.lcl]
host = 10.0.0.155
context = InfinityRoute
canreinvite = no
threewaycalling = yes
;cancallforward = yes
transfer = yes
dtmfmode=rfc2833
callgroup=0,2-5
callerid=1234
pickupgroup=0,123
;callwaiting = yes
wcardep = *
slowsequence = yes
line => S1/DS1-1/*
line => S1/DS1-1/1
line => S1/DS1-1/2
line => S1/DS1-1/3
line => S1/DS1-1/4
line => S1/DS1-1/5
line => S1/DS1-1/6
line => S1/DS1-1/7
line => S1/DS1-1/8
line => S1/DS1-1/9
line => S1/DS1-1/10
...
line => *
Comments:By: Tilghman Lesher (tilghman) 2007-11-13 17:15:38.000-0600

Please try this patch and report back your results.  It appears that this was an oversight in reading the RFC, as the RFC clearly states that the gateway is within its rights to initiate hangup.  Apparently other MGCP gateways accomplish this by sending an RSIP (method "disconnected"), instead of a DLCX.

By: Tilghman Lesher (tilghman) 2007-11-13 17:20:56.000-0600

In terms of hook flash, do you mean that you want Asterisk to SEND a hookflash to the media gateway or do you want Asterisk to be able to RECEIVE a hookflash?  It looks like Asterisk is already able to receive the hookflash, so if this is what you're trying to do, then I need to see what the gateway is sending, in order to determine what's wrong.

By: Matt Vlasach (mattv) 2007-11-14 05:19:03.000-0600

I didn't get a chance to do this tonight, but I will do what I can to get to it tomorrow night...

As for the hookflash: the goal is to achieve a hookflash blind transfer as follows:

1.  Asterisk initiates a Transfer out of the call plan
2.  A MGCP signal is sent to the bonded channel on the gateway to perform a hookflash
3.  The caller is put on hold while the 'transfer to' DTMF digits are invoked on the channel
4.  The call is terminated to carry out the transfer (by way of the upstream PBX)

I think there is similar functionality for a Zaptel trunk to perform these types of hookflash blind transfers, but I haven't had any luck with an MGCP implementation.

Let me know your thoughts, and I will post what I find with that patch tomorrow.

Thanks!

By: Tilghman Lesher (tilghman) 2007-11-19 18:09:35.000-0600

any testing done with this patch yet?

By: Tilghman Lesher (tilghman) 2007-11-26 14:14:09.000-0600

Without some feedback, this bug can't continue.  Feel free to reopen when you've done some testing and can tell me if this patch works or not.