A partir de Workspaces 2.2

Rocket.Chat permet à Ametys d'offrir un système de discussions instantanées intégré aux espaces projets.

Il n'est pas possible d'utiliser un serveur Rocket.Chat existant et déjà utilisé par ailleurs (même par une autre instance d'Ametys), pour plusieurs raisons :
* la configuration des droits va être modifiée
* Ametys va créer automatiquement les utilisateurs à partir de leur adresse mail et cela doit être unique dans Rocket.Chat

Architecture

Selon le trafic attendu, il peut être conseillé d'installer Rocket.Chat sur une machine physique du réseau différente d'Ametys.

L'application Back-office Ametys doit pouvoir communiquer avec le serveur Rocket.Chat et inversement en http/https.

Les utilisateurs finaux des espaces projets doivent aussi pouvoir communiquer directement avec le serveur Rocket.Chaten http/https.

Si au moins le CMS Ametys ou un des sites est configuré en https alors le Rocket.Chat doit aussi être configuré en https.

Installation

Effectuer une installation Rocket.Chat standard mais refuser tous les liens avec le site Rocket.Chat officiel au moment de la configuration (pas de service cloud, pas d'enregistrement...).

Configuration

  • 1) Créer un utilisateur administrateur tout pouvoir qui sera utilisé pour créer les utilisateurs et les salons privés.
    Cet utilisateur sera visible dans les historiques de conversation, par exemple : L'utilisateur raf_utilisateur-local a été ajouté par admin.
  • 2) Dans les préférences de ce compte (être authentifié avec ce compte, et aller dans "Mon compte", "Jeton d'accès personnel"), créer un jeton d'accès personnel pour Ametys (sans authentification à double facteur) et conserver l'identifiant utilisateur et ce jeton pour le mettre dans la configuration Ametys

Attention, la regénération du token passe celui-ci obligatoirement avec authentification à double facteur. Il faut donc supprimer et recréer le token si vous l'avez perdu

  • 2b) Dans les préférences de ce compte (être authentifié avec ce compte, et aller dans "Mon compte", "Sécurité"), désactiver l'authentification à deux facteurs.
  • 3) Administration/Disposition/CSS personnalisée
.avatar-image {
border-radius : 100px;
}
#react-user-card + div {
display: none !important;
}
#react-user-card + div .rcx-box {
display: none !important; 
}
#react-user-card .rcx-modal__backdrop {
z-index: -1;
}
*[data-qa-id="reply-directly"],
*[data-qa-id="reply-in-thread"],
*[data-qa-id="Reply_in_thread"],
*[data-qa-id="mark-message-as-unread"] {
display: none !important;
}
  • 4) Administration/Disposition/Scripts personnalisés/Srcipt personnalisé pour les utilisateurs connectés
document.addEventListener('click', e => {
const url = (window.location != window.parent.location)
? document.referrer
: document.location.href,
memberCard = e.target.closest('.user-card-message')
if (memberCard) {
parent.postMessage({
evtname: 'user-card-click',
username: memberCard.parentNode.getAttribute('data-username'),
id: memberCard.parentNode.getAttribute('data-id')
}, url);
}
})
  • 5) Dans Administration/Général : "Nombre non lu" ET "Nombre de messages non lus pour les messages privés", indiquer "tous les messages"
  • 5b) Dans Administration/Général : Activer "Activer CORS" et dans "Origine de CORS" mettre l'URL de base des espaces projets exemple : "https://projects.ametys.io"
  • 5c) Dans Administration/Général : Intégration Iframe, activer l'envoie et activer la reception. + Pour les deux mettre l'URL de base des espaces projets
  • 5d) Dans Administration/Général : NPS : désactiver "Activer l'enquête NPS"
  • 6) Dans Administration/Envoi de fichiers désactiver la protection des fichiers envoyés (dans les anciennes versions de rocket.chat)
        ou Administration/Paramètres/Chargement de fichiers et désactiver la protection des fichiers chargés (dans les versions récentes de rocket.chat)
  • 7) Dans Administration/Permissions, profil "user" (cliquer sur 100 en bas de page pour avoir moins de pages), retirer tous les droits sauf les suivants (Attention la liste des droits est paginée sur de nombreuses pages)
    1. Créer des messages directs
    2. Supprimer son propre message (Delete Own Message)
    3. Mention @all
    4. Mention ici
    5. Afficher les messages directs
    6. Voir l'historique
    7. Voir le salon privé
  • 8) Dans Administration/Comptes : désactiver l'authentification à deux facteurs

Nota bene : si vous installez Rocket.chat sur des espaces projets existants, il est recommandé de synchroniser les serveurs de discussion après installation (voir ici).

Retour en haut