[Eisfair] Erfahrungsbericht Asterisk und Capi2Text ohne ISDN

Uwe Kunze u.kunze.sdh at t-online.de
Mi Dez 28 19:25:30 CET 2016


Hallo Dirk,

DANKE für die kurze Anleitung !
Ich habe das gerade hier mal ausprobiert ... funktioniert !

Da ich hier MIT ISDN fahre (HFCS-Card + EumexISDN + Fritzcard), wird 
DIESE Konfiguration natürlich capi2text immer 2x aufrufen und jeder 
Anruf wird doppelt geloggt :-)

Ich suche eigentlich eine Lösung, capi2text mit dem (etwas angestaubten) 
Webinterface des Asterisk zu verküpfen ... also DORT anstelle der aus- 
und eingehenden Nummern die jeweiligen Namen aus der internen 
Telefonliste von capi2text oder über die Websuche anzeigen zu lassen.

Ich habe hier einen (gut 1,5 Jahre alten) Thread gefunden:
news://spline.eisfair:119/mg1l1o$c05$1@vm-news.spline.inf.fu-berlin.de

Der TO Sascha Pohl hat eine Lösung gefunden:
news://spline.eisfair:119/mgcc6s$e0i$1@vm-news.spline.inf.fu-berlin.de

Ich habe Sascha mal nach den Details angefragt ... vielleicht kann ich 
das Endergebnis meiner Installation dann mal im Asterisk-HowTo-Bereich 
unter "Beispielinstallationen --> VoIP & ISDN" einstellen.

Danke also nochmal.
Gruß Uwe

> hier mal meine Erfahrungen bezüglich Nutzung von Capi2text mit Asterisk,
> ohne ISDN.
>
> Zuersteinmal ist dazu des direkte Bearbeiten der Asterisk-Konfigdateien
> in '/etc/asterisk/' nötig und zumindest ein gewisses Verständnis von
> deren Funtionsweise.
> Mit dem Setupmenü des Asterisk-Paketes geht es nicht und es muss auch
> der Parameter 'ASTERISK_CONFIG_USE' auf 'no' gesetzt sein, ansonsten
> überschreibt ja das Setup alles wieder.
>
> Das Herzstück von Asterisk ist die Datei
> '/etc/asterisk/extensions.conf', welche den Dialplan enthält.
> Hier habe ich am Ende der Liste diese Zeilen als 'macro-logging' eingefügt:
>
> [macro-logging]
> exten => s,1,NoOp(Macro logging)
> exten => s,n,System(sudo /usr/sbin/capi2text.sh ${ARG1} ${ARG2} ${ARG3}
> ${ARG4} 0 2)
>
> Alles was hinter 'exten =>' steht, muss in eine Zeile.
>
> Dieses Macro wird im Dialplan im ankommenden Kontext aufgerufen, bei mir
> z.B. [tkom-in] genannt. Im ankommenden Kontext stehen die Rufnummern,
> auf welche bei ankommenden Anrufen "gehört" wird und was damit gemacht
> wird.
> Als Beispiel:
>
> exten => 012345678,1,Dial(SIP/2001,60,rt)
>
> Hört auf die ankommende Nummer 012345678 und wählt über SIP die in
> sip.conf definierte Nebenstelle 2001 an bzw. leitet den Anruf dorthin.
>
> Und vor dieser Zeile wird die Zeile eingefügt, welche das
> 'macro-logging' aufruft und diesem die Argumente für capi2text.sh
> durchreicht.
>
> exten =>
> 012345678,1,Macro(logging,${STRFTIME(${EPOCH},,%Y-%m-%d)},${STRFTIME(${EPOCH},,%H:%M:%S)},${CALLERID(num)},${EXTEN})
>
>
> Natürlich muss dann die Nummerierung in der Zeile mit dem Dial-Befehl
> entspechend geändert werden:
>
> exten => 012345678,1,Dial... in exten => 012345678,n,Dial... also
> entweder fortlaufend nummeriert oder einfach 'n'.
>
> Um nun noch mit den verschiedenen Zugriffsrechten klarzukommen, ist es
> nötig, eine Datei '/etc/sudoers.d/capi2text' zu erstellen mit folgendem
> Inhalt:
>
> asterisk 192.168.1.5 = (root) NOPASSWD: /usr/sbin/capi2text.sh
>
> Hierbei ist die IP den jeweiligen Verhältnissen anzupassen, ob localhost
> auch reicht, habe ich nicht probiert.
>
>
> Das Paket Capi2Text muss hierfür nur installiert sein, aber nicht
> aktiviert, was bei fehlendem CAPI ja wahrscheinlich sowieso scheitern
> würde.
>
> Grundsätzlich funktioniert das schonmal so, man kann aber durch einfügen
> weiterer Zeilen im Dialplan vor Aufruf des Macro die CALLERID so
> umschreiben, dass Capi2Text die richtige Landeskennung bekommt, um die
> Flagge zuzuordnen:
>
> exten => 012345678,1,ExecIf($[ "${CALLERID(num):0:1}" = "+"
> ]?Set(CALLERID(num)=00${CALLERID(num):1}))
> exten => 012345678,n,ExecIf($[ "${CALLERID(num):0:4}" = "0049"
> ]?Set(CALLERID(num)=0${CALLERID(num):4}))
>
> Speziell bei Telekom-VOIP gibt es bei der mitgeteilten CALLERID eine
> Besonderheit, die diese Vorgehensweise erfordert. Genaueres dazu müsste
> ich auch erst wieder recherchieren.
>
> Ich hoffe, dem einen oder anderen damit helfen zu können.
>
>
> Gruß
>
> Dirk
>



Mehr Informationen über die Mailingliste Eisfair