[Asterisk-Users] * 1.0.8: no more reacting to callerid?

Michael J. Tubby G8TIC mike.tubby at thorcom.co.uk
Sun Jun 26 05:51:36 MST 2005


I've put in the patch "by hand", thus:

                                                        if (start && (end = 
strrchr(appl, ')'))) {
                                                                *start = 
*end = '\0';
                                                                data = start 
+ 1;
                                                                process_quotes_and_slashes(data, 
',', '|');
                                                        } else if 
(stringp!=NULL && *stringp=='"') {
                                                                stringp++;
                                                                data = 
strsep(&stringp, "\"");
                                                                stringp++;
                                                        } else {
                                                                if (stringp)
                                                                        data 
= strsep(&stringp, ",");
                                                                else
                                                                        data 
= "";
                                                        }
#if 0

                                                        pbx_substitute_variables_helper(NULL, 
ext, realext, sizeof(realext)-1);
                                                        cidmatch = 
strchr(ext, '/');
                                                        if (cidmatch) {
                                                                *cidmatch = 
'\0';
                                                                cidmatch++;
                                                        }
                                                        stringp=ext;
                                                        strsep(&stringp, 
"/");
#endif

#if 1
                                                        pbx_substitute_variables_helper(NULL, 
ext, realext, sizeof(realext)-1);
                                                        stringp = realext;
                                                        ext = 
strsep(&stringp, "/");
                                                        cidmatch = stringp;
#endif

                                                        if (!data)
                                                                data="";
                                                        while(*appl && 
(*appl < 33)) appl++;
                                                        if (ipri) {
                                                                if 
(!strcmp(realext, "_."))
                                                                        ast_log(LOG_WARNING, 
"The use of '_.' for an extension is strongly discouraged and c
                                                                if 
(ast_add_extension2(con, 0, realext, ipri, cidmatch, appl, strdup(data), 
FREE, registrar)
                                                                        ast_log(LOG_WARNING, 
"Unable to register extension at line %d\n", v->lineno);
                                                                }
                                                        }
                                                        free(tc);



which is what I think you intended and it still doesn't work for me (yes, I 
did stop and restart Asterisk)...  I'm in the UK using a cheap X100P clone 
and V.23 Caller ID which used to work 100% under 1.0.7 in my extensions.conf 
I have a context, thus:

;
; from-pstn : incoming calls from the FXO card from PSTN
;
[from-pstn]
exten => s,1,Answer
exten => s,2,NoOp("CallerIDnum=${CALLERIDNUM} CallerID=${CALLERID}")
exten => s/0,3,Goto(no-callerid,s,1)

; to dedicated lines on 7960s and the 7912s
exten => 
s,3,Dial(SIP/9001&SIP/9002&SIP/2003&SIP/2004&SIP/2005&SIP/2006&IAX2/thorcom/8102001,20,rt)
exten => s,4,Voicemail(u2001)
exten => s,5,HangUp

; okay, they withheld their caller id - play out a "we dont do withheld 
callers" and dump them to voicemail
[no-callerid]
exten => s,1,Playback(withheld-callerid)
exten => s,2,Voicemail(su2001)
exten => s,3,Hangup


Now when I get a call from a withheld this happens:

Connected to Asterisk 1.0.8 currently running on gate (pid = 18645)
Verbosity is at least 3
    -- Remote UNIX connection
    -- Starting simple switch on 'Zap/1-1'
    -- Executing Answer("Zap/1-1", "") in new stack
    -- Executing NoOp("Zap/1-1", ""CallerIDnum=0 CallerID=Number Witheld 
<0>"") in new stack
    -- Executing Dial("Zap/1-1", 
"SIP/9001&SIP/9002&SIP/2004&SIP/2005&SIP/2006&IAX2/thorcom/8102001|20|rt") 
in new stack
    -- Called 9001
    -- Called 9002
    -- Called ... etc. etc.

and all my phones ring :o(


Mike



----- Original Message ----- 
From: "Kevin P. Fleming" <kpfleming at digium.com>
To: "Asterisk Users Mailing List - Non-Commercial Discussion" 
<asterisk-users at lists.digium.com>
Sent: Saturday, June 25, 2005 7:33 PM
Subject: Re: [Asterisk-Users] * 1.0.8: no more reacting to callerid?


> Daryl Jones wrote:
>> It's not just you.  Same thing happens here. I went back to 1.0.7.
>
> There is definitely breakage in 1.0.8 in this area; please test the patch 
> below and report back the results here so we can get a new release made.
>
> diff -u -r1.45.2.2 pbx_config.c
> --- pbx/pbx_config.c    19 May 2005 02:51:00 -0000      1.45.2.2
> +++ pbx/pbx_config.c    25 Jun 2005 17:32:47 -0000
> @@ -1687,15 +1687,10 @@
>                                                                 else
>
>  data = "";
>                                                         }
> - pbx_substitute_variables_helper(NULL, ext, realext, sizeof(realext)-1);
> -                                                       cidmatch = 
> strchr(ext, '/');
> -                                                       if (cidmatch) {
> - *cidmatch = '\0';
> - 
> cidmatch++;
> -                                                       }
> -                                                       stringp=ext;
> -                                                       strsep(&stringp, 
> "/");
> -
> + pbx_substitute_variables_helper(NULL, ext, realext, sizeof(realext)-1);
> +                                                       stringp = realext;
> +                                                       ext = 
> strsep(&stringp, "/");
> +                                                       cidmatch = 
> stringp;
>                                                         if (!data)
>                                                                 data="";
>                                                         while(*appl && 
> (*appl < 33)) appl++;
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-users
> 




More information about the asterisk-users mailing list