Candy est un chat en javascript qui semble très flexible et dispose de plus en plus de plugin.
http://candy-chat.github.com/candy/
Il s'intègre bien avec Openfire même si c'est un peu compliqué la première fois.
Je l'ai par exemple couplé avec Openfire, lui même couplé avec le LDAP de Zimbra pour créer un chat room pour les utilisateurs.
Dans la paramètres du serveur activé HTTP Binding.
Activlé les ports 7070 et 7443.
Activé le script syntax : Allows BOSH.
Laisser ar défaut la Cross-domain policy.
Télécharger Candy dans votre répertoire www.
Définir votre vhost.
La difficulté est dans Rewrite rule
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Candy - Chats are not dead yet</title>
<link rel="shortcut icon" href="res/img/favicon.png" type="image/gif" />
<link rel="stylesheet" type="text/css" href="res/default.css" />
<link rel="stylesheet" type="text/css" href="candy-chat-candy-plugins-e9310e4/colors/candy.css" />
<link rel="stylesheet" type="text/css" href="candy-chat-candy-plugins-e9310e4/roomPanel/default.css" />
<link rel="stylesheet" type="text/css" href="candy-chat-candy-plugins-e9310e4/inline-images/candy.css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script type="text/javascript" src="libs/libs.min.js"></script>
<script type="text/javascript" src="candy.min.js"></script>
<script type="text/javascript" src="candy-chat-candy-plugins-e9310e4/colors/candy.js"></script>
<script type="text/javascript" src="candy-chat-candy-plugins-e9310e4/inline-images/candy.js"></script>
<script type="text/javascript" src="candy-chat-candy-plugins-e9310e4/roomPanel/roomPanel.js"></script>
<script type="text/javascript">
$(document).ready(function() {
Candy.init( 'http://monserveur.com/http-bind/', {
core: { debug: false, autojoin: ['info@conference.monserver.com' ]},
view: { resources: 'res/', language: 'fr'}
});
// enable Colors plugin (default: 8 colors)
CandyShop.Colors.init();
CandyShop.InlineImages.init();
// enable RoomPanel plugin
CandyShop.RoomPanel.init({
// domain that hosts the muc rooms, only required if autoDetectRooms is enabled
mucDomain: 'info.monserver.com',
// allow you to force a list of rooms, only required if autoDetectRoom is disabled
roomList: [
{
name: 'info',
jid: 'info@monserver.com'
},
],
// show room list if all rooms are closed, default value is true. [optional]
showIfAllTabClosed: true,
// detect rooms before showing list, default value is true. [optional]
autoDetectRooms: true,
// how long in seconds before refreshing room list, default value is 600. [optional]
roomCacheTime: 600
});
Candy.Core.connect();
});
</script>
</head>
<body>
<div id="candy"></div>
</body>
</html>
Le support est assuré au travers de google group, la communauté Candy est très active.
Merci à eux.
https://groups.google.com/forum/#!forum/candy-chat
http://candy-chat.github.com/candy/
Il s'intègre bien avec Openfire même si c'est un peu compliqué la première fois.
Je l'ai par exemple couplé avec Openfire, lui même couplé avec le LDAP de Zimbra pour créer un chat room pour les utilisateurs.
Config Openfire
Activlé les ports 7070 et 7443.
Activé le script syntax : Allows BOSH.
Laisser ar défaut la Cross-domain policy.
Installation Candy
Définir votre vhost.
La difficulté est dans Rewrite rule
RewriteRule http-bind/ http://monserver.com:7070/http-bind/ [P]
Config vhost
<VirtualHost *:8081>
ServerName mon.server.com
DocumentRoot /var/www/candy/
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/candy>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
AddDefaultCharset UTF-8
Options +MultiViews
RewriteEngine On
RewriteRule http-bind/ http://monserver.com:7070/http-bind/ [P]
</VirtualHost>
Config cany/index.html
<html lang="en">
<head>
<meta charset="utf-8">
<title>Candy - Chats are not dead yet</title>
<link rel="shortcut icon" href="res/img/favicon.png" type="image/gif" />
<link rel="stylesheet" type="text/css" href="res/default.css" />
<link rel="stylesheet" type="text/css" href="candy-chat-candy-plugins-e9310e4/colors/candy.css" />
<link rel="stylesheet" type="text/css" href="candy-chat-candy-plugins-e9310e4/roomPanel/default.css" />
<link rel="stylesheet" type="text/css" href="candy-chat-candy-plugins-e9310e4/inline-images/candy.css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script type="text/javascript" src="libs/libs.min.js"></script>
<script type="text/javascript" src="candy.min.js"></script>
<script type="text/javascript" src="candy-chat-candy-plugins-e9310e4/colors/candy.js"></script>
<script type="text/javascript" src="candy-chat-candy-plugins-e9310e4/inline-images/candy.js"></script>
<script type="text/javascript" src="candy-chat-candy-plugins-e9310e4/roomPanel/roomPanel.js"></script>
<script type="text/javascript">
$(document).ready(function() {
Candy.init( 'http://monserveur.com/http-bind/', {
core: { debug: false, autojoin: ['info@conference.monserver.com' ]},
view: { resources: 'res/', language: 'fr'}
});
// enable Colors plugin (default: 8 colors)
CandyShop.Colors.init();
CandyShop.InlineImages.init();
// enable RoomPanel plugin
CandyShop.RoomPanel.init({
// domain that hosts the muc rooms, only required if autoDetectRooms is enabled
mucDomain: 'info.monserver.com',
// allow you to force a list of rooms, only required if autoDetectRoom is disabled
roomList: [
{
name: 'info',
jid: 'info@monserver.com'
},
],
// show room list if all rooms are closed, default value is true. [optional]
showIfAllTabClosed: true,
// detect rooms before showing list, default value is true. [optional]
autoDetectRooms: true,
// how long in seconds before refreshing room list, default value is 600. [optional]
roomCacheTime: 600
});
Candy.Core.connect();
});
</script>
</head>
<body>
<div id="candy"></div>
</body>
</html>
Merci à Candy
Le support est assuré au travers de google group, la communauté Candy est très active.
Merci à eux.
https://groups.google.com/forum/#!forum/candy-chat