SPIP - Contrib

SPIP - Contrib

[ar] [en] [es] [fr] [it]

65 visiteurs en ce moment

[61 commentaires]

Un Chat pour SPIP

jeudi 14 juillet 2005, par GoUaRfIg !

  • Digg
  • Del.icio.us
  • Facebook
  • Google
  • Technorati

Un moteur de chat écrit en PHP et JavaScript qui fonctionne avec la base d’utilisateurs de SPIP

Introduction :

Voilà maintenant plus de 2 ans que j’ai écrit un moteur de Chat en PHP pour des besoins personnels. Je viens de le remettre au goût du jour parce que je trouvais un peu stupide que le code traine tout seul dans un coin sans être utilisé.

J’en ai profité pour l’associer à SPIP. En effet la base des utilisateurs de Chat peut être celle de SPIP.

Note : L’article présenté ici se réfère à un SPIP 1.8. Pour la version SPIP 1.9, un plugin est en cours de préparation...

Pré-requis :

Les pré-requis concernant l’installation de Chaton sont quasiment les mêmes que pour l’installation de SPIP. Il nécessite un serveur web avec PHP 4.2 minimum (PHP 5 supporté), et un serveur de base de données MySQL 3.20 et supérieur.

Démonstration :

http://gouarfig.free.fr/chat/

Vous pouvez constater qu’il fonctionne très bien sur la « crème » des hébergeurs : Free !

Page d'entrée

Ecran principal

Ecran d'aide

Pour l’instant, il a été testé avec succès sur les navigateurs :

- MSIE 4.01, 5.01, 5.5, 6.0 et 7.0 (Windows 98,2000,XP SP1 et SP2)
- MacIE 5.23
- Netscape 4.8 (Windows)
- Mozilla 1.0 et +, Firefox inclus (Windows XP)
- Mozilla 1.0 et +, Firefox inclus (Linux RedHat)
- Opera 7 (Windows XP)
- Safari 1.2.2 sous MacOS X 10.3.4
- Konqueror 3.2

Sur IE et Windows XP SP2 il faut autoriser le domaine où est installé Chaton à envoyer des « popups » puisque certaines informations de Chaton s’affichent dans de nouvelles fenêtres. Idem pour Firefox.

Il ne fonctionne pas pour ces navigateurs :
- Konqueror 3.0 (sur Linux RedHat 8.0) : le support JavaScript n’était pas encore au point...

Télécharger le logiciel de Chat

En attendant que je remette mon site perso d’aplomb, voici l’archive de Chaton 1.6.3 :

Zip - 252.9 ko
Chaton version 1.6.3
Fichier ZIP contenant le logiciel Chaton 1.6.3

Installer le logiciel de Chat

 [1]

Décompressez l’archive à la racine de votre serveur web, et renommez (par exemple) le dossier « chaton-1.6.3 » en « chat ».

Exécutez ensuite le script d’installation automatisé fourni install.php.
Par exemple :

http://mon-domaine.com/chat/install.php

Le script d’installation va vous demander si vous voulez utiliser la base d’utilisateurs de SPIP :

Cochez le second choix.

Vous aurez ensuite besoin de spécifier la base de données MySQL qu’utilisera Chaton pour ses données personnelles (Salles ouvertes, utilisateurs connectés, etc.). Vous pouvez sélectionner (par exemple) la base de données de SPIP si vous n’avez pas accès à plusieurs bases.

Vous devrez ensuite spécifier l’accès à la base de données de SPIP comme suivant :

Le choix de la table auteurs n’est utile que si vous avez donné un préfixe différent de « spip_ » à vos tables SPIP.

[ Voir aussi : Installation de Chaton ]

Utilisateurs de SPIP

Quand vous utilisez Chaton en mode SPIP, il ne créé pas de base d’utilisateurs. Il utilise la base des rédacteurs/visiteurs de SPIP.

- Un visiteur devient un utilisateur standard du Chat
- Un « nouveau » rédacteur (qui ne s’est jamais connecté sur SPIP) devient un utilisateur standard du Chat
- Un rédacteur devient un animateur du Chat
- Un administrateur restreint devient un opérateur du Chat
- Un administrateur devient un administrateur du Chat

Modifier/supprimer des visiteurs avec SPIP répercute aussi les modifications sur le moteur de Chat.

Chaton n’écrit rien dans les tables de SPIP.

Note : Vous devez proposer l’enregistrement des visiteurs dans SPIP pour que vos utilisateurs puissent se connecter au Chat (en tant que visiteur)

L’enregistrement des utilisateurs est obligatoire à moins que vous n’activiez l’option qui permet à un utilisateur de rentrer SANS mot de passe, mais à condition que son nom d’utilisateur ne corresponde pas à un login qui existe dans la base. Cet utilisateur n’aura par ailleurs aucun droit (sur la création de salon par exemple)

