====== Asterisk ====== ===== Installation auf Debian Etch ===== - apt-get update && apt-get -y upgrade && reboot - 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 - wget http://www.misdn.org/downloads/mISDN.tar.gz && wget http://www.misdn.org/downloads/mISDNuser.tar.gz - Anschließend mIsdn auspacken und installieren - wget http://downloads.digium.com/pub/asterisk/asterisk-1.4-current.tar.gz - Jetzt Asterisk installieren - make samples nicht vergessen ===== Installation für Fritz!Box auf USB Stick ===== - Telnet auf Fritzbox aktiviern über Tastencode #96*7* - cd /var && wget http://spblinux.de/fbox/cfg_asterisk14 - chmod +x cfg_asterisk14 && ./cfg_asterisk14 usb_install - danach liegen die config Dateien von asterisk unter /var/asterisk14/etc/asterisk - **Hinweis:** Asterisk darf nicht auf Port 5060 lauschen, da dieser bereits von der FritzBox belegt wird - 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. ==== FritzBox 7270 ==== 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. ===== Hello-World test ===== - rm /etc/asterisk/sip.conf; rm /etc/asterisk/extensions.* - 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 - 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 ===== ISDN ===== 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=* ==== Ausgehende Telefonate ==== * 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}) ==== Eingehende Telefonate ==== * Telefonate vom ISDN Netz: [from-isdn] exten => _20X,1,Dial(SIP/${EXTEN}) Dies sollte alle MSNs (200 - 209) an die gleichlautenden SIP Extensions weiterverbinden ===== FritzBox als ATA ===== 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. ===== Faxen mit Asterisk ===== ...oder wer nicht hören will.\\ * Faxen über Asterisk (ISDN) und SIP ATA funktioniert NICHT. (Glaubt mir, ich habs probiert.) * Was aber funktionieren soll: eine synchronisierte Analogkarte, die das Taktsignal von der ISDN Karte abgreift, an der der externe S0 Kanal steckt. * Also bleibt nur noch ein Faxserver! ==== Hylafax ==== * Hylafax braucht zunächst mal ein Modem, in diesem Fall iaxmodem. * iax.conf ändern, damit sich iaxmodem am Asterisk anmelden kann. * Hylafax installieren * und mit faxsetup konfigurieren === Fax per Mail === * /etc/hylafax/FaxDispatch: SENDTO=meinefaxe@firma.de FILETYPE=pdf * /etc/init.d/hylafax restart === Mail zu fax === * Benutzer anlegen, der Mail bekommt, die als Fax versendet werden soll. * .procmailrc: :0 * ^Content-Type: multipart/ { :0 B * ^Content-.*attachment.*name=.*\.(pdf) { :0w: * ^Subject:[ ]*\/[^ ].* | faxmail -d "$MATCH" >>output } } (gefunden [[http://partmaps.org/era/procmail/mini-faq.html#pass-envar|hier]].) ===== Ausstehende Test ===== * Rufumleitung -> [[http://www.dus.net/index.php?id=420]] * Anrufbeantworter * Telefon Konfig über php Skript * Besetztlampenfelder