以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における情報処理装置1のブロック図である。情報処理装置1は、利用情報格納部11、利用情報受付部12、プロモーション情報格納部13、プロモーション情報取得部14、連絡先情報格納部15、送信部16を備える。
利用情報格納部11には、1以上のユーザによる飲食店の利用に関する情報である利用情報が格納される。ユーザとは、飲食店の顧客である。ここでのユーザは、個人であってもグループであっても良い。飲食店とは、例えば、レストランや、喫茶店、居酒屋等の、飲食物を提供する店舗等である。いわゆる電話やインターネット等を介して受け付けた注文に応じて料理を宅配する店舗や、テイクアウトの料理等を提供する店舗も飲食店と考えても良い。
利用情報とは、例えば、飲食店に来店した時刻や、飲食店を退店した時刻や、飲食店に来店した時間帯を示す情報を含む情報である。ここでの時刻や時間帯を示す情報は、日付や曜日等を含む情報であっても良い。来店した時間帯を示す情報は、ここでは、来店時間帯と呼ぶ。例えば、時間帯の開始時刻と終了時刻とを含む情報や、時間帯の開始時刻と時間帯の継続時間とを示す情報とを含む情報を、来店時間帯の情報と考えても良い。ただし、来店時間帯として、来店した時間帯を代表する時刻等を用いても良く、例えば、時間帯の開始時刻や中間の時刻等を来店時間帯としてもよい。
また、利用情報は、飲食店に来店した際にユーザが利用した、あるいは現在利用している座席、テーブル(卓)、エリアの少なくとも一つを示す情報(例えば、座席識別情報や、テーブル識別情報、個室の識別情報、フロアの識別情報)等を有していてもよい。ここでは、このような飲食店内におけるユーザが利用する箇所を示す情報を、利用箇所情報と呼ぶ。
また、利用情報は、ユーザが注文した飲食物を示す情報である注文履歴情報を含んでも良い。注文履歴情報は、ユーザが注文した飲食物を識別する情報である飲食物識別情報を少なくとも含む情報である。飲食物識別情報は、例えば、飲食物名や、飲食物の略称、飲食物の商品コード等である。注文履歴情報は、飲食物識別情報に加えて、更に、注文した数量の情報や、飲食物の料金や、注文した時刻等の情報を有していても良い。また、注文履歴情報は、飲食物識別情報の代わりに、あるいは飲食物識別情報に加えて、飲食物の分類(例えば、前菜、主菜、飲料等)を示す情報等を有していてもよい。
また、利用情報は、ユーザが来店した際の、ユーザを含むグループの来店人数を有していても良い。来店人数は、利用人数と考えても良い。
また、利用情報は、ユーザが飲食店を利用した際の利用金額を有していても良い。
また、利用情報は、ユーザが飲食店を利用した際の環境の情報を有していても良い。環境の情報とは、例えば、天候の情報や、気温、湿度等の情報である。天候の情報とは、例えば、ユーザの来店時の天気の状態を示す識別情報である。天気の状態を示す識別情報は、例えば、晴れ、雨、くもり、等の状態を示す文字列や、天気の状態に割り当てられたコード等である。また、気温や湿度は、測定値であっても良いし、熱い、寒い、湿度が高い、乾燥している、等の気温や湿度を表す感覚的な文字列であっても良い。
また、利用情報は、ユーザが飲食店を利用した用途の情報を有していても良い。用途の情報とは、例えば、新年会、忘年会、誕生会、歓迎会、送別会等を示す情報である。
また、利用情報は、ユーザによる現在の飲食店の利用状況を示す情報である現在状況情報を含んでいてもよい。現在状況情報は、例えば、ユーザが現在来店中であることを示す情報や、現在来店中でないことを示す情報を有していても良い。また、現在状況情報は、現在飲食店に来店中のユーザの来店時刻を含んでも良い。また、現在来店中のユーザを含むグループの利用人数の情報を有していても良い。また、例えば、上述した利用情報のうちの、現在来店中のユーザについて、今回の来店の際に取得した情報を現在状況情報と考えても良い。例えば、現在状況情報は、現在の天候を示す情報や、現在ユーザが利用している利用箇所を示す利用箇所情報であっても良い。なお、例えば、ユーザが退店したことを示す情報(例えば、退店時刻等)が含まれていない状態の利用情報またはその一部を、利用情報に含まれる現在状況情報と考えても良い。
利用情報は、通常は、一の飲食店の店舗についての利用に関する情報であるが、例えば、チェーン店や、姉妹店等の複数の店舗の利用に関する情報であってもよい。
利用情報格納部11には、例えば、一の飲食店を利用したユーザの識別情報であるユーザ識別情報と、当該ユーザによるこの一の飲食店の利用に関する利用情報とが対応付けて格納される。例えば、ユーザ識別情報と利用情報とを有する利用管理情報が、利用情報格納部11に蓄積される。ユーザ識別情報は、例えば、ユーザの氏名や、ユーザに割り当てられたコードや、会員番号、ユーザのメールアドレスや、電話番号、アカウント等である。また、利用情報格納部11には、利用情報が、この利用情報に対応する飲食店の識別情報と対応付けて格納されても良い。飲食店の識別情報は、飲食店名や、飲食店を示すコード等である。また、飲食店の電話番号やメールアドレス等であっても良い。
利用情報は、通常、ユーザによる飲食店の一回の利用毎に1つ作成される情報である。ただし、一回の利用とは、例えば、一回の来店や出前の注文等である。一回の利用毎に、複数の利用情報が作成されても良い。
利用情報格納部11は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。なお、かかることは以下の格納部についても同様である。
利用情報受付部12は、利用情報を受け付ける。そして、受け付けた利用情報を利用情報格納部11に蓄積する。利用情報受付部12は、例えば、飲食店の店員や管理者、あるいはユーザ自身等が図示しない入力デバイスや図示しない入力端末等を入力した利用情報を受け付ける。例えば、利用情報受付部12は、店員や管理者が入力する座席やテーブル等の識別情報である利用箇所情報を受け付ける。また、例えば、ユーザが飲食物の注文を行う端末(図示せず)等に入力した飲食物識別情報を、利用情報受付部12が注文履歴情報として受け付ける。
また、利用情報受付部12は、情報処理装置1が有する図示しない他の処理部等が取得した利用情報またはその一部を受け付けても良い。例えば、利用情報受付部12が、ユーザが利用するテーブルの識別情報を受け付けた場合に、情報処理装置1が有する図示しない時計等が送信する取得する現在の時刻の情報を、入店時刻情報として受け付けても良い。また、例えば、ネットワーク等を介して図示しない他の装置等から送信される利用情報またはその一部を受信してもよく、このような受信もここでは受け付けと考えてよい。例えば、利用情報受付部12が、入店時刻情報を受け付けた場合に、図示しないネットワーク等を介して、図示しない天候の情報を提供する図示しないWEBサーバ装置等に、現在の飲食店の天候の情報の送信を要求するクエリ等の情報を送信し、この情報の送信に応じてWEBサーバ装置等から送信された天候の情報を受信してもよい。
利用情報受付部12は、利用情報を一度に受け付けて、利用情報格納部11に蓄積する必要はなく、例えば、利用情報の一部を受け付けるごとに、順次利用情報格納部11に蓄積していくようにして良い。ここでの蓄積は、例えば、追記である。
また、利用情報受付部12は、利用情報とユーザ識別情報とを受け付け、受け付けた利用情報とユーザ識別情報とを対応付けて利用情報格納部11に蓄積するようにしてもよい。例えば、受け付けた利用情報とユーザ識別情報とを有する利用管理情報を、利用情報格納部11に蓄積する。
ここでの、受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。
入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。利用情報受付部12は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
プロモーション情報格納部13には、1または2以上のプロモーション情報が格納される。プロモーション情報格納部13には、例えば、1または2以上のプロモーション管理情報が格納される。プロモーション管理情報は、1または2以上の条件情報と、1または2以上のプロモーション情報と、を有する情報である。
プロモーション情報とは、ユーザに対して飲食店の利用や、飲食店への来店を促進するための情報である。プロモーション情報は、例えば、割引情報である。割引情報とは、飲食店で提供される飲食物の料金の割引に関する情報である。例えば、割引情報は、特定の飲食物の割引料金や割引率、値引きする金額を示す情報であってもよいし、ユーザが飲食した飲食物の料金に対する割引率や値引きする金額を示す情報でも良い。割引情報は、利用可能な時間帯を指定する情報を有していても良い。ここでの時間帯を指定する情報は、例えば、日付や曜日等を指定する情報も含む概念である。また、割引情報は、いわゆるクーポンやクーポンコード等も含む概念である。
また、プロモーション情報は、例えば、特典情報であっても良い。特典情報とは、ユーザに提供される特典を示す情報である。提供される特典とは、物品であってもサービスであっても良い。提供される特典とは、例えば、無料の飲食物や、おまけである。また、提供される特典は、金券等であっても良い。
プロモーション情報は、例えば、テキスト情報、画像情報、また、これらの情報の組合せで構成される。ただし、プロモーション情報のデータ構造等は問わない。
一のプロモーション管理情報に条件情報と対応付けて格納されているプロモーション情報は、例えば、条件情報を満たす場合に、ユーザに対して送信することが好ましいプロモーション情報である。
条件情報は、利用情報に関する条件を示す情報である。条件情報は、例えば、利用情報を構成する1または2以上の情報のそれぞれに対する1または2以上の条件を1または2以上含んでいても良い。条件情報は、例えば、上述した利用情報に含まれる1以上の情報と一致する情報を指定する情報や、利用情報に含まれる情報の閾値や値の範囲等を設定する情報等である。また、これらの情報の1以上の組合せでもよい。また、条件情報には、利用情報に含まれる情報に対して、予め指定された統計処理や演算処理等を行って得られた値についての条件を含んでいても良い。予め指定された統計処理とは、例えば、合計を算出する処理や、比率を算出する処理等である。
条件情報は、例えば、飲食店の営業時間内における予め指定された時間帯におけるユーザの利用数の総計や、上記の1以上の利用情報の数に対する比率等が、予め指定された値以下であるという条件を示すものである。この利用数の総計や比率等は、例えば、利用情報格納部11に格納されている1以上の利用情報が示す来店時間帯を用いて算出される。この条件情報と対応付けられたプロモーション情報は、例えば、上記の予め指定された時間帯においてのみ有効なプロモーション情報であることが好ましい。
また、条件情報は、利用情報格納部11に格納されている1以上の利用情報を、利用情報に含まれる天候の情報毎に集計した場合の最も集計数の少ない天候の情報が、予め指定されたWEBサイト等から取得される現在の天候あるいは現在以降に予測される天候と一致するという条件を示すものであってもよい。ここでの天候の情報とは、例えば天気の状態を示す識別情報である。
また、例えば、プロモーション情報格納部13には、一のユーザ識別情報と対応付けられた一または二以上の利用情報に関する条件を含む条件情報が格納されていても良い。このような条件情報には、ユーザ識別情報ごとの利用情報に関する条件を示す条件情報であることを示す情報が付与されていても良い。このように付与される情報は、例えばフラグ等の情報である。あるいは、このような条件情報については、条件情報の中に、一のユーザ識別情報と対応付けられた利用情報に関する条件であることを示す情報(例えば、文字列等)が含まれているようにしても良い。
一のユーザ識別情報と対応付けられた条件情報とは、例えば、一のユーザ識別情報と対応付けられた一または二以上の利用情報の中に、予め指定された時間帯の時刻を含む来店時間帯を含む利用情報が、予め指定された数以上あるいは比率以上含まれるという条件を示す条件情報である。この場合、予め指定された時間帯を、飲食店への来客が少ない時間帯とすることで、この時間帯に以前に来たことのあるユーザの来客を促すことができる。この場合、更に、条件情報と対応付けられたプロモーション情報を、この予め指定された時間帯にのみ有効な(利用可能な)プロモーション情報とすることで、より、集客効果を高めることが期待できる。
また、一のユーザ識別情報と対応付けられた条件情報とは、例えば、一のユーザ識別情報と対応付けられた一または二以上の利用情報の中に、飲食店内のテーブルのうちの現在空いているテーブルの利用可能人数と一致する人数に対応した利用人数の情報を有する利用情報が、予め指定された数(例えば1以上)以上、あるいは予め指定された比率以上含まれる、という条件を示す条件情報である。この場合、予め指定された時間帯を、飲食店への来客が少ない時間帯とすることで、この時間帯に以前に来たことのあるユーザの来客を促すことができる。この場合、更に、条件情報と対応付けられたプロモーション情報を、この予め指定された時間帯にのみ有効な(利用可能な)プロモーション情報とすることで、より、集客効果を高めることが期待できる。
また、条件情報は、例えば、利用情報に含まれる現在状況情報に関する条件を含む条件情報でもよい。現在状況情報に関する条件とは、例えば、一の利用情報に含まれる現在状況情報の中に、現在来店中であることを示す情報が含まれない、という条件である。
また、現在状況情報に関する条件とは、例えば、飲食店の総座席数や総テーブル数、あるいは収容人数等に対する、現在状況情報を含む利用情報の総数の比率が、時間帯ごとにそれぞれ予め指定された値のうちの、現在の時刻を含む時間帯に対応する値以下であるという条件である。なお、現在状況情報を含む利用情報の総数の比率の代わりに、現在状況情報を含む利用情報に含まれる現在来店している人数の総数を用いても良い。
また、現在状況情報に関する条件とは、例えば、一のユーザ識別情報と対応付けられた利用情報に含まれる現在状況情報が示す現在の天候の情報(例えば、天気の状態を示す識別情報)の中に、予め指定された天候の情報(例えば、天気の状態を示す識別情報)と一致する(あるいは一致しない)天候の情報が予め指定された数あるいは比率以上含まれているという条件であっても良い。この条件情報と対応付けられたプロモーション情報は、例えば、上記の予め指定された数あるいは比率以上含まれる天候の情報が示す天候の際に来店した場合においてのみ有効なプロモーション情報であることが好ましい。
プロモーション情報格納部13には、例えば、利用情報に含まれる注文履歴情報に関する条件を含む条件情報が格納されていてもよい。注文履歴情報に関する条件とは、例えば、一のユーザ識別情報と対応付けられた利用情報に含まれる注文履歴情報の中に、予め指定された注文情報が予め指定された数以上(例えば、1以上等)含まれるという条件である。
また、注文履歴情報に関する条件とは、例えば、一のユーザ識別情報と対応付けられた利用情報に含まれる注文履歴情報の中に含まれる数または比率が最も多い飲食物の識別情報が、予め指定された1以上の飲食物の識別情報のいずれかと一致するという条件である。
なお、条件情報は、例えば、一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成される。また、条件情報が示す判断処理等を行うためのアルゴリズムであっても良い。ただし、条件情報は、上記で例に挙げているように、これらの関数や、メソッド名や、制御構文、判断処理を行うためのアルゴリズム等に相当する自然言語で表された情報であってもよい。
また、条件情報は、上記以外の条件を含む情報であってもよく、条件情報は、利用情報に含まれるどのような情報についてのどのような条件を示す情報を含んでいても良い。例えば、利用情報に含まれる飲食店の利用目的を示す情報についての条件を示す条件情報であっても良い。
なお、情報処理装置1を複数の飲食店において利用する場合においては、プロモーション管理情報を、飲食店の識別情報と対応付けてプロモーション情報格納部13に格納するようにし、プロモーション情報取得部14が一の飲食店についてプロモーション情報を取得する際には、この一の飲食店の識別情報と対応付けられたプロモーション管理情報だけを、飲食店の識別情報を用いて選択的に利用するようにしても良い。例えば、プロモーション管理情報が、飲食店の識別情報を更に備えているようにしても良い。
プロモーション情報取得部14は、利用情報格納部11に格納されている利用情報に応じたプロモーション情報を取得する。利用情報に応じて取得するということは、例えば、利用情報に応じて、プロモーション情報を選択的に取得することと考えても良い。利用情報に応じて取得するということは、利用情報を用いて取得することと考えても良い。例えば、プロモーション情報取得部14は、利用情報格納部11に格納された利用情報が、プロモーション情報格納部13に格納されている1以上の条件情報を満たす場合に、この条件情報と対応付けられたプロモーション情報を、プロモーション管理情報から取得する。具体的には、プロモーション情報取得部14は、利用情報が条件情報を満たすか否かを判断し、満たす場合に、プロモーション情報を取得し、満たさない場合には、プロモーション情報を取得しない。条件情報と対応付けられたプロモーション情報とは、条件情報を有するプロモーション管理情報に含まれる1または2以上のプロモーション情報である。なお、ここでは、一の条件を満たす場合とは、この一の条件を満たすということと実質的に同じ判断となること、例えば、この一の条件の逆の条件を満たさない、ということも含む概念であると考える。また、本実施の形態における条件情報を満たすとは、例えば、条件情報が示す全ての条件を満たすことであるが、適宜、条件情報が示す条件のうちの一部のみを満たす場合を、条件を満たすこととしても良い。
また、プロモーション情報取得部14は、例えば、利用情報が1または2以上の条件情報が示す条件のうちの、予め指定された数以上の条件を満たす場合に、いずれの条件情報が示す条件を満たしたかに関わらず、予め指定された1または2以上のプロモーション情報をプロモーション情報格納部14から取得しても良い。
例えば、利用情報が現在状況情報を含み、プロモーション情報格納部13に現在状況情報に関する条件を含む条件情報が格納されている場合、プロモーション情報取得部14は、利用情報格納部11に格納された現在状況情報を含む利用情報が、プロモーション情報格納部13に格納されている現在状況情報に関する条件を含む1以上の条件情報を満たす場合に、条件情報と対応付けられたプロモーション情報を取得する。
また、例えば、プロモーション情報取得部14は、利用情報が注文履歴情報を含み、プロモーション情報格納部13に、注文履歴情報に関する条件を含む条件情報が格納されている場合、利用情報格納部11に格納された注文履歴情報を含む利用情報が、プロモーション情報格納部13に格納されている注文履歴情報に関する条件を含む1以上の条件情報を満たす場合に、条件情報と対応付けられたプロモーション情報を取得する。
また、例えば、利用情報がユーザ識別情報と対応付けられて利用情報格納部11に格納されている場合、プロモーション情報取得部14は、ユーザ識別情報毎に、このユーザ識別情報と対応付けられた利用情報が、プロモーション情報格納部に格納されている1以上の条件情報を満たすか否かを判断し、満たす場合に、当該条件情報と対応付けられたプロモーション情報を取得するようにしてもよい。この場合に用いられる条件情報も、一のユーザ識別情報と対応付けられた一または二以上の利用情報に関する条件を示す条件情報であることが好ましい。ここでは、このような条件情報を、ユーザ識別情報毎の条件情報と呼ぶ。例えば、プロモーション情報取得部14は、プロモーション管理情報に含まれる一の条件情報が、一のユーザ識別情報と対応付けられた利用情報に関する条件であるか否かを判断し、条件であると判断した場合に、ユーザ識別情報毎に、利用情報格納部11から当該ユーザ識別情報と対応付けられた行動情報を取得する。そして、取得した行動情報が条件情報を満たすか否かを判断し、満たす場合に、ユーザ識別情報毎に条件情報に対応するプロモーション情報を取得し、満たさない場合には取得しない。
なお、プロモーション情報取得部14は、利用情報に含まれる来店時間帯を用いて、アイドルタイムを検出するようにしても良い。アイドルタイムとは、飲食店の営業時間内における、ユーザが来店する頻度の低い時間帯である。ここでの来店する頻度とは、来店する比率(例えば、総来店数に対する比率や、飲食店の営業日数に対する比率等)であっても良いし、来店数であっても良い。頻度が低いとは、例えば、頻度が予め指定された閾値よりも低いことであっても良いし、他の時間帯に対して低いことであってもよい。プロモーション情報取得部14は、例えば、営業時間内の予め指定された複数の時間帯のそれぞれと重複する来店時間帯を有する利用情報の数を、時間帯毎に集計し、その集計結果または集計数の比率を、時間帯ごとのユーザの来店数または来店比率として、この来店数または来店比率の低い時間帯、即ちユーザの来店する頻度の低い時間帯をアイドルタイムに決定する。そして、プロモーション情報取得部14は、アイドルタイムの前に、プロモーション情報を取得するようにしてもよい。これにより、アイドルタイムに対する来店をユーザに促すことが可能となる。アイドルタイムの前とは、例えば、アイドルタイムから予め指定された時刻だけ前の時刻である。予め指定された時刻は、1時間以内に設定することがプロモーション情報の内容をユーザが忘れないようにするうえで効果的である。なお、アイドルタイムの前にプロモーション情報を取得する際には、例えば、一のユーザ識別情報と対応付けられた一または二以上の利用情報の中に、アイドルタイム内の時刻を含む来店時間帯を含む利用情報が、予め指定された数以上あるいは比率以上含まれるという条件を有する条件情報を満たすか否かを判断し、満たす場合に、この条件情報に対応するプロモーション情報を取得するようにすることが更に効果的である。更に、プロモーション情報取得部14は、条件情報に対応するプロモーション情報を取得するとともに、このプロモーション情報の内容が有効な時間帯を上記のアイドルタイムの時間帯に変更するようにしてもよい。
なお、図示しない時計等から取得した現在の時刻が利用情報を用いて取得したアイドルタイムの前の時刻であるか否かを、上記の条件情報の条件の一つとしても良い。
なお、プロモーション情報取得部14は、必要に応じて、上記の条件を満たすか否かの判断処理に用いられる利用情報以外の情報を、情報処理装置1内の図示しない処理部や、他のサーバ装置等から適宜取得するようにしても良い。例えば、プロモーション情報取得部14は、情報処理装置1内の図示しない時計等から現在の時刻を取得しても良い。また、飲食店の目標販売数に達していない飲食物の識別情報を、飲食店における飲食物の販売状況を管理するサーバ等から取得しても良い。
なお、プロモーション情報取得部14は、プロモーション情報格納部13から取得するプロモーション情報の一部を、上述したようなユーザ識別情報や、利用情報や、現在の時刻等の情報や、これらの情報を用いて作成された情報で更新しても良い。ここでの更新は、予めプロモーション情報内の予め指定された箇所に、予め指定された情報(例えば、ユーザ識別情報や、時刻等)を挿入することであっても良い。
プロモーション情報取得部14は、通常、MPUやメモリ等から実現され得る。プロモーション情報取得部14の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
連絡先情報格納部15には、ユーザに対応した連絡先を示す情報である1以上の連絡先情報が格納される。連絡先情報は、具体的には、ユーザの連絡先、例えば、ユーザが登録した連絡先を示す情報であり、例えば、ユーザのメールアドレスや、ミニブログ等のアドレスや、電話番号、ファクシミリ番号、SNS(ソーシャルネットワークサービス)等のアカウント、SMS(ショートメッセージングサービス)等のアカウント等である。例えば、連絡先情報格納部15には、連絡先情報が、ユーザ識別情報と対応付けられて格納されている。例えば、連絡先情報格納部15には、1または2以上の連絡先情報と1または2以上のユーザ識別情報とを有する1または2以上の連絡先管理情報が格納されている。ユーザに対応した連絡先とは、例えば、ユーザが利用する情報通信端末等である。連絡先情報格納部15には、例えば、ユーザが飲食店や、飲食店に関連するサービス等に対して登録した連絡先情報が格納される。
送信部16は、プロモーション情報取得部14が取得したプロモーション情報を、連絡先情報格納部15に格納されている1以上の連絡先情報が示す連絡先に送信する。送信部16は、例えば、プロモーション情報を連絡先に対してプッシュ通知してもよい。プッシュ通知は、スマートフォンやタブレット端末等のアプリにおいて利用されているNotificationと呼ばれる技術も含む概念である。
送信部16は、例えば、上述したプロモーション情報取得部14がアイドルタイムの前にプロモーション情報を取得した場合に、このプロモーション情報をアイドルタイムの前にプロモーション情報を送信する。
また、送信部16は、例えば、プロモーション情報取得部14が、ユーザ識別情報毎に取得したプロモーション情報を、このプロモーション情報に対応するユーザ識別情報に対応付けられた連絡先情報が示す連絡先に送信するようにしてもよい。具体的には、送信部16は、プロモーション情報を取得する際に用いたユーザ識別情報に対応する連絡先情報を、連絡先情報格納部15から(具体的には、連絡先管理情報から)検索により取得し、取得した連絡先情報が示す連絡先にプロモーション情報を送信する。これにより、各ユーザに適合した適切なプロモーションを行うことが可能となる。
送信部16は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。送信部16は、通信デバイスを含むと考えても、含まないと考えても良い。
次に、情報処理装置1の動作について図2のフローチャートを用いて説明する。
(ステップS101)利用情報受付部12は、ユーザ識別情報と利用情報とを受け付けたか否かを判断する。受け付けた場合、ステップS102に進み、受け付けていない場合、ステップS103に進む。
(ステップS102)利用情報受付部12は、ステップS101で受け付けたユーザ識別情報と利用情報とを対応付けて、利用情報格納部11に蓄積する。例えば、利用情報受付部12は、ステップS101で受け付けたユーザ識別情報と利用情報とを有する利用管理情報を、利用情報格納部11に蓄積する。そして、ステップS101に戻る。
(ステップS103)プロモーション情報取得部14は、プロモーション情報を取得するタイミングであるか否かを判断する。例えば、プロモーション情報取得部14は、図示しない受付部等から、プロモーション情報を取得する指示を受け付けた場合に、プロモーション情報を取得するタイミングであると判断しても良い。また、予め指定された時間が経過する毎や、予め指定された時刻に、プロモーション情報を取得するタイミングであると判断するようにしても良い。プロモーション情報を取得するタイミングである場合、ステップS104に進み、取得するタイミングでない場合、ステップS101に戻る。
(ステップS104)プロモーション情報取得部14は、カウンターmの値に1を代入する。
(ステップS105)プロモーション情報取得部14は、プロモーション情報格納部13から、m番目の条件情報を取得する。
(ステップS106)プロモーション情報取得部14は、ステップS105で読み出した条件情報が、ユーザ識別情報毎の条件情報であるか否かを判断する。ユーザ識別情報毎の条件情報である場合、ステップS107に進み、ユーザ識別情報毎の条件情報でない場合、ステップS115に進む。
(ステップS107)プロモーション情報取得部14は、カウンターnの値に1を代入する。
(ステップS108)プロモーション情報取得部14は、n番目のユーザ識別情報を、連絡先情報格納部15に連絡先情報と対応付けられて格納されているユーザ識別情報から取得する。なお、利用情報格納部11に格納されている利用情報に対応付けられたユーザ識別情報から、重複のないよう取り出したユーザ識別情報の中からn番目のユーザ識別情報を取得してもよい。
(ステップS109)プロモーション情報取得部14は、n番目のユーザ識別情報に対応する利用情報が、m番目の条件情報が示す条件を満たすか否かを判断する。満たす場合、ステップS110に進み、満たさない場合、ステップS113に進む。
(ステップS110)プロモーション情報取得部14は、m番目の条件情報に対応するプロモーション情報を取得する。
(ステップS111)送信部16は、n番目のユーザ識別情報に対応する連絡先情報を、連絡先情報格納部15から検索等により取得する。
(ステップS112)送信部16は、ステップS110で取得したプロモーション情報をステップS111で取得した連絡先情報が示す連絡先に送信する。
(ステップS113)プロモーション情報取得部14は、カウンターnの値を1インクリメントする。
(ステップS114)プロモーション情報取得部14は、n番目のユーザ識別情報があるか否かを判断する。ある場合、ステップS108に進み、ない場合、ステップS119に進む。
(ステップS115)プロモーション情報取得部14は、利用情報格納部11に格納されている利用情報が、m番目の条件情報を満たすか否かを判断する。満たす場合、ステップS116に進み、満たさない場合、ステップS119に進む。
(ステップS116)プロモーション情報取得部14は、m番目の条件情報に対応するプロモーション情報を取得する。
(ステップS117)送信部16は、連絡先情報格納部15に格納されている連絡先情報を取得する。例えば、送信部16は、連絡先情報格納部15に格納されている全ての連絡先情報を取得する。
(ステップS118)送信部16は、ステップS116で取得したプロモーション情報をステップS117で取得した連絡先情報が示す連絡先に送信する。
(ステップS119)プロモーション情報取得部14は、カウンターmの値を1インクリメントする。
(ステップS120)プロモーション情報取得部14は、m番目の条件情報が、プロモーション情報格納部13に格納されているか否かを判断する。格納されている場合、ステップS105に進み、格納されていない場合、ステップS101に戻る。
なお、ここでは、説明を省略しているが、プロモーション情報取得部14は、条件を満たすか否かの判断処理を行った条件情報については、フラグ情報等を付与することにより、一定の期間内(例えば、同じ日付内や、予め指定された時間が経過するまでの期間内)は、再度判断処理を行わないようにしても良い。あるいは、送信部16は、一のプロモーション情報を送信した連絡先には、対応する連絡先情報にフラグ情報等を付与することにより、一定の期間内(例えば、同じ日付内や、予め指定された時間が経過するまでの期間内)は、再度プロモーション情報を送信する処理を行わないようにしても良い。あるいは、条件情報毎に、プロモーション情報を取得するための判断処理を行うタイミング(例えば時刻や時間間隔等)を指定する情報を対応付けて格納できるようにして、現在の時刻等が、各条件情報に対応付けられたタイミングを指定する情報が示すタイミングになった場合に、その条件情報を用いた判断処理を行うようにしても良い。これらのようにすることで、プロモーション情報が一のユーザに一日に何度も送信されることを防ぐことができる。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置1の具体的な動作について説明する。情報処理装置1を有する情報処理システム1000の一例を示す概念図は図3である。情報処理システム1000は、飲食店Aで利用されている情報処理装置1と、飲食店Aの複数のユーザがそれぞれ保持する複数の情報通信端末2と、を備えている。ここでは、複数の情報通信端末2を、情報通信端末2a、2b、2c等で表している。情報処理装置1と、各情報通信端末2とは、一例としてネットワークを介して有線通信および無線通信により接続されているものとする。情報通信端末2は、一例として、いわゆるスマートフォンと呼ばれる装置であるとする。
まず、ユーザ識別情報が「U1001」であるユーザ(以下、ユーザ「U1001」と称す)が、三人で飲食店Aに来店し、テーブル識別情報が「T05」であるテーブルに着席したとする。ユーザ識別情報は、ここでは、飲食店Aの会員番号であるとする。また、テーブル識別情報は、テーブル番号であるとする。そして、ユーザ「U1001」が、飲食店A専用の飲食物の注文を行うアプリケーションを起動し、自分のユーザ識別情報であるユーザ識別情報「U1001」でログインし、テーブル識別情報「T05」と、来店した人数である「3」を情報通信端末2に入力したとする。また、情報通信端末2は、ユーザの来店時刻として、これらの情報の入力を受け付けた時刻である「2012年9月10日18時50分」を内部に設けられている図示しない時計等から受け付ける。また、予め指定された現在の天気を提供するWEBサーバ等が送信する現在の天気の状態を示す識別情報である「晴れ」という情報を受け付ける。
そして、ユーザ「U1001」が図示しない「送信」ボタンを押したとする。情報通信端末2は、上記で受け付けたユーザ識別情報を含む情報を、情報処理装置1に送信する。
情報処理装置1の利用情報受付部12は、情報通信端末2から送信される情報を受信し、受信した情報のうちのユーザ識別情報以外の情報を、利用情報の一部の情報としてユーザ識別情報と対応付けて利用情報格納部11に蓄積する。
図4は、利用情報格納部11に格納されている利用情報を管理するための利用管理情報を示す図である。利用管理情報は、利用管理情報を管理する識別情報である「利用管理ID」と、ユーザ識別情報である「ユーザID」と、利用情報である「利用情報」という属性を有している。「利用情報」は、さらに、「テーブルID」、「来店時刻」、「退店時刻」、「来店人数」、「天気」等の属性を有している。「テーブルID」はテーブル識別情報である。「来店時刻」は来店時刻である。「退店時刻」は退店時刻であり、例えば、ユーザが飲食店の飲食代等を精算した時点等の時刻が利用情報受付部12により入力される。「来店人数」は来店人数であり、「ユーザID」を含む人数であるとする。「天気」は、天気の状態を示す識別情報である。ここでは、一の行が、利用管理情報の一のレコードであるとする。なお、ここでは、「退店時刻」の値が空欄(あるいはNull値)であるレコード内に含まれる各情報は、ユーザが退店前、即ち来店中であることを示していることから、現在状況情報を構成する情報として扱うものとする。また、現在状況情報としては、上記以外の他の属性の情報が格納されていても良い。なお、ここでは、既に、他のレコードが格納されていた利用管理情報に、上記で利用情報受付部12が受け付けた利用情報のレコードが追記されたものとする。
次に、例えば、ユーザ「U1001」が上記の飲食店専用のアプリケーションを用いて、メニューを表示させ、注文しようとする飲食物の注文ボタン(図示せず)を押したとすると、情報通信端末2から、「ユーザID」である「U1001」と、注文した商品の、商品名と、商品コードと、注文数との組が送信される。ここでは、商品名が「ビール」、商品コードが「BR50」、注文数が「3」であったとする。送信された情報は、飲食店の注文を受け付けるサーバ等(図示せず)に送信される。また、送信された情報は、情報通信端末2にも送信され、利用情報受付部12は送信された情報を受け付ける。そして、利用情報受付部12は、受け付けた情報のうちの、商品名と、商品コードと、注文数との組を、受け付けた「ユーザID」である「U1001」と対応付けて、上記で受け付けた現在状況情報を含む利用管理情報の注文履歴情報として、利用情報格納部11に蓄積する。
図5は、利用情報格納部11に格納される注文履歴情報を管理する注文履歴管理情報である。注文履歴管理情報は、「注文履歴ID」と、「利用管理ID」と、「注文履歴」という属性を有している。「注文履歴」は、更に、「商品名」、「商品コード」、「注文数」という属性を有している。「注文履歴ID」は、注文履歴情報のレコードを管理する識別情報である。ここでは、図5の一の行を注文履歴管理情報の一のレコードと考える。「利用管理ID」は、注文履歴情報のレコードが対応付けられた利用管理情報の「利用管理ID」であり、図4の「利用管理ID」に対応する。「注文履歴」は注文履歴情報である。「商品名」、「商品コード」、および「注文数」は、利用情報受付部12が受け付けた商品名、商品コード、注文数の組を構成する各情報である。なお、ここでは、既に、他のレコードが格納されていた注文履歴管理情報に、上記で利用情報受付部12が受け付けた注文履歴管理情報のレコードが追記されたものとする。
利用情報受付部12は、例えば、情報通信端末2から送信された情報を受け付けた場合に、この情報に含まれる「ユーザID」の値と一致する「ユーザID」を有する利用情報であって、「退店時刻」が空欄(あるいはNull値)である利用管理情報のレコードを、図4に示した利用管理情報から検索し、検出した利用管理情報の「利用管理ID」の値を取得する。そして、取得した値を、注文履歴管理情報の「利用管理ID」として蓄積する。これにより、注文履歴管理情報の各レコードは、各レコードの「利用管理ID」の値が示す利用管理情報のレコードに対応づけられる。即ち、一の利用情報に含まれる注文履歴情報は、この一の利用情報を管理する利用管理情報の一のレコードに含まれる「利用管理ID」と同じ「利用管理ID」を有する注文履歴管理情報のレコードで管理される注文履歴情報に相当するものとなっている。例えば、利用管理IDが「10046323」である注文履歴管理情報で管理される注文履歴情報は、利用管理IDが「10046323」である利用管理情報で管理される利用情報の注文履歴情報である。
なお、ユーザの情報通信端末2を用いて飲食店のメニューを表示させたり、メニューから飲食物を注文したりする構成等については、公知の技術であるので、ここでは詳細な説明は省略する。
次に、情報通信端末2のプロモーション情報取得部14は、図示されていない時計等から現在の時刻を取得し、プロモーション情報を取得するタイミングであるか否かを判断する。ここでは、一例として13時から23時までの正時(13時00分、14時00分等)毎に、この判断を行うよう、予め指定されているものとする。例えば、時計等から取得した現在時刻が、「19時00分」であったとすると、プロモーション情報取得部14は、プロモーション情報を取得するタイミングであると判断して、プロモーション情報を取得する処理を行う。
なお、このプロモーション情報を取得する処理を行うタイミング(例えば、時刻、時間間隔、頻度等)は、条件情報毎に、指定されていても良く、その場合、条件情報毎に、処理を行うタイミングであるか否かを判断し、処理を行うタイミングである場合に、その条件情報を用いたプロモーション情報を取得する処理を行うようにしてもよい。
図6は、プロモーション情報格納部13に格納されているプロモーション管理情報を示す図である。プロモーション管理情報は、「条件ID」、「条件」および「プロモーション情報」という属性を有する。「条件ID」は、プロモーション管理情報のレコード(ここでは行)を管理するための識別情報である。「条件」は条件情報である。ここでは、説明のため、「条件」は、自然言語を用いて記述されているが、上述したように「条件」は、例えば、これらの自然言語に相当する一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよい。また、「一般条件」は、これらの自然言語に対応する判断処理等を行うためのアルゴリズムであっても良い。「プロモーション情報」は、プロモーション情報であり、ここでは、説明の便宜上、テキスト情報であるとする。ただし、プロモーション情報や、画像情報等であっても良い。
図7は、連絡先情報格納部15に格納されている連絡先管理情報を示す図である。連絡先管理情報は、「ユーザ識別情報」と「連絡先」という属性を有している。「ユーザ識別情報」は、図4の「ユーザ識別情報」に対応する。「連絡先」は、ユーザのメールアドレスであるとする。但し、「連絡先」は、ユーザに対してコメント等を送付するためのアドレス等であっても良い。
まず、プロモーション情報取得部14は、図6に示したプロモーション管理情報の一番上のレコード(ここでは、「条件ID」が「001」であるレコード)から、「条件」の値を読み出す。そして、この「条件」の値が「判断対象:各ユーザ識別情報」という文字列を含むか否かを判断する。ここでは、一例として、「判断対象:各ユーザ識別情報」という文字列を含む条件情報は、上述したユーザ識別情報毎の条件情報である。また、「判断対象:各ユーザ識別情報」という文字列を含まないものは、対応するユーザ識別情報に関係なく、全ての利用情報を判断対象として判断を行う条件情報であるとする。この一番上のレコードの「条件」の値は、上記の文字列を含まないため、プロモーション情報取得部14は、利用情報格納部11に格納されている全てのユーザ識別情報と対応付けられた利用情報を対象として、条件を満たすか否かの判断を行うことを決定する。
このため、プロモーション情報取得部14は、図4に示した利用情報の全てのユーザ識別情報と対応付けられた利用情報について、利用情報が、上記で読み出した条件情報の「内容:」に続く文字列が示す条件を満たすか否かを判断する。
ここで、上記で読み出した条件情報の「内容:」以降の文字列が示す条件は、「利用情報に含まれる現在状況情報が示す現在の空席率が、現在の時間帯の閾値以上でない。」という条件であることから、プロモーション情報取得部14は、図4に示した利用情報の中から、現在状況情報を含む全ての利用情報のレコード、即ち「退店時刻」が空欄(あるいはNull値)である利用情報のレコードを検出し、検出したレコードにそれぞれ含まれる「来店人数」の値を取得し、その合計を検出する。「来店人数」の合計は「30」であったとする。また、図示しない記憶媒体等に予め格納されている飲食店Aの総座席数の値である「50」を取得する。そして、来店人数の合計「30」を、総座席数「50」から減算した値「20」を、総座席数で除算して、空席率を算出する。算出した空席率は、ここでは40%となる。
図8は、飲食店Aの時間帯別の空席率の閾値を管理する閾値管理情報を示す図である。閾値管理情報は、「時間帯」と、「閾値」という属性を有している。「時間帯」は、飲食店の営業時間を分割した時間帯で、時間帯の開始時刻と終了時刻とを有している。「閾値」は、空席率の閾値であり、プロモーション情報を送付しなくて良いことが許容される空席率の最大値である。
つぎに、プロモーション情報は、図8の閾値管理情報から上記で取得した現在の時刻「19時00分」を含む「時間帯」を有するレコードを検出し、検出したレコードの閾値である「20」(%)を取得する。そして、上記で現在状況情報を用いて算出した現在の空席率「40」(%)が、この閾値以上であるか否かを判断する。ここでは、閾値以上であるため、プロモーション情報取得部14は、上記の一番上の条件を満たすと判断する。そして、この一番上の条件情報に対応する「プロモーション情報」の値である「本日ご来店いただくと、ドリンク一杯無料サービス…」を読み出す。
次に、送信部16は、図7に示した連絡先管理情報から「連絡先」であるメールアドレスを読み出す。ここでは、上記の条件情報が、ユーザ識別情報毎に条件についての判断を行う条件情報でなかったため、連絡先管理情報で管理されている全ての「連絡先」を読み出す。なお、現在状況情報に含まれる「ユーザID」に対応する「連絡先」は、読み出し対象から除外してもよい。
そして、読み出した各「連絡先」を宛先の情報として、上記で取得したプロモーション情報を本文に含む電子メールを一斉送信する。なお、上記で取得したプロモーション情報を、予め用意されたテンプレート等に配置して送信しても良い。そして、上記の条件情報についての処理を終了する。
上記の「連絡先」が示す宛先の各ユーザは、情報通信端末2を用いて上記のプロモーション情報を含む電子メールを受信する。そして、ユーザが、受信した電子メールを開くと、上記のプロモーション情報が図示しないモニタ等に表示される。
図9は、情報処理装置1から送信されたプロモーション情報の表示例である。
つぎに、プロモーション情報取得部14は、図6に示したプロモーション管理情報の上から二番目のレコード(ここでは、「条件ID」が「002」であるレコード)から、「条件」の値を読み出す。そして、この「条件」の値が「判断対象:各ユーザ識別情報」という文字列を含むか否かを判断する。ここでは、含むため、プロモーション情報取得部14は、条件情報が、ユーザ識別情報毎の条件情報であると判断する。そして、利用情報格納部11に格納されている各ユーザ識別情報と対応付けられた利用情報を個別に対象として、条件を満たすか否かの判断を行う。
プロモーション情報取得部14は、図7に示した連絡先管理情報の一番上のレコード(ここでは行)から、「ユーザID」の値「U0101」を読み出す。そして、このユーザID「U0101」に対応する利用情報が、上記で読み出した条件情報の「内容:」に続く文字列が示す条件を満たすか否かを判断する。上記で読み出した条件情報の「内容:」以降の文字列が示す条件は、「対応する利用情報に、商品名が「グラタン」である注文履歴情報を有する利用情報が、3以上存在する。」である。例えば、この条件情報は、飲食店の管理者等が、グラタンの売れ行きが悪いため、グラタンの販売を増やすために設定した条件情報であるとする。プロモーション情報取得部14は、図4に示した利用管理情報から、「ユーザID」が「U0101」であるレコードを検出し、検出したレコードの「利用管理ID」を全て取得する。ただし、来店時刻等で、検出対象のレコードを選択的に検出しても良い。例えば、過去一週間分の利用情報だけを来店時刻等を用いて選択的に検出しても良い。かかることは、他の条件についても同様である。そして、図5に示した注文履歴情報のレコードのうちの、上記で取得した全ての「利用管理ID」のいずれかと一致する「利用管理ID」を有するレコードにおいて、「商品名」が「グラタン」であるレコードを検出し、その検出数を取得する。検出数は「5」であったとする。そして、検出数が、条件情報が示す値である3以上であるか否かを判断する。ここでは、検出数が「5」であり、3以上であると判断される。このため、プロモーション情報取得部14は、この条件情報に対応付けられた「プロモーション情報」を、図6に示したプロモーション管理情報から取得する。
送信部16は、プロモーション情報取得部14が取得したユーザID「U0101」に対応する「連絡先」の値である「ayamada@abact…」を取得し、この値を宛先にして、上記で取得したプロモーション情報を電子メールで送信する。
「ユーザID」が「U0101」であるユーザが、情報通信端末2を用いて上記のプロモーション情報を含む電子メールを受信し、この電子メールを開くと、上記のプロモーション情報が表示される。
図10は、情報処理装置1から送信されたプロモーション情報の表示例である。
また、プロモーション情報取得部14は、図7に示した連絡先管理情報の上から二番目以降のレコードについてもそれぞれ上記と同様の処理を繰り返し、この条件情報についての処理を終了する。
なお、一の「ユーザID」に対応する注文履歴情報に、「商品名」が「グラタン」であるレコードが、3以上検出されなかった場合、この「ユーザID」が示すユーザについては、プロモーション情報の取得および送信は行われない。
つぎに、プロモーション情報取得部14は、図6に示したプロモーション管理情報の上から3番目の「条件ID」が「003」であるレコードから、「条件」の値を読み出す。そして、この「条件」の値が「判断対象:各ユーザ識別情報」という文字列を含むため、プロモーション情報取得部14は、条件情報が、ユーザ識別情報毎の条件情報であると判断する。そして、利用情報格納部11に格納されている各ユーザ識別情報と対応付けられた利用情報を個別に対象として、条件を満たすか否かの判断を行う。
プロモーション情報取得部14は、図7に示した連絡先管理情報の一番上のレコード(ここでは行)から、「ユーザID」の値「U0101」を読み出す。そして、このユーザID「U0101」に対応する利用情報が、上記で読み出した条件情報の「内容:」に続く文字列が示す条件を満たすか否かを判断する。上記で読み出した条件情報の「内容:」以降の文字列が示す条件は、「対応する利用情報に、来店時間帯が17時から18時までの利用情報が、30%以上存在する。」である。来店時間帯は、ここでは、利用情報に含まれる「来店時刻」と「退店時刻」との間の時間帯であるとする。プロモーション情報取得部14は、図4に示した利用管理情報から、「ユーザID」が「U0101」であるレコードを検出する。そして検出した各レコードについて、「来店時刻」または、「退店時刻」の一方が、17時から18時までの時間帯の時刻であるか否かを判断する。そして、この時間帯の時刻であれば、そのレコードは、来店時間帯が17時から18時までの利用情報であると判断され、その利用情報の数がカウントされる。また、「来店時刻」が17時より前で、「退店時刻」が18時よりも後である場合も、そのレコードは、来店時間帯が17時から18時までの利用情報であると判断され、その利用情報の数がカウントされる。それ以外の場合は、来店時間帯が17時から18時までの時間帯でないと判断され、その利用情報はカウントされない。そして、「ユーザID」が「U0101」である全てのレコードについての判断が終わった時点のカウント数を、「ユーザID」が「U0101」であるレコードの総数で除算して、来店時間帯が17時から18時までの利用情報の、「ユーザID」が「U0101」である利用情報のレコードの総数に対する比率を算出する。例えば、ここで算出した比率が、20%であったとする。そして、プロモーション情報取得部14は、算出した比率が、条件情報が示す値である30%以上であるか否かを判断する。ここでは、30%以上でないため、条件情報が示す条件を満たさないと判断する。このため、連絡先管理情報の二番目以降の「ユーザID」についても、同様の処理を順次行う。そして、一の「ユーザID」に対応する利用情報について上記と同様に算出した比率が、30%以上である場合には、プロモーション情報取得部14がこの条件情報に対応するプロモーション情報を取得して、送信部16がこの「ユーザID」に対応する「連絡先」にプロモーション情報を順次送信する。そして、この条件情報についての処理を終了する。
図11は、情報処理装置1から送信されたプロモーション情報の表示例である。
つぎに、プロモーション情報取得部14は、図6に示したプロモーション管理情報の上から4番目の「条件ID」が「004」であるレコードから、「条件」の値を読み出す。そして、この「条件」の値が「判断対象:各ユーザ識別情報」という文字列を含むため、プロモーション情報取得部14は、条件情報が、ユーザ識別情報毎の条件情報であると判断する。そして、利用情報格納部11に格納されている各ユーザ識別情報と対応付けられた利用情報を個別に対象として、条件を満たすか否かの判断を行う。
プロモーション情報取得部14は、図7に示した連絡先管理情報の一番上のレコード(ここでは行)から、「ユーザID」の値「U0101」を読み出す。そして、このユーザID「U0101」に対応する利用情報が、上記で読み出した条件情報の「内容:」に続く文字列が示す条件を満たすか否かを判断する。上記で読み出した条件情報の「内容:」以降の文字列が示す条件は、「対応する利用情報に、現在空いているテーブルの定員と一致する来客人数を有する利用情報が、50%以上存在する。」である。
まず、プロモーション情報取得部14は、図4に示した利用情報の中から、現在状況情報を含む全ての利用情報のレコード、即ち「退店時刻」が空欄(あるいはNull値)である利用情報のレコードを検出し、検出したレコードにそれぞれ含まれる「テーブルID」の値を取得する。
図12は、飲食店Aのテーブルとその座席数とを管理するテーブル管理情報を示す図である。このテーブル管理情報は、例えば、プロモーション情報格納部13や図示しない記憶媒体等に予め格納されているものとする。あるいは、情報処理装置1の外部のアクセス可能な記憶媒体等に格納されていても良い。テーブル管理情報は、「テーブルID」と、「座席数」という属性を有している。「テーブルID」はテーブルの識別情報であり、ここでは、テーブル番号であるとする。「座席数」は各テーブルに設けられた座席数である。
プロモーション情報取得部14は、図12が示す「テーブルID」から、上記で利用情報から取得した「テーブルID」を除外して、図12が示す「テーブルID」のうちの、利用情報から取得した「テーブルID」と重複しない「テーブルID」を検出する。ここでは、重複しない「テーブルID」として、「T02」、「T07」、「T08」、「T09」、「T10」が検出されたとする。そして、検出した「テーブルID」に対応する「座席数」の値を、重複した値を複数取得しないように取得する。ここでは、プロモーション情報取得部14は、「座席数」の値として、「4」を取得する。
次に、プロモーション情報取得部14は、図4に示した利用管理情報から、「ユーザID」が「U0101」であるレコードを検出する。そして検出した各レコードについて、「来店人数」の値が、上記で取得した「座席数」の値「4」と一致するレコードを検出し、検出したレコードの数をカウントする。カウントしたレコード数が、「12」であったとする。また「ユーザID」が「U0101」であるレコードの総数が「20」であったとする。そして、プロモーション情報取得部14は、カウントしたレコード数「12」を、レコードの総数「20」で除算して、ユーザID「U0101」と対応付けられた利用情報のうちの、「来店人数」が現在空いているテーブルの定員(即ち、ここでは、「座席数」)と一致する利用情報の比率を算出する。算出した比率は、60%となる。そして、この比率が、条件情報が示す比率である50%以上であるか否かを判断する。ここでは、50%以上であるため、プロモーション情報取得部14は、上記の条件を満たすと判断する。このため、プロモーション情報取得部14は、上記と同様に、この条件情報に対応付けられたプロモーション情報を取得し、送信部16がユーザID「U0101」に対応する連絡先情報が示す連絡先にプロモーション情報を送信する。
図13は、情報処理装置1から送信されたプロモーション情報の表示例である。
また、プロモーション情報取得部14は、図7に示した連絡先管理情報の上から二番目以降のレコードについてもそれぞれ上記と同様の処理を繰り返される。そして、この条件情報についての処理を終了する。
なお、一の「ユーザID」に対応する注文履歴情報について算出した上記の比率が、50%以上である場合、この「ユーザID」が示すユーザについてはプロモーション情報の取得および送信は行われない。
このように、ユーザの利用情報が条件情報を満たす場合に、この条件情報に応じたプロモーション情報を取得して送信することで、ユーザの利用状況に応じた適切なプロモーションを行うことが可能となる。
ここで、プロモーション情報取得部14が、飲食店Aについての利用情報から、上述したように、ユーザが来店する頻度の低い時間帯であるアイドルタイムを検出し、アイドルタイムの予め指定された時間だけ前の時刻に、プロモーション情報を取得し、このプロモーション情報を送信部16が送信する場合の例について以下に説明する。
まず、プロモーション情報取得部14は、飲食店Aの営業時間を複数の時間帯に分割する。ここでは、飲食店Aの営業時間は、17時から23時までとし、この営業時間を、各正時を分割位置(分割する時刻)として6つの時間帯に分割する。
そして、利用情報格納部11に格納されている全ての利用情報の中から、来店時間帯(即ち「来店時刻」と「退店時刻」との間の時間帯)が分割した各時間帯を含む利用情報の数を、分割した各時間帯ごとにカウントする。この処理は、「ユーザID」毎に処理を行わない点を除けば、上記の「条件ID」が「003」の処理と同様である。そして、分割した各時間帯ごとに取得したカウント数を、全ての利用情報数で分割して、ユーザの来店する頻度を算出する。
図14は、プロモーション情報取得部14が算出した営業時間内における時間帯別のユーザの来店する頻度を示す図である。「時間帯」は、営業時間が正時で分割した時間帯を示し、「来店頻度」は、ユーザの来店する頻度を示す。
そして、プロモーション情報取得部14は、「来店頻度」の値が一番小さい「時間帯」が示す時間帯である「17時00分〜17時59分」をアイドルタイムに決定する。ただし、最も遅い時間帯等(ここでは、22時00分〜22時59分)を、アイドルタイム等の対象から除外するようにしても良い。
そして、このアイドルタイムの開始時刻である「17時00分」よりも予め指定された時間である30分だけ早い時刻である「16時30分」を、アイドルタイムに関するプロモーション情報を送信する時刻に設定する。
そして、プロモーション情報取得部14は、現在の時刻が、このアイドルタイムに関するプロモーション情報を送信する時刻となった場合、プロモーション情報を送信する処理を行う。ただし、ここでは、この処理に利用する条件情報としては、上述した条件情報とは異なり、予めアイドルタイムに対して対応付けられた条件情報を用いるものとする。この条件情報は、例えば、プロモーション情報格納部13に、プロモーション情報と対応付けて予め格納しておく。この条件情報として、例えば、「判断対象:各ユーザ識別情報 内容:対応する利用情報に、来店時間がアイドルタイムである利用情報が、30%以上存在する」という条件情報が利用可能である。また、この条件情報と対応付けられたプロモーション情報としては、どのようなプロモーション情報であっても良い。ただし、プロモーション情報の有効期間を指定しないもの、あるいは、有効期間をアイドルタイムに設定したものとすることが好ましい。そして、プロモーション情報取得部14は、この条件情報を用いて、上記と同様に利用情報が条件を満たすか否かの判断処理を行い、条件を満たす場合に、上記のプロモーション情報を取得して、送信部16が取得したプロモーション情報をユーザに送信するようにすればよい。
なお、上記具体例において説明した条件情報の閾値となる数値等は、適宜変更可能であり、飲食店の管理者等が設定した予め指定された値であればよい。
以上、本実施の形態によれば、ユーザの利用情報に応じたプロモーション情報を選択して、送信することができるため、ユーザに対して、飲食店の店舗への来店を促すためのプロモーションの情報を適切に提供することができる。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(情報送信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、1以上のユーザによる飲食店の利用に関する情報である利用情報が格納される利用情報格納部と、飲食店の利用を促す情報であるプロモーション情報が格納されるプロモーション情報格納部と、ユーザに対応した連絡先を示す情報である1以上の連絡先情報が格納される連絡先情報格納部と、にアクセス可能なコンピュータを、利用情報を受け付け、利用情報格納部に蓄積する利用情報受付部と、利用情報格納部に格納されている利用情報に応じたプロモーション情報をプロモーション情報格納部から取得するプロモーション情報取得部と、プロモーション情報取得部が取得したプロモーション情報を、連絡先情報格納部に格納されている1以上の連絡先情報が示す連絡先に送信する送信部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図15は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図15において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図16は、コンピュータシステム900の内部構成を示す図である。図16において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置等の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。