modules.conf
Ce fichier défini les modules qui seront chargés au démarrage d’Asterisk. Les modules d’Asterisk se trouve dans : /usr/lib/asterisk/modules (sauf modification du fichier asterisk.conf).
Structure modules.conf
Il se compose d’une seule entrée : [modules].
Il possède quatre paramètres : autoload, preload, load et noload.
Détails des modules chargés par Asterisk
autoload
Ce paramètre indique à Asterisk de charger tous les modules présents à l’exception des modules spécifiés par le paramètre ‘noload’. Ce paramètre ne doit apparaitre qu’une seule fois au début du fichier.
Par défaut , il vaut ‘yes’. Il est conseillé de le laisser à cette valeur, sinon vous devrez préciser tous les modules à charger un par un via le paramètre ‘load’.
preload
Ce paramètre indique à Asterisk quel sont les modules qui doivent être chargés en premier.
Il est souvent utilisé pour charger les modules liés aux base de données. La documentation précise :
Tous les modules qui doivent être chargées avant que le noyau Asterisk ait été initialisé (juste après les logs). Cela sera nécessaire si vous désirez utiliser la fonctionnalité 'realtime' pour les fichiers de configuration, car, dans ce cas, le module de la base de donnée contenant les paramètres 'realtime' doit être chargées avant que les modules utilisant ces fichiers de configuration ne soient eux-même chargés.
Ce paramètre peut être définit autant de fois que nécessaire.
Il est de la forme : preload => <nom_du_module>.so
Exemple :
preload => res_config_mysql.so
load
Ce paramètre permet de forcé le chargement d’un module de façon explicite. Ce paramètre peut être définit autant de fois que nécessaire.
il est de la forme : load => <nom_du_module>.so
Exemple :
load => res_musiconhold.so
noload
Ce paramètre indique à Asterisk de ne pas charger le module précisé. Ce paramètre peut être définit autant de fois que nécessaire.
il est de la forme : noload => <nom_du_module>.so
Exemple :
noload => chan_alsa.so
Utilisation
Forcer le chargement de modules
Cas très rare, le paramètre ‘autoload=yes’ effectuant le chargement de tous les modules présents. Utiliser principalement dans le cas d’utilisation de modules liés à des fonctionnalités externes à Asterisk, tel le TTS ou la reconnaissance de la parole.
Charger les modules dans un ordre définit
Utiliser principalement pour le ‘Realtime’, qui nécessite que les pilotes de base de données soient chargés en premier.
Optimisation d’Asterisk
Afin de ne pas utiliser de ressources pour rien, il peut être utile de ne pas charger les modules que vous n’utilisez pas. C’est le paramètre ‘noload’ qui sera employé dans ce cas. Les modules non utilisés étant principalement ceux liés aux codecs, si vous n’utilisez pas les fonctions image ou vidéo, vous pouvez, pas ce biais, indiquer à Asterisk de ne pas charger les modules correspondant.
Exemple 1 :
noload => chan_alsa.so noload => chan_oss.so noload => chan_ooh323.so noload => chan_mgcp.so
Les deux premières lignes indiquent à Asterisk de ne pas charger les modules liés à la carte son présente sur la machine.
Les deux lignes suivantes indiquent qu’il ne faut pas charger les modules liés aux protocoles H323 et MGCP.
Exemple 2 :
noload => format_jpeg.so noload => format_h263.so noload => format_h264.so
La première indique à Asterisk de ne pas charger le module jpeg liés aux images.
Les deux suivantes font de même pour les modules liés à l’utilisation de la vidéo sur IP.
1 commentaire sur “Modules.conf Asterisk”