technique:adminserv:mattermost:hooks_commands

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
technique:adminserv:mattermost:hooks_commands [2021/01/05 16:26] qduchemitechnique:adminserv:mattermost:hooks_commands [2022/04/25 09:59] (Version actuelle) qduchemi
Ligne 10: Ligne 10:
  
 * Un **hook entrant** (abrévié hook par la suite) est une URL spéciale qui permet de poster un message sur un canal particulier lorsque l'URL est requêtée. * Un **hook entrant** (abrévié hook par la suite) est une URL spéciale qui permet de poster un message sur un canal particulier lorsque l'URL est requêtée.
-* Une **commande slash** (abrévié commande par la suite) est un mot clé précédé d'un symbole `/` qui déclenche l'appel à une URL externe et remplace le message par la réponse.+* Une **commande slash** (abrévié commande par la suite) est un mot clé précédé d'un symbole `/` qui déclenche l'appel à une URL externe et remplace le commande par la réponse de l'URL.
  
 Les commandes sont à différencier des commandes de plugin (comme `/spoiler`), qui ne requêtent pas nécessairement une URL extérieure. Les commandes sont à différencier des commandes de plugin (comme `/spoiler`), qui ne requêtent pas nécessairement une URL extérieure.
  
 <bootnote> <bootnote>
-Les **hooks** sont très pratiques pour réagir à un événement extérieur et poster un message suite à cet événements. Voici quelques exemples :+Les **hooks** sont très pratiques pour réagir à un événement extérieur et poster un message suite à cet événement. Voici quelques exemples :
   * Ajout d'une nouvelle tâche sur un kanban : un message est posté sur le canal concerné   * Ajout d'une nouvelle tâche sur un kanban : un message est posté sur le canal concerné
   * Ouverture d'une nouvelle issue sur Gitlab : une mention est envoyée aux membres du dépôt   * Ouverture d'une nouvelle issue sur Gitlab : une mention est envoyée aux membres du dépôt
Ligne 30: Ligne 30:
 </bootnote> </bootnote>
  
-Pour résumer, les hooks permettent d'être informés d'un événements, les commandes permettent de déclencher un événement ou de générer des informations dynamiques.+Pour résumer, les hooks permettent d'être informés d'un événement, les commandes permettent de déclencher un événement ou de générer des informations dynamiques.
  
 ## Administration et portée ## Administration et portée
Ligne 45: Ligne 45:
 https://team.picasoft.net/<equipe>/integrations https://team.picasoft.net/<equipe>/integrations
 ``` ```
- 
-Ou depuis le menu (clic sur le burger à côté du nom de compte → Intégrations). 
  
 {{ :technique:adminserv:mattermost:integ_mattermost.png |}} {{ :technique:adminserv:mattermost:integ_mattermost.png |}}
Ligne 118: Ligne 116:
 def result(): def result():
     return {     return {
-        "text": f"## Commande reçue!\nPayload : ${request.form['text']}"+        "text": f"## Commande reçue!\nPayload : {request.form['text']}"
     }     }
 ``` ```
Ligne 131: Ligne 129:
 L'application est accessible à l'URL de votre serveur sur le port 5000. L'application est accessible à l'URL de votre serveur sur le port 5000.
  
-<bootnote critical>Attention, ne jamais utiliser ce genre d'exemples en production! Le serveur de développement de Flask n'est à utiliser que pour des tests. De plus, HTTPS n'est pas activé, ce qui rend possible l'interception du jeton utilisé pour valider la réponse.</bootnote>+<bootnote critical>Ne jamais utiliser ce genre d'exemples en production! Le serveur de développement de Flask n'est à utiliser que pour des tests. De plus, HTTPS n'est pas activé, ce qui rend possible l'interception du jeton utilisé pour valider la réponse.</bootnote>
  
 <bootnote critical>Dans un exemple réel, le serveur doit valider que le jeton reçu en paramètre de la requête (`token`) est le même que le jeton généré après l'ajout de la commande dans Mattermost. Cette vérification permet de valider que la requête vient bien de Mattermost, et pas d'un usurpateur qui pourrait vouloir récupérer des informations sensibles ou déclencher un processus non-souhaité.</bootnote> <bootnote critical>Dans un exemple réel, le serveur doit valider que le jeton reçu en paramètre de la requête (`token`) est le même que le jeton généré après l'ajout de la commande dans Mattermost. Cette vérification permet de valider que la requête vient bien de Mattermost, et pas d'un usurpateur qui pourrait vouloir récupérer des informations sensibles ou déclencher un processus non-souhaité.</bootnote>
  • technique/adminserv/mattermost/hooks_commands.1609860368.txt.gz
  • de qduchemi