[Blink] Experimenting with MSRP support

Lorenzo Miniero lorenzo at meetecho.com
Tue Apr 16 15:15:20 CEST 2024


Hi all,

first of all, apologies if you're getting a duplicate of this. I
initially sent this message to the "SIP Beyond VoIP" mailing list as
that's what I was suggested to refer to, but I noticed that on the
Blink web page a different mailing list was recommended for getting
help, so I'm writing here too.

These past few days I've started making a few experiments to add a
tentative and experimental MSRP gatewaying functionality to Janus, my
WebRTC server. Specifically, I'm modifying the SIP plugin so that when
an MSRP m-line is negotiated on the SIP side, we negotiate a data
channel on the WebRTC side instead (basically what RFC 8873 describes),
so that MSRP messages can be exchanged between the SIP and WebRTC users
using different transports.

I finished a first basic integration, and so wanted to use Blink as an
endpoint to give it a try, but I've only had partial success with it so
far. The negotiation is properly gatewayed, and I can see Blink sending
me an empty MSRP SEND, which I reply to with a proper 200 via data
channels. At this point, though, even though I see some keep-alive SEND
messages from time to time, I can't seem to be able to do anything
else, for a couple of different reasons:

	* If I try to send a text message from Blink to my WebRTC user,
	  I see an exception on the terminal that launched Blink. I have
	  the whole trace available, in case it helps, but the main
	  piece of information seems to be this: "AttributeError:
	  'NoneType' object has no attribute 'message_id'". I can see
	  on Wireshark that no message is actually sent, and in fact I
	  don't see it in Janus either.

	* If I try to send a message from my WebRTC user to Blink, I
	  see a 200 coming back (meaning the message is at least
	  correct and got there), but the Blink chat window shows a
	  "content should be an instance of bytes" message, and Blink
	  sends a SIP BYE to hangup the call. I was trying to send a
	  text/plain message, which looking at the SDP attributes
	  should be properly supported (text/*), so not sure what bytes
	  it's referring to (maybe an internal message error?).

Not sure if it's a problem with the version of Blink I'm using, since
I'm using the one available on flatpak (5.5.1). At first I wanted to
try and compile it myself, but for some reason that wasn't possible on
my Fedora 38, and so went with that precompiled version instead.

Do these problems ring any bell? Is there any other info I can provide
to try and figure out what's wrong?

Thanks!
Lorenzo

-- 
I'm getting older but, unlike whisky, I'm not getting any better
https://lminiero.it


More information about the Blink mailing list