Voice calls over OpenFIre?

Hi All,

I am sure this has been a very discussed topic for a while but I have not been able to find a clear explanation about what and how to use voice over OpenFire. It would be great if I could do voice and video but if I could start with voice it would be great.

Does anyone know what plugins and/or combination of plugins I need to use to be abel to do voice using either Spark or Pidgin?

All my nones are over VPN connections and cannot connect directly to each other so the P2P approach will not work for me.

Any information on how to achieve this would be greatly appreaciated.

Thanks

Vini

Read this

http://community.igniterealtime.org/blogs/ignite/2012/06/08/a-new-jingle-voice-c hat-plugin-for-spark

Use it with the JingleNodes plugin to relay media betwwen peers

Hi Dele,

Thanks for the info, I have installed the pulgin but there are some unkowns to me still.

  • How does it know when to connect directly to the person I want to talk to and when to use my jingle-nodes server to relay?
  • How is this different from the default implementation of jingle in spark?
  • For video chat, are you able to recommend anything?

I have had a look at many of your posts, there are many components and different options and I didn’t quite figure out what I need to be able to do video reliably.

Jappix + WebRTC + WebSockets

Or

Redfire with the Spark plugin?

Candy, appears to be a SIP bridge between openfire and SIP phone systems.

And finally, what is the difference or running openfire-websockets alone and with Jappix?

Thanks in advance

Vini

What client are you using to connect to Openfire?

I am using spark, latest version with the jingle plugin you provided.

Ideally I would love to use pidgin but there is no plugin for it.

I have experimented with the jingle plugin just then and found something very interesting. The voice channel is supposedly established but there is no sound on either ends, looking at the logs I found out that spark is using the wrong IP address to initiate the session.

To reach my jingle node I need to go through a VPN, but the session is initiated from the address of the physical network card. Since spark is using the wrong IP the traffic never reaches the jingle node server on the openfire box.

Also, spark never tried to connect directly to the other peer.

Can this be worked around?

Best user experience is to use Jitsi client instead of Spark with JingleNodes and Jitsi VideoBridge plugin for Openfire for both audio and video conferences involving multiple people or just one2one voice/video chats.

There is jingle voice and video support for Pidgin. See http://michael.stapelberg.de/Artikel/video_chat_with_pidgin I don’t know if this will work with Openfire

It is possible that jingle plugin gets the wrong address in Spark. I had that problem once and solved it by switching IPV6 off. See comments in the blog post.

Looking at the source code, I can confirm it does not allow an alternative IP address to be used.

This is the code

package org.minijingle.network; import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.Enumeration; public class LocalIPResolver {     public static String getLocalIP() {         Enumeration ifaces;         try {
            ifaces = NetworkInterface.getNetworkInterfaces();             while (ifaces.hasMoreElements()) {                 NetworkInterface iface = (NetworkInterface) ifaces.nextElement();
                Enumeration iaddresses = iface.getInetAddresses();                 while (iaddresses.hasMoreElements()) {
                    InetAddress iaddress = (InetAddress) iaddresses.nextElement();
                    if (!iaddress.isLoopbackAddress() && !iaddress.isLinkLocalAddress() && !iaddress.isSiteLocalAddress()) {
                        return iaddress.getHostAddress() != null ? iaddress.getHostAddress() : iaddress.getHostName();
                    }
                }
            }             ifaces = NetworkInterface.getNetworkInterfaces();             while (ifaces.hasMoreElements()) {                 NetworkInterface iface = (NetworkInterface) ifaces.nextElement();
                Enumeration iaddresses = iface.getInetAddresses();                 while (iaddresses.hasMoreElements()) {
                    InetAddress iaddress = (InetAddress) iaddresses.nextElement();
                    if (!iaddress.isLoopbackAddress() && !iaddress.isLinkLocalAddress()) {
                        return iaddress.getHostAddress() != null ? iaddress.getHostAddress() : iaddress.getHostName();
                    }
                }
            }             return InetAddress.getLocalHost().getHostAddress() != null ? InetAddress.getLocalHost().getHostAddress() : InetAddress.getLocalHost().getHostName();         }
        catch (SocketException e) {
            e.printStackTrace();
        }
        catch (UnknownHostException e) {
            e.printStackTrace();
        }         return "127.0.0.1";
    }
}

Hi Dele,

Thanks for the info, and it is a pity there is no way to make the spark plugin using an IP address other than the one where the default route is.

I have had a look at the pidgin plugin, I got all excited but that only works on linux. I had seen that before but had forgotten that it was only for linux.

I installed Jitsi VideoBridge, it was too easy to install but at the same time a bit raw. There is no start up script, I have put one together quickly. I guess I should do a proper one and submit to the project.

Jitsi VideoBridge seems to be working, yet to be tested though. Do I still need the JingleNodes plugin on openfire? Or even a stun server?

Will the Jitsi client find the Jitsi VideoBridge extensions and use them by default?

Thanks

thanks for reply.
first, that post not found anymore http://community.igniterealtime.org/blogs/ignite/2012/06/08/a-new-jingle-voice-c

but I install jingle node plugin but noting show on Openfire web
I search in web but noting answer to this

That was over 5 years. I don’t think that plugin will work with openfire 4.x.x

1 Like

how can I get voice call in Openfire 4
my client can not access to each others
see my post, please

Try Pade and Openfire Meetings