Fax und Asterisk

22 April 2008

Fax und TK-Server mit Hylafax und Asterisk
Achtung das Howto ist eventuell veraltet!
Einleitung

Faxgeräte sind groß und Fax-Mailgateways der Email Anbieter haben meist kryptische Nummern ich habe einen Server der 24/7 läuft also warum ihn nicht dazu bringen das alles selber zu machen. Und wenn man schon mal dran sitzt wie wärs mit nem AB der einem die anrufe dann per Mail zusendet. Das ganz in einen Bereits laufenden Linux-Servre (fedora coer 2) zu integriern ist möglich und wird hier gezeigt. Asterisk ist für nen AB natürlich etwas zu Mächtig aber ich gehe noch weiter indem ich meine Telefone mittels einer weiteren ISDN Karte ebenfalls an den Rechner anschließe. Damit eröffnen sich eine Menge Möglichkeiten. Z.b. Voip mit dem normalen Telefon führen man merkt also keinen unterschied ob der Anrufer via Internet oder Telefonanschluss kommt. Auch kann man recht einfach mittels einiger regeln Telefonkosten sparen wenn man Statt des “Normalen” Anschlusses eine Voip Anbieter nutzt. Dazu werde ich am Ende nochmal zurück kommen.

An dieser Stelle auch noch einmal Dank an die Netten leute im ip-Fone-forum.de und fedoraforum.de ,die zur Fehlerkorrektur in diesem Howto beigetragen haben.

Was Braucht man?

Man Braucht ein laufendes Linuxsystem (und denken Sie daran ich AB und Fax sollte ständig laufen sonst könnten sie was verpassen) mit Internetzugang und einer (für später eine zweite) ISDN Karte die 1. Karte ist bei mir eine AVM Fritzcard PCI 2 hat den vorteil: capi 2.0 fähig und recht verbreitet (also bei ebay günstig zu haben) außerdem gibt’s Treiber. Ich habe das ganze in einen bereits konfigurierten linuxserver gesezt, was heisst ich behandle hier nicht wie sie den Mailserver einrichten oder Linux Installieren! Ich arbeite auch nicht mehr ausschließlich mit RPM Packeten also es wird auch was selbst übersetz (bei Asterisk nicht anders möglich auch für capi und hylafax läuft das recht gut).

Software:

Nachdem die ISDN karte eingebaut wurde gehts los! Ich habe viel gelesen das die FedoraKerne Probleme machen mit den capianwendungen und das man neu kompilieren müsse, wer will kann das gerne machen ich Persönlich habe eine nette yum conf und bei ( http-apt.physik.fu-berlin.de-fedora-2-en-i386-at-stable-) gibts zu jedem Kernel das passende fcpci Modul (kernel-module-fcpci-Kernel.rhfc2.atsmpi586) also das läuft ohne Probleme auch selber machen geht (cfpci treiber)

was noch fehlt

capi4kutils (einfach die neuste Version ziehen)

capi4hylafax (hier ist die capi4hylafax meist neuer als oben)

hylafax (auch einfach das neue ding ziehen)

bristuff

