Candy (Chats Are Not Dead Yet) Plugin for Openfire

Candy (Chats Are Not Dead Yet) was developed by Michael Weibel (@weibelm) and Patrick Stadler (@pstadler) on behalf of their employer Amiado Group.

It provides group and private chat for collaborative working between teams.

This plugin makes Candy work out of the box with Openfire providing the following features:

  • Easy deployment for Openfire users
  • Support for Openfire BOSH and WebSockets? web connections.
  • Server-side voice-bridge that provides a scalable audio bridge with SIP telephone connectivity and Flash Player clients using RTMP for a few hundred concurrent users.
  • Users can join a conference by requesting voice-bridge to call their SIP phone via XMPP Openlink message
  • It supports auto-answer on Aastra SIP phones
  • It supports PSTN gateway connectivity via SIP Trunks or a PBX like Asterisk. It was tested against Asterisk 1.6. It uses the SIP plugin to manage SIP registration.
  • Users can dial conference access telephone number to join conference
  • There is integration between voice-bridge conferences and Openfire group-chat rooms. Each MUC room is exposed as a sip address room@your_domain or via telephone extension associated with each room. See configuration below. For security, enable a numeric password to be used as a pin number.

Audio-conferencing is activated by clicking on the conference tab again after initial selection. Clicking again or selecting another conference deactivates audio-conferencing. Both group-chat and private chats are supported.

Example Webclient Configuration

// uncomment and edit to use a SIP phone for audio-conferencing (voip phone).
// voicebridge will call this SIP address
//CandyShop.VoiceBridge.init('sip:1000@192.168.1.96');

// uncomment and edit to use a PBX/PSTN Telephone number for audio-conferencing (mobile/desk phone).
// voicebridge will forward this call to the PSTN/PBX gateway
//CandyShop.VoiceBridge.init('+447925589467');

// uncomment and edit to use Flash Player for audio-conferencing (desktop).
// voicebridge will call connect two RTMP streams to audio-conference
// setup Flash Player with mic permissions with '../plugins/voicebridge/setup.html'
CandyShop.VoiceBridge.init('rtmp:');

Candy.Core.connect();

Installation

Configuration

In order to a link a group-chat room with an audio bridge conference, make the room name a telephone extension or prefix the room description with a telephone extension. This is needed when making incoming calls from a telephone into the voicebridge.

To setup a PSTN/PBX gateway for external VOIP telephone calls, use the SIP plugin to setup the SIP account and add the follwing two properties to Openfire. Use the standard admin user or any other admin account..

Property Default Value Description
voicebridge.default.proxy.name
<required>
A unique name for Voice bridge external PSTN Gateway. If missing, no PSTN gateway is available.
voicebridge.default.proxy.username
<required>
XMPP username used to create the SIP registration by SIP plugin

Openfire Properties

Property Default Value Description
candy.webapp.connection bosh Type of xmpp web connection. Use bosh or websockets. Note that you need Openfire 3.7.2 for websockets
candy.webapp.name candy Web application root name
voicebridge.rtmp.port 1935 Listening TCP port for RTMP Server
voicebridge.sip.port 5060 Listening UDP port for SIP Server
voicebridge.default.private.host localhost SIP Server internal network host name or ip address
voicebridge.default.public.host localhost SIP Server external network host name or ip address
voicebridge.default.conf.exten
<none>
Telephone extension for accessing conference bridge from external PSTN gateway
voicebridge.rtp.start.port 3200 RTP Port range start
voicebridge.rtp.end.port 3299 RTP Port range start
voicebridge.server.log.level 1 Logging level for VoiceBridge? Server. 1-9
voicebridge.sip.log.level 1 Logging level for SIP Server. 1-9

Dependencies

  • The Openfire client control plugin to set group-chat bookmarks
  • The Openfire SIP plugin to setup PBX/PSTN gateway
Advertisements

About Dele Olajide

Dele Olajide is a Solutions Architect from London, United Kingdom who specialises in Telecommunications
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s