Hi,
when using sip.js websocket client i got this sequence
REGISTER
sip:mysip.com SIP/2.0
Via: SIP/2.0/WSS 1pds95dm7slp.invalid;branch=z9hG4bK1393343
Max-Forwards: 70
To: <sip:1096@mysip.com>
From: <sip:1096@mysip.com>;tag=99i9ka9951
Call-ID: 1agj9ujebn5k2006qvosg7
CSeq: 82 REGISTER
Authorization: Digest algorithm=MD5, username="1096",
realm="mysip.com", nonce="VHiXFFR4legH+zdoSro9zybQQclvFtcR",
uri="sip:mysip.com", response="2d9843d09d94f295d0ebfa323233783c"
Contact:
<sip:n7o5lk6u@1pds95dm7slp.invalid;transport=ws>;reg-id=1;+sip.instance="<urn:uuid:d68a53c4-37e7-4f5c-87f2-68d7cca14b93>";expires=600
Allow: ACK,CANCEL,BYE,OPTIONS,INFO,NOTIFY,INVITE,MESSAGE
Supported: path,gruu,100rel,outbound
User-Agent: SIP.js/0.6.3
Content-Length: 0
SIP/2.0 200 OK
Via: SIP/2.0/WSS sg6h3at19h29.invalid;branch=z9hG4bK4876180;rport=65377;received=X.X.X.X
To: <sip:1096@mysip.com>;tag=78e678a5264e254e660865f4df24edf3.e69b
From: <sip:1096@mysip.com>;tag=j39lvle827
Call-ID: c0ofajiui4u2vtem662rdh
CSeq: 86 REGISTER
Contact:
<sip:8umlvk34@sg6h3at19h29.invalid;transport=ws>;expires=600;pub-gruu="sip:1096@mysip.com;gr=urn:uuid:876de649-281f-4f7f-9a3e-7b2a7e11f3cc";temp-gruu="sip:uloc-5478bf26-4504-1-7fd4326@mysip.com;gr";+sip.instance="<urn:uuid:876de649-281f-4f7f-9a3e-7b2a7e11f3cc>";reg-id=1
Content-Length: 0
INVITE sip:2134@mysip.com SIP/2.0
Via: SIP/2.0/WSS sg6h3at19h29.invalid;branch=z9hG4bK1752419
Max-Forwards: 70
To: <sip:2134@mysip.com>
From: <sip:1096@mysip.com>;tag=6vii55tc02
Call-ID: i3hndju3tgsge7ctnvo2
CSeq: 4782 INVITE
Contact: <sip:1096@mysip.com;gr=urn:uuid:876de649-281f-4f7f-9a3e-7b2a7e11f3cc>
Allow: ACK,CANCEL,BYE,OPTIONS,INFO,NOTIFY,INVITE,MESSAGE
Content-Type: application/sdp
Supported: gruu,100rel,outbound
User-Agent: SIP.js/0.6.3
Content-Length: 2585
i issued kamctl show to view the registered user
AOR:: 1096(a)mysip.com
Contact:: sip:8umlvk34@sg6h3at19h29.invalid;transport=ws Q=
Expires:: 177
Callid:: c0ofajiui4u2vtem662rdh
Cseq:: 86
User-agent:: SIP.js/0.6.3
Received:: sip:X.X.X.X:65377;transport=WS
State:: CS_SYNC
Flags:: 0
Cflag:: 6
Socket:: tls:Y.Y.Y.Y:8443
Methods:: 927
Ruid:: uloc-5478bf26-4504-1
Instance:: <urn:uuid:876de649-281f-4f7f-9a3e-7b2a7e11f3cc>
Reg-Id:: 1
Last-Keepalive:: 1417200609
Last-Modified:: 1417200609
what is the best way to check if the INVITE is from a registered user and how to get
usrloc properties for the registered user ?
i tried this
reg_fetch_contacts("location", "$fu", "caller");
$var(i) = 0;
$var(found) = 0;
$var(contact) = $(ct{nameaddr.uri});
while($var(found) == 0 && $var(i) < $(ulc(caller=>count)))
{
xlog("L_INFO", "$ci|log| checking against
$(ulc(caller=>addr)[$var(i)])");
if($var(contact) == $(ulc(caller=>addr)[$var(i)]))
{
$var(found) = 1;
$var(caller_idx) = $var(i);
$var(userlocid) = $(ulc(caller=>ruid)[$var(i)]);
}
else
$var(i) = $var(i) + 1;
}
the problem i see is that the INVITE Contact doesn't match the one registered.
is this a problem with sip.js or am i missing something in kamailio.cfg or should kamailio
save the contact info as sip.js is sending?
Thank you