asterisk (ziehn was man braucht(

chan_capi (hier unter download chan_capi laden sonst kennt asterisk kein capi)

Installation

Capi4k

So nun kommt gleich zum beginn ein ziemlicher Hammer da nich ganz fehlerfrei. zunächst hatten wir uns den fcpitreiber besorgt und installiert (wie auch immer) nun habe wir ja noch ISDN4K (ist standart bei fedora) zum testen geben wir ein tail -f /var/log/messages und Rufen anschließend einfach an wenn nichts passiert nachsehen ob isdn gestartet und das modul fcpci gestartet ist (lsmod und service isdn staus) wennn nicht starten (modprobe fcpci und service isdn start) und dabei wird sich dann in den messages was tun, falls nicht mal mit lspci nachsehen ob die karte überhaupt erkannt wurde.

Soweit so gut nun isdn4k löschen mit rpm -e isdn ich habe alle Archive mit tar xfvz [ARCHIV].tar.gz entpackt und die Versionsnummern entfernt. gehen ins Verzeichniscapi4k-utils nun folgt:
make config
make
make install

so bei mir war nun schicht da capifax mit Fehlermeldung abbrach es geisterte im netz auch ein Patch rum aber das half auch nichts nehmt euch die Datei capi4k-utils/capifax/capi.c vor nachdem ich sie gesichert habt!
ersetzt zeile 84 -90 durch (nen tip macher Editor beginnt bei1 der andre bei 0 zu zählen also aufpassen):

ALERT_REQ (CMSG, Appl_Id, 0, CONNECT_IND_PLCI(CMSG),
NULL, NULL, NULL, NULL);
/* inform the user application */
SetState(Connection, D_ConnectPending);
IncomingCall(Connection, GetCallingPartyNumber (Connection));
/* signal incoming call to the user */
return;
danach kommt : case CAPI_CONNECT_ACTIVE:

sollte make immer noch nicht laufen ergänzt in Zeile 85 noch ein NULL, falls das immer noch nicht hilft googeln vielleicht weiter.

Hylafax

ins Hylafax Verzeichnis wechseln und dann:
sehen wir nach ob
# libtiff – get it at http://www.libtiff.org oder libtiff-3.5.7-20.2.i386.rpm und libtiff-devel-3.5.7-20.2.i386.rpm
# Ghostscript – get it at http://www.cs.wisc.edu/~ghost/ oder ghostscript-7.07-25.i386.rpm
# zlib – usually available with libtiff or Ghostscript oder zlib-1.2.1.1-2.1.i386.rpm
# awk, gawk, mawk, or nawk – get mawk at ftp://ftp.whidbey.net/pub/brennan/ oder gawk-3.1.3-7.i386.rpm
# sendmail or compatible SMTP – einen MTA hat eigentlich jeder installiert ich bevorzuge Postfix
# metamail or uuencode oder metamail-2.7-29.9.i386.rpm
Installiert ist yum list kann einem auch hier weiterhelfen oder man bemüht rpm.pbone.net, welches die passenden packete ausspuckt und und man diese dann installieren kann.
Hierzu noch ein Kommentar Alles außer Metamail ist eigentlich bei Fedora dabei und lassen sich mittels yum oder apt-get ohne Probleme installieren und updaten auch metamail sollte eigentlich bei einer umfangreichen Repo-Liste auf diese einfache art und weise dabei sein wenn nicht mal bei Fedora Legacy nachsehen (danke an misc)

dann:
./configure
make
make install

jetzt starten wir noch
faxsetup

faxaddmodem brauch wir nicht denn wir nutzten ja capi4k

capi4hylafx

wir gehen zu capi4hylafax dann:

./configure
make
./install

nun sind wir eigentlich schon fertig aber noch ein paar hinweise. ich habe mir zwei initscripte (quick n dirty) geschrieben:

/etc/rc.d/init.d/capitreiber :

#!/bin/sh
# description: capitreiber für hylafax und asterisk
# chkconfig: 2345 99 00

case “$1″ in
‘start’)
echo capiinit start…
capiinit start
touch /var/lock/subsys/capitreiber
;;
‘stop’)
echo capiinit stop…
capiinit stop
rm -f /var/lock/subsys/capitreiber
;;
*)
echo “Usage: $0 { start | stop }”
;;
esac
exit 0

/etc/rc.d/init.d/capifax :

#!/bin/sh
# description: capitreiber für hylafax
# chkconfig: 2345 99 00

case “$1″ in
‘start’)
echo “Starting capifax receive…”
/usr/local/bin/c2faxrecv &
touch /var/lock/subsys/capifax
;;
‘stop’)
echo “Shutting down capifax receive…”
killall -15 c2faxrecv
rm -f /var/lock/subsys/capifax
;;
*)
echo “Usage: $0 { start | stop }”
;;
esac
exit 0
Die bringt man noch bei den Runleveln in die richtige Reihenfolge (start erst capitreiber dann capifax und bein stoppen ungekehrt)

ein weiterer Stolperstein sind die Benutzer rechte von capi20 (/dev/capi20 meist) darauf muss für uucp der Zugriff gewährt sein

zu letzt die Faxe gehen ein aber nix Mail zum einen /var/spool/hylafax/faxrcvd muss ausführbar sein und uucp muss Zugriffsrechte haben

zum anderen für fax und faxmaster muss ein alias eingerichtet sein!

Mail2Fax Gateway

Das Fax2Mail Gateway ist eigentlich konfiguriert Einstellungen können in /var/spool/hylafax/etc/FaxDispatch vorgenommen werden manchmal muss dort der Empfäger und in welchem Format das fax angehängt wird noch konfiguriert werden.

Hier die Anleitung für ein Mail Fax Gateway mit Postfix vom typ user@faxnummer.fax (für andere Varianten oder Mailserver siehe hylafax/faxmail/mailfax.sh-server)

