[Asterisk-Users] small chan_capi-cm 0.6 capicommand(echosquelch) problem?

Armin Schindler armin at melware.de
Sun Nov 13 11:47:23 MST 2005


On Sun, 13 Nov 2005, Faris Raouf wrote:
> I now have chan_capi-cm 0.6 working with Asterisk 1.2 RC2.
> 
> But I have discovered a small problem.
> 
> I have a mix of analog and ISDN (BRI) lines coming in to my Asterisk box.
> 
> Both types of lines are fed into the same set of contexts.
> 
> In the previous version of chan_capi-cm that I was using (0.53 I think), I was
> using to CapiNoES command before all voicemail commands in order to disable
> echo suppression because messages left in voicemail was unintelligible without
> it.
> 
> However, with chan_capi-cm 0.6 I need to switch to capicommand(echosquelch|no)
> instead of CapiNoES.
> 
> This is fine, but while CapiNoES didn't fall over when executed on a call that
> came in via an analog line, with capicommand(echosquelch|no) asterisk stops
> processing the call when called and displays an error to the effect that you
> can't use this command with a non-capi call.
> 
> As a result I'm going to need to add a lot of code to my extensions.conf to
> take this into account which I'd really rather not do unless I have to :-)
> 
> Armin - is there any chance of changing the behavior of
> capicommand(echosquelch|no) to simply generate a warning rather than cause
> Asterisk to stop processing the call? Using it on an analog channel isn't
> really a fatal error in the grand scheme of things?

Hmm, actually I think you should change your extensions.conf, because even a 
warning is not nice. But try this patch:

--- chan_capi.c	9 Nov 2005 12:30:20 -0000	1.153
+++ chan_capi.c	13 Nov 2005 18:45:29 -0000
@@ -3936,7 +3936,7 @@
 	if ((capicmd->capionly) && (strcmp(chan->type, "CAPI"))) {
 		LOCAL_USER_REMOVE(u);
 		ast_log(LOG_WARNING, "capiCommand works on CAPI channels only, check your extensions.conf!\n");
-		return -1;
+		return 0;
 	}
 
 	res = (capicmd->cmd)(chan, params);


Armin



More information about the asterisk-users mailing list