Working with Peer to Peer Voice Chat in ejabberd

Greetings,

I am completely new to ejabberd, having discovered it only this past weekend. I am wanting to implement a small-to-medium-scale secure text/voice/video chat capability for an organization.

What I would like to achieve is the installation of ejabberd on a private, internet-facing, secure server, and have internet-based clients be able to use that server for text chat, but when they want to connect via voice or video, they would use direct peer-to-peer connections (since the server won't be able to manage the latency and bandwidth requirements for arbitrary usage).

I downloaded the Mac version of ejabberd 2.1.11, and in fairly short order had it running on my laptop. Because the built-in iChat client in Mac OS is compatible with Jabber, I was quickly able to create a couple of accounts and establish a video call between machines on my local home network. This confirms that everything was installed correctly and the clients could talk with the server (and connect to the registered accounts).

Is there somewhere I can find configuration and installation instructions to set up the environment I'm trying to build? I see lots of references to Jingle and STUN, but cannot find any recent discussion on the specific steps to follow to set up the type of environment I seek.

Essentially, I'm looking for a "how to build your own home-grown secure Skype replacement using ejabberd". If such a thing does not exist, I'd be most happy to compile and provide one to the community, if I can find the assistance needed to get this configuration up and running.

I would anticipate running the production ejabberd service on a Windows 2008 Server box, but that's about as far as I've gotten. I need to understand what other servers (if any) would be required for STUN and/or Jingle support if this is to work for Peer-to-Peer voice traffic from the public internet.

Many thanks for any insight the community can offer!

Regards,
Scott

Hi! I'm trying to deploy IM

Hi!

I'm trying to deploy IM service in my company based on ejabberd's jabber proto implementation. What I wanted to say is that ejabberd should fit all your needs. You shouldn't expect any problems with VoIP (video calls as well) as log as you have UDP traffic going between peers in your network without any restrictions (this is the RTP's by design requirement).
I don't think you will need STUN server since it's only necessary to determine "external" IP in case your peer are behind NAT. However, here you may face with some problems I didn't see when tested my installation since my network is based on routing and does not have NATs.

When you referring to Skype as VoIP standard you should keep in ming two things (of course this is my own impression after several months of investigation IM & VoIP services):
1. Skype became such notable mainly becuase those guys made it work everywhere not depending on client's network infrastructure.
2. Those guys wrote very good audio codec and that made the Skype almost the only software with such excellent capabilities to survive where all other progs just dies saying "damn, I've just lost the RTP stream, sorry... :(".

My conclusion after some time trying to make Skype replacement is that jabber currently isn't very good for corporate environment since it lack of supporting LDAP integration (yes, in general it does but for me and many others current level of support makes it unusable), auth mechanisms support and many management instruments that I have to script by myself or even patch the code. However this is one of the best jabber protocol implementations that has one killing feature that I didn't find in other ones: it is very survivable which is "by design" because it has been written in Erlang.

Thanks for reading this! Hope you'll find my thoughts usable and don't hesitate to ask specific questions about your type of ejabberd's deployment.

Syndicate content