Salon privés

Chaton peut gérer des salons privés (directive optionnelle) avec ou sans mot de passe.

Quand vous activez cette option, un visiteur qui créé un salon privé se verra attribuer quelques privilèges dans son salon uniquement :

- Ejecter un utilisateur indésirable du salon
- Limiter le nombre d’utilisateurs du salon
- Mettre, enlever ou changer un mot de passe du salon

Entrée du chat ... façon article !

Vous pouvez mettre l’entrée du Chat dans un article. La seule condition est que vous n’aurez plus en temps réel le nombre de connectés affichés à côté de chaque salle, puisque l’article est mis en cache !

Commencez par installer cette contribution : Lancer un script PHP dans un article.

Une fois la contribution assimilée, créez un article qui contient :

Installez le fichier article_chat.php dans votre arborescence SPIP :

texte - 3 ko
Script pour entrer par un article

Ce fichier assume que vous ayez installé Chaton en sous-dossier du dossier racine de SPIP

Racine de SPIP :
* CACHE
* chat
* ecrire
* IMG
- [...]
- article_chat.php

[ Voir le résultat ici ]

Entrée du chat ... par session SPIP

Avec cette méthode, un visiteur ou un rédacteur déjà authentifié par SPIP n’a pas besoin de donner son pseudo et son mot de passe, puisque SPIP le connait déjà.

Chaton est en effet capable de récupérer les valeurs de la session SPIP.

Pour celà, l’entrée du chat doit se faire par une page SPIP spéciale, que nous nommerons chat.php3 par exemple.

Créez le fichier chat.php3 dans votre arborescence SPIP comme suivant :

Créez maintenant dans le même dossier le fichier chat.html comme l’exemple suivant :

HTML - 5 ko
Page d’entrée par session SPIP

Cet exemple suppose que vous ayez installé Chaton dans le dossier chat à la racine de l’installation de SPIP.

Attention : Si vous installez Chaton en dehors du dossier de SPIP, il sera incapable de récupérer la session SPIP (pour des raisons techniques inhérentes aux cookies).

Et voici le résultat :

Démonstration de l'entrée par session

L’entrée ne demande plus le login ni le mot de passe, vous n’avez qu’à choisir la salle de discussion.

Rapidité

Pour information, il a tourné pendant 1 an avec 50 utilisateurs dessus (et un rafraîchissement de 8 secondes) sur un serveur (dédié) Linux Apache1.3/PHP4 Celeron 433 avec 256 Mo de RAM, couplé à un autre serveur de base de données MySQL (non dédié).

Je sais que ces tests commencent a dater un peu, mais je n’ai pas à l’heure actuelle de tests plus précis

Pour aller un peu plus loin :

Le site officiel [ Voir ici ]

P.-S.

A partir de la version 1.6.2, Chaton est capable d’utiliser les sessions SPIP 1.9 (testé sur une 1.9.1). A partir de la version 1.6.3, Chaton est de nouveau capable d’utiliser les sessions de SPIP 1.9.2. Toutefois un plugin toujours est en cours de préparation !

Notes

[1] Le nouveau script d’installation de Chaton 1.6.3 diffère un peu de celui présenté içi, mais les options de base restent les mêmes.

Retour en haut de la page

61 Messages de forum

Voir toute la discussion

