[asterisk-bugs] [Asterisk 0011322]: Respect the original "From" header in "Dial" application
noreply at bugs.digium.com
noreply at bugs.digium.com
Fri Nov 23 04:41:09 CST 2007
A NOTE has been added to this issue.
======================================================================
http://bugs.digium.com/view.php?id=11322
======================================================================
Reported By: ibc
Assigned To: oej
======================================================================
Project: Asterisk
Issue ID: 11322
Category: Channels/chan_sip/Interoperability
Reproducibility: always
Severity: minor
Priority: normal
Status: assigned
Asterisk Version: 1.4.14
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Disclaimer on File?: N/A
Request Review:
======================================================================
Date Submitted: 11-20-2007 05:57 CST
Last Modified: 11-23-2007 04:41 CST
======================================================================
Summary: Respect the original "From" header in "Dial"
application
Description:
If Asterisk receives an incoming SIP call from an **external** SIP account,
and during the dialplan it must call to an internal SIP user, the INVITE
from Asterisk has a modified "From" header (the fromdomain is changed by
Asterisk). Why?
This is not needed and it's very anti-RFC ("From" shouldn't be changed).
And in fact it can cause problems, as this example:
- Our Asterisk domain is "asterisk_domain.org".
- We have two internal users:
- "Bob" <200>
- "Pepe" <201>
- We receive an external SIP incoming call with this From header:
From: "EXTERNAL <sip:201 at external_domain.com>"
- During the dialplan Asterisk finally does:
Dial(SIP/200)
- This new INVITE generated by Asterisk will contain this header:
From: "EXTERNAL" <sip:201 at asterisk_domain.org> <--- DOMAIN CHANGED
!!!!
So our internal user "Bob" <200> will receive a call and will think that
it's a call from our internal user "Pepe" <201>. If, for example, the call
is not answered and later Bob open him "missed calls" he will see a call
from 201, and if he calls he will call in fact to "Pepe <201>".
This is IMHO a wrong behaviour. Asterisk shoudn't change the "From"
header, there is no reason for that. Why a internal user can't know from
which domain he recives a call vía Asterisk?
For the established dialog the "From" domain is not important at all, the
only the called needs to know if the Call-ID, From/To tags and Contact
header to send in-dialog requests, no more.
I attach a debug example that shows how the "From" header is changed in
the INVITE generated by Asterisk.
======================================================================
----------------------------------------------------------------------
oej - 11-23-07 04:41
----------------------------------------------------------------------
Don't promise too much, I might run a class in Barcelona next spring :-)
I just added a commit to svn trunk to change the internal caller ID
structure
http://svn.digium.com/view/asterisk/trunk/include/asterisk/channel.h?view=log
then we can start changing some more functions and set outbound caller ID
domain too.
Issue History
Date Modified Username Field Change
======================================================================
11-23-07 04:41 oej Note Added: 0074224
======================================================================
More information about the asterisk-bugs
mailing list