Utilisateurs en tant que membres dynamiques d'Asterisk

Un moyen d'utiliser des membres dynamiques en utilisant un nom d'utilisateur.

Dans cet article, nous verrons un moyen d'affecter des membres (aussi appelés agents)* les files d'attente Asterisk, un nom d'utilisateur, pour faciliter son utilisation et son suivi.

Pour mieux visualiser les paramètres de l'astérisque, j'ai installé FOP2 qui nous montre un panneau d'appels de file d'attente, et literie pour montrer un exemple de statistiques qui peuvent être collectées.

Un astérisque, l'utilisation de membres dynamiques se fait généralement au moyen de nombres, représentant généralement une extension SIP. Cela rend inconfortable pour l'utilisateur. En outre, l'utilisation des noms d'utilisateur permet de mieux suivre les statistiques.

Lorsque nous n'utilisons pas de nom d'utilisateur, l'apparence d'une file d'attente d'appels dans le panneau FOP2 peut ressembler à la suivante, seuls les numéros de poste seraient visibles:

Colas sin nombre de usuario
Membres de la file d'attente identifiés uniquement par des nombres ou des étiquettes statiques

*Note: l'expression “Agents” utilisé dans les anciennes configurations Asterisk, il est considéré comme obsolète, car un fichier appelé agents.cfg a été utilisé, ce qui n'est plus nécessaire. Aujourd'hui, il est possible d'utiliser l'expression “Membres” pour éviter les confusions.

Pour atteindre notre objectif, nous allons utiliser un fichier texte joint, dans mon cas, je l'ai appelé users.txt, nous l'enregistrons dans le répertoire Asterisk ou où nous voulons, puis nous vous indiquerons votre itinéraire.
Il suffit de faire une configuration dans le fichier /etc / asterisk / extensions.conf (gardez à l'esprit que nous avons déjà les files d'attente correctement configurées dans /etc / asterisk / queues.cfg, avec les membres dynamiques, il n'est pas nécessaire de les indiquer dans ce fichier)

L'exemple de configuration est le suivant:

exten => _*[a-z].,1,NoOp(-- Petición de login de miembros --)
same => n,Set(VAR=${SHELL(grep ${EXTEN:1} /etc/asterisk/archivos/usuarios.txt -w)}) ; en un archivo guardamos los nombres válidos.
same => n,GotoIf($["${VAR}" = ""]?cuelga) ; si en el archivo no aparece el nombre tecleado por el operario, lo expulsa.
same => n,AddQueueMember(clientes,Local/${EXTEN:1}@atencion_clientes)
same => n,Set(DB(atencion_clientes/${EXTEN:1})=${CALLERID(num)}) ; almacenamos esa correlación en la base de datos interna de Asterisk.
same => n,Playback(agent-loginok)
same => n(cuelga),Hangup()
; para desregistrarse usamos el carácter 0 en vez de * con el mismo código.
exten => _0[a-z].,1,NoOp(-- Petición de deslogueo de miembros--)
same => n,RemoveQueueMember(clientes,Local/${EXTEN:1}@atencion_clientes)
same => n,Set(borrar=${DB_DELETE(atencion_clientes/${EXTEN:1})}) ; aquí se elimina la correlación, usamos una variable (borrar en este caso)
same => n,Playback(agent-loggedoff)
same => n,Playback(goodbye)
same => n,Hangup()
[atencion_clientes] ; este es el contexto que determina la llamada al miembro desde la cola, si está ocupado no hace nada, manda un mensaje por consola.
exten => _[a-z].,1,NoOp(-Llamada al miembro -)
same => n,Set(MIEMBRO=${DB(atencion_clientes/${EXTEN})})
same => n,GotoIf($[${SIPPEER(${MIEMBRO},curcalls)} = 1]?ocupado)
same => n,Dial(SIP/${MIEMBRO})
same => n(ocupado),NoOp(Miembro ocupado, llamada en cola

Avec cette configuration, l'utilisateur n'a qu'à taper depuis le terminal téléphonique, un astérisque suivi de votre nom d'utilisateur pour vous inscrire, et vous pouvez déjà recevoir des appels de cette file d'attente.
Quelque chose comme ça resterait:

Colas con nombre de usuario
Membres avec nom d'utilisateur

De cette façon, vous pouvez facilement identifier quand vous êtes de garde:

Usuario respondiendo
Le membre de la file d'attente répondant à un appel

Finalement, avec l'outil Asternic, nous pouvons vérifier comment les statistiques peuvent être obtenues par l'utilisateur:

Nomres de usuario para los miembros dinámicos
Statistiques utilisateur

En plus de la façon dont je vous l'ai présenté, pourrait être fait par d'autres moyens, par exemple avec une base de données pour les noms d'utilisateurs, Je le mets avec un fichier texte pour plus de simplicité.
Soyez encouragés à partager vos propres solutions ou les améliorations possibles qui vous sont venues.

Script pour déplacer Asterisk enregistrements d'appels de la RAM

Comment déplacer des enregistrements d'appels Asterisk enregistrés dans la RAM Cet article contient un script amélioré pour pouvoir déplacer des fichiers (dans ce cas, les appels téléphoniques effectués par Asterisk) fichiers ouverts prodigué (appels en cours). Il est très courant de devoir enregistrer des appels Asterisk dans un centre d'appels […]

grsecurity

Il y a quelque temps Dabo m'a dit à propos du noyau de grsecurity dans lequel sont mis en œuvre de nombreuses mesures de sécurité. Qu'est-ce que grsecurity? Grsecurity® est une amélioration globale de sécurité pour le noyau Linux, défend contre un large éventail de menaces de sécurité grâce à un contrôle d'accès intelligent, empêche les débordements dans la mémoire […]

Postinstalación de Ubuntu compagnon

Que faire après l'installation de Ubuntu mat? Une fois de plus je apporte un script de post-installation, dans ce cas à ubuntu tuer 14.04 mais vous pouvez essayer d'autres versions et me dire si cela fonctionne. Mate est un gnome fourchette environnement graphique 2 l'un des environnements graphiques que je moi personnellement aimé plus à l'intérieur […]

Qu'est-ce que OAuth? Rencontrer cette protocole que vous utilisez souvent.

Le but de cet article est de présenter OAuth pour que chacun puisse comprendre, Je explique du point de vue de l'utilisateur, Sachant cette façon peut affecter cette technologie. Qu'est-ce que OAuth? Ce est un protocole ouvert, permettant l'autorisation de l'API sécurisé d'une manière simple et standard […]