Integrating WebRTC with Openfire XMPP server

3,657 views
Skip to first unread message

Manjunath Betadur

unread,
Jul 8, 2014, 6:47:00 PM7/8/14
to discuss...@googlegroups.com

I am working on an app where I am using Openfire XMPP server and want to support AV Conferencing feature, for which I want to use WebRTC. As, WebRTC needs some Signalling mechanism, I want to use XMPP itself for Signalling.
The app is going to be supported for iOS & Android. So, using XMPPFramework library for iOS and asmack library for Android.

So, basically here is the question :
- How to integrate WebRTC with Openfire server ? Like, is there any plugin kind of thing ?
- How to make Openfire work as signalling for WebRTC ? Are there any examples available ?
- Are there any existing apps that use XMPP + WebRTC for IM & AV Conferencing ? (I know Google Hangouts uses WebRTC but it also uses proprietary protocol for IM instead of XMPP)

Thanks,
Manju

Philipp Hancke

unread,
Jul 9, 2014, 2:42:28 AM7/9/14
to discuss...@googlegroups.com
On Wed, Jul 9, 2014 at 12:47 AM, Manjunath Betadur <manjunath...@gmail.com> wrote:

I am working on an app where I am using Openfire XMPP server and want to support AV Conferencing feature, for which I want to use WebRTC. As, WebRTC needs some Signalling mechanism, I want to use XMPP itself for Signalling.
The app is going to be supported for iOS & Android. So, using XMPPFramework library for iOS and asmack library for Android.

So, basically here is the question :
- How to integrate WebRTC with Openfire server ? Like, is there any plugin kind of thing ?

Note that you don't need any plugin to transport signalling over xmpp. 

- How to make Openfire work as signalling for WebRTC ? Are there any examples available ?

The interop demos from https://github.com/legastero/jingle-interop-demos should work with openfire from the browser.

- Are there any existing apps that use XMPP + WebRTC for IM & AV Conferencing ?

(I know Google Hangouts uses WebRTC but it also uses proprietary protocol for IM instead of XMPP)

I suspect it continues to use Jingle ;-)

Andy Savage

unread,
Jul 9, 2014, 9:53:02 PM7/9/14
to discuss...@googlegroups.com
We are doing almost exactly what you plan to do. We have it working across iOS<->iOS using data channels.

Instead of Openfire which is a horrible memory hog and not very actively maintained, we are using prosody which is generally well maintained and comes with many plugins.

As mentioned no plugin is required, just need to get things setup to send or receive signalling messages on the client side.

This example helped us:

We took that and made quite a few changes, we will also publish our code in about a month or two once our app is released.
--

---
You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrt...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
Sent from Gmail Mobile

Dele Olajide

unread,
Jul 10, 2014, 6:03:29 PM7/10/14
to discuss...@googlegroups.com
Andy,

Do you really have to beat up Openfire in order to promote Prosody. When was the last time you visited igniterealtime.org or checked the openfire source code at GitHub.

WebRtc works perfectly with Openfire in both mesh multi/user and peer to peer using either Jingle or Rayo XMPP protocols for signalling.

-Dele Olajide.

Dele Olajide

unread,
Jul 10, 2014, 6:06:51 PM7/10/14
to discuss...@googlegroups.com

Dele Olajide

unread,
Jul 10, 2014, 6:06:51 PM7/10/14
to discuss...@googlegroups.com

Andy Savage

unread,
Jul 10, 2014, 11:35:58 PM7/10/14
to discuss...@googlegroups.com
Sorry, definately no intention to beat up on OpenFire.

It's definitely got the best admin UI of all the servers. There's many great things going for it.

For some reason (out of the box) I couldn't make it work with WebRTC, installing prosody it worked just fine, so I guess that's why I'm a little bit negative on it, but that's most likely just my inexperience at the time with configuration.

Faraz Khan

unread,
Jul 23, 2014, 12:59:01 PM7/23/14
to discuss...@googlegroups.com
Andy,
We successfully use a customized version of ejabberd (for websockets) to do the signalling. Our app uses a HTML front end which speaks through libstrophe (through ejabberd) to each other. Works very well!

Manjunath Betadur

unread,
Jul 29, 2014, 3:35:54 PM7/29/14
to discuss...@googlegroups.com, philipp...@googlemail.com
Thank you Philipp. It helped me dig more on this... :-)

siddharthk...@gmail.com

unread,
Jul 29, 2015, 10:31:00 AM7/29/15
to discuss-webrtc, manjunath...@gmail.com
Hii Manjunath .. i am also trying to build application for video calling using WEBRTC and XMPP as signalling in android. I googled a lot but havn't found any usefull links.I have found one link buts its in javascrpit (http://stackoverflow.com/questions/29663041/using-ice-candidates-with-jingle) ..so can you please elaborate me the steps which i should follow to achieve my goal .. i stuck on it from past 2 days ...any help from your side will be greatly appreciated..

Thanks&Regard
Siddharth

Javier Iseruk

unread,
Sep 29, 2015, 3:38:02 PM9/29/15
to discuss-webrtc
Hi Faraz. Is there an example of the ejabberd && libstrophe solution? I would like to try it.

Thanks!!

Aqeel Ahmed

unread,
Mar 24, 2019, 2:43:28 PM3/24/19
to discuss-webrtc
I am working on WebRtc with XMPP . will u please help me to configure it, i configured it finely just problem is that ice not getting connect, its connection state stuck on checking state , ice gathering becomne completed .
I checked out my signal messages these are working fine on both hand, sdps messages and ice candidate. i need your help , is that any thing else need to set ? 
Reply all
Reply to author
Forward
0 new messages