jwthanh / sipml5

Automatically exported from code.google.com/p/sipml5
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Username in the SIP Request Line Missing #70

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Register with a username
2. Make a PUBLISH request

What is the expected output? What do you see instead?

I expect the Request Line and Proxy-Authorization header to contain a SIP URI 
with the username present, however it is missing, for example:

Expected:
PUBLISH sip:dave@10.15.20.170 SIP/2.0
Proxy-Authorization: Digest 
username="dave",realm="10.15.20.170",nonce="UP6tZFD+rDgwl5gh79nHEdHp6bIVuxr4",ur
i="sip:dave@10.15.20.170",response="61d7d60df1540fa751ac04744bf88023",algorithm=
MD5

Actual:
PUBLISH sip:10.15.20.170 SIP/2.0
Proxy-Authorization: Digest 
username="dave",realm="10.15.20.170",nonce="UP6tG1D+q++XcTNK0XXEBYtN3Q0Rxwp0",ur
i="sip:10.15.20.170",response="06a5e43b69e0c470a6e694c0648fdae7",algorithm=MD5

What version of the product are you using? On what operating system?

sipML5 v1.2.165
Chrome v26.0.1386.0 dev
Mac OS X 10.8.2 (Mountain Lion)

The lack of username breaks at least the Kamailio SIP server’s 
presence-module using SIP/SIMPLE.

The SIP URI is taken from the “realm” passed when creating the 
SIPml.Stack() (this.o_uri_remote_target = o_session.o_stack.network.o_uri_realm 
in tsip_dialog.js). Changing the realm to match the IMPU (i.e., 
username@domain) seems to work, but is not ideal.

Originally reported to the mailing list at: 
https://groups.google.com/d/topic/doubango/L69SO5wKY7k/discussion

Original issue reported on code.google.com by d...@davecardwell.co.uk on 23 Jan 2013 at 10:10

GoogleCodeExporter commented 9 years ago
Hi Friends,
I had the same issue and I was able to fix it by adding 2 lines to 
tsip_dialog.js "tsip_dialog.prototype.init" function
I added the 
  if (e_type.s_name == "PUBLISH")
                this.o_uri_remote_target.s_user_name =o_session.o_uri_from.s_user_name; // request-uri (BUG FIX FOR PUBLISH)

inside the last else block and now it is working fine.
Hope this will help somebody.

Bets Regards,
Roy.

Original comment by ajithdes...@gmail.com on 22 May 2013 at 11:37