> ## Documentation Index
> Fetch the complete documentation index at: https://docs.famulor.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Numéroteur, tentatives et conformité

> Numérotation en parallèle, logique de tentatives, plages d'appel, listes DNC et gestion de la messagerie vocale

Le numéroteur continue de fonctionner après la fermeture du navigateur et place les appels selon les règles de votre campagne.

## Numérotation en parallèle (concurrence)

* Définissez **Parallel calls (concurrency)** par campagne — un curseur de 1 à 10 — pour déterminer combien d'appels s'exécutent simultanément.
* La limite effective correspond à la plus basse des deux valeurs : le réglage de la campagne et l'allocation d'appels parallèles de votre forfait ; les valeurs plus élevées sont plafonnées côté serveur. Cette allocation de forfait est un plafond unique à l'échelle de l'espace de travail, partagé par toutes les sessions d'assistant actives — appels entrants et sortants, appels web, voix WhatsApp et chat web — plutôt qu'un budget par campagne ou par canal.
* **Concurrent Lines** est un add-on payant, à paliers, que vous achetez depuis **Settings → Plan** pour les espaces de travail ayant besoin d'une capacité simultanée supérieure à celle incluse dans le forfait. Chaque ligne achetée relève le plafond de l'espace de travail d'une unité.
* Les appels qui ne se connectent jamais sont libérés automatiquement afin de ne pas occuper un emplacement indéfiniment.

