Simulateur de Webhook Emcall

Cette documentation interactive vous guide à travers les fonctionnalités du Simulateur de Webhook Emcall v1.4.2.

Le Problème Adressé

Tester une intégration de webhook pour un système de téléphonie peut être complexe. Il est difficile de recréer manuellement des conditions spécifiques comme :

  • Un grand volume d'appels en peu de temps (tests de charge).
  • Des scénarios d'erreur spécifiques (appel manqué, non joignable).
  • Des événements dupliqués, qui peuvent survenir dans des systèmes distribués.
  • Des variations dans la séquence et le délai des événements.

La Solution Apportée

Ce simulateur fournit une interface web simple pour configurer et lancer des simulations de webhook contrôlées. Il vous permet d'envoyer des charges utiles (payloads) JSON réalistes à votre endpoint de webhook, vous donnant un contrôle total sur la direction, le statut, le volume et la vitesse des événements d'appel simulés.

2. Vue d'ensemble de l'interface

L'interface est divisée en deux sections principales pour une utilisation intuitive.

1. Panneau de Configuration (gauche)

C'est ici que vous définissez tous les paramètres de votre simulation.

2. Panneaux de Suivi (droite)

Ils vous permettent de visualiser en temps réel les résultats de la simulation.

3. Panneau de Configuration

Cette section vous permet de paramétrer finement la simulation.

Paramètres de Base

  • Your Webhook URL : L'URL de votre serveur qui écoute les événements Emcall.
  • X-Emcall-Token : Si votre webhook est sécurisé, saisissez le jeton ici.
  • Agent IDs : Une liste d'IDs d'agents, séparés par des virgules.
  • Phone Numbers : Une liste de numéros. Si laissé vide, des numéros aléatoires sont générés.

Paramètres de Simulation

  • Number of Calls : Le nombre total d'appels à simuler.
  • Event Delay (ms) : Le délai en millisecondes entre chaque événement d'un même appel.
  • Call Delay (ms) : Le délai en millisecondes entre deux appels distincts.

Option de Mélange (Shuffle)

Shuffle scenarios and phone numbers? : Si cette option est activée, le simulateur choisira un scénario et un numéro au hasard pour chaque appel, idéal pour les tests de robustesse.

4. Lancer une Simulation

Vous avez deux manières de lancer une simulation : via des préréglages ou en créant votre propre scénario.

A. Utiliser les Préréglages (Presets)

Les préréglages sont des scénarios d'appel courants, prêts à l'emploi. C'est la manière la plus rapide de tester.

Inbound Success

Appel entrant classique, répondu et raccroché.

created → answered → hungup

Inbound Missed

Appel entrant qui sonne mais n'est pas répondu.

created → hungup

Outbound Unreachable

Appel sortant vers un numéro non joignable.

created → hungup

Inbound Missed (Dup)

Appel manqué avec un événement `hungup` dupliqué.

created → hungup → hungup

B. Créateur de Scénario Personnalisé

Pour des tests plus spécifiques, le créateur de scénario vous donne un contrôle total sur les options suivantes :

  • Direction : `Inbound` ou `Outbound`.
  • Call Status : `Success`, `Missed/Unreachable`, ou `Mixed`.
  • Send duplicate 'call.hungup'? : Permet de tester la gestion des doublons.
  • Randomize event delays? : Simule des conditions réseau plus réalistes.

5. Suivi de la Simulation

Les panneaux de droite vous donnent un retour en temps réel sur la simulation en cours.

Résumé des Appels (Call Summary)

Ce panneau offre une vue d'ensemble statistique : nombre total d'appels, taux de réussite, et un décompte par type. Il liste aussi les 5 appels les plus récents avec leurs détails.

Journal de Simulation (Simulation Log)

Ce journal affiche chaque action effectuée par le simulateur (`INFO`, `SUCCESS`, `ERROR`), avec un horodatage.

Note importante

Les requêtes sont envoyées en mode `no-cors`. Le simulateur ne peut donc pas lire la réponse de votre serveur. Vous devez **toujours vérifier les journaux de votre propre serveur** pour confirmer que les webhooks ont été reçus et traités correctement.

6. Conclusion

Le Simulateur de Webhook Emcall est un outil indispensable pour garantir la fiabilité et la robustesse de votre intégration. En vous permettant de simuler facilement des scénarios variés et complexes, il accélère le développement, simplifie le débogage et vous donne confiance dans votre application avant sa mise en production.