.titleBar { margin-bottom: 5px!important; }

Funktionsweise der modules.conf

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von konabi, 26 Sep. 2005.

  1. konabi

    konabi Mitglied

    Registriert seit:
    11 Apr. 2005
    Beiträge:
    424
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo Zusammen,
    vieleicht kann mir jemand beim Verstehen der modules.conf helfen:

    Ich verstehe die modules.conf so:

    mit autoload=yes werden automatisch alle Module im Verzeichnis /usr/lib/asterisk/modules/ geladen.

    mit noload kann ich explizit module vom laden ausschließen.

    Dann bleibt aber die Frage für was benötige ich load wenn ich mit autoload=yes alle Module laden kann?

    Wenn ich capi Triber verwende muß ich mit load =>chan_capi.so arbeiten
    also werden durch autoload =yes doch nicht alle Module geladen und nur bestimmte? Wenn ja welche Module werden geladen?

    Gibt es Module die von anderen Abhängig sind?


    Also irgenwie werde ich da nicht schlau draus. Ich habe leider auch keine Doku zur modules.conf gefunden.

    Ich bin für jeden Hinweis dankbar.


    mfg Sven
     
  2. Maik

    Maik Gesperrt

    Registriert seit:
    1 Apr. 2004
    Beiträge:
    1,778
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Module die mit 'load' inder modules.conf auftauchen werden vor allen anderen geladen. Bestimmte Module benötigen Teile von anderen. Deshalb ist es manchmal notwendig, dass solche Module halt relativ früh geladen werden.
     
  3. konabi

    konabi Mitglied

    Registriert seit:
    11 Apr. 2005
    Beiträge:
    424
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Woran kann ich erkennen welche Module vor anderen geladen werden müssen, oder gibt es irgendwo eine Liste mit Modulen und ihrer Abhängigkeiten?

    Danke Sven
     
  4. Maik

    Maik Gesperrt

    Registriert seit:
    1 Apr. 2004
    Beiträge:
    1,778
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Das siehst du daran, dass Asterisk beim Start mit einer passenden Fehlermeldung abbricht. Abhängigkeiten bei Modulen sind aber eher die Ausnahme. AFAIK sind nur chan_modem und chan_capi davon betroffen.
     
  5. kombjuder

    kombjuder IPPF-Promi

    Registriert seit:
    2 Nov. 2004
    Beiträge:
    3,086
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Weil am Rhein
    Wenn die Reihenfolge nicht eingehalten wird gibt's teilweise auch Probleme:

    load => res_features.so
    load => res_musiconhold.so
    load => chan_zap.so
     
  6. konabi

    konabi Mitglied

    Registriert seit:
    11 Apr. 2005
    Beiträge:
    424
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Langsam steige ich dahinter.

    Mit autoload=yes werden alle Module geladen.

    Trotzem kann man mit load= Module angeben die zeitiger als andere geladen werden sollen.

    z.B. muß das CAPI Channel Modul (chan_capi.so)

    Da sonst vor dem laden des chan_capi.so die capi Applikationen (app_capi.*so) geladen werden und der Start des Asterisk versagt.


    Möchte man bestimmte nicht benötigte Module ausschließen geschieht dies mit noload, oder man entfernt sie aus dem Modulverzeichnis.

    z.B. brauche ich das Modul chan_modem.so nicht wenn ich eine ISDN Karte mit CAPI Unterstützung verwende und die chan_capi Treiber verwende.

    Könnte man sagen die Module im Modulverzeichnis werden standardmäßig
    in einer alphabetischen Reihenfolge geladen?


    Letzte Frage:

    was passiert im [global] Abschnitt?

    chan_capi.so=yes
    chan_modem.so=yes


    Ich hoffe ich nerve nicht, aber ich wills halt genau wissen.


    Danke Sven
     
  7. Maik

    Maik Gesperrt

    Registriert seit:
    1 Apr. 2004
    Beiträge:
    1,778
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Das alphabetisch könnte in etwa hinkommen. Wobei ich jetzt nicht genau weiss, wie da die Sonderzeichen behandelt werden. Genau verfolgt habe ich das aber noch nicht.

    In der global-Sektion wird angegeben, welche Module ihre "Symbole" exportieren dürfen. D.h. dass andere Module dann auf Funktion in dem entsprechenden Modul zugreifen können.