「ScanSnap もどき」を作ってみた

ScanSnap を買うと(ちょっと)高いので、自分で ScanSnap もどきを作ってみました。職場にある、メール送信機能のあるスキャナを使っています。仕組は、以下の通り。

  1. スキャナで取り込んだら、Gmail 上の特定アドレスにメールで送信します。
  2. おうちサーバー上で定期的に fetchmail を動かし、Gmail から POP でメールを取得します。
  3. .forward を使って、取得メールを ripmime というツールに送り込みます。
  4. ripmime は、メールに添付された PDF ファイルを取り出し、それをサーバー上のフォルダに保存します。フォルダには、日付、時間、サブジェクトが付記されているので、フォルダ名を見ればおおよその内容は分かります。

スキャンした書類は、自動的に共有フォルダ上に整理されている訳です。いいでしょ? (自画自賛

fetchmail の設定

poll pop.gmail.com protocol pop3 port 995 (行継続)
    username hogehoge@gmail.com password fugafuga ssl

ripmime を動かすスクリプト

動けばいいや的にでっちあげたシロモノなので、そのまま利用しないほうが吉です。あくまでも、サンプルです。(当たり前ですが、無保証です。)

#!/bin/sh

umask 027
dir=tmp$$

cd $HOME/scaninbox
mkdir $dir

/usr/bin/awk '
/^Subject:/ { sub("^Subject: *", ""); subject = $0 }
/single-drop/ { time = $8 }
/^Content-Type/,/^forever$/ { print }
END { print time "_" subject > "filename" }' |
        /usr/pkg/bin/ripmime -i - -d $dir 2>&1 > /dev/null

filename=`date +%y%m%d`_`cat filename | sed 's/ /_/g' | sed 's/://g' `
mv $dir $filename
rm filename