- Mitglied seit
- 11 Apr 2006
- Beiträge
- 144
- Punkte für Reaktionen
- 0
- Punkte
- 0
Nachdem ich einige Versuche gebraucht habe, um Trixbox 1.0 zum Werkeln überreden zu können, hilft die hier aufgeführte DAU-Anleitung vielleicht dem Einen oder Anderen, seine Box aufzusetzen. Die Form der Anleitung grenzt z.T. an "hält der mich jetzt für einen Idioten, oder was?", aber lieber ein wenig zu viel, als ein Quentchen zu wenig - ich bin am Anfang meiner AAH-und Linux-Zeit allzu oft über genau jenes fehlende Quentchen gestolpert ...
Für die gesamte Anleitung gilt:
Mein Dank gilt den vielen Helfern hier wie auch Ward (NerdVittles) und Giuseppe (DonDisparato) - die Anleitung hier basiert zum allergrößten Teil auf diversen Hinweisen und/oder Anleitungen von dort.
Los geht's:
Grüße,
Olaf
Für die gesamte Anleitung gilt:
- in <> eingeschlossene Zeichen sind ohne diese einzugeben bzw. bezeichnen z.B. einen Link oder einen Tastendruck.
- "PROMPT:" bedeutet, dass nachfolgende(r) Befehl(e) über die Kommandozeile (als root eingeloggt) einzugeben sind (diese folgen immer in <Code>-Blöcken).
- Für die Kommandozeile ist PUTTY quasi unerlässlich (gibt's [HIER] - allerdings nur in Englisch).
- BTW: In PUTTY kann man bequem per Shift-Einfügen Kommandos (wie aus dieser Anleitung) paste'n!
- für Dateioperationen wie auch das Editieren von Dateien auf der Trixbox ist WinSCP ideal, es verfügt über einen integrierten Editor und ist auch in Deutsch erhältlich (gibt's [HIER]).
- BTW: WinSCP verfügt auch über einen toolbar-Knopf, der eine PUTTY-session öffnet, ohne dass der Account und/oder das PWD nochmals eingegeben werden müssen.
Mein Dank gilt den vielen Helfern hier wie auch Ward (NerdVittles) und Giuseppe (DonDisparato) - die Anleitung hier basiert zum allergrößten Teil auf diversen Hinweisen und/oder Anleitungen von dort.
Los geht's:
- CD einlegen, installieren; Dabei beachten: Installation erfordert nach kurzer Zeit das Setzen des Tastatur-Layouts, der Zeitzone und des root-Kennwortes; Danach kann man getrost Kaffee trinken gehen, die Installation und das Kompilieren dauern je nach Rechner locker 20-30 Minuten. Sinnvoll ist's, das CD-Laufwerk im BIOS so einzustellen (Boot-Reihenfolge/Boot-Menü), dass davon nur per vorherigem Hotkey gebootet wird, ansonsten muß man den ersten reboot abpassen, weil die CD dann herausgenommen werden muß.
- Nach Installation: TrixBox aktualisieren, dazu an der PROMPT:
Code:trixbox-update.sh update
- Nach dem ersten Durchlauf Meldung bestätigen und nochmals aufrufen; PROMPT:
Code:trixbox-update.sh update
- Das dauert ein ganzes Weilchen. Nach Beendigung neu starten - PROMPT:
Code:reboot
- BTW - beim Bootvorgang kommt immer eine Meldung á la "ERROR/FATAL: Module wcfxs does not exist in /proc/modules". Das darf man getrost ignorieren (s. [HIER]).
- Zaptel patch (s. [LINK]); PROMPT:
Code:cd /usr/src/kernels/2.6.9-34.0.1.EL-i686/include/linux/ mv spinlock.h spinlock.h.old sed "s/rw_lock_t/rwlock_t/" < spinlock.h.old > spinlock.h
- Spinlock.h-bug beseitigen und Zaptel-Treiber aktualisieren; PROMPT:
Code:cd /usr/src/kernels ls
- hier sollte jetzt der original Kernel 2.6.9-34.EL-[irgendwas] und der neue aufgeführt werden:2.6.9-34.EL-[irgendwas]. Je nach Prozessor im Trixbox-Server könnte [irgendetwas] variieren. Sollte das der Fall sein, den Namen des neuen Kernel-Pfades aufschreiben und dann das unten aufgeführte <2.6.9-34.EL-i686> dadurch ersetzen; PROMPT:
Code:cd /usr/src/kernels/2.6.9-34.EL-i686/include/linux mv spinlock.h spinlock.h.old wget http://nerdvittles.com/trixbox/spinlock.h reboot
- Nach reboot PROMPT:
Code:cd /usr/src wget http://ftp.digium.com/pub/zaptel/zaptel-1.2.10.tar.gz tar -zxvf zaptel-1.2.10.tar.gz mv zaptel-1.2.10 zaptel cd /usr/src/zaptel make clean make install reboot
- Nach reboot PROMPT:
Code:rebuild_zaptel reboot
- Nach reboot PROMPT:
Code:amportal stop genzaptelconf reboot
- Nach reboot PROMPT:
Code:touch /etc/fxotune.conf /usr/sbin/fxotune -s reboot
- Nach reboot kann Trixbox konfiguriert werden. Dazu Browser öffnen und die Startseite anzeigen (192.168.0.5 durch die IP deiner Trixbox ersetzen):
- http://192.168.0.5/maint/index.php
- <FreePBX>-Link klicken
- <Setup> klicken
- <Tools> klicken
- Roten Balken am oberen Fensterrand klicken, um Aktualisierungen wirksam zu machen
- <Module Admin> klicken, dort:
- Alle [gewünschten] Module anwählen (checkbox: Häkchen setzen)
- in der Combobox <Enable Selected> wählen (falls noch nicht geschehen), dann
- <Submit>-Schaltfläche betätigen
- <Connect to Online Module Repository> klicken
- gewünschte Module wie vor auswählen
- <Download and Enable Selected> in der Combobox auswählen (falls noch nicht geschehen)
- <Submit>-Schaltfläche betätigen
- Roten Balken am oberen Fensterrand klicken, um Aktualisierungen wirksam zu machen (falls Aktualisierungen vorgenommen wurden)
- Zeit, die Extensions zu konfigurieren (n dieser Anleitung gehe ich nur auf SIP-Extensions ein); Vorgang für jede weitere Extension wiederholen.
- <Setup> klicken
- <Extensions> klicken
- <Add Extension> klicken
- <SIP> klicken
- <Extension Number> setzen (interne Rufnummer, z.B. 200, 210, etc.)
- <Display Name> setzen (z.B. "Büro", "Küche", "Wohnzimmer", etc.)
- <Outbound CID> setzen (MSN am ISDN Mehrgeräteanschluss, z.B. 941234 - dies ist die Rufnummer, die nach außen signalisiert wird)
- <secret> setzen (z.B. <test> - das ist das Kennwort, dass am angeschlossenen Gerät zus, mit der Extension eingegeben werden muß)
- <Submit>-Schaltfläche + anschliessend roten Balken am oberen Fensterrand klicken, falls Änderungen vorgenommen wurden
- Ggf. Ring Groups definieren (ein Telefon reagiert auf bzw. klingelt bei mehreren Rufnummern)
- <Ring Groups> klicken
- <Add Ring Group> klicken
- <group description> setzen (Name der Gruppe)
- Interne Rufnunmern/Extensions in der <extension list>-textbox eintragen (Klartext, jew. eine Zeile pro Extension)
- Unter <Core> die Extension wählen, deren AB bei Nichtbeantwortung eines eingehenden Anrufes anspringen soll, bzw. zu der diese RG "gehört"
- <Submit>-Schaltfläche + anschliessend roten Balken am oberen Fensterrand klicken, falls Änderungen vorgenommen wurden
- <Inbound Routes> setzen ("kommende Anrufe" -> 1 je zu beantwortender/entgegenzunehmender MSN):
- <Inbound Routes> klicken
- <Add Inbound Route> klicken
- <DID Number> = MSN
- <Set Destination>/<Core> setzen (Ring Group oder Extension, an die das eingehende Gespräch (/Fax) bergeben werden soll)
- <Submit>-Schaltfläche + anschliessend roten Balken am oberen Fensterrand klicken, falls Änderungen vorgenommen wurden
- <Outbound Route> ggf. anpassen
- <Outbound Routes> klicken
- <0 9_outside> klicken
- In der <Dial Patterns> textbox kann man angegben, wie ein externes Gespräch zustande kommen soll:
- Wer eine <0> für ein externes Gespräch wählen möchte, ersetzt dort einfach die <9> durch <0>
- Ich möchte das Geraffel mit extra Ziffer für externe Gespräche nicht. Bei mir haben interne Extensions allesamt max. drei Stellen, alle längeren Eingaben sollen als abgehendes Gespräch gewertet werden, daher steht bei mir <XXX.>. Sprich, werden mehr als 3 Ziffern eingegeben, wird automatisch extern verbunden.
- <Submit>-Schaltfläche + anschliessend roten Balken am oberen Fensterrand klicken, falls Änderungen vorgenommen wurden
- Die Basis-Einstellungen sichten und, wo nötig, anpassen: <General Settings> klicken, dann:
- <Country Indications>: <Germany> auswählen
- ggf. "Number of seconds to ring phones before sending callers to voicemail" anpassen (15s ist arg kurz ...)
- ggf. die Fax-Angaben anpassen
- Zum Schluß noch die ISDN-Anbindung. Das funktioniert mit Giuseppe's (DonDisperato) Patch, für die Trixbox 1.0 aber nicht mehr. Abhilfe verschaffte eine kleine Modifikation von snaker. Der Einfachheit halber hier, abgewandelt für nur eine HFC-/ISDN-Karte:
- PROMPT:
Code:amportal stop setup
- In <System services>, den Eintrag <zaptel> deaktivieren, <OK>
- In <Network configuration> ggf. noch fehlende Konfiguration nachholen (bei mir einfach dynamisch per DHCP, eine "feste" IP vergebe ich über den Router, an dem die Trixbox hängt)
Code:reboot
- PROMPT:
- Nach dem reboot; PROMPT:
Code:cd /usr/src wget http://www.junghanns.net/downloads/bristuff-0.3.0-PRE-1q.tar.gz tar -zxvf bristuff-0.3.0-PRE-1q.tar.gz cd bristuff-0.3.0-PRE-1q ./download.sh cd zaphfc wget http://zaphfc.florz.dyndns.org/zaphfc_0.3.0-PRE-1o_florz-12.diff.gz gunzip -v zaphfc_0.3.0-PRE-1o_florz-12.diff.gz patch < zaphfc_0.3.0-PRE-1o_florz-12.diff ln -s /usr/src/kernels/2.6.9-34.EL.i686 /usr/src/linux-2.6 cd ../zaptel-1.2.10 make clean make make install cd ../libpri-1.2.3 make clean make make install cd ../zaphfc make clean make <cp zaptel.conf /etc/zaptel.conf> Meldung mit <y> bestätigen
- Jetzt muß die Datei /etc/rc.d/rc.local angepasst werden, dies geschieht am Bequemsten per WinSCP. Falls das nicht vorhanden ist, am PROMPT <nano /etc/rc.d/rc.local> eingeben
- Unterhalb der Kommentarzeilen (oder auch ganz oben für Faule) folgende Zeilen einfügen:
Code:modprobe zaptel insmod /usr/src/bristuff-0.3.0-PRE-1q/zaphfc/zaphfc.ko sleep 10 ztcfg -vv
- Jetzt die zapata.conf anpassen; Entweder per PROMPT: <nano /etc/asterisk/zapata.conf>, oder wie gehabt per WinSCP. Den Inhalt vollständig ersetzen durch diesen hier:
Code:[channels] language=de switchtype=euroisdn ;If you connect to a hicom PBX set your ISDN Numbering Plan Identifier to unknown. pridialplan=local prilocaldialplan=local signalling = bri_cpe_ptmp ;signalling = fxs_ks rxwink=300 usecallerid=yes hidecallerid=no callwaiting=yes usecallingpres=yes callwaitingcallerid=yes threewaycalling=yes transfer=yes cancallforward=yes callreturn=yes echocancel=yes echocancelwhenbridged=yes rxgain=0.0 txgain=0.0 nationalprefix = 0 internationalprefix = 00 faxdetect=incoming immediate=no ;callgroup=1 ;pickupgroup=1 group=0 context=from-pstn channel => 1-2
- Die modules.conf muß angepasst werden. Dazu wiederum per <nano /etc/asterisk/modules.conf> oder per WinSCP in der Datei die Zeile <autoload=yes> suchen und direkt danach eine neue Zeile mit diesem Inhalt anfügen:
Code:noload => app_trunkisavail.so
- Zum Schluß muß Asterisk neu kompiliert werden. PROMPT:
Code:cd /usr/src/bristuff-0.3.0-PRE-1q/asterisk-1.2.9.1 make clean make make install reboot
- Jetzt gilt es noch, der Trixbox deutsche Sprachausgabe beizubringen. Da ich mich mit bash nicht allzu gut auskenne, mache ich das per Kopieren via WinSCP. Dazu:
- In der Datei /etc/asterisk/sip.conf im Bereich [general] folgende Zeile einfügen:
Code:language=de
- Die Sprachdateien der Stadt Pforzheim [HIER] herunterladen
- Als Packer verwende ich WinRar, der kann auch gz. Darüber geht's so:
- Das Archiv in ein beliebiges Dir auf dem lokalen Rechner entpacken
- im entpackten Verzeichnis nach var/lib/asterisk/sounds wechseln
- Mit WinSCP nach /var/lib/asterisk/sounds wechseln
- Alle Verzeichnisse (de, digits, letters, phonetic) im entpackten Archiv markieren und per drag'n'drop in das WinSCP-Verzeichnis (.../sounds) kopieren
- Wenn du auf deinem Win-Rechner (ahem
) kein Packprogramm hast, das das Archiv entpacken kann, mach's über bash. PROMPT:
Code:cd /var/lib/asterisk/sounds wget http://www.stadt-pforzheim.de/asterisk/dateien/ast_prompts_de_v2_0.tar.gz tar -xvzf ast_prompts_de_v2_0.tar.gz
- Danach findet sich unter /var/lib/asterisk/sounds das Verzeichnis ast_prompts_de_v2_0. Der Rest dann wie weiter oben aufgeführt.
- In der Datei /etc/asterisk/sip.conf im Bereich [general] folgende Zeile einfügen:
- Asterisk soll die eingehenden VoiceMails auch per E-Mail versenden. Eine Anleitung dazu habe ich für AAH 2.7/2.8 gemacht, s. [HIER] - das funzt mit der Trixbox gleichermaßen.
- Abschliessend noch die Fax-Anbindung - ein eingehendes Fax wird dann in /var/spool/asterisk/fax als TIF abgelegt und per E-Mail als PDF verschickt.
- PROMPT:
Code:install-pdf
- Die Datei /var/lib/asterisk/bin/fax-process.pl editieren: dort muß die Zeile <open PDF, "tiff2pdf -w8.5 -l11 $file|";> durch Folgende ersetzt werden:
Code:open PDF, "tiff2pdf $file|";
- Die Datei /etc/asterisk/extensions.conf editieren - den gesamten context [ext-fax] ersetzen durch:
Code:[ext-fax] exten => s,1,Answer exten => s,2,Goto(in_fax,1) exten => in_fax,1,StopPlayTones exten => in_fax,2,GotoIf($${FAX_RX}" = "system?3:analog_fax,1) exten => in_fax,3,Macro(faxreceive) exten => in_fax,4,Hangup exten => analog_fax,1,GotoIf($${FAX_RX}" = "disabled?4:2) ;if fax is disabled, just hang up exten => analog_fax,2,Set(DIAL=${DB(DEVICE/${FAX_RX}/dial)}); exten => analog_fax,3,Dial(${DIAL},20,d) exten => analog_fax,4,Hangup ;exten => out_fax,1,wait(7) exten => out_fax,1,txfax(${TXFAX_NAME}|caller) exten => out_fax,2,Hangup exten => h,1,system(/var/lib/asterisk/bin/fax-process.pl --to ${EMAILADDR} --from ${FAX_RX_FROM} --subject "Fax from ${CALLERID(number)} ${CALLERID(name)}" --attachment ${CALLERID(number)}.pdf --type application/pdf --file ${FAXFILE}); exten => h,2,Hangup()
- Im Webinterface unter Setup/General Settings <Fax Machine> auf <system> stellen und die E-Mail-Adresse eingeben, an die das Fax-PDF geschickt werden soll
- Im Webinterface unter Setup/Inbound Routes die Fax-MSN erstellen. Dabei <Fax Handling> auf <FreePbx default>, <Fax Detection> auf <NV Fax> und <Pause after Answer> auf <4> einstellen.
- PROMPT:
Grüße,
Olaf
Zuletzt bearbeitet: