> For the complete documentation index, see [llms.txt](https://docs.hablla.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hablla.com/french/flux-dautomatisations/tous-les-composants/composants-whatsapp/hsm-whatsapp.md).

# HSM WhatsApp

### Vue d'ensemble

Le **Composant d'envoi de messages prêts à l'emploi WhatsApp** (communément appelé `whatsapp_hsm`) est un nœud d'action axé sur le déclenchement de notifications structurées et proactives pour les contacts. Sa fonction principale est de transmettre des modèles de messages commerciaux préapprouvés par Meta (*Messages hautement structurés - HSM*) en dehors de la fenêtre de conversation standard de 24 heures, permettant l'envoi d'alertes, de rappels de facturation, de mises à jour de statut et de messages de réengagement.

**Règle de blocage en cas de prise en charge ouverte :** Pour éviter les interférences logiques ou les interruptions dans le flux de travail des opérateurs humains, le composant dispose d'un verrou de sécurité natif : le système effectue une vérification préalable et, si le numéro de destination **dispose déjà d'un ticket ou d'une prise en charge humaine ouverte**, la HSM **ne sera pas envoyée**. Pour forcer le déclenchement de manière prioritaire et indépendamment de l'état actuel du contact, il est impératif d'activer explicitement le paramètre de contournement du composant.

### Paramètres de configuration

Le paramétrage du composant relie le compte Meta aux variables du flux, en se divisant selon les critères suivants :

* **Connexion :** Menu déroulant permettant de sélectionner par quel compte ou numéro officiel de l'API WhatsApp Business la notification active sera transmise au destinataire. *(Il est recommandé d'utiliser des nomenclatures fictives ou standardisées de canaux dans l'environnement de conception).*<br>
* **Modèle :** Permet de choisir lequel des modèles homologués et approuvés par Meta sur le compte commercial sera utilisé (ex : `teste_var`).<br>
* **Variables (Corps) :** Champs d'entrée dynamiques générés à partir des espaces réservés du modèle sélectionné (ex : `{{1}} *`). Ils servent à remplir les informations personnalisées qui seront injectées dans le message envoyé.<br>
* **Département / Utilisateur / Campagnes (Affectation et traçabilité) :** Menus optionnels pour lier le ticket généré par le déclenchement à une file d'attente de service spécifique, à un opérateur fixe ou à une campagne marketing interne à des fins de rapports analytiques.<br>
* \_*Envoyer à (* Champ obligatoire) :\_\* Champ d'entrée numérique contenant le numéro de téléphone du destinataire (avec indicatif régional / DDD) qui recevra le déclenchement. Accepte des valeurs statiques ou l'injection de variables du flux.<br>
* **Ne pas ouvrir de prise en charge (clé à bascule - Toggle Switch) :** Paramètre de contrôle critique. Lorsque **désactivé**, l'envoi de la HSM ouvre automatiquement un ticket sur le tableau de bord si le client répond. Lorsque **activé**, le système envoie la notification comme un déclenchement isolé (notification pure) et ignore le verrou de sécurité, garantissant la livraison du contenu même si le contact a une prise en charge ouverte avec un humain.<br>
* **Plusieurs sorties (clé à bascule - Toggle Switch) :** Lorsqu'il est activé, modifie la morphologie du bloc dans l'éditeur graphique de flux, en mettant à disposition des ports de branchement distincts basés sur les statuts de livraison et de lecture ou sur les interactions avec le post (comme les clics sur les boutons de réponse rapide du modèle).<br>

### Concepteur visuel

Le constructeur adapte dynamiquement son interface graphique en temps réel, servant d'assistant de validation avant l'envoi :

* **Module d'aperçu intégré :** En sélectionnant un modèle dans le champ *Modèle*, l'interface affiche une boîte de visualisation simulant exactement l'apparence du message sur l'appareil du client final, en affichant les espaces réservés des variables (ex : `Bonjour, je suis le {{1}}, comment ça va ?`).<br>
* **Formulaire dynamique de saisies :** Le bloc détecte combien de marqueurs de données existent dans le corps, l'en-tête ou le pied de page du modèle Meta et génère un champ de type texte obligatoire (`*`) pour chacun d'eux dans le bloc *Variables*, garantissant qu'aucun message ne soit envoyé avec des segments vides ou cassés.<br>

### Opérateurs spéciaux

Les propriétés logiques de ce composant gèrent l'interpolation des données avec les serveurs de Meta et le routage des réponses :

* **Tokenisation des chaînes pour variables :** Les champs de saisie des variables acceptent à la fois des valeurs textuelles fixes et des balises de données du flux lui-même (ex : injecter la variable `{{cliente.nome}}` dans le champ du marqueur `{{1}}`). Au moment du déclenchement, le moteur compile ce payload et l'envoie structuré à l'API WhatsApp.<br>
* **Déclenchement par interaction sur un bouton (Quick Replies) :** Si le modèle approuvé par Meta possède des boutons de réponse rapide et que le paramètre *Plusieurs sorties* est actif, chaque bouton devient une ligne physique de connexion dans l'éditeur de flux. Cela permet de dessiner des chemins d'automatisation conditionnés au bouton sur lequel l'utilisateur a cliqué en répondant à la HSM.<br>

### Exemples pratiques

Le tableau ci-dessous montre le comportement du composant dans différents scénarios opérationnels de livraison :

| **Modèle choisi** | **Variable injectée dans {{1}}** | **État de la clé "Ne pas ouvrir de prise en charge"** | **État du client sur le tableau de bord**      | **Comportement du système**                                                                                                                    |
| ----------------- | -------------------------------- | ----------------------------------------------------- | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `teste_var`       | `Agent de test`                  | **Désactivée (par défaut)**                           | Aucun ticket ouvert.                           | **Succès :** Le message est livré et, si le client répond, une nouvelle prise en charge est générée sur la plateforme.                         |
| `teste_var`       | `Agent de test`                  | **Désactivée (par défaut)**                           | En prise en charge avec le support technique.  | **Envoi bloqué :** Le système interrompt le déclenchement de la HSM afin de ne pas violer la prise en charge déjà traitée par un humain.       |
| `aviso_cobranca`  | `Valeur : 150,00 R$`             | **Activée**                                           | En prise en charge avec le service commercial. | **Envoi forcé :** Le système ignore le ticket ouvert et livre la notification de facturation de manière transparente sur l'appareil du client. |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.hablla.com/french/flux-dautomatisations/tous-les-composants/composants-whatsapp/hsm-whatsapp.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
