Summary:ASTERISK-02217: MGCP call pickup with *8 and *8x options
Reporter:Diego Ercolani (dercol)Labels:
Date Opened:2004-08-12 17:51:30Date Closed:2008-01-15 15:07:22.000-0600
Versions:Frequency of
Environment:Attachments:( 0) star80.diffu.txt
Description:with call pickup enabled (key *8 to answer a call of your group) all the mgcp codes:
*80: blacklist a number
*82: Enabling Caller*ID

fail to execute as whenever is dialed *8 asterisk try to pickup a call


amarone*CLI> show version
Asterisk CVS-HEAD-08/12/04-09:00:00-BRI-stuffed built by root@amarone on a i686 running Linux

Enable the "Disable Caller*ID" with "*67":
   -- Endpoint 'chan0@' observed 'hd'
   -- MGCP mgcp_new(MGCP/chan0@ created in state: Down
 == Parsing '/etc/asterisk/manager.conf': Found
 == Manager 'dercol' logged on from
   -- Endpoint 'chan0@' observed '*'
   -- Endpoint 'chan0@' observed '6'
   -- Endpoint 'chan0@' observed '7'
   -- Disabling Caller*ID on MGCP/chan0@
   -- Endpoint 'chan0@' observed 'hu'
   -- Endpoint 'chan0@' observed 'hd'
Try to reenable Caller ID with "*82":
   -- MGCP mgcp_new(MGCP/chan0@ created in state: Down
   -- Endpoint 'chan0@' observed '*'
   -- Endpoint 'chan0@' observed '8'
Aug 13 00:32:00 WARNING[393239]: chan_mgcp.c:2533 mgcp_ss: No call pickup possible...
   -- Endpoint 'chan0@' observed '2'
   -- Endpoint 'chan0@' observed 'hu'
   -- MGCP handle_request(chan0@ ast_channel already destroyed
   -- MGCP handle_request(chan0@ set vmwi(-)
Comments:By: twisted (twisted) 2004-08-12 18:54:46

this is a defined key in res_features.c.  Would it be enough to make the pickup key configurable as not to interefere with normal MGCP VSC's?

By: Diego Ercolani (dercol) 2004-08-13 06:15:32

I think it woul be nice to use a timeout also for digiting theese kind of extensions,
as you see:
"*": could be a particular extension
"*8": could be another one
"*8#": could be another one
"*8ASTERISK-4": could be another one

masking an entire trunk seems to be a good workaround but it can be very annoying to add new features or to mime some telco features.
Better solution (I think) would be a sort of best match extension table:
if there is only the *8 then, as a user digit "*8" then call is picked up but, if there are _*8. extensions (or functions as *82 in our case) then after digiting *8 asterisk have to wait a timeout before go to serve it...

By: Mark Spencer (markster) 2004-08-13 09:34:50

Where did *80 and *82 come from?  Are those features not available via Zap?

By: Diego Ercolani (dercol) 2004-08-13 17:30:43

*80 & *82 comes from chan_mgcp.c
lines from 2610 to 2622 in  static void *mgcp_ss(void *data)

By: twisted (twisted) 2004-08-25 18:33:20

Hmm... maybe there is a way to cleanly wait for further digits after *8, but i'm not sure what that would be... markster?

By: Brian West (bkw918) 2004-09-08 12:00:22

matchmore ?

By: Mark Spencer (markster) 2004-09-08 22:50:02

How about we rename *8x to *9x?  any objections?

By: Diego Ercolani (dercol) 2004-09-13 16:15:55

Sorry, but then the _*8x. trunk will be unavailable to common use (while call pickup active). Is it correct or there is something I've missed?

edited on: 09-13-04 16:19

By: robf (robf) 2004-09-13 16:26:44

According to the list at http://www.voip-info.org/wiki-CLASS, *80 is "selective call rejection DEactivation", which is counter-intuitive to it being "add to blacklist" anyway.  "Selective call rejection activation" should be *60.  The patch star80.diffu.txt moves this function from *80 to *60 on Zap, MGCP, and Skinny channel types.

Disclaimer on file.

Getting as much of the CLASS/VSC functionality as possible OUT of the channel drivers and into applications would allow US/Euro/Custom configuration in the dialplan, and the dial timeout comes for free...

edited on: 09-13-04 16:37

By: Mark Spencer (markster) 2004-09-13 17:33:20

Nicely done, robf!  Fixed in CVS

By: Digium Subversion (svnbot) 2008-01-15 15:07:22.000-0600

Repository: asterisk
Revision: 3772

U   trunk/channels/chan_mgcp.c
U   trunk/channels/chan_skinny.c
U   trunk/channels/chan_zap.c

r3772 | markster | 2008-01-15 15:07:22 -0600 (Tue, 15 Jan 2008) | 2 lines

Fix star 80 to star 60 (bug ASTERISK-2217)