<Note>
  Il s'agit d'une limite différente du [plafond quotidien d'appels sortants](/fr/telephony/outbound-limits) : la concurrence régit combien d'appels s'exécutent au même moment, le plafond quotidien régit combien d'appels peuvent démarrer sur une journée entière.
</Note>

## Logique de tentatives

Les leads sans réponse sont relancés automatiquement :

* **Max. retries** compte les tentatives *supplémentaires* après le premier appel. La valeur par défaut est 2, un lead est donc composé jusqu'à trois fois.
* **Retry delay (min)** est le délai d'attente avant la tentative suivante (par défaut 60) — la relance tombe à un *moment différent de la journée*, ce qui améliore sensiblement le taux de contact.
* Un lead qui répond n'est plus rappelé ; les résultats `busy`, `no answer` et `failed` programment la tentative suivante jusqu'à épuisement du budget.
* L'historique complet des tentatives est visible pour chaque lead.

**Max. retries** est le plafond absolu pour toutes les politiques de relance ci-dessous. Les options de messagerie vocale et d'objectif ne peuvent pas créer de boucles infinies ; une fois les tentatives épuisées, le lead reçoit son résultat final.

### Réessayer jusqu'à ce qu'un humain décroche

Activez **Retry on voicemail** (« Continue calling until a human answers ») pour continuer les tentatives lorsque la détection de répondeur signale une messagerie vocale, un SVI, ou un message d'indisponibilité. Une réponse humaine ou l'épuisement du budget de tentatives finalise le lead.

Il s'agit d'une *politique* de relance. Ce que l'assistant fait réellement en tombant sur une machine est un réglage distinct, propre à l'assistant — voir [AMD et messagerie vocale](#amd-et-messagerie-vocale) ci-dessous.

### Réessayer jusqu'à l'atteinte de l'objectif

Deux réglages se combinent pour continuer à appeler un lead jusqu'à ce qu'un résultat défini soit atteint :

* **Retry until goal completed** (« Continue calling until the goal is achieved ») — marque un lead comme terminé uniquement lorsque l'objectif sélectionné est évalué à vrai ; sinon, une nouvelle tentative est programmée dans la limite maximale.
* **Goal variable** — choisissez l'un des champs d'évaluation post-appel oui/non de l'assistant, ou le résultat intégré **Call successful**. Si la liste est vide, ajoutez d'abord un champ booléen sous l'onglet [Analysis](/fr/assistants/analysis) de l'assistant.

Si l'objectif n'est jamais atteint, le lead n'est relancé que jusqu'à ce que **Max. retries** soit atteint.

## Plages d'appel

Définissez **quand la campagne est autorisée à appeler**, jour par jour, dans la **timezone** de la campagne — par exemple du lundi au vendredi de 9h30 à 18h00. En dehors de cette plage, le numéroteur se met en pause et reprend automatiquement.

<Note>
  En Allemagne, les appels non sollicités en dehors d'heures raisonnables enfreignent l'UWG. Les plages d'appel ne sont pas qu'une fonctionnalité de courtoisie : configurez-les pour chaque campagne qui appelle des particuliers.
</Note>

## Ne pas appeler (DNC)

Une liste de suppression centrale à l'échelle de l'espace de travail bloque
strictement les contacts ayant retiré leur consentement, avant toute action
marketing proactive :

* **Universal mode** bloque tous les canaux liés dès qu'un retrait de
  consentement survient sur l'un d'entre eux.
* **Per-channel mode** ne bloque que le canal sur lequel le retrait de
  consentement a été reçu.
* Le téléphone, l'e-mail, l'identité du contact, la portée, la source, le
  motif et le mode au moment du retrait sont conservés à des fins de
  traçabilité.
* La numérotation de campagne vérifie la suppression vocale active juste
  avant l'envoi, et bloque par défaut lorsque le statut de consentement ne
  peut pas être vérifié.

Gérez le mode et les entrées sous **Settings → Data → Suppression**. Voir
[Consentement et conformité](/fr/settings/consent-compliance) pour le
comportement multicanal, la sémantique de restauration, des exemples REST et
les outils MCP.

* `GET /api/v1/suppression-list` — liste les entrées actives
* `POST /api/v1/suppression-list` — enregistre un retrait de consentement
* `DELETE /api/v1/suppression-list/{id}` — restaure le consentement sans
  supprimer l'historique d'audit

Les mêmes opérations sont disponibles via MCP.

## AMD et messagerie vocale

Activez **Answering machine detection (AMD)** dans les réglages de la campagne pour détecter une machine avant que l'assistant ne parle, et choisissez **Conservative** (moins de faux raccrochages) ou **Aggressive** (détection plus rapide, à volume plus élevé). L'AMD classe qui a décroché dans l'une de ces cinq catégories :

| Résultat AMD          | Signification                                                              |
| --------------------- | -------------------------------------------------------------------------- |
| `human`               | Une personne a répondu — la conversation se poursuit normalement           |
| `uncertain`           | Impossible à classifier — traité comme un humain, la conversation continue |
| `machine-vm`          | Messagerie vocale / répondeur                                              |
| `machine-ivr`         | Un SVI / menu téléphonique                                                 |
| `machine-unavailable` | Numéro indisponible / message opérateur                                    |

Ce que l'assistant *fait* face à une machine — raccrocher en silence, ou prononcer un message configuré puis raccrocher — est une bascule unique au niveau de l'**assistant**, pas de la campagne : [Settings → Conversation → Voicemail](/fr/assistants/conversation-quality#messagerie-vocale). Laissez ce message vide et l'accueil normal de l'assistant sera diffusé à la place.

Le résultat AMD apparaît avec l'appel et aide la logique de relance à distinguer une boîte vocale d'un appel resté sans réponse. Activez [Retry on voicemail](#réessayer-jusquà-ce-quun-humain-décroche) le cas échéant.

<Tip>
  Un message vocal suivi d'une nouvelle tentative à une autre heure peut améliorer le taux de contact. Associez le message vocal de l'assistant à **Retry on voicemail**.
</Tip>

Mis bout à bout, une tentative d'appel pour un lead suit ce parcours :

```mermaid theme={null}
%%{init: {'flowchart': {'defaultRenderer': 'elk'}}}%%
flowchart TD
    Dial["Appeler le lead — tentative N"] --> Outcome{"Résultat de l'appel"}
    Outcome -->|"AMD : human ou uncertain"| Talk["La conversation se poursuit normalement"]
    Outcome -->|"AMD : machine-vm / machine-ivr / machine-unavailable"| VM{"L'assistant a-t-il laissé<br/>un message vocal ?"}
    Outcome -->|"busy / no answer / failed"| Budget{"Reste-t-il des tentatives sous Max. retries ?"}
    Talk --> GoalToggle{"Retry until goal completed activé ?"}
    VM -->|"Non — a raccroché"| Budget
    VM -->|"Oui"| VMToggle{"Retry on voicemail activé ?"}
    VMToggle -->|"Oui"| Budget
    VMToggle -->|"Non"| GoalToggle
    GoalToggle -->|"Non"| Done["Lead marqué comme terminé —<br/>aucune autre tentative"]
    GoalToggle -->|"Oui"| GoalCheck{"Variable d'objectif vraie ?"}
    GoalCheck -->|"Oui"| Done
    GoalCheck -->|"Non"| Budget
    Budget -->|"Oui"| Next["Programmer la tentative suivante après Retry delay"]
    Next --> Dial
    Budget -->|"Non"| Final["Le lead reçoit son résultat final —<br/>tentatives épuisées"]
```

## Dépannage

### La campagne ne démarre pas

| Message                                                     | Cause                                                    | Solution                                                                                       |
| ----------------------------------------------------------- | -------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| « The campaign has no assistant assigned. »                 | Aucun assistant n'est sélectionné pour cette campagne    | Affectez un assistant dans les réglages de la campagne                                         |
| « The campaign has no leads. »                              | La file d'attente de leads est vide                      | [Importez des leads](/fr/audience/importing-contacts) ou affectez des contacts depuis Audience |
| « Archived campaigns cannot be started. Restore it first. » | La campagne a été archivée                               | Restaurez la campagne, puis démarrez-la                                                        |
| « This campaign is blocked by your current plan limit. … »  | Vous dépassez l'allocation de campagnes de votre forfait | Mettez à niveau votre forfait, ou archivez une autre campagne                                  |
| « Campaign is already running. »                            | La campagne est déjà en train d'appeler                  | Rien à faire — pour modifier ses réglages, sélectionnez d'abord **Stop**, puis redémarrez-la   |

Une campagne planifiée passe par les mêmes vérifications lorsque son heure de démarrage arrive. Si l'une d'elles échoue, la campagne passe à l'état Paused au lieu de Running et conserve l'erreur — une campagne qui était Scheduled hier et qui est Paused aujourd'hui a donc généralement rencontré l'une des situations ci-dessus.

### Aucun appel ne se déclenche

Une campagne en cours d'exécution qui ne passe pas d'appels s'explique généralement par l'une de ces causes :

* **En dehors de la plage d'appel** — vérifiez l'heure actuelle par rapport à la [plage d'appel](#plages-dappel) et au fuseau horaire de la campagne.
* **File d'attente épuisée** — chaque lead a soit épuisé son **Max. retries**, soit attend sa prochaine tentative. Importez d'autres leads, ou revoyez les [réglages de relance](#logique-de-tentatives).
* **Supprimé** — les leads figurant sur la [liste de blocage](#ne-pas-appeler-dnc) sont ignorés, pas relancés.

### Débogage de l'atteinte des objectifs

Si [Retry until goal completed](#réessayer-jusquà-latteinte-de-lobjectif) marque des leads comme terminés de façon inattendue — ou ne les marque jamais comme terminés — la cause habituelle est la variable d'objectif elle-même, pas la logique de relance :

1. Examinez les transcriptions d'appels récentes à la recherche d'erreurs d'extraction sur la variable d'objectif.
2. Passez quelques appels de test et vérifiez ce que l'assistant extrait réellement.
3. Affinez la description de la variable et le texte du prompt qui l'entoure, afin que les critères soient sans ambiguïté.

<Note>
  Démarrer une campagne appelle immédiatement sa première vague, puis le numéroteur revérifie chaque campagne en cours environ une fois par minute. Si rien ne se passe au bout de quelques minutes, passez en revue les vérifications ci-dessus plutôt que de supposer qu'il faut simplement attendre plus longtemps.
</Note>
