[asterisk-dev] DNID and RDNIS are not carried across IAX2

Nir Simionovich nir.simionovich at gmail.com
Mon Dec 28 14:35:29 CST 2009


Tilghman Lesher wrote:
> On Sunday 27 December 2009 09:10:28 Nir Simionovich wrote:
>   
>> Hi All,
>>
>>   I'm not sure if this is a feature of Asterisk or a bug, but it would
>> appear that IAX2 doesn't pass DNID and
>> RDNIS information across servers. Examine the following test scenario:
>>
>> SIP Carrier --- SIP ---> Asterisk1 --- IAX2 ---> Asterisk2
>>
>>   When the call from the carrier is accepted at Asterisk1, DNID and
>> RDNIS information is available. However,
>> once the call traverses over IAX2 to Asterisk2, that information is
>> purged and is no longer available. This causes
>> issues when requiring the DNID information to be available,
>> specifically, if you are using premium rate services
>> development, where the RDNIS is used to indicate that the call had
>> traversed the IN services platform, and not
>> being pushed into the server directly - there are tons of examples.
>>
>>   I know the easy way is to use SIP across the board, but I believe this
>> should also be carried across with IAX2.
>> Unless I'm mistaken and I'll be happy to be corrected.
>>     
>
> Actually, it would be the same way with SIP.  The problem is architectural.
> We only inherit the callerid name and number when we create a slave channel.
> This could be fixed starting in 1.8 (trunk), because the requesting channel is
> passed along in the request, which could copy the dnid and rdnis from the
> requesting channel, but there is no good way to do this in earlier versions.
> The best workaround would be to use IAXVAR(), but that's only available in
> 1.6.0 and later.
>
>   
Hmmmm... that's a serious bummer - guess I'll need to find another 
methodology of passing that information
in 1.4 and below. Tilghman, can you put a note about this for the next 
release?

Nir



More information about the asterisk-dev mailing list