当方では留守録音声や受信FAXをメールに添付してサーバー上の自分のアカウントに転送していたが、なるほど、受信データフォルダをsambaで共有するというのも便利で良さそう。
で、sambaが出てきたのでmgetty+sendfaxとsambaの連携を他に探してたら、[url=http://blog.kamata-net.com/archives/000062.html]mgetty+sendfaxをsamba上でプ…。
なるほど、printfax.pl、faxlpq、faxlprmというperlスクリプトでsambaにプリンタとして認識させて、respondというWindowsアプリで印刷するときにFAX番号などを入力するわけだ。
サーバーでlpdプロトコルをオープンにしている場合はfprintfaxをフィルタとしてプリンタを登録しておけば、Windowsからlpr接続で印刷することも可能らしいが、今回はsambaプリンタとしての登録を試すことにする。
まずはサーバ側の設定。
[url=http://www.boerde.de/~horstf/]ここ[/url]からprintfax.pl、faxlpq、faxlprmのスクリプトをダウンロードし、サーバにコピー。コピー先は/usr/binとした。
コピー後はchmod +x printfax.pl faxlpq faxlprmを忘れずに。
次のsmb.confの設定では以下をプリンタ定義付近に追加した。
[fax]
comment = Fax-Modem on Linux Server
printer name = fax
printable = yes
public = yes
guest ok = yes
path = /var/spool/fax
print command = ( /usr/bin/printfax.pl %I %s %U %m; rm %s ) &
lpq command = /usr/bin/faxlpq
lprm command = /usr/bin/faxlprm %j
smb.conf変更後sambaをリスタートさせ、Windowからサーバーを見たときに、
fax Fax-Modem on Linux Server
が見えればここまではOK。
この見えているfaxにプリンタドライバを登録するが、プリンタとしてはPostScriptプリンタで登録。
参照したサイトではApple LaserWriter V23.0を選択していた。
次にWindows側の設定。
ダウンロードしてきたrespondを適当なフォルダに解凍するとrespond.exeとconfig.exe、sourceフォルダが現れる。
このrespond.exeを起動すると常駐する。特に起動画面などは表示されないがタスクトレイで確認できる。タスクトレイのrespondのアイコンで右クリックで電話帳などが使える。
(現時点での最新バージョン1.6.0betaではrespond.exeの設定が変更出来るconfig.exeが付属しているが、重要な情報も変更してしまう可能性があるので使用に関しては自己責任で)
respond.exeが常駐している状態で、印刷先として上記で設定したfaxを選択して、印刷を実行するとrespondのQuery form画面が表示されるので、ここでFAX番号などを記入してOKを押すと、sambaサーバーに印刷データが送られ、サーバー上では印刷データがFAXデータに変換されてFAXスプールに保存される。
実際のFAX送信はFAXスプールに保存されたデータをfaxrunqコマンドが相手に送信する。
したがって自動的に送信する場合にはfaxrungコマンド定期的に呼び出す必要がある。5分おきに送信する場合は、
*/5 * * * * /usr/bin/faxrunq
をcrontabに追加する。
補足:
・FAX送信をrootでしか行っていなかったので、sambaで接続するユーザをfax.allowに登録する必要があった。