it:linux:asterisk

Dies ist eine alte Version des Dokuments!


Asterisk

  1. apt-get update && apt-get -y upgrade && reboot
  2. apt-get -y install build-essential libncurses5-dev libcurl3-dev libvorbis-dev libspeex-dev unixodbc unixodbc-dev libiksemel-dev linux-headers-`uname -r` flex bc pciutils libnewt-dev libusb-dev
  3. wget http://www.misdn.org/downloads/mISDN.tar.gz && wget http://www.misdn.org/downloads/mISDNuser.tar.gz
  4. Anschließend mIsdn auspacken und installieren
  5. wget http://downloads.digium.com/pub/asterisk/asterisk-1.4-current.tar.gz
  6. Jetzt Asterisk installieren
  7. make samples

    nicht vergessen

  1. Telnet auf Fritzbox aktiviern über Tastencode #96*7*
  2. cd /var && wget http://spblinux.de/fbox/cfg_asterisk14
  3. chmod +x cfg_asterisk14 && ./cfg_asterisk14 usb_install
  4. danach liegen die config Dateien von asterisk unter /var/asterisk14/etc/asterisk
  5. Hinweis: Asterisk darf nicht auf Port 5060 lauschen, da dieser bereits von der FritzBox belegt wird
  6. Um Asterisk automatisch beim start der Box zu starten sollte man folgendes in die /var/flash/debug.cfg eintragen:
    sleep 40
    cd /var/media/ftp/USB-Partition-0-1/addons
    ./cfg_asterisk usb_install
    ./cfg_asterisk start

Die unten stehende Testkonfiguration hab ich probiert und sie klappt auch, nur die hello-world Datei ist nicht vorhanden und daher kann asterisk sie nicht abspielen.

Hier scheint eine andere glibc installiert zu sein, sodass die Variante von spblinux nicht funktioniert. Ich hab aber was unter http://c2a2b2.com/fbox/ gefunden.

  1.  rm /etc/asterisk/sip.conf; rm /etc/asterisk/extensions.*
  2. sip.conf:
    [general]
    bindport = 5060
    bindaddr = 0.0.0.0
    context = sonstige
    
    [2000]
    type = friend
    context = meine-telefone
    secret = 1234
    host = dynamic
    
    [2001]
    type = friend
    context =  meine-telefone
    secret = 1234
    host = dynamic
  3. extensions.conf:
    [sonstige]
    
    exten => 1234,1,Answer()
    exten => 1234,2,Hangup()
    
    
    [meine-telefone]
    exten => 1234,1,Answer()
    exten => 1234,2,Playback(hello-world)
    exten => 1234,3,Hangup()
    
    exten => _200X,1,Dial(SIP/${EXTEN}, 5)
    exten => _200X,2,VoiceMail(${EXTEN}, u) ;VoiceMail

Bei der Installation unter Debian muss darauf geachtet werden, das die hisax isdn-treiber nicht geladen werden (sonst Kernel OOPS).

  • /etc/asterisk/misdn.conf: Am besten alle andere Kontexte auskommentieren und dann:
    [isdn]
    ports=1
    context=from-isdn
    msns=*
  • Telefonate nach ISDN Netz:
    [meine-telefone]
    exten => _0X.,1,Dial(mISDN/g:isdn/${EXTEN:1})

    Wobei „:1“ die führende 0 wegschneidet.

  • Telefonate immer nach ISDN mit gesetzer CallerID:
    [meine-telefone]
    exten => _X.,1,Set(CALLERID(all)=Joe Smith <25>) 
    exten => _X.,2,Dial(mISDN/g:isdn/${EXTEN:1})
  • Telefonate vom ISDN Netz:
    [from-isdn]
    exten => _20X,1,Dial(SIP/${EXTEN})

    Dies sollte alle MSNs (200 - 209) an die gleichlautenden SIP Extensions weiterverbinden

Wenn man die FritzBox als VoIP ATA benutzt, kann es zu Problemen beim Verbinden von externen Gesprächen kommen. Die Asterisk-Fehlermeldung sagt irgendwas wie „codec mismatch“.
Dieses Problem kann man beseitigen/umgehen, wenn man die FritzBox zwingt einen bestimmten Codec zu verwenden.

allow = g726
disallow = ulaw,alaw

Dieser Eintrag in der sip.conf hat bei mir die Probleme beseitigt.

  • it/linux/asterisk.1236067706.txt.gz
  • Zuletzt geändert: 2015/12/24 14:25
  • (Externe Bearbeitung)