From: Richard Mudgett Date: Mon, 27 Feb 2012 23:36:58 +0000 (+0000) Subject: Fix callerid of Originated calls. X-Git-Tag: 10.3.0-rc1~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=da61b9ec5ff83321310e2bc1778216cb01b288d0;p=thirdparty%2Fasterisk.git Fix callerid of Originated calls. Thanks to Matt Riddell for tracking this down. (closes issue ASTERISK-19385) Reported by: ornix ........ Merged revisions 357093 from http://svn.asterisk.org/svn/asterisk/branches/1.8 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@357095 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/channel.c b/main/channel.c index ffd445c7e2..3d05d6ffb8 100644 --- a/main/channel.c +++ b/main/channel.c @@ -5547,6 +5547,16 @@ struct ast_channel *__ast_request_and_dial(const char *type, struct ast_format_c } } + /* + * I seems strange to set the CallerID on an outgoing call leg + * to whom we are calling, but this function's callers are doing + * various Originate methods. This call leg goes to the local + * user. Once the local user answers, the dialplan needs to be + * able to access the CallerID from the CALLERID function as if + * the local user had placed this call. + */ + ast_set_callerid(chan, cid_num, cid_name, cid_num); + ast_set_flag(chan->cdr, AST_CDR_FLAG_ORIGINATED); ast_party_connected_line_set_init(&connected, &chan->connected); if (cid_num) {