ASTERISK::Boite vocale, son plus elevé ?
juillet 18, 2007
Dans le fichier vm_general.inc, certaines distributions (dont trixbox) disposent d’une configuration de asterisk comme suis :
format=wav49|wav
Il semblerait que passer à la forme suivante améliore le niveau sonore (non testé) :
format=wav|wav49
ce mesage s’adresse donc à ceux qui auraient des mails vocaux au niveau sonore trop faible.
ASTERISK::Trunk IAX (Inter Asterisk eXchange)
juillet 17, 2007
CONDITION DE MISE EN PLACE
deux serveurs Asterisk chacun avec le port 4569/udp en écoute.
PREPARATION DES FICHIERS DE CONFIGURATION
Fichier iax.conf pour chacun des deux serveurs
[general]
bindport = 4569
bindaddr = 0.0.0.0
disallow=all
allow=ulaw
allow=alaw
allow=gsm
mailboxdetail=yes[DNS du serveur distant]
type=friend
username=DNS du serveur local
secret=Mot de passe commun aux deux serveurs
auth=plaintext
host=DNS du serveur distant
context=fromiax
peercontext=fromiax
qualify=yes
trunk=yes
ATTENTION : le mot de passe du trunk est le même pour les deux serveurs
Fichier extensions.conf des deux serveurs :
[fromiax]
exten => _X.,1,Answer()
exten => _X.,1,PlayBack(hello-world)
exten => _X.,n,Hangup()
Dans ce cas de configuration, tous les appels envoyés d’un serveur à l’autre à travers IAX obtiendront un jolie Hello World.
COMMENT RENVOYER DES APPELS A TRAVERS IAX ?
Soit pour une extension connue avec Dial :
exten => 2002,1,Dial(IAX2/DNS du serveur distant/2002,30,r)
Soit pour toutes les extensions inconnues d’un contexte avec switch :
switch => IAX2/DNS du serveur distant
ASTERISK::Enregistrement des conversations
juillet 17, 2007
Voici deux méthodes pour l’écoute des conversations avec Asterisk
Exemple Monitor
exten =>
s,1,ExecIF($["${RECORDSIP}"="TRUE"],Monitor,wav|${TIMESTAMP}-${CALLERID(
num)}-${MACRO_EXTEN}-${UNIQUEID}.WAV)
Exemple MixMonitor
exten => _1NXXNXXXXXX,1,MixMonitor(/var/spool/asterisk/monitor/${CALLERIDNUM}-${EPOCH}-${EXTEN}.wav)
exten => _1NXXNXXXXXX,2,Dial(Zap/R1/${EXTEN},90
exten => _1NXXNXXXXXX,3,Hangup
Je ne sais pas si j’en aurais besoin mais c’est toujours mieux noté quelque part.
Asterisk::Monitoring
juillet 12, 2007
FONCTIONNEMENT
Un module Asterisk va jouer le rôle de sub-agent pour le service net-snmp
afin de diffuser des informations sur Asterisk. A l’aide d’outils tels que nagios ou cacti il sera alors possible de surveiller son bon fonctionnement.
INSTALLATION ET MISE EN PLACE
le module res-snmp de Asterisk
Ce module est dépendant de net-snmp. Pourtant, durant la compilation, un erreur peut survenir malgré la présence du service net-snmp et de ses bibliothèques :
checking for net-snmp-config… /usr/bin/net-snmp-config
checking for snmp_register_callback in -lnetsnmp… no
Apres une lecture du fichier config.log (de cette erreur), la solution est découverte :
configure:23304: checking for snmp_register_callback in -lnetsnmp
configure:23339: gcc -o conftest -g -O2 conftest.c -lnetsnmp -L/usr/lib -lnetsnmpagent -lnetsnmpmibs -lnetsnmphelpers -lnetsnmp -ldl -l
crypto -lrpm -lrpmio -lpopt -lbz2 -lz -lm -ldl -L/usr/lib -lwrap >&5
/usr/lib/gcc-lib/i586-suse-linux/3.3.5/../../../../i586-suse-linux/bin/ld: cannot find -lwrap
collect2: ld returned 1 exit status
configure:23345: $? = 1
La bibliothèque ’wrap’ est indisponible, elle est fournit par le package tcpd-devel.
La forme du fichier de configuration est quant à elle très simple :
; /etc/asterisk/res_snmp.conf
[general]
subagent = yes
enabled = yes
Le service net-snmp
Pour fonctionner normalement, net-snmp nécessite un fichier de configuration :
syslocation Server Room
syscontact Sysadmin (root@localhost)rocommunity public 127.0.0.1
rocommunity public 10.1.1.1
master agentx
Ainsi net-snmp va recevoir les informations de asterisk (master agentx) et
il accepter les requetes snmp provenant du serveur nagios (10.1.1.1).
COPIER LES MIBS(Facultatif)
Deux possibilités :
Copier les MIB dans le dossier partagé par tous les utilisateurs (droits root requis) :
cp doc/asterisk-mib.txt /usr/share/snmp/mibs/
cp doc/digium-mib.txt /usr/share/snmp/mibs/
Ou alors les copier dans le dossier /home/utilisateur/.snmp/mibs/. Seul l’utilisateur concerné pourra utiliser ces MIB mais cette fois-ci pas besoin de droits root.
VERIFIER LE BON FONCTIONNEMENT
Au chargement de asterisk :
NET-SNMP version 5.2.3 AgentX subagent connected
EXEMPLES DE DONNEES
ASTERISK-MIB::astVersionString.0 = STRING: 1.4.2
ASTERISK-MIB::astConfigUpTime.0 = Timeticks: (6693143) 18:35:31.43
ASTERISK-MIB::astConfigReloadTime.0 = Timeticks: (6693143) 18:35:31.43
ASTERISK-MIB::astNumModules.0 = INTEGER: 137
ASTERISK-MIB::astNumChannels.0 = INTEGER: 0
ASTERISK-MIB::astChanTypeName.1 = STRING: Zap
ASTERISK-MIB::astChanTypeName.2 = STRING: Skinny
ASTERISK-MIB::astChanTypeName.3 = STRING: SIP
ASTERISK-MIB::astChanTypeName.4 = STRING: Phone
ASTERISK-MIB::astChanTypeName.5 = STRING: Console
ASTERISK-MIB::astChanTypeName.6 = STRING: Local
ASTERISK-MIB::astChanTypeName.7 = STRING: IAX2
ASTERISK-MIB::astChanTypeName.8 = STRING: Feature
ASTERISK-MIB::astChanTypeChannels.1 = Gauge32: 0
ASTERISK-MIB::astChanTypeChannels.2 = Gauge32: 0
ASTERISK-MIB::astChanTypeChannels.3 = Gauge32: 0
ASTERISK-MIB::astChanTypeChannels.4 = Gauge32: 0
ASTERISK-MIB::astChanTypeChannels.5 = Gauge32: 0
ASTERISK-MIB::astChanTypeChannels.6 = Gauge32: 0
ASTERISK-MIB::astChanTypeChannels.7 = Gauge32: 0
ASTERISK-MIB::astChanTypeChannels.8 = Gauge32: 0
A SAVOIR
Sans l’installation des MIB sur le client snmp ces valeurs aurai plutot cette forme :
1.3.6.1.4.1.22736.1.5.1.0 = INTEGER: 0
USAGE DE CACTI
![]()
Ce graphique a été réalisé avec cacti, je vais prochainement essayer de publier son template.