[Users] Using uac_replace_from to munge username between ser and Asterisk?

Barry Flanagan barryf-lists at flanagan.ie
Fri Feb 3 12:38:32 CET 2006


Barry Flanagan wrote:
> Bogdan-Andrei Iancu wrote:
> 
>> if you enable auto from_restore_mode, you do not need to perform any 
>> restore from script. Just replace the from in the initial INVITE and 
>> this is it - all replies and sequential request would be auto fixed 
>> (restore/replace).
> 
> 
> Aha! Thank you very much  - that seems to have done the trick!

Hmm, OK, it did work until I started using nathelper and mediaproxy. 
With mediaprixy I get no audio, and Asterisk is retransmitting

It appears that mediaproxy is looking for the "unmunged" username. Below 
is the mediaproxy log for this call. It is expecting 
from:sipps2 at sip.domain.com, whereas asterisk is sending 
sipps2_domain.com at sip.domain.com

Feb  3 11:25:05 www1 mediaproxy[7461]: command request 
1647296070-45779966 at XXX.XXX.96.225 
XXX.XXX.96.225:12047:audio,XXX.XXX.96.225:12049:video XXX.XXX.96.225 
sip.domain.com local sip.domain.com local 
Nero=20SIPPS=20IP=20Phone=20Version=202.1.3.25 
info=from:sipps2 at sip.domain.com,to:0863854334 at sip.domain.com,fromtag:622fb836,totag:
Feb  3 11:25:05 www1 mediaproxy[7461]: session 
1647296070-45779966 at XXX.XXX.96.225: started. listening on 
XXX.XXX.1.16:35194,35196


Here Asterisk is retransmitting:
Retransmitting #1 (NAT) to XXX.XXX.1.16:5060:
SIP/2.0 200 OK
Via: SIP/2.0/UDP 
XXX.XXX.1.16;branch=z9hG4bK9e52.4f879791.0;received=XXX.XXX.1.16
Via: SIP/2.0/UDP 
XXX.XXX.96.225:12046;branch=z9hG4bKnp1643392953-45a6e6feXXX.XXX.96.225;rport=12020
Record-Route: <sip:XXX.XXX.1.16:5060;nat=yes;ftag=61f4a3ce;lr=on>
From: ""Barry Flanagan"" <sip:sipps2_domain.com at sip.domain.com>;tag=61f4a3ce
To: <sip:0863854334 at sip.domain.com>;tag=as53b2855b
Call-ID: 1643422664-49d79852 at XXX.XXX.96.225
CSeq: 2 INVITE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Contact: <sip:0863854334 at XXX.XXX.1.68>
Content-Type: application/sdp
Content-Length: 201


  Any idea?

Thanks.

-Barry Flanagan



> 
> Regards,
> 
> -Barry Flanagan
> 
>>
>> regards,
>> bogdan
>>
>> Barry Flanagan wrote:
>>
>>> Bogdan-Andrei Iancu wrote:
>>>
>>>> Hi Barry,
>>>>
>>>> have you set auto from restoring? See:
>>>>    http://openser.org/docs/modules/1.1.x/uac.html#AEN75
>>>
>>>
>>>
>>>
>>> Yes, but I am not sure where it is supposed to go.
>>>
>>> I have the following in just before relaying to Asterisk:
>>>
>>>     rewritehostport("XXX.XXX.XXX.XXX:5060");
>>>     uac_replace_from("$fn","sip:$au_$ar@$fd");
>>>     append_hf("P-hint: GATEWAY\r\n");
>>>     t_relay("udp:XXX.XXX.XXX.XXX:5060");
>>>
>>>
>>> and I put in uac_restore_from(); just after the record_route()
>>>
>>>
>>> with all the other modparams I have:
>>>
>>> modparam("uac","from_restore_mode","auto")
>>>
>>>
>>> Thanks for the help.
>>>
>>> -Barry
>>>
>>>
>>>> regards,
>>>> bogdan
>>>>
>>>> Barry Flanagan wrote:
>>>>
>>>>>
>>>>> So, the only way around it that I can see is to somehow have 
>>>>> OpenSER change the username to username_domain so that each will be 
>>>>> unique.
>>>>>
>>>>> It looks like uac_from_replace should handle this. I have tried it, 
>>>>> and I can see that Asterisk does in fact get user_domain at domain in 
>>>>> the first invite, but thereafter for some reason OpenSER changes it 
>>>>> to just _ at domain for subsequent requests.
>>>>>
>>>>>
>>>>> Regards,
>>>>>
>>>>> -Barry
>>>>>
>>>
>>>
>>
> 
> 


-- 

-Barry Flanagan




More information about the sr-users mailing list