phpXChat :
un serveur de chat simple, rapide, et
paramétrable
Introduction
phpXChat est simple car
- Vous avez seulement 3 lignes de php à copier/coller dans la page de
votre choix pour que le chat soit fonctionnel.
- En effet, pas besoin de paramétrer une base de donnée mysql, les
conversations sont stockées simplement dans des fichiers.
- Le chat fontionnera chez tout le monde car il est uniquement basé sur
http, il vous suffit donc d'avoir un navigateur Web pour pouvoir
chatter. Fini les problèmes de pare-feu ou d'applet java/flash ne
voulant pas se lancer !
phpXChat est rapide car
- La technologie ajax est utilisée pour afficher périodiquement et sans
effets de clignotements les nouveaux messages et les nouvelles
personnes connectées.
- Les conversations sont stockées dans des fichiers, les ressources du
serveur sont donc économisées au maximum.
- La bande passante est économisée car le serveur ne transmettra jamais
deux fois les mêmes informations : seulement les nouveaux messages sont
transmis.
phpXChat est paramétrable car
- Vous pouvez écrire vos feuilles de style (CSS) personnalisées pour
changer complètement l'apparence de votre chat.
- Toutes les fonctionnalités du chat ont été rendu paramétrables, par
exemple : vous pouvez changer le temps de mise à jour des messages,
vous pouvez interdire aux utilisateurs de changer leur pseudo...
- Vous pouvez également, grâce au système de plugin, écrire vos propres
routines de stockage si vous préférez stocker les conversations dans
votre base de donnée.
Toutes les commandes de phpXChat sont inspirées du protocole
irc, et son interface est inspirée de mIRC et XChat, vos utilisateurs ne
seront donc pas dépaysés.
Démonstration
la démo!
Copies d'écran
Pourquoi le nom phpXChat ?
Le premier nom que nous avons trouvé était phpChat mais il existait déjà
un programme utilisant ce nom. Ne voulant pas provoquer de problèmes, nous
avons donc cherché un autre nom.
Nous avons choisi phpXChat car :
- le code est écrit en
php
xml est utilisé pour communiquer avec le serveur
(technologie ajax)
- les fonctionnalitées et l'interface du chat sont proches d'irc, et du
client xchat.
Installation
Vous avez besoin de :
- Un serveur Web avec le module php (apache par exemple)
- Un acces en écriture sur ce serveur Web (ssh, FTP ou autre)
Vous n'avez pas besoin d'une base de donnée Mysql, le système utilise des
fichiers pour stoquer les informations.
Décompressez l'archive sur votre serveur. Creez ou modifiez le scripte qui
affichera le chat, pour cela prennez exemple sur les scriptes du répertoire
phpxchat/demo. Voila le scripte minimum pour que
phpXChat fonctionne (inspiré de demo1) :
<?php
require_once "phpxchat.class.php";
$chat = new phpXChat();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>phpXChat demo</title>
<?php $chat->printJavascript(); ?>
<?php $chat->printStyle(); ?>
</head>
<body>
<?php $chat->printChat(); ?>
</body>
</html>
Paramétrage
Skin personalisée
Il suffit de surcharger les règles css de la feuille de style par defaut
pour changer complètement l'apparence du chat.
Smileys personnalisés
Le thème par defaut ainsi que sa structure a été fortement inspiré de
celui de gaim. Pour écrire un nouveau thème il suffit de :
- Créer un répertore frère de
phpxchat/smileys/default/, par
exemple phpxchat/smileys/mysmileys/
- Placer des smileys sous forme d'images ping, jpeg ou gif, par exemple :
smiley1.png, smiley2.gif, et
smiley3.jpg
- Créer un fichier
phpxchat/smileys/mysmileys/theme
- L'éditer et y placer la description des smileys, par exemple :
smiley1.png :) :-)
smiley2.gif :( :-(
smiley3.jpg :D :-D :o)
Chaque ligne commence par le nom du fichier image suivit de la liste
des chaines de caracteres à remplacer par cette image.
- Passer l'option
smileytheme en indiquant le nom de votre
répertoire (nom du theme), par exemple :
$params["smileytheme"] = "mysmileys";
Pour information, le thème par defaut (les images des smileys) ainsi que
la structure a été fortement inspiré de gaim.
Roadmap
- Support des messages privés
- Colorisation des pseudo permettant une meilleur lisibilité
- Système d'avertissement des nouveaux messages, par exemple : changer le
titre de la page en lui rajoutant
[n], n étant le nombre de
nouveaux messages non lus, ou en lui rajoutant (*) lorsqu'un
message contient son pseudo.
Buglist
Téléchargement
Historique
v1.0 le ??/??/2005 :
- L'interface propose une zone d'affichage des messages, une zone
d'affichage des utilisateurs en ligne, une zone pour la saisie de son
message, et une zone pour afficher et changer le pseudonyme de
l'utilisateur connecté. (paramétrable par un système de model en css)
- Support des commandes suivantes : /nick, /me
- Support des smileys (paramétrable)
- Support des filtres permettant de : censurer des mots, mettre en gras
des parties de la phrase ... (paramétrable)
Contributions
- G-Math : logo phpXChat
- plugin dotclear
Utilisateurs
- www.jeu-gratuit.net :
- www.pronofun.com :
- enclume.jeu-gratuit.net : la confrérie de l'enclume
Configuration recommendée
phpXChat a été testé avec succé sur :
- IE ≥5.5
- Firefox ≥1.5
- Safari ≥??
- Konqueror≥3.4.2
Browsers that support Ajax
- Apple Safari 1.2 and above
- Konqueror
- Microsoft Internet Explorer (and derived browsers) 4.0 and above
- Mozilla/Mozilla Firefox (and derived browsers) 1.0 and above
- Netscape 7.1 and above
- Opera 7.6 and above