(57)【要約】      （修正有）【課題】メールの状態情報(未読/既読、返信済み/転送済みなど）やアドレス帳などを含めて、複数台のモバイル端末間で同期してオフラインで利用可能な電子メールクライアントシステムを実現する。【解決手段】モバイル端末のうちの一つに持出データ管理機能を、各モバイル端末にモバイル端末間でデータを共有できるようにするネットワーク通信基盤を介して前記持出データ管理機能にアクセスする電子メールクライアントを搭載し、デスクトップ端末に搭載された電子メールクライアントと、前記持出データ管理機能との間で、持出データを同期する同期モジュールを準備し、前記デスクトップ端末と前記同期モジュールの間で持出データを同期する際には、前記持出データ管理機能と前記同期モジュールとの間での同期をあらかじめ実行させる機能を持たせた電子メール同期機能を含めて電子メールクライアントシステムを構成する。【選択図】図１
2013092850.tif 000002
【特許請求の範囲】
【請求項１】
第１の端末、第２の端末、第３の端末を含んで構成される電子メールクライアントシステムであって、
メール同期サーバを備え、
前記第１の端末は、ローカルメールボックスと、第１の電子メールクライアントを備え、
前記第２の端末は、
第２の電子メールクライアントと、
持出データ管理機能と、
持出メールボックスと、を備え、
前記第３の端末は、第３の電子メールクライアントを備え、
前記メール同期サーバは、メール同期モジュールと同期データDBとを備え、
前記第２のメールクライアントと、前記第３のメールクライアントは、前記第２の端末が備える前記持出メールボックスにアクセスし、
前記メール同期サーバは、前記第１の電子メールクライアントまたは、前記持出データ管理機能との間で、持出データを同期する同期モジュールを備え、
前記第１の端末が備える第１のメールボックスと前記同期データDBとの間で、前記持出データを同期する前に、前記第２の端末の前記持出データ管理機能と前記同期データDBとの間で、前記持出データの同期を行う
ことを特徴とする電子メールクライアントシステム。  
【請求項２】
前記第１の電子メールクライアントと、前記メール同期モジュールは、所定のタイミングで行う、前記同期処理として、
前記メール同期モジュールは、前記電子メールクライアントの認証処理を行い、
前記認証に成功した場合に、前記メール同期モジュールは、前記第２の端末の前記持出データ管理機能との間で、前記持出データの同期処理を行い、
前記持出データ管理機能との同期処理が実施された後に、前記認証処理の結果を返送し、
前記第１の端末の前記ローカルメールボックスと、前記メール同期サーバの前記同期データDBとの間で、前記持出データの同期処理を行う
ことを特徴とする電子メールクライアントシステム。  
【請求項３】
請求項２に記載の電子メールクライアントシステムにおいて、
前記所定のタイミングとは、
前記第１の電子メールクライアントが起動された時、または、前記持出メールボックスへの持出対象となる前記持出データが指定された時、または、前記第１の電子メールクライアントの起動中に定期的に、または、前記第１の電子メールクライアントの終了時、のいずれかひとつ以上である
ことを特徴とする電子メールクライアントシステム。  
【請求項４】
請求項１から３のいずれか一に記載の電子メールクライアントシステムにおいて、
前記メール同期モジュールは、
前記第１の端末の前記第１の電子メールクライアントと、前記第２の端末または前記第３の端末の前記電子メールクライアントが異なった形式で前記持出データを保存する場合に、前記持出データの保存形式を変換する
ことを特徴とする電子メールクライアントシステム。
【請求項５】
請求項１から４のいずれか一に記載の電子メールクライアントシステムにおいて、
前記持出データは、電子メールおよび／またはアドレス帳を含む
ことを特徴とする電子メールクライアントシステム。
【請求項６】
請求項４に記載の電子メールクライアントシステムにおいて、
前記メール同期サーバは、電子メールへの添付ファイルを処理するモバイルコードを格納するモバイルコードDBを備え、
前記メール同期モジュールは、前記同期データDBと前記持出メールボックスとを同期する際に、前記電子メールデータへの添付ファイルの表示に必要なモバイルコードを、前記持出データ管理機能へ送信する
ことを特徴とする電子メールクライアントシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示される主題は、複数の端末を使用する環境において利用可能な電子メールクライアントシステムを構成する技術に関する。
【背景技術】
【０００２】
モバイル端末の普及につれて、オフィスのデスクトップ端末で利用していた電子メールシステムを外出先のモバイル環境でも利用したいというニーズがある。このような場合、複数の環境で保持される電子メールを同一に保つことが求められる。
【０００３】
このようなニーズに対して、特許文献１に示す、ネットワーク全体で電子メールを同期させる方法と、特許文献２に示す、端末間で電子メールのデータを同期させる方法がある。なお、本明細書で同期とは、複数箇所に保持されている電子メールデータを同一に保つことを指す。ただし、ファイル形式やフォーマットが異なっていても、互いに変換可能な場合は、同一とみなす。
【０００４】
特許文献１で示される方法では、オフィス内でのアクセスに使用する第一のメールサーバと、オフィス外からのアクセスに使用する第二のメールサーバを準備し、所定の基準を使用して、第一のメールサーバに配信された電子メールを第二のメールサーバに送信するべきかどうかを判定した後に、第二のメールサーバに送信する。
【０００５】
第二のメールサーバは、適切な認証を行ったユーザが、モバイル端末からHTTPを用いて第二のメールサーバにアクセスすることが可能であり、外出先のモバイル環境でもオフィス内に居る時と同様に電子メールを利用することができる。
【０００６】
しかし、特許文献１で示される方法では、モバイル端末がネットワークを介して第二のメールサーバにアクセス可能であることが必要である。このため、電波が届かないなどの理由で通信していないオフライン環境に居る場合には電子メールにアクセスすることができなかった。
【０００７】
特許文献２で示される方法では、パーソナル情報マネージャ(PIM) が管理する情報の一環として、デスクトップ端末とモバイル端末の間で双方向に電子メールを同期させる。特許文献２では電子メールに付与されたアタッチメント（添付ファイル）についても言及している。アタッチメントには、図面、グラフ、チャート等のメモリにとってより厳しいファイルもあることと、アタッチメントの種類によってはデスクトップに居ない限り不要なもののあることを考慮し、メッセージの適当な識別を行う機能を同期システムにもたせている。
【０００８】
特許文献２で示される方法は、同期を行うときにのみデスクトップ端末とモバイル端末が相互にアクセス可能であればよく、オフライン環境でも電子メールにアクセスすることが可能である。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】国際公開第1999/005620号パンフレット
【特許文献２】国際公開第1999/022322号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献２が開示する方法により、オフライン環境でモバイル端末を用いて、添付ファイルのついた電子メールの閲覧および編集ができるようになる。しかし、電子メールの持出に関しては、メールの状態情報(未読/既読の区別や、返信済み/転送済みなどの状態情報）やアドレス帳などを含めて持ち出すことが必要である。
【００１１】
しかし、ユーザが利用可能なモバイル端末の選択肢としてスマートフォン等の携帯電話やモバイルPC、タブレット端末など、さまざまな端末（モバイル端末という）が利用されるようになってきており、デスクトップ端末とこれらの複数台のモバイル端末を利用している場合において問題が発生することがある。
【００１２】
たとえば、デスクトップ端末とスマートフォン、およびタブレット端末を同期させた後に、スマートフォンとタブレット端末で同じ電子メールに対して異なった相手への返信操作をそれぞれ行った後に、スマートフォン、およびタブレット端末をデスクトップ端末と再同期させた場合、スマートフォンもしくはタブレット端末での変更内容はどちらかが破棄され、正しく同期できなくなる。
【課題を解決するための手段】
【００１３】
開示されるのは、３台以上の端末間で電子メールなどの持出データを同期させ、同期させた持出データをオフラインで利用可能な電子メールクライアントシステムである。本明細書において、持出データとは、電子メールおよび／またはアドレス帳を少なくとも含む。
【００１４】
上記システムは、具体的には、メールサーバとのやり取りを、３台以上の端末のうちの一つ（例えば、デスクトップ端末）に限定し、その他の端末（例えば、モバイル端末）のうちの一つが、最終データ更新時刻を記録する持ち出しデータ管理部を備え、上記その他の端末（例えばモバイル端末）は前記持ち出しデータ管理部にアクセスして同期する電子メールクライアントを備え、
上記その他の端末（例えばモバイル端末）は、持ち出しデータ管理部を備えるその他の端末との間で、データの同期を行い、さらに、デスクトップ端末に搭載された電子メールクライアントモジュールと、持ち出しデータ管理部との間で、更新された電子メールデータを交換する同期モジュールを含めて電子メールクライアントシステムを構成する。
【００１５】
モバイル端末のうちの一つに持出データ管理機能を、各モバイル端末にモバイル端末間でデータを共有できるようにするネットワーク通信基盤を介して前記持出データ管理機能にアクセスする電子メールクライアントモジュールを搭載し、
デスクトップ端末に搭載された電子メールクライアントモジュールと、前記持出データ管理機能との間で、持出データを同期する同期モジュールを準備し、
前記デスクトップ端末と前記同期モジュールの間で持出データを同期する際には、前記持出データ管理機能と前記同期モジュールとの間での同期をあらかじめ実行させる機能を持たせた電子メール同期機能を含めて電子メールクライアントシステムを構成する。
【００１６】
また、電子メールクライアントに関して、メールサーバとのデータ交換プロトコル（たとえばSMTPやPOP3）は標準化されているが、電子メールを保存する形式や、各メールが未読、返信済み、転送済みであることを記録する方法は、それぞれの独自仕様となる。しかしながら、特許文献２では、仕様の違いを考慮しておらず、デスクトップ端末とモバイル端末に搭載された電子メールクライアントが、単純な同期を行うだけで、互いに電子メールを利用できることを前提としている。
【００１７】
本明細書が開示する電子メールクライアントシステムでは、上述の特徴的な電子メール同期機能が、さらに、電子メールデータの保存形式（フォーマット）を変換する機能を備えても良い。これにより、複数のモバイル端末それぞれで異なる種類保存形式を扱う電子メールクライアントモジュールを利用している場合でも、オフラインでアクセス可能になる。
【００１８】
さらに、特許文献２が開示する方法では、オフラインで利用可能な添付ファイルの種別が、それぞれのモバイル端末に搭載されたアプリケーションプログラム（以下、アプリケーションという）に限定されてしまう。
【００１９】
本明細書が開示する電子メールクライアントシステムでは、上述の特徴的な電子メール同期機能が、さらに、添付ファイルを処理するモバイルコードをモバイル端末にダウンロードさせる機能を備え、
各モバイル端末にダウンロードされたモバイルコードを動作させる機能を、電子メールクライアントシステムに追加する、ように構成しても良い。これにより、モバイル端末に搭載されたアプリケーションに左右されず、添付ファイルを処理できるようになる。
【発明の効果】
【００２０】
開示によれば、デスクトップ端末で使用している電子メール環境において、持出設定したメッセージとその状態（未読/既読の区別や、返信済み/転送済みなどの状態情報）やアドレス帳を同期させて複数のモバイル端末でアクセスすることが可能になる。
【図面の簡単な説明】
【００２１】
【図１】電子メールクライアントシステムの全体構成を例示する。
【図２】デスクトップ端末の電子メールクライアントモジュールと、メール同期サーバのメール同期モジュールの間の同期シーケンスを例示する。
【図３】スマートフォンの持出データ管理モジュールと、メール同期サーバのメール同期モジュールの間の同期シーケンスを例示する。
【図４】メール同期サーバに搭載された同期データDBの内部構成を例示する。
【図５Ａ】デスクトップ端末とメール同期サーバとの同期シーケンスを実現する、デスクトップ端末における概略処理フローを例示する。
【図５Ｂ】デスクトップ端末とメール同期サーバとの同期シーケンスを実現する、メール同期サーバにおける概略処理フローを例示する。
【図６Ａ】デスクトップ端末の電子メールクライアントモジュールに対するメール同期サーバの送信スレッドの概略処理フローを例示する。
【図６Ｂ】デスクトップ端末の電子メールクライアントモジュールに対するメール同期サーバの受信スレッドの概略処理フローを例示する。
【図７Ａ】メール同期サーバに対するデスクトップ端末の電子メールクライアントモジュールの送信スレッドの概略処理フローを例示する。
【図７Ｂ】メール同期サーバに対するデスクトップ端末の電子メールクライアントモジュールの受信スレッドの概略処理フローを例示する。
【発明を実施するための形態】
【００２２】
実施例を、図面を参照して説明する。
【００２３】
図１は、本実施例の電子メールクライアントシステムの全体構成を説明する図である。
【００２４】
本システムは、組織内ネットワーク１３０に接続されるデスクトップ端末１００、メールサーバ１１０および、メール同期サーバ１２０と、インターネット１４０に接続されるスマートフォン１５０とタブレット端末１６０により構成される。本実施例においては、スマートフォン１５０とタブレット端末１６０を総称してモバイル端末と呼ぶことがある。
【００２５】
メールサーバ１１０は、SMTP（Simple Mail Transfer Protocol）等のメール配送プロトコルを用いて電子メールの配信を担当するメール転送エージェント１１１（図１中ではMTA：Mail Transfer Agentと略記されている）と、前記メールサーバ１１０のアカウントを有するユーザの受信メール等を保存するユーザメールボックス１１２を有する。
【００２６】
デスクトップ端末１００は、電子メールクライアントモジュール（以下、電子メールクライアントと略記する。さらに図１中ではMUA：Mail User Agentと略記）１０１と、電子メールに添付されたファイルの閲覧、編集等の機能を提供する添付ファイル用アプリケーション１０２（図１中ではAPと略記）と、ユーザの受信メールを格納するローカルメールボックス１０３を有する。
【００２７】
電子メールクライアント１０１は、ユーザ宛てのメールをPOP3（Post Office Protocol Version3）やIMAP（Internet Message Access Protocol）等を用いてメール転送エージェント１１１から受信し、閲覧する機能と、新規もしくは返信、転送等のメールを作成し、SMTP等を用いてメール転送エージェント１１１に送信する機能を有する。さらに電子メールクライアント１０１は、メールの宛先となるアドレス帳を管理する機能も有する。
【００２８】
電子メールクライアント１０１は、モバイル端末で電子メールの閲覧、返信等の作業を行うために、ローカルメールボックス１０３の中からモバイル端末に持ち出す電子メールをユーザに選択させ、持出対象メールとして記憶する機能と、メール同期サーバ１２０とのデータ交換機能も有する。
【００２９】
電子メールの持ち出しとは、持出対象となる電子メールデータのコピーを、持ち出し先（例えば、後述する、スマートフォン１５０の持出メールボックス）に格納することである。
【００３０】
持出対象メールをユーザに選択させる機能は、たとえば電子メールクライアント１０１の受信メール一覧画面で、選択されたメールごとに持出対象マークをつけたり、GUI上の操作によりあらかじめ持出用に指定したフォルダに電子メールを移動させてもよい。また、送信元やサブジェクトにより、電子メールを受信したタイミング等で所定のフォルダに振り分けるメッセージフィルタ機能を利用してもよい。
【００３１】
また、電子メールクライアント１０１は、持出対象メールに、モバイル端末への持出期限を設定してもよい。例えば、持出対象マークを付ける際に持出期限（たとえば一週間後とか）を設定したり、持出用フォルダを複数個準備し、フォルダごとに持出期間（たとえば一週間とか）を設けてもよい。
【００３２】
スマートフォン１５０は、インターネット接続用ネットワークインタフェース１５１（図中ではネットI/Fと略記）と、モバイル端末間連携用ネットワークインタフェース１５２（図中では端末間I/Fと略記）および、電子メールクライアント１５３と、電子メールに添付されたファイルの閲覧、編集等の機能を提供する添付ファイル用アプリケーション１５４と、持出データ管理モジュール１５５、持出メールボックス１５６により構成されている。
【００３３】
インターネット接続用ネットワークインタフェース１５１は、3GやWiFi（登録商標）、WiMax（登録商標）等の無線通信インタフェースである。モバイル端末間連携用ネットワークインタフェース１５２は、スマートフォン１５０と、ユーザの傍らにあるその他のタブレット端末１６０との間でローカルな通信を行うために使用するもので、Bluetooth（登録商標）等の近距離無線通信インタフェースである。
【００３４】
スマートフォン１５０に搭載された電子メールクライアント１５３（図１中ではMUA：Mail User Agentと略記）は、持出メールボックス１５６にアクセスし、格納された電子メールを閲覧可能に表示する機能と、新規もしくは返信、転送等のメールを作成する機能を有する。さらに電子メールクライアント１５３は、メールの宛先となるアドレス帳を管理する機能も有する。
【００３５】
ユーザが、電子メールクライアント１５３を用いて受信メールを閲覧中に、添付ファイルを閲覧する場合には、添付ファイル用アプリケーション１５４（図１中ではAPと略記）を起動し、添付ファイルを表示することができる。また、電子メールクライアント１５３で新規メール作成、および受信メールに対する返信メールもしくは転送メールを作成する際には、アドレス帳の参照が可能である。作成したメールは、持出メールボックス１５６にアクセスし、下書きフォルダに格納することができる。
【００３６】
持出データ管理モジュール１５５は、メール同期サーバ１２０との間で、電子メールおよび／またはアドレス帳を少なくとも含む持出データを交換する機能を提供するモジュールである。持出データを交換するシーケンスは後述する。スマートフォン１５０上で稼働する電子メールクライアント１５３および、添付ファイル用アプリケーション１５４は、たとえばJava（登録商標）やJavaScript（登録商標）等のプログラムを動作させる仮想化基盤１５７上で動作させるようにしてもよい。
【００３７】
タブレット端末１６０は、モバイル端末間連携用ネットワークインタフェース１６２（図中では端末間I/Fと略記）と、電子メールクライアント１６３と、添付ファイル用アプリケーション１６４により構成されている。
【００３８】
タブレット端末１６０は、形態としてタブレットである必然性はなく、ノートPCのような持ち運びが可能なPCと同等の形態であってもよい。また、タブレット端末１６０は、それ自身がインターネット接続用ネットワークインタフェース１６１を備えていても、モバイル端末間連携用ネットワークインタフェース１６２およびモバイル端末間連携用ネットワークインタフェース１５２を介し、スマートフォン１５０が提供するインターネット接続用ネットワークインタフェース１５１を用いてネットワークに接続するようにしてもよい。
【００３９】
タブレット端末１６０に搭載された電子メールクライアント１６３（図１中ではMUA：Mail User Agentと略記）は、モバイル端末間連携用ネットワークインタフェース１６２、および、モバイル端末間連携用ネットワークインタフェース１５２を介し、スマートフォン１５０内の持出メールボックス１５６にアクセスし、格納された電子メールを閲覧可能に表示する機能と、新規もしくは返信、転送等のメールを作成する機能を有する。さらに電子メールクライアント１６３は、メールの宛先となるアドレス帳を管理する機能も有する。
【００４０】
ユーザが、電子メールクライアント１６３を用いて受信メールを閲覧中に、添付ファイルを閲覧する場合には、添付ファイル用アプリケーション１６４（図１中ではAPと略記）を起動し、添付ファイルを表示することができる。また、電子メールクライアント１６３で新規メール作成、および受信メールに対する返信メールもしくは転送メールを作成する際には、アドレス帳の参照が可能である。
【００４１】
電子メールクライアント１６３は、作成したメールを、モバイル端末間連携用ネットワークインタフェース１６２およびモバイル端末間連携用ネットワークインタフェース１５２を介し、スマートフォン１５０内の持出メールボックス１５６にアクセスし、下書きフォルダに格納する。タブレット端末１６０上で稼働する電子メールクライアント１６３および、添付ファイル用アプリケーション１６４も、仮想化基盤１６５上で動作するようにしてもよい。
【００４２】
メール同期サーバ１２０は、デスクトップ端末１００とモバイル端末の間で持出対象情報を同期させる機能を提供するサーバで、デスクトップ端末１００に搭載された電子メールクライアント１０１とスマートフォン１５０に搭載された持出データ管理モジュール１５５とのデータ同期を仲介するメール同期モジュール１２１と、スマートフォン１５０に送信して同期させるべき持出対象情報のコピーを保管する同期データDB１２２を有する。
【００４３】
メール同期サーバ１２０が有する機能は、デスクトップ端末１００がインターネットから直接アクセス可能であれば、デスクトップ端末１００上に構成してもよい。
【００４４】
本実施例における電子メールクライアントシステムを構成する各装置、すなわち、上述のデスクトップ端末１００、メールサーバ１１０、メール同期サーバ１２０、スマートフォン１５０、タブレット端末１６０は、CPUと記憶装置とを備える一般的な計算機を用いて実現することができる。さらに、本実施例で説明する、モジュール、アプリケーション等の各機能は、CPUが記憶装置に格納されているプログラムを実行することにより、上記計算機上に具現化される。
【００４５】
各プログラムは、あらかじめ、上記計算機内の記憶装置に格納されていても良いし、必要なときに、入出力インタフェースと上記計算機が利用可能な媒体を介して、他の装置から上記記憶装置に導入されてもよい。媒体とは、たとえば、入出力インタフェースに着脱可能な記憶媒体、または通信媒体（すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号）を指す。
【００４６】
ここで、持出対象情報とは、MIME（Multipurpose Internet Mail Extensions）によりフォーマットが定められている電子メール本文とその添付ファイル以外に、前記電子メールの状態情報（たとえば未読/既読情報、返信済/転送済情報など）、および電子メールクライアント１０１がアクセスするアドレス帳の内容等が該当する。状態情報およびアドレス帳の形式は電子メールクライアントに依存するものであり、電子メールメッセージのヘッダとして追記されるものや、メッセージを格納するファイル名に付記されるものなどがある。
【００４７】
同期データDB１２２の持出対象情報格納フォーマットは、デスクトップ端末１００、スマートフォン１５０、タブレット端末１６０の電子メールクライアントがすべて同じ種類である場合は、その電子メールクライアントの形式で保存することも可能であるが、それぞれの端末で異なった電子メールクライアントを使用する場合には、アプリケーションから独立したフォーマットを用いてもよい。
【００４８】
スマートフォン１５０およびタブレット端末１６０上で稼働する電子メールクライアント（１５３および１６３）および添付ファイル用アプリケーション（１５４および１６４）が仮想化基盤（１５７および１６５）を利用するものである場合には、仮想化基盤上で動作するモバイルコードを格納する、モバイルコードDB１２３を持つようにしてもよい。
【００４９】
図２はデスクトップ端末１００の電子メールクライアント１０１とメール同期サーバ１２０のメール同期モジュール１２１の間の同期シーケンスである。
【００５０】
本シーケンスは、所定のタイミング、たとえば (1) 電子メールクライアント１０１が起動された時、(2) 持出対象メールが指定された時、(3) 電子メールクライアント１０１を起動中に定期的に、(4) 電子メールクライアント１０１の終了時 に起動するよう設定することができる。
【００５１】
ステップ２０１は同期を開始するステップで、電子メールクライアント１０１は、メール同期モジュール１２１に対してコネクションを確立し、あらかじめ記憶しておいたメールユーザのユーザIDおよびパスワードを送信する。メール同期モジュール１２１は、メールユーザのユーザID/パスワードを受理することによりデスクトップ端末１００の電子メールクライアント１０１を認証するステップ２０２を実施する。ステップ２０２の認証に成功した場合は以降のステップを実施する。
【００５２】
ステップ２０３は、デスクトップ端末１００とメール同期サーバ１２０の同期を実行するに先立ち、モバイル端末とメール同期サーバ１２０の間での不整合を防ぐために、メール同期モジュール１２１は、スマートフォン１５０の持出データ管理モジュール１５５に同期指示を送るステップである。本ステップを実施することにより、図３に示す、スマートフォン１５０の持出データ管理モジュール１５５と、メール同期サーバ１２０のメール同期モジュール１２１の間の同期シーケンスが実施される。図３シーケンスの実施を確認したのち、以降のステップを実施する。
【００５３】
ステップ２０４は、メール同期モジュール１２１が電子メールクライアント１０１に認証結果及び、電子メールクライアント１０１の前回の接続時刻情報を返送するステップである。
【００５４】
電子メールクライアント１０１は、受信した前回の接続時刻情報を参照し、ローカルメールボックス１０３にアクセスし、その中からメール同期モジュール１２１に送信すべきデータをピックアップする（ステップ２０５）。ここで、ピックアップすべきデータは、前回の接続時刻以降に新たにマークされた電子メール、前回の接続時刻以降に未読/既読状態が変更されたり、返信、もしくは転送されたりした、電子メールクライアント１０１でマーク済みの電子メール、更新されたアドレス帳などが該当する。
【００５５】
電子メールクライアント１０１で持出対象の電子メールが削除されても、その結果をメール同期モジュール１２１に送信しなくてよい（メール同期モジュール１２１に反映させなくてよい）。メール同期モジュール１２１へ持出された電子メールは、後述する通り、保存期限を過ぎた場合に消去されるためである。
【００５６】
ステップ２０５と並行して、メール同期モジュール１２１は、電子メールクライアント１０１と前回接続した後に、スマートフォン１５０の持出データ管理モジュール１５５から受信したデータをピックアップする（ステップ２０６）。ここで、ピックアップすべきデータは、前回の接続時刻以後にモバイル端末で新たに作成され、未送信の電子メール、前回の接続時刻以降にモバイル端末で未読/既読状態が変更されたり、返信、もしくは転送されたりした電子メール、モバイル端末で更新されたアドレス帳などが該当する。
【００５７】
モバイル端末側で状態が変更された電子メールが、既に電子メールクライアント１０１側で消去されていた場合は、同期データとしてステップ２０７で交換されて電子メールクライアント１０１に通知されるが、既に、対象となるデータが存在しないため、電子メールクライアント１０１側に反映されないようにする。
【００５８】
モバイル端末と、メール同期モジュール１２１との間では、削除された情報も反映し、同じ内容を保持するが、モバイル端末側で削除された情報は、電子メールクライアント１０１には反映しないので、電子メールクライアント１０１に送信する必要はない。
【００５９】
ステップ２０５およびステップ２０６において準備された同期データは、ステップ２０７において交換される。ステップ２０７終了後に、電子メールクライアント１０１は、メール同期モジュール１２１より受信したデータを更新するステップ２０８を実施する。ステップ２０８では、前回の接続時刻以後にモバイル端末で新たに作成された電子メールを作成済みメールとして送信し、送信済みトレイへ保管する処理と、モバイル端末に合わせた電子メールの状態変更処理が行われる。
【００６０】
ただし、ステップ２０８では、上述したとおり、モバイル端末で削除された電子メール等があっても、電子メールクライアント１０１では削除は行わない。
【００６１】
ステップ２０８と並行して、メール同期モジュール１２１は、電子メールクライアント１０１から受信したデータを更新するステップ２０９を実施する。ステップ２０９では、新たにマークされたメールに持出期限を付与して同期データDB１２２に格納する処理と、既に同期データDB１２２に格納されている電子メールの中で、未読/既読情報もしくは返信済み/転送済み情報の変更を反映する処理と、同期データDB１２２内のアドレス帳の更新処理と、が行われる。
【００６２】
ステップ２０８およびステップ２０９が終了した後、電子メールクライアント１０１はメール同期モジュール１２１に接続終了通知を送信する（ステップ２１０）。
【００６３】
図３はスマートフォン１５０の持出データ管理モジュール１５５と、メール同期サーバ１２０のメール同期モジュール１２１の間の同期シーケンスである。
【００６４】
本シーケンスは、スマートフォン１５０の持出データ管理モジュール１５５がメール同期サーバ１２０のメール同期モジュール１２１への接続性を定期的に監視し、接続が可能になった時に起動されるよう設定することができる。また、上述したように、図２のステップ２０３が実行され、スマートフォン１５０がメール同期サーバ１２０から同期指示を受け取った場合には、本シーケンスを実施する。
【００６５】
ステップ３０１は同期を開始するステップで、持出データ管理モジュール１５５は、メール同期モジュール１２１に対してコネクションを確立し、あらかじめ記憶しておいたメールユーザのユーザIDおよびパスワードを送信する。メール同期モジュール１２１は、メールユーザのユーザID/パスワードを受理することによりスマートフォン１５０の持出データ管理モジュール１５５を認証するステップ３０２を実施し、認証に成功した場合は以降のステップを実施する。
【００６６】
メール同期モジュール１２１の接続相手が、デスクトップ端末１００の電子メールクライアント１０１であるか、もしくはスマートフォン１５０の持出データ管理モジュール１５５であるかは、たとえばメール同期モジュールのサービスがHTTPを用いているのであれば、URLを変えることにより判別することが可能である。
【００６７】
ステップ３０３は、メール同期モジュール１２１が持出データ管理モジュール１５５に認証結果及び、持出データ管理モジュール１５５の前回の接続時刻情報を返送するステップである。
【００６８】
持出データ管理モジュール１５５は、持出中の電子メールの期限情報を確認し、保存期限を過ぎているものは消去した上で、受信した前回の接続時刻情報を参照し、持出メールボックス１５６にアクセスし、その中からメール同期モジュール１２１に送信すべきデータをピックアップする（ステップ３０４）。ここで、ピックアップすべきデータは、前回の接続時刻以後に電子メールクライアント１０１から受信した電子メール、前回の接続時刻以降に未読/既読状態が変更されたり、返信、もしくは転送されたりした、電子メールクライアント１０１でマーク済みの電子メール、更新されたアドレス帳などが該当する。
【００６９】
なお、モバイル端末でユーザが削除する操作を行った場合、持出データ管理モジュール１５５は持出メールボックス内から消去せずに、持出情報である電子メールに削除マークを付与する処理を実施しておく。削除マークが付与された情報も、上記ピックアップの対象に該当する。
【００７０】
ステップ３０４と並行して、メール同期モジュール１２１は、持出データ管理モジュール１５５と前回接続した後に、デスクトップ端末１００の電子メールクライアント１０１から受信したデータをピックアップする（ステップ３０５）。ここで、ピックアップすべきデータは、前回の接続時刻以後にデスクトップ端末１００で新たにマークされた電子メール、デスクトップ端末１００で新たに作成され、かつ、未送信の電子メール、前回の接続時刻以降にデスクトップ端末１００で未読/既読状態が変更されたり、返信、もしくは転送されたりした電子メール、デスクトップ端末１００で更新されたアドレス帳などが該当する。
【００７１】
ステップ３０４およびステップ３０５において準備された同期データは、ステップ３０６において交換される。ステップ３０６終了後に、持出データ管理モジュール１５５は、メール同期モジュール１２１より受信したデータの更新処理を実施する。本ステップでは、前回の接続時刻以後にデスクトップ端末１００で新たに作成された電子メールを作成済みメールとして送信し、送信済みトレイへ保管する処理と、デスクトップ端末１００に合わせた電子メールの状態変更処理を実施する（ステップ３０７）。
【００７２】
ステップ３０７と並行して、メール同期モジュール１２１は、持出データ管理モジュール１５５から受信したデータの更新処理を実施する。本ステップでは、モバイル端末で新たに作成されたメールを同期データDB１２２に格納する処理と、既に同期データDB１２２に格納されている電子メールの中で、未読/既読情報もしくは返信済み/転送済み情報の変更を反映する処理、同期データDB１２２内のアドレス帳の更新処理を実施する（ステップ３０８）。持出データ管理モジュール１５５において削除マークが付与された電子メールは、メール同期モジュール１２１内から消去する。ステップ３０７が終了した後、持出データ管理モジュール１５５はメール同期モジュール１２１に接続終了通知を送信する（ステップ３０９）。
【００７３】
図４はメール同期サーバ１２０に搭載された同期データDB１２２の内容を詳細に示した図である。同期データDB１２２は、複数ユーザに対応するために、同期データを格納するユーザのIDとパスワードの組を格納するテーブルである、usertable.txtを持つ。各ユーザの持出データを管理するDBの形式としては、たとえばMH（Mail Handler）フォルダ形式をベースに拡張することができる。MHでは、一つのディレクトリ（以降フォルダと呼ぶことにする）の下にメールメッセージをそれぞれ一つのファイルとして格納しており、メール同期サーバは接続ユーザごとに一つのフォルダを割当てればよい。
【００７４】
図４においては接続ユーザごとに割り当てるフォルダの名称に、ユーザのメールアドレスを使用している。さらに、同期対象のメールメッセージを格納するサブフォルダとしてsyncdir、いずれかの電子メールクライアントにおいて作成途中のメールメッセージを保存するサブフォルダとしてdrafts、ユーザのアドレス帳として宛先表示文字列をファイル名とし、メールアドレス等の情報とそのファイルの最終更新時刻を記載したファイル群を格納するサブフォルダとしてaddressdirを使用する。
【００７５】
さらに、図２のステップ２０３で、メール同期モジュール１２１が、ユーザの使用するスマートフォン１５０に同期指示を送ることを可能にするため、スマートフォン１５０に付与されたメールアドレスを格納するファイルとしてmobile.addrを使用する。
【００７６】
syncdir内に格納されたメッセージファイルのファイル名は、フォルダ内でのメッセージの順番を表わす整数である。未読/既読および、返信済み/転送済みなどの状態情報は、メッセージヘッダの追加フィールドとして記載する。たとえば、未読/既読状態はx-seen フィールド、返信済みかどうかはx-repliedフィールド、転送済みかどうかはx-forwardedフィールドの値により識別できるようにすればよい。
【００７７】
また、デスクトップ端末１００の電子メールクライアント１０１において、持出対象の電子メールであることを識別するために、メッセージヘッダの追加フィールドx-portableフィールドを利用するようにしてもよい。さらに、各メッセージの持出期限情報も、追加フィールドx-expiredateフィールドを利用するようにしてもよい。また、持出メールボックス１５６内に保管された電子メールで、モバイル端末上で削除されたものは、上述の削除マークに対応する追加フィールド x-removedフィールドを用いて区別できるようにする。
【００７８】
なお、アドレス帳情報の削除については、デスクトップ端末１００とメール同期モジュール１２１、およびメール同期モジュール１２１と持出データ管理モジュール１５５間で、同期処理を行う際に、片方でアドレス帳が削除されていたら、もう片方も消去するように構成する。
【００７９】
各ユーザがデスクトップ端末１００の電子メールクライアント１０１からメール同期モジュール１２１に前回接続した時刻は、desktop.lastファイルに最終接続時刻として記録される。また、スマートフォン１５０の持出データ管理モジュール１５５からメール同期モジュール１２１に前回接続した時刻は、mobile.lastファイルに最終接続時刻として記録される。
【００８０】
図５Ａから図７Ｂは、メール同期モジュール１２１が図２に示したステップ２０１、２０２、２０３、２０５、２０６、２０８、２０９を処理する際のフローチャートと、電子メールクライアント１０１が図２に示したステップ２０１、２０３、２０４、２０６、２０７、２０９を処理する際のフローチャートである。
【００８１】
図５Ａは、メール同期モジュール１２１が実行する処理で、５０１はデスクトップ端末１００の電子メールクライアント１０１からの接続待ち処理で、接続が完了した後５０２のユーザIDおよびパスワードの受付処理を実施する。５０３はユーザ認証処理で、処理５０２で受信したユーザIDとパスワードの組が、同期データDB１２２のusertable.txtと一致するかを確認し、一致した場合は認証に成功した旨を通知し、一致しない場合は電子メールクライアント１０１に認証に失敗した旨を通知したのちすべての処理を終了する。
【００８２】
５０４以降はユーザ認証に成功した場合に、同期データDB１２２に対して実施される処理である。
【００８３】
５０４は、処理５０２で入手したユーザの最終接続時刻をdesktop.lastファイルから入手する処理、５０５は、mobile.addrファイルを参照し、ユーザのスマートフォン１５０に対して、同期を指示する電子メールを送信する処理で、スマートフォン１５０は、メール同期サーバ１２０からの電子メールを受け取った場合に図３に示すシーケンスを実行するよう構成しておく。
【００８４】
メール同期サーバ１２０が送信する電子メールは、たとえばメール同期サーバの管理者ユーザが送信者のメールで、タイトル、本文とも空のメールであっても良いし、第三者のなりすましを防ぐために電子署名を付与し、スマートフォン１５０で前記電子署名を検証するように構成しても良い。
【００８５】
５０６は、デスクトップ端末１００の電子メールクライアント１０１に前記最終接続時刻を通知する処理、５０７は、前記最終接続時刻以降に持出メールボックスから送信され、メール同期モジュール１２１で更新されたデータを、電子メールクライアント１０１に送信するスレッドと、前記最終接続時刻以降に電子メールクライアント１０１で更新されたデータを受信するスレッドを生成する処理、５０８はスレッドの終了を待つ処理である。
【００８６】
図５Ｂは、電子メールクライアント１０１が実行する処理で、５１１は同期サーバ１２０のメール同期モジュール１２１への接続処理で、接続に成功した場合には５１２のユーザIDおよびパスワードの送付処理を実施する。５１３はユーザ認証結果の受信待ち処理、５１４はユーザ認証結果の判定処理であり、ユーザ認証が成功した場合には、５１５の最終接続時刻情報を、メール同期モジュール１２１から受信する処理と、５１６のメール同期モジュール１２１との送信および受信を担当するスレッドを生成する処理、および、５１７のスレッド終了待ち処理を実施する。
【００８７】
図６Ａ，図６Ｂは、メール同期モジュール１２１の処理５０７で生成した、送信用スレッドおよび受信用スレッドの詳細なフローである。
【００８８】
図６Ａは、送信用スレッドの処理で、６０１は同期データDB１２２のsyncdir、draftsおよびaddressdirサブフォルダ内で、前回の最終同期時刻以降に編集されたメッセージファイルおよびアドレス帳ファイルを検索する処理、６０２は処理６０１で検索されたファイル群をバッファに格納する処理、６０３は電子メールクライアント１０１にバッファ内容を送信する処理、６０４は送信用スレッドを消去する処理である。
【００８９】
図６Ｂは、受信用スレッドの処理で、６１１は電子メールクライアント１０１から受信したデータをバッファに格納する処理、６１２は処理６１１でバッファに格納したデータをメッセージデータとアドレス帳データに分解し、テンポラリディレクトリにファイルとして格納する処理である。
【００９０】
６１３から６１６はメッセージデータファイルに関する処理で、６１３は未処理メッセージがあるか確認する処理、６１４は未処理メッセージファイルを一つオープンする処理、６１５は処理６１４でオープンしたファイルからメッセージIDフィールドを抽出し、同期データDB１２２のsyncdirおよびdraftsサブフォルダ内のメッセージのメッセージIDと比較して、一致するメールメッセージを検索する処理、６１６は処理６１５の検索で一致した同期データDB１２２内のメッセージの書換え、および、検索にヒットしなかった場合に、同期データDB１２２内にメッセージを新規作成する処理である。
【００９１】
受信メールの場合、処理６１５で検索にヒットした場合には未読/既読等の状態情報フィールドの追記、変更が、ヒットしなかった場合には新規の持出情報の追加が、同期データDB１２２に対して行われることになる。新規作成メールの場合、検索にヒットした場合は最新ファイルへの書換えを、ヒットしなかった場合には新規の持出情報の追加が同期データDB１２２に対して行われることになる。
【００９２】
６１７から６１８は、同期データDB１２２内のアドレス帳ファイルに関する処理で、６１７は未処理アドレス帳ファイルがあるか確認する処理、６１８はアドレス帳ファイルを書き換える処理で、同名のファイルがない場合には新規追加となる。
【００９３】
６１９は受信用スレッドを消去する処理で、本処理を行う前にメール同期モジュール１２１内のすべてもメールメッセージの保存期限を確認し、期限を過ぎている場合には消去する処理を行ってもよい。
【００９４】
図７Ａ、図７Ｂは、電子メールクライアント１０１の処理５１６で生成した、送信用スレッドおよび受信用スレッドの詳細なフローである。ここで、電子メールクライアント１０１は電子メールメッセージを管理するフォーマットとしてMHフォルダ形式を用いているとして以下を記載しているが、他のメッセージ管理フォーマットを用いている場合でも受信用スレッドのメッセージ処理においてフォーマットを変換することにより、以下に示す処理と同等のことを実行することは当業者には容易である。
【００９５】
図７Ａは、送信用スレッドの処理で、７０１は電子メールクライアント１０１のローカルメールボックス１０３内で、前回の最終同期時刻以降に新たに受信された、もしくは編集されたメッセージファイルおよびアドレス帳ファイルを検索する処理、７０２は処理７０１で検索されたファイル群をバッファに格納する処理、７０３はメール同期モジュール１２１にバッファ内容を送信する処理、７０４は送信用スレッドを消去する処理である。処理７０３でバッファ内容を送信する前に、バッファデータを圧縮し、送信に必要なネットワーク帯域の削減、および送信に必要な時間を短縮するようにし、処理６１１において受信したデータをバッファに格納する際に受信データを伸長するようにしてもよい。
【００９６】
図７Ｂは、受信用スレッドの処理で、７１１はメール同期モジュール１２１から受信したデータをバッファに格納する処理、７１２は処理７１１でバッファに格納したデータをメッセージデータとアドレス帳データに分解し、テンポラリディレクトリにファイルとして格納する処理である。
【００９７】
７１３から７１６はメッセージデータファイルに関する処理で、７１３は、テンポラリディレクトリに未処理メッセージがあるか確認する処理、７１４は未処理メッセージファイルを一つオープンする処理、７１５は処理７１４でオープンしたファイルからメッセージIDフィールドを抽出し、ローカルメールボックス１０３にアクセスし、その中のメッセージのメッセージIDと比較して、一致するメールメッセージを検索する処理、７１６は、処理７１５で検索してヒットしたメッセージについて、ローカルメールボックス１０３内の未読/既読等の状態情報フィールドの追記、変更に伴う書換えを行う処理である。さらに、処理７１５で検索にヒットしなかった、モバイル端末で新規に作成されたメッセージに関して、電子メールサーバ１１０のメール転送エージェント１１１へのメール送信依頼処理を実施し、送信済みトレイ等にメールを格納する処理を行う。
【００９８】
７１７から７１８は、ローカルメールボックス１０３にアクセスして行うアドレス帳ファイルに関する処理で、７１７は未処理アドレス帳ファイルがあるか確認する処理、７１８はアドレス帳ファイルを書き換える処理で、同名のファイルがない場合には新規追加となる。
【００９９】
７１９は受信用スレッドを消去する処理で、本処理を行う前に同期データDB１２２内のすべてのメールメッセージの保存期限を確認し、期限を過ぎている場合には持出マークの消去処理を行ってもよい。
【０１００】
図５Ａから図７Ｂの処理は、電子メールクライアント１０１とメール同期モジュール１２１の間での同期処理であるが、図３に示すスマートフォン１５０の持出データ管理モジュール１５５とメール同期モジュール１２１の間でも同様の処理（ただし、ローカルメールボックス１０３を、持出メールボックス１５６と読み替える）を実施することにより、メールデータの同期を行うことが可能となる。
【０１０１】
また、モバイル端末への情報の持ち出しは、メール同期モジュール１２１を介して行われるため、持出データに関する情報をログとしてメール同期モジュール１２１に蓄積し、管理者に提示するインタフェースを設けてもよい。
【０１０２】
また、メール同期モジュール１２１と持出データ管理モジュール１５５との間でメッセージデータを同期する際、メール同期モジュール１２１がメッセージデータのMIMEヘッダを解析し、メッセージデータの添付ファイル部分の表示に必要なモバイルコードをモバイルコードDB１２３より取り出し、スマートフォンの持出メールボックス１５６内に保管するようにしてもよい。
【０１０３】
なお、モバイル端末上で新規にメールを作成する場合、ユーザの指示に従い添付ファイルを作成するためのモバイルコードをメール同期サーバより入手する。
【０１０４】
持ち出されたモバイルコードは、スマートフォン１５０の仮想化基盤１５７もしくは、タブレット端末１６０の仮想化基盤１６５上に展開し、電子メールクライアント１５３もしくは１６３において添付ファイルを閲覧する際に、添付ファイル用アプリケーション１５４もしくは１６４として利用できるようにしてもよい。
【０１０５】
図６および図７においては、電子メールを格納するフォーマットとしてMHフォルダ形式を拡張して実現しているが、他の電子メール格納フォーマットにおいても同様な拡張により実現することが可能である。たとえば、Maildir形式であった場合には、メッセージの格納されるフォルダディレクトリ名が異なっており、また電子メールの状態情報は、ファイル名に付加されるようになっている。これらは図６および図７で示したフローチャートを微調整することにより対応できることは容易である。
【符号の説明】
【０１０６】
１００…デスクトップ端末、
１０１…電子メールクライアント、
１０２…添付ファイル用アプリケーション、
１０３…ローカルメールボックス、
１１０…メールサーバ、
１１１…メール転送エージェント、
１１２…ユーザメールボックス、
１２０…メール同期サーバ、
１２１…メール同期モジュール、
１２２…同期データDB、
１３０…組織内ネットワーク、
１４０…インターネット、
１５０…スマートフォン、
１５１…インターネット接続用ネットワークインタフェース、
１５２…モバイル端末間連携用ネットワークインタフェース、
１５３…電子メールクライアント、
１５４…添付ファイル用アプリケーション、
１５５…持出データ管理モジュール、
１５６…持出メールボックス、
１６０…タブレット端末、
１６１…インターネット接続用ネットワークインタフェース、
１６２…モバイル端末間連携用ネットワークインタフェース、
１６３…電子メールクライアント、
１６４…添付ファイル用アプリケーション
【図１】
2013092850.tif 000003
【図２】
2013092850.tif 000004
【図３】
2013092850.tif 000005
【図４】
2013092850.tif 000006
【図５Ａ】
2013092850.tif 000007
【図５Ｂ】
2013092850.tif 000008
【図６Ａ】
2013092850.tif 000009
【図６Ｂ】
2013092850.tif 000010
【図７Ａ】
2013092850.tif 000011
【図７Ｂ】
2013092850.tif 000012