このページのプログラムは、携帯電話からパソコンに取り込んだメールを、Becky! や Netscape Mail といったメーラーで読める形式(mbox 形式、または UCB-mail 形式と呼びます)に変換するためのものです。また、これらを"中継"すれば、Outlook Express で読めるようにもできます。
(ここで「取り込む」とは、「メモリーカードや赤外線通信でパソコンにメールをコピーする」という意味です。メール送信機能でパソコンに送る訳ではありません。)
この程度の機能、携帯メーカーのデータリンクソフトで提供してくれてる気がしますが、意外にそうでもなく、私の使っている SH505i でも、「パソコンへのコピーは可能。ただし出力形式はvMessage
のみ」というサポート状況です。
つまり、vMessage
を読めるメーラーでないとインポートできない訳です。あまり聞きませんよね。(vCard
やvCalender
対応のは多いんけどねぇ)
普段使ってるメーラーで読めたら何が嬉しいかというと、
と、夢が広がります。
このリンクを右クリックし、「リンク先を保存」して下さい。
プログラム中の文字コードは、Shift-JIS
で、改行コードは CR + LF
です。
perl もモジュールも何もインストールしなくて良い、exe
形式版をリリースしました。Windows 2000/XP 限定ですが、ここからダウンロード。(ZIPアーカイブ, 682KB)
exe
版をご利用の際は、以下の説明文中の、
> perl sh505i_mail.pl
を、
> sh505i_mail.exe
に読み替えてご使用下さい。
vMessage
ファイルを読み込み、UCB-mail(mbox 形式)に変換し、標準出力に表示します。vMessage
ファイルを携帯電話から取り出す作業は、このプログラムでは行いません。あらかじめ、データリンクソフト等を使ってエクスポートしておいて下さい。vMessage
形式 → UCB-mail(mbox 形式)の変換のみです。従って、vMessage
形式でのコピー(エクスポート)機能を持たない携帯電話(とデータリンクソフト)をお持ちの方には、プログラムの改造を行っていただく必要があります。申し訳ありません。vCard
形式のアドレス帳が存在する場合、それをメールと同時に読み込むことによって、メールのTo:
欄、From:
欄に、氏名を追記できます。From
(英字4文字+空白)で始まる行を発見した場合、行頭に>
(greater than)を付加します。.
(ピリオド)ひとつだけの行もエスケープするべきかと思いましたが、これが特別な意味を持つのは、POP3, SMTP であり、UCB-mail ではないため、特に処理はしないようにしてあります。Subject:
に含まれる日本語は、JIS コードに変換→BASE64にエスケープされますが、これを行わないようにすることができます。-s no
とオプションを付加して下さい。プログラムの実行には、以下の環境が必要です。
perl 5 以降 | Windows なら、Active Perl 等で OK です。 (↑リンク先のインストーラを Windows 98 以前で実行する場合、Windows Installer 2.0 を前もってインストールしておく必要があります。 ) 5.8.2 にて動作確認致しました。 |
---|---|
perl モジュールDigest::MD5 | http://search.cpan.org/~gaas/Digest-MD5-2.33/MD5.pm からダウンロードできます。 メールの重複検出に使ってます(md5_hex 関数)。これ以外のアルゴリズムで重複検出するように改造すれば、これは不要です。 |
perl モジュールMIME::Base64 Jcode | http://search.cpan.org/search?dist=MIME-Base64 http://search.cpan.org/~dankogai/Jcode-0.83/Jcode.pm からダウンロードできます。 以上2つは、日本語氏名とサブジェクトの、文字コード変換→BASE64 エンコードに使ってます。 プログラム実行時、 よって、これに該当する場合、プログラムの49~50行目にある、 をコメントアウトしてください。これらのインストールが不要になります。 |
以下の環境における手順を説明します。それ以外の OS や perl インタプリタをご利用の場合、適宜、読み替えて下さい。
Digest::MD5, MIME::Base64, Jcode
はインストール済み。C:\
にある。vMessage
ファイル。拡張子.VMG
)は、フォルダC:\mail
以下にある。(このパスは、-m
オプションの引数に与えます。vCard
ファイル。拡張子.VCF
)は、フォルダC:\addr
以下にある。(このパスは、-a
オプションの引数に与えます。C:\mobile
というファイルに置くこととする。(このパスは、コマンドのリダイレクト先として与えます。xxx@docomo.ne.jp
(送信メールの「差出人」や、受信メールの「宛先」フィールドに、このアドレスが埋め込まれます。-f
オプションの引数に与えます。)(exe
形式版をご利用の場合、この作業は必要ありません。)(2004/ 3/25追加)
コマンドプロンプトを開き、次の通り入力します。コマンドプロンプトは、[スタート]→[すべてのプログラム]→[アクセサリ]にあります。
入力の途中で、以下のようなメッセージが表示された場合、モジュールが正しくインストールされていません。モジュールの説明書をお読みのうえ、インストールをやり直してみて下さい。
エラーが何も出ずに無事打ち込み終えられたら、モジュールは正しくインストールされています。
Ctrl + Dキーを押し、次にEnterキーを押して下さい。コマンドプロンプトに戻ってきます。
(exe
形式版をご利用の場合、perl sh505i_mail.pl
の箇所を、sh505i_mail.exe
に置き換えてご使用下さい。)(2004/ 3/25追加)
引き続きコマンドプロンプトに、次の通り入力します。-m mail -a addr -f xxx@docomo.ne.jp
の部分は、お使いの環境によって、入力するべき文字が異なりますので、この節の冒頭をよくお読みになり、適宜、書き換えて下さい。
ブラウザウィンドウの横幅によっては、以下のコマンドが、2行以上にまたがって表示されているかもしれませんが、実際は、長い一行のコマンドです。途中で改行せず入力して下さい。
すべてのファイルが正しく読み込めた場合、数秒後、コマンドプロンプトに戻ってくるはずです。
これで、C:\mobile
というファイルに、UCB-mail が出力されました。
Subject:
の日本語をエスケープしない場合(Shift-JIS 文字べた書きにする場合)は、上記の代わりに、次のコマンドを使って下さい。
上記プログラムで、UCB-mail への変換が終わったら、次は、メーラーへの取り込み(インポート)を実行しましょう。
UCB-mail に対応した、適当なメーラーをインストールします。ここでは、無料で利用できるMozilla Mail & Newsgroups(バージョン 1.6)を使用した例をご紹介します。
Netscape 6 以降でも、だいたい同じ操作だと思います。
Mozilla を初めて起動する時は、下記 1.~ 8. をすべて実施する必要があります。
二回目以降は、4. から始めれば大丈夫です。
C:\Windows\Application Data\Mozilla\Profiles\XXXXX\YYYYY.slt\Mail\ZZZZZ\
C:\Windows\Profiles\WWWWW\Application Data\Mozilla\Profiles\XXXXX\YYYYY.slt\Mail\ZZZZZ\
C:\Documents and Settings\WWWWW\Application Data\Mozilla\Profiles\XXXXX\YYYYY.slt\Mail\ZZZZZ\
C: | Windows をインストールしたドライブ。 |
---|---|
WWWWW | ログオン中のユーザ名。 |
XXXXX | Mozilla で使用するプロファイル名。 |
YYYYY | ランダムな英数字。 |
ZZZZZ | 3. で作成したメールアカウントの名前。 |
C:\mobile
をコピーします。題名に含まれる絵文字は、文字化けしてしまってます。上のスクリーンショットで、題名が"?"になっている箇所です。これは、題名中の絵文字を Mozilla が解釈できないのが原因です。
ただし、本文の絵文字は、もとどおり復元されます。i-mode 絵文字を Windows に登録しておけば、ご覧のように、絵文字の表示も可能です。
過去の遺物になって久しいですが、Netscape 4.x (Netscape Communicator)付属のメーラーNetscape Messengerも、UCB-mail に対応しています。
Netscape のトップページから辿るのは、今となっては困難なので、FTP サーバ上のファイルに直リンク。Windows 版の version 4.78 です。
Netscape Messenger を初めて起動する時は、下記 1.~ 8. をすべて実施する必要があります。
二回目以降は、4. から始めれば大丈夫です。
C:\Program Files\Netscape\Users\XXXXX\Mail\
C: | Windows をインストールしたドライブ。 |
---|---|
XXXXX | Netscape Messenger で使用するプロファイル名。 |
C:\mobile
をコピーします。Mozilla と違い、題名に含まれる絵文字も正しく再現しています。Communicator → Mozilla でデグレードしてる数少ない箇所です。
もちろん本文の絵文字も、もとどおり復元されます。
シェア No.1 の座を得て、なお独自形式にしがみつく Outlook Express。これが一番やっかいです。
UCB-mail(mbox)は読めず、インポートできるメールの種類もごく限られています。なお悪いことに、その数少ないメールも、今となっては入手困難なものばかり。
Outlook Express への 移行が可能なメーラー | 入手するには… |
---|---|
Microsoft Exchange | 企業向け製品である Exchange server が必要。 |
Microsoft Internet Mail | 絶版。 |
Microsoft Outlook | 後述。 |
Microsoft Windows Messaging | 絶版。 |
Netscape Communicator | 唯一残された希望の光。 |
Netscape mail v2 or v3 | …。 |
現実的なのは、Netscape Communicator へインポートし、そこから Outlook Express へ移行するという手段だけです。
まだ今は、Netscape が Communicator を公開してくれてるから良いけど、これの公開が停まったら、一体我々はどうすればいいんだろう。
Outlook Express の上位版・Outlook は、というと、より劣悪で、CSV ファイルなどからしかインポートできません。使えませんね。
[ファイル(F)
]→[インポート(I)
]→[メッセージ(E)
]を選びます。
「インポート元の電子メールプログラムを選択してください(S)
」の選択肢に、[Netscape Communicator]を選び、[次へ(N)
]を押します。
「メッセージの場所」パネルの、[参照(R)
]を押します。
「フォルダの参照」パネルで、
C:\Program Files\Netscape\Users\XXXXX\Mail
を選択し、[OK]を押します。ただし、
C: | Windows をインストールしたドライブ。 |
---|---|
XXXXX | Netscape Messenger で作成したプロファイル名。 |
「メッセージの場所」パネルに戻ってきます。[次へ(N)
]を押します。
「選択されたフォルダ(S)
」を選び、その下の枠内の[mobile]を選択し、[次へ(N)
]を押します。
以上で完了です。[完了]を押します。
ちなみに、サブジェクト・本文とも、絵文字は再現されます。
このプログラムは、vMessage
形式でのエクスポート機能を持ったデータリンクソフト等がないと何もできません。
全携帯のデータリンクソフトに合わせてプログラム作るのは面倒なので、携帯→PC 移行は「携快電話」とかに任せて、こっちは、「携快電話」のエクスポート形式に併せてプログラム組んだ方が楽な気がします。(ソフトは買わんといけんくなるけど)
主な製品のカタログスペック(エクスポートの)をビックカメラで調べてきたら、次のような状況でした。
製品名 | エクスポート形式 |
---|---|
携帯万能12 | CSV, テキスト, Eml, Outlook |
携快電話9 | Eml |
ケータイ・リンク7 | Eml |
Eml が本命な感じですが、携快電話は、内部保存形式が XML なので、パーサーさえ書ければ、既製の perl モジュール使って一気に読み込めたりしないだろうか。