Mój system faksowy rozrasta się, aktualnie obsługuje 5 numerów a w planach są kolejne dwa. Jak na razie w dwa miesiące odebrał ponad 1500 faksów i działa bez zarzutu.
Dokładając modemy oczywiście modyfikacji uległ plik z konfiguracjami FaxDispatch i skrypty konstruujące maile z faksami w formacie png.
Skrypt z tego wpisu teraz jest w osobnych plikach, każdy dla innego numeru. Każdy z tych skryptów wykorzystuje też osobny katalog tymczasowy (/tmp/faxX) aby w przypadku odbierania faksów jednocześnie pliki z obrazkami nie pomieszały się, lub nie zostały nadpisane. Eksportowanie zmiennych $SENDER i $FILE jest także uzupełnione o kolejny numer aby nie było niejasności i błędów w dostarczeniu.
Teraz najciekawsza zmiana – instrukcja CASE w pliku FaxDispatch.
FILETYPE=pdf;
SENDTO=fax_pdf@***.pl;
TEMPLATE=pl;
case "$DEVICE" in
tty00) echo $FILE > /tmp/FILE; echo $SENDER > /tmp/SENDER; /tmp/convertmime.sh; SENDTO=fax_pdf@***.pl;;
ttyU0) echo $FILE > /tmp/FILE2; echo $SENDER > /tmp/SENDER2; /tmp/convertmime2.sh; SENDTO=;;
ttyU1) echo $FILE > /tmp/FILE3; echo $SENDER > /tmp/SENDER3; /tmp/convertmime3.sh; SENDTO=;;
ttyU2) echo $FILE > /tmp/FILE4; echo $SENDER > /tmp/SENDER4; /tmp/convertmime4.sh; SENDTO=;;
ttyU3) echo $FILE > /tmp/FILE5; echo $SENDER > /tmp/SENDER5; /tmp/convertmime5.sh; SENDTO=;;
esac
Pierwsze 3 linijki to standardowa konfiguracja jeśli nie zachodzi żaden CASE, co właściwie nie powinno się zdarzyć, ale w razie jakby co (np nieoczekiwana zmiana nazwy portu) fax zostanie dostarczony na mail fax_pdf@**.pl jako pdf.
Następnie CASE działający na zmiennej $DEVICE, która odpowiada portowi RS232 w NetBSD. Każdy CASE wyrzuca nazwe pliku oraz nadawce do właściwego pliku, z którego później korzysta convertmimeX.sh do skonstruowania maila. Dodatkowo modem na tty00 oprócz dostarczenia faksu w formie obrazka wysyła ten sam faks w formacie pdf.
System działa bardzo stabilnie, duże znaczenie ma zapewne jakość modemów oraz użytych przejściówek USB-RS232. W moim przypadku kable USB wpięte obok siebie, blokowały losowo któryś modem. Kiedy wpięte są co drugi port USB wolny – wszystko działa bez zakłóceń.
Na razie półka modemowa wygląda jak na zdjęciu poniżej, ale kiedy dojdą dodatkowe dwa modemy trzeba będzie pomyśleć o ładniejszej organizacji :)
© odwiedź stronę http://maciejewski.org po więcej fajnych postów!