<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/4.4.3">
</HEAD>
<BODY>
Hi,<BR>
<BR>
If the authentication works with another client then it suggest a problem with your HTML5 client.<BR>
<BR>
There is nothing special or different about authenticating over a WebSocket connection.<BR>
<BR>
Another thing would be to try a different WebSocket client, for example sipml5 (which is known to work), to check.<BR>
<BR>
Regards,<BR>
<BR>
Peter<BR>
<BR>
On Tue, 2012-08-21 at 13:24 +0200, David Pati&#241;o wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
Hello,

I've just test a sip call from an X-Lite client to Ekiga client an
everything has gone ok.
It seems an issue with authentication over WebSockets but I have no
experience in this area so I can not say where the problem is (and
REGISTER auth works fine).

Any other idea or anything else to check?

I'm blocked since last week.

Thanks a lot.
Kind Regards,

--
     --DAVID--




2012/8/21 Peter Dunkley &lt;<A HREF="mailto:peter.dunkley@crocodile-rcs.com">peter.dunkley@crocodile-rcs.com</A>&gt;
&gt;
&gt; Hello,
&gt;
&gt; This does look like an issue with authentication rather than WebSockets.
&gt; Have you tried using an ordinary SIP client (for example, Jitsi) with your
&gt; Kamailio configuration to verify that the authentication part of
&gt; kamailio.cfg is correct?
&gt;
&gt; Regards,
&gt;
&gt; Peter
&gt;
&gt;
&gt; On Tue, 2012-08-21 at 10:59 +0200, David Pati&#241;o wrote:
&gt;
&gt; Hi there,
&gt;
&gt; I'm new on kamailio users list.
&gt; Now I'm developing a client in javascript (using websockets) to SIP calls.
&gt;
&gt; I'm using last devel version of kamailio with websocket support. I've
&gt; already get a correct REGISTER transaction but now I'm not able to get
&gt; a correct INVITE transaction. Actually I'm not sure if this a kamailio
&gt; error or a problem with my source code however I'm using the same
&gt; function to get digest info from received nonce both REGISTER and
&gt; INVITE transactions. The INVITE transaction always enters in an
&gt; endless loop with 407 requests.
&gt;
&gt; Please, is there anybody who could help me?
&gt;
&gt; Those are the frames of my code (obtained from chrome browser console):
&gt;
&gt; wsUri: ws://10.1.20.40:80/
&gt; SOCKET CREATED
&gt; SOCKET OPENED
&gt;
&gt; SENT:
&gt; REGISTER <A HREF="sip:10.1.20.40">sip:10.1.20.40</A> SIP/2.0
&gt; Via: SIP/2.0/WS
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bK1C36k8S3b0OobHUAOLLOae0SbsbEQg
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=Me0arqDG6K8o7l32oJgR
&gt; To: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>
&gt; Call-ID: 0EQSBkoG9RGgfg3E
&gt; CSeq: 1 REGISTER
&gt; Max-Forwards: 70
&gt; Supported: path, outbound, gruu
&gt; Contact: &lt;<A HREF="sip:101@KMkjMf37lVeM.invalid">sip:101@KMkjMf37lVeM.invalid</A>;transport=ws&gt;
&gt;         reg-id=98
&gt;         +sip.instance=&quot;&lt;urn:uuid:beb-68a9-6396e5f4&gt;&quot;
&gt;
&gt;
&gt; RESPONSE:
&gt; SIP/2.0 401 Unauthorized
&gt; Via: SIP/2.0/WS
&gt;
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bK1C36k8S3b0OobHUAOLLOae0SbsbEQg;rport=50906;received=10.1.2.229
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=Me0arqDG6K8o7l32oJgR
&gt; To: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=9de7b31b15b69da019f867d4866ff286.000c
&gt; Call-ID: 0EQSBkoG9RGgfg3E
&gt; CSeq: 1 REGISTER
&gt; WWW-Authenticate: Digest realm=&quot;10.1.20.40&quot;,
&gt; nonce=&quot;UDND2VAzQq0Tz8wvIFWNh2eYRxdtu4Re&quot;
&gt; Server: kamailio (3.4.0-dev3 (i386/linux))
&gt; Content-Length: 0
&gt;
&gt;
&gt; SENT:
&gt; REGISTER <A HREF="sip:10.1.20.40">sip:10.1.20.40</A> SIP/2.0
&gt; Via: SIP/2.0/WS
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bKl521S8acS8nVEcejv2GOJ8r46Jb037
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=Pb8d1gV8K5qJo1gOv612
&gt; To: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>
&gt; Call-ID: 0EQSBkoG9RGgfg3E
&gt; CSeq: 2 REGISTER
&gt; Max-Forwards: 70
&gt; Supported: path, outbound, gruu
&gt; Contact: &lt;<A HREF="sip:101@KMkjMf37lVeM.invalid">sip:101@KMkjMf37lVeM.invalid</A>;transport=ws&gt;
&gt;         reg-id=98
&gt;         +sip.instance=&quot;&lt;urn:uuid:beb-68a9-6396e5f4&gt;&quot;
&gt; Authorization: Digest username=&quot;101&quot;, realm=&quot;10.1.20.40&quot;,
&gt; nonce=&quot;UDND2VAzQq0Tz8wvIFWNh2eYRxdtu4Re&quot;, opaque=&quot;&quot;,
&gt; uri=&quot;<A HREF="sip:10.1.20.40">sip:10.1.20.40</A>&quot;, response= &quot;9b209eb35ee88192e2e0c468f8cf91da&quot;
&gt;
&gt;
&gt; RESPONSE:
&gt; SIP/2.0 200 OK
&gt; Via: SIP/2.0/WS
&gt;
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bKl521S8acS8nVEcejv2GOJ8r46Jb037;rport=50906;received=10.1.2.229
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=Pb8d1gV8K5qJo1gOv612
&gt; To: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=9de7b31b15b69da019f867d4866ff286.b2e4
&gt; Call-ID: 0EQSBkoG9RGgfg3E
&gt; CSeq: 2 REGISTER
&gt; Contact:
&gt; &lt;<A HREF="sip:101@KMkjMf37lVeM.invalid">sip:101@KMkjMf37lVeM.invalid</A>;transport=ws&gt;;expires=120;received=&quot;<A HREF="sip:10.1.2.229:50906">sip:10.1.2.229:50906</A>;transport=WS&quot;;pub-gruu=&quot;<A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;gr=urn:uuid:beb-68a9-6396e5f4&quot;;temp-gruu=&quot;<A HREF="sip:uloc-5033344d-5211-1-1de173@10.1.20.40">sip:uloc-5033344d-5211-1-1de173@10.1.20.40</A>;gr&quot;;+sip.instance=&quot;&lt;urn:uuid:beb-68a9-6396e5f4&gt;&quot;;reg-id=98
&gt; Server: kamailio (3.4.0-dev3 (i386/linux))
&gt; Content-Length: 0
&gt;
&gt;
&gt; SENT:
&gt; INVITE <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A> SIP/2.0
&gt; Via: SIP/2.0/WS
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bKOIosJ8TMPgvfHme6NIm4GSn24Fu7f7
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 1 INVITE
&gt; Max-Forwards: 70
&gt; Supported: path, outbound, gruu
&gt; Contact: &lt;<A HREF="sip:101@KMkjMf37lVeM.invalid">sip:101@KMkjMf37lVeM.invalid</A>;transport=ws
&gt;         gr=urn:uuid:beb-68a9-6396e5f4;ob&gt;
&gt; Content-Type: application/sdp
&gt;
&gt;
&gt; RESPONSE:
&gt; SIP/2.0 407 Proxy Authentication Required
&gt; Via: SIP/2.0/WS
&gt;
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bKOIosJ8TMPgvfHme6NIm4GSn24Fu7f7;rport=50906;received=10.1.2.229
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>;tag=9de7b31b15b69da019f867d4866ff286.f545
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 1 INVITE
&gt; Proxy-Authenticate: Digest realm=&quot;10.1.20.40&quot;,
&gt; nonce=&quot;UDND2VAzQq0Tz8wvIFWNh2eYRxdtu4Re&quot;
&gt; Server: kamailio (3.4.0-dev3 (i386/linux))
&gt; Content-Length: 0
&gt;
&gt;
&gt; SENT:
&gt; ACK <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A> SIP/2.0
&gt; Via: SIP/2.0/WS
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bKAmmLhK71tr2QoAiV9f5QmdKF9dGkke
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>;tag=9de7b31b15b69da019f867d4866ff286.f545
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 1 ACK
&gt; Max-Forwards: 70
&gt; Supported: path, outbound, gruu
&gt;
&gt;
&gt; SENT:
&gt; INVITE <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A> SIP/2.0
&gt; Via: SIP/2.0/WS
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bK1GRkmlTVo7Cb4fg8OMe9g39g096hmn
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 2 INVITE
&gt; Max-Forwards: 70
&gt; Supported: path, outbound, gruu
&gt; Contact: &lt;<A HREF="sip:101@KMkjMf37lVeM.invalid">sip:101@KMkjMf37lVeM.invalid</A>;transport=ws
&gt;         gr=urn:uuid:beb-68a9-6396e5f4;ob&gt;
&gt; Proxy-Authorization: Digest username=&quot;101&quot;, realm=&quot;10.1.20.40&quot;,
&gt; nonce=&quot;UDND2VAzQq0Tz8wvIFWNh2eYRxdtu4Re&quot;, opaque=&quot;&quot;,
&gt; uri=&quot;<A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>&quot;, response= &quot;f4bbe128abf3acb3a4e11882749d8798&quot;
&gt; Content-Type: application/sdp
&gt;
&gt;
&gt; RESPONSE:
&gt; SIP/2.0 407 Proxy Authentication Required
&gt; Via: SIP/2.0/WS
&gt;
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bK1GRkmlTVo7Cb4fg8OMe9g39g096hmn;rport=50906;received=10.1.2.229
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>;tag=9de7b31b15b69da019f867d4866ff286.0007
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 2 INVITE
&gt; Proxy-Authenticate: Digest realm=&quot;10.1.20.40&quot;,
&gt; nonce=&quot;UDND2VAzQq0Tz8wvIFWNh2eYRxdtu4Re&quot;
&gt; Server: kamailio (3.4.0-dev3 (i386/linux))
&gt; Content-Length: 0
&gt;
&gt;
&gt; SENT:
&gt; ACK <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A> SIP/2.0
&gt; Via: SIP/2.0/WS
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bKG9v5g7i1LNsoVGo18ULlgqdA1EcFGb
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>;tag=9de7b31b15b69da019f867d4866ff286.0007
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 2 ACK
&gt; Max-Forwards: 70
&gt; Supported: path, outbound, gruu
&gt;
&gt;
&gt; SENT:
&gt; INVITE <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A> SIP/2.0
&gt; Via: SIP/2.0/WS
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bK8cie6bGSG0eOGh7Ne08Ro4CS1hI0oJ
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 3 INVITE
&gt; Max-Forwards: 70
&gt; Supported: path, outbound, gruu
&gt; Contact: &lt;<A HREF="sip:101@KMkjMf37lVeM.invalid">sip:101@KMkjMf37lVeM.invalid</A>;transport=ws
&gt;         gr=urn:uuid:beb-68a9-6396e5f4;ob&gt;
&gt; Proxy-Authorization: Digest username=&quot;101&quot;, realm=&quot;10.1.20.40&quot;,
&gt; nonce=&quot;UDND2VAzQq0Tz8wvIFWNh2eYRxdtu4Re&quot;, opaque=&quot;&quot;,
&gt; uri=&quot;<A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>&quot;, response= &quot;f4bbe128abf3acb3a4e11882749d8798&quot;
&gt; Content-Type: application/sdp
&gt;
&gt;
&gt; RESPONSE:
&gt; SIP/2.0 407 Proxy Authentication Required
&gt; Via: SIP/2.0/WS
&gt;
&gt; KMkjMf37lVeM.invalid;branch=z9hG4bK8cie6bGSG0eOGh7Ne08Ro4CS1hI0oJ;rport=50906;received=10.1.2.229
&gt; From: <A HREF="sip:101@10.1.20.40">sip:101@10.1.20.40</A>;tag=3U0osO4h3h2bgCrvnCqO
&gt; To: <A HREF="sip:102@10.1.20.40">sip:102@10.1.20.40</A>;tag=9de7b31b15b69da019f867d4866ff286.b1f7
&gt; Call-ID: 9KoKnFdh285k2jg4
&gt; CSeq: 3 INVITE
&gt; Proxy-Authenticate: Digest realm=&quot;10.1.20.40&quot;,
&gt; nonce=&quot;UDND2VAzQq0Tz8wvIFWNh2eYRxdtu4
&gt; Re&quot;
&gt; Server: kamailio (3.4.0-dev3 (i386/linux))
&gt; Content-Length: 0
&gt;
&gt;
&gt; .......and so on in an endless loop with 407 requests
&gt;
&gt; Thanks a lot
&gt;
&gt; Kind Regards
&gt;
&gt; --
&gt;      --DAVID--
&gt;
&gt; _______________________________________________
&gt; SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
&gt; <A HREF="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</A>
&gt; <A HREF="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</A>
&gt;
&gt;
&gt; --
&gt; Peter Dunkley
&gt; Technical Director
&gt; Crocodile RCS Ltd
&gt;
&gt;
&gt; _______________________________________________
&gt; SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
&gt; <A HREF="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</A>
&gt; <A HREF="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</A>
&gt;

_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
<A HREF="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</A>
<A HREF="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</A>
</PRE>
</BLOCKQUOTE>
<BR>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%">
<TR>
<TD>
<PRE>
-- 
Peter Dunkley
Technical Director
Crocodile RCS Ltd
</PRE>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>