Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added support for real-time text (T.140 with or without red) to the SIP plugin #1898

Closed
wants to merge 24 commits into from

Conversation

lminiero
Copy link
Member

Real-time text is specified in RFC4103, and is basically a way to have live text conversations on RTP: the core difference with regular instant messaging is that you see the text as it's being typed, rather than when the other person sends the completed message. While it's been around for a while, it will be even more important in the future since it will be part of the so called "Next-Generation Emergency Services".

I'm writing a blog post on the whole effort, so I won't spend too many words on it here (you can refer to that once I share the link). The main thing you need to be aware of, from a Janus perspective, is that if you negotiate data channels in the SIP plugin, now, you'll attempt to establish a real-time text session (the data channel part of the SDP will be transformed to an m=text portion instead). Data will then be exchanged as an ArrayBuffer containing the T.140 blocks with the real-time text: I made a quick (and very ugly) update to the SIP demo to show this in action.

I only tested this for incoming calls from an old client called TIPcon1, and negotiating text only (no audio/video along text): the plan is to test this with other media and for outgoing calls as well (which should simply require us to offer data channels from the web application, nothing more), and possibly with other endpoints as well. Since I don't have access to other endpoints, though, I'm looking forward to feedback from people who do instead.

@lminiero
Copy link
Member Author

The blog post has been published, so you can find more info here:
https://www.meetecho.com/blog/realtime-text-sip-and-webrtc/

@lminiero
Copy link
Member Author

Extracted the changes to support data channel subprotocols in a separate PR (now merged), so this PR should now be much more focused on the SIP plugin changes to get T.140 working instead.

@lminiero lminiero changed the base branch from master to 0.x February 15, 2022 14:44
@lminiero lminiero added the legacy Related to Janus 0.x label Feb 15, 2022
@lminiero
Copy link
Member Author

lminiero commented Sep 6, 2022

I'm closing this PR, as I don't see it being merged anytime soon. Should people be interested in reviving this, please let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
legacy Related to Janus 0.x please-test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant