Skip to main content

Passer à 100 000 appels : bonnes pratiques pour les opérations

Découvrez comment gérer un volume d'appels élevé jusqu'à 100 000 sessions simultanées par jour sur les corridors États-Unis–Inde, sans latence ni coupures…

Digvijay Singh Shekhawat
Digvijay Singh Shekhawat
June 26, 2026
10 min read
Passer à 100 000 appels : bonnes pratiques pour les opérations

Le passage à 100 000 appels simultanés par jour à l'international échoue non pas à cause de l'intelligence du LLM, mais à cause des goulets d'étranglement du SIP trunking, de la perte de paquets sur WebRTC et des pertes d'attestation STIR/SHAKEN au niveau des opérateurs. Les responsables des opérations doivent traiter l'infrastructure vocale comme un problème de systèmes distribués plutôt que comme un exercice de formation au service client. Lors du passage à l'échelle du traitement automatisé des appels, le goulet d'étranglement est presque toujours la topologie physique du réseau et les contraintes de signalisation, plutôt que la conception des prompts ou la capacité de raisonnement du LLM.

La physique de la voix : pourquoi les SVI traditionnels et les surcouches de LLM échouent à grande échelle

Les wrappers API standard construits sur GPT-4 introduisent un plancher de latence inacceptable de 1,8 seconde. Cette latence se compose de la surcharge du handshake TCP, de la sérialisation API, du temps jusqu'au premier token (TTFT) du LLM et du traitement de synthèse text-to-speech (TTS). Dans les environnements conversationnels à fort volume, un délai de 1,8 seconde provoque immédiatement des chevauchements de parole, oblige les utilisateurs à se répéter et dégrade la qualité du support client.

Pour gérer des volumes d'appels élevés et améliorer les temps de réponse, l'infrastructure vocale doit contourner l'internet public, où la perte de paquets fait chuter le Mean Opinion Score (MOS) sous 3,0. Une route internet standard subit des sauts de routage imprévisibles entre les passerelles américaines et indiennes. À l'inverse, un pontage SIP-vers-PSTN direct utilisant des réseaux de fibre privés garantit que l'emplacement des passerelles média détermine la qualité des appels, en maintenant la perte de paquets sous 0,5 %.

Le modèle d'autorisations d'exécution d'Android M, en particulier l'option « Ne plus demander », reflète les échecs silencieux observés dans les autorisations de microphone du navigateur en WebRTC lors des transferts assistés par agent. Lorsqu'une session vocale passe d'un AI agent automatisé à un agent humain en direct travaillant sur un softphone WebRTC, tout retard d'accès à l'interface audio matérielle locale entraîne des pertes de paquets audio. Cela provoque un blanc de 3 à 5 secondes au début du transfert, déclenchant l'abandon immédiat du client.

Pour éviter cela, les plateformes vocales doivent mettre en place des routines de préchauffage qui initialisent la PeerConnection WebRTC et capturent le contexte audio avant l'exécution de la commande de transfert SIP.

Gestion des sessions et préservation de l'état dans le traitement d'appels à fort volume

S'appuyer sur des cookies de session HTTP standard échoue lors des transferts entre antennes relais initiés par l'opérateur. Lorsqu'un utilisateur mobile se déplace, son adresse IP change dynamiquement, ce qui invalide les cookies de session et interrompt les appels vocaux en cours. Pour rendre les appels clients scalables, les opérations doivent découpler la couche de transport réseau de l'état de session.

La mise en œuvre d'une authentification sans état basée sur JWT dans l'en-tête SIP User-to-User Information (UUI) permet aux sessions SIP multirégions sécurisées de persister à travers les transferts d'opérateur. L'état de session est transporté dans le paquet de signalisation lui-même, ce qui supprime la nécessité d'interroger une base de données centrale à chaque transfert de paquet.

{
  "sip_headers": {
    "User-to-User": "003a2b4f9e8d7c6b5a4f;encoding=hex",
    "X-Session-ID": "session_us_east_99824",
    "X-Routing-Token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYXRld2F5X2lkIjoiaW4tZGVsLTAxIiwiY29uY3VycmVudF9pZCI6MTU0MDB9"
  }
} 

Maintenir l'état entre la voix, les SMS et WhatsApp sans verrous de base de données à 10 000 écritures simultanées exige un magasin clé-valeur distribué en mémoire comme Redis, configuré avec une réplication active-active entre les régions États-Unis et Inde. Utiliser des bases de données relationnelles pour les écritures d'état de session en temps réel lors de volumes d'appels simultanés élevés entraîne un verrouillage au niveau des lignes, qui fait grimper les temps de réponse des API.

Lorsque les agents doivent basculer à chaud entre les appels en direct et les écrans du CRM, la persistance de session dans une Single Page Application (SPA) est assurée par l'exécution d'un worker WebSocket local persistant. Ce worker continue de traiter le flux vocal en arrière-plan, même si le thread principal de l'interface du navigateur est temporairement bloqué par le chargement d'une page CRM lourde.

Architecture réglementaire : STIR/SHAKEN et conformité TRAI

Maintenir un niveau d'attestation A sur les appels sortants aux États-Unis lors d'un routage via des passerelles indiennes offshore exige une vérification stricte de l'identité au point d'origine. Si un appel sortant est acheminé via un opérateur intermédiaire incapable de vérifier l'identité de l'appelant, l'appel est rétrogradé au niveau d'attestation B ou C, ce qui entraîne un marquage immédiat comme spam par les opérateurs américains.

Le niveau d'attestation A exige que le fournisseur ait établi une relation directe avec le client et puisse vérifier que celui-ci est autorisé à utiliser le numéro de téléphone. Tout niveau inférieur déclenchera un blocage au niveau des opérateurs sur les principaux réseaux américains.

Se conformer aux règles d'enregistrement DLT (Distributed Ledger Technology) de la Telecom Regulatory Authority of India (TRAI) est obligatoire pour la voix et les SMS commerciaux. Chaque modèle de message et chaque en-tête vocal doit être préenregistré sur le portail DLT. Pour éviter un marquage comme spam au niveau des opérateurs, la rotation automatisée des CLI (Calling Line Identification) et la surveillance de la réputation doivent être intégrées directement dans la logique du composeur.

Le traitement programmatique des désinscriptions explicites des utilisateurs et des registres « Do Not Disturb » (DND) doit avoir lieu au niveau du composeur, avant la génération du SIP INVITE. Le composeur doit interroger un cache local en mémoire du National Customer Preference Register (NCPR) en Inde ou du registre national Do Not Call aux États-Unis, en exécutant cette vérification en moins de 5 ms afin d'éviter les retards dans la file d'appels sortants.

L'anti-pattern du logging : pourquoi java.util.logging et les systèmes de fichiers standard échouent à 10 M d'appels

Utiliser java.util.logging ou d'autres frameworks de logging synchrones crée de graves goulets d'étranglement liés au verrouillage des threads en cas de volumes d'appels simultanés élevés. Le logging synchrone force le thread d'exécution à attendre qu'une écriture disque physique soit terminée avant de traiter le paquet réseau suivant, transformant une passerelle vocale à haut débit en une file d'attente monothread.

Mettez plutôt en place un logging JSON structuré et asynchrone via Logback ou Log4j2, directement vers des pipelines Kafka. Cela décharge les opérations d'E/S disque des threads actifs de traitement des appels, garantissant que le logging ne dégrade pas les bonnes pratiques de traitement des appels.

# Example: Verifying Kafka logging pipeline throughput under simulated call load
kafka-producer-perf-test.sh \
  --topic voice-logs-prod \
  --num-records 10000000 \
  --record-size 512 \
  --throughput 50000 \
  --producer-props bootstrap.servers=kafka-cluster:9092 acks=1

Le masquage des informations personnelles identifiables (PII) dans les flux audio en temps réel avant l'écriture sur un stockage persistant est essentiel pour la conformité. Cela s'obtient en exécutant sur le serveur média un modèle de deep learning local à faible latence qui détecte et supprime les chaînes numériques (comme les numéros de carte bancaire et les numéros de sécurité sociale) directement dans le flux RTP, avant que le buffer audio ne soit envoyé vers le bucket de stockage de logs ou de transcription.

Pour déboguer des applications vocales distribuées, concevez des identifiants de trace uniques qui relient les en-têtes SIP INVITE directement aux logs de génération du LLM en aval. Cela permet aux ingénieurs de retracer l'échec d'un seul paquet audio depuis le réseau de l'opérateur jusqu'à l'étape précise de génération de token dans le modèle d'AI.

Ingénierie des coûts : optimiser la terminaison SIP sur les corridors États-Unis et Inde

Contourner la marge des agrégateurs est le moyen le plus rapide de gérer des volumes d'appels élevés à moindre coût. Alors que des agrégateurs comme Twilio facturent en moyenne 0,013 $/min pour la terminaison sortante, le SIP trunking direct avec des opérateurs tier-1 comme Tata Communications, Airtel ou Verizon réduit ce coût à moins de 0,004 $/min. À 100 000 sessions simultanées par jour, cet écart représente des millions de dollars de dépenses d'exploitation annuelles.

Configurez les moteurs de routage au moindre coût (LCR) pour déplacer dynamiquement le trafic en fonction des fluctuations tarifaires des opérateurs en temps réel et des métriques de qualité. Le moteur LCR doit évaluer la performance des opérateurs toutes les 10 secondes et détourner automatiquement les appels des opérateurs présentant un post-dial delay (PDD) ou une perte de paquets élevés.

+-----------------------+      +----------------------+
|   Tata Comm SIP       |      |    Airtel SIP        |
|   Cost: $0.0039/min   |      |    Cost: $0.0041/min |
|   MOS: 4.2 | P99: 120ms|      |    MOS: 3.9 | P99: 180ms|
+-----------+-----------+      +-----------+----------+
            ^                              ^
            |                              |
            +--------------+---------------+
                           |
             [Least-Cost Routing Engine]
                           |
                 (Incoming SIP INVITE)

L'ancrage média entraîne des coûts inutiles importants. Plutôt que d'acheminer tous les flux audio via un serveur média central, configurez le Session Border Controller (SBC) pour utiliser un streaming RTP direct (re-INVITE) entre l'opérateur et le destinataire final. Cela contourne entièrement le serveur média une fois l'appel établi, réduisant les coûts de bande passante jusqu'à 70 %.

Métriques opérationnelles : passer du CSAT subjectif à la télémétrie réseau objective

Les indicateurs traditionnels du support client, comme le CSAT ou le Net Promoter Score, sont des indicateurs retardés qui ne parviennent pas à capter la dégradation de l'infrastructure en temps réel. Pour maintenir la qualité du support client, les équipes opérationnelles doivent surveiller la télémétrie réseau brute. Le temps de réponse P99 de l'application vocale est l'indicateur le plus critique de tous ; tout temps de réponse supérieur à 250 ms est directement corrélé à une hausse de 14 % des raccrochages clients.

La gigue et la perte de paquets doivent être calculées de manière programmatique à partir des rapports de réception RTCP (Real-time Transport Control Protocol). Lorsque la perte de paquets dépasse 1,5 % ou que la gigue passe au-dessus de 30 ms, le système doit déclencher des disjoncteurs automatisés pour rerouter le trafic actif vers d'autres chemins réseau en moins de 500 ms.

Enfin, corrélez directement la télémétrie au niveau réseau avec les vitesses de génération LLM token-to-speech (TTS). Si le réseau d'un opérateur subit un retard de routage temporaire, le moteur TTS doit ajuster automatiquement la taille de sa mise en mémoire tampon audio pour éviter les saccades audibles, préservant ainsi l'expérience utilisateur même en cas de conditions réseau dégradées.

À mesure que les réseaux vocaux migrent entièrement vers un routage IP piloté par l'AI, les gagnants opérationnels se distingueront par la résilience de leur infrastructure plutôt que par leur prompt engineering. Les responsables des opérations qui maîtrisent dès aujourd'hui l'intégration au niveau des opérateurs et l'état de session à faible latence conserveront un avantage structurel en coût et en qualité pour la prochaine décennie.

Questions fréquentes

Qu'est-ce qui limite réellement les appels simultanés ? Rarement un seul facteur. Le traitement des médias, les quotas des fournisseurs de reconnaissance vocale, les limites de canaux des opérateurs et les connexions à la base de données imposent chacun un plafond, et le plus bas d'entre eux constitue votre capacité réelle.

La mise à l'échelle horizontale règle-t-elle le problème ? Uniquement pour les parties sans état. L'état des appels doit bien résider quelque part, et cet endroit devient la contrainte.

Comment tester cela sans 100 000 appels réels ? Générez de la charge sur le chemin média plutôt que sur l'API. La plupart des surprises de capacité se situent dans le traitement audio, auquel un test au niveau de l'API ne touche jamais.

Digvijay Singh Shekhawat
Digvijay Singh Shekhawat

Fondateur, Finn AI

Digvijay développe Finn — la couche d'orchestration vocale pour les entreprises qui raisonne pendant les appels, extrait les données et met à jour vos systèmes en temps réel. Il écrit sur l'IA vocale, la mise sur le marché et ce qu'il faut pour déployer des agents autonomes à grande échelle.