cp /cache/halafax/faxmail/mailfax.sh-postfix /usr/bin/mailfax

eventuell muss in Zeile 137 der Pfad noch korrigiert werden

dann fügen wir in die /etc/postfix/master.cf :

fax unix – n n – 1 pipe
# flags= user=fax argv=/usr/bin/mailfax ${user} ${recipient} ${sender} postmap /etc/postfix/transport

in die /etc/postfix/transport :

.fax fax:localhost

in die /etc/postfix/main.cf wir eingefügt:
transport_maps = hash:/etc/postfix/transport
fax_destination_recipient_limit = 1

und führen anschliessend aus:

postmap /etc/postfix/transport

postfix reload

Fehlerbeseitugung

Überprüfen der zugriffsrechte von:

ls -l /dev/capi20
crw-rw-rw- 1 root dialout 68, 0 4. Nov 16:17 /dev/capi20

ls -l /var/spool/hylafax/bin/faxrcvd
-rwxrwxrwx 1 root root 9027 3. Nov 20:58 /var/spool/hylafax/bin/faxrcvd

Da wir hier mit fedora arbeiten haben wir ein paar probleme mit dem kernel aber die können wir beheben:

mv /usr/local/bin/c2faxsend /usr/local/bin/c2faxsend.wrapped

vi /usr/local/bin/c2faxsend

#!/bin/bash
LD_ASSUME_KERNEL=2.4.1 /usr/local/bin/c2faxsend.wrapped “$@”

chmod 755 c2faxsend

Testen

mit lsmod |grep capi sollte ungefär folgendes erscheinen
capi 13441 6
capifs 4041 2 capi
kernelcapi 39393 2 fcpci,capi

capiinit show bringt folgende ausgabe:
driver firmware proto io irq mem cardnr options
fcpci – - – - – -

2faxrecv -v startet den fax service und zeigt an was vorgeht ambesten danach ein fach zum server schicken
Started in Hylafax mode and waiting on incoming calls.
SESSION BEGIN 00000060 +49.30.26XXXXXX
Incoming analog call on controller 1 from 3026XXXXXX to 26XXXXX
Connection established.
StationID = +49 30 26XXXXXX
BaudRate = 14400
Flags = HighRes
Write fax in path /var/spool/hylafax to file recvq/fax00013.tif.
Page 1 was received. – Last Page!
Fax received and calling ‘/var/spool/hylafax/bin/faxrcvd “recvq/fax00013.tif” “faxCAPI” “00000060″ “” “+49 30 26XXXXXX” “” “26XXXXXX”‘.
Connection is droped with reason 0×3400 (No additional information).
SESSION END

faxstat bei gestartetem server:
HylaFAX scheduler on server.localdomain: Running
Modem faxCAPI (+49.30.26557583): Running and idle

c2faxsend -f G3 -C /var/spool/hylafax/etc/config.faxCAPI -v -d 26XXXXXX /cache/capi4hylafax/fritz_pic.tif
Try to connect to fax number 2XXXXXX in G3 mode on controller 1.
Dial and starting transfer of G3-File /cache/capi4hylafax-01.02.02/fritz_pic.tif with fine resolution.
Connection established.
StationID = +49 30 26XXXXXX
BaudRate = 14400
Flags = HighRes
Fax file completely transfered to CAPI.
Connection dropped with Reason 0×3400 (No additional information).
um das Mail2Fax Gateway zu testen am besten in zwei konsolen
in der 1.:

tail -f /var/log/maillog

in der 2.:

mail root@26XXXXXX.fax
Subject: test
wir testen das Mail2Fax Gatewax
.
Cc:

dann erscheint im 1. Fenster:

5 10:23:36 server postfix/pickup[2151]: 759B1FE9B: uid=0 from=<root>
Nov 5 10:23:36 server postfix/cleanup[20299]: 759B1FE9B: message-id=<20041105092336.759B1FE9B@server.laible.no-ip.com>
Nov 5 10:23:36 server postfix/nqmgr[2152]: 759B1FE9B: from=<root@laible.no-ip.com>, size=330, nrcpt=2 (queue active)
Nov 5 10:23:37 server postfix/pipe[20302]: 759B1FE9B: to=<pl@26XXXXXX.fax>, relay=fax, delay=1, status=sent (localhost)
Nov 5 10:23:37 server postfix/cleanup[20299]: EDF9EFEA2: message-id=<20041105092337.EDF9EFEA2@server.laible.no-ip.com>
Nov 5 10:23:38 server postfix/nqmgr[2152]: EDF9EFEA2: from=<>, size=2200, nrcpt=1 (queue active)
Nov 5 10:23:40 server postfix/local[20312]: EDF9EFEA2: to=<pl@laible.no-ip.com>, orig_to=<root@laible.no-ip.com>, relay=local, delay=3, status=sent (“|/usr/bin/procmail /home/$USER/.procmailrc”)

