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

tieferen Einblick in Asterisk mit Bristuff: Andere Protokolle mit HFC-Karten möglich?

Dieses Thema im Forum "Asterisk ISDN mit Bristuff (hfc, zaptel)" wurde erstellt von Kermit23, 13 Sep. 2006.

  1. Kermit23

    Kermit23 Neuer User

    Registriert seit:
    31 Okt. 2004
    Beiträge:
    117
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Beruf:
    IT-Systemelektroniker
    Ort:
    Köln
    Hallo,

    da ich gegen Ende des Monats meinen Job bei Avaya (vorher Tenovis) verliere und arbeitslos werde (Danke rot-gruen, dass ihr die Heuschrecken ins Land geholt habt!), moechte ich mich etwas tiefer mit Asterisk und Bristuff beschaeftigen.
    Ich habe nun seit ueber einem Jahr einen Asterisk mit Bristuff (HFC-Karte im NT-Mode) laufen und bin sehr zufrieden. Nun moechte ich gerne einen tieferen Einblick bekommen und suche fuer's erste nach ein paar Blockschemata, also wie Asterisk sowie zaphfc, zaptel im Linuxkernel zusammen laufen.

    zaphfc ist wohl nur der reine Kartentreiber. Der Quellcode ist nicht sonderlich gross. Dort wird er als Zaptel Treiber fuer HFC-S PCl-Karten beschrieben. Zaptel selber ist da schon etwas maechtiger und wird als "Zapata Telefonie Interface Treiber" beschrieben. Wie sind nun die Zusammenhaenge, also wie werden die Informationen getauscht? Greift Asterisk (ueber den Kernel) auf das zaptel-Modul direkt zu, wobei das zaptel-Modul wiederrum das zaphfc Modul nutzt?

    Wo wird nun endlich (meine eigentliche Frage!) das ETSI (Euro-ISDN DSS1) Protokoll ausgewertet/erzeugt und die entsprechenden Infos weiter gegeben an Asterisk? Geschiet das schon in der Hardware der HFC-Karte oder macht das erst irgendeine Software im Treiber (im Source von zaptel/zaphfc bin ich beim Ueberfliegen leider nicht fuendig geworden). Mir geht es um Schicht-3 des D-Kanals (Q.931 Protokoll), wo die PDUs z.B. mit einem Protokolldiskriminator (PD) beginnen und so ja irgendwo ausgewertet, bzw. erzeugt werden muessen. Wo geschiet dies? Schon in der Hardware oder im Treiber?

    Meine Grundidee war es zu versuchen, wenn ich demnaechst viel Zeit habe, mich in die Materie einzuarbeiten, eventuell andere Protokolle als E-DSS1einzuprogrammieren (z.B. Protokolle von firmeneigenen Systemapparaten durch mitprotokollieren). Nur wenn das alles schon in der Hardware des HFC-Chips geschiet, brauche ich mir gar keine weiteren Gedanken zu machen. Wenn, dann wollte ich das Rad nicht neu erfinden, sondern bristuff entsprechend abaendern. Nur leider habe ich in den Sourcen auch keine Layer-3 Befehle wie Setup, Call Processing, Alert, usw. finden koennen. :(

    Also unterstuetzt die HFC-Karte hardwareseitig nur irgendwelche vordefinierten Protokolle wie E-DSS1 und 1TR6 oder ist das Software-(Treiber)-Sache?


    TIA,
    Kermit
     
  2. clan

    clan Mitglied

    Registriert seit:
    21 Apr. 2005
    Beiträge:
    266
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Die Protokolle werden zum grossen Teil in libpri implementiert, zaphfc bzw. qozap sind die Kartentreiber. Bristuff patcht die libpri um PtMP hinzuzufügen.

    Die libpri behandlet sämtliche Zaptel-Protokolle (von Analog bis QSIG und ISDN) und ist deshalb extrem unübersichtlich. Die verschiedenen Protokolle werden zum größten Teil in den gleichen Funktionen behandelt, dabei soweit ausser DSS1 auch die US-Varianten. Eine kleine Übersicht gibt übrigens auch die zapata,conf.sample in asterisk/configs.

    Mehr kann ich dazu nicht sagen, ich habe mir den Code mal aus Neugierde angesehen und nach kurzer Zeit, vor allem aus Zeitgründen, aufgegeben. Der Code ist einfach extrem groß und unübersichtlich.

    Einen Link habe ich noch http://zapteldoc.blogspot.com ist etwas veraltet, aber immerhin etwas Doku.
     
  3. Kermit23

    Kermit23 Neuer User

    Registriert seit:
    31 Okt. 2004
    Beiträge:
    117
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Beruf:
    IT-Systemelektroniker
    Ort:
    Köln
    Hallo chan,
    erstmal danke fuer die Antwort. Hat mir schon etwas weiter geholfen. In der libpri ist tatsaechlich das DSS1-Protokoll implementiert!
    Danke auch fuer den Link. Leider wird in den Blog fast nur die Hardwaretreiber beschrieben, war aber dennoch informativ. An der Stelle, wo es langsam interessant wuerde, hat der Autor wohl leider aufgegeben. Die zaptel.c ist auch irre komplex :(
    Ich wusste, dass das nicht unbedingt einfach sein wird, aber das es so komplex ist :(

    Werde mich naechsten Monat noch mal intensiv damit befassen, wenn ich arbeitslos bin.

    Nochmals danke,
    Kermit