(57)【特許請求の範囲】
【請求項１】
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得手段と、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行手段と、
前記特定情報に応じた販売管理アプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行手段と、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定手段と、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記アプリケーション実行手段は、前記特定手段によって特定された前記販売管理データベースに対して、前記販売関連情報を蓄積することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記アプリケーション実行手段は、前記携帯通信端末に入力された販売情報を取得し、前記特定手段によって特定された前記販売管理データベースに対して、前記販売情報を蓄積することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記アプリケーション実行手段は、前記携帯通信端末に内蔵された撮像手段を用いて商品に付されたバーコードを読み取ることにより取得したバーコード情報を受信することにより、前記商品の販売価格情報を取得することを特徴とする請求項１、２または３に記載の情報処理装置。
【請求項５】
前記アプリケーション実行手段は、前記携帯通信端末に接続されたバーコード読取手段を用いて商品に付されたバーコードを読み取ることにより取得したバーコード情報を受信することにより、前記商品の販売価格情報を取得することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記アプリケーション実行手段は、前記携帯通信端末から、販売時における、前記携帯通信端末の位置情報および時刻情報の少なくともいずれか一方を取得し、前記販売関連情報と共に前記販売管理データベースに蓄積することを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記販売補助デバイスは、自動釣銭機であって、前記販売関連情報は、前記自動釣銭機に投入された金銭および払い出した釣銭に関する情報であることを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記販売補助デバイスは、レシート発行機であることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記販売補助デバイスから前記携帯通信端末を介して販売関連情報を受信する受信手段をさらに有することを特徴とする請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記携帯通信端末は、前記販売補助デバイスとしてのディスプレイに接続され、
前記アプリケーション実行手段はさらに、前記特定情報に応じた販売管理アプリケーションプログラムを実行して、前記ディスプレイに、販売処理用画面情報を送信することを特徴とする請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記携帯通信端末は、前記販売補助デバイスとしての複数のディスプレイに接続され、
前記アプリケーション実行手段はさらに、前記特定情報に応じた販売管理アプリケーションプログラムを実行して、前記複数のディスプレイに、販売処理用画面情報を送信することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得ステップと、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行ステップと、
前記特定情報に応じたアプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行ステップと、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定ステップと、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求ステップと、
を含むことを特徴とする情報処理方法。
【請求項１３】
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得ステップと、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行ステップと、
前記特定情報に応じたアプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行ステップと、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定ステップと、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求ステップと、
をコンピュータに実行させることを特徴とする情報処理プログラム。
【請求項１４】
通信インタフェースを介して販売補助デバイスが接続された場合に、自端末が該販売補助デバイスを制御できるか否かを判定する判定手段と、
自端末が前記販売補助デバイスを制御できないと判定した場合に、無線通信ネットワークを介してサーバにアクセスし、前記販売補助デバイスの制御をリクエストする要求手段と、
前記販売補助デバイスと前記サーバとの間の通信が確立して前記サーバが前記販売補助デバイスから販売関連情報を取得できるように、前記通信インタフェースおよび前記無線通信ネットワークを介する前記販売補助デバイスと前記サーバとの間の信号転送を制御する信号転送制御手段と、
前記サーバが前記販売補助デバイスに対応する販売管理アプリケーションプログラムを実行することにより生成された販売処理用画面情報を前記サーバから受信する受信手段と、
を備えたことを特徴とする携帯通信端末。
【請求項１５】
通信インタフェースを介して販売補助デバイスが接続された場合に、自端末が該販売補助デバイスを制御できるか否かを判定する判定ステップと、
自端末が前記販売補助デバイスを制御できないと判定した場合に、無線通信ネットワークを介してサーバにアクセスし、前記販売補助デバイスの制御をリクエストする要求ステップと、
前記販売補助デバイスと前記サーバとの間の通信が確立して前記サーバが前記販売補助デバイスから販売関連情報を取得できるように、前記通信インタフェースおよび前記無線通信ネットワークを介する前記販売補助デバイスと前記サーバとの間の信号転送を制御する信号転送制御ステップと、
前記サーバが前記販売補助デバイスに対応する販売管理アプリケーションプログラムを実行することにより生成された販売処理用画面情報を前記サーバから受信する受信ステップと、
を含むことを特徴とする携帯通信端末の制御方法。
【請求項１６】
通信インタフェースを介して販売補助デバイスが接続された場合に、自端末が該販売補助デバイスを制御できるか否かを判定する判定ステップと、
自端末が前記販売補助デバイスを制御できないと判定した場合に、無線通信ネットワークを介してサーバにアクセスし、前記販売補助デバイスの制御をリクエストする要求ステップと、
前記販売補助デバイスと前記サーバとの間の通信が確立して前記サーバが前記販売補助デバイスから販売関連情報を取得できるように、前記通信インタフェースおよび前記無線通信ネットワークを介する前記販売補助デバイスと前記サーバとの間の信号転送を制御する信号転送制御ステップと、
前記サーバが前記販売補助デバイスに対応する販売管理アプリケーションプログラムを実行することにより生成された販売処理用画面情報を前記サーバから受信する受信ステップと、
をコンピュータに実行させることを特徴とする携帯通信端末の制御プログラム。
【請求項１７】
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得手段と、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行手段と、
前記特定情報に応じた販売管理アプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行手段と、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定手段と、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求手段と、
を備えた情報処理装置と、
前記携帯通信端末と、
前記販売補助デバイスと、
を含むことを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、販売管理技術に関する。
【背景技術】
【０００２】
上記技術分野において、特許文献１には、周辺機器の機種をＰＯＳ（Point of Sales、販売時点情報管理）端末（ＰＣ）から受信すると、各機種にそれぞれ対応するデバイスドライバ等のソフトウェアを送信してインストールさせる管理サーバが開示されている。
【０００３】
さらに、特許文献２の段落００４７、００４８には、支配人用端末から店舗コードを用いて、その店舗のＰＯＳ端末に売り上げの問い合わせを行い、ＰＯＳ端末は要求された売り上げ情報を支配人用端末に送信する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−０８４７５９号公報
【０００５】
【特許文献２】特開平０９−２６５５８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記文献に記載の技術では、十分な記憶容量を持つＰＣでなければ、ＰＯＳシステムを構成することができなかった。また、既存のＰＯＳシステムと連動する端末を簡易に導入することはできなかった。
【０００７】
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明に係る情報処理装置は、
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得手段と、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行手段と、
前記特定情報に応じた販売管理アプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行手段と、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定手段と、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求手段と、
を備えた。
【０００９】
上記目的を達成するため、本発明に係る方法は、
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得ステップと、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行ステップと、
前記特定情報に応じたアプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行ステップと、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定ステップと、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求ステップと、
を含む。
【００１０】
上記目的を達成するため、本発明に係るプログラムは、
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得ステップと、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行ステップと、
前記特定情報に応じたアプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行ステップと、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定ステップと、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求ステップと、
をコンピュータに実行させる。
【００１１】
上記目的を達成するため、本発明に係る携帯通信端末は、
通信インタフェースを介して販売補助デバイスが接続された場合に、自端末が該販売補助デバイスを制御できるか否かを判定する判定手段と、
自端末が前記販売補助デバイスを制御できないと判定した場合に、無線通信ネットワークを介してサーバにアクセスし、前記販売補助デバイスの制御をリクエストする要求手段と、
前記販売補助デバイスと前記サーバとの間の通信が確立して前記サーバが前記販売補助デバイスから販売関連情報を取得できるように、前記通信インタフェースおよび前記無線通信ネットワークを介する前記販売補助デバイスと前記サーバとの間の信号転送を制御する信号転送制御手段と、
前記サーバが前記販売補助デバイスに対応する販売管理アプリケーションプログラムを実行することにより生成された販売処理用画面情報を前記サーバから受信する受信手段と、
を備えたことを特徴とする。
【００１２】
上記目的を達成するため、本発明に係る携帯通信端末の制御方法は、
通信インタフェースを介して販売補助デバイスが接続された場合に、自端末が該販売補助デバイスを制御できるか否かを判定する判定ステップと、
自端末が前記販売補助デバイスを制御できないと判定した場合に、無線通信ネットワークを介してサーバにアクセスし、前記販売補助デバイスの制御をリクエストする要求ステップと、
前記販売補助デバイスと前記サーバとの間の通信が確立して前記サーバが前記販売補助デバイスから販売関連情報を取得できるように、前記通信インタフェースおよび前記無線通信ネットワークを介する前記販売補助デバイスと前記サーバとの間の信号転送を制御する信号転送制御ステップと、
前記サーバが前記販売補助デバイスに対応する販売管理アプリケーションプログラムを実行することにより生成された販売処理用画面情報を前記サーバから受信する受信ステップと、
を含むことを特徴とする。
【００１３】
上記目的を達成するため、本発明に係る携帯通信端末の制御プログラムは、
通信インタフェースを介して販売補助デバイスが接続された場合に、自端末が該販売補助デバイスを制御できるか否かを判定する判定ステップと、
自端末が前記販売補助デバイスを制御できないと判定した場合に、無線通信ネットワークを介してサーバにアクセスし、前記販売補助デバイスの制御をリクエストする要求ステップと、
前記販売補助デバイスと前記サーバとの間の通信が確立して前記サーバが前記販売補助デバイスから販売関連情報を取得できるように、前記通信インタフェースおよび前記無線通信ネットワークを介する前記販売補助デバイスと前記サーバとの間の信号転送を制御する信号転送制御ステップと、
前記サーバが前記販売補助デバイスに対応する販売管理アプリケーションプログラムを実行することにより生成された販売処理用画面情報を前記サーバから受信する受信ステップと、
をコンピュータに実行させることを特徴とする。
【００１４】
上記目的を達成するため、本発明に係る情報処理システムは、
販売補助デバイスが携帯通信端末に対して接続された場合に、前記携帯通信端末を介して、前記販売補助デバイスを特定する特定情報を取得する取得手段と、
前記特定情報に応じたドライバプログラムを実行して、前記販売補助デバイスを制御するドライバ実行手段と、
前記特定情報に応じた販売管理アプリケーションプログラムを実行して、前記携帯通信端末に、販売処理用画面情報を送信するアプリケーション実行手段と、
前記販売補助デバイスの制御により取得した販売関連情報を蓄積すべき販売管理データベースを、前記特定情報に基づいて特定する特定手段と、
前記携帯通信端末に接続された販売補助デバイスにエラーが生じた場合に、前記販売補助デバイスにあらかじめ対応付けられた他の端末に対して、該他の端末からの前記販売補助デバイスの遠隔操作を要求する要求手段と、
を備えた情報処理装置と、
前記携帯通信端末と、
前記販売補助デバイスと、
を含む。
【発明の効果】
【００１５】
本発明によれば、既存のＰＯＳシステムと連動する端末を簡易に導入することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１実施形態に係る情報処理装置の構成を示すブロック図である。
【図２】本発明の第２実施形態に係るクラウドサーバを含むシステムの構成を示す図である。
【図３】本発明の第２実施形態に係るクラウドサーバを含むシステムの利用例を示す図である。
【図４】本発明の第２実施形態に係るクラウドサーバの機能構成を示すブロック図である。
【図５】本発明の第２実施形態に係るスマートデバイスの機能構成を示すブロック図である。
【図６】本発明の第２実施形態に係るクラウドサーバを含むシステムの全体的な処理の流れを示すシーケンス図である。
【図７Ａ】本発明の第２実施形態に係るクラウドサーバで行なわれる処理の流れを示すフローチャートである。
【図７Ｂ】本発明の第２実施形態に係る情報処理システムでのパケット送受信処理の例を示す図である。
【図７Ｃ】本発明の第２実施形態に係る情報処理システムでのパケット送受信処理の他の例を示す図である。
【図７Ｄ】本発明の第２実施形態に係る情報処理システムでのパケット送受信処理のさらに他の例を示す図である。
【図７Ｅ】本発明の第２実施形態に係る情報処理システムで用いられるデバイスデータベースの構成を示す図である。
【図８Ａ】本発明の第２実施形態に係る情報処理システムでのサーバとデバイス間での通信確立処理の一例を示す図である。
【図８Ｂ】本発明の第２実施形態に係る情報処理システムでのサーバとデバイス間での通信確立処理の一例を示す図である。
【図８Ｃ】本発明の第２実施形態に係る情報処理システムでのサーバとデバイス間での通信確立処理の一例を示す図である。
【図８Ｄ】本発明の第２実施形態に係る情報処理システムでのサーバとデバイス間での通信確立処理の一例を示す図である。
【図９Ａ】本発明の第２実施形態においてスマートデバイスに表示される表示画面例を示す図である。
【図９Ｂ】本発明の第２実施形態においてスマートデバイスに表示される表示画面例を示す図である。
【図９Ｃ】本発明の第２実施形態においてスマートデバイスに表示される表示画面例を示す図である。
【図１０】本発明の第２実施形態に係る情報処理システムで用いられるデバイスデータベースの構成を示す図である。
【図１１】本発明の第２実施形態に係る情報処理システムで用いられる販売管理データベースの構成を示す図である。
【図１２】本発明の第３実施形態に係るクラウドサーバを含むシステムの構成を示す図である。
【図１３】本発明の第３実施形態に係るクラウドサーバで用いられる商品特定テーブルの構成を示す図である。
【図１４】本発明の第４実施形態に係るクラウドサーバを含むシステムの構成を示す図である。
【図１５】本発明の第５実施形態に係るクラウドサーバを含むシステムの構成を示す図である。
【図１６】本発明の第６実施形態に係るクラウドサーバを含むシステムの構成を示す図である。
【図１７】本発明の第６実施形態に係るクラウドサーバの構成を示す図である。
【図１８】本発明の第６実施形態に係るクラウドサーバを含むシステムの全体的な処理の流れを示すシーケンス図である。
【図１９】本発明の第７実施形態に係るクラウドサーバを含むシステムの構成を示す図である。
【発明を実施するための形態】
【００１７】
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。
【００１８】
［第１実施形態］
本発明の第１実施形態としての情報処理装置１００について、図１を用いて説明する。図１に示すように、情報処理装置１００は、取得部１０１、ドライバ実行部１０２、アプリケーション実行部１０３、特定部１０４を含む。
【００１９】
取得部１０１は、販売補助デバイス１３０が携帯通信端末１２０に対して接続された場合に、携帯通信端末１２０を介して、販売補助デバイス１３０を特定する特定情報を取得する。
【００２０】
ドライバ実行部１０２は、特定情報に応じたドライバプログラムを実行して、販売補助デバイス１３０を制御する。
【００２１】
また、アプリケーション実行部１０３は、特定情報に応じた販売管理アプリケーションプログラムを実行して、携帯通信端末１２０に、販売処理用画面情報を送信する。
【００２２】
さらに特定部１０４は、販売補助デバイス１３０の制御により取得した販売関連情報を蓄積すべき販売管理データベースを、特定情報に基づいて特定する。
【００２３】
以上の構成によれば、携帯通信端末に接続された販売補助デバイスを情報処理装置から制御する。また、販売補助デバイスに応じた販売管理アプリケーションを実行して、販売補助デバイスに応じた販売管理データベースに対して、販売補助デバイスから取得した販売関連情報を蓄積する。その販売管理データベースを既存のＰＯＳシステムと紐付けておけば、連動する端末を簡易に導入することができる。
【００２４】
［第２実施形態］
次に本発明の第２実施形態に係る情報処理装置としてのクラウドサーバ２００について、図２乃至図１１を用いて説明する。
【００２５】
（全体構成）
図２は、本実施形態に係るクラウドサーバ２００を含む情報処理システムの一種として、販売管理システムを説明するための図である。
【００２６】
この販売管理システムは、ネットワーク２９０に用意されたクラウドサーバ２００と、クラウドサーバ２００に対して無線通信ネットワークを介して通信可能な携帯通信端末としてのスマートデバイス２５０とを含む。クラウドサーバ２００は、店舗内のＰＯＳ端末２７０にも通信可能に接続されている。本実施形態では、スマートデバイス２５０には、販売補助デバイス２６０として、自動釣銭機２６１およびレシート発行機２６２が接続されたものとする。しかし、販売補助デバイス２６０は、これらに限定されるものではなく、バーコードリーダやクレジットカード決済機など、商品販売に用いるいかなるハードウェアをも含む概念である。
【００２７】
ここでの無線通信ネットワークとは、携帯電話通信網でもよいし、無線通信インタフェース（例えば無線通信規格であるIEEE 802.11シリーズ(IEEE 802.11a, b, c, d, e)）を利用したネットワークでもよい。ここで、スマートデバイス２５０は、販売補助デバイス２６０とＵＳＢ（Universal Serial Bus）インタフェースを介して接続されている。また、しかし、本発明はこれに限定されるものではなく、他のデータ通信用インタフェース(例えばＩＥＥＥ１３９４、ＨＤＭＩ、Bluetooth（登録商標）、Wi-Fi（登録商標）など)で通信可能に接続されてもよい。
【００２８】
クラウドサーバ２００は、スマートデバイス２５０に接続された販売補助デバイス２６０を特定し、その販売補助デバイス２６０に合ったドライバプログラム２０２およびＰＯＳアプリケーション２０４を実行する。これにより、スマートデバイス２５０には、図のような表示画面が表示され、販売価格の入力などが可能となる。一方、クラウドサーバ２００は、ドライバプログラム２０２の実行により、販売補助デバイス２６０から販売関連情報を取得する。ここでは、販売補助デバイス２６０は、自動釣銭機２６１なので、販売関連情報は、自動釣銭機２６１に投入された金銭および払い出した釣銭に関する情報を含む。このような販売関連情報は、販売補助デバイス２６０に応じて特定された販売管理データベース２１０に蓄積される。販売補助デバイス２６０と販売管理データベース２１０との関連性はあらかじめ登録されている。さらには、それらの情報は、店舗内のＰＯＳ端末２７０とも関連付けられている。
【００２９】
また、図３に示すように、スマートデバイス２５０に内蔵されたカメラで商品に付されたバーコードを読み取れば、バーコード情報がクラウドサーバ２００に送られて、スマートデバイス２５０は、その回答としての商品名および商品価格を容易に取得できる。
【００３０】
以上により、店舗に用意された自動釣銭機２６１とレシート発行機２６２とをスマートデバイス２５０に接続するだけで、店舗内のＰＯＳ端末２７０が、元々使っていた販売管理データベース２１０に対して、販売関連情報や販売情報を容易に登録できる。つまり、スマートデバイス２５０を新たなＰＯＳ端末として導入したり追加したりすることが容易に可能となる。さらには、店舗の外に販売補助デバイス２６０を持ち出してスマートデバイス２５０に接続することにより、夏祭りや学園祭などの臨時的な遠隔地でのＰＯＳシステムの構築を容易に行なうことができる。
【００３１】
（クラウドサーバの機能構成）
図４は、クラウドサーバ２００の機能構成を示すブロック図である。クラウドサーバ２００は、ディスクリプタ受信部４０２を有する。ディスクリプタ受信部４０２は、販売補助デバイス２６０がスマートデバイス２５０に対して接続された場合に、スマートデバイス２５０を介して、販売補助デバイス２６０を特定する特定情報としてのディスクリプタを取得する。
【００３２】
デバイス判定部４０３は、ディスクリプタ受信部４０２が取得したディスクリプタを用いて、デバイスデータベース４２３（図７Ｅ参照）を検索することにより、販売補助デバイス２６０の製造元ＩＤおよび製品ＩＤを特定することができる。
【００３３】
ＵＳＢデバイスドライバ実行部４０７は、ディスクリプタに応じたドライバプログラムを実行して、販売補助デバイス２６０を制御する。複数種類のドライバプログラムは、ドライバプログラムデータベース４２４に用意されている。ドライバ選定部４０５は、デバイス判定部４０３が判定した製造元ＩＤおよび製品ＩＤを用いて、特定された販売補助デバイス２６０を駆動するのに必要なデバイスドライバをドライバプログラムデータベース４２４内から選定する。
【００３４】
ＵＳＢデバイスドライバ実行部４０７は、スマートデバイス２５０を中継して接続された販売補助デバイス２６０に対して送信すべきＵＳＢパケットを生成し、ＵＳＢパケットカプセリング部４０８に渡す。ＵＳＢパケットカプセリング部４０８は、ＵＳＢパケットをＩＰカプセリングして、スマートデバイス２５０に向けて送信する。一方、ＵＳＢパケットアンカプセリング部４０９は、スマートデバイス２５０からＩＰカプセリングして送信されたデータを受信して、そのデータをアンカプセリングしてＵＳＢパケットを取り出す。ＵＳＢデバイスドライバ実行部４０７は、受信したＵＳＢパケットを分析して、新たなＵＳＢパケットを生成して販売補助デバイス２６０に応答したり、アプリケーション実行部４１４に販売補助デバイス２６０のステータスを報告したりする。
【００３５】
販売補助デバイス情報受信部４１０は、ＵＳＢデバイスドライバ実行部４０７で適切なデバイスドライバを実行することにより、販売補助デバイス２６０からスマートデバイス２５０を介して販売関連情報を受信する。
【００３６】
アプリケーション実行部４１４は、ディスクリプタによって特定された製造元ＩＤおよび製品ＩＤを有する販売補助デバイス２６０に応じた販売管理アプリケーションプログラムを実行する。アプリケーション選定部４０６は、デバイス判定部４０３が判定した製造元ＩＤおよび製品ＩＤに基づいて、スマートデバイス２５０において仮想的に実行されるべき仮想アプリケーションを、アプリケーションプログラムデータベース４２５から選定する。これにより、アプリケーション実行部４１４は、販売処理用画面送信部４１１および通信制御部４０１を介してスマートデバイス２５０に、販売処理用画面情報を送信する。つまり、スマートデバイス２５０では、接続された販売補助デバイス２６０の種類に応じて、異なるアプリケーションプログラムの表示画面が表示される。
【００３７】
データベース選定部４１５は、販売補助デバイス２６０の制御により取得した販売関連情報を蓄積すべき販売管理データベース２１０を、ディスクリプタに基づいて特定する。  アプリケーション実行部４１４は、データベース選定部４１５によって特定された販売管理データベース２１０に対して、販売関連情報を蓄積する。
【００３８】
また、アプリケーション実行部４１４は、スマートデバイス情報受信部４１３を介して、スマートデバイス２５０に入力された販売情報を取得し、データベース選定部４１５によって特定された販売管理データベース２１０に対して、販売情報を蓄積する。
【００３９】
アプリケーション実行部４１４は、さらに、図３のようにスマートデバイス２５０に内蔵されたカメラを用いて読み取られたバーコード情報を受信することにより、販売情報を取得する。ここでの販売情報は、バーコード情報から導かれる商品情報（商品カテゴリ、商品名、価格）を含む。
【００４０】
また、アプリケーション実行部４１４は、スマートデバイス情報受信部４１３を介して、スマートデバイス２５０から、販売時における、スマートデバイス２５０の位置情報および時刻情報を取得し、販売関連情報と共に販売管理データベース２１０に蓄積する。
【００４１】
（スマートデバイスの機能構成）
スマートデバイス２５０の機能構成について、図５を用いて説明する。スマートデバイス２５０は、ユーザからの指示や入力を受け付ける操作部５０１と、受け付けた指示情報や入力情報を送信する情報送信部５０２とを備えている。また、通信制御部５０３を備え、ネットワークとのやりとりを制御する。
【００４２】
スマートデバイス２５０はまた、入出力部５０５としてディスプレイといった表示部５０６およびマイクやスピーカなどの音声入出力部５０７を備えている。画面受信部５０４は、通信制御部５０３を介して音声情報や画像情報を受信し、表示部５０６への画像出力や、音声入出力部５０７からの音声出力を行なう。
【００４３】
さらに、スマートデバイス２５０は、環境情報取得部５０８と位置検出部５２１と撮像部５２３と時刻検出部５２２とを備えている。ＧＰＳなどを利用した位置検出部５２１が検出した位置情報、デジタル時計などの時刻検出部５２２が検出した時刻情報、撮像部５２３を用いて撮影した画像情報などは、環境情報として、環境情報取得部５０８に送られる。環境情報取得部５０８が取得した環境情報は、情報送信部５０２および通信制御部５０３を介して、クラウドサーバ２００に送信される。
【００４４】
さらに、スマートデバイス２５０は、ＵＳＢコネクタ５２０と汎用ＵＳＢドライバ実行部５１１を備えており、ディスクリプタ取得部５１２は、接続されたＵＳＢデバイスから最低限のディスクリプタを取得できる構成となっている。取得されたディスクリプタは、ディスクリプタ送信部５１３にわたされて、通信制御部５０３を介してクラウドサーバ２００に送信される。
【００４５】
スマートデバイス２５０は、アンカプセリング部５１４およびカプセリング部５１５をさらに備えている。それらは、クラウドサーバ２００との通信時には、クラウドサーバ２００との間でやりとりされるＵＳＢパケットについて、アンカプセリング処理やカプセリング処理を行なう。
【００４６】
アンカプセリング部５１４およびカプセリング部５１５は、信号転送制御部５１９として機能する。すなわち、信号転送制御部５１９は、販売補助デバイス２６０とクラウドサーバ２００との間の信号転送を制御する。
【００４７】
スマートデバイス２５０は、自端末にデバイスドライバを有するデバイスについてのデバイスディスクリプタと、インタフェースディスクリプタと、ベンダＩＤと、プロダクトＩＤとの対応関係を示すデバイスデータベース５２４を記憶する。デバイスデータベース５２４の構成は、図７Ｅに示す通りである。
【００４８】
スマートデバイス２５０は、販売補助デバイス２６０が接続された際に販売補助デバイス２６０から通知されたデバイスディスクリプタと、デバイスデータベース５２４内のデバイスディスクリプタとを比較する。販売補助デバイス２６０から通知されたデバイスディスクリプタがデバイスデータベース５２４内のデバイスディスクリプタと一致すれば、スマートデバイス２５０は、販売補助デバイス２６０が自端末で処理可能なデバイスであると判定する。一方、デバイスディスクリプタが一致しない場合には、スマートデバイス２５０は、自端末で処理不可能なデバイスであると判定する。
【００４９】
なお、販売補助デバイス２６０から通知されたデバイスディスクリプタ内のベンダＩＤとプロダクトＩＤとを抽出し、デバイスデータベース内のベンダＩＤおよびプロダクトＩＤと比較してもよい。その場合、デバイスデータベース５２４内に一致するベンダＩＤおよびプロダクトＩＤが存在する場合には、自端末で処理可能な販売補助デバイスであると判定できる。逆に、ベンダＩＤおよびプロダクトＩＤが一致しない場合には、スマートデバイス２５０は、自端末で処理不可能な販売補助デバイスであると判定できる。
【００５０】
（システム全体の処理の流れ）
次に、図６に示すシーケンス図を用いて、システム全体の処理の流れについて整理する。まず、販売補助デバイス２６０が、スマートデバイス２５０に接続される（Ｓ６０１）。すると、スマートデバイス２５０の汎用ＵＳＢドライバ実行部５１１およびディスクリプタ取得部５１２は、販売補助デバイス２６０から販売関連情報を取得するためのドライバプログラムなどが自端末に備わっているか否か判定する（Ｓ６０３）。
【００５１】
他種類にわたる販売補助デバイス２６０のドライバプログラムやアプリケーションプログラムを、ダウンロードしてインストールしていくと、スマートデバイス２５０の容量がいくらあっても足りない。そこで、汎用ＵＳＢドライバ実行部５１１は、図９Ａのような接続確認画面９０１を表示させてユーザに確認する。そして、ユーザからの指示に応じてスマートデバイス２５０からクラウドサーバ２００にログインする。さらに、ディスクリプタ送信部５１３を用いてディスクリプタをクラウドサーバ２００に送信し、クラウドサーバ２００主導で、販売補助デバイス２６０から販売関連情報を取得することをリクエストする（Ｓ６０５）。ただし、スマートデバイス２５０のユーザが、クラウドサーバ２００を運営するクラウドプロバイダの会員になっていることが必要となる。
【００５２】
クラウドサーバ２００は、スマートデバイス２５０を中継して（Ｓ６０７）、販売補助デバイス２６０とのやりとりを行ない、販売補助デバイス２６０を特定する（Ｓ６０９）。次に、その販売補助デバイス２６０に応じた販売管理アプリケーションプログラムを選定し、起動する（Ｓ６１１）。
【００５３】
次に、データベース選定部４１５は、図１０に示すような対応テーブル１００１を用いて、接続された販売補助デバイス２６０に応じた販売管理データベースを決定する（Ｓ６１２）。対応テーブル１００１では、販売補助デバイス２６０を特定する情報が、その販売補助デバイス２６０を管理すべき企業や店舗と対応付けられ、さらに、その販売補助デバイス２６０からのデータを登録すべきデータベースのアドレスに対応付けられている。これにより、販売補助デバイス２６０が特定された時点で、その販売補助デバイス２６０を用いて取得した販売関連情報をどのデータベースに保存すべきか決まる。ユーザは、店舗選択などといった面倒な作業を行なう必要が無く、販売補助デバイス２６０をスマートデバイスに接続するだけで、簡単に、店舗内のＰＯＳ端末２７０にその販売補助デバイス２６０を使用する場合と同じデータの流れを実現できる。
【００５４】
クラウドサーバ２００は、ステップＳ６０９で特定したデバイスに対応するドライバを、ドライバプログラムデータベース４２４から選定し、そのドライバを駆動させる（Ｓ６１３）。これにより、クラウドサーバ２００は、スマートデバイス２５０を介して、販売補助デバイス２６０に対してアクセス可能となる。
【００５５】
販売管理アプリケーションプログラムは、まず、スマートデバイス２５０の表示部５０６に対して、図９Ｂに示すような販売補助デバイス２６０の確認画面９０２を表示させて、スマートデバイス２５０に接続された販売補助デバイス２６０を確認させる。そして、問題がなければさらに、図９Ｃに示すような販売処理用画面９０３を表示させる（Ｓ６１５）。なお、ここで、販売管理アプリケーションプログラムは、スマートデバイス２５０に接続された販売補助デバイス２６０が、あらかじめ接続を求めたデバイス（店舗として接続を望むデバイス）と同じデバイスか否かを判定してもよい。あらかじめ定めたデバイスと違うデバイスが繋がれた場合、本来繋ぐべきデバイスを、スマートデバイス２５０に対して、あらかじめ定めた画面や、音声により通知してもよい。つまり、これにより、店舗側は、つないで欲しい販売補助デバイスをスマートデバイス２５０につなぐように誘導することができる。
【００５６】
以上が前処理となり、ここから、商品の販売作業ごとに行なわれる販売処理に移る。スマートデバイス２５０のオペレータは、図９Ｃに示すような販売処理用画面９０３から金額および数量を入力するか、または、バーコード読取ボタン９０４を選択することにより、図３に示したようにカメラでバーコードを読み取る。情報送信部５０２は、販売価格情報および販売数量情報（バーコード読取の場合はバーコード情報）をクラウドサーバ２００に送信する（Ｓ６１７）。クラウドサーバ２００のスマートデバイス情報受信部４１３は、販売価格情報や販売数量情報などの販売情報を受信してアプリケーション実行部４１４に渡し、特定された販売管理データベース２１０に蓄積する（Ｓ６１９）。
【００５７】
クラウドサーバ２００は、スマートデバイス２５０の環境情報取得部５０８から、販売価格に合わせて、販売時刻や販売場所に関する情報を取得してもよい。これらの情報は情報送信部５０２により、販売価格と同じＩＤを付してクラウドサーバ２００に送信される。これにより、販売時刻、販売場所、販売価格、販売数量などを、関連づけて販売管理データベース２１０に蓄積することができる。
【００５８】
次に、クラウドサーバ２００は、販売処理用画面送信部４１１を介して、販売価格をスマートデバイス２５０の表示部５０６に表示させる。同時に、ＵＳＢパケットカプセリング部４０８で、その販売価格をＵＳＢパケットにカプセリングして販売補助デバイス２６０に対して送信する。販売補助デバイス２６０としての自動釣銭機２６１は、販売価格を受け取ると、預かり金の投入を待つ。預かり金が投入されると（Ｓ６２５）、預かり金から販売価格を減算して釣銭を算出し、その釣銭を払い出す（Ｓ６２７）。その後、販売補助デバイス２６０から決済完了通知が出力され（Ｓ６２９）、スマートデバイス２５０を中継して（Ｓ６３１）、クラウドサーバ２００に渡される。この通知はＵＳＢパケットであるため、スマートデバイス２５０では、カプセリング部５１５を用いて、これをＩＰカプセリングしてクラウドサーバ２００に送信する。クラウドサーバ２００では、ＵＳＢパケットアンカプセリング部４０９が、ＩＰパケットをアンカプセリングしてＵＳＢパケットを取り出し、さらにそこから、決済完了通知をとりだす。取り出された決済完了通知は、アプリケーション実行部４１４に渡され、販売管理データベース２１０に蓄積される（Ｓ６３３）。
【００５９】
以上、ステップＳ６１７〜Ｓ６３３の一連の処理が販売処理であり、顧客に対する商品販売作業ごとに、この販売処理を繰り返す。
【００６０】
以上の一連の処理により、クラウドサーバ２００は、販売処理の結果を蓄積することができる。
【００６１】
（クラウドサーバ２００での処理の流れ）
図７Ａを用いて、クラウドサーバ２００におけるより詳しい処理の流れを説明する。ステップＳ７１１において、スマートデバイス２５０から、デバイス接続リクエストを受信したと判断すると、ステップＳ６０９に進み、デバイス特定処理を行なう。ステップＳ６１１では、すでに説明したとおり、特定したデバイスに基づいて、販売管理アプリケーションプログラムを選定し、起動する。さらに、ステップＳ６１２ではデータベースを特定し、ステップＳ６１３ではデバイスドライバを選定して起動する。また、販売管理アプリケーションプログラムの実行に伴い、所定の表示画面をスマートデバイス２５０に送信する（Ｓ６２５）。ステップＳ７１１において、スマートデバイス２５０から、デバイス接続リクエストを受信していないと判断すると、ステップＳ７２１に進む。
【００６２】
一方、ステップＳ７２１において、販売価格情報を受信したと判断すると、ステップＳ６１９において、データベースへの蓄積処理を行なう。そしてさらに、ステップＳ６２１において、販売価格の表示画面をスマートデバイス２５０に送信すると共に、販売価格情報を販売補助デバイス２６０に対して、スマートデバイス２５０を介して送信する。ステップＳ７２１において、販売価格情報を受信していないと判断すると、ステップＳ７３１に進む。
【００６３】
ステップＳ７３１において、ＵＳＢパケットの送信を行なうと判定した場合には、ステップＳ７３３に進み、送信用ＵＳＢパケットを生成し、さらにステップＳ７３５においてＩＰカプセリングしてデバイス宛に送信する。その後、デバイスからの受信を待ち（Ｓ７３７）、受信するとＩＰアンカプセリングを行ない（Ｓ７３９）、受信ＵＳＢパケットの処理を行なう（Ｓ７４１）。このステップＳ７３１〜Ｓ７４１の処理により販売補助デバイス２６０からスマートデバイス２５０を介して所望の情報を受信することができる。
【００６４】
〈ディスクリプタの取得方法〉
図７Ｂ、図７Ｃ、図７Ｄは、ステップＳ６０１〜Ｓ６０９で説明したデバイス特定のための処理についてより詳しく説明する図である。これらの図は、クラウドサーバ２００とスマートデバイス２５０と販売補助デバイス２６０との間でやり取りされるパケットデータについて示している。
【００６５】
図７Ｂにおいて、スマートデバイス２５０に販売補助デバイス２６０が接続されると、セットアップ・ステージＳ７５１において、トークン・パケットとデータ・パケットとを、スマートデバイス２５０から販売補助デバイス２６０に送信する。販売補助デバイス２６０は、これに応えてハンドシェイク・パケットをスマートデバイス２５０に送信する。スマートデバイス２５０は、まず、適正なハンドシェイク・パケットが返ってくるか否かにより、自端末で販売補助デバイス２６０を制御できるか判断できる。
【００６６】
例えば、スマートデバイス２５０に接続されることがあらかじめ想定されているデバイスであれば、適正なハンドシェイク・パケットが返り、データ・ステージ、ステータス・ステージを続ける。それにより取得したデバイスディスクリプタに対応して、スマートデバイス２５０内に用意されたデバイスドライバを駆動することでデバイスを制御できる。しかし、スマートデバイス２５０が接続を想定されているデバイスは非常に数が少ない。セットアップ・ステージＳ７０１においてハンドシェイク・パケットが返ってこない場合、ここで、ＵＳＢ切断処理を行ない（Ｓ７５２）、スマートデバイス２５０はクラウドサーバ２００に対してデータ取得のリクエストを行なう（Ｓ６０５）。
【００６７】
次にクラウドサーバ２００は、スマートデバイス２５０を介して、販売補助デバイス２６０との間で、セットアップ・ステージＳ７５３を再度行ない、データ・ステージＳ７５４に進むことにより、デバイスディスクリプタといったデバイス情報を取得する。クラウドサーバ２００は、世の中に存在する様々な販売補助デバイス２６０とも接続可能となるように数多くのドライバおよびデータ変換モジュールをあらかじめ備えている。そのため、クラウドサーバ２００と販売補助デバイス２６０との間では、セットアップ・ステージＳ７５３、データ・ステージＳ７５４、ステータス・ステージＳ７５５と順調に進み、販売補助デバイス２６０との通信が適正に確立する。
【００６８】
図７Ｃは、販売補助デバイス２６０がハンドシェイク・パケットを返すものの、スマートデバイス２５０が販売補助デバイス２６０から取得したデバイスディスクリプタに対応するドライバを有していない場合のシーケンスを示す。この場合、スマートデバイス２５０と販売補助デバイス２６０との間でセットアップ・ステージＳ７６１、データ・ステージＳ７６２、ステータス・ステージＳ７６３を行なう。この３つのステージによって取得したデバイスディスクリプタに対応するデバイスドライバをスマートデバイス２５０が有していないと判断すると、ＵＳＢ切断処理Ｓ７６４を行なう。そして、スマートデバイス２５０はクラウドサーバ２００に対してデータ取得のリクエストを行なう（Ｓ６０５）。
【００６９】
そして、スマートデバイス２５０は、クラウドサーバ２００に対して販売補助デバイス２６０との通信確立を要求する。スマートデバイス２５０と販売補助デバイス２６０との間のＵＳＢ接続を切断後、クラウドサーバ２００において、再度、セットアップ・ステージＳ７６５、データ・ステージＳ７６６、ステータス・ステージＳ７６７を行なう。これによりクラウドサーバ２００は、販売補助デバイス２６０から直接デバイスディスクリプタを取得して、デバイスにあったドライバを駆動できる。
【００７０】
図７Ｄは、スマートデバイス２５０と販売補助デバイス２６０との間のセットアップ・ステージＳ７７１およびデータ・ステージＳ７７２において取得したデバイスディスクリプタを、スマートデバイス２５０の内部にキャッシュする場合の処理を示している。ＵＳＢ切断処理を行なう前に、取得したデバイスディスクリプタを、スマートデバイス２５０の内部にキャッシュし（Ｓ７７４）、スマートデバイス２５０はクラウドサーバ２００に対してデータ取得のリクエストを行なう（Ｓ６０５）。
【００７１】
そして、スマートデバイス２５０と販売補助デバイス２６０との間の接続を一度切断した後に、クラウドサーバ２００主導で、販売補助デバイス２６０との通信確立処理を開始する（Ｓ７７５〜Ｓ７７７）。この場合、セットアップ・ステージＳ７７５において、スマートデバイス２５０は、セットアップ用のトークン・パケットおよびデータ・パケットを販売補助デバイス２６０に送らず、ハンドシェイク・パケットを生成し、クラウドサーバ２００に送信する。また、データ・ステージＳ７７６では、スマートデバイス２５０は、トークン・パケットとデータ・パケットとをクラウドサーバ２００から受信する。そして、それらを販売補助デバイス２６０に送らずに、キャッシュからデバイスディスクリプタを読出し、クラウドサーバ２００に送信する。すなわち、販売補助デバイス２６０からデバイスディスクリプタを取得する処理を省略することが可能となるため、販売補助デバイス２６０との通信切断後の再開を効率良く行なうことが可能となる。
【００７２】
（デバイス特定テーブル）
デバイスデータベース４２３は、図７Ｅに示したデバイスデータベース５２４と同様に、デバイスディスクリプタと、インタフェースディスクリプタと、ベンダＩＤと、プロダクトＩＤとの対応関係を記憶する。
【００７３】
クラウドサーバ２００は、販売補助デバイス２６０がスマートデバイス２５０に接続された際に、販売補助デバイス２６０からスマートデバイス２５０を介して取得したデバイスディスクリプタを、デバイスデータベース４２３内で検索する。そして、そのベンダＩＤおよびプロダクトＩＤを特定する。そしてそのベンダＩＤおよびプロダクトＩＤに対応するデバイスドライバを、ドライバプログラムデータベース４２４から選択して、実行する。
【００７４】
なお、デバイスデータベース４２３は、デバイスディスクリプタと、インタフェースディスクリプタと、ベンダＩＤと、プロダクトＩＤとの対応関係を記憶しているが、本発明はこれに限定するものではない。例えば、さらに、デバイスディスクリプタと商品名との対応関係を記憶してもよい。その場合、このデバイスデータベース４２３を用いてデバイスディスクリプタから販売補助デバイス２６０の商品名を特定し、その商品名を、スマートデバイス２５０の画面に表示させてもよい。そうすれば、スマートデバイス２５０のユーザは、「自分が接続した販売補助デバイス２６０をクラウドサーバ２００が認識したこと」を確認することができ、大きな安心感を得ることができる。
【００７５】
（ＵＳＢ接続処理）
図８Ａ〜図８Ｄを用いて、ＵＳＢでの通信を確立するまでにクラウドサーバ２００とスマートデバイス２５０と販売補助デバイス２６０との間でやりとりされる信号をより詳細に説明する。特に、ここでは、図７Ｄに示したように、デバイスディスクリプタをキャッシュに保存する例について説明する。
【００７６】
ステップＳ８０１において、販売補助デバイス２６０をスマートデバイス２５０に接続し、電源を投入する。次に、ステップＳ８０２において、スマートデバイス２５０は販売補助デバイス２６０に対するＵＳＢ接続処理を開始し、リセット信号を送信する。次に、ステップＳ８０３において、スマートデバイス２５０は、販売補助デバイス２６０に対してアドレスを指定する。この後においてスマートデバイス２５０と販売補助デバイス２６０との間でやりとりされるパケットにはそのアドレスが付加される。
【００７７】
ステップＳ８０４において、スマートデバイス２５０は販売補助デバイス２６０からディスクリプタを取得するために「ＧＥＴ  ＤＥＳＤＣＲＩＰＴＯＲ」の処理を行なう。「ＧＥＴ  ＤＥＳＤＣＲＩＰＴＯＲ」の処理は、図７Ｄで説明したステップＳ７２１〜Ｓ７２３と同様であるため、詳細は説明しない。ディスクリプタのリクエストを販売補助デバイス２６０に送信すると（Ｓ８０５）、販売補助デバイス２６０は、エンドポイント０領域に記憶されたデバイスディスクリプタをスマートデバイス２５０に送信する（Ｓ８０６、Ｓ８０７）。スマートデバイス２５０は、ステータス・ステージＳ７２３において、その確認信号（ACK）を販売補助デバイス２６０に送信する。
【００７８】
この時点でデバイスディスクリプタを取得したスマートデバイス２５０は、そのデバイスディスクリプタをキャッシュに保存する（Ｓ７７４）。また、そのデバイスディスクリプタを用いて、スマートデバイス２５０が制御可能なデバイスか判定する（Ｓ６０３）。制御不可能と判断すると、ステップＳ８１１に進み、ＵＳＢ切断処理を行ない、同時に、クラウドサーバ２００に対し、販売補助デバイス２６０の制御依頼を行なう（Ｓ８１２）。
【００７９】
次に、ステップＳ８１３において、クラウドサーバ２００は、販売補助デバイス２６０の制御を行なうべく処理を開始し、リセット信号を、スマートデバイス２５０を介して販売補助デバイス２６０に送信する。次に、ステップＳ８１５において、クラウドサーバ２００は、セットアドレスを行ない、販売補助デバイス２６０に対してアドレスを指定する。
【００８０】
さらに、クラウドサーバ２００は、ゲットディスクリプタ（Ｓ８１６）と、ゲットコンフィギュレーション（Ｓ８２４）とを、スマートデバイス２５０を介して販売補助デバイス２６０に対して行なう（Ｓ８２３）。具体的には、ステップＳ８１７において、クラウドサーバ２００は、ゲットディスクリプタをスマートデバイス２５０に送る。ステップＳ８１８において、スマートデバイス２５０は、キャッシュに保存されたデバイスディスクリプタを読み出し、クラウドサーバ２００に送信する（Ｓ８１９）。
【００８１】
ステップＳ８２５において、販売補助デバイス２６０は、エンドポイント０領域に記憶されたコンフィギュレーションディスクリプタを送信する。次に、クラウドサーバ２００は、スマートデバイス２５０を介して販売補助デバイス２６０に対してＢＵＬＫ  ＴＲＡＮＳＦＥＲを行なう（Ｓ８２６）。すると、販売補助デバイス２６０は、販売関連情報を読み出して（Ｓ８２７）、スマートデバイス２５０を介してクラウドサーバ２００に送信する。
【００８２】
ステップＳ６０３において、販売補助デバイス２６０のデバイスディスクリプタに基づいて、制御可能なデバイスではないと判定すると、図８ＢのステップＳ８２８に進む。ステップＳ８２８、Ｓ８２９では、コンフィギュレーションディスクリプタ取得処理を行ない、販売補助デバイス２６０は、それに応じてコンフィギュレーションディスクリプタをスマートデバイス２５０に送信する。スマートデバイス２５０は、ステップＳ８３２において、取得したコンフィギュレーションディスクリプタをキャッシュに保存する。そして、ステップＳ６０３において、スマートデバイス２５０は、コンフィギュレーションディスクリプタに基づいて、販売補助デバイス２６０がスマートデバイス２５０にとって制御可能なデバイスか否か判定する。制御可能ではないと判定すると、ステップＳ８３３に進んでスマートデバイス２５０と販売補助デバイス２６０との間のＵＳＢ接続を切断する。
【００８３】
ＵＳＢ接続を切断後、スマートデバイス２５０は、クラウドサーバ２００に対して、販売補助デバイス２６０の制御を依頼する。クラウドサーバ２００は、その制御依頼に応じて、ＵＳＢ制御を開始すると共にリセット信号を、スマートデバイス２５０を介して販売補助デバイス２６０に送信する（Ｓ８３５）。そして続けてセットアドレスを行ない（Ｓ８３６）、アドレスを販売補助デバイス２６０に指定する。さらに、ＧＥＴ  ＤＥＳＣＲＩＰＴＯＲ（Ｓ８３７）で、スマートデバイス２５０に対して、ディスクリプタを要求する。スマートデバイス２５０は、その要求を販売補助デバイス２６０に中継する代わりに、デバイスディスクリプタをキャッシュから読出して（Ｓ８３９）、クラウドサーバ２００に返す（Ｓ８４０）。
【００８４】
さらに、クラウドサーバ２００は、スマートデバイス２５０を介して販売補助デバイス２６０に対してＧＥＴ  ＣＯＮＦＩＧＵＲＡＴＩＯＮを実行する（Ｓ８４１）。スマートデバイス２５０は、そのコマンドを販売補助デバイス２６０に送信する代わりに、キャッシュに記憶されたコンフィギュレーションディスクリプタを読み出し、クラウドサーバ２００に送信する（Ｓ８４３）。次に、クラウドサーバ２００は、スマートデバイス２５０を介して販売補助デバイス２６０に対してＢＵＬＫ  ＴＲＡＮＳＦＥＲを行なう（Ｓ８４４）。販売補助デバイス２６０は、販売関連情報を読み出して（Ｓ８４５）、スマートデバイス２５０を介してクラウドサーバ２００に送信する。
【００８５】
ステップＳ５０５において、コンフィギュレーションディスクリプタに基づいて、制御可能なデバイスであると判定すると（Ｂ）、図８ＣのステップＳ８４６に示すＢＵＬＫ  ＴＲＡＮＳＦＥＲに進む。ＢＵＬＫ  ＴＲＡＮＳＦＥＲでも、セットアップ・ステージ、データ・ステージ、ステータス・ステージを行なうことにより、販売補助デバイス２６０から販売関連情報を読出して、スマートデバイス２５０に送信する（Ｓ８４９）。
【００８６】
スマートデバイス２５０は、読出された販売関連情報を受信すると、キャッシュに保存し（Ｓ８５１）、その販売関連情報を表示処理できる販売管理アプリケーションがあるか否か判定する（Ｓ８５２）。
【００８７】
処理できると判定すると、ステップＳ８５３に進み、クラウドサーバ２００にアクセスせずに処理を継続する。つまり、この場合、販売補助デバイス２６０の販売関連情報は、そのままスマートデバイス２５０で再生できる。
【００８８】
一方、スマートデバイス２５０が、販売補助デバイス２６０の販売関連情報を処理できる販売管理アプリケーションを有していない場合、ステップＳ８５４に進んでＵＳＢ接続の切断処理を行ない、さらに、図８ＤのステップＳ８５６に進む。
【００８９】
図８ＤのステップＳ８５６では、やはりクラウドサーバ２００に対してＵＳＢデバイス制御の依頼を行なう。スマートデバイス２５０は、クラウドサーバ２００に対して、販売補助デバイス２６０の制御を依頼する。クラウドサーバ２００は、その制御依頼に応じて、ＵＳＢ制御を開始すると共にリセット信号を、スマートデバイス２５０を介して販売補助デバイス２６０に送信する（Ｓ８５７）。そして続けてセットアドレスを行ない（Ｓ８５９）、アドレスを販売補助デバイス２６０に指定する。さらに、ＧＥＴ  ＤＥＳＣＲＩＰＴＯＲ（Ｓ８６１）で、スマートデバイス２５０に対して、ディスクリプタを要求する。すると、スマートデバイス２５０は、その要求を販売補助デバイス２６０に中継する代わりに、デバイスディスクリプタをキャッシュから読出して（Ｓ８６３）、クラウドサーバ２００に返す。
【００９０】
さらに、クラウドサーバ２００は、スマートデバイス２５０を介して販売補助デバイス２６０に対してＧＥＴ  ＣＯＮＦＩＧＵＲＡＴＩＯＮを実行する（Ｓ８６５）。すると、スマートデバイス２５０は、そのコマンドを中継する代わりに、キャッシュに保存されたコンフィギュレーションディスクリプタを読出して、スマートデバイス２５０を中継してクラウドサーバ２００に送信する（Ｓ８６７）。
【００９１】
次に、クラウドサーバ２００は、スマートデバイス２５０を介して販売補助デバイス２６０に対してＢＵＬＫ  ＴＲＡＮＳＦＥＲを行なう（Ｓ８６９）。すると、スマートデバイス２５０は、キャッシュに保存された販売関連情報を読み出して（Ｓ８７１）、クラウドサーバ２００に送信する。
【００９２】
以上のシーケンスにより、スマートデバイス２５０のキャッシュをうまく使って、クラウドサーバ２００と販売補助デバイス２６０との通信を効率的に行なうことが可能となる。
【００９３】
（表示画面）
図９Ａ〜Ｃは、上述したとおり、スマートデバイス２５０の表示部５０６に表示される画面例を示す図である。図９Ａは、クラウドサーバ２００への接続確認画面９０１、図９Ｂは、販売補助デバイス２６０の確認画面９０２、図９Ｃは、販売処理用画面９０３とバーコード読取ボタン９０４とを示している。
【００９４】
（対応テーブル）
図１０は、販売補助デバイス２６０と販売管理データベース２１０との対応関係を示す対応テーブル１００１の構成を示す図である。対応テーブル１００１では、販売補助デバイス２６０のデバイスディスクリプタに含まれる情報（ベンダＩＤ、プロダクトＩＤ、シリアルＮｏ）を、他の特定情報（商品名）やその販売補助デバイス２６０を管理すべき企業や店舗と対応付けている。そして、さらに、販売補助デバイス２６０の特定情報を、販売補助デバイス２６０からのデータを登録すべきデータベースのアドレスに対応づけている。
【００９５】
（販売管理データベース）
図１１は、販売管理データベース２１０の構成を示す図である。図１１に示すように、ここでは、販売管理データベース２１０は、店舗ごとに用意されており、販売が行なわれるごとに、その販売を行なったレジＩＤ、日時、商品名、個数、販売価格、預かり金、釣銭、店員、管理者を蓄積できる構成になっている。レジＩＤは、販売補助デバイス２６０としての自動釣銭機２６１の識別情報である。レジＩＤ、預かり金、釣銭は、販売補助デバイス２６０から、スマートデバイス２５０を介して取得する。日時、商品名、個数、販売価格は、スマートデバイス２５０から直接取得する。店員、管理者についての情報は、レジＩＤに紐付けられてあらかじめ登録されているものを呼び出す。また、店員についての情報は、スマートデバイス２５０に対して店員自身が入力操作した入力情報から取得してもよい。
【００９６】
以上、本実施形態によれば、販売補助デバイス２６０が特定された時点で、その販売補助デバイス２６０を用いて取得した販売関連情報をどのデータベースに保存すべきか決まる。ユーザである店員は、店舗選択などといった面倒な作業を行なう必要が無く、販売補助デバイス２６０をスマートデバイスに接続するだけで、簡単に、店舗内のＰＯＳ端末２７０に販売補助デバイス２６０を接続して使用する場合と同じデータの流れを実現できる。つまり、販売補助デバイスとスマートデバイスとを用いて、非常に簡易に、遠隔地の臨時店舗にＰＯＳシステムを構築できる。販売管理アプリケーションを仮想的にクラウドサーバ２００で実行する仕組みにすれば、売り上げデータなどは、クラウドサーバ２００に送られてスマートデバイスに残らないため、情報セキュリティの面でも優れたシステムを構築できる。
【００９７】
なお、スマートデバイス２５０にＵＳＢレジキーボ−ドを接続して、ＵＳＢレジキーボ−ドから、販売価格などを打ち込んでもよい。
【００９８】
［第３実施形態］
次に本発明の第３実施形態について、図１２および図１３を用いて説明する。図１２は、本実施形態に係るクラウドサーバを含むシステムの構成を示す図である。クラウドサーバ２００およびスマートデバイス２５０の構成については、第２実施形態と何ら相違はない。スマートデバイス２５０に接続された販売補助デバイス２６０に、バーコード読取機１２０２が含まれ、それらを同時に接続するためにハブ１２０１を用いた点が、第２実施形態との相違点である。
【００９９】
その他の構成および動作は、第２実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１００】
アプリケーション実行部４１４は、スマートデバイス２５０に接続されたバーコード読取機１２０２を用いて読み取られたバーコード情報を、スマートデバイス２５０を介して受信することにより、販売情報を取得する。
【０１０１】
バーコード情報は、図１３に示す商品データベース１３０１を参照することによって、商品名や価格といった情報に変換される。
【０１０２】
本実施形態によれば、バーコード読取機１２０２をスマートデバイス２５０に接続してより効率的な販売処理を行なうことができる。
【０１０３】
［第４実施形態］
次に本発明の第４実施形態について、図１４を用いて説明する。図１４は、本実施形態に係るクラウドサーバを含むシステムの構成を示す図である。クラウドサーバ２００およびスマートデバイス２５０の構成については、第２実施形態と何ら相違はない。スマートデバイス２５０に接続された販売補助デバイス２６０に、ＵＳＢモニタ１４０１が含まれ、それらを同時に接続するためにハブ１２０１を用いた点が、第２実施形態との相違点である。その他の構成および動作は、第２実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１０４】
このような利用方法によれば、２画面（接客画面と作業者画面）のＰＯＳシステムを提供することができる。
【０１０５】
［第５実施形態］
次に本発明の第５実施形態について、図１５を用いて説明する。図１５は、本実施形態に係るクラウドサーバを含むシステムの構成を示す図である。クラウドサーバ２００およびスマートデバイス２５０の構成については、第２実施形態と何ら相違はない。スマートデバイス２５０に接続された販売補助デバイス２６０として、複数のＵＳＢモニタ１４０１と複数の自動釣銭機２６１が含まれ、それらを同時に接続するためにハブ１２０１を用いた点が、第２実施形態との相違点である。その他の構成および動作は、第２実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。第２実施形態に示したように、販売補助デバイス２６０をそれぞれ識別して、異なるレジＩＤで販売管理データベース２１０に登録するため、図１５のように複数のＰＯＳシステムを同時に構築することも可能である。
【０１０６】
このような利用方法によれば、１台のスマートデバイスを用いて複数のＰＯＳシステムを提供することができる。
【０１０７】
［第６実施形態］
次に本発明の第６実施形態について、図１６〜図１８を用いて説明する。図１６は、本実施形態に係るクラウドサーバ１６００を含むシステムの構成を示す図である。スマートデバイス２５０の構成については、第２実施形態と何ら相違はない。スマートデバイス２５０に接続された販売補助デバイス２６０にエラーが発生した場合に、店舗内のＰＯＳ端末２７０にその通知が届き、そのＰＯＳ端末から販売補助デバイス２６０を遠隔制御可能にする点が、第２実施形態との相違点である。その他の構成および動作は、第２実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１０８】
図１６に示すように、スマートデバイス２５０と販売補助デバイス２６０とを用いた販売処理において問題が発生した場合、店舗内のＰＯＳ端末２７０からの遠隔操作を受け付けることのできるシステムとなっている。遠隔のスマートデバイス２５０を介した販売補助デバイス２６０でエラーが起きた場合にでも、店舗にいるベテランオペレータの機器操作支援を受けることができる。
【０１０９】
図１７は、本実施形態にかかるクラウドサーバ１６００の機能構成を示す図である。第２実施形態で示したクラウドサーバ２００の構成に加えて、操作支援処理部１７０１を備えている。操作支援処理部１７０１は、スマートデバイス２５０と販売補助デバイス２６０とで構築されたＰＯＳシステムにエラーが生じた場合に、店舗内のＰＯＳ端末２７０にそのエラーを通知する。そして、そのエラーを解決するための遠隔操作を店舗内のＰＯＳ端末２７０から受け付ける。エラーが解決された場合、そのエラー解決操作に関する情報は、販売管理データベース２１０に蓄積され、将来、同様のエラーが生じた場合に読出されて、スマートデバイス２５０に送信される。
【０１１０】
図１８は、システムの全体的な処理の流れを示すシーケンス図である。基本的な処理の流れは、図６を用いて説明した第２実施形態と同様であるため、ここでは同じ処理については同じ符号を付して説明を省略する。
【０１１１】
エラー回復処理では、販売補助デバイス２６０でエラーが発生すると、状況をつたえるべく、ステータスを、スマートデバイス２５０を中継して（Ｓ１８３７）、クラウドサーバ２００に送信する（Ｓ１８３６）。クラウドサーバ２００では、エラー情報をナレッジとして蓄積し、さらに遠隔操作を求めるメッセージを生成して、販売補助デバイス２６０に対応する店舗内のＰＯＳ端末２７０に、そのメッセージを送信する（Ｓ１８３９）。対応テーブル１００１に、あらかじめ販売補助デバイス２６０と店舗内のＰＯＳ端末２７０との対応関係を保存することにより、店舗内のＰＯＳ端末２７０のアドレスを導き出すことができる。
【０１１２】
店舗内のＰＯＳ端末２７０では、メッセージと、エラーが発生した販売情報を表示する（Ｓ１８４１）。
【０１１３】
その後、店舗内のＰＯＳ端末２７０において、遠隔操作の入力を行う（Ｓ１８４３）。その操作情報が、クラウドサーバ２００およびスマートデバイス２５０を中継して（Ｓ１８４５，Ｓ１８４７）、販売補助デバイス２６０に送信され、エラー回避処理が実行される。エラー回避成功またはエラー回避失敗と言った処理結果がでると（Ｓ１８５１）、その処理結果は、スマートデバイス２５０を中継して（Ｓ１８５３）、クラウドサーバ２００において操作ナレッジとして、発生エラーに対応付けて登録される（Ｓ１８５５）。
【０１１４】
なお、行動支援が必要な店員が現在みている画面を特定して、その画面へ行動支援用のメッセージを表示しても、行動支援が必要な店員のイヤホンへ行動支援用の音声を出力してもよい。また、クラウドサーバ２００において、行動支援の情報を、動画情報や音声情報や配信文字情報として記録をして、有効度を計測して、店舗データベースとして拡充してもよい。さらに、エラー情報などの連絡内容に合わせて、店舗データベースにあらかじめ登録された関連部門の複数のメンバーに、同時連絡してもよい。
【０１１５】
行動支援中の送信音声を音声認識で文字化し、その文字から要約を作成して、文字でのやりとりからも要約を作成して、店舗データベースに登録した上で、上司や店長などへ連絡してもよい。
【０１１６】
以上の構成によれば、店舗内のＰＯＳ端末２７０とスマートデバイス２５０との間で通信を行なうので、遠隔地の臨時店舗でエラーが発生しても、本部店舗のベテランオペレータによる遠隔操作によってエラー回避を行なうことができる。
【０１１７】
［第７実施形態］
次に本発明の第７実施形態に係る情報処理装置について、図１９を用いて説明する。図１９は、本実施形態に係る情報処理装置としてのクラウドサーバ２００を含むシステムの構成を示す図である。
【０１１８】
本実施形態では、スマートデバイス２５０に接続された販売補助デバイス２６０として、自動釣銭機２６１とレシート発行機２６２とクレジットカードリーダ１９０３が含まれる。これらの機器はＵＳＢではなく、Ｂｌｕｅｔｏｏｔｈ（登録商標）などの無線インタフェースを介して互いに接続されている。その他の構成および動作は、第２実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１１９】
この場合も、クラウドサーバ２００は、スマートデバイス２５０を介して、販売補助デバイス２６０からデバイスディスクリプタを取得することにより、販売補助デバイス２６０を特定し、その販売補助デバイス２６０に対応する販売管理データベース２１０を特定する。
【０１２０】
このように複数の販売補助デバイス２６０を無線通信で接続すれば、より自由度高くそれぞれのデバイスを操作することができる。
【０１２１】
例えば、スマートデバイス２５０のみを持ち歩いて、顧客のところで、精算を行ない、お金を貰って自動釣り銭機の場所に移動し、釣りとレシートを持って顧客のところまで行ってもよい。また、クレジットカードリーダ１９０３とスマートデバイス２５０のみを持ち歩いてカード精算の顧客の元で精算処理を行なってもよい。
【０１２２】
このようにすれば、顧客を移動させることも、商品を持ち歩くことも必要がない。
【０１２３】
一方、一つの自動釣銭機に対して、複数のスマートデバイスを無線接続してもよい。その場合、アプリケーションは、スマートデバイスの表示部に、「お金投入」ボタンを設ける。そのボタンを押したタイミングで、自動釣銭機は、精算額情報を取得し、お金の投入を受け入れて釣り銭の払い出しを行なえばよい。
【０１２４】
本実施形態によれば、スマートデバイス２５０と販売補助デバイス２６０とを無線通信で接続するので、より一層便利かつ効率的にＰＯＳシステムを構築することができる。
【０１２５】
［他の実施形態］
携帯通信端末としてスマートデバイスを用いた例について説明したが、本発明は、これに限定されるものではなく、携帯電話機やモバイルルータなどを携帯通信端末として用いてもよい。
【０１２６】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の範疇に含まれる。
【０１２７】
また、本発明は、複数の機器から構成されるシステムに適用されてもよいし、単体の装置に適用されてもよい。さらに、本発明は、実施形態の機能を実現する情報処理プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされるプログラム、あるいはそのプログラムを格納した媒体、そのプログラムをダウンロードさせるＷＷＷ(World Wide Web)サーバも、本発明の範疇に含まれる。上記実施形態において、クラウドサーバについて説明したが、本発明はこれに限定されるものではない。
【図１】
0005949177.tif 000002
【図２】
0005949177.tif 000003
【図３】
0005949177.tif 000004
【図４】
0005949177.tif 000005
【図５】
0005949177.tif 000006
【図６】
0005949177.tif 000007
【図７Ａ】
0005949177.tif 000008
【図７Ｂ】
0005949177.tif 000009
【図７Ｃ】
0005949177.tif 000010
【図７Ｄ】
0005949177.tif 000011
【図７Ｅ】
0005949177.tif 000012
【図８Ａ】
0005949177.tif 000013
【図８Ｂ】
0005949177.tif 000014
【図８Ｃ】
0005949177.tif 000015
【図８Ｄ】
0005949177.tif 000016
【図９Ａ】
0005949177.tif 000017
【図９Ｂ】
0005949177.tif 000018
【図９Ｃ】
0005949177.tif 000019
【図１０】
0005949177.tif 000020
【図１１】
0005949177.tif 000021
【図１２】
0005949177.tif 000022
【図１３】
0005949177.tif 000023
【図１４】
0005949177.tif 000024
【図１５】
0005949177.tif 000025
【図１６】
0005949177.tif 000026
【図１７】
0005949177.tif 000027
【図１８】
0005949177.tif 000028
【図１９】
0005949177.tif 000029