Contexts
Introduction
Dans un système de téléphonie basé sur Asterisk, les contexts jouent un rôle central dans la gestion des appels. Un context définit un environnement cloisonné dans lequel les appels sont traités selon des règles spécifiques.
Un context peut être vu comme une boîte dans laquelle un ensemble de règles (extensions) détermine ce qu'un appel peut ou ne peut pas faire. Cela permet d'organiser et de sécuriser le routage des appels en fonction des besoins de l'organisation.
les contexts sont un outil essentiel pour organiser, sécuriser et personnaliser la gestion des appels dans un système de téléphonie IP. Leur bonne configuration est primordiale pour assurer un fonctionnement fluide et conforme aux besoins de l'organisation.
Pourquoi utiliser des contexts ?
- Séparation des flux d'appels : Un context permet de différencier les appels internes, externes, entrants et sortants. Par exemple, les appels passés par les employés peuvent être traités différemment des appels provenant de l'extérieur.
- Contrôle des permissions : Un utilisateur ou un groupe d’utilisateurs ne peut accéder qu’aux fonctionnalités définies dans le context auquel il appartient. Cela empêche, par exemple, un téléphone interne de composer des numéros - internationaux si cela n'est pas autorisé.
- Gestion avancée des appels : Les contexts permettent d’appliquer des règles spécifiques comme l'activation d'un serveur vocal interactif (IVR), le transfert vers des files d’attente ou encore l’exécution de scripts personnalisés.
Exemple d'utilisation des contexts
Dans un environnement d'entreprise, on pourrait définir plusieurs contexts :
- internal : Pour les appels entre employés.
- external : Pour les appels sortants vers l'extérieur.
- incall : Pour les appels entrants. Chaque appel entrant ou sortant est toujours traité dans un context, garantissant un contrôle total sur son acheminement et ses autorisations.
Création des contexts
Plan de numérotation
Les appels internes se décomposent en 4 différentes parties.
- Utilisateurs
- Files d'attente
- Groupes
- Conférences
Il n'existe pas de configuration type, car cela dépend de vos usages, vos besoins, vos préférences et de votre plage de numéros.
Il reste modifiable, et souvent, le désir est que le numéro entrant corresponde avec l'extension, par exemple:
- ma plage de numéro contient 10 numéros allant de 01 02 03 04 00 à 01 02 03 04 10
- lorsqu'on appel 01 02 03 04 00, on tombe sur l'extension 00
- lorsqu'on appel 01 02 03 04 01, on tombe sur l'extension 01
- etc ...
- lorsqu'on appel 01 02 03 04 10, on tombe sur l'extension 10
Plus votre infrastrucutre est grande, plus il est important d'avoir en tête un plan de numérotation, afin de simplifier la gestion des numéros dans le temps.
Appels externes
On créé un context externe, avec les informations suivantes:
- nom: externe
- description: externe
- mode: appel externe
Appels internes
On créé donc un context interne, avec les informations suivantes:
- nom: interne
- description: interne
- mode: Appel interne
- contexts inclus: externe
Afin de pouvoir joindre en interne les ressources accessibles uniquement via un appel entrant, on va inclure le context externe dans le context interne
Ajouter vos plages de numéros pour chaque type de ressources (utilisateurs, files d'attente, groupes, conférences), par exemple:
- utilisateurs:
- début: 01
- fin: 09
- files d'attente:
- début: 00
- fin: 00
- groupes:
- début: 10
- fin: 10
Appels entrant
on créé un context entrant, avec les informations suivantes:
- nom: entrant
- description: entrant
- mode: appel entrant
- appel entrant
- début: 01 02 03 04 00
- fin: 01 02 03 04 10
- longueur du SDA: 10