Damit haben wir unseren Faxserver erfolgreich aufgesetzt

Asterisk

Wenn man Asterisk als Viocbox nutzten will braucht man nichts weiter will man ihn als TK-Anlage mit Voip einsetzten empfielt es sich eine wietere ISDN Karte einzubauen es empfielt sich eine HFC karte da diese den NT modus unterstützten und man die alten isdn gräte weiternutzen kann.

zunächst zur installation:

Da fedora den kernel reichlich patcht empfele ich sich das file kernel-sourcecode-nummer.rpm (ich habe mit dem 2.6.8-1.521 er Kernel gearbeitet mit der core 3 versopn hatte ich ein wenig probleme. Man legt anschliessen eine link:
ln -s /usr/src//linux-nummer /usr/src/linux-2.6

kurz nach sehen obs geklappt hat:
ls -al /usr/src/linux-2.6

NUn wird etwas gebastelt: unter /boot findet sich nicht nur der Kernel, sondern in der Regel auch die Konfigurationsdatei, mit der der Kernel erstellt wurde. Ueblicherweise hat die Datei config im Namen, dazu eine Versionsnummer passend zum jeweiligen Kernel. Diese Datei wird nach /usr/src/linux-2.6, kopiert und zwar so, dass sie dort .config heisst (der Punkt vor config ist dabei wichtig).
Sicherheitshalber lassen wir den Kernel compilieren , denn dabei werden Dateien erzeugt, die für das bauen von zaphfc benötigt werden. Dazu gen wir zu den Kernel-sourcen:
cd /usr/src/linux-2.6

nun editieren wir das Makefile und war nehmen wir aus EXTRAVERSION = nummer das custom raus(4.Zeile).
(beim .6.8-1.521 er Kernel EXTRAVERSION = -1.521)
und gibst anschliessend ein:
make all
– jetzt brauchst Du etwas Geduld, denn das kann dauern.
in der Zwischen zeit besorgen wir uns bei junghanns.net/ hier wurde mit chan_capi 0.3.5 (für die Fritzcard) und bristuff-0.2.0-rc2a gearbeitet. wir entpacken beide files am besten nach /usr/src/filename und dann gehts los:
wir gehen zu bristuff und geben ein:
./install.sh
das dauert nun ne weile denn erläd sich asterisk und zapteltreiber patcht diese und installiert sie.danach am besten im Asterisk Verzeichnis (unterpfad von bristuff)mit
make samples
make progdocs

conf-files und die Documentation erstellen.
nun ins chan_capi Verzeichnis und:
make
make install
make config

Als nächstes bereiten wir unser telefon netz vor.Dafür benötingen wir einen zusätzlichen NTBA (es geht auch mit diversen tricks aber danach ist zu googlen) und einISDN-cross kabel, welches schnell zu bewerkstelligen ist. ISDN nutz nur die mittleren 4 der 8 adern eines kables. (egal ob ethernet oder isdn Kabel). Wir schneiden also ein isdn Kabel durch und verbinden 3 mit 4 , 5mit 6 und umgekehrt sprich wir verbinden die inneren mit der jeweiligen äusseren Ader. mit diesem Crosskabel verbinden wir unsere HFC-karte mit dem NTBA und in die 2. Buchse des NTBA hängen wir unser Telefon. Falls es keine eigene Stromversorgung hat Nutzen wir die Stromversorgung des NTBA.

Nun Müssen wir Asterisk nur noch Konfigurieren.
die conf-files liegen unter /etc/asterisk ich persönlich habe mir da auch die zapltel.conf gelegt

dazu muss in die /etc/asterisk/capi.conf:

[general]
nationalprefix=0
internationalprefix=00
rxgain=0.8
txgain=0.8

[interfaces]

msn=MSNNUMMER ;die mummer auf die dein Asterisk hören soll
incomingmsn=MSNNUMMER

controller=1
softdtmf=1
accountcode=
context=telefon
;echosquelch=1
;echocancel=yes
;echotail=64
;callgroup=1
;deflect=12345678
devices=2
outgoingmsn=MSNNUMME
R

/etc/asterisk/modules.conf hier fügen wir ein
load => chan_capi.so

und unter [global]
chan_capi.so=yes

/etc/asterisk/zapata.conf:

[channels]
switchtype=euroisdn
signalling=bri_net_ptmp
pridialplan=local
echocancel=yes
immediate=no
overlapdial=yes
group=1
context=default
channel=>1-2

/etc/asterisk/zaptel.conf:

# hfc-s pci a span definition
# most of the values should be bogus because we are not really zaptel
loadzone=nl
defaultzone=nl

span=1,1,3,ccs,ami
bchan=1-2
dchan=3

dann ln /etc/zaptel.conf /etc/asterisk/zaptel.conf dann hat man alles in einem Pfad

Hier ein beispiel für den Voipanbieter SipSnip
/etc/asterisk/sip.conf

[general]
port = 5060
bindaddr = 0.0.0.0
externip = dyndns
Localnet = 192.168.0.0/255.255.0.0
srvlookup = yes
context = default
disallow=all
allow=gsm
register => username:passwort@sipsnip.com/sipsnip
canreinvite=no
tos=0×18
insecure=very
nat=no
dtmfmode=info

[sipsnip]
type=friend
username=username
secret=passwort
host=sipsnip.com
fromuser=username
fromdomain=sipsnip.com
context=default
canreinvite=no
qualify=yes
disallow=all
allow=all
insecure=very
nat=no
dtmfmode=info
tos=0×18

Hier ein beispiel für den Voipanbieter SipSnip
/etc/extensions.conf:

[general]

static=yes

writeprotect=no
[globals]
CONSOLE=Console/dsp ; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
IAXINFO=guest ; IAXtel username/password
;IAXINFO=myuser:mypass
TRUNK=Zap/g2 ; Trunk interface
TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
;TRUNK=IAX2/user:pass@provider

[default]
include => calls
include => telefon

[telefon]
exten => MSN,1,Answer
exten => MSN,2,SetLanguage(de)
exten => MSN,3,Dial(Zap/2/10,20,tT)
exten => MSN,4,Voicemail(u26557717)
exten => MSN,5,Hangup


[calls]
exten => sipsnip,1,Answer
exten => sipsnip,2,SetLanguage(de)
exten => sipsnip,3,Dial(Zap/2/10,60,tT)
exten => sipsnip,4,Voicemail(u26557717)
exten => sipsnip,5,Hangup

exten => _8.,1,Dial(SIP/${EXTEN:1}@sipsnip,60,tT)
exten => _8.,2,Congestion
exten => _8.,3,Busy
exten => _8.,4,Hangup

exten => _1.,1,Dial(CAPI/MSN:${EXTEN:1},60,r)
exten => _1.,2,Congestion
exten => _1.,3,Busy
exten => _1.,4,Hangup

Bei der Vorwahl der 1 gehts über die isdn leitung und bei der 8 als Vorwahl gehts über sipsnip wer generel über sip geht sollte noch:

exten => 110,1,Dial(CAPI/@30:110,60,Ttr)
exten => 112,1,Dial(CAPI/@30:112,60,Ttr)

einfügen damit er für die Notruf nummern über isdn geht.

zu guter letzt /etc/asterisk/voicemail.conf

[general]
; Default formats for writing Voicemail
;format=g723sf|wav49|wav
format=wav49|gsm|wav
serveremail=asterisk
;serveremail=asterisk@linux-support.net
attach=yes
;maxmessage=180
;minmessage=3
;maxgreet=60
skipms=3000
maxsilence=10
maxlogins=3

[default]
;1234 => 4242,Example Mailbox,root@localhost

26557717 => 4242,My Mailbox,user@server

nun können wir anfange unseren Server anzufahren:

dazu nach /usr/src/bristuff-0.2.0-rc2a/zaphfc/
make loadNT
dann kommt:

make -C /usr/src/linux-2.6 SUBDIRS=/usr/src/bristuff-0.2.0-rc2a/zaphfc modules
make[1]: Entering directory `/usr/src/linux-2.6.8-1.521′
Building modules, stage 2.
MODPOST
*** Warning: “zt_register” [/usr/src/bristuff-0.2.0-rc2a/zaphfc/zaphfc.ko] undefined!
*** Warning: “zt_transmit” [/usr/src/bristuff-0.2.0-rc2a/zaphfc/zaphfc.ko] undefined!
*** Warning: “zt_receive” [/usr/src/bristuff-0.2.0-rc2a/zaphfc/zaphfc.ko] undefined!
*** Warning: “zt_ec_chunk” [/usr/src/bristuff-0.2.0-rc2a/zaphfc/zaphfc.ko] undefined!
*** Warning: “zt_unregister” [/usr/src/bristuff-0.2.0-rc2a/zaphfc/zaphfc.ko] undefined!
make[1]: Leaving directory `/usr/src/linux-2.6.8-1.521′
modprobe zaptel
insmod ./zaphfc.ko modes=1
ztcfg -v

Zaptel Configuration
======================

SPAN 1: CCS/ AMI Build-out: 399-533 feet (DSX-1)

3 channels configured.
ansliessend:

asterisk -vvvvc

Atersik erzählt einem nu ne ganze menge aber unser system sollte laufen und wir geben ider console von asterisk ein:

sip show registry

dann solle soetwas folgen:

Host Username Refresh State
sipsnip.com:5060 username105 Registere
d

zap show channels

dann solle soetwas folgen:

Chan Extension Context Language MusicOnHold
pseudo default
1 default
2 default

nun kann man in ruhe probieren (alle mögliche nummer anrufen und angerufen werden)

zum automatischen starten hier noch ein start sop script:

#!/bin/sh
# chkconfig: 2345 99 00
# rc script for Asterisk and hfc

case “$1″ in
start|–start)
cd /usr/src/bristuff-0.2.0-rc2a/zaphfc/
make loadNT
export TERM=”xterm-color”
sleep 2
/usr/sbin/asterisk
touch /var/lock/subsys/astreisk
;;

