(58)【調査した分野】(Int.Cl.,DB名)
前記モバイルアプリケーションは、前記モバイルデバイスの前記通信インターフェースを介して前記自動スコアリングシステムから、前記ボウリングレーンと関連付けられたボウリングスコアリング情報を受信し、
前記モバイルアプリケーションは、1以上の前記レーン識別値に関連する情報を前記少なくとも1つのアプリケーション表示スクリーン上に表示する
ことを特徴とする請求項1記載のモバイルスコアリングシステム。
前記モバイルアプリケーションは、予約システム、光学機械読取コード、または前記ボウリングセンタのフロントデスクが生成したレシートから、前記ボウラー認証情報に対してアクセスする
ことを特徴とする請求項1記載のモバイルスコアリングシステム。
前記ボウリングゲームスコアリングコマンドは、前記ボウリングセンタの1以上のディスプレイ上に情報をどのように表示するかをセットし、または前記割り当てられたボウリングレーンにおいて特定のピンセットをリセットさせる
ことを特徴とする請求項9記載の方法。
前記ボウリングゲームスコアリングコマンドは、前記ボウリングセンタの機械システムの動作、前記モバイルデバイスに関連付けられた少なくとも1つのスコアリング表示システムの動作、またはボウリングセンタサービスの動作に対する指示を含む
ことを特徴とする請求項9記載の方法。
【発明を実施するための形態】
【0021】
図2は、ボウリングセンター101と通信ネットワークを示す。通信ネットワークは、内部ネットワーク115と外部ネットワーク116を有する。モバイルデバイス100は、少なくとも一時的に、ボウリングセンター101内に配置される。自動スコアリングシステム110は、レーン制御コンソールシステム32、オーバーヘッドディスプレイシステム14、ピンセッタシステム15、フロントデスクシステム16、フードサービスシステム17のいずれか1以上を備える。内部ネットワーク115と外部ネットワーク116は、直接またはインターネット120を介して、サーバ130と通信する。サーバ130は、ボウリングセンター101がアクセスして本実施形態を実装するクラウドサービスをホストするように構成することができる。
【0022】
以下に自動スコアリングシステム110の様々な定義について複数の実施形態を説明する。第1実施形態において、モバイルデバイス100は一般に、レーン制御コンソールシステム32の補完であり、レーン制御コンソールシステム32のリモート制御として動作する。第1実施形態において、レーン制御コンソールシステム32は自動スコアリングシステム110である。第2実施形態において、レーン制御システム32は省略され、モバイルデバイス100が発行するコマンドは、オーバーヘッドディスプレイシステム14、ピンセッタシステム15、フロントデスクシステム16、またはフードサービスシステム17に対して送信される。これらいずれかまたはこれら任意の組み合わせは、自動スコアリングシステム110とみなすことができる。以下の説明は、特に言及しなければ、第1実施形態と第2実施形態双方に対して適用される。
【0023】
モバイルデバイス100は例えば、携帯電話(スマートフォン)、携帯情報端末(PDA)、タブレットコンピュータ、ラップトップ、パーソナルコンピュータ、またはネットワーク通信することができる任意のコンピュータデバイスである。モバイルデバイス100は、サーバ130を介して間接的に、自動スコアリングシステム110に対してコマンドを送信するように構成することができる。モバイルデバイス100は、インターネット120を介してサーバ130と通信するように構成されている。モバイルデバイス100は、移動体ネットワーク(例えば2G、3G、移動体通信グローバルシステム(GSM(登録商標))、ロングタームエボリューション(LTE)、4G)を介してインターネット120と通信することができる。これに代えてモバイルデバイス100は、内部ネットワーク115に対する無線通信(例えば802.11規格、Bluetooth(登録商標)規格、赤外線通信)を含む通信ネットワークを介して、インターネット120と通信することができる。モバイルデバイス100は、任意のモバイルオペレーティングシステム(OS)、モバイルソフトウェアプラットフォーム、またはハンドヘルドOS上で動作することができる。モバイルOSは例えば、Apple社のiOS、Microsoft社のWindows(登録商標) Mobile、Android、Blackberry OS、WebOS、Symbian OS、その他のOSである。ここで説明するモバイルデバイス100の機能は、モバイルOS上で動作するモバイルアプリケーションによって実行され、またはモバイルアプリケーションにアクセスするwebブラウザを介して実行される。
【0024】
モバイルデバイス100は、レーン制御コマンドを生成する。レーン制御コマンドは、例えばプレイヤー数、プレイヤー名、プレイヤー特性などのボウリングゲームに関する情報を調整する。プレイヤー特性は、ボウラーが右利きまたは左利きのいずれであるかを示すデータ、あるいはハンディキャップや平均スコアを示すデータを含む。レーン制御コマンドは、例えば一度に表示するフレーム数などのような、情報を表示する態様を設定する。レーン制御コマンドは、ピンセッタを動作させてリセットし、あるいは特定のピングループをリセットすることができる。モバイルデバイス100は、サーバ130に対してレーン制御コマンドを送信する。
【0025】
サーバ130は、どのボウリングレーンがモバイルデバイス100と対応付けられるかを判定する。1実施例において、サーバ130は、レーン制御コマンドが特定のレーンと対応付けるよう指定している場合、モバイルデバイス100が当該特定レーンと対応付けられていると判定する。他例において、セキュリティを考慮して、サーバ130はモバイルデバイス100を1以上のレーンと対応付けるため、モバイルデバイス100を認証する。サーバ130は、モバイルデバイス100からボウラー認証情報を受け取る。ボウラー認証情報は、様々な手法で生成することができる。例えばボウラー認証情報は、予約システムにログイン成功したことにより生成することもできるし、モバイルデバイス100が認証コードをスキャンすることによって生成することもできる。他の例として、ボウラー認証情報は、認証コードや予約確認コードをモバイルデバイス100に対して手入力することによって生成することもできる。これら実装の詳細は以下に説明する。
【0026】
ボウラー認証情報を受け取った後、サーバ130はそのボウラー認証情報を用いてデータベースを照会する。データベースはサーバ130内部にあってもよいし外部にあってもよい。データベースは、ボウラー認証情報を1以上レーンと対応付けるルックアップテーブルを備える。換言するとデータベースは、1以上のレーンを制御するコマンド、またはその他サービスのため1以上のレーンと対応付けられたコマンドを発行するため、モバイルデバイス100を認証する。具体的には、サーバ130はデータベースからレーン識別値を受け取る。レーン識別値は、ボウリングレーンが認証されモバイルデバイス100から制御コマンドを受け取ることを示す。
【0027】
モバイルデバイス100が認証されると、サーバ130はモバイルデバイス100が発行するデータを受け取る。このデータは上述の制御システムいずれかに対する指示を含む。サーバ130は、レーン制御コマンドに含まれるデータを処理し、ボウリングレーンとレーン制御コマンドを示すデータを含む応答を生成する。応答は自動スコアリングシステム110に対して送り戻される。
【0028】
図3は、
図1と
図2のモバイルデバイス100の詳細図を示す。
図4は、
図2のサーバ130の詳細図を示す。モバイルデバイス100は、モバイルデバイスコントローラ200、メモリ201、入力デバイス203、通信インターフェース205、位置取得システム207、カメラ209、ディスプレイ211を備える。サーバ130は、サーバコントローラ300、メモリ301、通信インターフェース305を備える。サーバ130は、データベース320とワークステーション310に接続されている。サーバ130は、パーソナルコンピュータや汎用目的コンピュータを含む任意のネットワークデバイスと置き換えることができる。
【0029】
モバイルデバイスコントローラ200は、入力デバイス203が受け取ったユーザ入力に基づき、レーン制御コマンドを生成するように構成されている。レーン制御コマンドは、ボウリングレーンの機械システムに対する操作指示、ボウリングレーンのスコアリングシステムおよびディスプレイシステムに対する指示、その他ボウリングセンターサービスに対する指示を含む。通信インターフェース205は、サーバ130に対してレーン制御コマンドを送信するように構成されている。
【0030】
通信インターフェース305により、サーバコントローラ300はモバイルデバイス100が発行したレーン制御コマンドを受け取る。レーン制御コマンドを転送する前に、サーバコントローラ300はボウリングレーンがモバイルデバイス100と対応付けられているか否かを判定する。モバイルデバイス100がボウリングレーンと対応付けられている場合、サーバコントローラ300は自動スコアリングシステム110に対して、ボウリングレーンを示すデータとレーン制御コマンドを含む応答を送信する。
【0031】
サーバコントローラ300は、モバイルデバイス100を認証または承認するように構成することもできる。メモリ301は、レーン識別値と対応付けられたボウラー認証値のルックアップテーブルを保持する。レーン識別値は例えば、レーン番号、ボウリングセンター、期限を示すデータを含むことができる。この期限は、フレーム、ゲーム、または時間で測定され、ボウラー認証値は期限に達すると失効する。
【0032】
ルックアップテーブルは、予約システムに基づき値が登録され、または規定値が登録される。ルックアップテーブルに規定値が登録される実装において、ボウリングセンター101の各レーンはキーと対応付けられ、このキーはボウラー認証値である。ボウリングセンター101の各レーンのキーは固定である。モバイルデバイス100がボウリングセンター101の対応するレーンに対してアクセスすべきとき、予約システムは直接または間接に、キーをモバイルデバイス100へ発行する。
【0033】
ルックアップテーブルの値が予約システムに基づき登録される実装において、ルックアップテーブルの各エントリは、いくつかの方法により生成することができる。ユーザは、webサイトまたはモバイルデバイス100上で動作するアプリケーションを介して、モバイルデバイス100を用いて予約システム上のアカウントを取得する。予約システム100は、インターネット120上の適当な場所において、サーバ130によって動作またはホストされる。ユーザは、予約システム上のアカウントにアクセスするためのログインIDとパスワードを付与され、予約を実施する。これに代えて、予約はインターネット利用可能な任意のデバイスによってなすこともできる。予約システムは、予約に対応付けられたボウラー認証値を生成し、そのボウラー認証値をモバイルデバイス100へ送信する。ボウラー認証値は、セッションIDと呼ぶこともできる。予約システムは1以上のレーン識別値を割り当て、ボウラー認証値とレーン識別値をデータベース320へ送信する。
【0034】
他実装例において、予約システムはフロントデスク制御システム16によってメンテナンスされる。フロントデスク制御システム16は、POS(Point Of Sales)システムを備える。ユーザはフロントデスクにおいて予約を要求する。ユーザはこれに代えて、氏名、eメール、または電話番号を提示し、予約システム内にあらかじめ記録された予約にアクセスすることができる。フロントデスク制御システム16は、プリンタに指示して認証コードを含むレシートを印刷する。認証コードは例えば英数字値である。認証コードはこれに代えて、音声または画面表示によって通知してもよい。フロントデスク制御システム16は、少なくとも1つのレーン識別値に対応付けられたボウラー認証値として、認証コードをデータベース320へ送信する。ユーザはその認証コードをモバイルデバイス100へ入力し、モバイルデバイス100はその認証コードをサーバ130へ送信してモバイルデバイス100を認証する。
【0035】
認証コードは一時的なものであり、個々の予約のために生成される。認証コードは、ボウリングセンター識別値とレーン番号を結合したものであってもよい。また認証コードは、日付、時刻、ゲーム数を含んでもよい。認証コードは、光学読取器が読み取ることができる形式で、印刷しまたは表示することができる。光学読取可能な形式の例としては、バーコードまたはクイックレスポンス(QR)コード(2次元バーコード)が挙げられる。
図5Aは、フロントデスクにおいて生成される、QRコード(登録商標)51を含むレシート50の例を示す。QRコード(登録商標)51は、光学読取可能な任意の形式である。レシート50および/またはQRコード(登録商標)51は、モバイルデバイス100が予約システムから受け取るeメールに含めることができる。あるいはこれを印刷してモバイルデバイス100のカメラ209がスキャンすることができる。
【0036】
図5Bは、レーン制御コンソールシステム32がQRコード(登録商標)51その他任意の光学読取形式データを表示する実装例を示す。この実装例において、予約システムは省略することができる。代わりに、レーン制御コンソールシステム32がボウラー認証値を生成する。モバイルデバイス100は物理的にコンソールに十分近い位置にありQRコード(登録商標)51をスキャンするので、モバイルデバイス100は認証される。これに代えてボウラー認証値は、コンソールから読み取ってモバイルデバイス100にタイプ入力されるものであってもよい。
【0037】
他例において、モバイルデバイス100がボウリングセンター101内に配置されていることを理由として、モバイルデバイス100は認証される。例えば、サーバ130が内部ネットワーク115を経由してモバイルデバイス100から受け取った通信は、認証情報であるとみなすことができる。さらにサーバ130は、モバイルデバイス100に対して内部ネットワーク115に対応付けられたインターネットプロトコル(IP)アドレスが割り当てられている場合、モバイルデバイス100が認証されたとみなすことができる。
【0038】
モバイルデバイス100がボウリングセンター110内に位置していることを理由としてモバイルデバイス100が認証されるその他の例は、モバイルデバイス100の検出位置に基づいて起こり得る。位置取得システム207は、モバイルデバイス100の地理的位置を判定する。位置取得システム207は、衛星信号(例えばグローバルポジショニングシステム(GPS)、ロシアのGLONASS、欧州のGalileoなど)に基づき、1以上のグローバルナビゲーション衛星システムと通信する。これに加えてまたはこれに代えて、位置取得システム207は、三角測量システムを備えることができる。三角測量システムは、1以上の地上波通信信号(例えば移動体信号)、またはジャイロスコープ、加速度計、高度計、および/または従前の既知位置に基づく推測位置システムなどの相対位置センサに基づく慣性位置システムを利用する。
【0039】
サーバコントローラ300は、モバイルデバイス100の地理的位置をボウリングセンター101の地理的位置と合わせるように構成することができる。この例において、モバイルデバイス100の地理的位置を示すデータは、認証情報とみなされる。この例において、レーン識別値は全ての利用可能レーンを含み、またはレーン識別値をモバイルデバイス100が選択することができる。
【0040】
上述のように、認証情報をモバイルデバイス100に対して入力してサーバ130へ送信する経路はいくつかある。第1に、モバイルデバイス100はwebサイトまたはモバイルアプリケーションにアクセスし、認証情報を取得する。第2に、認証情報はeメールまたはレシートからモバイルデバイス100へ入力またはスキャンすることができる。第3に、認証情報はレーン制御コンソールシステム32からモバイルデバイス100へ提供することができる。
【0041】
サーバコントローラ300は、モバイルデバイス100から受け取ったボウラー認証値でルックアップテーブルを照会するように構成されている。照会に対する応答において、サーバコントローラ300は、データベース320内のルックアップテーブルからレーン識別値を受け取る。レーン識別値は、モバイルデバイス100からの制御命令を受け取る旨を認証されたボウリングレーンを示す。
【0042】
通信インターフェース305は、モバイルデバイス100からレーン制御コマンドを受け取り、レーン制御コマンドに基づき自動スコアリングシステム110に対して応答を送信する。応答はさらに、レーン制御コンソールシステム32、オーバーヘッドディスプレイシステム14、ピンセッタシステム15、フロントデスクシステム16、またはフードサービスシステム17に対して送信することもできる。
【0043】
ディスプレイ211は、入力デバイス203と組み合わせてタッチスクリーンとすることができる。容量型でもよいし抵抗型でもよい。また入力デバイス203は、1以上のボタン、キーパッド、キーボード、マウス、スタイラスペン、トラックボール、ロッカースイッチ、タッチパッド、音声認識回路、その他モバイルデバイス100に対してデータ入力するためのデバイスや部品を備えることができる。ディスプレイ211は例えば、液晶ディスプレイ(LCD)パネル、光放出ダイオード(LED)スクリーン、薄膜トランジスタスクリーン、その他タイプのスクリーンである。入力デバイス203は、光学読取可能データまたはQRコード(登録商標)などの画像を取り込むように構成されたカメラ209を備えることができる。
【0044】
モバイルデバイス100は、サーバ103がレーン制御コンソールシステム32、オーバーヘッドディスプレイシステム14、ピンセッタシステム15、フロントデスクシステム16、フードサービスシステム17のいずれか1以上に対して転送するコマンドを発行するように構成されている。
図6Aと
図6Bは、モバイルデバイス100に対してコマンドを入力する画面またはメニューの例を示す。
【0045】
図6Aに示すディスプレイ602は、ボウラー名603のリストと、ボウラーハンディキャップ604aおよびボウラー利き腕604bとを含むボウラー特性とを有している。レーン制御コンソールシステム32に対して送信されるコマンド(レーン操作コマンドと呼ぶ)は、ボウラー名リスト603に対してボウラー名を追加し、ボウラーハンディキャップリスト604aを入力もしくは変更し、またはボウラー利き腕リスト604bを右手と左手の間で入力もしくは変更する。またレーン操作コマンドは、スコア変更、一度に表示するフレーム数の選択(例えば5または10)、またはボウリングディスプレイテーマの選択(例えば子供向けテーマ、漫画テーマ、リーグ特化テーマ、など)を含む。レーン操作コマンドはまた、ゲームのルールに影響を与えることもできる。例えばレーン操作コマンドは、9ピンカウントをストライクとみなすタップなしモード、連続フレームを隣接するレーンで投げるリーグモード、または難しいピンコンビネーションがセットされている練習スキルモードへ切り替えることができる。
【0046】
オーバーヘッドディスプレイシステム14に対して送信されるコマンドは、ディスプレイコマンドと呼ぶ。オーバーヘッドディスプレイシステム14は、レーン制御コンソールシステム32と統合することができる。ディスプレイコマンドは上述のように、ボウリングディスプレイテーマの選択または一度に表示するフレーム数の選択を指定する。またディスプレイコマンドは、オーバーヘッドディスプレイシステム14上に表示するテレビプログラムを選択し、モバイルデバイス100のディスプレイをオーバーヘッドディスプレイシステム14へ送信し、またはリーグディスプレイを起動もしくは終了することができる。
【0047】
ピンセッタシステム15へ送信するコマンドは、ピンセッタコマンドと呼ぶ。ピンセッタコマンドは、ピンが欠けもしくは位置ずれしているラック全体をリセットし、ピンがレーンから落ちた部分ピンセットをセットし(そのピンはモバイルデバイス100によって特定することができる)、ボールが適切に戻ってこないときボール返却を要求し、またはガーターバンパーを起動もしくは終了することを含む。
図6Bは、モバイルデバイス100のメニュー例を示す。このメニューはピンセット611をリセットするピンセッタコマンドと部分ピンセット614をセットするピンセッタコマンドとを含む。
【0048】
フロントデスクシステム16へ送信するコマンドは、フロントデスクコマンドと呼ぶ。フロントデスクコマンドは、追加ゲームを購入すること、ボウリングレーンへのサービスを要求すること、またはコンソールもしくはモバイルデバイスに対するテクニカルアシスタンスを要求することを含む。
図6Bは、モバイルデバイス100のメニュー例を示す。このメニューは、ゲームを追加する選択613またはフロントデスクを呼び出すこと610を含む。購入に関して、サーバ130はモバイルデバイス100との通信に基づき、ボウリングセンター購入コードを生成する。このコードは、ユーザがモバイルデバイス100を介して購入を実施した後、フロントデスクシステム16へ送信される。1実施形態において、フロントデスク店員は省略することができる。すなわち、ボウラーはボウリングセンター101に入り、空のボウリングレーンへ歩いていき、フロントデスク店員と接触することなくボウリングゲームを購入する。
【0049】
フードサービスシステム17へ送信されるコマンドは、フードサービスコマンドと呼ぶ。フードサービスコマンドは、飲料またはフードアイテムを注文すること、サービス員にレーンへ来るよう要求すること、またはメニューを要求することを含む。サーバ130は、フードサービスコマンドに基づき、ボウリングセンター101に対応付けられたメニューをモバイルデバイス100に対して送信するように構成することができる。モバイルデバイス100が購入を実施すると、サーバ130はフードサービスコマンドに基づき、ボウリングセンター購入コードを生成することができる。
図6Bは、モバイルデバイス100のメニュー例を示す。このメニューはフードサービスオプション612を含む。モバイルデバイス100は、プレミアスコアリングシステム機能とゲームに対するアクセスを含む追加オプション615を提供することもできるが、追加オプション615はこれに限られるものではない。
【0050】
サーバ130は、インセンティブプログラムを実装するように構成することができる。サーバ130は、データベース320内にインセンティブプログラムに関するユーザインセンティブレコードを保持する。ボウリングゲーム、フードサービス、予約、またはモバイルデバイス100を介して認証されたその他任意アイテムを含む各購入について、モバイルデバイス100のユーザは、データベース320内のユーザインセンティブレコードにおいてクレジットを受け取る。ユーザは購入量に基づき、ディスカウント、キャッシュ、または表彰を得る。
【0051】
サーバ130は、レベニューシェアを実装するように構成することができる。サーバ130は、データベース320内に複数のボウリングセンターにまたがるレベニューシェアレコードを保持する。レベニューシェアレコードは、ボウリングゲーム、フードサービス、予約、またはモバイルデバイス100を介して認証されたその他任意アイテムの購入を反映している。レベニューシェアレコードを用いて、サーバ130の管理者、予約システムの管理者、および/または本実施形態を実装するモバイルデバイス100上で動作するモバイルアプリケーションのベンダに対して、レベニューを割り当てる。
【0052】
モバイルデバイス100は、ボウリングスコアと統計をメモリ201内に記録するように構成することができる。ボウリングスコアは、複数のボウリングセンターにおいて収集される。したがってモバイルデバイス100は、複数のボウリングセンターにまたがるボウリングアベレージを計算するように構成されている。またサーバ130は、複数のボウリングセンターにまたがるボウリングスコアを収集し、メモリ301またはデータベース320内に統計を格納することができる。
【0053】
モバイルデバイス100は、ボウリングスコアに基づきソーシャルメディア投稿を生成するように構成することができる。例えばモバイルデバイス100がソーシャルメディアサービス(例えばFacebookやTwitter)にログインしたとき、モバイルデバイス100は自動的に現在のボウリングスコアを示すデータを生成し、そのデータをソーシャルメディアサービスへ送信する。モバイルデバイス100は、当該ユーザがボウリングをプレイしており、または特定のボウリングセンターへチェックインしたことを示すステータスメッセージを生成することができる。
【0054】
図7は、
図2の自動スコアリングシステム110の実施例を示す。自動スコアリングシステム110は、複数のボウリングレーンを管理する中央管理コントローラ111を備える。各Nレーンについて、自動スコアリングシステム110は、ピンセッタコントローラ112、オーバーヘッドコントローラ113、コンソールコントローラ114を備える。第1モバイルデバイス100aは、第1ピンセッタコントローラ112a、第1オーバーヘッドコントローラ113a、第1コンソールコントローラ114aを制御するように構成することができる。第2モバイルデバイス100aは、第2ピンセッタコントローラ112a、第2オーバーヘッドコントローラ113a、第2コンソールコントローラ114aを制御するように構成することができる。Nは任意の整数である。
【0055】
モバイルデバイス100は、モバイルアプリケーションを実行する。モバイルアプリケーションは、予約システムとのやり取りまたは内部ネットワーク115を介した中央管理コントローラ111とのやり取りに応じて、ボウラー認証情報を生成する。モバイルデバイス100は認証されると、ボウラー認証情報に基づき、制御システムのサブセットに対してコマンドを送信する。ボウラー認証情報は、制御システムのサブセットを特定するレーン識別値に対応付けられている。コマンドは、コンソールコントローラ114に対するレーン操作コマンド、オーバーヘッドコントローラ113に対するディスプレイコマンド、またはピンセッタコントローラ112に対するピンセッタコマンドを含むことができる。
【0056】
コマンドは上述のように、サーバ130を経由する。これに代えてモバイルデバイス100は、内部ネットワーク115を介して中央管理コントローラ111と直接接続し、またはアドホックネットワーク(例えばBluetooth(登録商標)アドホックネットワーク)を介して制御システムのいずれかと直接することができる。この実装において中央管理コントローラは、本実施形態に係るデータベース320の全要素を含むデータベースを備える。
【0057】
図8は、
図2の自動スコアリングシステム110の別実施例を示す。
図8の実施形態において、コンソールコントローラは省略されている。ボウリングセンター101の実質的なコスト節約のため、レーン制御コンソールキオスクを同時に除去してもよい。コンソール制御システムと通常対応付けられている機能は、モバイルデバイス100と中央管理コントローラ111の組み合わせによって実施される。
【0058】
図9は、
図2の自動スコアリングシステム110の別実施例を示す。
図9の実施形態において、コンソールコントローラとオーバーヘッドコントローラは省略されている。この実施形態においても、ボウリングセンター101の実質的なコスト節約のため、レーン制御コンソールキオスクを同時に除去してもよい。ボウラーは、コンソール機能とオーバーヘッドディスプレイについて、モバイルデバイス100へ排他的に依拠している。モバイルデバイス100は、中央管理コントローラ111に対して直接的に、またはインターネットおよび/または移動体ネットワークを介してサーバ130に対して、コマンドを発行する。これらネットワークはコマンドを中央管理コントローラ111へ転送する。ボウリングセンター101は、コンソールに代えて、モバイルデバイス100を支持する台座またはスタンドを提供することができる。
【0059】
図10Aと
図10Bは、モバイルデバイス100がインターネットを介してサーバ130と通信するときのサーバ130の動作、またはモバイルデバイス100がボウリングセンターと直接通信するときの自動スコアリングシステム110の動作を説明するフローチャート例である。コントローラという用語は、サーバコントローラ300またはこれに代えて自動スコアリングシステム110のコントローラを指す。
【0060】
S101において、コントローラはモバイルデバイスが発行したレーン制御コマンドを受け取る。レーン制御コマンドは、ピンセッタリセット、スコア変更、ラインアップ変更、プレイヤーID、プレイヤー特性、ディスプレイプレファレンス、ピンの部分配置、ヘルプ要求、フードサービス要求のいずれかの組み合わせである。これに代えてレーン制御コマンドは、レーンを制御する要求のみを含むこともできる。レーン制御コマンドは、モバイルアプリケーションが起動し、ユーザがレーン制御選択を入力する前に、生成することができる。
【0061】
S103において、コントローラはどのボウリングレーンがモバイルデバイス100と対応付けられているかを判定する。レーン制御コマンドが特定のボウリングレーンと対応付けるよう要求している場合、モバイルデバイス100は特定のボウリングレーンと対応付けられているとみなすことができる。ただしよりセキュアなアルゴリズムを用いて、モバイルデバイス100を特定ボウリングレーンと対応付けることもできる。詳細は後述する。
【0062】
S105において、コントローラは自動スコアリングシステム110に対して応答を送信する。この応答は、ボウリングレーンとレーン制御システムを示すデータを含む。自動スコアリングシステム110は、モバイルデバイス100から要求された通り、レーン制御コマンドにしたがう。
【0063】
図10Bは、どのボウリングレーンがモバイルデバイス100と対応付けられているかを判定するためのセキュアアルゴリズムを示す。これはS103の拡張例である。
【0064】
S107において、コントローラはモバイルデバイス100からボウラー認証情報を受け取る。ボウラー認証情報は、予約システムにログイン成功したことにより生成することができる。ボウラー認証情報は、モバイルデバイス100が認証コードをスキャンすることにより生成することができる。ボウラー認証情報は、モバイルデバイス100に対して識別コードや予約確認コードを手動入力することにより、生成することができる。
【0065】
S109において、コントローラはボウラー認証情報でデータベースを照会する。データベースは、ボウラー認証情報をボウリングセンター101における1以上のレーンと対応付けるルックアップテーブルを含む。データベースは、ボウラー認証情報とレーン識別値をペアにするエントリを含む。
【0066】
S111において、コントローラはデータベースからレーン識別値を受け取る。レーン識別値はコントローラに対して、モバイルデバイス100が認証され1以上のレーンを制御するコマンドを発行することを指示する。またレーン識別値は、モバイルデバイス100がボウリングゲーム購入やフードサービスなどのその他サービスに対するコマンドを発行することを認証する。レーン識別値は期限切れになる場合がある。ボウリングセンターと1以上のレーンを特定することに加えて、レーン識別値は期限値を含むことができる。期限値は、ゲーム数(例えば1、2、10ゲームなど)に応じてセットされ、または時間量(例えば30分、1時間、など)に応じてセットされる。レーン識別値のフォーマット例は、{ボウリングセンターID}:{レーンID}:{ゲーム数}である。期限が切れると、モバイルデバイス100はもはやコマンドを発行することができなくなる。
【0067】
コントローラは、モバイルデバイス100に対して広告を送信するように構成することができる。広告は例えば、追加ボウリングゲームに関すること、またはボウリングセンターの季節スペシャルに関することである。またコントローラは、モバイルデバイス100に対応付けられたボウリングゲームを分析するように構成することができる。例えば初心者ボウラーは、レッスンや装備についての広告を提示される。さらにボウラーは、ボウリングゲームに基づくヒントやティップスを提示される。例えばボウラーがポケットを同じ量でミスしている場合、コントローラは訂正を提案する。
【0068】
図11は、モバイルデバイス100の動作を説明するフローチャート例である。S201においてディスプレイ211は、ユーザが自動スコアリングシステムを操作するため利用できるオプションメニューを表示する。オプションメニューは、フロントデスヘルプクリクエスト、ボウラー追加、スコア変更、ゲーム追加、ピンリセット、フードサービスリクエストを含むことができるが、これらに限られるものではない。S203において入力デバイス203は、オプションメニューからユーザ入力を受け取る。入力デバイス203は例えばタッチスクリーンである。
【0069】
S205において、コントローラはユーザ入力に基づきレーン制御コマンドを生成する。レーン制御コマンドは、自動スコアリングシステム110に対して直接送信され、あるいはサーバ130を介して間接送信される。レーン制御コマンドは、モバイルデバイス100が上述の制御システムのいずれかを制御することを許可する。
【0070】
レーン制御コマンドは、ボウリング認証情報を含むことができる。ボウリング認証情報は、例えば手動入力コードである。手動入力コードは、予約システムからeメールによって受信され、またはフロントデスクから受信される。ボウリング認証情報は、eメールから印刷したQRコード(登録商標)、またはモバイルデバイス100のカメラ209がスキャンしたレシートである。ボウリング認証情報は、モバイルデバイスの接続形態に基づき想定することができる(例えばモバイルデバイス100がボウリングセンター内部ネットワークに接続しているか、またはモバイルデバイス100がコンソールシステム32に接続しているか、またはアドホックネットワークを介して自動スコアリングシステム110に接続しているか)。
【0071】
S207において、通信インターフェース205はサーバ130に対してレーン制御コマンドを送信する。上述のように、サーバ130はモバイルデバイス100がボウリングレーンと対応付けられているか否かを判定する。例えばサーバ130は、モバイルデバイス100に対してレーン識別値で応答する。レーン識別値は、モバイルデバイス100が制御することができるボウリングセンター101内のレーンを特定し、モバイルデバイス100が認証されコマンドを発行することができる旨の確認としての役割を有する。モバイルデバイス100は、例えば「レーン1へ接続しました」などの確認メッセージを表示する。レーン識別値は、ボウリング認証情報内に含め、またはデータベース320内でボウリング認証情報とペアにすることができる。
【0072】
データベース320は、ボウラー認証情報を1以上のレーンまたはグループもしくはリーグに属するモバイルデバイスと対応付けるルックアップテーブルを含むことができる。データベースは、グループ内またはリーグ内のモバイルデバイス間の通信を認証する。モバイルデバイス100は、グループ内またはリーグ内の他のボウラーのモバイルデバイスまたはコンソールシステムにおいて表示されるメッセージを生成するように構成することができる。このメッセージは、サーバ130と自動スコアリングシステム110を経由する。
【0073】
本実施形態は、同じ原理を用いるボウリングに関係しないシステムへ適用することができる。例えば本実施形態は、ビリヤード、ダーツ、エアホッケー、シャッフルボード、バッティングセンタなどの利用ごとに購入する任意の活動において適用することができる。各例において、モバイルデバイス100は認証されサーバ320と通信し、サーバ320は利用ごとに購入する任意の活動に関連付けられたコントローラに対してコマンドを送信する。本実施形態はまた、利用ごとに購入する以外の活動に対して適用することもできる。例えば電子スコアリングシステムまたは電子スコアボードを有する任意の活動である。電子スコアリングシステムまたは電子スコアボードを有する活動としては、バスケットボール、野球、ホッケー、フットボール、その他が挙げられる。モバイルデバイス100は、電子スコアリングシステムまたは電子スコアボードを調整または制御し、統計を蓄積格納するように構成することができる。
【0074】
メモリ211および/またはメモリ301は、通信セッション要求をフィルタリングしルーティングするコンピュータ実行可能命令を格納することができる。サーバコントローラ300は、メモリ301に格納されたコンピュータ実行可能命令を実行することができる。モバイルデバイスコントローラ200は、メモリ211に格納されたコンピュータ実行可能命令を実行することができる。コンピュータ実行可能命令は、コンピュータコードに含めることができる。コンピュータコードは、任意のコンピュータ言語で記述することができる。例えばC、C++、C#、Java(登録商標)、Pascal、Visual Basic、Perl、ハイパーテキストマックアップ言語(HTML)、JavaScript(登録商標)、アセンブリ言語、拡張マークアップ言語(XML)、あるいはこれら任意の組み合わせである。
【0075】
コンピュータコードは、1以上の記憶媒体または1以上の不揮発性コンピュータ読取可能媒体へ格納し、モバイルデバイスコントローラ200またはサーバコントローラ300がこれを実行することができる。コンピュータ読取可能媒体は、フロッピー(登録商標)ディスク、ハードディスク、アプリケーション固有集積回路(ASIC)、コンパクトディスクCD、その他光学媒体、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、メモリチップまたはカード、メモリスティック、その他コンピュータ、プロセッサなどの電子デバイスが読み取ることができる媒体を含むが、これらに限られない。
【0076】
モバイルデバイスコントローラ200および/またはサーバコントローラ300は、汎用プロセッサ、デジタル信号プロセッサ、アプリケーション固有集積回路、フィールドプログラマブルゲートアレイ、アナログ回路、デジタル回路、サーバプロセッサ、これらの組み合わせ、その他既知のまたは後に開発されるプロセッサを備えることができる。モバイルデバイスコントローラ200またはサーバコントローラ300は、単一デバイスでもよいし、例えばネットワークに関連付けられもしくは分散処理する複数デバイスの組み合わせでもよい。様々な処理方式を用いることができる。例えばマルチプロセッシング、マルチタスク、パラレルプロセッシング、リモートプロセッシング、中央プロセッシング、などである。モバイルデバイスコントローラ200またはサーバコントローラ300は、ソフトウェア、ハードウェア、集積回路、ファームウェア、マイクロコード、などの一部として格納された命令を実行することができる。
【0077】
通信インターフェース205と305は、任意の接続を含むことができる。接続は、信号、物理接続、および/または論理接続を送信しおよび/または受信するものである。接続は、物理接続、電気インターフェース、および/またはデータインターフェースを含む。接続は、十分制御可能なインターフェースおよび/または接続の複数の組み合わせを含む。例えば、2つの要素が接続して互いに信号を通信し、または1以上の中間要素(例えばプロセッサ、オペレーティングシステム、論理回路、ソフトウェア)を介して通信することができる。論理通信チャネルおよび/または物理通信チャネルを用いて、接続を生成することができる。上述のように、「接続している」「連結している」という語句は、直接接続または1以上の中間要素を介して間接接続されていることを意味する。この中間要素は、ハードウェアベースまたはソフトウェアベースの要素を含むことができる。
【0078】
メモリ211および/またはメモリ301は、任意の既存タイプの揮発性メモリまたは不揮発性メモリである。メモリ211および/またはメモリ301は、読取専用メモリ(ROM)、動的ランダムアクセスメモリ(DRAM)、静的ランダムアクセスメモリ(SRAM)、プログラマブルランダムアクセスメモリ(PROM)、フラッシュメモリ、電子消去可能プログラム読取専用メモリ(EEPROM)。静的ランダムアクセスメモリ(RAM)、その他タイプのメモリのうち1以上を含むことができる。メモリ211および/またはメモリ301は、光学、磁気(ハードドライブ)、その他任意形式のデータ記憶デバイスを含むことができる。メモリ211は、リモートデバイス内に配置し、または着脱可能にすることができる。例えばセキュアデジタル(SD)メモリカードである。
【0079】
ここで説明した様々な実施形態は、単独で用いることもできるし組み合わせて用いることもできる。上述の詳細説明は、本実施形態の可能な実装のいくつかを説明したのみである。したがって本実施形態は、説明目的ためのみのものであり、限定するためのものではない。