[SIP Beyond VoIP] Some progress: Getting started with sylkserver (and NAT)

Adrian Weiler sylk-testing at aweiler.com
Mon Jan 4 13:07:45 CET 2016


thank you for your response.

At 04.01.2016 01:23 Adrian Georgescu wrote:
> MSRP is another type of media, like RTP media which is used for audio/video.
> If SylkServer is sitting on a public IP, MSRP media should just work as the server is always reachable by an MSRP client.
> Short hint, enable logging and see what happens, each protocol can be debugged to a file logged by SylkServer.
I already did that, but wanted to avoid posting tons of logs to this
public space.

What I did: on a Blink client, I select my conference and hit the "Chat"
button. The chat window opens, then I click "Connect". Then Sylkserver
receives an INVITE, sends 100 Trying, then 200 OK. Then Sylkserver
receives the client's ACK. But then nothing happen. After 15 seconds,
the client becomes impatient and disconnects.

- If I do the same on a test conference at sip2sip.info, I receive a
greeting (Conference Room. Welcome to Sylkserver! etc...). On my own
conference, I don't receive such a greeting.
- When opening a conference with sip2sip.info the client's SIP trace
differs after sending ACK: The client now sends SUBSCRIBE. On my own
conference, the client just waits.
It seems that for some reason the client doesn't understand that there
is a conference to subscribe to.
- When talking to sip2sip.info, the client is *much* more verbose. When
connecting to my own conference, the client's INVITE is packet #18. When
connecting to sip2sip.info, that INVITE is packet #70. When talking to
sip2sip.info, the clients SUBSCRIBEs to username+presence, and to
username+dialog. With my own conference, there are no such subscription
requests. Is there anything to configure here? This could also be
related to the following observation:
- When Blink PUBLISHes "Event: presence", my server's response is "480
Temporarily Unavailable" and contains a header line "Server: repro
1.10.0". So this comes from the proxy, not from SylkServer. The question
here is: is reSIProcate OK as proxy? (I have described my setup in the
original post).
- For some reason, the server also sends a SUBSCRIBE back to the client.
This seems wrong, and the client replies to this with "482 Loop
Detected". I haven't yet been able to figure out why this happens, but
it doesn't seem to originate from SylkServer. At least I could not find
it in SylkServer's SIP trace. So it must be the proxy again. However
this happens also with voice-only conferences, which do work.

Is that enough hinformation? On the server side, I can provide
sip_trace.log, core_trace.log and notifications_trace.log. I have also
enabled traces on the client side (msrp_trace.txt,
notifications_trace.txt, pjsip_trace.txt, and sip_trace.txt). As far as
the communication with SylkServer is concerned, the client's SIP trace
contains the same packets as the server. The msrp_trace.txt contains
just a single line for the failed conference: "Connecting to". I tried
MSRP with and without TLS (on both sides of the connection ;-). Always
the same.

Best regards,
Adrian Weiler

More information about the SIPBeyondVoIP mailing list