stop|–stop)

asterisk -rx ‘stop now’
sleep 2
cd /usr/src/bristuff-0.2.0-rc2a/zaphfc/
make unload
rm -f /var/lock/subsys/astreisk
;;

restart|–restart)
sh $0 stop
sleep 2 # some phones will release tei when layer 1 is down
sh $0 start
;;

debug)

/usr/src/bristuff-0.2.0-rc2a/zaphfc/
make loadNT-debug

;;

test)
/usr/src/bristuff-0.2.0-rc2a/zaphfc/
make test

;;

help|–help)
echo “Usage: $0 {start|stop|restart:test:debug|help}”
exit 0
;;

*)
echo “Usage: $0 {start|stop|restart:test:debug|help}”
exit 2
;;

esac

exit 0

bei wem make unload den Rechern lahm legt hier ein patch:

zaphfc.cleanexit.patch
wenn man die conf files geändert hat empfielt es sich aber auch mit laufendem script sich mit

asterisk -r

mit asterisk zu verbinden und dann mit reload die confs zu aktalisieren mit exit verlässt man den spass wieder

zu guter letzt noch zwei patches die eventuell nützlich sind:

chan_zap.echocancel.v2.patch
Reduziert das Echo hat bei mir ganz gut geklappt.

asterisk.non-root.patch
Dieses Patch ist klasse damit kann man Asterik, wie der name schon sagt, auch einen anderen user fahren lassen.

