[asterisk-bugs] [Asterisk 0017138]: CallerID not properly set when using Originate and AGI

Asterisk Bug Tracker noreply at bugs.digium.com
Tue May 25 15:50:04 CDT 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=17138 
====================================================================== 
Reported By:                kobaz
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   17138
Category:                   Channels/chan_iax2
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:           1.6.0.26 
JIRA:                        
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2010-04-05 16:03 CDT
Last Modified:              2010-05-25 15:50 CDT
====================================================================== 
Summary:                    CallerID not properly set when using Originate and
AGI
Description: 
Dialplan:

context Dialer_DialPhone {
  s => {
    if ("${PhoneAutoAnswer}" == "1") {
      SIPAddHeader(Call-Info: answer-after=0');
      SIPAddHeader(alert-info: alert-autoanswer');
    }

    Set(CALLERID(name)=${DstCallerIdName});
    Set(CALLERID(num)=${DstCallerIdNum});
    Dial(${PhoneDevice},10);
    Hangup();
  }
}

context Dialer_DialNumber {
  s => {
    Set(CALLERID(name)=${SrcCallerIdName});
    Set(CALLERID(num)=${SrcCallerIdNum});

//   Dial(IAX2/out-tipton-local/${DstNumber},120,r); // this works
    goto ${PhoneClassOfService}, ${DstNumber}, 1; // this doesn't
    
    Hangup();
  }
}

You should be able to override the callerid even if the call will be sent
to an agi script.

Note that agi_callerid and agi_calleridname are actually correct as set in
the dialplan.. but when the agi executes the Dial... callerid gets sent out
as "s <s>" as shown in the iax debug.

Note that callerid is not changed by the agi script.

If you replace the goto, with the Dial() straight from dialplan, CALLING
NUMBER and CALLING NAME will be correct in the iax call.
====================================================================== 

---------------------------------------------------------------------- 
 (0122445) kobaz (reporter) - 2010-05-25 15:50
 https://issues.asterisk.org/view.php?id=17138#c122445 
---------------------------------------------------------------------- 
16:45 <Kobaz> pabelanger: what's happening is that when agi is executed,
the callerid gets set to 's'
16:45 <Kobaz> there's something that's like... locked when you fork to
agi
16:46 <Kobaz> <Local/s at Dialer_DialPhone-951d;1>AGI Tx >> agi_calleridname:
FooBarInc
16:46 <Kobaz> but yet, iax is sending out 's' for callerid name
16:46 <Kobaz> and it's the same with sip and dahdi and etc... it seems to
be happening before the channel driver kicks in 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-05-25 15:50 kobaz          Note Added: 0122445                          
======================================================================




More information about the asterisk-bugs mailing list