1 | 2 | 3 | 4 | 5 | 6 | 7

  • Répondre à ce message

    12 septembre 09:07 , par Hedera

    Bonjour les gens et tout particulièrement l’auteur de cette contribution. Je vous expose mon problème : Bête et disciplinée j’ai suivi toutes les indications et lorsque je veux rentrer dans une room (en tant qu’administrateur de spip) on me dit que l’on ne peut pas faire de chat privé.. En effet j’ai décoché cette option, mais puisque j’ai crée 2 salons par défaut pourquoi ne m’y laisse-t’on par rentrer ? Version de spip 1.9.2d version de chaton téléchargée 1.6.3

  • Répondre à ce message

    12 août 16:25 , par dmk

    Bonjour

    As tu résolu ce pb sous 1.9.2d ? En gros, est ce que ça marche quoi :) ? merci !

  • Répondre à ce message

    25 mars 16:22 , par Adedib

    Bonjour,

    Je suis sous Spip 1.9.2d et Chaton 1.6.3. Je n’arrive pas à utiliser la page chat.html proposant l’entrée dans le chat en utilisant les sessions. Cette page m’affiche le code non-interprété. Si je ne me trompe pas, le fichier chat.php3 c’est pour Spip avant la 1.9. non ? Que dois-je modifier pour utiliser la session SPIP en 1.9.2 ?

    Merci pour ton boulot et vivement le plugin !

  • Répondre à ce message

    20 janvier 19:28 , par marjorie

    Bonjour,

    j’avais testé la semaine passée sur un site spip de test, mais là, alors que je veux l’installer sur mon site principal, ça ne marche plus. je suis en spip 1.9.2.c, j’ai la dernière version de chaton (1.6.3), j’ai mis le dossier /inc en 777, installé un dossier chat avec le contenu de l’archive à la racine.

    En fait, quand je renseigne les codes de base de donnée, ça me met une erreur : Connexion au serveur MySQL ... Erreur ! (Access denied for user ’xxxxxx’@’10.0.5.67’ (using password : YES))

    Avez vous une idée de là où cela peut venir ?

  • Répondre à ce message

    20 janvier 11:37 , par Thomas

    Salut,

    nous gérons un gros site collaboratif (150 membres actifs + 150’000 abonnés) en 1.9.2 pour lequel nous aimerions installer le Chat.

    Dans ce cas, autant patienter et utiliser le plugin, non ?

    Mais avez-vous une idée de sa date de sortie ?

    Merci et à bientot !
    Thomas

  • Répondre à ce message

    16 décembre 2007 14:14 , par Mathieu 7-7

    Installation sur MGS peut corrompre des tables. je narrive plus à me logger comme administrateur sur mon site Liberté pour les Ours

    >Je pensais que ça venait de SpipBB mais visiblement ça pourrait être Chaton... Faiets bien vos sauvegardes avant d’installer ;o)

    Je vous dis dès que j’ai compris ce qui m’arrive...

    Mathieu

  • Répondre à ce message

    11 octobre 2007 13:24 , par Gui

    Félicitation pour ce Chat ... Je n’ai aucune critique ... Sauf que c’est exactement ce que je cherchait à rajouter sur mon site ... quelque chose de simple, de facile (d’utilisation et d’installation)... c’est grace à des gens comme toi, que des ignares comme moi (en language html, php, css, et tout le reste ... j’y pige rien) arrivent a faire des sites stables et avec plein de fonction dans tout les sens ... Merci à tout ceux qui contribu dans ce sens la (ce site spip-contrib est là pour ça) ...

    Merci de la part de gars comme moi ... lol ...

    A plus

    Gui

  • Répondre à ce message

    2 octobre 2007 18:49 , par yeden2

    Bonjour et bravo pour ce chat efficace et aisé à mettre en place. Cependant, j’aurai besoin que la case privé soit cochée par défaut, que le correspondant ne soit pas par défaut " tout le monde " mais un animateur.

    Est-ce possible et si oui comment faire ?

    Merci d’avance.

  • Répondre à ce message

    29 septembre 2007 14:01

    Bonjour, J’ai installé le chat sur mon site. Aucun problème à l’installation. Par contre, à l’utilisation, la zone de saisie ainsi que les icônes en bas de l’écran disparaissent périodiquement rendant impossible l’utilisation du chat. Il faut alors fermer et recommencer. Et évidemment on perd tout ce qu’on a écrit. Quel peut être le problème ?

    Un autre problème que j’ai eu est qu’il semble qu’il y ait des failles de sécurité. Lors de l’utilisation du chat, un message est apparu que ni moi ,ni la personne avec qui je chattais n’a écrit : "M et Mme Draissamaire-Pourune-Biaire ont un fils : Yvan". Ce message est apparu sans nom d’auteur. A moins que ce ne soit le concepteur du chat qui ait rajouté des blagues qui s’affichent de temps en temps ? Qu’en est-il ?

    A part ça, c’est une très chouette idée d’intégrer un chat dans spip. Félicitations à l’auteur.

    Merci d’avance pour les réponses,

    Michel.

    PS Ce serait pas mal d’ajouter une possibilité d’enregistrer les messages.

  • Répondre à ce message

    14 septembre 2007 11:37 , par Hubert

    J’arrive à gérer l’entrée du chat par session SPIP en créant le fichier chat.php (au lieu de chat.php3) suivant :

    <?php
    $fond 
    "chat";
    $delais 3600;
    include(
    'spip.php');
    ?>

    Et en récupérant le fichier chat.html comme indiqué ci dessus.

    Du coup l’entrée du site se fait via l’URL : http://mon-domaine.com/chat.php (au lieu de http://mon-domaine.com/chat/ par défaut).

    Seul problème, je perd les sympathiques fonctions (comme la prise en charge des langues, des utilisateurs présents, des salons déjà créés,...) implémentées dans la page d’accueil par défaut (fichier chat/index.php utilisant le fichier chat/templates/default/index.php de chaton 1.6.3).

    Une idée pour gérer l’entrée par session SPIP sur la page d’accueil par défaut ?

1 | 2 | 3 | 4 | 5 | 6 | 7

Répondre à cet article

Retour en haut de la page

Ça discute par ici

SPIP | Squelette | | Plan du site | Suivre la vie du site RSS 2.0