(57)【要約】【課題】複数の案件の日程調整を行う際の重複予約を防止する。【解決手段】プロセッサと、前記プロセッサに接続される記憶装置と、を有するスケジュール管理システムであって、前記記憶装置は、イベントの日程を調整するために送信される複数のメッセージの各々から抽出された一つ以上の日程が、前記各メッセージの識別情報に対応する未決定の日程として登録されたスケジュール情報を保持し、前記プロセッサは、いずれかの前記未決定の日程を新たに決定する情報を受信した場合、新たに決定した日程に対応するメッセージ以外の前記メッセージに対応する未決定のいずれかの日程が前記新たに決定した日程と重複するか否かを判定し、未決定のいずれかの日程が前記新たに決定した日程と重複する場合、前記重複する未決定の日程を通知する情報を出力する。【選択図】図２
2017059025.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、前記プロセッサに接続される記憶装置と、を有するスケジュール管理システムであって、
前記記憶装置は、イベントの日程を調整するために送信される複数のメッセージの各々から抽出された一つ以上の日程が、前記各メッセージの識別情報に対応する未決定の日程として登録されたスケジュール情報を保持し、
前記プロセッサは、
いずれかの前記未決定の日程を新たに決定する情報を受信した場合、新たに決定した日程に対応するメッセージ以外の前記メッセージに対応する未決定のいずれかの日程が前記新たに決定した日程と重複するか否かを判定し、
未決定のいずれかの日程が前記新たに決定した日程と重複する場合、前記重複する未決定の日程を通知する情報を出力することを特徴とするスケジュール管理システム。
【請求項２】
請求項１に記載のスケジュール管理システムであって、
前記スケジュール管理システムが送信する各メッセージは、各イベントの日程の候補のうち、ユーザが参加可能な一つ以上の日程を通知するメッセージであり、
前記プロセッサは、未決定のいずれかの日程が前記新たに決定した日程と重複する場合、前記重複する未決定の日程に対応する前記メッセージの送信先に、前記重複する未決定の日程における参加が不可となったことの通知を送信することを特徴とするスケジュール管理システム。
【請求項３】
請求項２に記載のスケジュール管理システムであって、
前記プロセッサは、
いずれかの前記メッセージに対応する前記一つ以上の未決定の日程のうちの一つを新たに決定した日程として指定する情報を受信した場合、前記新たに決定した日程に対応するメッセージ以外のいずれかの前記メッセージに対応する既に決定済みの日程が前記新たに決定した日程と重複するか否かを判定し、
前記既に決定済みの日程が前記新たに決定した日程と重複する場合、前記重複する既に決定済みの日程と前記新たに決定した日程とのいずれかの選択を求める情報を出力し、
前記新たに決定した日程が選択された場合、前記既に決定済みの日程に対応する前記メッセージの送信先に、前記既に決定済みの日程における参加が不可となったことの通知を送信することを特徴とするスケジュール管理システム。
【請求項４】
請求項３に記載のスケジュール管理システムであって、
前記プロセッサは、
前記既に決定済みの日程が前記新たに決定した日程と重複しない場合、前記新たに決定した日程と同一のメッセージに対応する他の全ての未決定の日程を前記スケジュール情報から削除し、
前記既に決定済みの日程が前記新たに決定した日程と重複し、かつ、前記新たに決定した日程が選択された場合、前記新たに決定した日程と同一のメッセージに対応する他の全ての未決定の日程、及び、前記既に決定済みの日程を前記スケジュール情報から削除し、
前記既に決定済みの日程が前記新たに決定した日程と重複し、かつ、前記既に決定済みの日程が選択された場合、前記新たに決定した日程と同一のメッセージに対応する他の全ての未決定の日程、及び、前記新たに決定した日程を前記スケジュール情報から削除することとを特徴とするスケジュール管理システム。
【請求項５】
請求項４に記載のスケジュール管理システムであって、
前記記憶装置は、日程を抽出するためのキーワード情報を保持し、
前記プロセッサは、前記スケジュール管理システムが送信する各メッセージの本文中の範囲を指定する情報を入力されると、前記指定された範囲から、前記キーワード情報に基づいて、前記一つ以上の日程を抽出して、前記各メッセージの識別情報に対応する未決定の日程として前記スケジュール情報に登録することを特徴とするスケジュール管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機を使用したスケジュールの管理技術に関する。
【背景技術】
【０００２】
スケジュールを自動化する技術として、特開２００６−５３７０５号公報（特許文献１）及び特開２０１０−１９１８１２号公報（特許文献２）に開示された技術がある。
【０００３】
特許文献１には、「予定日及び予定内容を備えた一又は二以上の予定情報を保有する電子メールを予定情報通知装置に配信するメール配信システムと、当該メール配信システムと通信回線を介して接続された一又は二以上の予定情報通知装置からなる予定情報通知システムであって、予定情報通知装置が、電子メールを受信すると、当該電子メールから予定情報を順次読み出して、各予定情報に対応する予定日及び予定内容を備えた転記データを作成し、スケジュール部へ出力するメーラと、転記データをスケジュールデータへ登録して、このスケジュールデータにもとづく予定情報の通知を実行するスケジュール部とを備えたことを特徴とする予定情報通知システム。」と記載されている。
【０００４】
特許文献２には、「他の端末との間で無線通信によるデータの送受信を行う通信処理部と、スケジュール帳への、スケジュール情報の登録又は読み出しを行うスケジュール機能部とを備えた。また、無線通信を行う通信相手の宛先情報と、スケジュール帳に登録させたいスケジュール情報を含んだ予約要求を生成して、予約要求を通信処理部に出力するメッセージ生成部と、通信処理部を介して受信した予約要求の中からスケジュール情報を抽出するメッセージ解析部とを備えた。その上で、ユーザより予約要求を承諾する指示が入力された場合に、メッセージ解析部で抽出されたスケジュール情報を、スケジュール機能部に出力してスケジュール情報をスケジュール帳に登録させるようにした。」と記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−５３７０５号公報
【特許文献２】特開２０１０−１９１８１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来、スケジュールを決定する際にはＰＣ内にあるスケジュール表、またはスケジューラ等にスケジュール情報を記載して管理するのが一般的である。仕事上の関係者や友人に対する打合せ、面会、会合等の集合時間、場所の約束は、電話、電子メール、またはＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋ  Ｓｅｒｖｉｃｅ）等を通して調整される。ところが、約束の予約を行う手段として電話を使用する場合には、発信した際に、受信者が電話に出られる状況であることが必要であり、予約を取りたい相手との電話が繋がらない限り、予定を確定できないという問題があった。仮に電話が繋がって予約を確定できたとしても、予約を受けた相手は、ＰＣ内のスケジューラ等に手動で予定を記入する必要があり、手間がかかるという問題もあった。この手間は、電子メールを通して約束の依頼が送信されてきた場合にも同様に発生する。またＳＮＳで連絡を取り合う場合には、第三者にも情報を見られてしまう可能性も考慮に入れなければならない。このため、例えば特許文献１には、電子メール中に記載された予定情報を、スケジュール帳に自動的に登録する技術が記載されている。特許文献２ではメール毎にスケジュール帳へ記載するか否かを確認し、選択することが可能である。
【０００７】
しかし、多数のメールで会議等の連絡が来る場合、それぞれのメールの中に候補日が複数記載されていることがある。その場合、複数候補日が記載されているメールへの返信として出席可能な日程を連絡するのが一般的である。多数のメールに対して上記のように出席可能日を連絡すると、スケジュールが重なってしまう場合がある。出席可能な日程を連絡した時点では仮のスケジュールであるため、重なっていたとしても特に問題とはならない。しかしながら初めに会議等の日程が決定したメールを受信し、そのメールに記載してある会議日程をスケジューラへ記録し、その後別のメールを受信し、そのメールに記載されている会議日程も初めのメールのスケジュール情報と同じ時間である場合、既に初めのメールに従って決定した日程と重複予約となってしまうことが課題である。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、本発明の一形態は、プロセッサと、前記プロセッサに接続される記憶装置と、を有するスケジュール管理システムであって、前記記憶装置は、イベントの日程を調整するために送信される複数のメッセージの各々から抽出された一つ以上の日程が、前記各メッセージの識別情報に対応する未決定の日程として登録されたスケジュール情報を保持し、前記プロセッサは、いずれかの前記未決定の日程を新たに決定する情報を受信した場合、新たに決定した日程に対応するメッセージ以外の前記メッセージに対応する未決定のいずれかの日程が前記新たに決定した日程と重複するか否かを判定し、未決定のいずれかの日程が前記新たに決定した日程と重複する場合、前記重複する未決定の日程を通知する情報を出力することを特徴とする。
【発明の効果】
【０００９】
本発明の一形態によれば、複数のメッセージからスケジュール情報を取り出し、それぞれのスケジュールの出席可能な時間から仮スケジュールを登録し、その後本決定したメッセージからスケジュールを決定したとしても、重複予約をすることなく、どのメッセージのスケジュール情報に出席するかを決定することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態のスケジュール管理システムを実現するパーソナルコンピュータのハードウェア構成を示すブロック図である。
【図２】本発明の実施形態のＰＣのメモリ内でスケジュール処理を行う際の機能ブロック図である。
【図３】本発明の実施形態のＰＣが保持するキーワードテーブルの一例を示す説明図である。
【図４】本発明の実施形態における仮予約時のスケジュール例の説明図である。
【図５】本発明の実施形態における本予約時のスケジュール例の説明図である。
【図６】本発明の実施形態における仮予約の際のスケジュール情報の一例の説明図である。
【図７】本発明の実施形態のＰＣが実行するメッセージ送信処理のフローチャートである。
【図８】本発明の実施形態のＰＣが実行するメッセージ作成処理のフローチャートである。
【図９】本発明の実施形態のＰＣが実行するメッセージ解析処理のフローチャートである。
【図１０】本発明の実施形態のＰＣが実行するメッセージ受信処理のフローチャートである。
【図１１】本発明の実施形態のＰＣが実行するメッセージ確認処理のフローチャートである。
【図１２】本発明の実施形態のＰＣが返信メッセージを作成するときに出力する第１のメッセージ例の説明図である。
【図１３】本発明の実施形態のＰＣが返信メッセージを作成するときに出力する第２のメッセージ例の説明図である。
【図１４】本発明の実施形態のＰＣが決定した日程を連絡するメッセージを受信したときに出力する第１のメッセージ例の説明図である。
【図１５】本発明の実施形態のＰＣが、既に出席可能と返信した日程を取り消すために自動送信するメッセージ例の説明図である。
【図１６】本発明の実施形態のＰＣが決定した日程を連絡するメッセージを受信したときに出力する第２のメッセージ例の説明図である。
【図１７】本発明の実施形態のＰＣが、決定した日程に出席できなくなったことを連絡するために自動送信するメッセージ例の説明図である。
【図１８】本発明の実施形態においてスケジュールが重複した場合にＰＣが表示するポップアップの例の説明図である。
【発明を実施するための形態】
【００１１】
上記のような課題は、全てのメッセージに対してどの日程で出席可能であるかを記憶しておき、出席が不可能になったときにはその旨をメッセージとして送付することによって解決することが可能ではあるが、全てのメッセージのどこにスケジュール情報が載っていたのかを記憶しておくことは不可能である。また、同時刻にスケジュール情報が重なってしまった場合、出席が不可能となったことをそれぞれのメッセージに連絡することは時間がかかってしまう。
【００１２】
そこで、本発明の実施形態のスケジュール管理システムは、スケジュール情報が載ったメッセージへ返信する際に、スケジュール情報があることをチェックしておき、参加可能である日程を仮スケジュールとして保存しておく。その後、スケジュールが確定したメッセージを受け取った際に、メッセージ内に記載されている確定情報をスケジューラへ反映し、仮スケジュールで保存されていた同時刻のスケジュール情報を持っているメッセージに対し、その時刻の参加が不可能になってしまったことを自動返信するようにすればよい。
【００１３】
以下、具体的な登録方法について説明する。
【００１４】
本実施形態では、会議等の日程調整を行う際に複数候補日が記載されたメッセージを受け取り、返信として参加可能な日程を記載し、仮スケジュールに登録し、参加不可能となってしまった場合には、仮スケジュールと同期して参加不可能となってしまったメッセージへ自動返信を行うことによってスケジュールが重なってしまうことを避けることができる。
【００１５】
まず、ユーザは、メッセージを受信した後、返信する際にメッセージ内の仮スケジュールとして登録したい行数にチェックをする。スケジュール管理システムは、チェックした行数をメッセージ解析部でキーワードテーブルと対比し、キーワードテーブルの日付情報を確認する。キーワードテーブルの日付情報を仮スケジュール予約部が仮予約する。ここで、仮予約とは、複数の日程の候補のうち、ユーザが出席可能な一つ以上の日程をスケジュール情報として登録したものであり、会議等がそれらのうちどの日程で開催されるかはまだ決まっていない。仮スケジュール予約部は返信するメッセージごとに仮予約をするため、この時点では複数の会議等のスケジュールが重複する可能性がある。しかし、この時点ではまだいずれの日程も決定していないため、重複があっても問題はない。
【００１６】
次にスケジュールが本決定したことを通知するメッセージが来た際に、ユーザはメッセージを確認し、スケジュール情報としてスケジューラへ登録したい行数にチェックを入れる。チェックを入れた後、メッセージ解析部がキーワードテーブルで日時情報をチェックし、スケジューラへ反映する。この際、仮スケジュールとして登録されているスケジュール情報のうち、本決定以外の仮スケジュールを持っているメッセージについてそれぞれこの時間の会議出席が不可能になったことを自動で送信する。
【００１７】
しかしながら、その後別のメッセージで初めに決定した時間と同じ時間で会議等が決定してしまうこともある。その場合にはメッセージ受信部がメッセージを受信し、確認してスケジューラへ登録するが、既にスケジュール情報が記載されているため、スケジュール情報が重複してしまっていることをポップアップとして画面上へ連絡する。ユーザは、重複しているスケジュールのうち、どちらの優先度が高いかを決定する。もし後からきたメッセージの優先度が高い場合、スケジューラのスケジュール情報を変更する。スケジューラのスケジュール情報を変更した場合、スケジュール管理システムは、元々予定していたスケジュール情報を持ったメッセージに対して、出席が不可能となってしまったことを自動で返信する。
【００１８】
以下、適宜図面を参照しながら本発明を実施するための形態を説明する。
【００１９】
図１は、本発明の実施形態のスケジュール管理システムを実現するパーソナルコンピュータ（ＰＣ）１のハードウェア構成を示すブロック図である。
【００２０】
ＰＣ１は、さまざまな演算処理を担当するＣＰＵ１０（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＣＰＵ１０で処理する情報の受け渡しと保管を行うメモリ２０と、図形や画面のデータを処理し、ディスプレイに表示するグラフィックボード３０と、作成したデータを保存するハードディスク４０と、ＣＤ（Ｃｏｎｐａｃｔ  Ｄｉｓｋ）またはＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）といった光ディスクの再生および記録を行う光学ディスク５０と、上記パーツを搭載するマザーボード６０とを内蔵している。このように、ＰＣ１は一般的な計算機と同等のハードウェアを有する。本実施形態のスケジュール管理システムの機能はＰＣ１のメモリ２０に格納されたプログラムをＣＰＵ１０が実行することによって実現される。以下、それらに関して説明する。
【００２１】
図２は、本発明の実施形態のＰＣ１のメモリ２０内でスケジュール処理を行う際の機能ブロック図である。
【００２２】
図２のメッセージ作成部１１０、メッセージ解析部１２０、仮スケジュール予約部１４０、メッセージ送信部１５０、メッセージ受信部１６０及びメッセージ確認部１７０は、ＣＰＵ１０がメモリ２０に格納されたプログラムを実行することによって実現される機能ブロックである。したがって、以下の説明において上記の各部が実行する処理は、実際にはＣＰＵ１０がプログラムに記述された命令に従って実行する。
【００２３】
ハードディスク４０内の受信メッセージフォルダ１００では受信したメッセージを保存しておく。ユーザが受信メッセージフォルダ１００から返信したいメッセージを選択すると、メッセージ作成部１１０は、返信するメッセージを作成する。この際にスケジュール情報がある場合には情報がある行数にユーザがチェックを入れる。メッセージ作成部１１０は、作成したメッセージをメッセージ解析部１２０に送付する。
【００２４】
メッセージ解析部１２０は、ユーザがチェックを入れた行とキーワードテーブル１３０の情報とを比較し、キーワードテーブル１３０を参照してスケジュール情報の時刻を取り出し、仮スケジュール予約部１４０がスケジュール情報を仮予約する。この際に、仮スケジュールで出席可能な時間帯が複数ある場合、それらの全てを仮スケジュールとして登録し、登録後、メッセージ送信部１５０が、メッセージを送信する。
【００２５】
メッセージ受信部１６０は、メッセージを受信し、メッセージ確認部１７０は、受信したメッセージ内にスケジュール情報があるか否かを確認する。スケジュール情報がある場合にはスケジュール情報が含まれる行数にユーザがチェックを入れる。メッセージ確認部１７０は、確認したメッセージをメッセージ解析部１２０へ送付する。
【００２６】
メッセージ解析部１２０は、送付されたメッセージをキーワードテーブル１３０と比較し、スケジュール情報を取り出し、スケジューラ１８０へ登録するとともに、メッセージを受信メッセージフォルダ１００へ送付する。
【００２７】
図３は、本発明の実施形態のＰＣ１が保持するキーワードテーブル１３０の一例を示す説明図である。
【００２８】
キーワードテーブル１３０は、受信したメッセージからスケジュール情報を抽出するために参照されるテーブルであり、スケジュール情報に含まれる日付の記載形式を示す日付情報２００と、スケジュール情報に含まれる時間の記載形式を示す時間情報２１０とを含む。
【００２９】
例えば、受信したメッセージが、ある案件に関する打ち合わせの開催日程を調整するためのものであり、開催日程の候補の一つが「２０１５年３月６日」である場合、そのメッセージにその候補が「２０１５年３月６日」と記載されることもあり得るが、西暦の年数を省略して「３月６日」のように記載されること、さらに月も省略して「６日」のように記載されること、または日本語の「年」などの文字を省略して「２０１５／３／６」のように記載されることもあり得る。このように、考え得る種々の記載形式のキーワードが日付情報２００として保持される。
【００３０】
同様に、時間を記載する形式としては、「時間」と「分」を「：」で分割して記載する形式、「午前」または「午後」を記載する形式、３０分を「半」と記載する形式等が考えられる。このため、それらの種々の記載形式のキーワードが時間情報２１０として保持される。ただし、図３に記載するキーワードは一例であり、これに限ったものではない。
【００３１】
図４は、本発明の実施形態における仮予約時のスケジュール例の説明図である。
【００３２】
図４には、メッセージａ及びメッセージｂから抽出された日程が仮予約された例を示す。ここで、メッセージａ及びメッセージｂは、それぞれ別の案件に関する打ち合わせの日程調整を依頼するメッセージへの返信であり、ユーザが出席可能であると回答した日程の情報を含む。これらのメッセージから、ユーザが出席可能であると回答した全ての日程が抽出され、仮予約される。
【００３３】
図４に示すスケジュール例（仮予約）２２０では、３／６の１６：００から１７：００がメッセージａに基づいて仮予約されている。３／６の１５：３０から１７：００及び１８：３０から２０：００がメッセージｂに基づいて仮予約されている。３／７の１３：３０から１４：３０がメッセージａに基づいて仮予約されている。３／７の１３：００から１４：３０がメッセージｂに基づいて仮予約されている。
【００３４】
この例では、メッセージａに基づく３／６の１６：００から１７：００の仮予約と、メッセージｂに基づく３／６の１５：３０から１７：００の仮予約の一部とが重複している。この場合、先に受信したメッセージａに基づく仮予約が「予約１」として、後に受信したメッセージｂに基づく仮予約が「予約２」として登録される。３／７の仮予約の重複も同様である。
【００３５】
図５は、本発明の実施形態における本予約時のスケジュール例の説明図である。
【００３６】
図５に示す本予約時のスケジュール例（本予約）２３０は、図４に示す仮予約が行われた後、メッセージｂに基づく３／６の１５：３０から１７：００の日程に本予約が決まった際の例である。メッセージｂに基づく３／６の１５：３０から１７：００が本予約となったことによって、同じメッセージｂに基づく３／６の１８：３０から２０：００及び３／７の１３：００から１４：３０の仮予約は不要となったため、削除される。一方、この例において、メッセージａに基づく仮予約はまだ残っており、どちらも本予約として決定される可能性があるが、３／６の仮予約は、メッセージｂに基づく本予約と重複することによって参加不可となるため、そのことを示す情報（図５の例では取り消し線）が追加されてもよい。
【００３７】
図６は、本発明の実施形態における仮予約の際のスケジュール情報２４０の一例の説明図である。
【００３８】
スケジュール情報２４０は、メモリ２０に格納される情報であり、日程の情報の抽出元である各メッセージを識別するメッセージＩＤ２４１、各メッセージに付けられたメッセージタイトル２４２、各メッセージの本文中に含まれる日程の記載個所を特定する行数２４３、及び、それぞれの記載個所（行）からキーワードテーブル１３０に基づいて抽出された日付情報２４４及び時間情報２４５を含む。メッセージＩＤ２４１は、メッセージタイトル２４２に対応付けて採番される。
【００３９】
図６には一つのメッセージ（メッセージａ）から抽出された複数の日程がスケジュール情報２４０に登録された例を示したが、実際には、複数のメッセージ（例えばメッセージａに加えて、後述するメッセージｂ等）の各々から一つ又は複数個ずつ抽出された日程がスケジュール情報２４０に登録される。上記のようにそれぞれの日程をそれが抽出されたメッセージの識別情報（例えばメッセージＩＤ２４１）と対応付けて登録することによって、スケジュール情報２４０に含まれる任意の二つの日程が、同一のメッセージから抽出されたものか否か（すなわち同一の案件に関する日程であるか否か）を判定することができる。
【００４０】
図６では省略されているが、スケジュール情報２４０は、それぞれのメッセージの送信先を示す情報（例えば宛先メールアドレス等）を含んでもよい。
【００４１】
次に、会議の予約をする際に仮のスケジュールを作成することで、スケジュール上で重複することのないような設定を行う方法について説明する。
【００４２】
図７は、本発明の実施形態のＰＣ１が実行するメッセージ送信処理のフローチャートである。
【００４３】
この処理は、会議等の時間連絡を受け、そのメッセージに返信する際に実行される。処理開始（ステップ３００）後、受信メッセージフォルダ１００に格納された受信メッセージから、返信するメッセージを選択（ステップ３１０）する。この選択は、ユーザがＰＣ１に入力した指示に従って、メッセージ作成部１１０等が行ってもよい。
【００４４】
次に、メッセージ作成部１１０が、スケジュール情報を含む行をチェックするメッセージ作成処理を行う（ステップ３２０）。この処理の詳細は、図８を参照して後述する。
【００４５】
次に、メッセージ作成部１１０がメッセージ解析部１２０へメッセージを送付し、メッセージ解析部１２０がスケジュール情報２４０を取り出すメッセージ解析処理を行う（ステップ３３０）。この処理の詳細は、図９を参照して後述する。
【００４６】
メッセージ解析部１２０は、解析処理から、メッセージとスケジュール情報２４０とを仮スケジュール予約部１４０へ送付する（ステップ３４０）。仮スケジュール予約部１４０は、スケジュール情報２４０が送付されたか否かを確認する（ステップ３５０）。スケジュール情報が送付されていない場合、ステップ３３０でスケジュール情報２４０が抽出されなかった、すなわち、作成されたメッセージに仮予約の対象となる日程が含まれていなかったため、仮予約の作成は行われずに、処理はステップ３７０に進む。スケジュール情報２４０が送付されている場合にはそのスケジュール情報２４０に基づいて仮スケジュール予約部１４０が仮予約を作成する（ステップ３６０）。
【００４７】
仮予約の作成が完了後、メッセージ送信部１５０がメッセージを送付し（ステップ３７０）、処理終了（ステップ３８０）となる。
【００４８】
図８は、本発明の実施形態のＰＣ１が実行するメッセージ作成処理のフローチャートである。
【００４９】
処理開始（ステップ４００）後、メッセージ作成部１１０は、受信メッセージフォルダ１００から返信するメッセージを選択する（ステップ４１０）。ステップ３１０で既にメッセージが選択されている場合には、ステップ４１０は省略される。
【００５０】
次に、メッセージ作成部１１０は、ステップ４１０で選択されたメッセージを表示する（ステップ４２０）。次に、メッセージ作成部１１０は、返信メッセージを作成する（ステップ４３０）。例えば、ユーザが表示されたメッセージに対する変更の指示をＰＣ１に入力し、メッセージ作成部１１０がその指示に従って表示されたメッセージを変更することによって返信メッセージを作成してもよい。
【００５１】
次に、メッセージ作成部１１０は、返信メッセージ内にスケジュール情報２４０があるか否かを確認し（ステップ４４０）、スケジュール情報２４０がある場合には、該当する行数のスケジュールチェックにチェックを行い（ステップ４５０）、返信メッセージにスケジュール情報２４０がない場合には、特になにも行わず、処理終了となる（ステップ４６０）。作成される返信メッセージ及びそれに対するチェックの具体例については、図１２等を参照して後述する。
【００５２】
図９は、本発明の実施形態のＰＣ１が実行するメッセージ解析処理のフローチャートである。
【００５３】
処理開始（ステップ５００）後、メッセージ解析部１２０は、メッセージ作成部１１０による返信メッセージの作成が完了していることを確認し（ステップ５１０）、作成された返信メッセージの先頭行を参照する（ステップ５２０）。次に、メッセージ解析部１２０は、参照している行のスケジュールチェック欄にチェックが入力されているか否かを確認し（ステップ５３０）、入力されている場合にはキーワードテーブル１３０を参照して当該行から日付情報及び時間情報を抽出し（ステップ５４０）、それらをスケジュール情報２４０として保存する（ステップ５５０）。次に、メッセージ解析部１２０は、参照している行がメッセージの最終行か否かを確認し（ステップ５６０）、最終行でなければ次の行を参照（ステップ５７０）し、その行についてステップ５３０以下の処理を実行する。参照している行が最終行の場合には処理を終了する（ステップ５８０）。
【００５４】
図１０は、本発明の実施形態のＰＣ１が実行するメッセージ受信処理のフローチャートである。
【００５５】
処理開始（ステップ６００）後、メッセージ受信部１６０はメッセージを受信する（ステップ６１０）まで待機し、メッセージ受信部１６０がメッセージを受信すると、メッセージ確認部１７０がメッセージの確認を行う（ステップ６２０）。メッセージ確認部１７０は、メッセージ本文中にスケジュール情報２４０があるか否か及びスケジュール情報２４０が本決定であるか否かを確認する。この処理の詳細は図１１を参照して後述する。
【００５６】
その後、メッセージ確認部１７０はメッセージ解析部１２０へメッセージを送付し（ステップ６３０）、メッセージ解析部１２０は図９のメッセージ解析処理を行う（ステップ６４０）。この場合、ステップ５１０は省略され、メッセージ確認部１７０から送られたメッセージを対象としてステップ５２０以下の処理が実行される。
【００５７】
メッセージ解析後、メッセージ解析部１２０は、メッセージとスケジュール情報２４０を仮スケジュール予約部１４０へ送付する（ステップ６５０）。仮スケジュール予約部１４０は、送付された情報にスケジュール情報２４０が含まれるか否かを確認し（ステップ６６０）、スケジュール情報２４０がない場合には受信したメッセージを一般的なメッセージとして受信メッセージフォルダ１００へ送付し（ステップ６７０）、処理を終了する（ステップ７９０）。
【００５８】
送付された情報にスケジュール情報２４０が含まれる場合には、仮スケジュール予約部１４０は、スケジューラ１８０へスケジュール情報を登録する指示を送信する（ステップ６８０）。次に、スケジューラ１８０は、登録するように指示されたスケジュール情報と重複する本予約が既に登録されているか否かを確認する（ステップ６９０）。
【００５９】
既に重複する本予約が登録されている場合には、仮スケジュール予約部１４０は、ポップアップによってどちらのスケジュールを優先するかを確認する旨のメッセージを出力し、そのメッセージに対してユーザが優先したいスケジュール登録情報を選択する情報を入力する（ステップ７００）。
【００６０】
仮スケジュール予約部１４０は、選択されたスケジュールに基づいて、現在登録されている予約情報からの変更の有無を確認する（ステップ７１０）。具体的には、既に登録されている予約情報に含まれるスケジュールが選択された場合、予約情報は変更されず、これから登録しようとするスケジュール情報が選択された場合、既に登録されているスケジュールを取り消すために予約情報が変更される。
【００６１】
予約情報に変更がある場合には、仮スケジュール予約部１４０は、変更前の（すなわち既に登録されている本予約の）スケジュールへ出席不可となってしまったことを自動連絡する（ステップ７２０）。自動連絡後、仮スケジュール予約部１４０は、変更前スケジュールを削除することで不要な情報をなくす（ステップ７３０）。その後、仮スケジュール予約部１４０は、選択されたスケジュールを新たな本予約として予約情報に登録し（ステップ７３５）、仮予約となっている該当メッセージのスケジュール（すなわち選択されたスケジュールと同一案件の別の日程の仮予約）を削除し（ステップ７４０）、メッセージを受信メッセージフォルダ１００へ送付し（ステップ７８０）、処理終了となる（ステップ７９０）。
【００６２】
ステップ６９０において、スケジューラ１８０に重複する本予約が登録されていない場合、仮スケジュール予約部１４０は、仮予約となっている該当メッセージのスケジュール（すなわちこれから登録しようとするスケジュールと同一案件の別の日程の仮予約）を削除し（ステップ７５０）、これから登録しようとするスケジュールが、それと別の案件の仮予約のいずれかと重複するか否かを確認する（ステップ７６０）。
【００６３】
重複する仮予約がある場合には、仮スケジュール予約部１４０は、重複している仮予約のメッセージＩＤ２４１を検索し、該当するメッセージへ予約が埋まってしまったこと（つまり当該案件の打ち合わせ等に出席できないこと）を返信する（ステップ７７０）。重複する仮予約がない場合には仮スケジュール予約部１４０は特になにもすることなく、受信したメッセージを受信メッセージフォルダ１００へ送付して（ステップ７８０）処理終了となる（ステップ７９０）。
【００６４】
ステップ７１０において予約情報に変更がない場合、仮スケジュール予約部１４０は、選択されなかったスケジュールの仮予約及びそれと同一案件の全ての仮予約を削除して（ステップ７１５）、ステップ７８０に進む。この場合、ステップ６５０で送付されたスケジュール（すなわち新たに決定した日程）は結局本予約として登録されないが、そのスケジュールの打ち合わせ等に出席できないことは、それと重複する本予約が登録されたときにステップ７７０において通知済みであるため、ステップ７１５で改めて通知する必要はない。
【００６５】
なお、ステップ７１５、７３０、７４０及び７５０における日程の削除は、日程の予約を無効化する処理の一例であり、削除の代わりに当該日程が無効になったことを示す情報を付加するなどの方法を採用してもよい。
【００６６】
図１１は、本発明の実施形態のＰＣ１が実行するメッセージ確認処理のフローチャートである。
【００６７】
この処理は、図１０の受信処理のステップ６４０において、メッセージ確認部１７０によって実行される。処理開始（ステップ８００）後、メッセージ受信部１６０はメッセージを受信するまで待機し（ステップ８１０）、メッセージを受信したことをトリガとしメッセージ確認部１７０へメッセージを送付する（ステップ８２０）。ステップ６１０でメッセージの受信が確認されている場合には、ステップ８１０は省略される。
【００６８】
次に、メッセージ確認部１７０は、受信メッセージの本文中にスケジュール情報が含まれるか否かを確認し（ステップ８３０）、スケジュール情報が含まれる場合にはユーザが該当行のスケジュールチェック欄にチェックを入力する（ステップ８４０）。スケジュール情報が含まれない場合にはメッセージ確認部１７０はステップ８４０を実行しない。
【００６９】
次に、メッセージ確認部１７０は、スケジュール情報が本予約の決定か否かを判定し（ステップ８５０）、本予約の決定であればユーザが当該決定された本予約が記載された行の本決定フラグにチェックを入力し（ステップ８６０）、処理を終了する（ステップ８７０）。
【００７０】
以下、本発明の実施形態のＰＣ１が上記の処理を実行する際に出力する表示データの例を説明する。これらの表示データは、グラフィックボード３０を介して表示装置（図示省略）に出力される。
【００７１】
図１２は、本発明の実施形態のＰＣ１が返信メッセージを作成するときに出力する第１のメッセージ例の説明図である。
【００７２】
図１２に示す返信メッセージ例９００は、図７〜図９の処理で作成及び送信される返信メッセージの一例であり、具体的には、ある案件（Ｃ案件）に関する打ち合わせの日程調整を依頼するメッセージへの返信であるメッセージａを作成するときに表示されるメッセージの一例である。返信メッセージ例９００に含まれる件名９０１、送信者９０２、受信者９０３及び本文９０４等は一般的なメッセージと同等である。一般的なメッセージと異なる点は、行番号９０５、スケジュールチェックするためのチェックボックス９０６及び本決定フラグ用のチェックボックス９０７がある点である。
【００７３】
行番号９０５は本文と内容に付随している。スケジュールチェックのためのチェックボックス９０６は、本文中の各行に対応して表示される。本文中のスケジュール内容が記載されている行に対応するチェックボックス９０６にユーザ（この例では返信メッセージの送信者ＡＡＡ）がチェックを入力すると（ステップ４５０）、メッセージ解析部１２０が、その行をキーワードテーブル１３０と照らし合わせてスケジュール情報を抽出する（ステップ５３０〜５５０）。本決定フラグのためのチェックボックス９０７は、メッセージ本文中に記載されているスケジュール情報が本予約として決定された場合に使用される。
【００７４】
図１２の例では、ユーザが受信した案件Ｃの打ち合わせの日程調整を依頼するメッセージに三つの候補日程２０１５／３／６  １６：００−１７：００、２０１５／３／７  １０：００−１１：００及び２０１５／３／７  １３：３０−１４：３０が記載され、ユーザがそれらのうち２０１５／３／６  １６：００−１７：００及び２０１５／３／７  １３：３０−１４：３０に関しては出席可能である旨を回答する返信メッセージの例を示す。行番号「７」及び行番号「９」に出席可能なスケジュール情報が記載されているため、ユーザは、行番号「７」と行番号「９」のスケジュールチェックのチェックボックス９０６にチェックを入れる。一方、２０１５／３／７  １０：００−１１：００については参加不可のため、仮スケジュールとして登録の必要がないので、そのスケジュールが記載された行番号「８」のスケジュールチェックのチェックボックスにはチェックを入れない。
【００７５】
次に、図１２に示すように２候補日についてスケジュールチェックがついているため、メッセージ解析部１２０は、それらの行の文字列とキーワードテーブル１３０とを照らし合わせ、図６のようなスケジュール情報２４０を取り出す。この際にメッセージ解析部１２０はメッセージタイトル９０１に基づいてメッセージタイトル２４２を付与し、このメッセージタイトル２４２に対応するメッセージＩＤ２４１を「メッセージａ」と付与する。
【００７６】
仮スケジュール予約部１４０は、図６のスケジュール情報２４０に基づいて図４のような仮スケジュールを作成する（ステップ３６０）。この例では、メッセージａに基づき、２０１５／３／６  １６：００−１７：００及び２０１５／３／７  １３：３０−１４：３０が仮予約される。
【００７７】
なお、行番号９０５、チェックボックス９０６及びチェックボックス９０７は、仮予約を作成するために使用するものであるため、仮スケジュール予約部１４０が仮予約を作成した後、メッセージ送信部１５０がメッセージａを送信するとき（ステップ３７０）には削除してもよい。後述する図１３の例でも同様である。
【００７８】
図１３は、本発明の実施形態のＰＣ１が返信メッセージを作成するときに出力する第２のメッセージ例の説明図である。
【００７９】
図１３に示す返信メッセージ例９１０は、図１２に示す返信メッセージ例９００と同様に、図７〜図９の処理で作成及び送信される返信メッセージの一例であるが、図１２に示すものとは別の案件（Ｅ案件）に関する打ち合わせの日程調整を依頼するメッセージへの返信であるメッセージｂの一例である。
【００８０】
図１３の返信メッセージ例９１０も、図１２の返信メッセージ例９００と同様に、件名９１１、送信者９１２、受信者９１３、本文９１４、行番号９１５、スケジュールチェックするためのチェックボックス９１６、及び本決定フラグ用のチェックボックス９１７を含む。この返信メッセージ例９１０についても、図１２と同様の処理が行われる。この例では、候補として挙げられた三つの日程全てに出席可能であるため、図４に示すように２０１５／３／６  １５：３０−１７：００、１８：３０−２０：００、及び２０１５／３／７  １３：００−１４：３０が仮予約される。
【００８１】
図１４は、本発明の実施形態のＰＣ１が決定した日程を連絡するメッセージを受信したときに出力する第１のメッセージ例の説明図である。
【００８２】
図１４に示すメッセージ例９２０は、ＰＣ１が図１２に示すメッセージａ及び図１３に示すメッセージｂを送信した後、メッセージｂに対して日程が決定したことを連絡するメッセージを受信した際に表示されるメッセージの一例である。図１４のメッセージ例９２０も、図１２〜図１３の例と同様に、件名９２１、送信者９２２、受信者９２３、本文９２４、行番号９２５、スケジュールチェックするためのチェックボックス９２６、及び本決定フラグ用のチェックボックス９２７を含む。
【００８３】
この例では、本文９２４の７行目に登録すべきスケジュール情報が含まれているため、ユーザは、その行のスケジュールチェックのためのチェックボックス９２６にチェックを入力し、さらに、このメッセージが本決定のメッセージであるため、７行目の本決定フラグのチェックボックス９２７にチェックを入れる。この例では、メッセージｂのスケジュール情報が本決定となるため、図４の仮予約は図５のように変更される。
【００８４】
具体的には、２０１５／３／６  １５：３０−１７：００が本予約となるため、重複しているメッセージａに基づく２０１５／３／６  １６：００−１７：００の仮予約には出席不可となることを示す情報が追加され、出席不可となる旨のメッセージがメッセージａの送信先へ自動送信される（ステップ７６０、７７０）。また、メッセージｂの本決定以外の仮予約されたスケジュールである２０１５／３／６  １８：３０−２０：００及び２０１５／３／７  １３：００−１４：３０は不要となるため、削除される（ステップ７５０）。
【００８５】
図１５は、本発明の実施形態のＰＣ１が、既に出席可能と返信した日程を取り消すために自動送信するメッセージ例の説明図である。
【００８６】
具体的には、図１５に示すメッセージ例９３０は、Ｃ案件について２０１５／３／６  １６：００−１７：００及び２０１５／３／７  １３：３０−１４：３０に出席可能であることを連絡するメッセージａを送信した後、Ｅ案件について２０１５／３／６  １５：３０−１７：００の日程が決定したことを連絡するメッセージ（図１４）を受信し、その結果、Ｃ案件については２０１５／３／６  １６：００−１７：００に出席不可となったことを連絡するために自動送信される（ステップ７７０）。自動返信の対象となるメッセージはスケジュール情報２４０のメッセージＩＤに基づいて選択される。
【００８７】
図１５のメッセージ例９３０も、図１２〜図１４の例と同様に、件名９３１、送信者９３２、受信者９３３及び本文９３４を含む。メッセージの本文９３４の内容は任意ではあるが、少なくともスケジュール情報２４０から特定される出席不可となった時間を含む。
【００８８】
図１６は、本発明の実施形態のＰＣ１が決定した日程を連絡するメッセージを受信したときに出力する第２のメッセージ例の説明図である。
【００８９】
図１６に示すメッセージ例９４０は、ＰＣ１が図１２に示すメッセージａ及び図１３に示すメッセージｂを送信した後、図１４に示すメッセージを受信して、メッセージｂに関する日程が決定した後、さらに、メッセージａに関する日程が決定したことを受信したときに表示されるメッセージの一例である。この例では、メッセージｂに関する日程が決定した結果、メッセージａに関して出席可能であった二つの日程のうち一方が出席不可となり、その旨を連絡するメッセージ（図１５）が自動送信されたにも関わらず、その出席不可となった日程が開催日として決定されている。
【００９０】
図１６のメッセージ例９４０も、図１２〜図１４の例と同様に、件名９４１、送信者９４２、受信者９４３、本文９４４、行番号９４５、スケジュールチェックするためのチェックボックス９４６、及び本決定フラグ用のチェックボックス９４７を含む。図１６の例では、受信したメッセージには決定した日程を通知するためのスケジュール情報が含まれるため、メッセージ確認部１７０が実行するメッセージ確認処理において、ユーザが当該スケジュール情報を含む行（図１６の例では第８行）のスケジュールチェックのためのチェックボックス９４６にチェックを入力し（ステップ８３０〜８４０）、さらにこれが本決定であるため、本決定フラグ用のチェックボックス９４７にもチェックを入力する（ステップ８５０〜８６０）。
【００９１】
スケジュールチェックのためのチェックボックス９４６及び本決定フラグ用のチェックボックス９４７にチェックがあるため、仮スケジュール予約部１４０は、抽出されたスケジュール情報をスケジューラ１８０へ登録するが、メッセージ本文に記載されているスケジュールは既にメッセージｂに基づいて本予約されているスケジュールと重複するため（ステップ６９０：ＹＥＳ）、どちらのスケジュールを優先するかを決めるメッセージ（例えばポップアップ）を出力する（ステップ７００）。
【００９２】
ポップアップを参照したユーザが、新たに決定されたメッセージａに基づくスケジュールより既に本予約されているメッセージｂに基づくスケジュールの優先度が高く、メッセージｂの案件の会議に出席すると判断した場合、ユーザがその判断の結果をＰＣ１に入力し、それに従って仮スケジュール予約部１４０がメッセージａに基づく全ての仮スケジュールを削除する（ステップ７１５）。
【００９３】
一方、ユーザが、既に本予約されているメッセージｂに基づくスケジュールよりメッセージａに基づくスケジュールの優先度が高く、メッセージａの案件の会議に出席すると判断した場合、ユーザがその判断の結果をＰＣ１に入力し、それに従って仮スケジュール予約部１４０がスケジューラ１８０の情報を変更し（ステップ７３０〜７４０）、メッセージｂの送信先には通知された会議に参加不可となった旨のメッセージを自動送信する（ステップ７２０）。
【００９４】
図１７は、本発明の実施形態のＰＣ１が、決定した日程に出席できなくなったことを連絡するために自動送信するメッセージ例の説明図である。
【００９５】
図１７に示すメッセージ例９５０は、図１６を参照して説明した例のステップ７２０で送信されるメッセージの一例である。図１６のメッセージ例９５０も、図１２〜図１６の例と同様に、件名９５１、送信者９５２、受信者９５３及び本文９５４を含む。これによって、メッセージｂに関する案件の会議への出席が不可となった旨が連絡される。
【００９６】
上記の例では、図１０のステップ７２０及び７７０において、出席不可を連絡するメッセージ（例えばそれぞれ図１７及び図１５）が自動送信されるが、これは、ＰＣ１が予約の重複を通知するための情報を出力する方法の一例であり、別の方法が採用されてもよい。例えば、ＰＣ１は、ステップ７２０及び７７０において、予約が重複していることを表示する画面を出力するなどの方法でユーザに通知してもよい。ユーザは、その通知を参照して、必要と判断した場合に、図１７又は図１５と同様のメッセージを手動で送信してもよい。
【００９７】
図１０のステップ７２０及び７７０においてメッセージが自動送信される場合、その送信先は、それぞれのメッセージによって出席不可が通知される日程が最初に抽出されたメッセージの送信先と同一になる。例えば、ステップ７２０において図１７のメッセージが送信される場合、その送信先は、図１３に示すメッセージｂの送信先と同一である。ステップ７７０において図１５のメッセージが送信される場合、その送信先は、図１２に示すメッセージａの送信先と同一である。メッセージａ及びメッセージｂが通常の電子メールである場合、ＰＣ１は、これらの電子メールを送信したソフトウェアが管理する送信済みメールから送信先を抽出してもよい。あるいは、これらの送信先を特定する情報がスケジュール情報２４０に含まれていてもよい。
【００９８】
図１８は、本発明の実施形態においてスケジュールが重複した場合にＰＣ１が表示するポップアップの例の説明図である。
【００９９】
メッセージタイトルがメッセージＩＤに対応付けられているため、ポップアップ例１０００は、重複したスケジュールを識別する情報としてそれぞれに対応するメッセージのタイトル（この例では「Ｃ案件の打合わせ日時について」及び「Ｅ案件の打合わせ日時について」）を表示し、さらに、チェックボックス又はラジオボタンと確認ボタン等を表示することによって、どちらを優先するかの確認をユーザに要求する。
【０１００】
以上の本発明の実施形態ではスケジュール管理システムを会議（打ち合わせ）の日程調整に使用する例を示したが、本実施形態のスケジュール管理システムは、会議に限らず、任意の種類のイベントの日程調整に使用することができる。
【０１０１】
以上の本発明の実施形態によれば、ユーザが参加可能な日程を連絡するために送信したメッセージから日程が抽出され、それらが抽出元のメッセージの識別情報と対応付けて保持される。この時点では仮予約であるため、ユーザは日程の間に重複があるかどうかを意識する必要がない。ユーザが日程を抽出する範囲を特定し、その範囲から予め設定されたキーワードに従って日程を抽出することによって、日程が正しく抽出される。その後、決定した日程の連絡を受けた場合、それと重複する仮予約の日程を通知することによって、重複予約が防止される。重複する仮予約の日程について参加不可の連絡を自動送信することによって、ユーザの手間が省略される。既に決定済みの日程と重複する日程が新たに決定した場合、ユーザにいずれかを選択する機会を与えることによって、重複予約が防止される。既に決定済みの日程が選択されなかった場合にその日程について参加不可の連絡を自動送信することによって、ユーザの手間が省略される。
【０１０２】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
【０１０３】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【０１０４】
また、制御線及び情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１０５】
１  ＰＣ
１０  ＣＰＵ
２０  メモリ
４０  ハードディスク
１００  受信メッセージフォルダ
１１０  メッセージ作成部
１２０  メッセージ解析部
１３０  キーワードテーブル
１４０  仮スケジュール予約部
１７０  メッセージ確認部
１８０  スケジューラ
２００、２１０  キーワードテーブル
２２０  スケジュール例（仮予約）
２３０  スケジュール例（本予約）
２４０  スケジュール情報
９００、９１０、９２０、９３０、９４０、９５０  メッセージ例
１０００  重複スケジュールのポップアップメッセージ例
【図８】
2017059025.tif 000003
【図９】
2017059025.tif 000004
【図１０】
2017059025.tif 000005
【図１１】
2017059025.tif 000006
【図１２】
2017059025.tif 000007
【図１３】
2017059025.tif 000008
【図１４】
2017059025.tif 000009
【図１５】
2017059025.tif 000010
【図１６】
2017059025.tif 000011
【図１７】
2017059025.tif 000012
【図１】
2017059025.tif 000013
【図２】
2017059025.tif 000014
【図３】
2017059025.tif 000015
【図４】
2017059025.tif 000016
【図５】
2017059025.tif 000017
【図６】
2017059025.tif 000018
【図７】
2017059025.tif 000019
【図１８】
2017059025.tif 000020