(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0017】
本実施の形態においては、商品の一例としての料理を配達するデリバリーサービスを例に説明する。
以下、実施の形態を次の順序で説明する。
【0018】
<1.全体構成>
<2.ハードウェア構成>
<3.DB>
[3−1.ユーザDB]
[3−2.店舗DB]
[3−3.メニューDB]
[3−4.ウェブページDB]
<4.処理の流れ>
[4−1.第1の実施の形態の流れ]
[4−2.デリバリーサーバの処理]
[4−3.第2の実施の形態]
[4−4.配達利用店舗検索処理の第1例]
[4−5.配達利用店舗検索処理の第2例]
[4−6.配達利用店舗検索処理の第3例]
<5.変形例>
[5−1.変形例1]
[5−2.変形例2]
<6.まとめ>
<7.プログラム>
【0019】
<1.全体構成>
本実施の形態としてのデリバリーサーバ1を含むネットワークシステム全体の構成を
図1及び
図2を用いて説明する。
図1に示すように、本実施の形態のデリバリーサーバ1は、通信ネットワーク2を介してユーザ端末3,3,3,・・・と店舗端末4,4,4,・・・と相互に通信可能な状態で接続されている。
【0020】
デリバリーサーバ1は、店舗で調理した料理をユーザにより指定された場所に配達するデリバリーサービス(配達サービス)を提供する情報処理装置である。そのために、デリバリーサーバ1は、ユーザ端末3や店舗端末4と各種のやりとりを行い、店舗で調理した料理をユーザに配達するための各種機能を提供する。
【0021】
具体的には、ユーザ端末3を利用するユーザに対して、様々な店舗が提供する料理を注文可能な注文仲介サイトを提供する。このために、デリバリーサーバ1は、ウェブページをユーザ端末3上で閲覧可能に表示させるためのウェブページデータを送信する機能を備える。
ウェブページデータは、例えば、HTML(Hyper Text Markup Language)やXHTML(Extensible HyperText Markup Language)などの構造化文書ファイルである。構造化文書ファイルには、商品の説明などのテキストデータや商品画像などの画像データと、それらの配置や表示態様(文字色やフォントや大きさや装飾など)が記述されている。
デリバリーサーバ1は、注文仲介サイトを介して、商品情報を提供する。商品情報は、例えば、デリバリー対象とされた料理の情報(メニュー情報)であり、料理画像や、料理に使用される食材情報、価格情報、栄養情報、分量情報などである。
また、デリバリーサーバ1は、店舗端末4から受信した店舗ごとの配達時間情報をユーザに提供する。
【0022】
更に、デリバリーサーバ1は、ユーザからの注文情報を含む注文要求を受け付け、各店舗に料理を発注する機能を備える。デリバリーサーバ1から店舗には、注文情報に含まれる情報として、注文したユーザの情報(注文者情報)と、注文された料理の情報(注文メニュー情報)と、注文量が通知される。
【0023】
これらの各種機能を提供するために、デリバリーサーバ1は、ユーザの属性情報が記憶されたユーザDB(Database)50、料理を提供する店舗の情報が記憶された店舗DB51、店舗が提供する料理の情報が記憶されるメニューDB52、注文仲介サイトなどの各種ウェブページデータが記憶されたウェブページDB53を管理する。
【0024】
通信ネットワーク2の構成は特に限定されるものではなく、例えば、インターネット、イントラネット、エキストラネット、LAN(Local Area Network)、CATV(Community Antenna TeleVision)通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網などが想定される。
また通信ネットワーク2の全部又は一部を構成する伝送媒体についても多様な例が想定される。例えばIEEE(Institute of Electrical and Electronics Engineers)1394、USB(Universal Serial Bus)、電力線搬送、電話線などの有線でも、IrDA(Infrared Data Association)のような赤外線、ブルートゥース(登録商標)、802.11無線、携帯電話網、衛星回線、地上波デジタル網などの無線でも利用可能である。
【0025】
ユーザ端末3は、デリバリーサーバ1が提供するデリバリーサービスの各種機能を利用するユーザが使用する端末である。
店舗端末4は、デリバリーサーバ1が提供する各種機能を利用して、料理の販売を行う店舗に関わる人物(以降販売者と記載)が利用する端末である。
【0026】
ユーザ端末3や店舗端末4では、必要に応じて各種の送受信処理や表示処理などが実行される。また、ユーザ端末3や店舗端末4は、例えば、通信機能を備えたPC(Personal Computer)やフィーチャーフォンやPDA(Personal Digital Assistant)、或いは、スマートフォンやタブレット端末などのスマートデバイスなどである。
【0027】
図2を参照して、本実施の形態におけるデリバリーサーバ1の特徴的な各部を説明する。
デリバリーサーバ1は、配達先取得部1aと、指定店舗受付部1bと、店舗検索部1cと、注文受付部1dと、指定時間受付部1eと、移動時間取得部1fを備えている。
【0028】
配達先取得部1aは、ユーザが指定する配達先の情報を取得する処理を実行する。また、ユーザが指定する配達先の代わりに、履歴に基づいてユーザが指定する可能性の高い配達先を取得してもよい。
【0029】
指定店舗受付部1bは、デリバリー可能な店舗の中からユーザが選択した店舗を指定店舗として受け付ける処理を実行する。
【0030】
店舗検索部1cは、デリバリー可能な店舗の中から各種条件に応じた店舗を検索する処理を実行する。また、検索結果としての店舗一覧をユーザ端末3へ提示する処理を実行する。各種条件については、いくつかの例を後述する。一例として、例えば、指定店舗と配達可能時間の少なくとも一部が被っている店舗を検索して、ユーザ端末3へ提示する。
【0031】
注文受付部1dは、ユーザによる注文情報(注文メニュー情報や注文量情報)を含む注文要求を受け付け、注文処理を実行する。注文処理は、各料理を調理する店舗へ実際の発注を行う処理であり、注文者情報(配達先の住所や配達時間など)や注文メニューの情報(メニューの識別情報や分量情報)などを店舗へ通知する処理を実行する。
【0032】
指定時間受付部1eは、ユーザによる配達時間の指定を受け付ける。
【0033】
移動時間取得部1fは、店舗から配達先の間の移動時間に加え、店舗間の移動時間なども取得する。移動時間の取得では、入力された値を移動時間として取得してもよいし、全地球測位システムを用いて移動時間を算出して取得してもよい。(具体的な例は、後述する。
【0034】
デリバリーサーバ1は、上記に示した各部以外にも、ユーザ端末3上で動作するウェブブラウザに、注文仲介サイトなどの所定のウェブページを表示させるためのウェブページデータを生成するウェブページデータ生成処理を実行する部や、それらのウェブページデータをユーザ端末3や店舗端末4などに送信する部などを備えている。
【0035】
<2.ハードウェア構成>
図3は、
図1に示したデリバリーサーバ1、ユーザ端末3、店舗端末4、そして、ユーザDB50、店舗DB51、メニューDB52、ウェブページDB53のハードウェアを例示する図である。それぞれのサーバや端末におけるコンピュータ装置のCPU(Central Processing Unit)101は、ROM(Read Only Memory)102に記憶されているプログラム、または記憶部108からRAM(Random Access Memory)103にロードされたプログラムに従って各種の処理を実行する。RAM103にはまた、CPU101が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU101、ROM102、およびRAM103は、バス104を介して相互に接続されている。このバス104には、入出力インターフェース105も接続されている。
入出力インターフェース105には、キーボード、マウス、タッチパネルなどよりなる入力部106、LCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)、有機EL(Electroluminescence)パネルなどよりなるディスプレイ、並びにスピーカなどよりなる出力部107、HDD(Hard Disk Drive)やフラッシュメモリ装置などより構成される記憶部108、通信ネットワーク2を介しての通信処理や機器間通信を行う通信部109が接続されている。
入出力インターフェース105にはまた、必要に応じてメディアドライブ110が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア111が適宜装着され、リムーバブルメディア111に対する情報の書込や読出が行われる。
【0036】
このようなコンピュータ装置では、通信部109による通信によりデータやプログラムのアップロード、ダウンロードが行われる。また、リムーバブルメディア111を介したデータやプログラムの受け渡しが可能である。
CPU101が各種のプログラムに基づいて処理動作を行うことで、デリバリーサーバ1、ユーザ端末3、店舗端末4、ユーザDB50、店舗DB51、メニューDB52、ウェブページDB53のそれぞれにおいて後述する情報処理や通信が実行される。
尚、デリバリーサーバ1、ユーザ端末3、店舗端末4、ユーザDB50、店舗DB51、メニューDB52、ウェブページDB53を構成するそれぞれの情報処理装置は、
図3のようなコンピュータ装置が単一で構成されることに限らず、複数のコンピュータ装置がシステム化されて構成されてもよい。複数のコンピュータ装置は、LANなどによりシステム化されていてもよいし、インターネットなどを利用したVPN(Virtual Private Network)などにより通信可能な状態で遠隔地に配置されたものでもよい。
【0037】
<3.DB>
デリバリーサーバ1が管理する各種DBについて説明する。
[3−1.ユーザDB]
ユーザDB50にはデリバリーサーバ1が提供するデリバリーサービスを受けるユーザの情報が記憶される。例えば、一人のユーザを特定可能な一つのユーザID(Identification)に対して、ログインパスワード、氏名、年齢、性別、住所、メールアドレス、年収、趣味などの個人的な情報が紐付けられて記憶される。また、注文履歴やメニューのお気に入り登録情報、嗜好食材情報などを記憶してもよい。
【0038】
[3−2.店舗DB]
店舗DB51には、デリバリーサービスを利用して商品(料理)を販売する店舗の情報が記憶される。例えば、それぞれの店舗を一意に識別可能な店舗IDに対して、ログインパスワード、店舗名、店舗ロゴ、配達範囲情報、営業時間情報、料理ごとのメニューID、店舗ページURL(Uniform Resource Locator)、料理ごとの価格、連絡先(電話番号やメールアドレスなど)などの各情報が紐付けられて記憶される。
店舗ページURLは店舗が有するウェブページごとに付されるURLである。
店舗ロゴの情報は、画像データそのものでもよいし、保存されている画像データのリンク情報(URL情報)などでもよい。
また、料理提供時間(待ち時間)の情報が記憶されてもよい。料理提供時間は、デリバリーサービスを利用するユーザ数によって変化する。変化するごとに、店舗DB51の料理提供時間の情報が更新される。
【0039】
[3−3.メニューDB]
メニューDB52には、デリバリーサービスを介して購入(注文)が可能な料理についての情報が記憶される。例えば、料理を一意に識別可能なメニューIDに対して、料理ジャンル、料理画像、店舗情報、食材材料、分量情報、などが紐付けられて記憶される。
料理画像の情報は、画像データそのものでもよいし、保存されている画像データのリンク情報(URL情報など)でもよい。
【0040】
[3−4.ウェブページDB]
ウェブページDB53には、デリバリーサーバ1がユーザや販売者に提供する各種ウェブページのデータが記憶される。具体的には、注文仲介サイトのページや店舗ページや料理の詳細ページやユーザページなどのウェブページデータである。
ウェブページデータとしては、ウェブページのURL情報と各ウェブページ上に配置されるオブジェクト(画像やテキストやバナーなど)の配置や表示態様(位置や大きさ、色等)の情報が記憶される。
尚、ウェブページDB53に記憶される情報は、例えば、HTMLなどの構造化文書ファイルで記憶されてもよい。
【0041】
<4.処理の流れ>
[4−1.第1の実施の形態の流れ]
第1の実施の形態の処理の流れについて、
図4を参照して説明する。
第1の実施の形態では、ユーザが指定した配達エリアに応じた店舗検索がなされ、検索結果から一つの店舗(指定店舗)が選択された場合に、指定店舗に応じて検索結果から更に店舗検索がされる例について説明する。
【0042】
先ず、ユーザ端末3はステップS101において、デリバリーサーバ1に対して注文仲介サイトのウェブページを要求する処理を実行する。この処理により、デリバリーサーバ1に対して注文仲介サイトのウェブページ要求が送信される。この処理は、例えば、ユーザがお気に入りに登録された各種ウェブページからデリバリーサービスを利用するための注文仲介サイトのウェブページを選択することにより実行される。
【0043】
注文仲介サイトのウェブページ要求を受信したデリバリーサーバ1は、ステップS201において、注文仲介サイトのウェブページデータをウェブページDB53から取得して要求のあったユーザ端末3へ送信する処理を実行する。この処理により、注文仲介サイトのウェブページデータがユーザ端末3へ送信され、注文仲介サイトのウェブページがユーザ端末3上に表示される。
【0044】
図5に注文仲介サイトのウェブページの一例を示す。
注文仲介サイトのウェブページには、様々な検索方法により登録された店舗から特定の店舗を検索する機能が設けられている。
【0045】
具体的に
図5を参照して説明する。
ユーザ端末3にインストールされているウェブブラウザ5の上端部付近には、ウェブページの変更や表示態様の変更を行うための各種操作子6,6,6,・・・が設けられている。また、ウェブページを検索するための検索フォーム7や、表示されているウェブページのURLが表示されるアドレス表示部8が配置されている。
更に、その下方には、ウェブページが表示されるウェブページ表示部9が配置されている。
【0046】
ウェブページ表示部9には、カテゴリから店舗を検索するためのボタンや、住所等(郵便番号、都道府県、地図)から店舗を検索するためのボタンや、キャンペーン情報から店舗を探すボタンや、注目店舗を直接表示するボタン等が配置されている。
これにより、店舗のカテゴリから検索する機能や、ユーザの住所(即ち配達先となる場所)に応じて店舗を検索する機能などが設けられている。
また、デリバリーサーバ1が提供するデリバリーサービスは、複数店舗の料理を一括して配達するサービスを備えている。そのために、ウェブページ表示部9には、まとめてデリバリーボタン10が配置されている。
【0047】
ここで、ユーザがまとめてデリバリーボタン10を押下した場合、ユーザ端末3は
図4のステップS102において、当該ボタンが押下されたことをデリバリーサーバ1へ通知する処理を実行する。
【0048】
操作情報を受信したデリバリーサーバ1は、ステップS202において、先ず配達エリアを選択させるためのウェブページのデータをウェブページDB53から取得し、ユーザ端末3へ送信する処理を実行する。
この処理により、ユーザ端末3には、例えば
図6に示す配達エリア選択ページが表示される。
尚、先のステップS102の処理は、ボタンを押下したという操作情報を送信する処理である代わりに、
図6に示すウェブページのデータを要求する処理であってもよい。
【0049】
ウェブブラウザ5のウェブページ表示部9に表示された配達エリア選択ページは、「配達エリアを指定してください。」の文言と共に、配達エリアを選択するための配達エリア指定ボタン11,11,・・・が配置される。
ユーザは、配達エリア指定ボタン11,11,・・・の何れかを押下することにより、配達エリアを指定する。これに応じて、ユーザ端末3はステップS103において、配達エリア情報送信処理を実行する。この処理により、配達エリア情報がデリバリーサーバ1へ通知される。
尚、
図6に示す状態から配達エリア情報を送信するまでに、ユーザ端末3とデリバリーサーバ1の間で情報の送受信が数回行われる可能性がある。例えば、都道府県を選択した後、市町村一覧がユーザ端末3上に表示され、その中から一つの市町村を選択する場合などである。
【0050】
配達エリア情報を受信したデリバリーサーバ1は、ステップS203において、配達エリア情報に基づく店舗検索処理を実行する。
続いて、デリバリーサーバ1はステップS204において、当該検索結果をユーザ端末3に送信する処理を実行する。この処理では、検索結果の情報を含んだウェブページデータが送信される。
【0051】
検索結果ページのウェブページデータを受信したユーザ端末3では、検索結果ページが表示される。
検索結果ページの例を
図7に示す。
検索結果ページには、検索結果を更に絞り込むための条件設定欄12と、絞り込み実行ボタン13と、検索結果表示欄14とが縦に並んで表示されている。
検索結果表示欄14には、目安の配達時間情報などの店舗情報15が店舗ごとに提示されている。更に、店舗情報15ごとに同時に配達可能な他の店舗を検索する検索ボタン15aが配置されている。
同時に配達可能な店舗とは、ユーザが検索結果表示欄14に記載された各店舗のうちの一つを選択した場合に、選択した店舗(以降、指定店舗と記載)の配達を利用して料理を届けることが可能な店舗(配達利用店舗)である。即ち、検索ボタン15aを押下することによって抽出される各店舗は、指定店舗が配達する料理とまとめて配達可能な店舗である。
【0052】
図4の説明に戻る。
ユーザが
図7において、検索結果表示欄14に表示された検索結果としての店舗一覧の中から一つの店舗情報15に配置された検索ボタン15aを押下したとき、ユーザ端末3はステップS104において、当該選択された店舗情報15に係る店舗を指定店舗としてデリバリーサーバ1に通知すると共に、指定店舗の配達を利用して料理を配達可能な他の店舗の検索の要求(即ち配達利用店舗を検索する要求)を送信する処理を実行する。
【0053】
指定店舗の情報と配達利用店舗検索要求を受信したデリバリーサーバ1は、ステップS205において、指定店舗に基づく配達利用店舗を店舗DB51から検索する処理を実行する。この処理では、指定店舗と配達可能時間が被っている店舗の検索を行う。即ち、指定店舗の配達可能時間と少なくとも一部が被って設定されている店舗が、同時に配達することが可能である店舗として抽出される。
続いてデリバリーサーバ1は、検索結果として抽出された店舗を配達利用店舗として提示する処理をステップS206において実行する。
【0054】
配達利用店舗の情報を受信したユーザ端末3には、配達利用店舗の一覧が提示される。
ユーザがその中から一つの配達利用店舗を選択した場合、ユーザ端末3はステップS105において、選択された配達利用店舗の情報をデリバリーサーバ1へ通知する処理を実行する。
【0055】
配達利用店舗情報を受信したデリバリーサーバ1は、ステップS207において、配達利用店舗を店舗DB51から更に検索する処理を実行する。
ここで、具体例を挙げて説明する。例えば、指定店舗の配達可能時間が午前10時〜午後5時であった場合、ステップS205の配達利用店舗検索処理では、配達可能時間に同じ午前10時〜午後5時のいずれかの時間帯を含む(例えば、午後3時〜午後7時など)配達可能時間が設定されている店舗が検索される。
次に、午後3時〜午後7時の配達可能時間が設定されている配達利用店舗をユーザが選択した場合、ステップS207の配達利用店舗検索処理では、指定店舗と選択された配達利用店舗の配達可能時間の重複した時間帯(即ち午後3時〜午後5時)のいずれかの時間帯を含む配達可能時間帯が設定されている店舗が検索される。即ち、午前9時〜午後1時などの時間帯が配達可能時間として設定されている店舗は検索結果として抽出されない。
【0056】
このように、配達利用店舗を検索する処理と、その中からユーザが一つの店舗を選択する処理を実行するごとに、重複した配達可能時間の一部を含む店舗が検索される。
また、ステップS205やS207の配達利用店舗検索処理では、店舗DB51から検索条件を満たす店舗を検索してもよいが、既に検索された各店舗から条件に応じた絞り込みを行う処理で代用してもよい。即ち、ステップS205の配達利用店舗検索処理では、ステップS203で検索された店舗から、指定店舗と配達可能時間が重複する店舗を抽出してもよい。また、ステップS207の配達利用店舗検索処理では、ステップS205の配達利用店舗検索処理で検索された配達利用店舗から、条件を満たす店舗を抽出してもよい。
【0057】
配達利用店舗を検索したデリバリーサーバ1は、ステップS208で当該店舗をユーザ端末3に通知する処理を実行する。
【0058】
続いて、指定店舗とここまでに選択した配達利用店舗の料理メニューを選ぶためのページを要求する操作(例えば、「これまでに選択した店舗の料理メニューを見る」などのボタンを押下する操作)をユーザが行ったことに応じて、ユーザ端末3は、ステップS106におけるメニュー選択ページを要求する処理を実行する。
この処理により、メニュー選択ページ要求がデリバリーサーバ1へ送信される。
【0059】
メニュー選択ページ要求を受信したデリバリーサーバ1は、ウェブページDB53からメニュー選択ページに係るウェブページデータを取得し、ユーザ端末3へ送信する処理をステップS209において実行する。
この処理により、ユーザ端末3上にメニュー選択ページが表示される。
【0060】
メニュー選択ページの一例を
図8に示す。
メニュー選択ページは、カート(ショッピングカート)の中身を確認するためのカート確認ボタン16と、店舗毎のメニュー一覧17,17,・・・を備えて構成されている。それぞれの店舗ごとのメニュー一覧には、いくつかのメニューとそれをカートに入れるためのカート投入ボタン17aが配置されている。
ユーザは、気に入った料理メニューについてのカート投入ボタン17aを押下することにより、当該料理メニューをカートに投入する。
【0061】
図4の説明に戻る。
続いて、ユーザが
図8のカート確認ボタン16を押下してカート内の料理メニューを確認し、更に、カート内に入れられた料理メニューで注文を確定させる操作を行うと、ユーザ端末3はステップS107において、注文要求をデリバリーサーバ1へ送信する処理を実行する。注文要求は、ユーザが選択した注文メニュー情報や注文量情報が含まれている。
【0062】
注文要求を受信したデリバリーサーバ1は、ステップS210において、注文処理を実行する。注文処理は、各料理を調理する店舗へ実際の発注を行う処理や、注文したユーザの情報(届け先住所など)をユーザDB50から取得して店舗へ通知する処理であり、また、注文を受け付けたことを電子メールなどでユーザに通知する処理などを含んでいてもよい。
【0063】
尚、デリバリーサーバ1が会員情報を管理しており、デリバリーサーバ1が提供するサービスにユーザがログインしている状態において、
図4に示す一連の処理を実行する場合には、ユーザの居住地の情報がユーザDB50から取得可能であるため、ステップS103の処理は省略可能となる。但し、ログインしている状態であっても、居住地以外の場所(または、配達先候補として登録されていない場所)を配達先として選択する場合には、ステップS103の処理は必要となる。
【0064】
また、ユーザ端末3としてデリバリーサービスを利用するための専用アプリケーションがインストールされた携帯端末などを用いる場合には、アプリケーションの初期設定としてステップS101乃至S103の各処理を実行しておくことも可能である。この場合には、アプリケーションを立ち上げた際に、ユーザ端末3としての携帯端末が
図4のステップS104から実行するようにしてもよい。
【0065】
また、上記の例では、検索を行う前の段階で複数店舗からの配達をまとめて受け取ることをユーザが指定した例(即ち、検索の実行の前にまとめてデリバリーボタンを押下する例)を説明したが、一つの店舗を選択し、注文する料理メニューを選択した後に、更に他の店舗を配達利用店舗として検索する操作を行ってもよい。即ち、一つの店舗の注文メニューでは満足できなかった場合に、改めて追加の配達利用店舗を検索する操作を行ってもよい。
【0066】
ユーザが許容する配達時間に幅がある場合、即ち、配達時間にある程度融通が利く場合には、配達時間を指定せずに店舗選びを行う可能性がある。このような場合において、第1の実施の形態は好適である。即ち、先ず指定店舗と配達利用店舗を選択していき、双方の配達可能時間から、最終的に配達時間を決める場合などである。
【0067】
[4−2.デリバリーサーバの処理]
図4に示した処理の流れを実現するために、デリバリーサーバ1が実行する処理例を
図9に示す。
デリバリーサーバ1は、ステップS301,S311,S321,S331を順に実行することにより、各種処理を継続的に行う。具体的には、ステップS301においてログイン情報を受信したか否かを判定する処理を実行し、ステップS311においてウェブページデータの要求を受信したか否かを判定する処理を実行し、ステップS321において検索要求を受信したか否かを判定する処理を実行し、ステップS331において注文要求を受信したか否かを判定する処理を実行する。
【0068】
ログイン情報は、ユーザがユーザ端末3を用いてログイン操作を行った場合に、ユーザ端末3からデリバリーサーバ1へ送信される。
ステップS301において、ログイン情報を受信したと判定した場合、デリバリーサーバ1はステップS302において認証処理を実行し、ステップS303において認証結果をユーザ端末3に通知する処理を実行する。
認証処理においては、ユーザ端末3から送られたログイン情報とユーザDB50に記憶されたユーザ情報(例えば、ユーザIDとログインパスワード)を照合し、ログインの可否を決定する。
【0069】
ステップS303の認証結果通知を実行した後、或いは、ステップS301においてログイン情報を受信していないと判定した後、デリバリーサーバ1はステップS311のウェブページデータ要求を受信したか否かを判定する処理を実行する。
ウェブページデータ要求は、ユーザがユーザ端末3を用いて、デリバリーサーバ1が提供するウェブページを閲覧するための操作を行った場合に、ユーザ端末3からデリバリーサーバ1へ送信される。
ステップS311において、ウェブページデータ要求を受信したと判定した場合、デリバリーサーバ1は、続くステップS312において、ウェブページデータを生成する処理を実行する。ウェブページデータは、例えば、
図5や
図6などに示すウェブページをユーザ端末3の画面上に表示するためのデータであり、具体的には、HTMLやXHTMLなどの構造化文書ファイルのデータなどである。
尚、予め生成しておいたウェブページデータをウェブページDB53に記憶した状態である場合には、ステップS312のウェブページデータ生成処理の代わりにウェブページデータ取得処理を実行してもよい。
【0070】
続いて、デリバリーサーバ1はステップS313において、ウェブページデータを送信する処理を実行する。ウェブページデータを送信する処理により、各種ウェブページデータがユーザ端末3へ送信され、画面上に
図5などに示すウェブページが表示される。
【0071】
ステップS313のウェブページデータ送信処理を実行した後、或いは、ステップS311においてウェブページデータ要求を受信していないと判定した後、デリバリーサーバ1はステップS321において、検索要求を受信したか否かを判定する処理を実行する。尚、検索要求には、ユーザが指定した検索条件が含まれている。
【0072】
ステップS321において、検索要求を受信したと判定した場合、デリバリーサーバ1は、続くステップS322において、検索処理を実行する。検索処理では、ユーザが指定した検索条件に基づいて店舗や料理メニューの検索を行う。具体的には、
図4に示したステップS203やS205やS207の処理がステップS322の検索処理に該当する。
続いて、デリバリーサーバ1はステップS323において、検索結果の提示処理を実行する。提示処理では、検索結果として抽出した店舗や料理メニューなどをユーザ端末3へ送信する。提示処理としては、
図4のステップS204,S206,S208の各処理が該当する。
【0073】
ステップS323の提示処理を実行した後、或いは、ステップS321において検索要求を受信していないと判定した後、デリバリーサーバ1はステップS331において、注文要求を受信したか否かを判定する。
ステップS331において注文要求を受信したと判定した場合、デリバリーサーバ1は続くステップS332において、ユーザ端末3から受信した注文要求に基づく注文処理を実行する。
【0074】
ステップS332の注文処理を実行した後、或いは、ステップS331において注文要求を受信していないと判定した後、デリバリーサーバ1はステップS301の処理を再び実行する。
【0075】
[4−3.第2の実施の形態]
第2の実施の形態の処理の流れについて、
図10を参照して説明する。
第2の実施の形態では、ユーザが配達時間を指定した後に店舗検索を行う例について説明する。尚、
図4に示した第1の実施の形態と同様の処理については、同一の符号を付し、適宜説明を省略する。
【0076】
先ず、ユーザ端末3はステップS101において、デリバリーサーバ1に対して注文仲介サイトのウェブページを要求する処理を実行し、注文仲介サイトのウェブページ要求を受信したデリバリーサーバ1は、ステップS201において、注文仲介サイトのウェブページデータをウェブページDB53から取得して要求のあったユーザ端末3へ送信する処理を実行する。これにより、ユーザ端末3上に注文仲介サイトのウェブページ(例えば
図5)が表示される。
【0077】
続いて、ユーザ端末3はステップS102において、複数店舗の料理メニューをまとめて配達するための操作が行われたことをデリバリーサーバ1へ通知する処理を実行する。
これに応じて、デリバリーサーバ1はステップS202において、配達エリアや配達時間を選択させるためのウェブページのデータをウェブページDB53から取得し、ユーザ端末3へ送信する処理を実行する。
配達エリアや配達時間を選択させるためのウェブページの例を、
図11に示す。
図11に示すウェブページには、
図6に示す配達エリア指定ボタン11,11,・・・と共に、配達時間入力欄18が設けられている。
ユーザが配達時間入力欄18に配達時間の情報を入力すると、ユーザ端末3はステップS108の配達時間取得処理を実行する。
続いて、ユーザが配達エリアを指定する操作を行うと、ユーザ端末3はステップS103の配達エリア情報送信処理を実行する。この処理では、配達エリア情報と共に、配達時間の情報もデリバリーサーバ1へ通知される。
【0078】
配達エリア情報と配達時間情報を受信したデリバリーサーバ1は、ステップS203において、店舗検索処理を実行する。この処理では、配達時間に配達エリアを対象とした配達が可能な店舗が検索される。
尚、各店舗から配達先までの移動時間を取得する(即ち移動時間取得処理を実行する)ことにより、配達時間に配達が可能な店舗を正確に検索してもよいが、ここでは、配達エリア内のどこであっても所定の時間内(例えば10分)に移動可能であるとみなし、移動時間として所定の時間を見込んだ検索を行う。
続いて、デリバリーサーバ1はステップS204において、当該検索結果をユーザ端末3に送信する検索結果提示処理を実行する。
【0079】
提示された店舗から一つの店舗を選択する操作をユーザが行うと、ユーザ端末3はステップS104の指定店舗通知処理を実行する。
【0080】
指定店舗情報を受信したデリバリーサーバ1は、ステップS211において、指定店舗と検索対象である各店舗の移動時間(店舗間移動時間)などを取得する移動時間取得処理を実行する。この処理では、店舗間移動時間以外に、指定店舗と配達先の間の移動時間(第1移動時間)と、検索対象の各店舗と配達先の間の移動時間(第2移動時間)が取得される。
続いて、デリバリーサーバ1はステップS205において、配達利用店舗検索処理を実行する。この処理では、指定店舗からの配達を利用して料理メニューの配達が可能な店舗を検索する。
ここで、ステップS205において配達利用店舗として抽出されない店舗の例を説明する。尚、ステップS203の店舗検索処理では、移動時間を固定の所定時間(例えば10分)として検索する例を説明したが、ステップS205の配達利用店舗検索処理では、各移動時間を取得し、配達時間に一括で配達が可能な店舗を正確に検索する。これは、配達エリアの端から端まで移動する場合など、固定の所定時間では移動できない場合が考えられるからである。
【0081】
指定店舗Aとその他の店舗Bについて
図12に示す。
図12Aに示すように、指定店舗Aでは、ユーザが指定した配達時間よりも30分前に配達可能時間が開始される。そして、指定店舗Aから配達先への移動時間は30分である。即ち、ユーザが指定した配達時間に間に合うように、指定店舗Aから配達先へ料理を届ける場合には、配達可能時間が開始された直後に指定店舗Aを出発しなければならない。勿論、料理が調理時間を要するものであれば、それまでに調理を済ませておく必要がある。
また、指定店舗Aと配達可能時間が同じ店舗Bについては、配達先への移動時間が20分である。
【0082】
更に、
図12Bに示すように、指定店舗Aから店舗Bまでの移動時間は20分となっている。そこで、指定店舗Aから店舗Bを経由して店舗Bの料理を受け取り、配達先へ配達する場合、指定店舗Aの配達可能時間が開始された直後に店舗Aを出発しても、配達時間に間に合わないこととなる。
このような店舗Bは、
図10のステップS205において配達利用店舗として抽出されない。
【0083】
尚、店舗Bの配達可能時間が配達時間の50分以上前に開始される場合には、店舗Bを出発し指定店舗Aを経由して配達先へ料理を配達することが可能となる。即ち、店舗Bを配達時間の50分前に出発し、指定店舗Aで料理を受け取り(配達時間の30分前)、配達時間ちょうどに配達先へ配達することが可能である。
【0084】
図10の説明に戻る。
デリバリーサーバ1は、配達利用店舗の検索を行った後、ステップS206において当該配達利用店舗をユーザ端末3へ提示する処理を実行する。
【0085】
続いて、ユーザ端末3は、受信した配達利用店舗情報のうちの一つの店舗を選択したユーザの操作に応じ、ステップS105において、配達利用店舗選択通知処理を実行する。
【0086】
選択された配達利用店舗情報を受信したデリバリーサーバ1は、ステップS212の移動時間取得処理を実行した後、ステップS207において、配達利用店舗検索処理を実行する。
ステップS212の移動時間取得処理は、ステップS211の移動時間取得処理と同様の処理である。
また、ステップS211やS212の配達利用店舗検索処理では、指定店舗と選択された配達利用店舗の両店舗を経由した配達を利用可能な店舗が抽出される。このとき、配達可能時間の一部が重複していても抽出されない店舗や、配達可能時間が全く重複していなくても抽出される店舗がある。詳しくは、配達利用店舗検索処理の例で後述する。
【0087】
この後デリバリーサーバ1が実行するステップS208乃至S210の各処理と、ユーザ端末3が実行するステップS106,S107の各処理については、第1の実施の形態と同様であるため、説明を省略する。
【0088】
[4−4.配達利用店舗検索処理の第1例]
配達利用店舗検索処理の第1例について、
図13を参照して説明する。
配達利用店舗検索処理の第1例では、指定店舗Aと他の店舗Bの配達可能時間の一部が重複しており、かつ、重複した時間の中で配達時間が設定されている場合の例を説明する。
例えば、
図13Aに示すように、指定店舗Aから配達先までの移動時間(第1移動時間)は30分とされ、店舗Bから配達先までの移動時間(第2移動時間)は20分とされる。また、店舗間移動時間は20分とされる。
また、それぞれの店舗から配達先へ配達する場合には、配達可能時間内に店を出発し配達先へ到着することが可能である。
【0089】
このような状況において、指定店舗A,店舗Bの各料理メニューを配達先へ届けるためには、例えば
図13Bのように配達すればよい。具体的には、指定店舗Aから店舗Bを経由して店舗Bの料理を受け取り、配達先へ配達する。
このような店舗Bは、
図10のステップS205において配達利用店舗として抽出される。
【0090】
[4−5.配達利用店舗検索処理の第2例]
配達利用店舗検索処理の第2例について、
図14を参照して説明する。
配達利用店舗検索処理の第2例では、指定店舗Aと他の店舗Bの配達可能時間が全く重複していない場合の例を説明する。
図14Aに示すように、指定店舗Aから配達先までの移動時間(第1移動時間)は30分とされ、店舗Bから配達先までの移動時間(第2移動時間)は20分とされる。また、店舗間移動時間は20分とされる。
そして、指定店舗Aの配達可能時間は、ユーザが指定した配達時間の30分前に終了される。即ち、指定店舗Aが配達時間に料理メニューを届けるためには、配達可能時間が終了する間際に配達開始する必要がある。
また、店舗Bの配達可能時間は、配達時間の20分前から開始される。即ち、店舗Bが配達時間に料理メニューを届けるためには、配達可能時間が開始された直後に配達開始する必要がある。
【0091】
このような状況において、指定店舗A,店舗Bの各料理メニューを配達先へ届けるためには、例えば14Bに示すように、指定店舗Aから店舗Bを経由して配達先へ配達することが可能である。
このように、店舗Bの配達可能時間が指定店舗の配達可能時間と全く重複していなくても、
図10のステップS205などの配達利用店舗検索処理において店舗Bは配達利用店舗として抽出される。
【0092】
[4−6.配達利用店舗検索処理の第3例]
配達利用店舗検索処理の第3例について、
図15を参照して説明する。
配達利用店舗検索処理の第3例では、指定店舗Aと他の店舗Bの配達可能時間が全く重複していない場合の別の例を説明する。
図15Aに示すように、指定店舗Aから配達先までの移動時間(第1移動時間)は20分とされ、店舗Bから配達先までの移動時間(第2移動時間)は30分とされる。また、店舗間移動時間は20分とされる。
そして、指定店舗Aの配達可能時間は、ユーザが指定した配達時間の20分前に開始される。即ち、指定店舗Aが配達時間に料理メニューを届けるためには、配達可能時間が開始されると共に配達を開始する必要がある。
また、店舗Bの配達可能時間は、配達時間の30分よりも前に終了される。詳しくは、配達時間の30分よりも前であって、かつ、50分よりも後に終了される。即ち、店舗Bが配達時間に料理メニューを届けるためには、配達可能時間が終了後しばらく経ってから配達開始する必要があるため、配達ができない。従って、例えば
図10のステップS203の店舗検索処理などにおいて、店舗Bは配達可能時間に配達が開始できないため、検索結果として抽出されない。
【0093】
このような状況において、店舗Aが指定店舗Aとして設定された場合、指定店舗Aと店舗Bの各料理メニューを配達先へ届けるためには、
図15Bに示すように、店舗Bから指定店舗Aを経由して配達先へ配達を行うことが可能である。この場合には、店舗Bを出発する時間は配達可能時間内とすることができる。
このような店舗Bは、
図10のステップS03の店舗検索処理では検索結果として抽出されないが、店舗Aを指定店舗とした配達利用店舗検索処理(
図10のステップS205など)では検索結果として抽出される。
【0094】
<5.変形例>
各種の変形例について説明する。
【0095】
[5−1.変形例1]
変形例1では、配達利用店舗検索処理において指定店舗と同一ジャンルの店舗を排除した検索処理を行う例について、
図16を参照して説明する。
尚、
図16の配達利用店舗検索処理のフローチャートは、
図10に示すステップS205(或いはS207)の配達利用店舗検索処理の内容を具体的に示したものである。本変形例の配達利用店舗検索処理では、直前に行うステップS211(或いはS212)の移動時間取得処理の処理内容も含めて実行される。
【0096】
変形例1における配達利用店舗検索処理では、デリバリーサーバ1は先ずステップS401において、検索対象とされた店舗の情報うちの一つを取得する店舗情報取得処理を実行する。この処理は、
図10のステップS211(或いはS212)の移動時間取得処理も兼ねている。
次に、デリバリーサーバ1はステップS402において、当該店舗が指定店舗と同一ジャンルであるか否かを判定する。同一ジャンルである場合は、検索結果として抽出しないため、後述するステップS405の処理に進む。
【0097】
一方、同一ジャンルでない店舗であった場合、デリバリーサーバ1はステップS403において、配達可能時間と各移動時間から当該店舗が配達利用店舗の検索結果として妥当か否かを判定する処理を実行する。具体的な例は、先の配達利用店舗検索処理の例で説明した通りである。尚、この処理では、それ以外の条件(例えば、配達先が配達エリアに含まれているかなど)が妥当であるかも含めて判定する。
配達利用店舗の検索結果として妥当でないと判定した場合、デリバリーサーバ1は後述するステップS405の処理へと進む。
一方、当該店舗が配達利用店舗の検索結果として妥当であると判定した場合、デリバリーサーバ1は当該店舗を検索結果として抽出すると共に、続くステップS405の処理を行う。
ステップS405の処理では、検索対象とされた店舗のうちで、ステップS401乃至ステップS404の各処理の実行対象となっていない店舗がまだあるかを判定する処理を実行する。
【0098】
ステップS401乃至ステップS404の各処理の実行対象となっていない店舗がまだあると判定した場合、デリバリーサーバ1は、ステップS401の処理を再び実行する。
一方、そのような店舗が無いと判定した場合、即ち、全ての検索対象に対してステップS401乃至ステップS404の各処理を実行したと判定した場合、デリバリーサーバ1は
図16に示す一連の処理を終了する。
【0099】
[5−2.変形例2]
変形例2では、現在の時刻(即ち、ユーザが検索を行うための操作を行った瞬間)が注文可能時間である店舗のみを検索結果として抽出する例について、
図17を参照して説明する。
【0100】
先ず、デリバリーサーバ1はステップS501において、検索対象とされた店舗の情報うちの一つを取得する店舗情報取得処理を実行する。この処理は、変形例1と同様に、
図10のステップS211(或いはS212)の移動時間取得処理も兼ねている。
続いてデリバリーサーバ1は、ステップS502において、現在、当該店舗が注文可能な店舗であるか否かを判定する。尚、第2の実施の形態のように、配達時間が指定されている場合には、配達時間に配達するための注文を現在受け付けているかどうかを判定する。例えば、2週間後の配達時間に対して、直近1週間の配達に関する注文のみ受け付け可能な店舗は、この判定処理で排除される。また、現在の配達は不可能であるが、2週間後の配達時間に配達するための注文を受け付けている店舗は、この処理において排除されることはない。
【0101】
現在注文可能でないと判定した場合、デリバリーサーバ1は後述するステップS505の処理へと進む。
一方、現在注文可能と判定した場合、デリバリーサーバ1はステップS503において、当該店舗が検索結果として妥当であるか否かを判定する。
検索結果として妥当でないと判定した場合、デリバリーサーバ1は後述するステップS505の処理へと進む。
一方、検索処理として妥当であると判定した場合、デリバリーサーバ1はステップS504において、検索結果として抽出する処理を実行する。
【0102】
続いて、デリバリーサーバ1はステップS505において、検索対象とされた店舗のうちで、ステップS501乃至ステップS504の各処理の実行対象となっていない店舗がまだあるかを判定する処理を実行する。
【0103】
ステップS501乃至ステップS504の各処理の実行対象となっていない店舗がまだあると判定した場合、デリバリーサーバ1は、ステップS501の処理を再び実行する。
一方、そのような店舗が無いと判定した場合、即ち、全ての検索対象に対してステップS501乃至ステップS504の各処理を実行したと判定した場合、デリバリーサーバ1は
図17に示す一連の処理を終了する。
【0104】
<6.まとめ>
これまで説明してきたように、商品としての料理の配達先の情報を取得する配達先取得部1aと、ユーザによって指定された店舗を指定店舗として受け付ける指定店舗受付部1bと、指定店舗の配達可能時間における指定店舗からの配達を利用して商品を届けることが可能な店舗を配達利用店舗として検索して提示する店舗検索部1cと、指定店舗と配達利用店舗から選択された複数の店舗に対する注文を受け付ける注文受付部1dと、を備える。
これにより、複数の店舗に対して料理の注文を検討している場合などに、同時に配達可能な店舗が検索されて提示される。
従って、店舗ごとの配達時間を気にすることなく注文を行うことができる利便性の高いサービスを提供することができる。また、配達される料理の受け取りが一度で済むため、ユーザの時間を無駄にせずに済む。
また、ユーザの利用するユーザ端末における限られた(例えば、モニタなどの)提示領域において、ユーザの意図に沿った情報(一度に配達可能な店舗情報)を効率よく提示することにより、ユーザ端末3の資源を有効活用することができる。
【0105】
また、第2の実施の形態で説明したように、指定店舗の配達可能時間の中から配達時間の指定を受け付ける指定時間受付部1eを備え、店舗検索部1cは、配達利用店舗のうちで配達時間に配達先への配達が可能な店舗を抽出して提示を行う。
これにより、ユーザが指定した配達時間に同時に配達可能な店舗が抽出されて提示される。
従って、ユーザに利便性の高いサービスを提供することができる。
【0106】
更に、第1の実施の形態で説明したように、店舗検索部1cは、複数店舗を対象とした配達サービスの要求を受信した際に配達利用店舗の検索を行う。
これにより、複数店舗の料理メニューを一度に受け取りたいという要望がない場合においては、不必要に検索結果が絞られて提示されることがない。即ち、配達利用店舗ではない店舗も検索結果として提示される。
従って、不用意に店舗検索の結果から店舗が排除されてしまうことを防止することができる。
【0107】
更にまた、配達利用店舗検索処理の第1例で説明したように、指定店舗から他の店舗までの店舗間移動時間を取得する移動時間取得部1fを備え、店舗検索部1cは、店舗間移動時間と両店舗の配達可能時間の情報を用いて、他の店舗のうちから配達利用店舗を抽出して提示を行う
これにより、店舗それぞれの配達可能時間が被っていなくても移動時間を考慮すれば同時配達が可能な店舗についても配達利用店舗としてユーザに提示される。
従って、ユーザに利便性の高いサービスを提供することができる。
【0108】
そして、第1の実施の形態で説明したように、ユーザが指定店舗に加えて配達利用店舗を選択した場合に、店舗検索部1cは、指定店舗と選択された配達利用店舗を経由する配達を利用して商品を届けることが可能な店舗を、検索された配達利用店舗の中から抽出して提示を行う。
これにより、ユーザが配達利用店舗を選択するごとに一度に配達可能な店舗が抽出されて提示される。
従って、ユーザは配達時間を考慮することなく注文を行うことが容易となる。
【0109】
また、変形例1で説明したように、店舗検索部1cは、指定店舗と同一ジャンルの店舗を排除して提示を行う。
これにより、複数のジャンルから一店舗ずつ選択して注文をするユーザにとって不要な店舗が検索結果から排除されて提示される。
従って、ユーザの利便性が図られる。
【0110】
更に、変形例2で説明したように、店舗検索部1cは、現時刻が注文可能時間外に該当する店舗を排除して提示を行う。
これにより、ユーザが操作している時点において注文可能な店舗のみが検索結果として提示される。
従って、提示された店舗に対する注文操作を後で行う必要がなく、検索結果に基づいて速やかに注文時間(営業時間)内の注文を行うことができる。そのため、利便性の高いサービスを提供することができる。
【0111】
尚、配達業者が複数店舗を回って料理を受け取り配達先へ配達する場合には、各店舗の配達可能時間に料理を受け取り、配達時間に届けられるように保管する方法も考えられる。しかしながら、料理が冷めてしまうことや衛生上の問題から、料理をむやみに保管することは推奨されない方法である。
このような場合においても、上記に示した各処理によって指定店舗と配達利用店舗を検索すれば、料理を保管しておく必要がない店舗が検索結果として抽出され、速やかに配達することが可能である。
【0112】
尚、上記では、ユーザ端末3がウェブブラウザ5を介して注文仲介サイトへアクセスし、ウェブページ上で各種操作を行う例を説明した。この場合には、ウェブページ上で行われるユーザ操作に応じてデリバリーサーバ1が備える各部(配達先取得部1a、指定店舗受付部1b、店舗検索部1c、注文受付部1d、指定時間受付部1e、移動時間取得部1f)の何れかが対応した処理を実行する。
【0113】
これに対して、ユーザ端末3が注文仲介サイトを介してデリバリーサービスを利用するための専用のアプリケーションがインストールされた携帯端末などである場合も考えられる。
この場合には、上述したように情報処理装置は複数のコンピュータ装置がシステム化されて構成されてもよいことから、デリバリーサーバ1とユーザ端末3を有した情報処理装置が各部(配達先取得部1a、指定店舗受付部1b、店舗検索部1c、注文受付部1d、指定時間受付部1e、移動時間取得部1f)を備えていると捉えることも可能である。
即ち、上記の各部は、デリバリーサーバ1とユーザ端末3の何れに備えられていてもよいと考えられる。
例えば、ユーザが入力した文字列を取得する配達先取得部1aはユーザ端末3が備え、ユーザ端末3から送信される配達先情報を受信する配達先取得部1aはデリバリーサーバ1が備えてもよい。他の部に関しても、ユーザ端末3の一部と捉えてもよいし、デリバリーサーバ1の一部として捉えてもよい。
【0114】
<7.プログラム>
以上、本発明の情報処理装置の実施の形態としてのデリバリーサーバ1を説明してきたが、実施の形態のプログラムは、デリバリーサーバ1における各処理を情報処理装置(CPU等)に実行させるプログラムである。
【0115】
このプログラムは、商品の配達先の情報を取得する配達先取得手順を演算処理装置に実行させる。
また、ユーザによって指定された店舗を指定店舗として受け付ける指定店舗受付手順を演算処理装置に実行させる。
更に、指定店舗の配達可能時間における指定店舗からの配達を利用して商品を届けることが可能な店舗を配達利用店舗として検索して提示する店舗検索手順を演算処理装置に実行させる。
更にまた、指定店舗と配達利用店舗から選択された複数の店舗に対する注文を受け付ける注文受付手順を演算処理装置に実行させる。
即ちこのプログラムは、演算処理装置に対して、
図4のステップS201乃至S210の各処理、
図9で説明した各処理、
図10のステップS201乃至S212の各処理、
図16,
図17で説明した各処理を実行させるプログラムである。
【0116】
このようなプログラムにより、上述したデリバリーサーバ1としての情報処理装置を実現できる。
そしてこのようなプログラムはコンピュータ装置などの機器に内蔵されている記憶媒体としてのHDDや、CPUを有するマイクロコンピュータ内のROMなどに予め記憶しておくことができる。或いはまた、半導体メモリ、メモリカード、光ディスク、光磁気ディスク、磁気ディスクなどのリムーバブル記憶媒体に、一時的或いは永続的に格納(記憶)しておくことができる。またこのようなリムーバブル記憶媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、このようなプログラムは、リムーバブル記憶媒体からパーソナルコンピュータなどにインストールする他、ダウンロードサイトから、LAN、インターネットなどのネットワークを介してダウンロードすることもできる。