Das ist nochlängst nicht alles was Asterisk so kann doch würde es diesen rahmen hier sprengen also vies spass mit eurem server!!

P.S.: es ist eine neure bristuff version raus: bristuff-0.2.0-rc2b.tar.gz ebenfalls bei junghanns.net zu kriegen. werb bereits sein system laufen hat:

1. /etc/asterisk sichern

2. bristuff-0.2.0-rc2b.tar.gz laden und nach /usr/src kopieren und mit tar xfvz bristuff-0.2.0-rc2b.tar.gz entpacken

3. im /usr/src/bristuff-0.2.0-rc2b verzeichnis ./download.sh ausführen

4. die drei patch-files nach /usr/src/bristuff-0.2.0-rc2b kopieren und
cd bristuff-0.2.0-rc2b
patchen:
patch zaphfc/zaphfc.c zaphfc.cleanexit.patch.txt
patch asterisk-1.0.2/channels/chan_zap.c chan_zap.echocancel.v2.patch.txt
patch asterisk-1.0.2/Makefile asterisk.non-root.patch.txt
hier muss eventuell noch asterisk-1.0.2/contrib/scripts/safe_asterisk angegeben werden

5. ./compile.sh

6. im startscript /usr/src/bristuff-0.2.0-rc2a durch /usr/src/bristuff-0.2.0-rc2b ersetzen

7. in /etc/asterisk die conffiles einspielen oder editieren

8. Starten und vertig!