# Outils collaboratifs

### Prérequis (auto-hébergé)

| Version GLPI | PHP minimum | Recommandé |
| ------------ | ----------- | ---------- |
| 10.0.x       | 8.1         | 8.2        |
| 11.0.x       | 8.2         | 8.4        |

{% hint style="info" %}
Une souscription [GLPI Network BASIC](https://services.glpi-network.com/#offers) (ou supérieur) est requis. Ce plugin est également disponible pour toutes les instances [GLPI Network Cloud](https://glpi-network.cloud).
{% endhint %}

## Installer le plugin

* Allez sur le marketplace. Téléchargez et installez le plugin **Outils collaboratifs**.

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-05eb6a2390e8993bd2d48e3664c3e12039924cba%2FWebhook-1.png?alt=media" alt="images/Webhook-1.png"><figcaption></figcaption></figure></div>

## Activer les webhooks

* Dans l'onglet **Configuration > Notifications** activez les notifications Webhooks

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-2e45669545aa4eb15e81b05b72eba050d338193a%2FWebhook-2.png?alt=media" alt="images/Webhook-2.png"><figcaption></figcaption></figure></div>

## Mattermost

* Depuis un compte administrateur Mattermost, allez dans le menu en haut à gauche,
* Puis Intégrations

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-8b002ab9bc340c639edae0d36f416b8786ac7d64%2FWebhook-3.png?alt=media" alt="images/Webhook-3.png"><figcaption></figcaption></figure></div>

* Sélectionnez **Incoming Webhooks**
* Puis **Add a new incoming webhook**.

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-7822108780b757353264afad79d448ffc52c0720%2FWebhook-4.png?alt=media" alt="images/Webhook-4.png"><figcaption></figcaption></figure></div>

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-515f4181e144550978d801c925634f753ddcd7dd%2FWebhook-5.png?alt=media" alt="images/Webhook-5.png"><figcaption></figcaption></figure>

* Remplissez les champs nécessaires et sélectionnez le canal qui recevra les notifications
* Puis cliquez sur **Save**.

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-9128aa94539f6ada3ad5170530597d4a57038739%2FWebhook-15.png?alt=media" alt="images/Webhook-15.png"><figcaption></figcaption></figure>

* Vous serez alors envoyé le lien de votre Webhook :

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-7b15769c52a91ba04f360f4dc4bea121c8a3babd%2FWebhook-16.png?alt=media" alt="images/Webhook-16.png"><figcaption></figcaption></figure>

* Allez sur `configuration du webhook dans GLPI <setup_glpi>`{.interpreted-text role="doc"}

## Telegram

* Depuis Telegram, démarrez une nouvelle conversation avec le bot **@BotFather** et lancez la commande suivante **/newbot**
* Répondez aux quelques questions qui vous seront posées pour configurer votre bot
* Une fois terminé, un token vous sera envoyé :

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-f783e08a318822752e6c6891e83625081cb7abe5%2FWebhook-17.png?alt=media" alt="images/Webhook-17.png"><figcaption></figcaption></figure></div>

* Si vous avez déjà créé un canal dédié pour recevoir les notifications GLPI, ajoutez-y votre bot.
* Sinon, créez votre propre canal
* ajoutez le bot nouvellement créé
* Envoyez un message dans le canal créé pour initier une conversation et générer les différents ID dont nous aurons besoin.
* Depuis votre navigateur, entrez l'URL suivante :

  \[<https://api.telegram.org/botmonjeton/getupdates\\\\]\\(https://api.telegram.org/botmonjeton/getupdates)>

Remplacez *monjeton* par la valeur du token généré ci-dessus

{% hint style="info" %}
Les URL des bots Telegram prennent la forme **<https://api.telegram.org/bot{monjeton}>**
{% endhint %}

* Vous devriez voir un résultat similaire :

```yaml
"ok": true,
"result": [
    {
        "update_id": 816584684,
        "my_chat_member": {
            "chat": {
                "id": -541684658463,
                "title": "GLPI Ticket",
                "type": "channel"
            },
            "from": {
                "id": 1546610935,
                "is_bot": false,
                "first_name": "xxxxxxx",
                "last_name": "xxxxxxx"


           },
            "new_chat_member": {
                "user": {
                    "id": 7468746847,
                    "is_bot": true,
                    "first_name": "glpi",
                    "username": "xxxxxx_bot"
```

* Dans le **my\_chat\_member** copiez la valeur **ID** du **chat**.

{% hint style="warning" %}
Le signe négatif **-** doit également être copié
{% endhint %}

* Allez sur `configuration du webhook dans GLPI`

## Teams

{% hint style="warning" %}
Suite à la fin des connecteurs O365, Microsoft impose une nouvelle méthode de configuration de vos webhooks via les workflows. Cette procédure doit être mise en place avant le 15 août. Passé cette date, vos webhooks ne fonctionneront plus. Vos webhooks utilisés par les Webhooks entrants (ancienne méthode) ne seront plus disponibles.
{% endhint %}

{% hint style="info" %}
Le canal utilisé doit être public. Microsoft n'autorise pas actuellement les webhooks avec les Workflows depuis un canal privé.
{% endhint %}

* Depuis **Teams**, allez dans **Applications**
* Dans la barre de recherche, tapez **Workflows**
* Dans la liste des applications, cliquez sur **Ajouter**

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-2ed4f8a917dc40197e658bfc42b87ce8ea18f6c6%2FWebhook-21.png?alt=media" alt="images/Webhook-21.png"><figcaption></figcaption></figure>

{% hint style="info" %}
Certaines informations peuvent prendre un certain temps à apparaître, soyez donc patient entre chaque étape et attendez que les informations apparaissent à l'écran avant de passer à l'étape suivante.
{% endhint %}

* Depuis le canal Teams désiré, cliquez sur le menu **···**

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-2a4f4819ce74d6ed3bac3b2de814ffd73b17163f%2FWebhook-22.png?alt=media" alt="images/Webhook-22.png"><figcaption></figcaption></figure></div>

* Cliquez sur **Workflows**
* Choisissez "**Poster dans un canal lorsqu'une requête webhook est reçue**"
* Dans la nouvelle fenêtre, assurez-vous que le compte actuel dispose d'une licence suffisante pour envoyer des webhooks

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-3a83b01db3374136a9622ffeb59a054a1160f972%2FWebhook-23.png?alt=media" alt="images/Webhook-23.png"><figcaption></figcaption></figure>

* Teams vous donnera un résumé du canal sélectionné. Si vous avez bien choisi, cliquez sur Ajouter des Workflows

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-2ac5e933411b9718d4a26bab2d5e7d2535e45da0%2FWebhook-24.png?alt=media" alt="images/Webhook-24.png"><figcaption></figcaption></figure>

* L'URL de votre workflow apparaît. Copiez-la et conservez-la, elle servira à la configuration de GLPI.

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-e2ef578edf9e2d21f0ea365937ddf85c7298dba8%2FWebhook-25.png?alt=media" alt="images/Webhook-25.png"><figcaption></figcaption></figure>

* Allez sur `configuration du webhook dans GLPI`

## Rocket

* Vous devez ajouter une application à votre équipe (le lien est présent en bas de la barre latérale gauche) et sélectionner incoming-webhook
* Ajoutez une nouvelle configuration, sélectionnez le canal où vous souhaitez recevoir les notifications et vous obtiendrez l'URL du webhook.
* Vous pouvez éventuellement configurer un nom et un logo pour votre hook.
* Allez sur `configuration du webhook dans GLPI`

## Slack

* En tant qu'administrateur d'équipe connecté, allez dans le menu d'administration
* cliquez sur l'élément de menu Intégrations
* Cliquez sur le bouton Nouvelle intégration
* Sélectionnez les webhooks entrants, et définissez les paramètres du webhook
* Après enregistrement, vous obtiendrez l'URL du webhook.
* Allez sur `configuration du webhook dans GLPI`

## Configuration du webhook dans GLPI

* Remplissez les informations demandées et sélectionnez le canal sur lequel vous souhaitez que les notifications soient envoyées.
* Une fois enregistré, un lien vous sera envoyé. Copiez ce lien et transférez-le dans **`Configuration`** > **`Notifications`** > **`Configuration des notifications par webhooks`**
* Cliquez sur + et entrez :
  * Nom du Webhook,
  * le type,
  * l'URL.

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-46280862e2bd552b85d7180935a38aece37eb161%2FWebhook-7.png?alt=media" alt="images/Webhook-7.png"><figcaption></figcaption></figure>

* Cliquez sur **Ajouter**

{% hint style="warning" %}
Pour Telegram, vous devrez réentrer le webhook et ajouter le **chat\_id** que vous avez sélectionné précédemment

<img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-3df7521bc49a013b558f58a699c60f4462e665f3%2FWebhook-18.png?alt=media" alt="" data-size="original">
{% endhint %}

* Vous pouvez tester son fonctionnement en sélectionnant votre webhook et en cliquant sur **Envoyer une notification**

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-0fdb98887f842f2a472f066f4e774eecb66c0d7a%2FWebhook-8.png?alt=media" alt="images/Webhook-8.png"><figcaption></figcaption></figure>

## Destinataires

* Vous devez maintenant déterminer quelles notifications seront affectées par l'envoi d'un Webhook et leur assigner un template.
* Allez sur **`Configuration`** > **`Notifications`** > **`Notifications`**
* Sélectionnez la 1ère notification concernée par les Webhooks (ici **Nouveau ticket**)
* Dans l'onglet **Destinataires**, ajoutez votre Webhook puis **Mettre à jour**.

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-8313f5ea1fb4f473117343e5a04e71f3db093ed8%2FWebhook-19.png?alt=media" alt="images/Webhook-19.png"><figcaption></figcaption></figure>

## Templates

* Dans l'onglet **Templates** cliquez sur **Ajouter un template**
* Choisissez **Webook** dans la **Méthode de notification** et **Nouveau** dans le **Template de notification**

Votre Webhook est prêt à l'emploi. Vous pouvez personnaliser le modèle en cliquant sur **Nouveau** afin qu'il corresponde à vos besoins.

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-21cd1f264852df40e437a7b79e9f050d50fa5504%2FWebhook-20.png?alt=media" alt="images/Webhook-20.png"><figcaption></figcaption></figure>

***

## FAQ

Si vous avez des questions concernant l'utilisation du plugin, n'hésitez pas à consulter notre FAQ

<a href="https://app.gitbook.com/s/VU1qbB9Oe25HAYDAQ4tR/plugins/collaborative-tools" class="button secondary">Aller à la FAQ</a>
