HowTo: Opensuse 10.2 + Asterisk 1.2.24 + BN8S0 + phpagi + Cepstral + MISDN

tommiboy

Neuer User
Mitglied seit
14 Feb 2007
Beiträge
68
Punkte für Reaktionen
0
Punkte
0
Also, ich hab nach sehr langem rumtesten endlich alles zum laufen bekommen,
da ich mich noch als Einsteiger bezeichne, verzeiht mir einige Sachen die man einfacher lösen könnte, Hinweise sind sehr willkommen...

Los gehts mit der Installation von openSuse.
Ich habe mir das DVD Image gezogen gebrannt und davon installiert.
quelle: hier
um ein wenig Komfort zu haben, hab ich mit KDE installiert, dazu kommen
die Module: gcc, gcc+,make,ncurses + ncurses-devel openssl,openssl-devel
zlib,zlib-devel, termcap, bison & lib

Bei mir waren einige schon "gehäkelt" (also schon ausgewählt) dann hab ich installiert
dauerte bei mir ca 30 minuten

Dann hardware installieren
ISDN Karte und LAN-Karte
Bei der ISDN Karte als Hersteller "Cologne Chip AG" und rechts dann HFCS+ based Card wählen

Bei der LAN Karte IP´s zuweisen und nich vergessen mithilfe von"Routing" den Router/Proxy einzustellen, um das Forum zu erreichen ;)
(über yast->netzwerkgeräte->tradionelle Methode-> Karte auswählen -> bearbeiten

nun sollte man Internet haben...
jetzt müssen ein paar downloads getätigt werden, was aber mit Firefox prima geht
Wir benötigen:
Asterisk (ich hab 1.2.24 gewählt):
hier
die 1.4er liegt ein Verzeichnis höher...

dann misdn:
hier
und
hier

dazu als Webserver Lampp, zwecks AGIPHP und MYSQLDB
download, installation & so steht alles dort:
hier

und phpagi
hier
entpacken, in den Ordner wechseln und inhalt nach /var/lib/asterisk/agi-bin kopieren

Nun noch eine Stimme:
das OS auswählen und downloaden
hier

so nun gehts ins volle :eek:

Ich mache alles in der Console und als root!!!!!!

1. Cepstral, die Stimme ins System einbinden
den download entpacken
Code:
tar xvzf Cepstral_Katrin_i386-linux_4.2.1.tar.gz
jetzt Existiert ein ordner der genauso lautet wie der Tarball
dort rein wechseln und dann
Code:
 ./install.sh
machen und das machen was da steht...

dann asterisk entpacken und in das verzeichnis wechseln
dort dann:
Code:
make
warten und dann
Code:
make install
kurz warten und dann
Code:
make samples

jetzt prüfen ob isdn module geladen sind:
Code:
 LSMOD | GREP ISDN
wenn das modul geladen ist
mit
Code:
 rmmod isdn
das Modul entladen
und nochmal prüfen

nun das misdn-modul installieren:
wieder entpacken mit
Code:
 tar xvzf install-misdn-mqueue
in den ordner wechseln und dann
Code:
 make install
wenn alles gut ist, müsste LINUX
bei der eingabe von
Code:
misdn-init scan
eine Karte finden

nun kann man mit
Code:
misdn-init config
eine zur Karte passenden Config-datei erzeugen
der Pfad: /etc/misdn-initi.conf

hier meine:
Code:
card=1,0x8

te_ptmp=1,2,3,4
nt_ptmp=5,6,7,8
poll=128
dsp_poll=128
dsp_options=0
dtmfthreshold=100
debug=0
nun starten wir misdn mit
Code:
misdn-init start
und man sieht wie die karte geladen wird

jetzt die misdn.conf anpassen, hier wieder meine:
Code:
[general]
debug=0
method=standard
append_digits2exten=yes
bridging=yes

[default]
context=default ;alle eingehenden Anrufe landen in diesem Context in der extensions.conf
ports=1,2,3,4,5,6,7,8 ;damit alle Anrufe auf ALLEN Ports ankommen können
msns=*

[ISDN-TE]
context=default
ports = 1
msns=*

und die Extensions.conf
Code:
[general]
  static=yes
  writeprotect=no

[default]
;exten => s,1,Dial(MISDN/1/61) ;weiterleitung auf die MSN 61
exten => s,1,AGI(start.php) ;aufruf einer PHP Datei
exten => s,n,Hangup

die PHP dateien (hier die start.php)
müssen in den Ordner /var/lib/asterisk/agi-bin kopiert werden
in der Datei sollte auch als allererstes die Zeile
Code:
#!/opt/lampp/bin/php -q
stehen, damit der PHP-Interpreter gefunden werden kann.

nun starten wir ersteinmal den Lampp mit
Code:
 /opt/lampp/lampp start

und dann den asterisk mit
Code:
 asterisk -cvvvvv
wenn wir jetzt die Karte anrufen müsste asterisk einen Anruf anzeigen und bei meinem Beispiel die PHP-Datei ausführen oder wenn ich das semikolon entferne und es in die "AGI-Zeile" setze den Anruf auf die MSN 61 weiterleiten!

Die Cepstralstimme nutze ich, um ein Menü auf PHPBasis zu erstellen,
der Vorteil ist, das ich den Text vorlesen lassen kann:

zb so:

Code:
#!/opt/lampp/bin/php -q
     <?php
     /**
       * @package phpAGI_examples
       * @version 2.0
       */
		require('sql.php');
		verbinden();    
       set_time_limit(30);
       require('phpagi.php');
       error_reporting(E_ALL); 
       $agi = new AGI();
       $agi->answer();
	$agi->swift("Bitte geben Sie nun nach dem Piepton Ihre Kundennummer ein, und best�igen mit Raute!");	   
       $result=$agi->get_data('beep',3000,20);
	$kdnrv=$result['result'];
	$agi->verbose($kdnrv);
	$agi->swift("Bitte geben Sie nun nach dem Piepton Ihre Geheimzahl ein, und best�igen mit Raute!");	   
       $agi->verbose("Pin?",1);
       $result=$agi->get_data('beep',3000,20);

Ich hoffe mal das ich hier nix durcheinander gebracht hab ;)
Und das ich vielen damit geholfen habe, immerhin wurde mir das hier ja auch tatkräftig
THX nochmal allen...
 
hallo, aus welchem Grund hast du lamp genommen und nicht die entsprechenden Packages der Suse-Distribution?
 
Hi,
Weil ich damit schon länger arbeite,
Ich denke aber, das die Geschichte auch mit den OpenSuse Packages funtioniert...
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.