以下、商品情報管理装置等を備える情報システムの実施形態について、図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
本実施の形態において、1または2以上の商品情報が記載されたサイトまたはアプリのページにおいて、音声入力を受け付け、音声に対応する商品情報にフォーカスを移動させる商品情報管理装置を備える情報システムについて説明する。
また、音声入力を受け付け、他のページの商品情報にフォーカスを移動させる商品情報管理装置を備える情報システムについて説明する。
また、音声入力を受け付け、商品情報を選択するUI部品にフォーカスを移動させる商品情報管理装置を備える情報システムについて説明する。
また、音声入力を受け付け、商品購入のための情報も自動入力する商品情報管理装置を備える情報システムについて説明する。
また、音声入力を受け付け、音声に対応する商品情報が2以上存在する場合、現在のフォーカス位置から最も近い商品情報にフォーカスを移動させる商品情報管理装置を備える情報システムについて説明する。
また、音声入力を受け付け、音声に対応する商品情報が2以上存在する場合、当該2以上の商品情報からなるページを自動生成し、出力する商品情報管理装置を備える情報システムについて説明する。
さらに、自動生成したページにおいても、音声入力を受け付け、音声に対応する商品情報が2以上存在する場合に、当該2以上の商品情報からなるページを自動生成し、出力する動作を繰り返すことで、ユーザ所望の商品情報を絞り込んでいくことができる商品情報管理装置を備える情報システムについて説明する。
図1は、本実施の形態における情報システムのブロック図である。情報システムは、商品情報管理装置1、および1または2以上のユーザ端末2を備える。商品情報管理装置1は、例えば、LANやインターネット等のネットワーク、無線または有線の通信回線などを介して、1以上の各ユーザ端末2と通信可能に接続される。
商品情報管理装置1は、例えば、商品を購入するためのサイトまたはアプリを提供する企業等のサーバ、またはクラウドサーバなどであるが、そのタイプは問わない。ユーザ端末2は、例えば、かかるサイトまたはアプリを利用して商品を購入するユーザのPC、またはスマートフォンやタブレット端末や携帯電話機等の携帯端末などであるが、そのタイプは問わない。
商品情報管理装置1は、格納部11、受信部12、処理部13、および送信部14を備える。格納部11は、ページ格納部111を備える。受信部12は、入力情報受信部121を備える。処理部13は、商品情報決定部131、フォーカス移動部132、購入情報取得部133、およびページ生成部134を備える。送信部14は、ページ送信部141を備える。
ユーザ端末2は、ユーザ格納部21、ユーザ受付部22、ユーザ処理部23、ユーザ送信部24、ユーザ受信部25、およびユーザ出力部26を備える。
商品情報管理装置1を構成する格納部11は、各種の情報を格納し得る。各種の情報とは、例えば、後述するページなどである。また、格納部11には、例えば、ユーザ識別子群なども格納される。2以上のユーザ端末2の各ユーザを識別するユーザ識別子の集合である。なお、ユーザ識別子については、後述する。
ページ格納部111には、1または2以上のページが格納される。ページとは、インターネットを介して商品を購入するためのページである。ページは、例えば、ウェブサイト(以下、サイトと記す場合がある)のページ、アプリケーション(以下、アプリと記す場合がある)のページなどであるが、その種類は問わない。なお、一のアプリについて、例えば、PC上で動作するアプリ、または携帯端末上で動作するアプリなど、2種類以上のアプリがあってもよい。なお、ページとは、いわゆるブロック、小組等の概念を含むと考えても良い。
ページは、1または2以上の商品情報を含む。商品情報とは、商品の情報である。商品情報は、商品識別子を有する。商品識別子とは、商品を識別する情報である。商品識別子は、例えば、商品名(例えば、黒ペン、赤ペン等)、ID(例えば、品番等)などであるが、商品を識別し得る情報であれば何でもよい。また、商品情報は、例えば、画像、テキストなども有する。画像は、商品に関する画像のデータであり、例えば、写真、動画、イラスト、CGなどのデータである。テキストは、商品に関する文字のデータであり、例えば、説明文や価格などのデータである。テキストは、例えば、「1本100円」、「3本200円」などでもよい。商品名や品番等の商品識別子も、通常、テキストである。
なお、商品情報は、例えば、概要情報、詳細情報のように、2階層以上に階層化されていることは好適である。その場合、商品情報には、階層を識別する階層識別子(例えば、“概要”,“詳細”や、“上位”,“中位”,“下位”など)が対応付けられる。概要情報は、例えば、商品の外観の写真、または商品の概要の説明文のうち1種類以上の情報を含むことは好適である。詳細情報は、例えば、商品の細部の写真、または商品の詳細な説明文のうち1種類以上の情報を含むことは好適である。
また、ページは、通常、当該ページ内における各商品情報の位置を示す2以上の位置情報(以下、商品位置情報群と記す場合がある)も含む。商品位置情報群を構成する各部品位置情報は、例えば、(x1,y1),(x2,y2),…等の座標であるが、その表現形式は問わない。なお、このことは、後述する部品位置情報群を構成する各部品位置情報、および後述するフォーカス位置情報にも当てはまる。また、本実施の形態で述べる各種の情報群は、一の情報のみで構成される場合も含む。
また、ページは、通常、2以上のUI部品も含む。UI部品とは、ユーザが商品の注文に関する情報をコンピュータに入力するためのユーザインターフェイスを構成する部品である。注文に関する情報とは、例えば、指示、数量などであるが、これに限らない。UI部品は、例えば、ボタン、フィールドなどである。ボタンは、例えば、ユーザ所望の商品を購入する指示を入力するための購入ボタン、その商品の詳細情報を表示させる指示を入力するための詳細ボタンなどであるが、その種類は問わない。フィールドは、例えば、その商品の数量を入力するための入力フィールド、その商品の属性値を選択するための2以上のチェックボックスなどである。属性値とは、例えば、色、サイズ等であるが、これに限らない。この場合、ページは、当該ページ内における各UI部品の位置を示す2以上の位置情報(以下、部品位置情報群と記す場合がある)をも含む。
なお、ページ内の1または2以上の商品情報の各々に、上記のような2以上のUI部品が対応付いていてもよい。以下では、一の商品情報に対応付いた2以上のUI部品の集合をUI部品群と記す場合がある。この場合、前述した部品位置情報群は、例えば、ページ内の2以上のUI部品群の各々に対応付いていることは好適である。
ページ格納部111には、通常、2以上のページが格納される。この場合、ページは、通常、当該ページを識別するページ識別子に対応付いている。なお、格納されている2以上の各ページが、2以上のサイトのうちいずれかのサイトのページである場合、ページは、さらに、当該ページが属するサイトを識別するサイト識別子にも対応付いていてよい。同様に、格納されている2以上の各ページが、2以上のアプリのうちいずれかのアプリのページである場合、ページは、さらに、当該ページが属するアプリを識別するアプリ識別子にも対応付いていてよい。
受信部12は、各種の情報を受信する。各種の情報とは、例えば、入力情報などである。
入力情報受信部121は、ユーザ端末2からの入力情報を受信する。入力情報とは、ユーザが発した音声または当該音声から構成された情報である。音声から構成された情報とは、音声の波形を示す波形データであってもよいし、波形データを音声認識して得られる文字列を示すテキストデータであってもよい。なお、文字列は、1つの文字のみの場合も含む。ユーザ端末2からの入力情報は、テキストデータであれば好ましいが、波形データでもよい。
入力情報受信部121は、ユーザ端末2からの入力情報を、通常、当該ユーザ端末2のユーザを識別するユーザ識別子と対に受信する。ユーザ識別子は、例えば、IDでも、メールアドレスでもよいし、当該ユーザ端末2を識別する端末識別子でも構わない。端末識別子は、例えば、MACアドレス、IPアドレス等である。ユーザ識別子は、ユーザを識別し得る情報であれば、何でもよい。
なお、対に受信または送信することは、受信または送信される入力情報がユーザ識別子を有する場合も含む。また、このことは、後述するページの送受信にも当てはまる。
処理部13は、各種の処理を行う。各種の処理とは、例えば、商品情報決定部131、フォーカス移動部132、購入情報取得部133、およびページ生成部134などの処理である。各種の処理には、フローチャートで説明する各種の判別なども含まれる。また、処理部13は、例えば、音声認識機能を有しており、受信された入力情報が波形データである場合に、当該波形データを音声認識し、テキストデータを取得する処理である音声認識処理を行うことは好適である。商品情報決定部131および購入情報取得部133には、こうして受信された又は取得されたテキストデータが、入力情報として与えられる。
また、処理部13は、例えば、ページ格納部111に格納されている1以上の各ページが有する1または2以上の商品情報、または入力情報受付部121が受け付けた入力情報のうち1種類上の情報に対し、例えば、機械学習やデータマイニングやディープラーニング等による自然言語処理を行うことにより、後述する商品識別子群、後述する購入情報データベースなどを取得することは好適である。なお、かかる自然言語処理は、公知技術であり、説明を省略する。
なお、処理部13は、各種の処理を、入力情報と対に受信されるユーザ識別子を用いて、1以上のユーザごとに実行する。ただし、実行される各種の処理は、どのユーザでも共通であり、また、ユーザごとの各種の処理は、例えば、並列に、また時分割で実行可能であるため、以下では、原則として、ユーザ識別子には言及せず、一のユーザに対して実行される各種の処理を説明する。また、このことは、後述する送信部14の動作についても当てはまる。
商品情報決定部131は、入力情報に対応する商品情報を決定する。商品情報決定部131は、入力情報に対応する商品情報を、例えば、ページ格納部111に格納されている2以上のページの全部または一部を検索することにより決定してもよい。一部とは、通常、ユーザ端末2で出力されているページであるが、これ以外のページでもよい。
商品情報決定部131は、例えば、入力情報が示す文字列でページを検索して、当該文字列と一致する又は部分的に一致する又は一致すると見なし得るほど類似する文字列を含んだ商品情報を検出してもよい。
または、商品情報決定部131は、例えば、ページ格納部111に格納されている1以上の各ページが有する1または2以上の商品情報、または入力情報受付部121が受け付けた入力情報のうち1種類以上の情報から取得された2以上の商品識別子の集合である商品識別子群を保持しており、入力情報が示す文字列で商品識別子群を検索して、当該文字列と一致する又は部分的に一致する又は一致すると見なし得るほど類似する文字列を含んだ商品識別子を検出してもよい。なお、商品識別子群は、例えば、購入情報取得部133が予め保持していてもよいし、処理部13が自然言処理により取得してもよい。
具体的には、商品識別子群が、例えば、“ペン”,“赤ペン”,“青ペン”,…等の商品識別子で構成されており、ユーザによって「赤ペン、3本」が音声入力された場合、商品情報決定部131は、これに対応するテキストデータである入力情報“赤ペン,3本”に含まれる2つの文字列“赤ペン”および“3本”の各々で商品識別子群を検索し、前者の文字列が検出されたことに応じて、ページ格納部111から「赤ペン」に対応する商品情報を取得してもよい。
フォーカス移動部132は、商品情報決定部131が決定した商品情報にフォーカスを移動させる。一般に、フォーカスとは、例えば、ページから一の商品情報が選択され、当該商品情報に対応する各種の指示、数量、属性値(例えば、色、サイズ等)などの入力が可能となった状態をいう。一の商品情報を選択することは、当該一の商品情報に対応するUI部品のうち一のUI部品を選択する場合も含む。ページから一の商品情報を選択して、当該商品情報に対応する指示等の入力が可能な状態にすることを、例えば、「商品情報にフォーカスを当てる」という。さらに、決定された商品情報にフォーカスを移動させること(以下、フォーカス移動と記す場合がある)は、一の商品情報に当たっているフォーカスを、別の商品情報に移動させることである。
ただし、本形態の形態でいうフォーカスは、必ずしも一の商品情報が選択されることを要せず、広く解する。例えば、商品情報決定部131が決定した商品情報を含むページが単に表示され、当該ページ内のどの商品情報も選択されていない場合も、決定された商品情報にフォーカスが当たっているといってよい。また、かかる場合を、例えば、「ページにフォーカスが当たっている」と称してもよい。フォーカスの移動は、現在、あるページに当たっているフォーカスを、別のページに移動させることでも構わない。
なお、フォーカスは、商品情報の全体(例えば、商品識別子、画像、およびテキスト)に当てられてもよいし、その一部(例えば、商品識別子)に当てられてもよい。また、フォーカスは、商品情報に対応付いたUI部品群(例えば、入力フィールド、および購入ボタン)に当てられてもよいし、そのうち一のUI部品(例えば、入力フィールド)に当てられてもよい。同様に、フォーカスの移動先は、別の商品情報の全体でも、その一部でもよいし、別の商品情報に対応付いたUI部品群でも、そのうち一のUI部品でも構わない。
また、フォーカス移動は、通常、ページ内の移動であるが、ページ間の移動も可能である。ページ間の移動は、通常、一のサイトまたはアプリ内におけるページ間の移動であるが、一のサイトまたはアプリのページから、別のサイトまたはアプリのページへの移動も可能であってよい。一のサイトまたはアプリとは、例えば、あるEC店舗のスマートフォン用のサイトまたはアプリであり、別のサイトとは、例えば、当該EC店舗のPC用のサイトまたはアプリであってもよい。ただし、サイトまたはアプリの種類は問わない。
具体的には、フォーカス移動部132は、例えば、現在のフォーカスの対象を示す情報であるフォーカス情報を保持している。フォーカス情報は、現在のフォーカスが当たっているUI部品を識別する部品識別子を有する。また、フォーカス情報は、通常、現在のフォーカスが当たっている部品を含むページを識別するページ識別子も有し、さらに、当該ページを含むサイトを識別するサイト識別子、または当該ページを含むアプリを識別するアプリ識別子をも有していてもよい。
さらに、フォーカス情報は、例えば、ページ内での現在のフォーカスの位置を示す位置情報(以下、フォーカス位置情報と記す場合がある)をも有することは好適である。フォーカス位置情報は、例えば、ユーザ端末2から送信されてもよい。または、フォーカス移動部132が、保持している部品位置情報群から、当該フォーカス情報が有する部品識別子等に対応する位置情報を取得してもよい。
なお、フォーカス移動部132は、かかるフォーカス情報を、1以上のユーザごとに管理している。フォーカス移動部132は、各ユーザのユーザ端末2におけるフォーカスの移動を、入力情報と対に受信されたユーザ識別子に対応するフォーカス情報を変更することによって実現できる。
2以上の各商品情報にUI部品群が対応付いている場合、フォーカス移動部132は、商品情報決定部131が決定した商品情報を購入するための次のアクションを受け付けるUI部品であり、予め決められたタイプのUI部品にフォーカスを移動させることは好適である。購入するための次のアクションとは、例えば、ボタンの押下、フィールドへの入力などである。タイプとは、前述したようなUI部品の種類(例えば、ボタン、フィールド、購入ボタン、詳細ボタン、入力フィールド、チェックボックスなど)であり、予め決められたタイプとは、例えば、かかる種類のうち1つである。かかる種類は、順序性を有していてもよい。順序性とは、購入するための一連のアクション(例えば、商品の選択、数量の入力、および購入の指示)に対して、フォーカスの移動先となる順序(例えば、商品情報、入力フィールド、および購入ボタンのような順序)をいう。
予め決められたタイプのUI部品は、例えば、商品の購入に必須の情報または優先度の高い情報に対応するUI部品であることは好適である。なお、優先度が高いことは、例えば、優先度が最も高いことでもよいし、優先度が閾値より高いことでもよい。この種のUI部品は、例えば、購入の対象である商品の数量が入力される入力フィールド、購入の指示を入力するための購入ボタンなどであるが、これに限らない。以下では、予め決められたタイプのUI部品は、入力フィールドであるとする。
また、フォーカス移動部132は、例えば、商品情報決定部131が入力情報を用いて決定した商品情報に対応する入力フィールドに、後述する購入情報取得部133が当該入力情報を用いて取得した購入情報を代入し、かつ当該商品情報にフォーカスを移動させることは好適である。
例えば、入力情報が「赤ペン、3本」である場合、商品情報決定部131は、当該入力情報のうち、前半の「赤ペン」に対応する文字列が入力された後、例えば、句点や読点やスペース等が検出されたことをトリガとして、当該文字列を、保持している商品識別子群と比較する。比較の結果、当該文字列に対応する属性名「赤ペン」が商品識別子群に含まれていることから、商品情報決定部131は、商品識別子群から属性名「赤ペン」を取得し、ページ格納部111に格納されているページを検索して、当該属性名「赤ペン」を含む商品情報を決定する。他方、購入情報取得部133は、上記句点等をトリガとして、当該文字列を、保持している購入情報データベースと比較するが、当該文字列に対応する文字列は購入情報データベースに含まれていないことから、この時点では何も取得しない。
なお、商品情報決定部131は、例えば、一の文字が新たに入力されるたびに、入力済みの文字列を、商品識別子群と比較してもよい。入力済みの文字列とは、例えば、「赤」が入力された時点では「赤」であり、次の「ぺ」が入力された点では「赤ぺ」であり、その次の「ン」が入力された点では「赤ぺン」である。同様に、購入情報取得部133は、例えば、一の文字が新たに入力されるたびに、入力済みの文字列を、購入情報データベースと比較してもよい。
その後、後半の「3本」に対応する文字列が入力されたことに応じて、商品情報決定部131は、当該文字列を、保持している商品識別子群と比較するが、当該文字列に対応する文字列は、商品識別子群に含まれていないことから、この時点では何も取得しない。他方、購入情報取得部133は、当該文字列を購入情報データベースと比較し、当該文字列に対応する購入情報「3本」が購入情報データベースに含まれていることから、購入情報「3本」を取得する。フォーカス移動部132は、こうして決定された商品情報または当該商品情報に対応付いた入力フィールドにフォーカスを移動させ、かつ、その入力フィールドに、取得された購入情報「3本」を自動入力する。
また、フォーカス移動部132は、商品情報決定部131が2以上の商品情報を決定した場合、決定された2以上の商品情報のうち、現在のフォーカスの位置から最も移動が少ない位置の商品情報にフォーカスを移動させることは好適である。詳しくは、2以上の各商品情報は、前述した商品位置情報を有しており、フォーカス移動部132は、前述したフォーカス位置情報を有するフォーカス情報を保持している。商品情報決定部131が2以上の商品情報を決定した場合、フォーカス移動部132は、例えば、保持しているフォーカス位置情報が示す現在のフォーカスの位置から、決定された2以上の商品情報が有する商品位置情報が示す各位置までの距離を算出する。そして、フォーカス移動部132は、算出した2以上の距離のうちの最短距離に対応する商品情報への移動が、最も少ないと判断し、その商品情報にフォーカスを移動させてもよい。
なお、フォーカス移動部132は、上記のような距離の算出を、最初、現在のフォーカスが当たっている商品情報を含むページ内で、例えば、当該フォーカスが当たっている商品情報の直下の商品情報から開始し、ページの下端の商品情報に達したら中断してもよい。その後、フォーカス移動部132は、距離の算出を、当該ページ内で、例えば、当該フォーカスが当たっている商品情報の直上の商品情報から再開し、ページの上端の商品情報に達したら、次のページに進んでもよい。当該次のページでは、フォーカス移動部132は、距離の算出を、上端の商品情報から開始し、当該次のページの下端に達すると、前のページに移動してもよい。当該前のページでは、フォーカス移動部132は、距離の算出を、下端の商品情報から開始し、当該前のページの上端に達すると、上記次のページのさらに次のページに移動してもよい。このように、フォーカス移動部132は、距離の算出の対象を、まず、現在のフォーカス位置を含むページ内で、現在のフォーカス位置から上下に移動し、さらに上下のページに拡大していくことは好適である。ただし、例えば、フォーカス移動部132は、距離の算出の対象を、最初、現在のフォーカス位置を含むページ内で、現在のフォーカス位置から下方向に移動し、次のページに拡大し、最後のページに到達した後、現在のフォーカス位置を含むページに戻り、当該ページ内で、現在のフォーカス位置から上方向に移動し、前のページに拡大し、先頭のページに到達してもよい。また、距離の算出に関する上記説明における上と下は、逆でもよいし、左と右に置き換えられても構わない。
現在のフォーカスの位置から最も移動が少ない位置の商品情報とは、通常、現在のフォーカスが存在するページ(以下、現在のページと記す場合がある)内の2以上の商品情報のうち、フォーカスからの距離が最も近い商品情報である。
なお、現在のページ以外のページ(以下、他のページと記す場合がある)の商品情報は、現在のページ内のどの商品情報よりも、フォーカスから遠いと見なされる。また、現在のページを含むサイトまたはアプリ(以下、現在のサイトまたはアプリと記す場合がある)以外のサイトまたはアプリ(以下、他のサイトまたはアプリと記す場合がある)の商品情報は、現在のサイトまたはアプリのどの商品情報よりも、フォーカスから遠いと見なされる。
フォーカス移動部132は、例えば、決定された2以上の商品情報が、現在のページ内の商品情報を1つだけ含む場合、その商品情報をフォーカスの移動先とすればよい。また、フォーカス移動部132は、例えば、決定された2以上の商品情報が、現在のページ内の商品情報を2つ以上含む場合、フォーカス情報が有する位置情報と、決定された2以上の商品情報のうち現在のページ内の各商品情報が有する位置情報とを用いて、現在のフォーカスと当該各商品情報との距離を算出し、最短距離に対応する商品情報をフォーカスの移動先とすることは好適である。
なお、決定された2以上の商品情報が、現在のページ内の商品情報を1つも含まず、他のページの商品情報を1つ以上含む場合、フォーカス移動部132は、例えば、当該1つ以上の商品情報のいずれかをフォーカスの移動先としてもよい。また、決定された2以上の商品情報が、現在のサイトまたはアプリの商品情報を1つも含まず、他のサイトまたはアプリの商品情報を1つ以上含む場合、フォーカス移動部132は、例えば、当該1つ以上の商品情報のいずれかをフォーカスの移動先としてもよい。いずれの場合も、フォーカス移動部132は、当該1つ以上の商品情報のいずれかを、例えば、ランダムに選択してもよいし、所定のアルゴリズムで選択してもよい。所定のアルゴリズムは、例えば、最も安い価格または最も高い価格を示す価格情報を含む商品情報を選択するものでもよいし、先頭に格納されている価格情報を選択するものでもよく、その手順は問わない。
購入情報取得部133は、購入情報を取得する。購入情報とは、商品の購入に利用する情報である。購入情報は、通常、入力情報受信部121が受信した入力情報に含まれており、購入情報取得部133は、受信された入力情報から購入情報を取得する。具体的には、購入情報取得部133は、例えば、「1本」、「2本」、「3本」、…といった2以上の購入情報が登録された購入情報データベースを保持しており、入力情報として「赤ペン、3本」が与えられた場合、購入情報データベースを検索して、購入情報「3本」を取得する。購入情報データベースは、例えば、購入情報取得部133が予め保持していてもよいし、処理部13が自然言語処理により取得してもよい。
ページ生成部134は、商品情報決定部131が2以上の商品情報を決定した場合、当該2以上の商品情報からなるページを生成する。ページ生成部134は、例えば、ページ生成情報を保持しており、かかるページを、このページ生成情報を用いて生成する。ページ生成情報とは、2以上の適宜な個数の商品情報を有するページを生成するための情報である。ページ生成情報は、例えば、商品情報の個数をパラメータとして、ページ内での各商品情報の位置またはサイズのうち1種類以上の情報を算出するための関数であってもよい。または、ページ生成情報は、個数(2,3,…)に対応付いた1以上のレイアウト情報(レイアウト情報L2,レイアウトL3,…)の集合でもよい。レイアウト情報Lmは、m個の商品情報に対応するm個の位置情報からなる位置情報群、または、m個の商品情報に対応するm個のサイズ情報からなるサイズ情報群のうち1種類以上の情報群を有する。サイズ情報とは、ページ内における当該商品情報のサイズを示す情報である。
ページ生成部134は、かかるページを生成した後、入力情報受信部121がさらなる入力情報を受け付けてもなお、一の商品情報が決定されるに至らず、商品情報決定部131が2以上の商品情報を決定した場合、先に生成されたページに含まれる商品情報であり、商品情報決定部131が決定した2以上の商品情報を含む新たなページを生成する処理を繰り返すことで、決定の対象となり得る商品情報を絞り込んでいくことは好適である。
または、ページ生成部134は、商品情報決定部131が決定した商品情報が所定の条件を満たす場合に、当該商品情報からなるページを生成してもよい。この場合、フォーカス移動部132は、商品情報決定部131が決定した商品情報が上記所定の条件を満たさない場合に、当該商品情報にフォーカスを移動させることは好適である。
所定の条件は、例えば、商品情報決定部131が決定した商品情報の数に関する条件でもよい。数に関する条件とは、例えば、商品情報決定部131が決定した商品情報の数が2以上である、といった条件である。この条件を用いれば、商品情報決定部131が一の商品情報を決定した場合、フォーカス移動部132は、当該商品情報にフォーカスを移動させ、商品情報決定部131が2以上の商品情報を決定した場合、ページ生成部134が当該2以上の商品情報からなるページを生成する。
または、所定の条件は、例えば、商品情報決定部131が決定した商品情報と、当該商品情報が属するページとの関係に関する条件でもよい。ページとの関係に関する条件とは、例えば、商品情報決定部131が決定した商品情報が、2以上のページに跨って存在する商品情報である、といった条件である。この条件を用いれば、商品情報決定部131が一のページ内に存在する1以上の商品情報を決定した場合、フォーカス移動部132は、当該一のページにフォーカスを移動させ、商品情報決定部131が2以上のページに跨って存在する2以上の商品情報を決定した場合、ページ生成部134は、当該2以上の商品情報からなるページを生成する。
または、所定の条件は、例えば、商品情報決定部131が決定した商品情報と、フォーカス情報が有する現在位置情報との関係に関する条件でもよい。現在位置情報との関係に関する条件とは、例えば、フォーカス情報が有する現在位置情報が示す位置から、商品情報決定部131が決定した商品情報が有する商品位置情報が示す位置まで画面をスクロールさせる場合のスクロール量が、閾値より大きい又は閾値以上である、といった条件である。この条件を用いれば、商品情報決定部131が、閾値よりも大きい又は閾値以上のスクロールを要するほど、現在のフォーカス位置から離れた商品情報を決定した場合、ページ生成部134は、当該商品情報からなるページを生成し、そうでない場合、フォーカス移動部132は、当該商品情報にフォーカスを移動させる。
ただし、所定の条件は、例えば、決定された商品情報を含むページのデータ量が一の画面内に表示可能なデータ量よりも多い、といった条件でもよく、商品情報決定部131が決定した商品情報に関する条件であれば何でもよい。
また、所定の条件は、上記の対応関係とは逆に、商品情報決定部131が決定した商品情報がこれを満たさない場合に、ページ生成部134が当該商品情報からなるページを生成し、商品情報決定部131が決定した商品情報がこれを満たす場合に、フォーカス移動部132が当該商品情報にフォーカスを移動させるような条件であってもよい。
送信部14は、各種の情報を送信する。各種の情報とは、例えば、商品情報、ページなどである。
ページ送信部141は、商品情報を含むページをユーザ端末2に送信する。ページ送信部141は、通常、ユーザ端末2からの入力情報に対応する商品情報を含むページを、当該ユーザ端末2に送信する。
ページ送信部141は、例えば、ユーザ端末2からの入力情報を用いて商品情報決定部131が決定した商品情報を含むページを、当該ユーザ端末2に送信してもよい。
ページ送信部141は、例えば、ユーザ端末2からの入力情報を用いてフォーカス移動部132によってフォーカス移動された商品情報を含むページを、ユーザ端末2に送信してもよい。
ページ送信部141は、例えば、ユーザ端末2からの入力情報を用いて、商品情報決定部131が決定した商品情報であり、フォーカス移動部132によってフォーカス移動された商品情報を含むページを、当該ユーザ端末2に送信することは好適である。
ページ送信部141は、例えば、ユーザ端末2からの入力情報を用いて、商品情報決定部131が決定した商品情報であり、フォーカス移動部132によってフォーカス移動された商品情報を含み、かつ、当該商品情報に対応する入力フィールドに、購入情報取得部133が取得した購入情報が代入されたページを、当該ユーザ端末2に送信することは、より好適である。
ページ送信部141は、例えば、ユーザ端末2からの入力情報を用いて商品情報決定部131が決定した2以上の商品情報を含むページであり、ページ生成部134が生成したページを、当該ユーザ端末2に送信してもよい。ページ送信部141は、一の商品情報が決定されるまで、同様にして生成されるページを、繰り返し送信することは好適である。
なお、例えば、フォーカス移動された商品情報を含むページを送信する場合、ページ送信部141は、かかるページの全部を送信する必要はなく、通常、フォーカス移動前の商品情報を含むページとの差分を送信すれば足りる。また、新たに生成されたページを送信する場合も、ページ送信部141は、前回生成したページとの差分を送信すれば足りる。
ユーザ端末2を構成するユーザ格納部21は、各種の情報を格納し得る。各種の情報とは、例えば、ユーザ識別子などである。ユーザ格納部21には、通常、当該ユーザ端末2を識別するユーザ識別子が格納される。
ユーザ受付部22は、各種の情報を受け付ける。各種の情報とは、例えば、入力情報などである。一般に、受け付けとは、キーボードやタッチパネルやマイクロフォンやカメラ等の入力デバイスから入力された情報の受け付け、ネットワーク等を介して送信された情報の受信、ディスクや半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。ユーザ受付部22は、こうした各種の受け付けの機能を有することは好適である。
ユーザ受付部22は、例えば、マイクロフォンを介してユーザによる音声の入力(以下、音声入力と記す場合がある)を受け付け、音声の波形に対応する波形データである入力情報を取得する。ユーザ受付部22は、音声認識機能を有しており、取得した波形データを用いて音声認識を行い、入力された音声に対応するテキストデータである入力情報を取得することは好適である。
ユーザ処理部23は、各種の処理を行う。各種の処理とは、例えば、フローチャートで説明する判別などである。
ユーザ送信部24は、各種の情報を送信する。各種の情報とは、例えば、入力情報などである。ユーザ送信部24は、通常、ユーザ受付部22が受け付けた入力情報を商品情報管理装置1に送信する。送信される入力情報は、波形データでもよいし、テキストデータでもよい。
ユーザ受信部25は、各種の情報を受信する。各種の情報とは、例えば、ページなどである。
ユーザ受信部25は、商品情報管理装置1からページを受信する。ユーザ受信部25は、通常、ユーザ送信部24が入力情報を商品情報管理装置1に送信したことに応じて、商品情報管理装置1から、当該入力情報に対応する商品情報を含むページを受信する。
また、ユーザ受信部25は、例えば、入力情報の送信に応じて、当該入力情報に対応する商品情報であり、フォーカス移動された商品情報を含むページを受信することは好適である。さらに、ユーザ受信部25は、入力情報の送信に応じて、当該入力情報に対応する商品情報であり、当該入力情報を用いて決定された商品情報に対応する入力フィールドに、当該入力情報を用いて取得された購入情報が代入された、かつ当該商品情報にフォーカスが移動されたページを受信することは、より好適である。
また、ユーザ受信部25は、入力情報の送信に応じて、当該入力情報に対応する1または2以上の商品情報を含むページであり、生成されたページを受信してもよい。ユーザ受信部25は、一の商品情報が決定されるまで、同様にして生成されるページを、繰り返し受信することは好適である。
ユーザ出力部26は、各種の情報を出力する。各種の情報とは、例えば、ページなどである。一般に、出力とは、ディスプレイへの表示、スピーカーからの音出力、外部の装置への送信、プリンタでの印字、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。ユーザ出力部26は、こうした各種の出力の機能を有することは好適である。
ユーザ出力部26は、ユーザ受信部25が受信したページを出力する。ただし、出力されるページは、受信されたページと同一でなくてもよい。
ユーザ出力部26は、ユーザ受信部25が受信したページを、通常、ディスプレイに表示する。ただし、ユーザ出力部26は、受信されたページを、例えば、プリンタで印刷したり、記録媒体に蓄積したりしてもよいし、外部の装置に送信したり、他のプログラムなどに引き渡したりしても構わない。
格納部11、ページ格納部111、およびユーザ格納部21は、例えば、ハードディスクやフラッシュメモリといった不揮発性の記録媒体が好適であるが、RAMなど揮発性の記録媒体でも実現可能である。
格納部11等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部11等で記憶されるようになってもよく、ネットワークや通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。入力デバイスは、例えば、マイクロフォン、キーボード、マウス、タッチパネル等、何でもよい。
ユーザ受付部22は、マイクロフォン等の入力デバイスを含むと考えても、含まないと考えてもよい。受付部12等は、入力デバイスのドライバーソフトによって、または入力デバイスとそのドライバーソフトとで実現され得る。
処理部13、商品情報決定部131、フォーカス移動部132、購入情報取得部133、ページ生成部134、およびユーザ処理部23は、通常、MPUやメモリ等から実現され得る。処理部13等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。ただし、処理手順は、ハードウェア(専用回路)で実現してもよい。
受信部14、入力情報受信部121、およびユーザ受信部25は、通常、有線または無線の通信手段(例えば、ネットワークカードやモデム等の通信モジュール)で実現されるが、放送を受信する手段(例えば、放送受信モジュール)で実現されてもよい。
送信部14、ページ送信部141、およびユーザ送信部24は、通常、有線または無線の通信手段で実現されるが、放送手段(例えば、放送モジュール)で実現されてもよい。
ユーザ出力部26は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えてもよい。ユーザ出力部26は、出力デバイスのドライバーソフトによって、または出力デバイスとそのドライバーソフトとで実現され得る。
次に、情報システムの動作について図2のフローチャートを用いて説明する。なお、既出の事項に関する説明は、省略または簡略化している。
図2は、商品情報管理装置1の動作を説明するフローチャートである。
(ステップS201)処理部13は、入力情報受信部121がユーザ識別子と対に入力情報を受信したか否かを判別する。入力情報受信部121がユーザ識別子と対に入力情報を受信した場合はステップS202に進み、受信していない場合はステップS203に進む。
(ステップS202)商品情報決定部131は、受信された入力情報に対応する商品情報を、例えば、ページ格納部111に格納されている2以上のページの全部または一部を検索することにより決定する。商品情報決定部131は、決定した商品情報の商品識別子を、受信されたユーザ識別子と対に保持する。
(ステップS203)処理部13は、2以上の商品情報が決定されたか否かを判別する。例えば、商品情報決定部131が、受信されたユーザ識別子と対に2以上の商品識別子を保持している場合、処理部13は、2以上の商品情報が決定されたと判別する。他方、受信されたユーザ識別子と対に保持されている商品識別子の数が2に満たない場合、処理部13は、1以下の商品情報しか決定されていないと判別する。2以上の商品情報が決定された場合はステップS204に進み、1以下の商品情報しか決定されていない場合はステップS203に進む。
(ステップS204)ページ生成部134は、ページ生成情報を用いて、決定された2以上の商品情報からなるページを生成する。
(ステップS205)ページ送信部141は、ページ生成部134が生成したページを、上記入力情報と対に受信されたユーザ識別子で識別されるユーザ端末2に送信する。その後、ステップS201に戻る。
(ステップS206)処理部13は、一の商品情報が決定されたか否かを判別する。例えば、商品情報決定部131が、受信されたユーザ識別子と対に1つの商品識別子を保持している場合、処理部13は、一の商品情報が決定されたと判別する。他方、受信されたユーザ識別子と対に1つの商品識別子も保持されていない場合、処理部13は、1つの商品情報も決定されていないと判別する。一の商品情報が決定された場合はステップS204に進み、1つの商品情報も決定されていない場合はステップS201に戻る。
(ステップS207)購入情報取得部133は、入力情報受信部121が受信した入力情報から購入情報を取得する。なお、購入情報の詳細については、前述したので繰り返さない。
(ステップS208)フォーカス移動部132は、商品情報決定部131が決定した商品情報に対応する入力フィールドに、購入情報取得部133が取得した購入情報を代入する。
(ステップS209)フォーカス移動部132は、商品情報決定部131が決定した商品情報にフォーカスを移動させる。なお、決定された商品情報にフォーカスを移動させることは、決定された商品情報に対応付いたUI部品にフォーカスを移動させる場合も含む。こうしたフォーカス移動の詳細については、前述したので繰り返さない。
(ステップS210)ページ送信部141は、フォーカス移動部132によってフォーカス移動された商品情報を含み、かつ、当該商品情報に対応する入力フィールドに購入情報が代入されたページを、受信されたユーザ識別子で識別されるユーザ端末2に送信する。その後、ステップS201に戻る。
なお、図2のフローチャートでは、処理部13は、2以上の商品情報が決定されたか否かを判別し、ページ生成部134は、2以上の商品情報が決定された場合にページを生成しているが、一般には、処理部13は、所定の条件が満足されたか否かを判別し、ページ生成部134は、所定の条件が満足された場合にページを生成すればよい。また、図2のフローチャートでは、2以上の商品情報が決定されていない場合、処理部13は、一の商品情報が決定されたか否かをさらに判別し、フォーカス移動部132は、一の商品情報が決定された場合にフォーカス移動等を行っているが、一般には、フォーカス移動部132は、所定の条件が満足されない場合にフォーカス移動等を行えばよい。
また、図2のフローチャートにおいて、商品情報管理装置1の電源オンやプログラムの起動に応じて処理が開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始または終了のトリガは問わない。
図3は、ユーザ端末2の動作を説明するフローチャートである。
(ステップS301)ユーザ受付部22は、音声入力を受け付けた否かを判別する。音声入力を受け付けた場合はステップS302に進み、受け付けていない場合はステップS301に戻る。
(ステップS302)ユーザ受付部22は、入力された音声の波形に対応する波形データである入力情報を取得する。好ましくは、ユーザ受付部22は、音声認識機能を有しており、当該波形データを用いて音声認識を行い、その結果を示すテキストデータである入力情報を取得する。
(ステップS303)ユーザ送信部24は、ユーザ受付部22が取得した入力情報を、ユーザ格納部21に格納されているユーザ識別子と対に、商品情報管理装置1に送信する。
(ステップS304)ユーザ処理24は、ユーザ受信部25が商品情報管理装置1からページを受信した否かを判別する。商品情報管理装置1からページを受信した場合はステップS305に進み、受信していない場合はステップS301に戻る。
(ステップS305)ユーザ出力部26は、ユーザ受信部25が受信したページを、ディスプレイ等の出力デバイスを介して出力する。これによって、ディスプレイに、入力情報に対応する商品情報を含むページが表示される。
なお、図3のフローチャートにおいて、ユーザ端末2の電源オンやプログラムの起動に応じて処理が開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始または終了のトリガは問わない。
以下、本実施の形態における情報システムの具体的な動作例について説明する。なお、以下の説明は、種々の変更が可能であり、本発明を何ら限定するものではない。また、既出の事項に関する説明は、省略または簡略化している。
商品情報管理装置1の格納部11には、図4に示すような2以上のページが格納されている。ページのデータ構造を図4に示す。ページは、1または2以上の商品情報、UI部品群、および部品位置情報群などを有する。商品情報は、商品識別子、画像、テキスト、および商品位置情報を含む。
2以上のページは、ページ識別子P1,P2,…に対応付いている。例えば、ページ識別子“P1”に対応するページ(以下、ページP1と記す場合がある)は、4つの商品情報を有する。1番目の商品情報は、商品識別子“黒ペンaaa”、黒ペンaaaの画像、テキスト“1本50円”、および商品位置情報(x1,y1)を含む。2番の商品情報は、商品識別子“赤ペンbbb”、赤ペンbbbの画像、テキスト“1本100円”、および商品位置情報(x2,y2)を含む。3番目の商品情報は、商品識別子“黒ペンccc”、黒ペンcccの画像、テキスト“3本200円”、および商品位置情報(x3,y3)を含む。
ページP1が有する上記1番目の商品情報には、入力フィールド、および購入ボタンが対応付いており、当該入力フィールドには、部品位置情報(x11,y11)が対応付き、当該購入ボタンには、部品位置情報(x12,y12)が対応付いている。また、上記2番目の商品情報にも、入力フィールド、および購入ボタンが対応付き、当該入力フィールドには、部品位置情報(x21,y21)が対応付き、当該購入ボタンには、部品位置情報(x22,y22)が対応付いている。さらに、上記3番目の商品情報にも、入力フィールド、および購入ボタンが対応付き、当該入力フィールドには、部品位置情報(x31,y31)が対応付き、当該購入ボタンには、部品位置情報(x32,y32)が対応付いている。
ユーザ端末2のディスプレイには、図5に示すような初期ページが表示されている。図5は、初期ページの出力例である。初期ページとは、起動後、最初に表示されるページである。この初期ページは、ユーザ端末2の起動に応じて、商品情報管理装置1に格納されている上記ページP1がユーザ端末2に送信された結果、ユーザ端末2のディスプレイに表示されたページである。
表示された初期ページは、5行×6列の表の形式を有する。この表の1行目には、項目名として、格納されている商品識別子に対応する「品番」および「品名」と、格納されている画像に対応する「画像」と、格納されているテキストに対応する「価格」と、格納されているUI部品群に対応する「数量」および「購入ボタン」との6つが配置されている。
また、2行目には、品番「aaa」と、品名「黒ペン」と、黒ペンaaaの画像と、価格「1本50円」と、数量が入力される入力フィールドと、購入ボタンとが配置されている。また、3行目には、品番「bbb」と、品名「赤ペン」と、赤ペンbbbの画像と、価格「1本100円」と、数量が入力される入力フィールドと、購入ボタンとが配置されている。さらに、4行目には、品番「ccc」と、品名「赤ペン」と、赤ペンcccの画像と、価格「3本200円」と、数量が入力される入力フィールドと、購入ボタンとが配置されている。5行目にも、同様の6つの情報が配置されている。
初期ページでは、どこにもフォーカスは当たっておらず、フォーカス移動部132は、フォーカス情報“Null”を保持している。“Null”は、当該情報の不存在を意味するフラグである。フォーカス情報“Null”は、現在、どこにもフォーカスが当たっていないことを示している。
いま、ユーザ端末2のユーザが「黒ペン」を音声入力したとする。ユーザ端末2において、ユーザ受付部22が、マイクロフォンを介してこれを受け付け、その波形に対応する波形データである入力情報を取得する。さらに、ユーザ受付部22は、当該波形データを用いて音声認識を行い、その結果を示すテキストデータである入力情報“黒ペン”を取得する。ユーザ送信部24は、こうして取得された入力情報“黒ペン”を商品情報管理装置1に送信する。
商品情報管理装置1において、入力情報受信部121が上記入力情報“黒ペン”を受信し、商品情報決定部131は、この入力情報“黒ペン”をキーとして、ページ格納部111に格納されている2以上のページP1,P2,…を検索することにより、入力情報“黒ペン”に対応する商品情報を、ページP1が有する上記1番目の商品情報に決定する。商品情報決定部131は、決定した商品情報の商品識別子“黒ペンaaa”を保持する。
こうして一の商品情報が決定されたことに応じて、購入情報取得部133は、受信された入力情報“黒ペン”から購入情報の取得を試みるが、受信された入力情報には購入情報が含まれておらず、何も取得されない。このため、フォーカス移動部132は、入力フィールドへの自動入力は行わず、決定された商品情報である上記1番目の商品情報にフォーカスを移動させて、フォーカス情報“Null”を“(x1,y1)”に更新する。ページ送信部141は、こうしてフォーカス移動された商品情報を含むページP1をユーザ端末2に送信する。
ただし、通常、フォーカス移動された商品情報を含むページP1の全部を送信する必要はなく、フォーカス移動前の商品情報を含むページP1との差分を送信すれば足りる。差分は、例えば、フォーカス移動された結果、例えば、拡大、着色等で強調された商品情報でもよいし、または、表示された表中の、位置情報(x1,y1)が示す位置に配置された商品情報を、例えば、拡大、着色等で強調表示する旨の命令などでもよい。なお、このことは、以下の具体例にも共通する。
また、フォーカスの移動先は、決定された商品情報それに対応する入力フィールドの部品位置情報(x21,y21)の位置でもよい。この場合におけるユーザの次のアクションは、通常、数量の押下なので、入力フィールドに対応する部品位置情報(x11,y11)の位置に移動させることは好適である。なお、本例のように、入力情報に数量を示す購入情報が含まれていない場合、フォーカス移動部132は、例えば、入力フィールドに初期値“1”を自動入力してもよく、その場合、フォーカスの移動先は、決定された商品情報それに対応する購入ボタンの部品位置情報(x12,y12)の位置でも構わない。
ユーザ端末2において、ユーザ受信部25がフォーカス移動された商品情報を含むページP1を受信し、ユーザ出力部26は、受信されたページP1を出力する。
これによって、ユーザ端末2のディスプレイには、図6に示すようなページが表示される。このページでは、表の2行目に配置された品番「aaa」と、品名「黒ペン」と、黒ペンaaaの画像と、価格「1本50円」とが、強調表示されている。また、これに対応する入力フィールドには、入力待ち状態を示すプロンプトが表示されている。これにより、ユーザは、所望の本数を速やかに入力できる。
図5に示した初期ページが表示された状態で、ユーザが「黒ペン、2本」を音声入力した場合の動作は、例えば、次のようになる。
ユーザ端末2において、ユーザ受付部22が、マイクロフォンを介して「黒ペン、2本」を受け付け、音声認識の結果を示すテキストデータである入力情報“黒ペン,2本”を取得する。ユーザ送信部24は、こうして取得された入力情報“黒ペン,2本”を商品情報管理装置1に送信する。
商品情報管理装置1において、入力情報受信部121が上記入力情報“黒ペン,2本”を受信し、商品情報決定部131は、この入力情報に含まれる商品識別子“黒ペン”をキーとして、ページ格納部111に格納されている2以上のページP1,P2,…を検索することにより、入力情報“黒ペン,2本”に対応する商品情報を、ページP1が有する上記1番目の商品情報に決定する。商品情報決定部131は、決定した商品情報の商品識別子“黒ペンaaa”を保持する。
こうして一の商品情報が決定されたことに応じて、購入情報取得部133は、受信された入力情報“黒ペン,2本”から購入情報“2本”を取得する。フォーカス移動部132は、商品識別子“黒ペンaaa”に対応する入力フィールドに、取得された購入情報“2本”に対する数量“2”を自動入力する。次に、フォーカス移動部132は、決定された商品情報に対応するUI部品である購入ボタンにフォーカスを移動させて、フォーカス情報“Null”を“(x12,y12)”に更新する。ページ送信部141は、こうしてフォーカス移動された商品情報を含むページP1をユーザ端末2に送信する。
なお、フォーカスの移動先は、決定された商品情報に対応する商品位置情報(x1,y1)の位置でも、それに対応する入力フィールドの部品位置情報(x11,y11)の位置でもよいのはいうまでもない。ただし、この場合におけるユーザの次のアクションは、通常、購入ボタンの押下なので、押下ボタンに対応する部品位置情報(x12,y12)の位置に移動させることは好適である。
ユーザ端末2において、ユーザ受信部25がフォーカス移動された商品情報を含むページP1を受信し、ユーザ出力部26は、受信されたページP1を出力する。
これによって、ユーザ端末2のディスプレイには、図7に示すようなページが表示される。このページでは、表の2行目に配置された入力フィールドに、購入情報“2本”に対応する数量「2」が自動入力され、その横の購入ボタンが強調表示されている。これにより、ユーザは、黒ペン3本を速やかに購入できる。
図5に示した初期ページが表示された状態で、ユーザが「赤ペン」を音声入力した場合の動作は、例えば、次のようになる。
ユーザ端末2において、ユーザ受付部22が、マイクロフォンを介して「赤ペン」を受け付け、音声認識の結果を示すテキストデータである入力情報“黒ペン,2本”を取得する。ユーザ送信部24は、こうして取得された入力情報“赤ペン”を商品情報管理装置1に送信する。
商品情報管理装置1において、入力情報受信部121が上記入力情報“赤ペン”を受信し、商品情報決定部131は、この入力情報“赤ペン”をキーとして、ページ格納部111に格納されている2以上のページP1,P2,…を検索することにより、入力情報“赤ペン”に対応する商品情報を、ページP1が有する上記1番目の商品情報および2番目の商品情報、ならびにページP2が有する商品情報に決定する。商品情報決定部131は、決定した3つの商品情報の商品識別子“赤ペンbbb”,“赤ペンccc”,および“赤ペンeee”を保持する。
こうして3つの商品情報が決定されたことに応じて、ページ生成部134は、ページ生成情報を用いて、決定された3つの商品情報からなるページを生成する。ページ送信部141は、生成されたページをユーザ端末2に送信する。
ユーザ端末2において、ユーザ受信部25が、上記生成されたページを受信し、ユーザ出力部26は、受信されたページを出力する。
これによって、ユーザ端末2のディスプレイには、図8に示すようなページが表示される。このページに、4行×6列の表の形式を有する。この表の1行目は、図5の表の1行目と同じである。この表の2行目および3行目は、図5の表の3行目および4行目と同じである。この表の4行目には、格納されているページP2の商品識別子“赤ペンeee”に対応する品番「eee」および品名「赤ペン」等の情報が配置されている。こうして商品情報を絞り込むことで、ユーザは、多数の赤ペンの中から所望の赤ペンを速やかに選択できる。
なお、フォーカス位置情報が(x0,y0)の状態で、ユーザが「赤ペン」を音声入力した場合には、フォーカス移動部132は、フォーカス位置情報(x0,y0)と、「赤ペンbbb」に対応する商品位置情報(x2,y2)、および「赤ペンbbb」に対応する商品位置情報(x3,y3)の各々との間の距離を算出し、算出した2つの距離のうち最短距離に対応する商品位置情報の位置に、フォーカスを移動させてもよい。
図8に示したページが表示された状態で、ユーザが「bbb、3本」を音声入力した場合の動作は、例えば、次のようになる。
ユーザ端末2において、ユーザ受付部22が、マイクロフォンを介して「bbb、3本」を受け付け、音声認識の結果を示すテキストデータである入力情報“bbb,3本”を取得する。ユーザ送信部24は、こうして取得された入力情報“bbb,3本”を商品情報管理装置1に送信する。
商品情報管理装置1において、入力情報受信部121が上記入力情報“bbb,3本”を受信し、商品情報決定部131は、この入力情報に含まれる商品識別子“bbb”をキーとして、ページ格納部111に格納されている2以上のページP1,P2,…を検索することにより、入力情報“bbb,3本”に対応する商品情報を、ページP1が有する上記2番目の商品情報に決定する。商品情報決定部131は、決定した商品情報の商品識別子“赤ペンbbb”を保持する。
こうして一の商品情報が決定されたことに応じて、購入情報取得部133は、受信された入力情報“bbb,3本”から購入情報“3本”を取得する。フォーカス移動部132は、商品識別子“赤ペンbbb”に対応する入力フィールドに、取得された購入情報“3本”に対する数量“3”を自動入力する。次に、フォーカス移動部132は、決定された商品情報に対応するUI部品である購入ボタンにフォーカスを移動させて、フォーカス情報“Null”を“(x22,y22)”に更新する。ページ送信部141は、こうしてフォーカス移動された商品情報を含むページP1をユーザ端末2に送信する。
なお、フォーカスの移動先は、決定された商品情報に対応する商品位置情報(x2,y2)の位置でも、それに対応する入力フィールドの部品位置情報(x21,y21)の位置でもよいのはいうまでもない。ただし、この場合におけるユーザの次のアクションは、通常、購入ボタンの押下なので、押下ボタンに対応する部品位置情報(x22,y22)の位置に移動させることは好適である。
ユーザ端末2において、ユーザ受信部25がフォーカス移動された商品情報を含むページP1を受信し、ユーザ出力部26は、受信されたページP1を出力する。
これによって、ユーザ端末2のディスプレイには、図9に示すようなページが表示される。このページでは、表の2行目に配置された品番「bbb」が強調表示され、対応する入力フィールドに、購入情報“3本”に対応する数量「3」が自動入力され、さらに、その隣の購入ボタンが強調表示されている。これにより、ユーザは、購入ボタンを押下するだけで、赤ペンbbb3本を速やかに購入できる。
以上、本実施の形態によれば、1または2以上の商品情報を含む1以上のページがページ格納部111に格納されており、商品情報管理装置1は、ユーザが発した音声である入力情報または音声から構成された入力情報をユーザ端末2から受信し、入力情報に対応する商品情報を決定し、決定した商品情報にフォーカスを移動させ、フォーカス移動された商品情報を含むページをユーザ端末2に送信することにより、多数の商品情報が掲載されたページから、音声により、ユーザ所望の商品情報にフォーカスが当たったページをユーザ端末2に出力できる。
また、ページ格納部111には、2以上のページが格納されており、商品情報管理装置1は、ユーザ端末2で出力されているページ以外のページに含まれる商品情報を決定することにより、多数の商品情報が掲載された2以上のページから、音声により、ユーザ所望の商品情報にフォーカスが当たった一のページをユーザ端末2に出力できる。
また、商品情報管理装置1は、決定した商品情報を購入するための次のアクションを受け付けるユーザインターフェイス部品であり、予め決められたタイプのユーザインターフェイス部品にフォーカスを移動させることにより、多数の商品情報が掲載された2以上のページから、音声により、ユーザ所望の商品情報のうちの、次のアクションを入力する可能性の高いユーザインターフェイス部品にフォーカスが当たった一のページをユーザ端末2に出力できる。
また、商品情報管理装置1は、入力情報に含まれる情報であり、商品購入に利用する情報である購入情報を取得し、決定した商品情報に対応する入力フィールドに、購入情報を代入し、かつ商品情報にフォーカスを移動させることにより、ユーザは容易に商品を購入できる。
また、商品情報管理装置1は、2以上の商品情報を決定した場合、2以上の商品情報のうち、現在のフォーカスの位置から最も移動が少ない位置の商品情報にフォーカスを移動させることにより、音声により、多数の商品情報からユーザ所望の商品情報を容易に見付けることができる。
また、商品情報管理装置1は、2以上の商品情報を決定した場合、2以上の商品情報からなるページを生成し、生成したページをユーザ端末2に送信することにより、音声により、多数の商品情報からユーザ所望の商品情報を容易に見付けることができる。
また、商品情報管理装置1は、ページを生成した後、商品情報を決定した場合、ページに含まれる商品情報であり、決定した商品情報を含むページを生成することにより、音声により、多数の商品情報からユーザ所望の商品情報を容易に見付けることができる。
また、商品情報管理装置1は、決定した商品情報が所定の条件を満たす場合に、当該商品情報からなるページを生成し、決定した商品情報が所定の条件を満たさない場合に、当該商品情報にフォーカスを移動させることにより、音声により、多数の商品情報からユーザ所望の商品情報を容易に見付けることができる。
さらに、本実施の形態における処理は、ソフトウェアで実現してもよい。そして、このソフトウェアをソフトウェアダウンロード等により配布してもよい。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布してもよい。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報処理装置を実現するソフトウェアは、例えば、以下のようなプログラムである。
つまり、コンピュータがアクセス可能な記録媒体は、1または2以上の商品情報を含む1以上のページが格納されるページ格納部111を具備し、このプログラムは、コンピュータを、ユーザが発した音声である入力情報または当該音声から構成された入力情報をユーザ端末2から受信する入力情報受信部121と、入力情報に対応する商品情報を決定する商品情報決定部131と、商品情報決定部131が決定した商品情報にフォーカスを移動させるフォーカス移動部132と、フォーカス移動された商品情報を含むページをユーザ端末2に送信するページ送信部として機能させるためのプログラムである。
図10は、本実施の形態におけるプログラムを実行して、商品情報管理装置1等を実現するコンピュータシステム900の外観図である。本実施の形態は、コンピュータハードウェアおよびその上で実行されるコンピュータプログラムによって実現され得る。図10において、コンピュータシステム900は、ディスクドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、ディスプレイ904と、マイクロフォン917とを備える。なお、キーボード902やマウス903やディスプレイ904やマイクロフォン917をも含むシステム全体をコンピュータと呼んでもよい。
図11は、コンピュータシステム900の内部構成の一例を示す図である。図11において、コンピュータ901は、ディスクドライブ905に加えて、MPU911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、およびデータを記憶するストレージ914と、MPU911、ROM912等を相互に接続するバス915と、外部ネットワークや内部ネットワーク等のネットワークへの接続を提供するネットワークカード916と、マイクロフォン917とを備える。ストレージ914は、例えば、ハードディスク、SSD、フラッシュメモリなどである。
コンピュータシステム900に、商品情報管理装置1等の機能を実行させるプログラムは、例えば、DVD、CD−ROM等のディスク921に記憶されて、ディスクドライブ905に挿入され、ストレージ914に転送されてもよい。これに代えて、そのプログラムは、ネットワークを介してコンピュータ901に送信され、ストレージ914に記憶されてもよい。プログラムは、実行の際にRAM913にロードされる。なお、プログラムは、ディスク921、またはネットワークから直接、ロードされてもよい。また、ディスク921に代えて他の着脱可能な記録媒体(例えば、DVDやメモリカード等)を介して、プログラムがコンピュータシステム900に読み込まれてもよい。
プログラムは、コンピュータの詳細を示す901に、商品情報管理装置1等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
なお、上述したコンピュータシステム900は、サーバまたは据え置き型のPCであるが、ユーザ端末2は、例えば、タブレット端末やスマートフォンやノートPCといった、携帯端末で実現されてもよい。この場合、例えば、キーボード902およびマウス903はタッチパネルに、ディスクドライブ905はメモリカードスロットに、ディスク921はメモリカードに、それぞれ置き換えられることが望ましい。ただし、以上は例示であり、商品情報管理装置1等を実現するコンピュータのハードウェア構成は問わない。
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(受信部12および送信部14など)は、物理的に一の媒体で実現されてもよいことは言うまでもない。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。