Konfiguration von HylaFAX
Auch wenn heute der Einsatz von Fax-Geräten veraltet erscheinen mag, so ist er immer noch fester Bestandteil der heutigen Bürokommunikation und mß dementsprechend auch bei neuen Telefonanlagen berücksichtigt werden. Wenn eine Telefonanlage selber Faxe nicht ausreichend unterstützt (wie dies bei Asterisk der Fall ist), so sind Alternativen gefragt. Eine gute Lösung dieses Problems bei Asterisk besteht darin, via des virtuellen Modems iaxmodem den robusten Fax-Server HylaFAX anzubinden.
Asterisk
Die Kommunikation zwischen Asterisk und HylaFAX wird durch das virtuelle Modem iaxmodem hergestellt, das sich als IAX-Endgerät an Asterisk anmeldet. Endsprechend sind die folgenden Einträge je Modem in der /etc/asterisk/iax.conf vorzunehmen.
[general]
bindport=4569
bindaddr=127.0.0.1
iaxcompat=yes
minregexpire = 40
maxregexpire = 3600
disallow=all
allow=alaw
autokill=yes
[iaxmodem0]
type=friend
secret=Passwort
port=4570
host=dynamic
context=fax-out
requirecalltoken=no
…
Da jedes Modem nur jeweils ein Fax zur Zeit abarbeiten kann, müssen für mehrere simultane Faxe eine entsprechende Anzahl an virtuellen Modems (mit unterschiedlichen Ports) installiert werden. In der /etc/asterisk/extensions.conf werden die Anrufe an die Modems mit den jeweiligen Rufnummern weitergeleitet, um davon abhängig die Faxe zu weiterzuleiten.
[fax-in]
exten=>_X.,1,NoOp(Fax Kontext entered)
exten=>_X.,n,Dial(IAX2/iaxmodem0/${EXTEN},15,r)
exten=>_X.,n,Dial(IAX2/iaxmodem1/${EXTEN},15,r)
exten=>_X.,n,Congestion()
exten=>_X.,n,Hangup()
[fax-out]
exten => _X.,1,Set(CALLERID(num)=XXXXXX)
exten => _X.,n,SetTransferCapability(3K1AUDIO)
exten => _X.,n,Dial(WOOMERA/g1/${EXTEN})
iaxmodem
Die entsprechenden Modems werden durch entsprechende Files in /etc/iaxmodem/ konfiguriert. Das File für das erste Modem sollte ttyIAX0 heißen und folgendes beinhalten:
device /dev/ttyIAX0
owner uucp:uucp
mode 660
port 4570
refresh 50
server 127.0.0.1
peername iaxmodem0
secret Passwort
codec alaw
Die angegebenen Daten (insb. peername, secret und port) müssen mit denen aus der iax.conf übereinstimmen. Damit iaxmodem (und HylaFAX) ordentlich beim Booten gestartet wird, sollte die /etc/inittab um ein paar Zeilen ergänzt werden.
ia0:23:respawn:/usr/bin/iaxmodem ttyIAX0
ia1:23:respawn:/usr/bin/iaxmodem ttyIAX1
…
hy0:23:respawn:/usr/sbin/faxgetty ttyIAX0
hy1:23:respawn:/usr/sbin/faxgetty ttyIAX1
…
/etc/init.d/hylafax restart
HylaFAX
HylaFAX kann nun die — von iaxmodem bereitgestellten —
(virtuellen) seriellen Modems mit dem Namen ttyIAX0 bzw.
ttyIAX1 ansprechen.
Empfangene Faxe werden automatisch per E-Mail verschickt, sofern die
Variable SENDTO in der Datei /var/spool/hylafax/etc/FaxDispatch
entsprechend gesetzt wird.
Für eine individuelle Zustellung kann die Variable $CALLID4 verwendet werden,
welche die an iaxmodem übermittelte Rufnummer beinhaltet.
Damit lässt sich bspw. die zu einer Rufnummer gehörende E-Mail aus einem Text-File
emails.txt herauslesen:
LANG=de_DE
DEST_EMAIL=$(/bin/grep $CALLID4 /etc/hylafax/emails.txt | /bin/sed -e 's/^.* \(.*\)$/\1/g')
if [ $DEST_EMAIL == "NIL" ];
then
SENDTO=defaultFax@voiscout.de
FILETYPE=pdf
else
SENDTO=$DEST_EMAIL
FILETYPE=pdf
fi
82242457 ifax@voiscout.de
85105679 ifax@voiscout.com
ISDN-Karte
Wird Asterisk an einem Anlagenanschluss mit unterschiedlich langen Rufnummern betrieben, so werden möglicherweise analog anwählende Faxe nicht empfangen, weil die vollständige Rufnummer nicht erkannt wird. Dieses Problem kann (bei Sangoma-Karten) gelöst werden, indem man (an geeigneter Stelle) in der /etc/wanpipe/smg_bri.conf die Nachwahl von Ziffern aktiviert:
;num_digits=8
in_calls_behaviour=TRANSPARENT_OVERLAP_RCV
in_calls_behaviour=VOICE_ALERT_RQ
exten => _XXXXXZ,1,NoOp(Es fehlen 2 Stellen)
exten => _XXXXXZ,n,Wait(25)
exten => _XXXXXZX,1,NoOp(Es fehlt 1 Stelle)
exten => _XXXXXZX,n,Wait(25)
exten => _XXXXXZXX,1,NoOp(Rufnummer komplett)
Sofern die Zuordnung als Fax über die angewählte Nummer erfolgt, sollte die Fax-Erkennung auf der ISDN-Karte ausgeschaltet sein. Diese bewirkt nämlich lediglich, dass bei einem eingehenden Fax zu der Extension fax gesprungen wird, welches aber aufgrund der seperaten Rufnummer unerwünscht ist.


