JP2014099145A - 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラム - Google Patents
予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラム Download PDFInfo
- Publication number
- JP2014099145A JP2014099145A JP2013054759A JP2013054759A JP2014099145A JP 2014099145 A JP2014099145 A JP 2014099145A JP 2013054759 A JP2013054759 A JP 2013054759A JP 2013054759 A JP2013054759 A JP 2013054759A JP 2014099145 A JP2014099145 A JP 2014099145A
- Authority
- JP
- Japan
- Prior art keywords
- reservation
- information
- message
- user
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】予約の際のユーザの作業負担を軽減する機能を提供する。
【解決手段】ユーザの使用に係る端末装置と通信可能な予約支援装置において、端末装置における入力の内容を解析する。その解析結果に応じて所定の内容を応答する。所定のアクティビティに関する予約に必要な情報が充足されたか否かを判断し、予約に必要な情報が充足されていないと判断された場合には、必要な情報の入力を促す内容を応答する。端末装置において、画像の選択によって情報の入力が可能な機能が付加された画像が表示され、この画像の選択によって情報の入力が行われた場合には、この入力の内容を解析し、予約支援装置にて解析可能な内容に変換する。
【選択図】図1
【解決手段】ユーザの使用に係る端末装置と通信可能な予約支援装置において、端末装置における入力の内容を解析する。その解析結果に応じて所定の内容を応答する。所定のアクティビティに関する予約に必要な情報が充足されたか否かを判断し、予約に必要な情報が充足されていないと判断された場合には、必要な情報の入力を促す内容を応答する。端末装置において、画像の選択によって情報の入力が可能な機能が付加された画像が表示され、この画像の選択によって情報の入力が行われた場合には、この入力の内容を解析し、予約支援装置にて解析可能な内容に変換する。
【選択図】図1
Description
本発明は、予約処理の支援を行う技術に関する。
従来の予約システムは、特定のフォームにユーザが必要事項をすべて入力し、サーバに送信することで予約の申込みを行っていた。例えばゴルフ場予約の場合、各ゴルフ場の予約情報を参照してプランや空き枠の情報を自ら確認し、そのうえで所定のフォームに移行して予約申し込みを行うことになる(例えば、特許文献1)。
しかし、例えばチャットのように対話形式で行われるサービスによって、コンピュータと対話しながら予約を行うシステムを用いる場合においては、一般的に文字情報のやり取りの仕組みとなっているため、ゴルフ場を検索する場合も、都道府県をテキストで入力する必要がある。これがユーザにとっては大変煩雑な操作であった。
本発明は、この点に鑑みてなされたものであり、チャットのように対話形式で行われるサービスによって、コンピュータと対話しながら予約を行うシステムを用いる場合において、予約の際のユーザの作業負担を軽減する機能を提供することなどを解決課題とする。
本発明は、この点に鑑みてなされたものであり、チャットのように対話形式で行われるサービスによって、コンピュータと対話しながら予約を行うシステムを用いる場合において、予約の際のユーザの作業負担を軽減する機能を提供することなどを解決課題とする。
以上の課題を解決するために本発明が採用する手段を以下に説明する。なお、本発明の理解を容易にするために以下では図面の参照符号を便宜的に括弧書で付記するが、本発明を図示の形態に限定する趣旨ではない。
上述した課題を解決するため、本発明に係る予約支援システムは、ユーザの使用に係る端末装置(2a)と、当該端末装置(2a)と通信可能な予約支援装置(1a)とを備える予約支援システムであって、前記予約支援装置(1a)は、前記端末装置(2a)における入力の内容を解析する解析部(10)と、前記解析部(10)における解析結果に応じて所定の内容を応答する応答部(11)と、所定のアクティビティに関する予約に必要な情報が充足されたか否かを判断する判断部(12)と、前記判断部(12)により前記予約に必要な情報が充足されていないと判断された場合に、前記必要な情報の入力を促す内容を前記応答部(11)により応答させる応答制御部(13)と、前記判断部(12)により前記予約に必要な情報が充足されたと判断された場合に、前記予約に必要な情報を登録する登録部(14)とを備え、前記端末装置(2a)は、画像の選択によって情報の入力が可能な機能が付加された画像を取得する取得部(21)と、前記ユーザによる操作に応じて、前記取得部(21)で取得された前記画像を表示させる表示制御部(23)と、前記ユーザによる操作に応じて情報を入力可能な入力部(22)と、前記入力部(22)を介して前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記解析部(10)により解析可能な内容に変換する変換部(24)とを備えることを特徴とする。
この発明において、所定のアクティビティに関する予約は、スポーツ、音楽、映画、演劇、食事、宿泊等、あらゆるアクティビティに関する予約を含む概念である。
上述した予約支援システムにおいて、前記端末装置(2a)は、画像の選択によって日付情報の入力が可能な機能が付加されたカレンダー画像を取得可能な取得部(21)をさらに備え、前記表示制御部(23)は、前記ユーザによる操作が日付の入力に関する操作である場合には、前記カレンダー画像を表示させ、前記変換部(24)は、前記入力部(22)を介して前記カレンダー画像における日部分の画像の選択による日付情報の入力が行われた場合には、当該日付情報を日付についての文字情報に変換するようにしてもよい。
上述した予約支援システムにおいて、前記端末装置(2a)は、画像の選択によって場所情報の入力が可能な機能が付加された地図画像を取得可能な取得部(21)をさらに備え、 前記表示制御部(23)は、前記ユーザによる操作が場所の入力に関する操作である場合には、前記地図画像を表示させ、前記変換部(24)は、前記入力部(22)を介して前記地図画像の選択による場所情報の入力が行われた場合には、当該場所情報を場所についての文字情報に変換するようにしてもよい。
上述した予約支援システムにおいて、前記予約支援装置(1a)は、予め都道府県または都道府県より狭い範囲の地域に対応する推奨アクティビティ施設に関する推奨施設情報を記憶しており、前記端末装置(2a)において前記地図画像の選択による場所情報の入力が行われた場合、当該入力した場所情報に対応する都道府県または地域の推奨施設情報を前記予約支援装置(1a)から受信可能であるようにしてもよい。
上述した課題を解決するため、本発明に係る端末装置において、画像の選択によって情報の入力が可能な機能が付加された画像を取得する取得部(21)と、前記ユーザによる操作に応じて、前記取得部(21)で取得された前記画像を表示させる表示制御部(23)と、前記ユーザによる操作に応じて情報を入力可能な入力部(22)と、前記入力部(22)を介して前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記予約支援装置(1a)により解析可能な内容に変換する変換部(24)とを備えることを特徴とする。
上述した端末装置(2a)において、前記端末装置(2a)は、前記端末装置(2a)での入力内容に応答する機能を有する予約支援装置(1a)と通信が可能であり、前記取得部(21)は、画像の選択によって日付情報の入力が可能な機能が付加されたカレンダー画像を取得可能であり、前記表示制御部(23)は、前記ユーザによる操作が日付の入力に関する操作である場合には、前記カレンダー画像を表示させ、前記変換部(24)は、前記入力部(22)を介して前記カレンダー画像における日部分の画像の選択による日付情報の入力が行われた場合には、当該日付情報を日付についての文字情報に変換するようにしてもよい。
上述した端末装置(2a)において、前記端末装置(2a)は、前記端末装置(2a)での入力内容に応答する機能を有する予約支援装置(1a)と通信が可能であり、前記取得部(21)は、画像の選択によって場所情報の入力が可能な機能が付加された地図画像を取得可能であり、前記表示制御部(23)は、前記ユーザによる操作が場所の入力に関する操作である場合には、前記地図画像を表示させ、前記変換部(24)は、前記入力部(22)を介して前記地図画像の選択による場所情報の入力が行われた場合には、当該場所情報を場所についての文字情報に変換するようにしてもよい。
上述した課題を解決するため、本発明に係る予約支援方法は、ユーザの端末装置(2a)を用いた予約を支援する予約支援方法であって、前記端末装置(2a)における入力の内容を解析し、前記解析の結果に応じて所定の内容を応答し、所定のアクティビティに関する予約に必要な情報が充足されたか否かを判断し、前記予約に必要な情報が充足されていないと判断された場合に、前記必要な情報の入力を促す内容を応答し、前記予約に必要な情報が充足されたと判断された場合に、前記予約に必要な情報を登録し、画像の選択によって情報の入力が可能な機能が付加された画像を取得し、前記ユーザによる操作に応じて、前記取得した前記画像を表示し、前記ユーザによる操作に応じて情報を入力し、前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記解析が可能な内容に変換することを特徴とする。
上述した課題を解決するため、本発明に係る端末装置の制御方法は、ユーザの使用に係る端末装置(2a)と、当該端末装置(2a)と通信可能な予約支援装置(1a)とを備える予約支援システムにおける前記端末装置(2a)の制御方法であって、画像の選択によって情報の入力が可能な機能が付加された画像を取得し、前記ユーザによる操作に応じて、前記取得部で取得された前記画像を表示させ、前記ユーザによる操作に応じて情報を入力し、前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記予約支援装置(14a)により解析可能な内容に変換することを特徴とする。
上述した課題を解決するため、本発明に係る端末装置のプログラムは、ユーザの使用に係る端末装置(2a)と、当該端末装置(2a)と通信可能な予約支援装置(1a)とを備える予約支援システムにおけるコンピュータを備える前記端末装置(2a)のプログラムであって、前記コンピュータを、画像の選択によって情報の入力が可能な機能が付加された画像を取得する取得部(21)と、前記ユーザによる操作に応じて、前記取得部(21)で取得された前記画像を表示させる表示制御部(23)と、前記ユーザによる操作に応じて情報を入力可能な入力部(22)と、前記入力部(22)を介して前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記予約支援装置(1a)により解析可能な内容に変換する変換部として機能させることを特徴とする。
上記プログラムは、コンピュータが読み取り可能な記録媒体に記憶させても良い。この記録媒体を用いれば、例えば上記コンピュータに上記プログラムをインストールすることができる。ここで、上記プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であっても良い。
以下、実施形態として、本発明に係る予約支援装置について、図面を参照しつつ説明する。なお、所定のアクティビティの一例としてゴルフを例に挙げて説明する。
<第1実施形態>
<1:予約支援装置の概要>
図1は、本発明の第1実施形態に係る予約支援装置の一例としての予約支援サーバ1が用いられる環境を説明するためのブロック図である。本実施形態においては、一例として、予約支援サーバ1がユーザとの対応を通じてゴルフ場でのプレーの予約を行う場合について説明する。
予約支援サーバ1の詳細については後述する。図1に示すように、予約支援サーバ1は、インターネットなどの通信網NETを介して、外部管理サーバ3、マップサーバ4、予約サーバ5のそれぞれに対して通信可能になっている。また、予約支援サーバ1と端末装置2は、通信網NET及び外部管理サーバ3を介して通信可能になっている。
<第1実施形態>
<1:予約支援装置の概要>
図1は、本発明の第1実施形態に係る予約支援装置の一例としての予約支援サーバ1が用いられる環境を説明するためのブロック図である。本実施形態においては、一例として、予約支援サーバ1がユーザとの対応を通じてゴルフ場でのプレーの予約を行う場合について説明する。
予約支援サーバ1の詳細については後述する。図1に示すように、予約支援サーバ1は、インターネットなどの通信網NETを介して、外部管理サーバ3、マップサーバ4、予約サーバ5のそれぞれに対して通信可能になっている。また、予約支援サーバ1と端末装置2は、通信網NET及び外部管理サーバ3を介して通信可能になっている。
予約サーバ5は、プラン情報テーブル5a、枠情報テーブル5b、及び予約情報テーブル5cとを備えている。予約サーバ5は、各ゴルフ場に対応するゴルフ場端末(図示せず)と通信可能であり、プラン情報テーブル5a、枠情報テーブル5b、及び予約情報テーブル5cには、ゴルフ情報ごとに区別されたプラン情報、枠情報、及び予約情報がそれぞれ記憶されている。
図4にプラン情報テーブル5aの一例を示す。図4に示すように、プラン情報テーブル5aには、プラン名、プランID、条件、料金、曜日設定が記録されている。例えば、条件の一例としては、図4に示すように、2サムが保証されているか否か、即ち、2人で予約した場合、他の1人や2人と組み合わせにならないことを保証されているか否かが含まれる。その他にも、料金に昼食代が含まれているか、カート使用が可能か否か、及び、キャディ付きか否かが含まれている。曜日設定は、そのプランが平日用なのか土日祝日用なのかを示している。図4に示す例では、平日用のフィールドと、土日祝日用のフィールドが設けられており、フラグによって管理されている。つまり、フラグが1の場合には、そのプランが平日用であり、フラグが0の場合には、そのプランが土日祝日用であることを示している。但し、フラグが0の場合に、そのプランが平日用で、フラグが1の場合に、そのプランが土日祝日用としてもよい。さらに、プランが平日用なのか土日祝日用なのかを区別する方法はフラグに限定されるものではなく、どのような方法でもよい。
図4にプラン情報テーブル5aの一例を示す。図4に示すように、プラン情報テーブル5aには、プラン名、プランID、条件、料金、曜日設定が記録されている。例えば、条件の一例としては、図4に示すように、2サムが保証されているか否か、即ち、2人で予約した場合、他の1人や2人と組み合わせにならないことを保証されているか否かが含まれる。その他にも、料金に昼食代が含まれているか、カート使用が可能か否か、及び、キャディ付きか否かが含まれている。曜日設定は、そのプランが平日用なのか土日祝日用なのかを示している。図4に示す例では、平日用のフィールドと、土日祝日用のフィールドが設けられており、フラグによって管理されている。つまり、フラグが1の場合には、そのプランが平日用であり、フラグが0の場合には、そのプランが土日祝日用であることを示している。但し、フラグが0の場合に、そのプランが平日用で、フラグが1の場合に、そのプランが土日祝日用としてもよい。さらに、プランが平日用なのか土日祝日用なのかを区別する方法はフラグに限定されるものではなく、どのような方法でもよい。
図5に枠情報テーブル5bの一例を示す。枠情報テーブル5bには、図5に示すように、スタートIDごとに、日付、スタート時間、スタートコース、空き枠フラグ、及び1人予約枠フラグが関連付けられて記憶されている。ここで、本実施形態における「枠」とは、プレー日、プレーのスタート時間及びスタートコースにより特定される地位を指す。また、「空き枠」とはユーザによる予約がなされていない枠を指す。空き枠フラグの値が1の場合には、空き枠であることを示しており、空き枠フラグの値が0の場合には、予約が入っていることを示している。
スタートコースのフィールドに示される「OUT」とは、ホール番号1のホールからラウンドが開始されることを示し、「IN」とは、ホール番号10のホールからラウンドが開始されることを示している。但し、ゴルフ場によっては、東コース(1〜9番)、西コース(1〜9番)、南コース(1〜9番)等となっていることもあり、この場合には枠情報テーブル5bのスタートホールのフィールドには、「東」、「西」、「南」、若しくはこれらを意味する記号等が記憶されることになる。一般的に、ゴルフ場によって回る順番は決められており、例えば東コースからスタートすれば後半は西コース、西コースからスタートすれば後半は南コース、南コースからスタートすれば後半は東コース等と決まっているため、スタートコースが特定されれば足りる。
スタートコースのフィールドに示される「OUT」とは、ホール番号1のホールからラウンドが開始されることを示し、「IN」とは、ホール番号10のホールからラウンドが開始されることを示している。但し、ゴルフ場によっては、東コース(1〜9番)、西コース(1〜9番)、南コース(1〜9番)等となっていることもあり、この場合には枠情報テーブル5bのスタートホールのフィールドには、「東」、「西」、「南」、若しくはこれらを意味する記号等が記憶されることになる。一般的に、ゴルフ場によって回る順番は決められており、例えば東コースからスタートすれば後半は西コース、西コースからスタートすれば後半は南コース、南コースからスタートすれば後半は東コース等と決まっているため、スタートコースが特定されれば足りる。
なお、本実施形態では、図4に示すプラン情報と、図5に示す枠情報とは一対一で対応している訳ではなく、例えば、9月6日(平日)で空き枠フラグが1の枠を選択した場合には、図4に示すプラン情報のうち、曜日設定のフラグが1のプランであれば、いずれのプランも選択が可能になっている。
1人予約枠フラグは、各枠が1人予約に対応しているかどうかを示すフラグである。ここで本実施形態における「1人予約」とは、一般的にはプレーの予約は2人乃至4人を指定して行われるところ、予約時の人数を1人とする予約形態を指す。そして本実施形態では、1人予約枠フラグが1であれば、その枠は1人予約に対応しており、1人予約枠フラグが0であれば、その枠は1人予約に対応していないことを示している。
1人予約枠フラグは、各枠が1人予約に対応しているかどうかを示すフラグである。ここで本実施形態における「1人予約」とは、一般的にはプレーの予約は2人乃至4人を指定して行われるところ、予約時の人数を1人とする予約形態を指す。そして本実施形態では、1人予約枠フラグが1であれば、その枠は1人予約に対応しており、1人予約枠フラグが0であれば、その枠は1人予約に対応していないことを示している。
図6に予約情報テーブル5cの一例を示す。予約情報テーブル5cには、図6に示すように、予約ID、予約者名、予約者UID、連絡先、プランID、スタートID、人数、同伴者名が記憶される。なお、これ以外の情報を記憶するようにしてもよい。図6において、同伴者名のフィールドに「null」となっているのは、まだ同伴者の名前が登録されていないことを示している。同伴者名は予約と同時に登録しても良いし、後から追加的に登録・変更してもよい。
予約情報テーブル5cにおいて予約IDが記憶されると、その予約IDとして記憶されたスタートIDに対応する枠情報テーブル5bの空き枠フラグは1から0に変更される。
予約情報テーブル5cにおいて予約IDが記憶されると、その予約IDとして記憶されたスタートIDに対応する枠情報テーブル5bの空き枠フラグは1から0に変更される。
本実施形態における予約サーバ5は、各ゴルフ場のゴルフ場端末(図示せず)からアクセスが可能となっており、各ゴルフ場のゴルフ場IDと関連付けてプラン情報テーブル5a、枠情報テーブル5b、及び予約情報テーブル5cが記憶されている。
ユーザは、予約サーバ5に直接アクセスすることによってプラン情報や枠情報を参照し、予約を行うことが可能であるが、本実施形態では、後述するように、チャットサービスを介して予約を行うようになっている。詳しくは後述する。
ユーザは、予約サーバ5に直接アクセスすることによってプラン情報や枠情報を参照し、予約を行うことが可能であるが、本実施形態では、後述するように、チャットサービスを介して予約を行うようになっている。詳しくは後述する。
なお、ゴルフ場端末(図示せず)は各ゴルフ場に設けられており、各ゴルフ場において、ゴルフ場の管理者等がゴルフ場端末を操作して設定されたプラン情報や枠情報などの内容が記憶されるようになっている。また、ゴルフ場端末は予約サーバ5と通信可能になっている。
ゴルフ場端末は、予約サーバ5に定期的にアクセスし、予約サーバ5に記憶された自分のゴルフ場の予約情報、枠情報を取得し、ゴルフ場端末に記憶された枠情報テーブル、及び予約情報テーブルを更新する。
ゴルフ場端末は、予約サーバ5に定期的にアクセスし、予約サーバ5に記憶された自分のゴルフ場の予約情報、枠情報を取得し、ゴルフ場端末に記憶された枠情報テーブル、及び予約情報テーブルを更新する。
外部管理サーバ3は、インターネットなどの通信網NETを介した音声通話、チャット、及び、メール等の、メッセージの送受信が可能なメッセージ送受信サービスを提供する。本実施形態において説明するチャットサービスは、端末装置2のユーザ本人と、他の1名以上のユーザとで、リアルタイムでテキストメッセージや音声メッセージを送受信するチャットサービスを想定している。
外部管理サーバ3には、ユーザ情報テーブル3aが備えられており、本実施形態におけるユーザ情報テーブル3aには、図7に示すように、ユーザアカウント、ユーザにより登録されたユーザ名、認証された電話番号情報、登録されたEメールアドレス、プロフィール画像が関連付けて記憶されている。なお、ユーザアカウントは当該チャットサービスにユーザが登録したときに、外部管理サーバ3がユーザ毎に割り当てる識別子である。図7においては「UID」がユーザアカウントに該当する。また、電話番号またはメールアドレスが「null」となっているものは、該当する項目はユーザ情報テーブル3aに登録されていないことを示す。また、プロフィール画像は画像データへのリンク情報が記憶されている。
本実施形態では、後述する予約支援サーバ1が、チャットサービスにおける専用アカウントとして登録されており、チャットサービスにおいて他のユーザとの対話が可能になっている。つまり、あるユーザが前記専用アカウントと友達になると、外部管理サーバ3は当該ユーザと前記専用アカウントとの関連付けを行い、当該ユーザのユーザアカウントを、専用アカウントである予約支援サーバ1に送信する。また、当該ユーザが端末装置2から送信したメッセージは、外部管理サーバ3を介して前記専用アカウントである予約支援サーバ1にて受信され、また、前記専用アカウントである予約支援サーバ1から送信したメッセージは、外部管理サーバ3を介して当該ユーザの端末装置2にて受信される。詳しくは後述する。
また同様に、一のユーザが他のユーザと友達になると、外部管理サーバ3は当該一のユーザと他のユーザとの関連付けを行い、当該一のユーザが端末装置2から送信したメッセージは、外部管理サーバ3を介して前記他のユーザの端末装置2にて受信され、また、前記他のユーザの端末装置2から送信したメッセージは、外部管理サーバ3を介して前記一のユーザの端末装置2にて受信される。詳しくは後述する。
外部管理サーバ3には、ユーザ情報テーブル3aが備えられており、本実施形態におけるユーザ情報テーブル3aには、図7に示すように、ユーザアカウント、ユーザにより登録されたユーザ名、認証された電話番号情報、登録されたEメールアドレス、プロフィール画像が関連付けて記憶されている。なお、ユーザアカウントは当該チャットサービスにユーザが登録したときに、外部管理サーバ3がユーザ毎に割り当てる識別子である。図7においては「UID」がユーザアカウントに該当する。また、電話番号またはメールアドレスが「null」となっているものは、該当する項目はユーザ情報テーブル3aに登録されていないことを示す。また、プロフィール画像は画像データへのリンク情報が記憶されている。
本実施形態では、後述する予約支援サーバ1が、チャットサービスにおける専用アカウントとして登録されており、チャットサービスにおいて他のユーザとの対話が可能になっている。つまり、あるユーザが前記専用アカウントと友達になると、外部管理サーバ3は当該ユーザと前記専用アカウントとの関連付けを行い、当該ユーザのユーザアカウントを、専用アカウントである予約支援サーバ1に送信する。また、当該ユーザが端末装置2から送信したメッセージは、外部管理サーバ3を介して前記専用アカウントである予約支援サーバ1にて受信され、また、前記専用アカウントである予約支援サーバ1から送信したメッセージは、外部管理サーバ3を介して当該ユーザの端末装置2にて受信される。詳しくは後述する。
また同様に、一のユーザが他のユーザと友達になると、外部管理サーバ3は当該一のユーザと他のユーザとの関連付けを行い、当該一のユーザが端末装置2から送信したメッセージは、外部管理サーバ3を介して前記他のユーザの端末装置2にて受信され、また、前記他のユーザの端末装置2から送信したメッセージは、外部管理サーバ3を介して前記一のユーザの端末装置2にて受信される。詳しくは後述する。
マップサーバ4は、地図情報テーブル4aと施設情報テーブル4bとを備えている。地図情報テーブル4aには、位置情報(緯度経度情報)と関連付けて地図情報が記憶されている。施設情報テーブル4bには、位置情報(緯度経度情報)と関連付けて施設名称等の情報が関連付けて記憶されている。
マップサーバ4は、予約支援サーバ1から所定の要求を受信すると、この要求に関する処理を行うと共に、結果を予約支援サーバ1に送信する。所定の要求とは、上述のように住所情報から位置情報を特定する要求や、位置情報から所定範囲内の距離にあるゴルフ場を検索してリストを提示する要求である。これらの要求は、例えば所定のAPI(Application Program Interface)を用いて実行される。
マップサーバ4は、予約支援サーバ1から所定の要求を受信すると、この要求に関する処理を行うと共に、結果を予約支援サーバ1に送信する。所定の要求とは、上述のように住所情報から位置情報を特定する要求や、位置情報から所定範囲内の距離にあるゴルフ場を検索してリストを提示する要求である。これらの要求は、例えば所定のAPI(Application Program Interface)を用いて実行される。
端末装置2は、通信網NETを介した通信が可能であり、例えば、パーソナルコンピュータ、携帯電話機、スマートフォン、タブレット端末などが該当する。端末装置2には、通信網NET上で公開されているウェブページを表示可能なブラウザソフトウェアがインストールされており、ブラウザソフトウェアを用いることにより、HTMLデータ等を端末装置2上にウェブページとして表示させることができる。また、端末装置2には、外部管理サーバ3によって提供されるメッセージ送受信サービス用のアプリケーションソフトウェアが予めインストールされており、このアプリケーションソフトウェアを用いることにより、上述したチャットサービスを利用することが可能になっている。
端末装置2にはキーボード、あるいはタッチパネル等の入力部が備えられており、この入力部を利用して、ウェブページや前記メッセージ送受信サービス用のアプリケーションソフトウェアの入力欄等に文字データ等を入力することができる。なお、図1においては、一つの端末装置2のみを示しているが、複数の端末装置2が通信網NETに接続されている。
端末装置2にはキーボード、あるいはタッチパネル等の入力部が備えられており、この入力部を利用して、ウェブページや前記メッセージ送受信サービス用のアプリケーションソフトウェアの入力欄等に文字データ等を入力することができる。なお、図1においては、一つの端末装置2のみを示しているが、複数の端末装置2が通信網NETに接続されている。
予約支援サーバ1は、上述したように外部管理サーバ3によって提供されるメッセージ送受信サービスにおける専用アカウントとして登録されており、ユーザが端末装置2にインストールされたメッセージ送受信サービス用のアプリケーションソフトウェアを利用して前記専用アカウントと友達になり、当該アプリケーションソフトウェアを利用して前記専用アカウントにメッセージを送信した場合には、前記専用アカウントである予約支援サーバ1は、当該メッセージに応答することができる。
予約支援サーバ1は、解析部10、応答部11、判断部12、応答制御部13、登録部14、候補提示部15、記憶部16、宛先検出部17、予約検出部18とを備えている。解析部10、応答部11、判断部12、応答制御部13、登録部14、候補提示部15は、予約支援サーバ1が予約支援サーバのプログラムを実行することにより発揮される機能ブロックである。
解析部10は、端末装置2における入力の内容を解析する。応答部11は、解析部10における解析結果に応じて所定の内容を応答したり、宛先検出部17によって一のユーザから送信されたメッセージの宛先として自身(予約支援サーバ1)以外の他のユーザが含まれていることが検出された場合、登録部14において仮登録された情報を当該一のユーザ及び当該他のユーザに対して応答したりする。この場合、応答部11は応答する内容(報告文)を作成する機能も有する。判断部12は、一例として、ゴルフ場の予約に必要な情報が充足されたか否かを判断する。応答制御部13は、判断部12により予約に必要な情報が充足されていないと判断された場合に、必要な情報の入力を促す内容を応答部11により応答させる。登録部14は、判断部12により予約に必要な情報が充足されたと判断された場合に、また、解析部10により、仮登録されている情報が否定されたと判断された場合には、登録部14は当該仮登録された情報を削除する。予約に必要な情報を予約支援サーバ1において仮登録し、または、予約サーバ5に登録する。候補提示部15は、予約に必要な情報の項目について候補を提示する。
記憶部16には、予約支援サーバ1を制御するプログラムが記憶され、さらに、上述した応答のための文例等が記憶されている。また、記憶部16にはチャット履歴テーブル16aが記憶されている。このチャット履歴テーブル16aには、図26Aに示すように、外部管理サーバ3によって新規のチャット開始時に割り当てられたチャットID、メッセージの送信又は受信の日時、メッセージの差出人ユーザのユーザアカウント、メッセージの宛先ユーザのユーザアカウント、メッセージの内容、のフィールドが設けられている。なお、3人以上でチャットを行っている場合、宛先IDのフィールドには差出人ユーザ以外の複数のユーザのユーザアカウントが記憶される。
また、記憶部16には、チャットユーザ情報テーブル16bが記憶されている。このチャットユーザ情報テーブル16bは、図26Bに示すように、メッセージ送受信サービスの専用アカウントの利用者であるユーザのユーザアカウント(UID)が記憶されるフィールドが、少なくとも設けられている。本実施形態では、ユーザアカウントの他、メッセージ送受信サービスのアプリケーションにおける名前として外部管理サーバ3に登録されている名前を記憶するフィールドも設けられている。
ここで、専用アカウントの利用者としてチャットユーザ情報テーブル16bに登録される場合として、ユーザがメッセージ送受信サービスのアプリケーションにおいて専用アカウントを友達として登録した場合、及び、友達として登録はしていないが他のユーザからチャットに招待される等して専用アカウントを含むグループとしてチャットした履歴がある場合、がある。したがって、例えばユーザがメッセージ送受信サービスのアプリケーションにおいて専用アカウントを友達として登録した場合は、当該ユーザのユーザアカウントと、専用アカウントを友達として登録する旨の要求が外部管理サーバ3に送信される。外部管理サーバ3では、要求に基づいて専用アカウントと当該ユーザのユーザアカウントとを関連づけるとともに、予約支援サーバ1に対して、当該ユーザのユーザアカウント及び外部管理サーバ3に登録されている当該ユーザの名前を送信する。そして予約支援サーバ1は、外部管理サーバ3から受信したユーザアカウントを、チャットユーザ情報テーブル16bに登録する。これにより専用アカウントの利用者であるユーザのユーザアカウントが、チャットユーザ情報テーブル16bに記憶される。
宛先検出部17は、ユーザから送信されたメッセージの宛先を検出するものであり、例えばユーザから送信されたメッセージの宛先として、自身(予約支援サーバ1)以外の他のユーザが含まれているか否かを検出する。予約検出部18は、所定の場合に予約サーバ5の予約情報テーブル5cに記憶されている予約情報を検索し、特定の予約情報を検出する。例えば、一のユーザがゴルフを1人でプレーするための予約(すわなち1人予約)を行う場合、所定の範囲、例えば一のユーザの予約における場所と日付が同じ範囲、において、1人予約をしている他のユーザの予約情報を検索する。
予約支援サーバ1は、解析部10、応答部11、判断部12、応答制御部13、登録部14、候補提示部15、記憶部16、宛先検出部17、予約検出部18とを備えている。解析部10、応答部11、判断部12、応答制御部13、登録部14、候補提示部15は、予約支援サーバ1が予約支援サーバのプログラムを実行することにより発揮される機能ブロックである。
解析部10は、端末装置2における入力の内容を解析する。応答部11は、解析部10における解析結果に応じて所定の内容を応答したり、宛先検出部17によって一のユーザから送信されたメッセージの宛先として自身(予約支援サーバ1)以外の他のユーザが含まれていることが検出された場合、登録部14において仮登録された情報を当該一のユーザ及び当該他のユーザに対して応答したりする。この場合、応答部11は応答する内容(報告文)を作成する機能も有する。判断部12は、一例として、ゴルフ場の予約に必要な情報が充足されたか否かを判断する。応答制御部13は、判断部12により予約に必要な情報が充足されていないと判断された場合に、必要な情報の入力を促す内容を応答部11により応答させる。登録部14は、判断部12により予約に必要な情報が充足されたと判断された場合に、また、解析部10により、仮登録されている情報が否定されたと判断された場合には、登録部14は当該仮登録された情報を削除する。予約に必要な情報を予約支援サーバ1において仮登録し、または、予約サーバ5に登録する。候補提示部15は、予約に必要な情報の項目について候補を提示する。
記憶部16には、予約支援サーバ1を制御するプログラムが記憶され、さらに、上述した応答のための文例等が記憶されている。また、記憶部16にはチャット履歴テーブル16aが記憶されている。このチャット履歴テーブル16aには、図26Aに示すように、外部管理サーバ3によって新規のチャット開始時に割り当てられたチャットID、メッセージの送信又は受信の日時、メッセージの差出人ユーザのユーザアカウント、メッセージの宛先ユーザのユーザアカウント、メッセージの内容、のフィールドが設けられている。なお、3人以上でチャットを行っている場合、宛先IDのフィールドには差出人ユーザ以外の複数のユーザのユーザアカウントが記憶される。
また、記憶部16には、チャットユーザ情報テーブル16bが記憶されている。このチャットユーザ情報テーブル16bは、図26Bに示すように、メッセージ送受信サービスの専用アカウントの利用者であるユーザのユーザアカウント(UID)が記憶されるフィールドが、少なくとも設けられている。本実施形態では、ユーザアカウントの他、メッセージ送受信サービスのアプリケーションにおける名前として外部管理サーバ3に登録されている名前を記憶するフィールドも設けられている。
ここで、専用アカウントの利用者としてチャットユーザ情報テーブル16bに登録される場合として、ユーザがメッセージ送受信サービスのアプリケーションにおいて専用アカウントを友達として登録した場合、及び、友達として登録はしていないが他のユーザからチャットに招待される等して専用アカウントを含むグループとしてチャットした履歴がある場合、がある。したがって、例えばユーザがメッセージ送受信サービスのアプリケーションにおいて専用アカウントを友達として登録した場合は、当該ユーザのユーザアカウントと、専用アカウントを友達として登録する旨の要求が外部管理サーバ3に送信される。外部管理サーバ3では、要求に基づいて専用アカウントと当該ユーザのユーザアカウントとを関連づけるとともに、予約支援サーバ1に対して、当該ユーザのユーザアカウント及び外部管理サーバ3に登録されている当該ユーザの名前を送信する。そして予約支援サーバ1は、外部管理サーバ3から受信したユーザアカウントを、チャットユーザ情報テーブル16bに登録する。これにより専用アカウントの利用者であるユーザのユーザアカウントが、チャットユーザ情報テーブル16bに記憶される。
宛先検出部17は、ユーザから送信されたメッセージの宛先を検出するものであり、例えばユーザから送信されたメッセージの宛先として、自身(予約支援サーバ1)以外の他のユーザが含まれているか否かを検出する。予約検出部18は、所定の場合に予約サーバ5の予約情報テーブル5cに記憶されている予約情報を検索し、特定の予約情報を検出する。例えば、一のユーザがゴルフを1人でプレーするための予約(すわなち1人予約)を行う場合、所定の範囲、例えば一のユーザの予約における場所と日付が同じ範囲、において、1人予約をしている他のユーザの予約情報を検索する。
図2に予約支援サーバ1の構成を示す。この図に示すように、予約支援サーバ1は、装置全体を制御するCPU(Central Processing Unit)30、CPU30の作業領域として機能するRAM(Random Access Memory)31、ブートプログラムなどを記憶したROM(Read Only Memory)32、各種のプログラムやデータを記憶するハードディスクドライブ(HDD)33、通信網NETを介して外部の装置と通信を行う通信インターフェース36、及びコンパクトディスクなどの情報記録媒体を読み取る読取装置37を備える。HDD33は、上述した記憶部16の一例である。
本実施形態において、CPU30は解析部10、応答部11、判断部12、応答制御部13、登録部14、候補提示部15、宛先検出部17、予約検出部18として動作し得る。
また、外部管理サーバ3、予約サーバ5も予約支援サーバ1と同様の構成である。
本実施形態において、CPU30は解析部10、応答部11、判断部12、応答制御部13、登録部14、候補提示部15、宛先検出部17、予約検出部18として動作し得る。
また、外部管理サーバ3、予約サーバ5も予約支援サーバ1と同様の構成である。
図3に端末装置2の構成を示す。この図に示すように、端末装置2は、装置全体を制御するCPU(Central Processing Unit)40、CPU40の作業領域として機能するRAM(Random Access Memory)41、ブートプログラムなどを記憶したROM(Read Only Memory)42、各種のプログラムやデータを記憶する記憶装置43、キーボード、マウス、タッチパネルなどを含む入力部44、画像を表示する液晶ディスプレイ等のディスプレイ45、及び通信網NETを介して外部の装置と通信を行う通信インターフェース46を備える。
<2:メッセージ送受信アプリケーション>
次に、外部管理サーバ3によって提供されるメッセージ送受信サービス用のメッセージ送受信アプリケーションについて説明する。メッセージ送受信アプリケーションは、端末装置20にインストールされる。メッセージ送受信アプリケーションを端末装置2上で起動すると、図8に示すようなフレンド表示画面P1が表示される。本実施形態においては、メッセージ送受信アプリケーションの起動時のデフォルト選択メニューがフレンド表示画面P1に設定されている。
次に、外部管理サーバ3によって提供されるメッセージ送受信サービス用のメッセージ送受信アプリケーションについて説明する。メッセージ送受信アプリケーションは、端末装置20にインストールされる。メッセージ送受信アプリケーションを端末装置2上で起動すると、図8に示すようなフレンド表示画面P1が表示される。本実施形態においては、メッセージ送受信アプリケーションの起動時のデフォルト選択メニューがフレンド表示画面P1に設定されている。
フレンド表示画面P1は、タイトル表示領域A1、フレンド表示領域A2、プロフィール画像表示領域A3、ニックネーム表示領域A4、メニューバーA5を備えている。
タイトル表示領域A1には、そのページのタイトルが表示される。図8に示すフレンド表示画面P1は、メッセージ送受信アプリケーションにおいてフレンド登録しているフレンドを一覧表示する画面であり、タイトル表示領域A1には、現在選択中のメニューのタイトルが表示されるようになっており、図8の例では「フレンド」と表示される。
フレンド表示領域A2には、メッセージ送受信アプリケーションにおいてフレンド登録しているフレンドが、プロフィール画像とニックネームにより一覧表示される。図8に示す例では、一部のフレンドが表示されており、画面をスクロールすることにより、残りのフレンドも表示される。
タイトル表示領域A1には、そのページのタイトルが表示される。図8に示すフレンド表示画面P1は、メッセージ送受信アプリケーションにおいてフレンド登録しているフレンドを一覧表示する画面であり、タイトル表示領域A1には、現在選択中のメニューのタイトルが表示されるようになっており、図8の例では「フレンド」と表示される。
フレンド表示領域A2には、メッセージ送受信アプリケーションにおいてフレンド登録しているフレンドが、プロフィール画像とニックネームにより一覧表示される。図8に示す例では、一部のフレンドが表示されており、画面をスクロールすることにより、残りのフレンドも表示される。
また、外部管理サーバ3によって提供されるメッセージ送受信サービスの専用アカウントとして登録されているゴルフ予約A10もフレンドとして登録されている。このゴルフ予約A10を選択してメッセージを送信すると、予約支援サーバ1からの応答が行われることになる。
プロフィール画像表示領域A3には、フレンドが登録したプロフィール画像が表示される。ニックネーム表示領域A4には、フレンドが登録したニックネームが表示される。
メニューバーA5には、フレンドアイコンA6、チャットアイコンA7、お知らせアイコンA8、設定アイコンA9が表示される。それぞれのアイコンが押下されることにより、それぞれのアイコンに対応するページにジャンプするようになっている。フレンドアイコンA6が押下されると、図8に示すフレンド表示画面P1が表示され、チャットアイコンA7が押下されると、後述するチャット画面が表示される。お知らせアイコンA8が押下されると、メッセージ送受信アプリケーションの提供企業等からのお知らせを表示するページ(図示せず)にジャンプする。設定アイコンA9が押下されると、プロフィール画像やニックネーム等の各種設定が可能な設定ページ(図示せず)にジャンプする。
メニューバーA5には、フレンドアイコンA6、チャットアイコンA7、お知らせアイコンA8、設定アイコンA9が表示される。それぞれのアイコンが押下されることにより、それぞれのアイコンに対応するページにジャンプするようになっている。フレンドアイコンA6が押下されると、図8に示すフレンド表示画面P1が表示され、チャットアイコンA7が押下されると、後述するチャット画面が表示される。お知らせアイコンA8が押下されると、メッセージ送受信アプリケーションの提供企業等からのお知らせを表示するページ(図示せず)にジャンプする。設定アイコンA9が押下されると、プロフィール画像やニックネーム等の各種設定が可能な設定ページ(図示せず)にジャンプする。
<3:チャット処理>
次に、本実施形態のメッセージ送受信アプリケーションにおけるチャット処理について説明する。図8に示すメニューバーA5のチャットアイコンA7が押下されると、図9に示すチャット画面P2が表示される。
チャット画面P2は、タイトル表示領域B1、フレンド表示領域B2、プロフィール画像表示領域B3、ニックネーム表示領域B4、前回メッセージ表示領域B5、前回メッセージ投稿日時表示領域B6、フレンド表示画面P1と共通のメニューバーA5を備えている。
次に、本実施形態のメッセージ送受信アプリケーションにおけるチャット処理について説明する。図8に示すメニューバーA5のチャットアイコンA7が押下されると、図9に示すチャット画面P2が表示される。
チャット画面P2は、タイトル表示領域B1、フレンド表示領域B2、プロフィール画像表示領域B3、ニックネーム表示領域B4、前回メッセージ表示領域B5、前回メッセージ投稿日時表示領域B6、フレンド表示画面P1と共通のメニューバーA5を備えている。
タイトル表示領域B1には、そのページのタイトルが表示される。図9に示すチャット画面P2は、メッセージ送受信アプリケーションにおいてチャットを行う相手のフレンドを一覧表示する画面であり、タイトル表示領域B1には、「チャット」と表示される。
フレンド表示領域B2には、本実施形態では、ユーザのフレンドであって且つユーザとのチャットの記録が端末装置2から削除されていないフレンドが一覧表示される。一方、図8に示すフレンド表示画面P1はチャット履歴をユーザ別に一覧表示する画面である。
図9に示す例では、一部のフレンドが表示されており、画面をスクロールすることにより、残りのフレンドも表示される。表示の順序は、最後にチャットを行った日時が新しい順になっている。
フレンド表示領域B2には、本実施形態では、ユーザのフレンドであって且つユーザとのチャットの記録が端末装置2から削除されていないフレンドが一覧表示される。一方、図8に示すフレンド表示画面P1はチャット履歴をユーザ別に一覧表示する画面である。
図9に示す例では、一部のフレンドが表示されており、画面をスクロールすることにより、残りのフレンドも表示される。表示の順序は、最後にチャットを行った日時が新しい順になっている。
プロフィール画像表示領域B3には、フレンドが登録したプロフィール画像が表示される。ニックネーム表示領域B4には、フレンドが登録したニックネームが表示される。
前回メッセージ表示領域B5には、表示されているフレンドとのチャットにおいて、当該フレンドまたは自身が最後に投稿したメッセージが表示される。但し、表示可能な字数が限られているので、表示可能な字数を超える部分の表示は省略される。
前回メッセージ投稿日時表示領域B6には、表示されているフレンドとのチャットにおいて、当該フレンドまたは自身が最後にメッセージ投稿した日時が表示される。但し、チャット画面P2を表示している日とメッセージの投稿日が同日の場合には、投稿時間のみが表示される。また、チャット画面P2を表示している日から1週間以内であれば曜日が表示される。チャット画面P2を表示している日から1週間よりも前の投稿の場合には、月日が表示される。
メニューバーA5は、フレンド表示画面P1と共通なので説明を省略する。
前回メッセージ表示領域B5には、表示されているフレンドとのチャットにおいて、当該フレンドまたは自身が最後に投稿したメッセージが表示される。但し、表示可能な字数が限られているので、表示可能な字数を超える部分の表示は省略される。
前回メッセージ投稿日時表示領域B6には、表示されているフレンドとのチャットにおいて、当該フレンドまたは自身が最後にメッセージ投稿した日時が表示される。但し、チャット画面P2を表示している日とメッセージの投稿日が同日の場合には、投稿時間のみが表示される。また、チャット画面P2を表示している日から1週間以内であれば曜日が表示される。チャット画面P2を表示している日から1週間よりも前の投稿の場合には、月日が表示される。
メニューバーA5は、フレンド表示画面P1と共通なので説明を省略する。
チャット画面P2に表示されるフレンドに対してメッセージを送信する場合には、メッセージを送信したいフレンドのプロフィール画像及びニックネーム等の表示枠内の部分を押下する。このプロフィール画像及びニックネーム等の表示枠内の部分が押下されると、図10に示すメッセージ表示画面P3が表示される。
メッセージ表示画面P3は、タイトル表示領域C1、メッセージ表示領域C2、相手側プロフィール画像C3、相手側メッセージ表示枠C4、本人側メッセージ表示枠C5、コマンドバーC6、及び機能ボタンC11を備えている。
メッセージ表示画面P3は、タイトル表示領域C1、メッセージ表示領域C2、相手側プロフィール画像C3、相手側メッセージ表示枠C4、本人側メッセージ表示枠C5、コマンドバーC6、及び機能ボタンC11を備えている。
タイトル表示領域C1には、そのページのタイトルが表示される。図10に示すメッセージ表示画面P3は、本人と相手側とで投稿されたメッセージを表示する画面であるが、図10の例では、チャット画面P2と同様に、タイトル表示領域C1には「チャット」と表示される。
メッセージ表示領域C2には、相手側プロフィール画像C3と、相手側メッセージ表示枠C4と、本人側メッセージ表示枠C5とが表示される。相手側プロフィール画像C3はチャットを行っている相手のプロフィール画像であり、相手側メッセージ表示枠C4には相手が投稿したメッセージが表示される。本人側メッセージ表示枠C5には、本人が投稿したメッセージが表示される。また、各メッセージには送信された時刻が表示されるとともに、本人側メッセージについては、送信したメッセージが送信相手に読まれた場合(少なくとも本人側メッセージを送信相手が表示した場合)を示す「既読」の文言が表示される。
メッセージ表示領域C2には、相手側プロフィール画像C3と、相手側メッセージ表示枠C4と、本人側メッセージ表示枠C5とが表示される。相手側プロフィール画像C3はチャットを行っている相手のプロフィール画像であり、相手側メッセージ表示枠C4には相手が投稿したメッセージが表示される。本人側メッセージ表示枠C5には、本人が投稿したメッセージが表示される。また、各メッセージには送信された時刻が表示されるとともに、本人側メッセージについては、送信したメッセージが送信相手に読まれた場合(少なくとも本人側メッセージを送信相手が表示した場合)を示す「既読」の文言が表示される。
メッセージ表示領域C2は、上から下に向かって、時系列に沿って投稿されたメッセージが表示される。すなわち、新しいメッセージが投稿されると、メッセージ表示領域C2の一番下の部分に当該新しく投稿されたメッセージが表示される。したがって、それまで表示されていた相手側プロフィール画像C3、相手側メッセージ表示枠C4及び本人側メッセージ表示枠C5は、順次上側にシフトして表示される。メッセージ表示領域C2の一番上の部分に表示されていた相手側プロフィール画像C3及び相手側メッセージ表示枠C4、または、本人側メッセージ表示枠C5は、シフトによってメッセージ表示領域C2から見えなくなる。しかし、画面をスクロールすることにより、それまでの投稿メッセージを全て確認することができるようになっている。
コマンドバーC6には、設定アイコンC7、絵文字アイコンC8、メッセージ書き込み枠C9、送信ボタンC10が表示される。
設定アイコンC7が押下されると、写真や動画の添付、あるいは、音声メッセージの添付等が可能になっている。絵文字アイコンC8が押下されると、絵文字を選択する画面(図示せず)が表示され、メッセージ内に挿入する絵文字を選択することができる。
メッセージ書き込み枠C9が押下されると、文字入力等を行うためのキーボード画面(図示せず)が表示され、キーボード画面を操作することによりメッセージ書き込み枠C9内にメッセージを書き込むことができる。
メッセージ書き込み枠C9内にメッセージを書き込んだ状態で送信ボタンC10が押下されると、メッセージ書き込み枠C9内に書き込んだメッセージが、メッセージ表示領域C2の一番下の部分の本人側メッセージ表示枠C5に表示され、端末装置2から外部管理サーバ3に送信され、当該メッセージが外部管理サーバ3を経由して相手側の端末装置2に送信される。
機能ボタンC11が押下されると、チャットに招待するに友達を選択することが可能となっている。詳しくは後述する。
設定アイコンC7が押下されると、写真や動画の添付、あるいは、音声メッセージの添付等が可能になっている。絵文字アイコンC8が押下されると、絵文字を選択する画面(図示せず)が表示され、メッセージ内に挿入する絵文字を選択することができる。
メッセージ書き込み枠C9が押下されると、文字入力等を行うためのキーボード画面(図示せず)が表示され、キーボード画面を操作することによりメッセージ書き込み枠C9内にメッセージを書き込むことができる。
メッセージ書き込み枠C9内にメッセージを書き込んだ状態で送信ボタンC10が押下されると、メッセージ書き込み枠C9内に書き込んだメッセージが、メッセージ表示領域C2の一番下の部分の本人側メッセージ表示枠C5に表示され、端末装置2から外部管理サーバ3に送信され、当該メッセージが外部管理サーバ3を経由して相手側の端末装置2に送信される。
機能ボタンC11が押下されると、チャットに招待するに友達を選択することが可能となっている。詳しくは後述する。
<4:予約支援サーバの動作>
次に、図11乃至図23を参照して、以上のようなメッセージ送受信アプリケーションにおけるチャット処理を利用した本実施形態の予約支援サーバ1による予約支援動作について説明する。なお、図11乃至図18に示す例では、メッセージが投稿された日付や時間、「既読」の文言の記載を省略している。
次に、図11乃至図23を参照して、以上のようなメッセージ送受信アプリケーションにおけるチャット処理を利用した本実施形態の予約支援サーバ1による予約支援動作について説明する。なお、図11乃至図18に示す例では、メッセージが投稿された日付や時間、「既読」の文言の記載を省略している。
<4−1:予約の開始>
まず、図19のフローチャートを参照して、予約支援サーバ1の開始処理について説明する。メッセージ送受信アプリケーションにおいて、専用アカウントであるゴルフ予約A10をフレンド登録した直後においては、図11に示すように、予約支援サーバ1側から、フレンド登録へのお礼C19と日程入力要求メッセージC20が送信される。具体的には、ユーザが自身の使用する端末装置2を操作して、ゴルフ予約A10をフレンド登録したとき、当該端末装置2から外部管理サーバ3を介して予約支援サーバ1に対して、当該ユーザがフレンド登録した旨と、そのユーザのユーザIDが送信される。これを受信した予約支援サーバ1は、フレンド登録時に登録したユーザに対して返答するメッセージを、受信したユーザIDを宛先として外部管理サーバ3に対してお礼C19と日程入力要求メッセージC20を送信する。図11の例では、メッセージ表示領域C2に、「フレンド登録ありがとう!どんどん活用してくださいね。」というメッセージと、「ゴルフに行きたい日があったら数字4ケタで教えてくださいね。」というメッセージが表示される。このメッセージは、記憶部16の文例テーブルに予め記憶されており、状況に応じて適切な文例を文例テーブルから読み取って、応答部11が送信するようになっている。
まず、図19のフローチャートを参照して、予約支援サーバ1の開始処理について説明する。メッセージ送受信アプリケーションにおいて、専用アカウントであるゴルフ予約A10をフレンド登録した直後においては、図11に示すように、予約支援サーバ1側から、フレンド登録へのお礼C19と日程入力要求メッセージC20が送信される。具体的には、ユーザが自身の使用する端末装置2を操作して、ゴルフ予約A10をフレンド登録したとき、当該端末装置2から外部管理サーバ3を介して予約支援サーバ1に対して、当該ユーザがフレンド登録した旨と、そのユーザのユーザIDが送信される。これを受信した予約支援サーバ1は、フレンド登録時に登録したユーザに対して返答するメッセージを、受信したユーザIDを宛先として外部管理サーバ3に対してお礼C19と日程入力要求メッセージC20を送信する。図11の例では、メッセージ表示領域C2に、「フレンド登録ありがとう!どんどん活用してくださいね。」というメッセージと、「ゴルフに行きたい日があったら数字4ケタで教えてくださいね。」というメッセージが表示される。このメッセージは、記憶部16の文例テーブルに予め記憶されており、状況に応じて適切な文例を文例テーブルから読み取って、応答部11が送信するようになっている。
したがって、ゴルフ場の予約を希望するユーザは、この日程入力要求メッセージC20に対して、図12に示すように、ゴルフ場を予約する日を送信することができる。図12の例では、ユーザは「0825」というメッセージC21を送信している。このように数字が送信された場合には、図19のラベルLB1〜LB12に続く各ステップに示すような日付判断処理等が行われることになる。そして、以下、図12に示すように、対話形式でゴルフ場の予約が行われることになる。日付判断処理等についての詳細については、後述する。
しかし、一旦、専用アカウントであるゴルフ予約A10をフレンド登録し、図12に示すように専用アカウントであるゴルフ予約A10とチャット上のやり取りを行った後においては、ユーザからの何らかのメッセージの送信がない限り、予約支援サーバ1側からメッセージを送信することはない。また、図11に示すように、予約支援サーバ1側から日程入力要求メッセージC20を送信した場合であっても、その後にユーザからの何らかのメッセージが送信されなければ、予約支援サーバ1側から何らかのメッセージを送信することはない。
つまり、本実施形態においては、予約支援サーバ1は、通常、ユーザからの何らかのメッセージの送信があるまで待機状態になっている。そして、図13に示すように、ユーザから何らかのメッセージC30が送信され場合には、予約支援サーバ1のCPU30は、図19に示すようにメッセージを受信し、ユーザから送信されたメッセージの内容を解析する(S90)。図19乃至図22においては、ラベルLB1〜LB12が示されており、解析部10により解析した結果がこれらのラベルLB1〜LB12のいずれかの内容に合致する場合には、合致した内容のラベルに続いて記載された処理が行われるようになっている。
例えば、解析部10によりメッセージの内容が日付または期間に関するものであると判断された場合には、ラベルLB2、LB3、LB4のいずれかのラベルに続いて記載された処理が行われる。また、メッセージの内容が場所等に関するものである判断された場合には、ラベルLB5、LB6、LB7のいずれかのラベルに続いて記載された処理が行われる。さらに、友達招待と判断された場合にはラベルLB8に続いて記載された処理が行われ、提示情報の拒否等と判断された場合にはラベルLB9に続いて記載された処理が行われる。そして、おまかせ要求と判断された場合にはラベルLB10に続いて記載された処理が行われ、提示情報に対する承認と判断された場合にはラベルLB11に続いて記載された処理が行われ、一人予約と判断された場合にはラベルLB12に続いて記載された処理が行われる。
例えば、解析部10によりメッセージの内容が日付または期間に関するものであると判断された場合には、ラベルLB2、LB3、LB4のいずれかのラベルに続いて記載された処理が行われる。また、メッセージの内容が場所等に関するものである判断された場合には、ラベルLB5、LB6、LB7のいずれかのラベルに続いて記載された処理が行われる。さらに、友達招待と判断された場合にはラベルLB8に続いて記載された処理が行われ、提示情報の拒否等と判断された場合にはラベルLB9に続いて記載された処理が行われる。そして、おまかせ要求と判断された場合にはラベルLB10に続いて記載された処理が行われ、提示情報に対する承認と判断された場合にはラベルLB11に続いて記載された処理が行われ、一人予約と判断された場合にはラベルLB12に続いて記載された処理が行われる。
しかし、上述したいずれでもない場合、例えば、図13に示すように、「予約したい!」というメッセージC30が送信された場合、あるいは、「予約」と送信された場合、もしくは、「tt」等の意味のないメッセージが送信された場合には、本実施形態では、予約支援サーバ1のCPU30は、メッセージの内容を解析し(図19;S90)、解析の結果、予約要求があったと判断する。なお、後述のように日程や場所等の仮登録がなされた後で、「tt」等の意味のないメッセージが送信された場合は、「認識できません」等の応答を行ってもよい。
そして、予約支援サーバ1のCPU30は、予約要求があったと判断した場合には、ラベルLB1に続いて記載された処理、つまり、日程入力の要求メッセージを送信する処理を行う(S101)。図13に示す例では、CPU30は、「ゴルフの予約ですね。行きたい日を数字4ケタで教えてください。」というメッセージC31を送信する。このメッセージも、記憶部16の文例テーブルに予め記憶されており、状況に応じて適切な文例を文例テーブルから読み取って、送信するようになっている。以下、予約支援サーバ1側からメッセージを送信する場合には、状況に応じて適切な文例を文例テーブルから読み取って送信する。
<4−2:日付判断処理>
受信したメッセージの内容が、図13に示すように数字4ケタのメッセージC30であった場合には、予約支援サーバ1のCPU30は、メッセージの内容を解析し(図19;S90)、解析の結果、ゴルフ場を予約する日付が送信されたと判断する。そして、CPU30は、日付が送信されたと判断した場合には、ラベルLB2に続いて記載された処理を行う。まず、CPU30は、「8月25日ですね。」等の確認のメッセージC34を送信して、受信したメッセージの内容である日付を仮登録する(図19;S201)。なお、本実施形態において仮登録とは、受信したメッセージの内容を一時的に予約支援サーバ1の記憶部16に記憶させておくことをいう。また、本実施形態においては、日付などの仮登録する情報を、チャットIDと関連付けて仮登録を行う。
次に、予約支援サーバ1のCPU30は、ゴルフ場の仮登録が行われたかどうかを判断し(図19;S202)、まだゴルフ場の仮登録が行われていない場合には(図19;S202:NO)、ユーザの住所が入力済みであるかどうかを判断する(図19;S204)。住所が入力済みではない場合には(図19;S204:NO)、CPU30は、住所の入力を要求するメッセージを送信する(図19;S205)。図13に示す例では、CPU30は、「8月25日ですね。」という確認のメッセージC34を送信した後に、「おすすめのゴルフ場を探してみます。位置情報をおしえてくださいね。」というメッセージC35を送信する。
受信したメッセージの内容が、図13に示すように数字4ケタのメッセージC30であった場合には、予約支援サーバ1のCPU30は、メッセージの内容を解析し(図19;S90)、解析の結果、ゴルフ場を予約する日付が送信されたと判断する。そして、CPU30は、日付が送信されたと判断した場合には、ラベルLB2に続いて記載された処理を行う。まず、CPU30は、「8月25日ですね。」等の確認のメッセージC34を送信して、受信したメッセージの内容である日付を仮登録する(図19;S201)。なお、本実施形態において仮登録とは、受信したメッセージの内容を一時的に予約支援サーバ1の記憶部16に記憶させておくことをいう。また、本実施形態においては、日付などの仮登録する情報を、チャットIDと関連付けて仮登録を行う。
次に、予約支援サーバ1のCPU30は、ゴルフ場の仮登録が行われたかどうかを判断し(図19;S202)、まだゴルフ場の仮登録が行われていない場合には(図19;S202:NO)、ユーザの住所が入力済みであるかどうかを判断する(図19;S204)。住所が入力済みではない場合には(図19;S204:NO)、CPU30は、住所の入力を要求するメッセージを送信する(図19;S205)。図13に示す例では、CPU30は、「8月25日ですね。」という確認のメッセージC34を送信した後に、「おすすめのゴルフ場を探してみます。位置情報をおしえてくださいね。」というメッセージC35を送信する。
一方、ゴルフ場の仮登録が行われている場合には(図19;S202:YES)、つまり、先にゴルフ場の仮登録が行われた後に、日付の仮登録(図19;S201)が行われた場合には、CPU30は、枠情報テーブル5bを参照して、仮登録したゴルフ場及び日付に該当する空き枠情報を抽出し、承認を要求するメッセージを送信する(図19;S203)。
空き枠情報を抽出する際には、例えば次のような優先順位のつけ方を採用した抽出を行う。
1.特定の時間帯(例えば8時)を最初に、次に9時台というように時間帯の優先順位を付けて空き枠を抽出するパターン
2.住所がわかっている場合は、ゴルフ場までの理論的所要時間を算出し、所定の時間(例えば朝6時)に出発したとして到着予想時刻を算出して、そこから所定時間(例えば30分)経過後の時間帯の空き枠を抽出するパターン
3.空き枠の中からランダムで一つ抽出するパターン
但し、以上のようなパターン以外のパターンを採用してもよい。本実施形態では、上記「1.」のパターンを採用する。
図13に示す例では、「8月25日も空いています。4人で7:43スタート、食事つきで12,000円です。どうでしょう、予約しておきますか?」というメッセージC39が送信される。
1.特定の時間帯(例えば8時)を最初に、次に9時台というように時間帯の優先順位を付けて空き枠を抽出するパターン
2.住所がわかっている場合は、ゴルフ場までの理論的所要時間を算出し、所定の時間(例えば朝6時)に出発したとして到着予想時刻を算出して、そこから所定時間(例えば30分)経過後の時間帯の空き枠を抽出するパターン
3.空き枠の中からランダムで一つ抽出するパターン
但し、以上のようなパターン以外のパターンを採用してもよい。本実施形態では、上記「1.」のパターンを採用する。
図13に示す例では、「8月25日も空いています。4人で7:43スタート、食事つきで12,000円です。どうでしょう、予約しておきますか?」というメッセージC39が送信される。
また、ユーザの住所が入力済みの場合には(図19;S204:YES)、つまり、先に住所の入力が行われた後に、日付の仮登録(図19;S201)が行われた場合には、図20に示すように、CPU30は、入力された住所に基づいて、お勧めのゴルフ場の検索を行う(図20;S802)。検索の後、CPU30は、お勧めのゴルフ場を表示して、ユーザの承認を要求するメッセージを送信する(図20;S803)。
例えば、図13に示す例では、CPU30は、「では赤坂ゴルフ倶楽部はどうでしょう?車で1時間40分くらいです。」というメッセージC37を送信する。このメッセージは、ゴルフ場を表示して、ユーザの承認を要求するメッセージである。
例えば、図13に示す例では、CPU30は、「では赤坂ゴルフ倶楽部はどうでしょう?車で1時間40分くらいです。」というメッセージC37を送信する。このメッセージは、ゴルフ場を表示して、ユーザの承認を要求するメッセージである。
以上のように、CPU30は、日付の仮登録(図19;S201)を行った後は、空き枠情報の表示と承認の要求メッセージ、あるいは、住所入力の要求メッセージを送信する。
日付の確認メッセージC52の送信の直後に別の日付のメッセージC53が送信された場合には、予約支援サーバ1のCPU30は、再び日付の送信があったと判断し、ラベルLB2に続いて記載された処理を行う。つまり、新たな日付を仮登録し(図19;S201)、確認のメッセージを送信する。図14に示す例では、「9月1日もOKですね。わかりました。」という確認メッセージC54が表示される。
また、図14に示すように、確認メッセージC54の送信の直後に、仮登録した日付を取り消すメッセージC55が送信された場合には、予約支援サーバ1のCPU30は、日付を否定する内容を受信したと判断し、図20に示すラベルLB9に続いて記載されたステップS1001以下の処理が行われる。ステップS1001では、仮登録済情報を削除して、確認のメッセージを送信する。図14の例では、「0825ムリ」という日付を否定するメッセージC55を受信した後に、8月25日の日付の仮登録済情報を削除して、「8月25日はNGになったんですね。わかりました。」という確認のメッセージC56を表示させる。次に、他の候補があるかどうかを判断し(図20;S1002)、この場合には他に候補はないので(図20;S1002:NO)、新たな日程の入力を要求するメッセージを表示させる(S1004)。しかし、この例では、8月25日以外の日付が仮登録されているので、新たな日程の入力を要求するメッセージは表示させない。他の候補がある場合には(図20;S1002:YES)、CPU30は、当該他の候補を表示させ、承認を要求する(図20;S1003)。但し、他の候補があると判断した直後に当該他の候補を表示させるのではなく、図14に示すように、ユーザからのメッセージの入力を待ち、当該入力に対する応答をした後に他の候補を表示させるようにしてもよい。
さらに、図14に示すように、日付をカンマ等で区切り、複数の日付を示すメッセージC57が送信された場合には、予約支援サーバ1のCPU30は、複数の日付について入力が行われたと判断する。複数の日付について入力が行われたと判断した場合には、ラベルLB3に続いて記載されたステップS301以降の処理が行われる。まず、複数の日付を仮登録する(図19;S301)。また、2つの日付をハイフンで結ぶメッセージC57が送信された場合には、予約支援サーバ1のCPU30は、期間について入力が行われたと判断する。期間について入力が行われたと判断した場合には、ラベルLB4に続いて記載された処理が行われる。つまり、つまり、予約支援サーバ1のCPU30は、ユーザアカウントと関連付けて、期間の仮登録を行う(図19;S401)。図14の例では、「0908,0915−0922」というメッセージC57が送信されたので、予約支援サーバ1のCPU30は、日付として9月8日と、9月15日から9月22日の期間とを仮登録する。そして、「9月8日、9月15日から9月22日もOKですね。わかりました。」という確認メッセージC58を送信して表示させる。
複数日付の仮登録(図19;S301)、または、期間の仮登録(図19;S401)が行われた後は、優先順位に基づいて選択した1日で空き枠検索の準備が行われる(図19;S302)。本実施形態では、以下のような優先順位に従って特定の1日を決定する。
順位1:仮登録した日付に該当する日であって、予約を行っている現時点から最も近い土曜日(あるいは翌日が休日である日)
順位2:仮登録した日付に該当する日であって、予約を行っている現時点から最も近い日曜日
順位3:仮登録した日付に該当する日であって、予約を行っている現時点から次に近い土曜日(あるいは翌日が休日である日)
順位4:仮登録した日付に該当する日であって、予約を行っている現時点から次に近い日曜日
順位5:仮登録した日付に該当する日であって、予約を行っている現時点から最も近い平日
順位2:仮登録した日付に該当する日であって、予約を行っている現時点から最も近い日曜日
順位3:仮登録した日付に該当する日であって、予約を行っている現時点から次に近い土曜日(あるいは翌日が休日である日)
順位4:仮登録した日付に該当する日であって、予約を行っている現時点から次に近い日曜日
順位5:仮登録した日付に該当する日であって、予約を行っている現時点から最も近い平日
本実施形態では、前記順位1から順に該当する日を探すこととしているが、これは一例であって、特定の1日が決定できればどのような方法を採用してもよい。例えば、仮登録した日付に該当する日が2以上ある場合、その中からランダムで特定の1日を決定することとしてもよい。
なお、本実施形態では、ユーザから日程に関するメッセージを受信した場合、図14に示すように「8月25日ですね。」等と応答しているが、例えば「8月25日ですね。わかりました。ではゴルフ場を検索しますので住所を入力してください。GPSの位置情報でも構いません。」等と応答するところを、「ではゴルフ場を検索しますので住所を入力してください。GPSの位置情報でも構いません。」等の、住所入力の要求等の他の部分の記載を省略したものである。
また、日程の入力を要求するメッセージを送信したにも拘わらず、例えば、「東京都」等のように日程とは無関係の送信が行われることも考えられる。この場合には、エラーとして判断するようにしてもよいが、本実施形態では、受信したメッセージの内容を解析し、例えば都道府県についての内容であると判断した場合には、ゴルフ場の検索処理を行うようになっている。本実施形態では、このように、どのような問い掛けを行ったかどうかに拘わらず、ユーザが送信したメッセージの内容を解析して適切な処理を行う。すなわち本実施形態においては、受信したメッセージの内容が、応答部11からの問いかけに対する回答とは異なるが、解析部10による解析の結果、他の問いかけに対する回答に相当する場合は、当該他の問いかけに対する回答であると解析することとしている。従って、日程からでも、また、場所からでも、予約に必要な情報を決定していくことができる。
具体的には、例えば日程の問いかけに対する回答かどうかの判断処理の一例を、図24に示す。
1)予約支援サーバ1のCPU30は、メッセージの内容が8桁の数字の文字列であるかどうかを判断する(S1500)。判断の結果が否定的な場合には(S1500:NO)、CPU30は、S1503の判断に移行する。S1500の判断の結果が肯定的な場合には(S1500:YES)、CPU30は、上位4桁がその年又は翌年の西暦に合致するかどうかを判断する(S1501)。判断の結果が否定的である場合には(S1500:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。
しかし、S1501の判断の結果が肯定的である場合には(S1501:YES)、CPU30は、下位4桁を抽出し(S1502)、そのうちの上位2桁が01〜12であるかどうかを判断する(S1504)。上位2桁が01〜12ではない場合には(S1504:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。上位2桁が01〜12である場合には(S1504:YES)、CPU30は、下位2桁が、上位2桁の数字に応じて、01以上であって、28、29、30、31のいずれか、又は以下であるかどうかを判断する(S1505)。判断の結果が否定的な場合には(S1505:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。S1505の判断の結果が肯定的な場合には(S1505:YES)、CPU30は、メッセージの内容が日程の問いかけに対する回答であると判断する(S1510)。
具体的には、例えば日程の問いかけに対する回答かどうかの判断処理の一例を、図24に示す。
1)予約支援サーバ1のCPU30は、メッセージの内容が8桁の数字の文字列であるかどうかを判断する(S1500)。判断の結果が否定的な場合には(S1500:NO)、CPU30は、S1503の判断に移行する。S1500の判断の結果が肯定的な場合には(S1500:YES)、CPU30は、上位4桁がその年又は翌年の西暦に合致するかどうかを判断する(S1501)。判断の結果が否定的である場合には(S1500:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。
しかし、S1501の判断の結果が肯定的である場合には(S1501:YES)、CPU30は、下位4桁を抽出し(S1502)、そのうちの上位2桁が01〜12であるかどうかを判断する(S1504)。上位2桁が01〜12ではない場合には(S1504:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。上位2桁が01〜12である場合には(S1504:YES)、CPU30は、下位2桁が、上位2桁の数字に応じて、01以上であって、28、29、30、31のいずれか、又は以下であるかどうかを判断する(S1505)。判断の結果が否定的な場合には(S1505:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。S1505の判断の結果が肯定的な場合には(S1505:YES)、CPU30は、メッセージの内容が日程の問いかけに対する回答であると判断する(S1510)。
2)予約支援サーバ1のCPU30は、メッセージの内容が4桁の数字の文字列であるかどうかを判断する(S1503)。判断の結果が否定的な場合には(S1503:NO)、CPU30は、S1506の判断に移行する。S1503の判断の結果が肯定的な場合には(S1503:YES)、CPU30は、上位2桁が01〜12であるかどうかを判断する(S1504)。上位2桁が01〜12ではない場合には(S1504:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。上位2桁が01〜12である場合には(S1504:YES)、CPU30は、下位2桁が、上位2桁の数字に応じて、01以上であって、28、29、30、31のいずれか、又は以下であるかどうかを判断する(S1505)。判断の結果が否定的な場合には(S1505:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1512)。S1505の判断の結果が肯定的な場合には(S1505:YES)、メッセージの内容が日程の問いかけに対する回答であると判断する(S1510)。
3)予約支援サーバ1のCPU30は、メッセージの内容が、数字又は漢数字と「月」が組み合わされた文字列であって、数字又は漢数字が1〜12の範囲にあるかどうかを判断する(S1506)。判断の結果が否定的な場合には(S1506:NO)、CPU30は、S1507の判断に移行する。S1506の判断の結果が肯定的な場合には(S1506:YES)、CPU30は、メッセージの内容が日程の問いかけに対する回答であると判断する(S1510)。
4)予約支援サーバ1のCPU30は、メッセージの内容が、数字又は漢数字と「月」及び「日」が組み合わされた文字列かどうかを判断する(S1507)。判断の結果が否定的な場合には(S1507:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1511)。S1507の判断の結果が肯定的な場合には(S1507:YES)、CPU30は、「月」の前の数字又は漢数字が1〜12の範囲かどうかを判断する(S1508)。判断の結果が否定的な場合には(S1508:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1511)。S1508の判断の結果が肯定的な場合には(S1508:YES)、CPU30は、「日」の前の数字又は漢数字が、「月」の前の数字又は漢数字に応じて、1以上であって、28、29、30、31のいずれか、又は以下であるかどうかを判断する(S1509)。判断の結果が否定的な場合には(S1509:NO)、CPU30は、メッセージの内容が日程に関するものではないと判断する(S1511)。S1509の判断の結果が肯定的な場合には(S1509:YES)、CPU30は、メッセージの内容が日程の問いかけに対する回答であると判断する(S1510)。
なお、CPU30は、メッセージの内容が日程に関するものではないと判断した場合には、ゴルフ場名や地名などの他の内容であるかどうかを判断する。CPU30は、いずれの内容にも該当しないと判断した場合には、不適切な入力であるので、「認識できませんでした。もう一度入力してください。」等とユーザに対して応答するようにしてもよい。
また、ゴルフ場名や地域名については、本実施形態では、ゴルフ場名、都道府県名、市区町村といった都市名、の漢字、平仮名、片仮名をそれぞれ記憶しておく。そしてユーザから受信したメッセージの内容がこれらに該当するか否かを判断することにより、後述のように、メッセージの内容が、ゴルフ場名、都道府県名または都市名であると判断することとなる。
また、ゴルフ場名や地域名については、本実施形態では、ゴルフ場名、都道府県名、市区町村といった都市名、の漢字、平仮名、片仮名をそれぞれ記憶しておく。そしてユーザから受信したメッセージの内容がこれらに該当するか否かを判断することにより、後述のように、メッセージの内容が、ゴルフ場名、都道府県名または都市名であると判断することとなる。
<4−3:ゴルフ場検索処理>
受信したメッセージの内容が、都道府県名、あるいは、都市名と判断した場合には、都道府県別、あるいは都市別のお勧めのゴルフ場の検索を行う。なお、ユーザの住所の入力と、ゴルフ場検索のための都道府県名、あるいは、都市名の入力との区別は次のように行う。送信された内容が、都道府県名のみ、あるいは、都市名のみ、もしくは都道府県名と都市名との組み合わせである場合には、ゴルフ場検索のための都道府県名、あるいは、都市名の入力があったと判断する。しかし、都市名以降の詳しい地区名、番地等が含まれている場合には、ユーザの住所の入力があったと判断する。
受信したメッセージの内容が、都道府県名、あるいは、都市名と判断した場合には、都道府県別、あるいは都市別のお勧めのゴルフ場の検索を行う。なお、ユーザの住所の入力と、ゴルフ場検索のための都道府県名、あるいは、都市名の入力との区別は次のように行う。送信された内容が、都道府県名のみ、あるいは、都市名のみ、もしくは都道府県名と都市名との組み合わせである場合には、ゴルフ場検索のための都道府県名、あるいは、都市名の入力があったと判断する。しかし、都市名以降の詳しい地区名、番地等が含まれている場合には、ユーザの住所の入力があったと判断する。
受信したメッセージの内容が、都道府県名、あるいは、都市名と判断した場合には、ラベルLB5に続いて記載された処理が行われる。まず、予め記憶しておいて優先都市(地域)を基準にゴルフ場を検索する旨の応答を行う(図19;S501)。例えば、ユーザのメッセージが「栃木県」であった場合には、「那須地区でゴルフ場を探してみます。」というような応答を行う。そして、予約支援サーバ1のCPU30は、マップサーバ4にアクセスし、マップサーバ4の施設情報テーブル4bから、当該優先都市(地域)内で位置登録されているゴルフ場を検索し(図19;S502)、そのうちの一つのゴルフ場をお勧めのゴルフ場として表示して、ユーザの承認を要求するメッセージを表示する(図19;S503)。
ここで、検索したゴルフ場の中から一つのゴルフ場を選択する際には、ランダムに一つのゴルフ場を選択してもよいし、予め設けておいた優先順位に基づいて一つのゴルフ場を選択するようにしてもよい。優先順位は、予約支援サーバ1において予め設定しておいてもよいし、例えば予約後に実際にラウンドしたゴルフ場の評価をユーザに行ってもらい、これらの評価を集積して評価値の平均値が高い順としてもよい。また、平均値が同じである場合には、50音順としてもよい。本実施形態では、予約支援サーバ1において予め優先順位を設定している。
図15に示すメッセージC65のように、受信したメッセージの内容が、ゴルフ場名自体であると判断した場合には、ラベルLB6に続いて記載された処理が行われる。まず、ゴルフ場名の仮登録を行う(図19;S601)。ゴルフ場名の仮登録を行うには、そのゴルフ場名のテキストデータを解析して、記憶部16に記憶されているゴルフ場情報を参照する。ゴルフ場情報には、ゴルフ場名とゴルフ場IDとが関連付けて記憶されており、ゴルフ場情報を参照することにより、そのゴルフ場に対応するゴルフ場IDを特定することができる。ゴルフ場IDが特定できた場合には、そのゴルフ場名とゴルフ場IDとを仮登録する(図19;S601)。そして、図15に示すメッセージC66のような確認メッセージを送信する。図15の例では、メッセージC65が「西麻布ゴルフクラブ」とゴルフ場名を表しているので、メッセージC66のように「西麻布ゴルフですね。2ヶ月前にもプレーされています。車で1.5時間くらいですね。」という確認メッセージを送信する。このメッセージC66では、過去のラウンド履歴、及び当該ゴルフ場までの所要時間を表示しているが、このようなメッセージを送信するためには、予約支援サーバ1の記憶部16に、各ユーザの過去のラウンド履歴、及びゴルフ場に関する情報等を、予約者IDと関連付けて記憶させておけばよい。なお、本実施形態においては、後述するように、外部管理サーバ3によって提供されるメッセージ送受信アプリケーションのユーザアカウントと、予約サーバ5によって提供される予約サービスの予約者IDとの関連付けが行われるようになっている。
ゴルフ場名の仮登録が行われた後は、日程についての仮登録が既に行われたかどうかを判断する(図19;S602)。日程の仮登録が未だ行われていない場合には(図19;S602:NO)、日程の入力を要求するメッセージを送信する(図19;S603)。例えば、「日程を数字4ケタで入力してください。」のようなメッセージを送信する。また、日程の仮登録が既に行われている場合には(図19;S602:YES)、予約支援サーバ1のCPU30は、予約サーバ5を参照して、空き枠情報を抽出し、ユーザに対して承認要求のメッセージを送信する(図19;S203)。例えば、「西麻布ゴルフクラブで9月25日ですね。○時○分アウトスタートの△プランはいかがでしょうか。料金は×××円です。」というようなメッセージを送信する。
図15に示すメッセージC62のようにお勧めとして提示したゴルフ場に対して、メッセージC63のように「遠いなー」と入力された場合、あるいは、「他のところ」等の同意しない旨の入力が行われた場合には、提示した情報が拒否されたと判断し、ラベルLB9に続いて記載された処理が行なわれる。まず、仮登録情報がある場合には仮登録情報を削除する(図20;S1001)。図15に示すメッセージC62を送信した段階では仮登録情報は存在しないので、ステップS1001の処理は行わず、次の処理に移行する。つまり、他に候補があるかどうかを判断し(図20;S1002)、他に候補がある場合には(図20;S1002:YES)、お勧めゴルフ場の再検索を行い、他の候補を表示して承認を要求するメッセージを表示する(図20;S1003)。最初の検索時に複数のゴルフ場が抽出されている場合には、予約支援サーバ1において予め設定した優先順位の次の順位のゴルフ情報を次の候補としてもよい。
しかし、他に候補がない場合には(図20;S1002:NO)、新たなお勧めゴルフ場の提示を行うために、位置情報の入力を要求する(図20;S1004)。
しかし、他に候補がない場合には(図20;S1002:NO)、新たなお勧めゴルフ場の提示を行うために、位置情報の入力を要求する(図20;S1004)。
図15に示すメッセージC61のように、ユーザが入力した情報が場所に関する情報で、都市名以降の詳しい地区名、番地等が含まれている場合には、ユーザの住所の入力があったと判断する。この場合には、ラベルLB7に続いて記載された処理が行われる。まず、日程の仮登録が既に行われているかどうかを判断し(図20;S801)、日程の仮登録がまだ行われていない場合には(図20;S801:NO)、日程の入力を要求するメッセージを送信する(図20;S804)。しかし、日程の仮登録が既に行われている場合には(図20;S801:YES)、お勧めのゴルフ場の検索を行う(図20;S802)。お勧めのゴルフ場の検索は次のように行われる。まず、予約支援サーバ1のCPU30は、受信した住所をマップサーバ4に送信し、当該住所に対応する位置情報(緯度経度情報)を取得する。次に、予約支援サーバ1のCPU30は、取得した位置情報をマップサーバ4に送信し、当該位置情報に相当する位置から所定範囲内、例えば、車で所要時間2時間以内にあるゴルフ場のリストと、各ゴルフ場までの所要時間の情報を取得する。そして、所要時間の最も短いゴルフ場をお勧めゴルフ場として提示し、ユーザに承認を要求するメッセージを送信する(図20;S803)。図15の例では、「六本木カントリーはどうでしょう?車で2時間くらいです。」というメッセージC62を送信している。
なお、位置情報(緯度経度情報)がユーザから送信されてきた場合も、住所が入力されたと判断する。従って、ラベルLB7に続いて記載された処理が行われる。つまり、日程の仮登録が既に行われているかどうかを判断し(図20;S801)、日程の仮登録がまだ行われていない場合には(図20;S801:NO)、日程の入力を要求するメッセージを送信する(図20;S804)。しかし、日程の仮登録が既に行われている場合には(図20;S801:YES)、お勧めのゴルフ場の検索を行う(図20;S802)。この場合のお勧めのゴルフ場の検索は次のように行われる。まず、予約支援サーバ1のCPU30は、受信した位置情報(緯度経度情報)をマップサーバ4に送信し、当該位置情報に相当する位置から所定範囲内、例えば、車で所要時間2時間以内にあるゴルフ場のリストと、各ゴルフ場までの所要時間の情報を取得する。そして、所要時間の最も短いゴルフ場をお勧めゴルフ場として提示し、ユーザに承認を要求するメッセージを送信する(図19;S803)。
<4−4:友達招待処理>
次に、友達を招待した場合の予約支援処理について説明する。外部管理サーバ3によって提供されるメッセージ送受信サービスにおけるチャット処理では、友達を招待して複数人でチャットを行うことができる。予め招待する友達を選択してチャットを開始することもできるし、誰かとチャットを行っている状態で、新たな友達を招待することもできる。本実施形態では、専用アカウントであるゴルフ予約A10と上述したようなチャット形式で予約に必要な情報を入力している状態で、新たな友達を招待する例について説明する。
次に、友達を招待した場合の予約支援処理について説明する。外部管理サーバ3によって提供されるメッセージ送受信サービスにおけるチャット処理では、友達を招待して複数人でチャットを行うことができる。予め招待する友達を選択してチャットを開始することもできるし、誰かとチャットを行っている状態で、新たな友達を招待することもできる。本実施形態では、専用アカウントであるゴルフ予約A10と上述したようなチャット形式で予約に必要な情報を入力している状態で、新たな友達を招待する例について説明する。
本実施形態においては、外部管理サーバ3の記憶部には、チャット処理についての情報が記憶されるチャット情報テーブル3bが備えられている。チャット情報テーブル3bは、図25に示すように、チャットID、受付日時、差出人ID、宛先IDが記憶される。ユーザが、図9に示すチャット画面P2において、フレンド表示領域B2に表示されるいずれかのユーザを選択し、チャットアイコンA7を押下すると、端末装置2のCPU40は、外部管理サーバ3に対して、チャット処理の開始要求を送信する。チャット処理の開始要求を受信した外部管理サーバ3のCPUは、当該チャット処理を一意に識別するチャットIDを割り当て、当該チャットIDを、チャット情報テーブル3bのチャットIDのフィールドに記憶させる。
また、外部管理サーバ3のCPUは、前記チャット処理の開始要求を受け付けた日時を、チャット情報テーブル3bの受付日時のフィールドに記憶させる。さらに、外部管理サーバ3のCPUは、前記チャット処理の開始要求を送信した端末装置2のユーザである第1のユーザのユーザアカウントを、チャット情報テーブル3bの差出人IDのフィールドに記憶させる。また、外部管理サーバ3のCPUは、前記チャット処理の相手として選択された第2のユーザのユーザアカウントを、チャット情報テーブル3bの宛先IDのフィールドに記憶させる。宛先IDのフィールドは複数用意されており、複数のユーザのユーザアカウントを記憶させることができる。該当するユーザが存在しない場合には、宛先IDのフィールドにはnullが記憶される。
外部管理サーバ3のCPUは、以上のようにチャットID等をチャット情報テーブル3bに記憶させた後、図10に示すメッセージ表示画面P3を、前記チャット処理の開始要求を送信した前記端末装置2に表示させる。当該端末装置2において、第1のユーザがメッセージを入力すると、外部管理サーバ3のCPUは、当該メッセージを、第2のユーザ宛に送信する。同様に、第2のユーザがメッセージを入力すると、外部管理サーバ3のCPUは、当該メッセージを、第1のユーザ宛に送信する。このようにしてチャット処理が行われることになる。
以上のような処理は、ユーザが誰かとチャットを行っている状態で、新たな友達を招待した際にも同様に行われる。つまり、第1のユーザが第2のユーザとチャットを行うと、当該チャットに対してチャットIDが割り当てられるが、この状態で、新たな第3のユーザを招待した際には、外部管理サーバ3のCPUは、第1のユーザ、第2のユーザ、及び第3のユーザによる新たなチャット処理の開始要求があったと判断し、この新たなチャットに対して新たなチャットIDを割り当てる。
例えば、第1のユーザが図16に示す機能ボタンC11を押下すると、「友達を招待する」というボタンが表示され(図示省略)、このボタンを押すと招待する友達を選択する画面が表示される(図示省略)。この画面において、第1のユーザが、第2のユーザとして専用アカウントであるゴルフ予約A10と、第3のユーザである友達のユーザを招待した際には、外部管理サーバ3のCPUは、新たなチャット処理の開始要求があったと判断し、この新たなチャットに対して新たなチャットIDを割り当てる。そして、外部管理サーバ3のCPUは、チャット処理の開始要求を受け付けた日時を、チャット情報テーブル3bの受付日時のフィールドに記憶させ、第1のユーザのユーザアカウントを差出人IDのフィールドに、ゴルフ予約A10のユーザアカウントと、第3のユーザである友達のユーザアカウントを、宛先IDのフィールドに記憶させる。
一方、第1のユーザの端末装置2のCPU40は、図16に示すように、新たなチャットルームが設定されるとともに、「ゴルフ予約さん、美希さんが参加しました。」というメッセージC70を端末装置2に表示させる。
但し、この状態では、招待された友達と専用アカウントであるゴルフ予約A10は、招待されたことを検知することはできない。
しかし、図16のメッセージC71のように、招待した第1のユーザが何等かのメッセージを送信した場合には、招待した第1のユーザの端末装置2に予め記憶されている、第1のユーザのユーザアカウント、招待された友達である第2のユーザのユーザアカウント、及び、ゴルフ予約A10のユーザアカウントと共に、前記メッセージが、予約支援サーバ1に送信される。予約支援サーバ1のCPU30は、これらのユーザアカウントを検知することにより、第1のユーザがゴルフ予約A10と第2のユーザ宛にメッセージを発信したこと、つまり、友達を招待した場合であると判断することができる(図20:LB8)。
但し、この状態では、招待された友達と専用アカウントであるゴルフ予約A10は、招待されたことを検知することはできない。
しかし、図16のメッセージC71のように、招待した第1のユーザが何等かのメッセージを送信した場合には、招待した第1のユーザの端末装置2に予め記憶されている、第1のユーザのユーザアカウント、招待された友達である第2のユーザのユーザアカウント、及び、ゴルフ予約A10のユーザアカウントと共に、前記メッセージが、予約支援サーバ1に送信される。予約支援サーバ1のCPU30は、これらのユーザアカウントを検知することにより、第1のユーザがゴルフ予約A10と第2のユーザ宛にメッセージを発信したこと、つまり、友達を招待した場合であると判断することができる(図20:LB8)。
次に、予約支援サーバ1のCPU30は、仮登録情報の抽出処理を行う(図20:S901)。具体的には、予約支援サーバ1のCPU30は、まず、図26Aに示すチャット履歴テーブル16aから、差出人である第1のユーザのユーザアカウントが、差出人IDまたは宛先IDとして記憶されているレコードを抽出する。当該レコードが抽出できなかった場合には、予約支援サーバ1のCPU30は、今回の新たなチャットに表示すべき仮登録情報はないと判断する。
しかし、当該レコードが抽出された場合には、予約支援サーバ1のCPU30は、抽出されたレコードの中から、受付日時が直近の所定時間以内、例えば1週間以内のレコードを抽出する。当該レコードが抽出できなかった場合には、予約支援サーバ1のCPU30は、今回の新たなチャットに表示すべき仮登録情報はないと判断する。しかし、当該レコードが抽出された場合には、予約支援サーバ1のCPU30は、抽出されたレコードからチャットIDを読み出す。
しかし、当該レコードが抽出された場合には、予約支援サーバ1のCPU30は、抽出されたレコードの中から、受付日時が直近の所定時間以内、例えば1週間以内のレコードを抽出する。当該レコードが抽出できなかった場合には、予約支援サーバ1のCPU30は、今回の新たなチャットに表示すべき仮登録情報はないと判断する。しかし、当該レコードが抽出された場合には、予約支援サーバ1のCPU30は、抽出されたレコードからチャットIDを読み出す。
予約支援サーバ1のCPU30は、予約支援サーバ1のCPU30は、受信した差出人IDと宛先IDの中に、今回の新たなチャットの参加メンバー以外のメンバーのユーザアカウントが含まれていないかどうかを確認する。例えば、今回の新たなチャットの参加メンバーは、第1のユーザ、第2のユーザ、及びゴルフ予約A10なので、受信した差出人IDと宛先IDに含まれるユーザアカウントが、第1のユーザとゴルフ予約A10のユーザアカウントであれば、直近の所定時間以内に行われた第1のユーザとゴルフ予約A10とのチャットであることが判る。したがってこの場合は、予約支援サーバ1のCPU30は、当該チャットIDについては除外しない。しかし、受信した差出人IDと宛先IDに含まれるユーザアカウントが、第1のユーザと、今回の新たなチャットの参加メンバーではない第3のユーザのユーザアカウントである場合には、当該チャットIDに係るチャットは、今回の新たなチャットとは無関係のチャットであると判断し、予約支援サーバ1のCPU30は、当該チャットIDについては除外する。
以上のような処理により、除外されずに残ったチャットIDが存在している場合には、予約支援サーバ1のCPU30は、当該チャットIDに係るチャットのメッセージを検索することにより、予約処理が完了していないチャットがあるかどうかを判断する。具体的には、予約支援サーバ1のCPU30は、チャット履歴テーブル16aから、当該チャットIDのメッセージを抽出し、予約処理が完了していないかどうかを解析する。例えば、抽出したメッセージ中に、「予約しました。」等のメッセージが残されていれば、予約支援サーバ1のCPU30は、予約処理が完了していると判断できる。しかし、抽出したメッセージの中に、このようなメッセージがない場合には、予約支援サーバ1のCPU30は、予約処理が完了していないと判断できる。予約支援サーバ1のCPU30は、予約処理が完了していないと判断した場合には、当該チャットIDに関連付けられた仮登録情報を抽出する(図20:S901)。本実施形態では、仮登録情報は、チャットID及びユーザアカウントと関連付けられて記憶されているので、チャットIDが判れば仮登録情報を読み出すことができる。
なお、例えば上記のような処理によっても複数のチャットIDが予約処理が完了していないとして残る場合がある。この場合、より直近のチャット履歴が残っているチャットIDに関連付けられた仮登録情報を抽出することとしてもよいし、複数のチャットIDが残った場合はいずれも採用せず、新規の予約であると判断して仮登録情報の抽出は行わないこととしてもよいし、その他の方法を採用してもよい。
なお、例えば上記のような処理によっても複数のチャットIDが予約処理が完了していないとして残る場合がある。この場合、より直近のチャット履歴が残っているチャットIDに関連付けられた仮登録情報を抽出することとしてもよいし、複数のチャットIDが残った場合はいずれも採用せず、新規の予約であると判断して仮登録情報の抽出は行わないこととしてもよいし、その他の方法を採用してもよい。
次に、予約支援サーバ1のCPU30は、抽出した仮登録情報に基づいて、日程が既に仮登録されているかどうかを判断し(図20;S902)、日程については未だ仮登録されていない場合には(図20;S902:NO)、それまでに仮登録してある情報を提示すると共に、日程の入力を要求するメッセージを送信する(図20;S903)。本実施形態では、仮登録される情報は、日程の情報とゴルフ場の情報なので、この場合に仮登録されている情報はゴルフ場の情報ということになる。したがって、CPU30は、例えば、図16の例のように、「ゴルフ場の候補は、○○カントリーです。このゴルフ場でプレーする日を数字4ケタで入力してください。」というメッセージC73を送信する。このような日程の入力を要求するメッセージに対して、友達を招待した第1のユーザ、あるいは、招待された第2のユーザから数字4ケタを含む入力が行われた場合には、CPU30は、ラベルLB2、LB3、LB4に続いて記載された日付判断処理を行う。
図16の例では、友達を招待した第1のユーザは「0901」というメッセージC74を送信し、招待された第2のユーザは「0908」というメッセージC75を送信している。この場合には、一人のユーザが複数の日付を入力した場合と同様に取り扱われる。したがって、メッセージC76のように9月1日と9月8日の両方が候補日となったことの確認が行われる。本実施形態では、例えば、「0901ムリ」のように、送信された内容を否定する入力が行われない限りは、送信された内容は有効な内容として取り扱われるようになっている。
また、日程については既に仮登録が行われている場合には(図20;S902:YES)、CPU30は、ゴルフ場についての仮登録が既に行われているかどうかを判断する(図20;S904)。ゴルフ場については未だ仮登録されていない場合には(図20;S904:NO)、CPU30は、それまでに仮登録してある情報を提示すると共に、ゴルフ場の入力を要求するメッセージを送信する(図20;S905)。この場合に仮登録されている情報は日程の情報なので、CPU30は、例えば、「これまでに、日程の候補として9月1日が挙がっています。お勧めのゴルフ場を検索しますので、位置情報をおしえてください。」のようなメッセージを送信する。このような日程の入力を要求するメッセージに対して、友達を招待した第1のユーザ、あるいは、招待された第2のユーザから、都道府県の入力、ゴルフ場名の入力、あるいは住所の入力が行われた場合には、CPU30は、ラベルLB5、LB6に続いて記載された処理、または、ラベルLB7に続いて記載された処理を行うことになる。
そして、日程についても既に仮登録が行われ(図20;S902:YES)、さらに場所についても既に仮登録が行われている場合には(図20;S904:YES)、CPU30は、抽出された空き枠情報を提示して承認の入力を要求するメッセージを送信する(図20;S906)。このメッセージは、例えば、予約支援サーバ1の記憶部16に文例データベースを構築しておき、仮登録されている情報を文例データベースの文例に当て嵌めて報告文を作成する形式で作成される。図16の例では、招待された友達に対して、日程の入力を要求するメッセージC73が最初に送信されているが、このメッセージC73は、「ゴルフ場の候補は、[#ゴルフ場名]です。このゴルフ場でプレーする日を数字4ケタで入力してください。」という文例に、[#ゴルフ場名]として仮登録されている「西麻布カントリー」を当て嵌めて報告文として作成される。日程と場所の両方の仮登録が行われている場合には、メッセージC73の代わりに、メッセージC77のような空き枠情報を確認するメッセージが、最初に送信されることになる。このメッセージC77は、「[#日程]に[#ゴルフ場名]、[#プラン]に空きがありました。[#料金]です。これでいいですか?」という文例に、[#日程]、[#ゴルフ場名]、[#プラン]、[#料金]として仮登録されている「9月1日」、「西麻布カントリー」、「4人で7:00スタート」、「キャディ付きで10,000円」を当て嵌めて報告文として作成すればよい。本実施形態では、CPU30は、招待者(招待されたユーザ)と招待したユーザの両方が承認する旨のメッセージを送信した場合に、承認されたものと判断し、予約サーバ5の予約情報テーブル5cに本登録する。この場合、CPU30は、ユーザからはメッセージと関連付けて送信者のIDが送信されるため、このIDを管理することによって招待者と招待したユーザの両方が承認したかどうかを判断する。
図16の例のように、「えー、早いなー」のような否定的なメッセージC78が送信された場合には、予約支援サーバ1のCPU30は、提示した情報が否定されたと判断する(図20;S1000)。そして、CPU30は、他に候補があるかどうかを判断し(図20;S1001)、他に候補がある場合には(図20;S1001:YES)、他の候補を表示して、承認を要求するメッセージを送信する(図20;S1002)。図16の例では、CPU30は、「8:00スタートも空いていました。これでいいですか?」というメッセージC79を表示させる。
また、他に候補がない場合には(図20;S1001:NO)、CPU30は、仮登録情報を削除する(図20;S1003)。例えば、日程の情報の入力が要求されている場合に、「0901」というメッセージが送信されると、日程として9月1日が仮登録されるが、その後に、「0901ムリ」のようなメッセージが送信された場合には、9月1日という日程の仮登録は削除されることになる。そして、CPU30は、新たに日程の入力を要求するメッセージを送信する(図20;S1004)。
同様に、ゴルフ場の候補の提示に対して、否定的なメッセージが送信された場合には、CPU30は、他に候補があるかどうかを判断し(図20;S1001)、他に候補がある場合には(図20;S1001:YES)、他の候補を表示して、承認を要求するメッセージを送信する(図20;S1002)。しかし、他に候補がない場合には(図20;S1001:NO)、CPU30は、仮登録されているゴルフ場の情報を削除する(図20;S1003)。そして、CPU30は、住所の入力を要求するメッセージを送信する(S1004)。
なお、友達を招待した場合には、招待したユーザと招待された友達との間での会話と、予約のための入力とを区別するために、4ケタの数字のみの入力、あるいは、「9月15日」のように日付のみの入力があった場合に日程の入力があったものとして処理を行う。しかし、「9月15日?」のように日付や4ケタの数字以外の言葉等、この場合のように「?」のマークが含まれている場合には、招待したユーザと招待された友達との間での会話と考えられるので、日程についての入力として処理しないようにしてもよい。また、日程を否定する場合にも、4ケタの数字や日付に「ムリ」等の否定する言葉が付け加えられた場合に、その日程を否定する入力が行われたとして処理を行うようにしてもよい。同様に、都道府県名または地域、あるいはゴルフ場名のような場所のみの入力があった場合には、場所についての入力があったものとして処理を行い、都道府県名または地域、あるいはゴルフ場名のような場所に、「ムリ」等の否定する言葉が付け加えられた場合に、その場所を否定する入力が行われたとして処理を行うようにしてもよい。
なお、友達を招待した場合には、招待したユーザと招待された友達との間での会話と、予約のための入力とを区別するために、4ケタの数字のみの入力、あるいは、「9月15日」のように日付のみの入力があった場合に日程の入力があったものとして処理を行う。しかし、「9月15日?」のように日付や4ケタの数字以外の言葉等、この場合のように「?」のマークが含まれている場合には、招待したユーザと招待された友達との間での会話と考えられるので、日程についての入力として処理しないようにしてもよい。また、日程を否定する場合にも、4ケタの数字や日付に「ムリ」等の否定する言葉が付け加えられた場合に、その日程を否定する入力が行われたとして処理を行うようにしてもよい。同様に、都道府県名または地域、あるいはゴルフ場名のような場所のみの入力があった場合には、場所についての入力があったものとして処理を行い、都道府県名または地域、あるいはゴルフ場名のような場所に、「ムリ」等の否定する言葉が付け加えられた場合に、その場所を否定する入力が行われたとして処理を行うようにしてもよい。
本実施形態では、友達を招待した場合には、招待したユーザ、あるいは、招待された友達から否定的なメッセージが送信されない限りは、提示した情報が承認されたものとして処理を進めるが、例えば、「はい。」あるいは「いいよ。」等のように積極的に肯定的なメッセージが送信された場合には、CPU30は、提示した情報が承認されたものと判断する(図21;S1200)。そして、CPU30は、承認された情報を仮登録し(図21;S1201)、日程について仮登録済みかどうかを判断する(図21;S1202)。日程について仮登録済みではない場合には(図21;S1202:NO)、CPU30は、日付の入力を要求するメッセージを送信する(図21;S1203)。
日程について仮登録済みの場合には(図21;S1202:YES)、CPU30は、ゴルフ場について仮登録済みかどうかを判断する(図21;S1204)。ゴルフ場について仮登録済みではない場合には(図21;S1204:NO)、CPU30は、住所の入力を要求するメッセージを送信する(図21;S1205)。
ゴルフ場について仮登録済みの場合には(図21;S1204:YES)、CPU30は、枠について仮登録済みかどうかを判断する(図21;S1206)。枠について仮登録済みではない場合には(図21;S1206:NO)、CPU30は、空き枠情報を抽出して承認を要求するメッセージを送信する(図21;S1207)。
そして、日程、ゴルフ場、枠の全ての情報について仮登録が行われている場合には、(図21;S1206:YES)、CPU30は、予約サーバ5に対する予約情報の本登録処理を行い(図21;S1208)、予約が完了した旨を表示させる(図21;S1209)。但し、友達が招待されている状態においては、特に枠情報については、招待したユーザと、招待された友達の全員の承認が必要であると考えられる。招待された友達が複数である場合には、招待したユーザと、招待された複数の友達の全員の承認が必要であると考えられる。そこで、本実施形態では、予約サーバ5に対する予約情報の本登録処理を行う前に、CPU30は、枠情報について、否定的なメッセージが送信されていないかどうか、あるいは、招待したユーザと、招待された友達の全員の肯定的なメッセージが送信されているかどうかを判断する。枠情報について、否定的なメッセージが送信されておらず、あるいは、招待したユーザと、招待された友達の全員の肯定的なメッセージが送信されている場合には、CPU30は、予約サーバ5に対する予約情報の本登録処理を行い(図21;S1208)、予約が完了した旨を表示させる(図21;S1209)。
なお、本登録処理が行われる際には、予約サーバ5において予約登録を行う場合の予約者IDと、外部管理サーバ3によって提供されるメッセージ送受信アプリケーションのユーザアカウントとの関連付けが、予約支援サーバ1のCPU30によって行われる。具体的には、予約支援サーバ1のCPU30は、本登録処理を行う際に、ユーザに対して、予約サーバ5へのログイン情報、具体的には予約者IDを入力するように要求する。この時に入力される予約者IDと、ユーザアカウントとを関連付けて記憶部16に記憶させる。したがって、ゴルフ予約A10とユーザとの対話時に、予約支援サーバ1のCPU30は、ユーザアカウントと関連付けられた予約者IDを利用することにより、当該ユーザの過去の予約履歴等を検索し、検索した過去の予約履歴等をゴルフ予約A10に投稿して表示させることができる。
なお、本登録処理が行われる際には、予約サーバ5において予約登録を行う場合の予約者IDと、外部管理サーバ3によって提供されるメッセージ送受信アプリケーションのユーザアカウントとの関連付けが、予約支援サーバ1のCPU30によって行われる。具体的には、予約支援サーバ1のCPU30は、本登録処理を行う際に、ユーザに対して、予約サーバ5へのログイン情報、具体的には予約者IDを入力するように要求する。この時に入力される予約者IDと、ユーザアカウントとを関連付けて記憶部16に記憶させる。したがって、ゴルフ予約A10とユーザとの対話時に、予約支援サーバ1のCPU30は、ユーザアカウントと関連付けられた予約者IDを利用することにより、当該ユーザの過去の予約履歴等を検索し、検索した過去の予約履歴等をゴルフ予約A10に投稿して表示させることができる。
以上のように、本実施形態によれば、友達が途中から招待された場合でも、それまでに仮登録されている内容を提示して、招待された友達に対して承認を求めるので、適切かつ簡易に複数人によるゴルフ場の予約が行われることになる。
<4−5:拒否または否定に対する処理>
次に、提示情報が拒否され、または、日付が否定された場合の処理について説明する。上述のように、友達を招待した場合の処理の一部として、提示情報が拒否され、または、日付が否定された場合の処理を説明したが、この拒否または否定に対する処理は、本実施形態における予約支援処理の全体について共通の処理なので、改めて説明する。
次に、提示情報が拒否され、または、日付が否定された場合の処理について説明する。上述のように、友達を招待した場合の処理の一部として、提示情報が拒否され、または、日付が否定された場合の処理を説明したが、この拒否または否定に対する処理は、本実施形態における予約支援処理の全体について共通の処理なので、改めて説明する。
図19に示すステップS201、S301、S401の日付の仮登録処理が行われた後、例えば「0901ムリ」のような否定的なメッセージが送信された場合には、予約支援サーバ1のCPU30は、仮登録された日付が否定されたと判断する。この場合には、ラベルLB9に続いて記載された処理を行う。まず、CPU30は、仮登録情報を削除する処理を行う(図20;S1001)。複数の日程のうちの一つが否定された場合には、CPU30は、その否定された日程の仮登録情報を削除する。次に、CPU30は、他に候補があるかどうかを判断する(図20;S1002)。本実施形態においては、日程の仮登録の際には日程の候補を予約支援サーバ1のCPU30から提示することはないので(図20;S1002:NO)、CPU30は、新たに日程の入力を要求するメッセージを送信する(図20;S1004)。
同様に、図19に示すステップS503、図20に示すS803のお勧めゴルフ場の表示と承認を要求するメッセージの送信に対して、「遠い」等の否定的なメッセージが送信された場合には、CPU30は、提示した情報が否定されたと判断し、ラベルLB9に続いて記載された処理を行う。まず、CPU30は、仮登録情報を削除する(図20;S1001)。そして、CPU30は、他に候補があるかどうかを判断する(図20;S1002)。他に候補がある場合には(図20;S1002:YES)、CPU30は、他の候補を表示して、承認を要求するメッセージを送信する(図20;S1003)。しかし、他に候補がない場合には(図20;S1002:NO)、CPU30は、新たなお勧めのゴルフ場を検索するために、住所の入力を要求するメッセージを送信する(S1004)。
また、図19に示すステップS203の空き枠情報の提示と承認を要求するメッセージ対して、「早い」、あるいは、「高い」等の否定的なメッセージが送信された場合には、CPU30は、提示した空き枠情報が否定されたと判断し、この場合にもラベルLB9に続いて記載された処理を行う。まず、CPU30は、枠についての仮登録情報を削除し(図20;S1001)、次に、他に候補があるかどうかを判断する(図20;S1002)。空き枠について他に候補がある場合には(図20;S1002:YES)CPU30は、、他の空き枠の候補を表示して、承認を要求するメッセージを送信する(図20;S1003)。しかし、他に空き枠の候補がない場合には(図20;S1002:NO)、CPU30は、新たな空き枠の提示を行うために再び日付の入力を要求するメッセージを送信する(図20;S1004)。
<4−6:承認に対する処理>
次に、提示情報が承認された場合の処理について説明する。上述のように、友達を招待した場合の処理の一部として、提示情報が承認された場合の処理を説明したが、この承認に対する処理は、本実施形態における予約支援処理の全体について共通の処理なので、改めて説明する。
次に、提示情報が承認された場合の処理について説明する。上述のように、友達を招待した場合の処理の一部として、提示情報が承認された場合の処理を説明したが、この承認に対する処理は、本実施形態における予約支援処理の全体について共通の処理なので、改めて説明する。
図19に示すステップS503、図20に示すS803のお勧めゴルフ場の表示と承認を要求するメッセージの送信に対して、「はい。」あるいは「いいよ。」等の肯定的なメッセージが送信された場合には、CPU30は、提示したゴルフ場が承認否定されたと判断し、ラベルLB11に続いて記載された処理を行う。まず、CPU30は、承認されたゴルフ場の情報を仮登録する(図21;S1201)、そして、CPU30は、日程について仮登録済みかどうかを判断する(図21;S1202)。日程について仮登録済みではない場合には(図21;S1202:NO)、CPU30は、日付の入力を要求するメッセージを送信する(図21;S1203)。このような処理が行われるのは、まず都道府県名等を入力することによってゴルフ場を決定し、その後に日程を決める場合が該当する。
日程について仮登録済みの場合には(図21;S1202:YES)、CPU30は、ゴルフ場について仮登録済みかどうかを判断する(図21;S1204)。ゴルフ場について仮登録済みではない場合には(図21;S1204:NO)、CPU30は、住所の入力を要求するメッセージを送信する(図21;S1205)。このような処理が行われるのは、まず日程を入力することによって日程を決定し、その後に場所を決める場合が該当する。一方、ゴルフ場について仮登録済みの場合には(図21;S1204:YES)、CPU30は、枠について仮登録済みかどうかを判断する(図21;S1206)。枠について仮登録済みではない場合には(図21;S1206:NO)、CPU30は、空き枠情報を抽出して承認を要求するメッセージを送信する(図21;S1207)。
しかし、図19に示すステップS203の空き枠情報の提示と承認を要求するメッセージ対して、「はい。」あるいは「いいよ。」等の肯定的なメッセージが送信された場合には、CPU30は、提示した空き枠情報が承認されたと判断し、承認された空き枠情報を仮登録する(図21;S1201)。この場合には、日程、ゴルフ場、枠情報の全てについて仮登録済みとなるので(図21;S1202:YES、S1204:YES、S1206:YES)、CPU30は、予約サーバ5に対して予約情報の本登録処理を行い(図21;S1208)、予約が完了した旨を表示させる(図21;S1209)。この処理により、予約サーバ5の予約情報テーブル5cにおいて、予約情報の更新が行われることになる。
なお、予約情報の本登録処理(図21;S1208)以降に同伴者を追加したり、プランを変更したり、あるいはキャンセルを行う場合には、ユーザが所定の予約サイトにアクセスすることによって直接行う。したがって、予約が完了した旨の表示は、例えば、図12のメッセージC28のように、「詳細はこちらです。」のように予約サイトへのリンク情報を貼り付けたり、予約サイトのURLを表示するようにする。
予約サーバ5への本登録処理が完了した後は、図23に示す1人予約処理に移行するが(図21;接続端子D)、この1人予約処理については後述する。
<4−7:おまかせ処理>
次に、おまかせ処理について説明する。ユーザから「おまかせ」等のメッセージが送信された場合には、予約支援サーバ1のCPU30は、おまかせ要求があった判断し、ラベルLB10に続いて記載された処理を行う。まず、CPU30は、所定の日程を設定して仮登録する(図21;S1101)。CPU30は、例えば、おまかせ要求の入力が行われた日から2週間経過した後に最初に到来する土曜日を日程として設定し、仮登録する。
次に、おまかせ処理について説明する。ユーザから「おまかせ」等のメッセージが送信された場合には、予約支援サーバ1のCPU30は、おまかせ要求があった判断し、ラベルLB10に続いて記載された処理を行う。まず、CPU30は、所定の日程を設定して仮登録する(図21;S1101)。CPU30は、例えば、おまかせ要求の入力が行われた日から2週間経過した後に最初に到来する土曜日を日程として設定し、仮登録する。
次に、CPU30は、予約支援サーバ1の記憶部16にラウンド履歴情報が記憶されているかどうかを判断する(図21;S1102)。初めて使用する場合等、ラウンド履歴情報が存在しない場合には(図21;S1102:NO)、CPU30は、位置情報が仮登録されているかどうかを判断する(図21;S1106)。位置情報が仮登録されている場合には(図21;S1106:YES)、CPU30は、図20に示すステップS803にジャンプし、位置情報に基づいてお勧めのゴルフ場を検索し、検索したお勧めのゴルフ場を表示して承認を要求するメッセージを送信する(図21;S803)。
位置情報が仮登録されていない場合には(図21;S1106:NO)、CPU30は、住所の入力を要求する(図21;S1107)。この場合、住所は、GPS等による位置情報であってもよいことは上述した通りである。以下、住所が入力されると、図20に示すステップS800以降のお勧めゴルフ場検索処理が行われることになる。
一方、ラウンド履歴情報が存在する場合には(図21;S1102:YES)、CPU30は、一番新しいラウンド履歴情報に含まれるゴルフ場を特定する(図21;S1103)。そして、CPU30は、ラウンド履歴情報と最も近いスタート時間の空き枠を特定する(図21;S1104)。CPU30は、例えば、まず、このラウンド履歴情報と同じ時間を基準の時刻として、空き枠情報の検索を行う。この基準の時刻では空き枠がない場合には、CPU30は、基準の時刻の10分後までの空き枠情報を検索する。それでも空き枠がない場合には、CPU30は、基準の時刻の10分前までの空き枠情報を検索する。それでも空き枠がない場合には、CPU30は、基準時刻の10分後から基準時刻の20分後までの空き枠情報を検索する。CPU30は、このような検索を繰り返す。CPU30は、このように所定時間ごとに、例えば10分間ごとに時間をずらして空き枠情報の検索を行う。なお、検索時間の範囲を予め設定しておき、例えば基準時刻の90分前から基準時刻90分後までの範囲で空き枠が見つからない場合、他のラウンド履歴情報に含まれるゴルフ場について同様の処理を行うようにしてもよい。
空き枠が見つかった場合には、CPU30は、その時刻の枠情報を仮登録し、料金プランと共にユーザに提示して承認を要求するメッセージを送信する(図21;S1105)。料金プランは、例えば、当該日程の当該スタート時刻が適用されるプランの中で最も安価なもの抽出するようにすればよい。
空き枠が見つからなかった場合には、CPU30は、ラウンド履歴情報に含まれるゴルフ場について、順次同様の処理を行う。それでも空き枠が見つからなかった場合には、CPU30は、ラウンド履歴情報に含まれるゴルフ場に比較的に近いゴルフ場について同様の処理を行うようにすればよい。
<4−8:1人予約処理>
ユーザが図17に示すように「1人で行く」というメッセージC80、あるいは、「1人予約」等のようなメッセージを送信した場合には、予約支援サーバ1のCPU30は、1人予約が行われると判断し、ラベルLB12に続いて記載された処理を行う。本実施形態では、1人予約を行う旨の明示の要求がない場合には、原則として利用人数は複数という前提で、ゴルフ場や空き枠情報の抽出が行われる。しかし、1人予約が行われると判断した場合には、1人予約の枠を用意しているゴルフ場、あるいは、1人予約用に分割できるプランを検索する必要があるので、CPU30は、1人予約フラグをオン状態にする(図21;S1301)。
ユーザが図17に示すように「1人で行く」というメッセージC80、あるいは、「1人予約」等のようなメッセージを送信した場合には、予約支援サーバ1のCPU30は、1人予約が行われると判断し、ラベルLB12に続いて記載された処理を行う。本実施形態では、1人予約を行う旨の明示の要求がない場合には、原則として利用人数は複数という前提で、ゴルフ場や空き枠情報の抽出が行われる。しかし、1人予約が行われると判断した場合には、1人予約の枠を用意しているゴルフ場、あるいは、1人予約用に分割できるプランを検索する必要があるので、CPU30は、1人予約フラグをオン状態にする(図21;S1301)。
また、ゴルフ場の仮登録や、日程の仮登録を行った後等を行った後に1人予約である旨の明示が行われることも考えられるため、上記のように1人予約フラグがオン状態にされると(図22;S1301)、CPU30は、日程の仮登録が行われているかどうかを判断し(図22;S1302)、日程の仮登録が行われていない場合は(図22;S1302:NO)、CPU30は、日程の入力を要求する(図22;S1303)。一方、日程の仮登録が行われている場合は(図22;S1302:YES)、CPU30は、ゴルフ場の仮登録が行われているかどうかを判断する(図22;S1304)。ゴルフ場の仮登録が行われている場合は、CPU30は、既に枠情報の仮登録が行われているかどうかを判断する(図22;S1305)。枠情報の仮登録が行われている場合には(図22;S1305:YES)、CPU30は、その枠が1人予約対応かどうかを判断する(図22;S1306)。具体的には、枠の仮登録情報には、その枠のスタートIDが記憶されているので、CPU30は、記憶されたスタートIDに基づいて図5の枠情報テーブル5bを参照し、記憶されたスタートIDの属する枠における1人予約フラグが1か0かを判断する。1人予約フラグが0の場合には、CPU30は、その枠は1人予約に対応していない枠であると判断し(図22;S1306:NO)、枠が1人予約に対応していない旨のメッセージを表示して、仮登録情報を削除するとともに、次のステップS1307へ進む。
CPU30は、その枠は1人予約に対応している枠であると判断した場合には(図22;S1306:YES)、予約支援サーバ1のCPU30は、予約サーバ5に対して本登録処理を行い(図22;S1208)、予約を完了した旨のメッセージC90を送信する(図22;S1209)。
CPU30は、枠が1人予約に対応していないと判断した場合(図22;S1306:NO)、または枠情報の仮登録が行われていないと判断した場合には(図22;S1305:NO)、当該仮登録されたゴルフ場において、仮登録された日程で1人予約用の空き枠が存在するかどうかを判断する(図22;S1307)。具体的には、CPU30は、枠情報テーブル5bを参照し、仮登録された日程における枠情報をチェックし、1人予約枠フラグが「1」であるものを検索する。そして該当する空き枠が発見された場合(図22;S1307:YES)、CPU30は、当該発見した空き枠の情報を提示し、ユーザの承認を要求する(図22;S1308)。
一方、空き枠が発見されなかった場合(図22;S1307:NO)、CPU30は、住所情報が記憶されているかどうかを判断する(図22;S1309)。CPU30は、住所情報(位置情報)が記憶されていないと判断した場合(図22;S1309:NO)、ゴルフ場を再検索するため、住所又はゴルフ場名の入力を要求する(図22;S1310)。CPU30は、住所情報が記憶されていると判断した場合(図22;S1309:YES)、当該住所情報に基づいてゴルフ場の検索を行う(図22;S1311)。この検索においては、CPU30は、各ゴルフ場の枠情報に1人予約用の空き枠が存在するかどうかも判断する。この判断方法は上述の通りである。
そしてCPU30は、1人予約用の空き枠が存在するゴルフ場を提示し、ユーザの承認を要求する(図22;S1312)。
そしてCPU30は、1人予約用の空き枠が存在するゴルフ場を提示し、ユーザの承認を要求する(図22;S1312)。
予約サーバ5に対して本登録処理が終了した後は、予約支援サーバ1のCPU30は、図23に示すように、1人予約フラグがオン状態か否かを判断する(図23;S1400)。1人予約フラグがオン状態ではない場合、つまり、通常の予約の場合には(図23;S1400:NO)、CPU30は、その他の処理は行わず、予約処理を完了させる。
しかし、1人予約フラグがオン状態の場合、つまり、図17のように1人予約を宣言した場合には(図23;S1400:YES)、予約支援サーバ1のCPU30は、1人予約フラグをオフ状態とし(図23;S1401)、予約の本登録を行ったゴルフ場において、予約を行った日と同日に、他に1人予約者がいないかどうかを判断する(図23;S1402)。この判断は、予約サーバ5の予約情報テーブル5cにおいて、1人予約枠のプランIDを含むレコードのうち、予約した日と同日のレコードを抽出することによって行えばよい。
予約の本登録を行ったゴルフ場において、予約を行った日と同日に、他に1人予約者がいない場合には(図23;S1402:NO)、予約支援サーバ1のCPU30は、「メッセージを残しますか?」のような問合せのメッセージC91を送信する。
所定時間、例えば5分程度待っても何もメッセージが送信されない場合、あるいは、「メッセージはないです。」等の否定的な内容が送信された場合には、CPU30は、1人予約をする人に対してメッセージを残さないと判断し(図23;S1403:NO)、その他の処理を行わずに処理を終了する。
一方、この問合せに対して、「はい。」等の肯定的なメッセージC92が送信された場合には、予約支援サーバ1のCPU30は、ユーザがメッセージを残すと判断し(図23;S1403:YES)、「では、メッセージをお願いします。」等のメッセージC93を送信して応答する。
所定時間、例えば5分程度待っても何もメッセージが送信されない場合、あるいは、「メッセージはないです。」等の否定的な内容が送信された場合には、CPU30は、1人予約をする人に対してメッセージを残さないと判断し(図23;S1403:NO)、その他の処理を行わずに処理を終了する。
一方、この問合せに対して、「はい。」等の肯定的なメッセージC92が送信された場合には、予約支援サーバ1のCPU30は、ユーザがメッセージを残すと判断し(図23;S1403:YES)、「では、メッセージをお願いします。」等のメッセージC93を送信して応答する。
そして、図17に示すように、1人予約をする人に対するメッセージC94が送信された場合には、そのメッセージを受信し(図23;S1404)、予約支援サーバ1のCPU30は、当該予約情報の予約IDと関連付けて、1人予約をする人に対するメッセージを記憶部16に記憶する(図23;S1405)。なお、メッセージを受信した場合には、予約支援サーバ1のCPU30は、「メッセージを受け付けました。では当日お楽しみください。」等の応答を行ってもよい。
この後、別のユーザが、図18に示すように、同じゴルフ場で同日に1人予約を行ったとする。図18においては、1人予約を行うことの宣言、日程の入力、住所の入力等の過程は省略している。
この場合には、予約支援サーバ1のCPU30は、予約完了のメッセージC102を送信した後、1人予約フラグがオン状態か否かを判断する(図23;S1400)。1人予約フラグがオン状態の場合、つまり、図17のように1人予約を宣言した場合には(図23;S1400:YES)、予約支援サーバ1のCPU30は、1人予約フラグをオフ状態とし(図23;S1401)、予約の本登録を行ったゴルフ場において、予約を行った日と同日に、他に1人予約者がいないかどうかを判断する(図23;S1402)。図17に示すように、同じゴルフ場に同日に1人予約者がいる場合には、予約サーバ5の予約情報テーブル5cにおいて、1人予約枠のプランIDを含むレコードのうち、予約した日と同日のレコードが抽出されるので、CPU30は、予約の本登録を行ったゴルフ場において、予約を行った日と同日に、他に1人予約者がいると判断し(図23;S1402:YES)、その予約情報を見るかどうかを問い合わせるメッセージを送信する。ここで、その1人予約者がメッセージを残している場合には、CPU30は、図18のように、そのメッセージを見るかどうかを問い合わせるメッセージC103を送信する。その1人予約者がメッセージを残していない場合は、CPU30は、例えば「既に1人分の予約が入っています。情報を見ますか?」等のメッセージを送信する。なお、該当する1人予約者が複数いる場合には、CPU30は、スタート時間が最も近い1人予約者を抽出するようにすればよい。また、CPU30は、ユーザの住所と最も近い住所の1人予約者を抽出するようにしてもよい。さらに、CPU30は、複数の1人予約者をリスト状にして表示させてもよい。
この場合には、予約支援サーバ1のCPU30は、予約完了のメッセージC102を送信した後、1人予約フラグがオン状態か否かを判断する(図23;S1400)。1人予約フラグがオン状態の場合、つまり、図17のように1人予約を宣言した場合には(図23;S1400:YES)、予約支援サーバ1のCPU30は、1人予約フラグをオフ状態とし(図23;S1401)、予約の本登録を行ったゴルフ場において、予約を行った日と同日に、他に1人予約者がいないかどうかを判断する(図23;S1402)。図17に示すように、同じゴルフ場に同日に1人予約者がいる場合には、予約サーバ5の予約情報テーブル5cにおいて、1人予約枠のプランIDを含むレコードのうち、予約した日と同日のレコードが抽出されるので、CPU30は、予約の本登録を行ったゴルフ場において、予約を行った日と同日に、他に1人予約者がいると判断し(図23;S1402:YES)、その予約情報を見るかどうかを問い合わせるメッセージを送信する。ここで、その1人予約者がメッセージを残している場合には、CPU30は、図18のように、そのメッセージを見るかどうかを問い合わせるメッセージC103を送信する。その1人予約者がメッセージを残していない場合は、CPU30は、例えば「既に1人分の予約が入っています。情報を見ますか?」等のメッセージを送信する。なお、該当する1人予約者が複数いる場合には、CPU30は、スタート時間が最も近い1人予約者を抽出するようにすればよい。また、CPU30は、ユーザの住所と最も近い住所の1人予約者を抽出するようにしてもよい。さらに、CPU30は、複数の1人予約者をリスト状にして表示させてもよい。
そして、この問合せに対して、「見ない」等の否定的なメッセージがユーザから送信された場合、あるいは、所定時間、例えば5分間、何も送信されなかった場合には、予約支援サーバ1のCPU30は、そのメッセージを表示させないと判断し(図23;S1406:NO)、その他の処理を行わずに予約処理を完了する。この場合にも、「わかりました。では当日お楽しみください。」等の応答を行ってもよい。
しかし、図18に示すように、「見る」等の肯定的なメッセージC104がユーザから送信された場合には、予約支援サーバ1のCPU30は、そのメッセージを表示させると判断し(図23;S1406:YES)、図18に示すように、記憶部16に記憶させておいたメッセージと、一緒にゴルフに行くかどうかを尋ねるメッセージとを含むメッセージC105を表示させる。そして、予約支援サーバ1のCPU30は、メッセージを見たユーザが、メッセージを残したユーザと一緒にゴルフに行くことを了承するかどうか、すなわちメッセージを残したユーザが登録されている予約枠に参加するか否か、を判断する(図23;S1407)。
ここで、「いいえ。」等の否定的なメッセージがユーザから送信された場合には、予約支援サーバ1のCPU30は、メッセージを残したユーザと一緒にゴルフに行くことが了承されなかったと判断し(図23;S1407:NO)、その他の処理を行わずに予約処理を完了する。この場合にも、「わかりました。では当日お楽しみください。」等の応答を行ってもよい。
しかし、「はい。」等の肯定的なメッセージC106がユーザから送信された場合には、予約支援サーバ1のCPU30は、メッセージを残したユーザと一緒にゴルフに行くことが了承されたと判断し(図23;S1407:YES)、予約支援サーバ1のCPU30は、先に予約された1人予約者と、上述のように当該1人予約者と一緒にゴルフに行くことを了承した1人予約者との予約情報を関連付ける、予約情報の修正処理を行う(図23;S1408)。具体的には、CPU30は、当該一緒にゴルフに行くことを了承した1人予約者の予約情報のスタートIDを、先に予約された1人予約者が含まれる予約情報のスタートIDと同一のIDに変更する処理を行う。
次に、「「メッセージを残しますか?」のような問合せのメッセージを送信する。この問合せに対して、「はい。」等の肯定的なメッセージが送信された場合には、予約支援サーバ1のCPU30は、ユーザがメッセージを残すと判断し(図23;S1409:YES)、「では、メッセージをお願いします。」等のように応答する。ユーザからメッセージが送信された場合には、そのメッセージを受信し(図23;S1410)、予約支援サーバ1のCPU30は、当該予約情報の予約IDと関連付けて、1人予約をする人に対するメッセージを記憶部16に記憶する(図23;S1411)。なお、メッセージを受信した場合には、予約支援サーバ1のCPU30は、「メッセージを受け付けました。では当日お楽しみください。」等の応答を行ってもよい。
一方、メッセージを残すかどうかの問合せに対して、「いいえ。」等の否定的なメッセージが送信された場合には、「わかりました。では当日お楽しみください。」等の応答を行ってもよい。
さらに、予約支援サーバ1のCPU30は、先に1人予約を行った1人予約者に対して、一緒にゴルフに行くことを了承した別の1人予約者が現れたことを通知する(図23;S1412)。したがって、本実施形態によれば、1人予約をした者同士が一緒にゴルフを行う機会を与えることができる。
<5:予約処理の例>
次に、本実施形態における予約処理の例を図13、図17及び図18に示す端末装置における表示例と、図19乃至図23に示すフローチャートに基づいて説明する。
次に、本実施形態における予約処理の例を図13、図17及び図18に示す端末装置における表示例と、図19乃至図23に示すフローチャートに基づいて説明する。
<5−1:通常予約>
図13は、同伴者が決まっている通常の予約処理を行う際の端末装置における表示例を示す図である。
まず、ユーザが、専用アカウントであるゴルフ予約A10を会話の相手として選択すると、図13に示すメッセージ表示画面P3が表示される。そして、ユーザが「予約したい」というメッセージC30を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、予約要求が送信されたと判断され、予約支援サーバ1のCPU30は、日程の入力を要求するメッセージを送信する(図19;S101)。ユーザの端末装置においては、図13に示すように、「ゴルフの予約ですね。行きたい日を数字4ケタで教えてください。」というメッセージC31が表示される。
図13は、同伴者が決まっている通常の予約処理を行う際の端末装置における表示例を示す図である。
まず、ユーザが、専用アカウントであるゴルフ予約A10を会話の相手として選択すると、図13に示すメッセージ表示画面P3が表示される。そして、ユーザが「予約したい」というメッセージC30を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、予約要求が送信されたと判断され、予約支援サーバ1のCPU30は、日程の入力を要求するメッセージを送信する(図19;S101)。ユーザの端末装置においては、図13に示すように、「ゴルフの予約ですね。行きたい日を数字4ケタで教えてください。」というメッセージC31が表示される。
次に、ユーザが「0825」というメッセージC32を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、日付についての内容であると判断され、その日付を記憶部16に記憶させて仮登録する(図19;S201)。また、予約支援サーバ1のCPU30は、確認のメッセージを送信し、ユーザの端末装置においては、「8月25日ですね。」というメッセージC34が表示される。
予約支援サーバ1のCPU30は、次に、ゴルフ場の仮登録が行われているかどうかを判断し(図19;S202)、まだ仮登録されていないと判断した場合には(図19;S202:NO)、住所が入力済みかどうかを判断する(図19;S204)。CPU30は、住所についても入力が行われていないと判断した場合には(図19;S204:NO)、ユーザに対して住所の入力を要求するメッセージを送信する(図19;S205)。ユーザの端末装置においては、図13に示すように「おすすめのゴルフ場を探してみます。位置情報をおしえてくださいね。」というメッセージC35が表示される。
ユーザから、「位置情報、日本、埼玉県○○市××町5」というメッセージC36が送信されると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、住所についての内容であると判断され、CPU30は、日程について仮登録済みであるかどうかを判断する(図20;S801)。日程については仮登録済みなので(図20;S801:YES)、予約支援サーバ1のCPU30は、マップサーバ4にアクセスし、受信した住所の情報に基づいて、当該住所から所定時間内のゴルフ場を検索する(図20;S802)。そして、ユーザに対してお勧めのゴルフ場を表示し、承認を要求するメッセージを送信する(図20;S803)。ユーザの端末装置には、図13に示すように、「では赤坂ゴルフ倶楽部はどうでしょう?車で1時間40分くらいです。」というメッセージC37が表示される。
ユーザが「いいね」というメッセージC38を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、提示したゴルフ場が承認されたと判断され、CPU30は、ゴルフ場を記憶部16に記憶させて仮登録を行う(図21;S1201)。次に、予約支援サーバ1のCPU30は、日程が仮登録済みであり(図21;S1202:YES)、ゴルフ場も仮登録済みであると判断し(図21;S1204:YES)、枠情報が仮登録済みであるかどうかの判断を行う(図21;S1206)。枠情報は未だ仮登録が行われていないので(図21;S1206:NO)、予約支援サーバ1のCPU30は、予約サーバ5にアクセスして、空き枠情報を抽出して、ユーザに対して承認を要求するメッセージを送信する(図21;S1207)。ユーザの端末装置には、図13に示すように、「8月25日も空いています。4人で7:43スタート、食事つきで12,000円です。どうでしょう、予約しておきましょうか?」というメッセージC39が表示される。
ユーザが「はい」というメッセージC40を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、提示した枠情報が承認されたと判断され、CPU30は、この枠についてのスタートIDを記憶部16に記憶させて仮登録を行う(図21;S1201)。次に、予約支援サーバ1のCPU30は、日程が仮登録済みであり(図21;S1202:YES)、ゴルフ場も仮登録済みであり(図21;S1204:YES)、さらに枠情報も仮登録済みであると判断し(図21;S1206:YES)、予約サーバ5に対して予約情報の本登録処理を行う(図21;S1208)。ユーザに対しては、予約が完了した旨の表示を行う(図21;S1209)。ユーザの端末装置には、図13に示すように、「予約しました。予定表に入れておきますね。詳細はこちらです。」というリンク付きのメッセージC41が表示される。
次に、予約支援サーバ1のCPU30は、1人予約フラグがオン状態であるかどうかを判断するが(図23;S1400)、1人予約フラグがオン状態ではないので(図23;S1400:NO)、処理を終了させる。
このように、本実施形態によれば、チャットを利用して簡単かつ迅速にゴルフ場の予約を行うことができる。なお、同伴者の登録については、予約完了時に表示されるメッセージC41に含まれるリンクをクリックする等して行う。ただしこれに限られるものではなく、例えば予約完了時に予約支援サーバ1のCPU30が、「同伴者も登録しますか?」等のメッセージを送信することにより、ユーザに同伴者名の登録を促すこととしてもよい。
<5−2:1人予約>
図17は、1人予約を行う際の端末装置における表示例を示す図である。まず、ユーザが、専用アカウントであるゴルフ予約A10を会話の相手として選択すると、図17に示すメッセージ表示画面P3が表示される。そして、ユーザが「1人で行く」というメッセージC80を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、1人予約が行われると判断され、CPU30は、1人予約フラグをオン状態とする(図22;S1301)。そして、CPU30は、日程が仮登録済みかどうか(図22;S1302)を判断するが、図17の場合には、日程は仮登録済みではないので(図22;S1302:NO)、ユーザに対して日程の入力を要求するメッセージを送信する(図22;S1303)。ユーザの端末装置においては、図17に示すように、「1人予約ですね。行きたい日を数字4ケタで教えてください。」というメッセージC81が表示される。
図17は、1人予約を行う際の端末装置における表示例を示す図である。まず、ユーザが、専用アカウントであるゴルフ予約A10を会話の相手として選択すると、図17に示すメッセージ表示画面P3が表示される。そして、ユーザが「1人で行く」というメッセージC80を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、1人予約が行われると判断され、CPU30は、1人予約フラグをオン状態とする(図22;S1301)。そして、CPU30は、日程が仮登録済みかどうか(図22;S1302)を判断するが、図17の場合には、日程は仮登録済みではないので(図22;S1302:NO)、ユーザに対して日程の入力を要求するメッセージを送信する(図22;S1303)。ユーザの端末装置においては、図17に示すように、「1人予約ですね。行きたい日を数字4ケタで教えてください。」というメッセージC81が表示される。
次に、ユーザが「0825」というメッセージC82を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、日付についての内容であると判断し、その日付を記憶部16に記憶させて仮登録する(図19;S201)。また、予約支援サーバ1のCPU30は、確認のメッセージを送信し、ユーザの端末装置においては、「8月25日ですね。」というメッセージC83が表示される。
予約支援サーバ1のCPU30は、次に、ゴルフ場の仮登録が行われているかどうかを判断し(図19;S202)、まだ仮登録されていないと判断した場合には(図19;S202:NO)、住所が入力済みかどうかを判断する(図19;S204)。CPU30は、住所についても入力が行われていないと判断した場合には(図19;S204:NO)、ユーザに対して住所の入力を要求するメッセージを送信する(図19;S205)。ユーザの端末装置においては、図17に示すように「おすすめのゴルフ場を探してみます。あなたの住所をおしえてくださいね。GPSの位置情報でも構いません。」というメッセージC84が表示される。
ユーザから、「位置情報、日本、埼玉県○○市××町5」というメッセージC85が送信されると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、住所についての内容であると判断され、CPU30は、日程について仮登録済みであるかどうかを判断する(図20;S801)。日程については仮登録済みなので(図20;S801:YES)、予約支援サーバ1のCPU30は、マップサーバ4にアクセスし、受信した住所の情報に基づいて、当該住所から所定時間内のゴルフ場であって、1人予約枠を用意しているゴルフ場を検索する(図20;S802)。そして、CPU30は、ユーザに対してお勧めのゴルフ場を表示し、承認を要求するメッセージを送信する(図20;S803)。ユーザの端末装置には、図17に示すように、「では六本木GCはどうでしょう?車で1時間40分くらいです。」というメッセージC86が表示される。
ユーザが「いいね。」というメッセージC87を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、提示したゴルフ場が承認されたと判断され、CPU30は、当該ゴルフ場のゴルフ場名とゴルフ場IDとを記憶部16に記憶させて仮登録を行う(図21;S1201)。次に、予約支援サーバ1のCPU30は、日程が仮登録済みであり(図21;S1202:YES)、ゴルフ場も仮登録済みであると判断し(図21;S1204:YES)、枠情報が仮登録済みであるかどうかの判断を行う(図21;S1206)。枠情報は未だ仮登録が行われていないので(図21;S1206:NO)、予約支援サーバ1のCPU30は、予約サーバ5にアクセスして、1人予約の可能な空き枠情報を抽出して、ユーザに対して承認を要求するメッセージを送信する(図21;S1207)。ユーザの端末装置には、図17に示すように、「8月25日の1人予約、六本木GCで7:00スタート、7,000円です。」というメッセージC88が表示される。
ユーザが「予約してー」というメッセージC89を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信してその内容を解析する(図19;S90)。解析の結果、提示した枠情報が承認されたと判断され、CPU30は、この枠を記憶部16に記憶させて仮登録を行う(図21;S1201)。次に、予約支援サーバ1のCPU30は、日程が仮登録済みであり(図21;S1202:YES)、ゴルフ場も仮登録済みであり(図21;S1204:YES)、さらに枠情報も仮登録済みであると判断し(図21;S1206:YES)、予約サーバ5に対して予約情報の本登録処理を行う(図21;S1208)。CPU30は、ユーザに対しては、予約が完了した旨の表示を行う(図21;S1209)。ユーザの端末装置には、図17に示すように、「予約完了しました。」というメッセージC90が表示される。
次に、予約支援サーバ1のCPU30は、1人予約フラグがオン状態であると判断し(図23;S1400:YES)、1人予約フラグをオフ状態とする(図23;S1401)。そして、CPU30は、他に1人予約者がいるかどうかを判断し(図23;S1402)、他に1人予約者がいないと判断した場合には(図23;S1402:NO)、ユーザに対してメッセージを残すかどうかの問合せを行う(図23;S1403)。ユーザの端末装置には、「メッセージを残しますか?」というメッセージC91が表示される。
この問合せに対して、「はい。」等の肯定的なメッセージが送信された場合には、予約支援サーバ1のCPU30は、ユーザがメッセージを残すと判断し(図23;S1403:YES)、「では、メッセージをお願いします。」等のメッセージC93を送信して応答する。ユーザが「20代女性です。初心者ですけど、月イチくらいで気軽に楽しめるゴルフ友達を探してまーす。」というメッセージC94を送信すると、予約支援サーバ1のCPU30は、このメッセージを受信する(図23;S1404)。そして、CPU30は、このメッセージを予約IDと関連付けて記憶部16に記憶させる(図23;S1405)。
次に、他のユーザが、上述したゴルフ場と同じゴルフ場、及び、同じ日を予約日として、1人予約を行った場合について説明する。当該他のユーザが1人予約を完了するまでは、上述した例と同様なので、重複する説明は省略する。
この例では、予約支援サーバ1のCPU30は、図18に示すように、「8月25日の1人予約、六本木GCで7:10スタート、7,000円です。」という枠情報のメッセージC100を送信し、これに対してユーザが「予約して」というメッセージC101を送信した場合には、予約サーバ5に対する予約情報の本登録処理を行い、ユーザに対しては、「予約完了しました。」というメッセージC102を表示させる。
予約支援サーバ1のCPU30は、メッセージC102を表示させた後、1人予約フラグがオン状態であると判断し(図23;S1400:YES)、1人予約フラグをオフ状態にする(図23;S1401)。そして、予約支援サーバ1のCPU30は、1人予約者がいるかどうかを判断するが(図23;S1402)、この例では図17に示したような1人予約したユーザがいると判断し(図23;S1402:YES)、先に1人予約したユーザが残したメッセージを表示させるかどうかを確認するメッセージを送信する(図23;S1406)。ユーザの端末装置には、図18に示すように、「既に1人分の予約が入っています。メッセージを見ますか?」というメッセージC103が表示される。
ユーザが「見る」というメッセージC104を送信した場合には、予約支援サーバ1のCPU30は、メッセージを表示させると判断し(図23;S1406:YES)、記憶部16に記憶させておいた先の1人予約者のメッセージと、一緒に行くかどうかを問い合わせるメッセージを送信する。ユーザの端末装置には、「「20代女性です。初心者ですけど、月イチくらいで気軽に楽しめるゴルフ友達を探してまーす。」とのことです。一緒に行きますか?」と表示させる。
ユーザが「はい」というメッセージC106を送信した場合には、予約支援サーバ1のCPU30は、このユーザが先に1人登録したユーザと一緒にゴルフに行くことを了承し、メッセージを残したユーザが登録されている予約枠に参加すると判断し(図23;S1407:YES)、予約支援サーバ1のCPU30は、先に予約された1人予約者と、上述のように当該1人予約者と一緒にゴルフに行くことを了承した1人予約者との予約情報を関連付ける、予約情報の修正処理を行う(図23;S1408)。
次に、CPU30は、ユーザに対して、メッセージを残すかどうかを問い合わせる(図23;S1409)。CPU30は、ユーザが先に1人予約したユーザへのメッセージを残すと判断した場合には(図23;S1409:YES)、そのメッセージを受信して(図23;S1410)、受信したメッセージを予約IDと関連付けて記憶部16に記憶させる(図23;S1411)。 そして、予約支援サーバ1のCPU30は、先に1人予約をしたユーザに対してその旨を通知する(図22;S1412)
次に、CPU30は、ユーザに対して、メッセージを残すかどうかを問い合わせる(図23;S1409)。CPU30は、ユーザが先に1人予約したユーザへのメッセージを残すと判断した場合には(図23;S1409:YES)、そのメッセージを受信して(図23;S1410)、受信したメッセージを予約IDと関連付けて記憶部16に記憶させる(図23;S1411)。 そして、予約支援サーバ1のCPU30は、先に1人予約をしたユーザに対してその旨を通知する(図22;S1412)
このように本実施形態によれば、1人予約についてもチャットを利用して簡単かつ迅速にゴルフ場の予約を行うことができ、しかも、他に1人予約したユーザがいる場合には、そのユーザの情報(本実施形態ではメッセージ)を表示することにより、ユーザ同士をマッチングすることが可能となる。なお、他の1人予約者についての情報としては、氏名、性別、年代などであってもよい。
また、ユーザから他の1人予約者の情報を表示させることが選択された場合において(図16;S1406)、情報を表示すべき他の1人予約者が複数いる場合は、応答部11は、所定の優先順位に従って、表示させるべき他の1人予約者を特定し、当該他の1人予約者についての情報を、端末装置2に送信する。ここで所定の優先順位とは、例えば当該ユーザの予約情報と、ゴルフのスタート時間が最も近い他の1人予約者としたり、当該ユーザの住所に最も近い住所情報を有する他の1人予約者としたり、することができる。
また応答部11は、情報を表示すべき他の1人予約者が複数いる場合は、当該複数の他の1人予約者にかかる予約内容をリスト状にして、端末装置2に送信することとしてもよい。
また応答部11は、情報を表示すべき他の1人予約者が複数いる場合は、当該複数の他の1人予約者にかかる予約内容をリスト状にして、端末装置2に送信することとしてもよい。
<第2実施形態>
次に、図27及び図29を参照して、本発明の第2実施形態について説明する。第1実施形態においては、外部管理サーバ3によって提供されるメッセージ送受信サービスにおけるチャットを利用してゴルフ場の予約を行う例について説明した。しかし、第2実施形態では、ゴルフ予約用の専用のアプリケーションソフトウェアを用いる。外部管理サーバ3によって提供されるメッセージ送受信サービスにおいては、ゴルフ予約用の専用のアプリケーションソフトウェアを用いた場合には、ゴルフ予約の専用アカウントとメッセージ送受信サービスにおけるチャットが可能になっている。また、友達を招待した場合には、ゴルフ予約の専用アカウントと、招待した友達を含めてメッセージ送受信サービスにおけるチャットが可能になっている。
次に、図27及び図29を参照して、本発明の第2実施形態について説明する。第1実施形態においては、外部管理サーバ3によって提供されるメッセージ送受信サービスにおけるチャットを利用してゴルフ場の予約を行う例について説明した。しかし、第2実施形態では、ゴルフ予約用の専用のアプリケーションソフトウェアを用いる。外部管理サーバ3によって提供されるメッセージ送受信サービスにおいては、ゴルフ予約用の専用のアプリケーションソフトウェアを用いた場合には、ゴルフ予約の専用アカウントとメッセージ送受信サービスにおけるチャットが可能になっている。また、友達を招待した場合には、ゴルフ予約の専用アカウントと、招待した友達を含めてメッセージ送受信サービスにおけるチャットが可能になっている。
つまり、ユーザは、第1実施形態で説明したチャット画面を表示させることにより、友達同士でのチャットを行うことができるだけでなく、ゴルフ予約用の専用のアプリケーションソフトウェアを端末装置2aにインストールしていた場合には、ゴルフ予約用の専用のアプリケーションソフトウェアを起動させることにより、ゴルフ予約の専用アカウントとチャットを行うことができる。したがって、ゴルフ予約用の専用のアプリケーションソフトウェアを用いてゴルフ場の予約が可能になっている。
但し、第1実施形態で説明したチャットにおいては、文字情報と一部の画像情報、あるいは、音声情報の再生ボタン等しか表示させることができないが、ゴルフ予約用の専用のアプリケーションソフトウェアにおいては、画像の選択によって情報の入力が可能な機能が付加された画像を表示させることができる。第2実施形態では、このような画像の選択によって情報の入力が可能な機能が付加された画像を、ゴルフ予約用の専用のアプリケーションソフトウェアの画面において表示させ、日程の入力や、ゴルフ場の場所の入力を行うようにした例である。
第2実施形態における外部管理サーバ3、マップサーバ4、予約サーバ5の構成は、第1実施形態と同様であるので説明を省略する。
本実施形態における予約支援サーバ1aにおいては、記憶部16にはさらに、ゴルフ予約用の専用のアプリケーションソフトウェアおよびこれに付随するカレンダー情報、地図情報が記憶されている。なお、「情報の入力が可能な機能が付加された画像」として、上記カレンダー情報に基づくカレンダー画像、及び上記地図情報に基づく地図画像を一例に挙げるが、カレンダー画像、地図情報のいずれか一方でもよい。また、情報の入力が可能な機能が付加された画像であれば、カレンダー画像、地図画像以外の画像であってもよい。
また、本実施形態における端末装置2aは、図28に示すように、取得部21、入力部22、表示制御部23、変換部24、表示部25、記憶部26を備える。本実施形態における記憶部26は、ゴルフ予約用の専用のアプリケーションソフトウェアデータ、カレンダー情報、地図情報を少なくとも記憶している。取得部21は、記憶部26に記憶されているカレンダー情報、地図情報を所定のタイミングで取得する。入力部22は、ユーザの操作に応じて情報を入力可能としている。入力部22は例えばボタンやタッチパネルで構成される。表示制御部23は、入力部22により入力された内容や、取得部21が取得した、画像の選択によって情報の入力が可能な機能が付加された画像であるカレンダー情報や地図情報、予約支援サーバ1a等から受信したメッセージの内容を、後述の表示部25に表示させる制御を行う。変換部24は、表示部25に表示されたカレンダー情報や地図情報の一部が選択されると、当該選択された部分に相当する情報を、予約支援サーバ1aが処理可能な情報に変換する。本実施形態では、予約支援サーバ1aが処理可能なように、テキストデータに変換する。
本実施形態における予約支援サーバ1aにおいては、記憶部16にはさらに、ゴルフ予約用の専用のアプリケーションソフトウェアおよびこれに付随するカレンダー情報、地図情報が記憶されている。なお、「情報の入力が可能な機能が付加された画像」として、上記カレンダー情報に基づくカレンダー画像、及び上記地図情報に基づく地図画像を一例に挙げるが、カレンダー画像、地図情報のいずれか一方でもよい。また、情報の入力が可能な機能が付加された画像であれば、カレンダー画像、地図画像以外の画像であってもよい。
また、本実施形態における端末装置2aは、図28に示すように、取得部21、入力部22、表示制御部23、変換部24、表示部25、記憶部26を備える。本実施形態における記憶部26は、ゴルフ予約用の専用のアプリケーションソフトウェアデータ、カレンダー情報、地図情報を少なくとも記憶している。取得部21は、記憶部26に記憶されているカレンダー情報、地図情報を所定のタイミングで取得する。入力部22は、ユーザの操作に応じて情報を入力可能としている。入力部22は例えばボタンやタッチパネルで構成される。表示制御部23は、入力部22により入力された内容や、取得部21が取得した、画像の選択によって情報の入力が可能な機能が付加された画像であるカレンダー情報や地図情報、予約支援サーバ1a等から受信したメッセージの内容を、後述の表示部25に表示させる制御を行う。変換部24は、表示部25に表示されたカレンダー情報や地図情報の一部が選択されると、当該選択された部分に相当する情報を、予約支援サーバ1aが処理可能な情報に変換する。本実施形態では、予約支援サーバ1aが処理可能なように、テキストデータに変換する。
本実施形態のゴルフ予約用の専用のアプリケーションソフトウェアは、所定のアプリケーション提供サイトにおいて提供されており、ユーザが選択することにより、当該アプリケーション提供サイトを介して、予約支援サーバ1aからダウンロードし、ユーザの端末装置2にインストールすることができる。本実施形態のゴルフ予約用の専用のアプリケーションソフトウェアにはカレンダー情報や地図情報が含まれており、ユーザが端末装置2にゴルフ予約用の専用のアプリケーションソフトウェアをインストールしたときに、同時にカレンダー情報、地図情報が端末装置2に記憶されるようになっている。
ゴルフ予約用の専用のアプリケーションソフトウェアを端末装置2aにインストールし、ゴルフ予約用の専用のアプリケーションソフトウェアを起動させると、図27に示すようなアプリケーション画面P4が表示される。アプリケーション画面P4は、タイトル表示欄D1、メッセージ表示欄D2、日程ボタンD3、場所ボタンD4、参加者ボタンD5、及び機能ボタンD6を備えている。
タイトル表示欄D1には、例えば、「予約アプリ」と表示され、メッセージ表示欄D2には第1実施形態のチャット画面と同様に、ユーザが送信したメッセージが表示される。日程ボタンD3が押下されると、メッセージ表示欄D2に、日付の選択によって日付情報の入力が可能な機能が付加されたカレンダー画像が表示される。場所ボタンD4が押下されると、メッセージ表示欄D2に、地域の選択によって地域情報の入力が可能な機能が付加された地図画像が表示される。参加者ボタンD5が押下されると、友達リストが表示され、チャットに招待する友達を選択できるようになっている。そして、機能ボタンD6が押下されると、他の諸機能の選択が可能になり、例えば、メッセージの入力画面を表示させることができる。
次に、図27と図29を参照して、第2実施形態における動作について説明する。図29は第2実施形態の端末装置2aにおける処理の流れを示すフローチャートである。端末装置2aのCPU40は、何等かの入力があると、その入力内容を解析する(S2000)。CPU40は、入力された内容が、メッセージの入力画面に入力されたテキストであると判断した場合には(S2001)、そのテキストデータを予約支援サーバ1aに対して送信する(S2002)。但し、入力された内容に「地図」の文字が含まれている場合には、後述するように地図の表示要求であると判断されるので、予約支援サーバ1aには送信されない。
また、日程ボタンD3が押下された場合には、端末装置2aのCPU40は、カレンダーの表示要求があったと判断し(S2003)、図27に示すようなカレンダー画像C201を表示させる。このカレンダー画像は、例えばjavascript(登録商標)等を用いて表示されており、日の部分の画像が押下されると、その日に対応する情報が出力されるようになっている。
カレンダー画像C201のいずれかの日の部分の画像が押下されると、端末装置2aのCPU40は、カレンダーの日付の選択が行われた判断し(S2005)、選択の結果として出力される日付の情報を、テキストデータに変換する(S2006)。そして、CPU40は、このテキストデータを予約支援サーバ1aに送信する(S2007)。つまり、図27に示すようにカレンダー画像C201を表示させ、いずれかの日付の画像を押下して選択することにより、選択した日付の情報が予約支援サーバ1aに送信されることになる。このように、第2実施形態においては、カレンダー画像C201を用いて日程の入力が可能になっている。
場所ボタンD4が押下された場合には、端末装置2aのCPU40は、地図の表示要求があったと判断し(S2008)、図27に示すような地図画像C204を表示させる。この地図画像は、例えばjavascript(登録商標)等を用いて表示されており、地域の部分の画像が押下されると、その地域に対応する情報が端末装置2aから出力されるようになっている。
地図画像C204のいずれかの地域の部分の画像が押下されると、端末装置2aのCPU40は、地域の選択が行われたと判断し(S2010)、選択の結果として出力される地域の情報を、テキストデータに変換する(S2011)。そして、CPU40は、このテキストデータを予約支援サーバ1aに送信する(S2012)。つまり、図27に示すように地図画像C204を表示させ、いずれかの地域の画像を押下して選択することにより、選択した地域の情報が予約支援サーバ1に送信されることになる。このように、第2実施形態においては、地図画像C204を用いて都道府県あるいは住所の入力が可能になっている。
参加者ボタンD5が押下された場合には、端末装置2aのCPU40は、友達の招待要求があったと判断し(S2013)、メッセージ送受信システム上の友達リストを表示させる(S2014)。そして、CPU40は、いずれかの友達が選択された場合には、選択された友達を、チャットに招待する処理を行い、アプリケーション画面P4のメッセージ表示欄D2に、その友達のアイコン画像を表示させる(S2015)。
以上のように、第2実施形態においては、画像の選択によって情報の入力が可能な機能が付加されたカレンダー画像と地図画像を表示させることが可能であるが、カレンダー画像または地図画像の一部が押下された選択された場合には、テキストデータに変換して予約支援サーバ1aに送信するので、予約支援サーバ1aは、第1実施形態で説明したチャット機能を利用して送信されたデータと、第2実施形態の専用のアプリケーションソフトウェアを利用して送信されたデータとを区別することなく取り扱うことが可能になっている。従って、図19から図23のフローチャートに示した処理は、第2実施形態においても共通に実行される。また、チャット機能においてもカレンダー画像や地図画像からの選択が可能となり、ユーザの入力作業の負担が軽減されている。
図27の表示例を用いて、第2実施形態の動作例について説明する。まず、ユーザがゴルフ予約用の専用のアプリケーションソフトウェアを起動させると、図27に示すアプリケーション画面P4が表示される。最初に起動した場合には、図27に示すように、「ゴルフに行きたい日があったら数字4ケタで教えてくださいね。」というメッセージC200が表示されている。
この状態で、ユーザが日程ボタンD3を押下すると、端末装置2aのCPU40は、カレンダーの表示要求があったと判断し(S2003)、図27に示すようにカレンダー画像C201を表示させる。ユーザがカレンダーの例えば27日の部分を押下すると、端末装置2aのCPU40は、カレンダーの日付が選択されたと判断し(S2005)、選択された日付をテキストデータに変換する。図27の例では、10月27日が選択されているので、10月27日のテキストデータが予約支援サーバ1aに送信されることになる。
この日付の情報を受信した予約支援サーバ1のCPU30は、メッセージ内容の解析の結果(図19;S90)、日付の入力があったと判断し(図19;S200)、日付を仮登録する(図19;S201)。この場合、図27には示していないが、第1実施形態のように、「10月27日ですね。」という確認メッセージを表示するようにしてもよい。そして、予約支援サーバ1aのCPU30は、ゴルフ場が仮登録済みかどうかを判断し(図19;S202)、ゴルフ場が仮登録されていない場合には(図19;S202:NO)、住所入力済みかどうかを判断する(図19;S204)。そして、住所が未入力である場合には(図19;S204:NO)、ユーザに対して住所の入力を要求するメッセージを送信する(図19;S205)。ユーザの端末装置2aでは、図27に示すように、「おすすめのゴルフ場を探してみます。位置情報をおしえてください。」というメッセージC202が表示される。
ここで、ユーザが場所ボタンD4を押下し、あるいは、図27に示すように「とちぎの地図」というメッセージC203を入力した場合には、端末装置2aのCPU40は、地図の表示要求があっと判断し(S2008)、図27に示すように地図画像C204を表示させる(S2009)。図27の例のように、特定の場所の地図が指定された場合には、その場所の地図を表示させるようにすればよく、場所ボタンD4を押下された場合には、例えば、日本地図の画像を表示させるようにすればよい。地図画像は、拡大することが可能であり、詳細な場所の特定が可能になっている。
そして、地図画像C204において特定の地域が押下された選択された場合には、端末装置2aのCPU40は、地域が選択されたと判断し(S2010)、選択された地域をテキストデータに変換し(S2011)、そのデータを予約支援サーバ1aに送信する(S2012)。図27の例では、那須地区が押下されたので、「那須地区」という情報が予約支援サーバ1aに送信されることになる。
予約支援サーバ1のCPU30は、都道府県または地域の入力が行われたと判断し(図19;S500)、当該地域におけるお勧めのゴルフ場を検索する旨の確認メッセージを送信する(図19;S501)。図27の例では、ユーザの端末装置2aの表示部25には、「那須地区で探してみます。」というメッセージC205が表示される。
予約支援サーバ1aにおいては、地図画像において選択可能な地域のそれぞれについて、ユーザに対して提示可能なお勧めのゴルフ場の情報が推奨施設情報として予め記憶されており、端末装置2aから、例えば「那須地区」等の情報が送信された場合には、CPU30は、当該地区のお勧めのゴルフ場の情報を抽出して(図19;S503)、予約支援サーバ1aから端末装置2aに対してお勧めのゴルフ場を表示させ承認を求める(図19;S503)。そして、このお勧めのゴルフ場の情報を受信した端末装置2aは、お勧めのゴルフ場の情報を表示させる。
予約支援サーバ1aにおいては、地図画像において選択可能な地域のそれぞれについて、ユーザに対して提示可能なお勧めのゴルフ場の情報が推奨施設情報として予め記憶されており、端末装置2aから、例えば「那須地区」等の情報が送信された場合には、CPU30は、当該地区のお勧めのゴルフ場の情報を抽出して(図19;S503)、予約支援サーバ1aから端末装置2aに対してお勧めのゴルフ場を表示させ承認を求める(図19;S503)。そして、このお勧めのゴルフ場の情報を受信した端末装置2aは、お勧めのゴルフ場の情報を表示させる。
以下、第1実施形態と同様に、提示された情報に対して承認または拒否を示すメッセージをユーザの端末装置2aから送信することにより、第1実施形態と同様にゴルフ場の予約を行うことができる。
なお、第2実施形態においては、機能ボタンD6が押下された時に、1人予約を指定できるようにしてもよいし、あるいは、1人予約用のボタンをアプリケーション画面P4に表示させるようにしてもよい。もちろん、「1人で行く」等のメッセージを入力するようにしてもよい。機能ボタンD6の押下により1人予約が指定された場合、1人予約用のボタンが押下された場合には、例えば、「1人予約」というテキストメッセージに変換して予約支援サーバ1に送信すればよい。その結果、第1実施形態と同様に1人予約処理が行われることになる。
なお、図27に示す例では、メッセージが投稿された日付や時間、「既読」の文言の記載を省略している。
<変形例>
本発明は、上述した実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。また、各変形例及び実施形態は、適宜、組み合わせてもよいことは勿論である。
本発明は、上述した実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。また、各変形例及び実施形態は、適宜、組み合わせてもよいことは勿論である。
<変形例1>
上述した第1実施形態においては、予約サーバ5における本登録処理が完了した後に、図23に示す1人予約処理を実行する例について説明した。しかし、本登録処理の前に1人予約処理を実行するようにしてもよい。図30は、第1実施形態の図21に示すフローチャートに対応するフローチャートである。図30に示すフローチャートは、本登録処理(S1208)の前に1人予約処理(S1220)を実行し、予約完了の表示(S1209)を行った後は、図19のステップS90に移行するところが図21に示すフローチャートと異なっている。
上述した第1実施形態においては、予約サーバ5における本登録処理が完了した後に、図23に示す1人予約処理を実行する例について説明した。しかし、本登録処理の前に1人予約処理を実行するようにしてもよい。図30は、第1実施形態の図21に示すフローチャートに対応するフローチャートである。図30に示すフローチャートは、本登録処理(S1208)の前に1人予約処理(S1220)を実行し、予約完了の表示(S1209)を行った後は、図19のステップS90に移行するところが図21に示すフローチャートと異なっている。
また、図31にこの変形例1における1人予約処理のフローチャートを示す。図31は、第1実施形態の図23に示すフローチャートに対応するフローチャートである。図31の場合には、処理が終了すると、図30の本登録処理(S1208)の前に戻るところが図23に示すフローチャートと異なる。また、2人の予約情報を関連付ける際に(S1408)、第1実施形態では、後に1人予約を行った1人予約者が、本登録した予約情報を破棄して、先に1人予約した1人予約者の予約情報に合わせる処理を行った。しかし、この変形例では、後に1人予約を行った1人予約者の予約情報については、まだ本登録を行っていないので、予約情報の破棄という処理を行うことなく、先に1人予約した1人予約者の予約情報に合わせるようにする。そして、この後に本登録処理を行う。このように、この変形例によれば、1人予約者の予約情報のマッチングの際に、予約情報の破棄という処理を省くことが可能になる。
<変形例2>
また、上述した第2実施形態では、専用アプリケーションソフトウェアのアプリケーションの端末装置2aへのインストール時に、カレンダー画像及び地図画像を端末装置2aに記憶させる例について説明したが、カレンダー画像及び地図画像については、予約支援サーバ1からその都度端末装置2に送信するようにしてもよい。この場合には、例えば、端末装置2aは、カレンダー画像または地図画像の表示を求める操作がユーザからなされた場合や、ユーザの入力内容に応じて端末装置2aが自動的にカレンダー画像または地図画像を取得する場合に、カレンダー画像または地図画像の送信要求を予約支援サーバ1に対して行う。カレンダー画像または地図画像の送信要求を受信した予約支援サーバ1は、予め記憶部16に記憶しているカレンダー画像または地図画像を、当該端末装置2aに対して送信する。
また、上述した第2実施形態では、専用アプリケーションソフトウェアのアプリケーションの端末装置2aへのインストール時に、カレンダー画像及び地図画像を端末装置2aに記憶させる例について説明したが、カレンダー画像及び地図画像については、予約支援サーバ1からその都度端末装置2に送信するようにしてもよい。この場合には、例えば、端末装置2aは、カレンダー画像または地図画像の表示を求める操作がユーザからなされた場合や、ユーザの入力内容に応じて端末装置2aが自動的にカレンダー画像または地図画像を取得する場合に、カレンダー画像または地図画像の送信要求を予約支援サーバ1に対して行う。カレンダー画像または地図画像の送信要求を受信した予約支援サーバ1は、予め記憶部16に記憶しているカレンダー画像または地図画像を、当該端末装置2aに対して送信する。
<変形例3>
さらに、上述した各実施形態では、1人予約の際に、他の1人予約者にメッセージを残す場合と残さない場合を選択可能な例について説明したが、1人予約を行ったという情報を開示しないように設定するようにしてもよい。この変形例3においては、登録部14は公開設定に関する情報を登録する処理部としての機能をも有する。図33は、この変形例3における1人予約処理のフローチャートを示す。図23と異なる部分を中心に説明する。図33に示すように、この変形例では、1人予約の本登録を行った後に、他の1人予約者がいない場合には(S1402:NO)、個人情報の公開設定を行う(S1420)。
さらに、上述した各実施形態では、1人予約の際に、他の1人予約者にメッセージを残す場合と残さない場合を選択可能な例について説明したが、1人予約を行ったという情報を開示しないように設定するようにしてもよい。この変形例3においては、登録部14は公開設定に関する情報を登録する処理部としての機能をも有する。図33は、この変形例3における1人予約処理のフローチャートを示す。図23と異なる部分を中心に説明する。図33に示すように、この変形例では、1人予約の本登録を行った後に、他の1人予約者がいない場合には(S1402:NO)、個人情報の公開設定を行う(S1420)。
公開設定は、例えば、図32に示すように、「公開設定をします。次の中から番号を入力してください。1.個人情報は公開しない、2.プロフィール公開、3.メッセージ公開、4.プロフィールとメッセージを公開」というメッセージC303を送信する。そして、例えば、図32に示すように、ユーザが「3」というメッセージC304を送信した場合には、CPU30は、メッセージを残すと判断し(S1403:YES)、図示しないが、例えば「ではメッセージをどうぞ。」等のメッセージを送信する。公開設定において「4」が選択された場合も、メッセージを残す旨が選択されたと判断する。そしてCPU30は、メッセージを受信すると、先に受信した公開設定とともに、予約ID及び予約者UIDと関連付けて記憶する(S1421)。
一方、公開設定において「1」または「2」が選択された場合、CPU30は、その旨を予約ID及び予約者UIDと関連付けて記憶する(S1422)。
なお、公開設定の記憶方法は任意であり、受信した「3」という番号自体を記憶させてもよいし、フラグを用いてもよい。
他の1人予約者がいる場合には(S1402:YES)、CPU30は、当該他の1人予約者に関する予約情報を表示させるかどうかを問いかける(S1423)。この問いかけに、表示させない旨のメッセージが送信された場合(S1423:NO)、CPU30は、予約処理を完了させる。
一方、表示させる旨のメッセージが送信された場合(S1423:YES)、CPU30は、当該他の1人予約者が設定した公開設定に応じて、予約情報を表示させる。具体的には、他の1人予約者が、公開設定において「1.個人情報は公開しない」を選択していた場合、CPU30は当該予約情報の書誌的事項、例えばスタート時間、スタートホール、料金、のみを端末装置2に送信する。「2.プロフィール公開」を選択していた場合、CPU30は、上記予約情報の書誌的事項に加えて、当該他の1人予約者のプロフィール、例えば氏名、性別や「30歳台」等の年齢を、端末装置2に送信する。「3.メッセージ公開」を選択していた場合、CPU30は、上記予約情報の書誌的事項に加えて、当該他の1人予約者の残したメッセージを、端末装置2に送信する。「4.プロフィールとメッセージを公開」を選択していた場合、CPU30は、上記予約情報の書誌的事項、プロフィール情報、メッセージを、端末装置2に送信する。
そしてCPU30は、かかる他の1人予約者と一緒にラウンドするか否かの選択を求め(S1407)、一緒にラウンドすることが選択されると、上述のようにCPU30は予約情報の修正を行う(S1408)。そして、CPU30は、公開設定を行い(S1424)、メッセージがある場合はメッセージとともに公開設定を記憶し(S1425)、メッセージがない場合は公開設定を記憶する(S1426)。この公開設定及び記憶する処理はステップS1420、ステップS1421、ステップS1422で行った処理と同様であるので説明を省略する。
なお、図32に示す例では、メッセージが投稿された日付や時間、「既読」の文言の記載を省略している。
<変形例4>
上述した各実施形態及び変形例においては、メッセージ送受信サービスにおけるチャット機能や、専用のアプリケーションソフトウェアを用いて1人予約者の残したメッセージ等を確認するようにしたが、本発明はこのような例に限定されるものではない。例えば、所定の予約サイトに「1人予約」のボタンを設けておき、このボタンが押下されたことと、ゴルフ場が選択されたことを予約サイトのサーバが認識した場合に、当該ゴルフ場で他の1人予約者の情報を検索し、画面の全部または一部に表示するようにしてもよい。この場合、1人だけ抽出するようにしてもよい、リスト状に表示するようにしてもよい。
上述した各実施形態及び変形例においては、メッセージ送受信サービスにおけるチャット機能や、専用のアプリケーションソフトウェアを用いて1人予約者の残したメッセージ等を確認するようにしたが、本発明はこのような例に限定されるものではない。例えば、所定の予約サイトに「1人予約」のボタンを設けておき、このボタンが押下されたことと、ゴルフ場が選択されたことを予約サイトのサーバが認識した場合に、当該ゴルフ場で他の1人予約者の情報を検索し、画面の全部または一部に表示するようにしてもよい。この場合、1人だけ抽出するようにしてもよい、リスト状に表示するようにしてもよい。
<変形例5>
上述した実施形態及び変形例においては、仮登録情報は常に保存しておく例について説明したが、本発明はこのような例に限定されるものではなく、所定時間経過した仮登録情報については、リセットするようにしてもよい。
例えば同じユーザが、チャットにメッセージを投稿すると、CPU30は、チャット履歴テーブル16aを参照して、今回の投稿の受付日時と、前回の最後の投稿の受付日時の比較を行う。この比較の対象になる最後の投稿には、専用アカウントによる最後の投稿と、ユーザによる最後の投稿の双方を含む。そして、CPU30は、前回のチャット終了(中断)時から所定時間、例えば1週間経過していると判断した場合には、応答メッセージとして、「前回までの経過はリセットされました。」を送信し、続けて「ゴルフの予約ですね。行きたい日を数字4ケタで教えてください。」等のメッセージを送信する。
なお、最終の投稿から3日経過して、リセット期限である1週間を経過する前(例:5日目)にユーザがメッセージを送ってきた場合には、CPU30は、「前回の処理を継続しますか?」と尋ねてもよい。そしてCPU30は、「はい」を受信すると、前回の処理内容をチェックし、例えば、ゴルフ場だけ決まっていない場合等、処理が途中で終わっていれば、そこから処理を再開する。一方、予約の本登録まで終了している場合は、CPU30は、「前回の予約が完了しているので新規になります。」などと応答する。
ここで、CPU30は、予め前回の処理内容をチェックし、途中で終わっている場合のみ「前回の処理を継続しますか?」と尋ねるようにしてもよい。この方がユーザにとって応答の煩雑さは減少する。
上述した実施形態及び変形例においては、仮登録情報は常に保存しておく例について説明したが、本発明はこのような例に限定されるものではなく、所定時間経過した仮登録情報については、リセットするようにしてもよい。
例えば同じユーザが、チャットにメッセージを投稿すると、CPU30は、チャット履歴テーブル16aを参照して、今回の投稿の受付日時と、前回の最後の投稿の受付日時の比較を行う。この比較の対象になる最後の投稿には、専用アカウントによる最後の投稿と、ユーザによる最後の投稿の双方を含む。そして、CPU30は、前回のチャット終了(中断)時から所定時間、例えば1週間経過していると判断した場合には、応答メッセージとして、「前回までの経過はリセットされました。」を送信し、続けて「ゴルフの予約ですね。行きたい日を数字4ケタで教えてください。」等のメッセージを送信する。
なお、最終の投稿から3日経過して、リセット期限である1週間を経過する前(例:5日目)にユーザがメッセージを送ってきた場合には、CPU30は、「前回の処理を継続しますか?」と尋ねてもよい。そしてCPU30は、「はい」を受信すると、前回の処理内容をチェックし、例えば、ゴルフ場だけ決まっていない場合等、処理が途中で終わっていれば、そこから処理を再開する。一方、予約の本登録まで終了している場合は、CPU30は、「前回の予約が完了しているので新規になります。」などと応答する。
ここで、CPU30は、予め前回の処理内容をチェックし、途中で終わっている場合のみ「前回の処理を継続しますか?」と尋ねるようにしてもよい。この方がユーザにとって応答の煩雑さは減少する。
<変形例6>
上述した各実施形態および変形例では、メッセージ送受信サービスで使用するユーザアカウントと、予約サーバ5へログインを行うためのログイン情報とが異なっていたが、これを一致させることとしてもよい。具体的には、メッセージ送受信サービスで使用するユーザアカウントを、予約サーバ5へログインするためのログイン情報としても使用できるように、予約サーバ5に照合のために記憶されるログイン情報を構成する。そして、仮登録情報を本登録するときにユーザに対して要求される、予約サーバ5へのログイン情報の入力作業を省略し、本登録を行う際に予約支援サーバ1が当該ユーザのログイン情報を予約サーバ5へ送信してログイン処理を行い、更に仮登録情報を送信して予約サーバ5において本登録を行う構成とする。
上述した各実施形態および変形例では、メッセージ送受信サービスで使用するユーザアカウントと、予約サーバ5へログインを行うためのログイン情報とが異なっていたが、これを一致させることとしてもよい。具体的には、メッセージ送受信サービスで使用するユーザアカウントを、予約サーバ5へログインするためのログイン情報としても使用できるように、予約サーバ5に照合のために記憶されるログイン情報を構成する。そして、仮登録情報を本登録するときにユーザに対して要求される、予約サーバ5へのログイン情報の入力作業を省略し、本登録を行う際に予約支援サーバ1が当該ユーザのログイン情報を予約サーバ5へ送信してログイン処理を行い、更に仮登録情報を送信して予約サーバ5において本登録を行う構成とする。
<変形例7>
上述した各実施形態および変形例では、ゴルフ場の予約に予約支援サーバを用いる例について説明したが、本発明はこのような例に限定されるものではなく、他のスポーツの予約、映画や劇場等の予約、宿泊施設の予約等にも応用することが可能である。
上述した各実施形態および変形例では、ゴルフ場の予約に予約支援サーバを用いる例について説明したが、本発明はこのような例に限定されるものではなく、他のスポーツの予約、映画や劇場等の予約、宿泊施設の予約等にも応用することが可能である。
<変形例8>
上述した各実施形態においては、メッセージ送受信サービスにおけるチャット機能や、専用のアプリケーションソフトウェアを用いて、予約支援サーバ1と対話形式でゴルフ場の予約を行う例について説明したが、本発明は、掲示板や一般的なメールも利用することが可能である。
上述した各実施形態においては、メッセージ送受信サービスにおけるチャット機能や、専用のアプリケーションソフトウェアを用いて、予約支援サーバ1と対話形式でゴルフ場の予約を行う例について説明したが、本発明は、掲示板や一般的なメールも利用することが可能である。
<変形例9>
上述した各実施形態においては、予約支援装置の一例として予約支援サーバ1を用いる構成を説明したが、本発明の機能が実現できるならば、複数のサーバを用いて本発明の機能を実現させる構成や、例えば予約支援サーバ1に組み込まれた機能と予約サーバ5に組み込まれた機能とが1つのサーバに組み込まれた構成であってもよい。すなわち、サーバ構成や機能の集約、分散は自在である。
上述した各実施形態においては、予約支援装置の一例として予約支援サーバ1を用いる構成を説明したが、本発明の機能が実現できるならば、複数のサーバを用いて本発明の機能を実現させる構成や、例えば予約支援サーバ1に組み込まれた機能と予約サーバ5に組み込まれた機能とが1つのサーバに組み込まれた構成であってもよい。すなわち、サーバ構成や機能の集約、分散は自在である。
<その他>
なお、本発明における機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することとしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。また、本発明における機能またはその一部を実現するためのプログラムを配信する配信サーバ及び当該配信サーバによる配信に用いるために使用される、当該プログラムが記憶された備えられた記憶媒体についても、本発明の範囲に含まれる。
なお、本発明における機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することとしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。また、本発明における機能またはその一部を実現するためのプログラムを配信する配信サーバ及び当該配信サーバによる配信に用いるために使用される、当該プログラムが記憶された備えられた記憶媒体についても、本発明の範囲に含まれる。
また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
なお、本発明は上述の各実施形態及び変形例に限定されるものではなく、本発明の趣旨の範囲内での変更は本発明に含まれるものである。
NET……通信網、1,1a……予約支援サーバ、2,2a……端末装置、3……外部管理サーバ、4……マップサーバ、5……予約サーバ、10……解析部、11……応答部、12……判断部、13……応答制御部、14……登録部、15……候補提示部、16……記憶部、17……宛先検出部、18……予約検出部、21……取得部、22……入力部、23……表示制御部、24……変換部、25……表示部、26……記憶部。
Claims (10)
- ユーザの使用に係る端末装置と、当該端末装置と通信可能な予約支援装置とを備える予約支援システムであって、
前記予約支援装置は、
前記端末装置における入力の内容を解析する解析部と、
前記解析部における解析結果に応じて所定の内容を応答する応答部と、
所定のアクティビティに関する予約に必要な情報が充足されたか否かを判断する判断部と、
前記判断部により前記予約に必要な情報が充足されていないと判断された場合に、前記必要な情報の入力を促す内容を前記応答部により応答させる応答制御部と、
前記判断部により前記予約に必要な情報が充足されたと判断された場合に、前記予約に必要な情報を登録する登録部とを備え、
前記端末装置は、
画像の選択によって情報の入力が可能な機能が付加された画像を取得する取得部と、
前記ユーザによる操作に応じて、前記取得部で取得された前記画像を表示させる表示制御部と、
前記ユーザによる操作に応じて情報を入力可能な入力部と、
前記入力部を介して前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記解析部により解析可能な内容に変換する変換部とを備える、
ことを特徴とする予約支援システム。 - 前記端末装置は、画像の選択によって日付情報の入力が可能な機能が付加されたカレンダー画像を取得可能な取得部をさらに備え、
前記表示制御部は、前記ユーザによる操作が日付の入力に関する操作である場合には、前記カレンダー画像を表示させ、
前記変換部は、前記入力部を介して前記カレンダー画像における日部分の画像の選択による日付情報の入力が行われた場合には、当該日付情報を日付についての文字情報に変換することを特徴とする請求項1に記載の予約支援システム。 - 前記端末装置は、画像の選択によって場所情報の入力が可能な機能が付加された地図画像を取得可能な取得部をさらに備え、
前記表示制御部は、前記ユーザによる操作が場所の入力に関する操作である場合には、前記地図画像を表示させ、
前記変換部は、前記入力部を介して前記地図画像の選択による場所情報の入力が行われた場合には、当該場所情報を場所についての文字情報に変換することを特徴とする請求項1または請求項2に記載の予約支援システム。 - 前記予約支援装置は、予め都道府県または都道府県より狭い範囲の地域に対応する推奨アクティビティ施設に関する推奨施設情報を記憶しており、
前記端末装置において前記地図画像の選択による場所情報の入力が行われた場合、当該入力した場所情報に対応する都道府県または地域の推奨施設情報を前記予約支援装置から受信可能であること特徴とする、請求項3に記載の予約支援システム。 - 画像の選択によって情報の入力が可能な機能が付加された画像を取得する取得部と、
前記ユーザによる操作に応じて、前記取得部で取得された前記画像を表示させる表示制御部と、
前記ユーザによる操作に応じて情報を入力可能な入力部と、
前記入力部を介して前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記予約支援装置により解析可能な内容に変換する変換部とを備える、
ことを特徴とする端末装置。 - 前記端末装置は、前記端末装置での入力内容に応答する機能を有する予約支援装置と通信が可能であり、
前記取得部は、画像の選択によって日付情報の入力が可能な機能が付加されたカレンダー画像を取得可能であり、
前記表示制御部は、前記ユーザによる操作が日付の入力に関する操作である場合には、前記カレンダー画像を表示させ、
前記変換部は、前記入力部を介して前記カレンダー画像における日部分の画像の選択による日付情報の入力が行われた場合には、当該日付情報を日付についての文字情報に変換することを特徴とする請求項5に記載の端末装置。 - 前記端末装置は、前記端末装置での入力内容に応答する機能を有する予約支援装置と通信が可能であり、
前記取得部は、画像の選択によって場所情報の入力が可能な機能が付加された地図画像を取得可能であり、
前記表示制御部は、前記ユーザによる操作が場所の入力に関する操作である場合には、前記地図画像を表示させ、
前記変換部は、前記入力部を介して前記地図画像の選択による場所情報の入力が行われた場合には、当該場所情報を場所についての文字情報に変換することを特徴とする請求項5に記載の端末装置。 - ユーザの端末装置を用いた予約を支援する予約支援方法であって、
前記端末装置における入力の内容を解析し、
前記解析の結果に応じて所定の内容を応答し、
所定のアクティビティに関する予約に必要な情報が充足されたか否かを判断し、
前記予約に必要な情報が充足されていないと判断された場合に、前記必要な情報の入力を促す内容を応答し、
前記予約に必要な情報が充足されたと判断された場合に、前記予約に必要な情報を登録し、
画像の選択によって情報の入力が可能な機能が付加された画像を取得し、
前記ユーザによる操作に応じて、前記取得した前記画像を表示し、
前記ユーザによる操作に応じて情報を入力し、
前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記解析が可能な内容に変換する、
ことを特徴とする予約支援方法。 - ユーザの使用に係る端末装置と、当該端末装置と通信可能な予約支援装置とを備える予約支援システムにおける前記端末装置の制御方法であって、
画像の選択によって情報の入力が可能な機能が付加された画像を取得し、
前記ユーザによる操作に応じて、前記取得部で取得された前記画像を表示させ、
前記ユーザによる操作に応じて情報を入力し、
前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記予約支援装置により解析可能な内容に変換する、
ことを特徴とする端末装置の制御方法。 - ユーザの使用に係る端末装置と、当該端末装置と通信可能な予約支援装置とを備える予約支援システムにおけるコンピュータを備える前記端末装置のプログラムであって、
前記コンピュータを、
画像の選択によって情報の入力が可能な機能が付加された画像を取得する取得部と、
前記ユーザによる操作に応じて、前記取得部で取得された前記画像を表示させる表示制御部と、
前記ユーザによる操作に応じて情報を入力可能な入力部と、
前記入力部を介して前記画像の選択による情報の入力が行われた場合には、当該入力の内容を前記予約支援装置により解析可能な内容に変換する変換部として機能させる、
ことを特徴とする端末装置のプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013054759A JP2014099145A (ja) | 2012-10-19 | 2013-03-18 | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラム |
PCT/JP2013/058051 WO2014061289A1 (ja) | 2012-10-19 | 2013-03-21 | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラムを記録したコンピュータ読み取り可能な非一過性の記録媒体 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012231442 | 2012-10-19 | ||
JP2012231442 | 2012-10-19 | ||
JP2013054759A JP2014099145A (ja) | 2012-10-19 | 2013-03-18 | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014099145A true JP2014099145A (ja) | 2014-05-29 |
Family
ID=50487868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013054759A Pending JP2014099145A (ja) | 2012-10-19 | 2013-03-18 | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2014099145A (ja) |
WO (1) | WO2014061289A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6306254B1 (ja) * | 2017-08-28 | 2018-04-04 | 株式会社FiNC | 予約支援方法およびプログラム |
JP2019179559A (ja) * | 2019-05-22 | 2019-10-17 | 株式会社Professy | 情報処理装置、情報処理装置を用いた方法、及びプログラム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111202968B (zh) * | 2020-01-09 | 2022-02-15 | 重庆锐云科技有限公司 | 一种高尔夫开球时间管理系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002366558A (ja) * | 2001-06-11 | 2002-12-20 | Shiro Saito | コミュニケーションツール提供システム及び方法及びプログラム |
JP2005084797A (ja) * | 2003-09-05 | 2005-03-31 | Nec Fielding Ltd | ゴルフ場予約システム、ゴルフ場予約方法及びそのプログラム |
JP2012163382A (ja) * | 2011-02-04 | 2012-08-30 | Clarion Co Ltd | 情報提供システムおよびサーバ |
-
2013
- 2013-03-18 JP JP2013054759A patent/JP2014099145A/ja active Pending
- 2013-03-21 WO PCT/JP2013/058051 patent/WO2014061289A1/ja active Application Filing
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6306254B1 (ja) * | 2017-08-28 | 2018-04-04 | 株式会社FiNC | 予約支援方法およびプログラム |
JP2019040500A (ja) * | 2017-08-28 | 2019-03-14 | 株式会社FiNC Technologies | 予約支援方法およびプログラム |
JP2019179559A (ja) * | 2019-05-22 | 2019-10-17 | 株式会社Professy | 情報処理装置、情報処理装置を用いた方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2014061289A1 (ja) | 2014-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10510050B2 (en) | Meetings and events coordinating system and method | |
KR101687927B1 (ko) | 이벤트 리뷰들을 획득하는 방법 및 시스템 | |
US20210295837A1 (en) | Non-Transitory Computer Readable Medium, Information Processing Method, Information Processing Device, and Information Processing System | |
US7716078B2 (en) | System and method for web-based sports event scheduling | |
US20150356693A1 (en) | Providing event-attendance-responsive notifications via a hybrid architecture | |
WO2021205240A1 (en) | Different types of text call services, centralized live chat applications and different types of communication mediums for caller and callee or communication participants | |
US20070276719A1 (en) | User Interface in Automated Scheduling System | |
US20200082350A1 (en) | Matching method and system | |
US10992487B2 (en) | Instant messaging service method for providing schedule service and apparatus therefor | |
WO2014061287A1 (ja) | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラムを記録したコンピュータ読み取り可能な非一過性の記録媒体 | |
WO2014061290A1 (ja) | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラムを記録したコンピュータ読み取り可能な非一過性の記録媒体 | |
TW201434003A (zh) | 活動圖 | |
US11587188B2 (en) | Creating travel plans based on pictorial representations | |
JP6167379B2 (ja) | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラム | |
EP3940619A1 (en) | Device, program, and system for providing point services | |
WO2014061289A1 (ja) | 予約支援装置、予約支援装置の制御方法、及び、予約支援装置のプログラムを記録したコンピュータ読み取り可能な非一過性の記録媒体 | |
JP6225390B2 (ja) | 予約支援装置のプログラム、予約支援システム、予約支援装置の制御方法、及び、予約支援装置 | |
US20220076173A1 (en) | Methods and systems for itinerary creation | |
JP2016500165A (ja) | 社会的、時間的および空間的パラメータに基づくデータオブジェクトの統合的表示および管理 | |
JP6908765B1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US20180032921A1 (en) | Communication system including server configured for event management | |
US20150177923A1 (en) | Event networking method | |
JP5964257B2 (ja) | 予約管理装置のプログラム、予約管理装置の制御方法、予約管理装置、及び、予約管理システム | |
JP2016186807A (ja) | 予約管理装置のプログラム、予約管理装置の制御方法、予約管理装置、及び、予約管理システム | |
KR102561641B1 (ko) | 응원용 소통 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20150414 |