(57)【特許請求の範囲】
【請求項１】
プロセッサとメモリ装置と複数の無線通信信号インタフェースとを有するスマートフォンによって実行される、駐車エリアの運営者に関連付けられているホストアプリケーションと駐車料金管理プロバイダに関連付けられているソフトウェア開発キッドアプリケーション（ＳＤＫアプリケーション）との間での駐車場アクセス情報を通信する方法であって、該方法によって、外部スマートオブジェクトによって保護された前記駐車エリアへのアクセスが、前記スマートフォンを携行するユーザに対してもたらされ、該外部スマートオブジェクトは、前記ＳＤＫアプリケーションの作動によって制御可能であり且つ前記スマートフォンと前記外部スマートオブジェクトとの間で前記ＳＤＫアプリケーションの作動に応答して交換される無線パーソナルエリアネットワーク通信（ＷＰＡＮ通信）によって駆動可能であり、該方法は、
前記スマートフォンの前記メモリ装置にクロスプラットフォームモバイルアプリケーションをダウンロードするステップであって、前記クロスプラットフォームモバイルアプリケーションは、前記ホストアプリケーション及び前記ＳＤＫアプリケーションにそれぞれ対応するネイティブアプリケーションマシン可読命令と非ネイティブアプリケーションマシン可読命令とを含み、前記ネイティブアプリケーションマシン可読命令が前記プロセッサによって実行されると該プロセッサに前記スマートフォンの前記複数の無線通信信号インタフェースを動員させて前記ホストアプリケーションのネイティブ機能を提供し、スクリプト言語ベースアプリケーションマシン可読命令が前記プロセッサによって実行されると該プロセッサにネイティブブリッジビューを提示させて前記ホストアプリケーションの前記ネイティブ機能を再現させる、ステップと、
前記ネイティブアプリケーションマシン可読命令を前記プロセッサが実行したことに応答して、前記スマートフォンの前記複数の無線通信信号インタフェースを介して、前記スマートフォンの位置と前記外部スマートオブジェクトの存在情報とを含む前記駐車場アクセス情報を、取得するステップと、
前記スクリプト言語ベースアプリケーションマシン可読命令を前記プロセッサが実行したことに応答して、前記スマートフォンと駐車料金管理サーバとの間での無線通信によって、前記ＳＤＫアプリケーションから前記駐車場アクセス情報を提供するステップと、
前記駐車場アクセス情報を提供するステップに応答して、前記ＷＰＡＮ通信を生成して、前記ＳＤＫアプリケーションの作動によって利用可能とされた制御に基づいて前記外部スマートオブジェクトを駆動するステップと、
を含む、方法。
【請求項２】
請求項１に記載の方法において、前記スマートフォンの前記ユーザに対して前記クロスプラットフォームモバイルアプリケーションの共通ユーザインタフェース（ＵＩ）スキームを提示して、前記ネイティブブリッジビュー内において前記ホストアプリケーションの前記ネイティブ機能を再現するステップをさらに含む、方法。
【請求項３】
請求項２に記載の方法において、前記共通ＵＩスキームは、前記ホストアプリケーションのネイティブＵＩ要素と前記ＳＤＫアプリケーションのスタイル命令によって定義されている、方法。
【請求項４】
請求項１に記載の方法において、前記位置をＧＰＳから取得するステップを更に含む、方法。
【請求項５】
請求項１に記載の方法において、前記存在情報を前記外部スマートオブジェクトから送信されたＢＬＥ信号から取得するステップを更に含む、方法。
【請求項６】
請求項１に記載の方法において、前記スクリプト言語ベースアプリケーションマシン可読命令は前記ＳＤＫアプリケーションの前記サーバからダウンロードされたＪａｖａＳｃｒｉｐｔを含む、方法。
【請求項７】
請求項１に記載の方法において、前記スクリプト言語ベースアプリケーションマシン可読命令を前記スマートフォンにダウンロードさせるリンクを含むメッセージを受信するステップをさらに含む、方法。
【請求項８】
請求項１に記載の方法において、前記存在情報はビーコン識別子（ＩＤ）又は受信信号強度指示値（ＲＳＳＩ）を含む、方法。
【請求項９】
駐車エリアの運営者に関連付けられているホストアプリケーションと駐車料金管理プロバイダに関連付けられているソフトウェア開発キッドアプリケーション（ＳＤＫアプリケーション）との間で駐車場アクセス情報を通信するためのシステムであって、
前記駐車エリアを保護するための外部スマートオブジェクトであって、前記ＳＤＫアプリケーションの作動によって制御可能であり且つ無線パーソナルエリアネットワーク通信（ＷＰＡＮ通信）によって駆動可能である、外部スマートオブジェクトと、
スクリプト言語ベースのネイティブブリッジの作動によって互いに機能的に相互作用する前記ホストアプリケーションと前記ＳＤＫアプリケーションとを含むクロスプラットフォームモバイルアプリケーションを有するモバイル機器であって、前記クロスプラットフォームモバイルアプリケーションは、前記ＷＰＡＮ通信を前記外部スマートオブジェクトと交換して駐車場アクセス情報を前記モバイル機器から取得するためのネイティブブリッジを提供する、前記スクリプト言語ベースのネイティブブリッジ内で作動するコンピュータコードを含む、モバイル機器と、
駐車料金管理サーバであって、前記ＳＤＫアプリケーションと通信して、前記ＳＤＫアプリケーションを介して提供された前記駐車場アクセス情報に基づいて前記駐車エリアに前記モバイル機器を携行するユーザがアクセスできるようにする、駐車料金管理サーバと
を備える、システム。
【請求項１０】
請求項９に記載のシステムにおいて、前記外部スマートオブジェクトはビーコンである、システム。
【請求項１１】
請求項９に記載のシステムにおいて、前記ＳＤＫアプリケーションは前記ホストアプリケーションのユーザインタフェースを再現するユーザインタフェースを含む、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、外部ハードウェアとホストアプリケーションとの間でデータを収集及び交換することに関するものであり、具体的には、ホストアプリケーションとウェブアプリケーションによって承認及び制御される外部スマートオブジェクトとの間での情報通信を行うためのシステム及び方法に関する。
【０００２】
関連出願
本願は、２０１６年１０月１９日に出願された米国仮特許出願第６２／４１０，１８９号の優先権の利益を主張するものであり、その全体が参照によって取り込まれる。
【０００３】
著作権に関する表示
（Ｃ）２０１７年Ｃｉｔｉｆｙｄ， Ｉｎｃ．。この特許文献の開示内容の一部は著作権保護に服する題材を含む。著作権者は、特許商標庁の特許包袋又は記録に含まれる態様での特許文献又は特許開示の複写的複製については何人に対しても異論はないが、その他についてはあらゆる著作権を留保する。３７ ＣＦＲ § １．７１（ｄ）。
【背景技術】
【０００４】
ホストアプリケーションは、コンピュータネットワーク上で利用可能な他のアプリケーションへのアクセスを、ユーザにもたらす。例えば、スポーツチーム団体は自己のホストアプリケーションを維持でき、これがスポーツイベントの参加者に対して、別個の特化した場内販売アプリケーションを介して場内販売サービスへのアクセスを提供でき、これを外部の（例えば、サードパーティ管理型の）ネイティブアプリケーションとして提供できる。このような構成において１つの目的は外部ネイティブアプリケーションへのアクセスをユーザに提供することであるが、これによって次の困難が生じる：即ち、ホストアプリケーションに関連付けられているユーザエクスピリエンスと一貫性を維持する態様で、個々のアプリケーション開発者の取り組みを整理することについての困難。以下においては、車両駐車料金の支払徴収管理システムの実施形態との関連でこの目的を達成するために策定された従来的ソリューションの一例を示す。
【０００５】
図１は、従来的ソリューション１０について例示するブロック図であり、ホストアプリケーション１４からのリンク１２を用いることを伴っており、これによって車両駐車料金支払徴収管理サービスプロバイダ（以下、駐車料金管理プロバイダという。）のネイティブアプリケーション１６を開く。ネイティブアプリケーション１６は、ホストアプリケーション１４内にて利用可能とされていないサービスへのアクセスを提供しつつ、ホストアプリケーション１４のルックアンドフィール（外見及び使用感）に具体的に合致するように開発されている。したがって、ウェブサイト又は他のアプリケーションとしてのホストアプリケーション１４は、ユーザのモバイル機器又はスマート装置１８（典型的にはスマートフォン）上で提示されるものであり、ネイティブアプリケーション１６にアクセスするための一意的識別子（ＵＩＤ、unique identifier）をユーザに提供する。ユーザは先ずネイティブアプリケーション１６をスマートフォン１８にダウンロードすることを要し、その後、使用の度にネイティブアプリケーション１６を開くことを要する。
【０００６】
駐車料金管理プロバイダサーバ２４は、ネットワーク接続２６及びスマートオブジェクト２８によってリンクされる。（駐車料金管理プロバイダは、明細書及び図面においては時折「Ｃｉｔｉｆｙｄ」と称される。）スマートオブジェクトとは、オブジェクトがデータの収集及び交換をできるようにする電子機器、ソフトウェア、センサ、アクチュエータ、ネットワーク接続要素が埋め込まれた物理デバイス、車両、建物及び他のものをいう。スマートオブジェクト２８はビーコンの形式をとったセンサであって、短射程無線接続３０を介してスマートフォン１８上で作動しているネイティブアプリケーション１６とリンクされたものである。この例では、駐車料金管理プロバイダサーバ２４及びビーコン２８は、車両駐車料金支払徴収管理システムの構成要素である。
【発明の概要】
【０００７】
プロセッサとメモリ装置と複数の無線通信信号インタフェースとを有するスマートフォンによって実行される方法を開示するのであって、該方法は、駐車エリアの運営者に関連付けられているホストアプリケーションと駐車料金管理プロバイダに関連付けられているウェブアプリケーションとの間での駐車場アクセス情報の通信するものである。該方法は、外部スマートオブジェクトによって保護された駐車エリアへのアクセスを、スマートフォンを携行するユーザに対してもたらす。該外部スマートオブジェクトは、ウェブアプリケーションの作動によって制御可能であり且つスマートフォンと外部スマートオブジェクトとの間でウェブアプリケーションの作動に応答して交換される無線パーソナルエリアネットワーク（ＷＰＡＮ、wireless personal area network）通信によって駆動可能である。該方法は、スマートフォンのメモリ装置にハイブリッドモバイルアプリケーションをダウンロードするステップを含む、ハイブリッドモバイルアプリケーションはネイティブアプリケーションマシン可読命令とウェブアプリケーションマシン可読命令とを含む。ネイティブアプリケーションマシン可読命令がプロセッサによって実行されるとプロセッサにスマートフォンの複数の無線通信信号インタフェースを動員させてホストアプリケーションのネイティブ機能を提供する。ウェブアプリケーションマシン可読命令がプロセッサによって実行されるとプロセッサにウェブアプリケーションをウェブビューブラウザ内で提示させてホストアプリケーションのネイティブ機能を再現させる。スマートフォンは、ネイティブアプリケーションマシン可読命令をプロセッサが実行したことに応答して、スマートフォンの複数の無線通信信号インタフェースを介して、スマートフォンの位置と外部スマートオブジェクトの存在情報とを含む駐車場アクセス情報を、取得する。スマートフォンは、ウェブアプリケーションマシン可読命令をプロセッサが実行したことに応答して、スマートフォンとウェブアプリケーションをホスティングしているサーバとの間での無線通信によって、駐車場アクセス情報をウェブアプリケーションに提供する。そして、スマートフォンは、駐車場アクセス情報の提供に応答して、ＷＰＡＮ通信を生成して、ウェブアプリケーションの作動によって利用可能とされた制御に基づいて外部スマートオブジェクトを駆動する。
【０００８】
駐車エリア運営者に関連付けられているホストアプリケーションと駐車料金管理プロバイダに関連付けられているウェブアプリケーションとの間で駐車場アクセス情報を通信するためのシステムを開示する。外部スマートオブジェクトが駐車エリアを保護する。外部スマートオブジェクトは、ウェブアプリケーションの作動によって制御可能であり且つ無線パーソナルエリアネットワーク（ＷＰＡＮ）通信によって駆動可能である。モバイル機器はハイブリッドモバイルアプリケーションを有し、該ハイブリッドモバイルアプリケーションはウェブビューブラウザの作動によってホストアプリケーションとウェブアプリケーションとが機能的に互いに相互作用することを伴っている。ハイブリッドモバイルアプリケーションはウェブビューブラウザ内で作動しているコンピュータコードを含んでおり、該コンピュータコードによってネイティブブリッジが提供され、該ネイティブブリッジはＷＰＡＮ通信を外部スマートオブジェクトと交換して駐車場アクセス情報をモバイル機器から取得するためのネイティブブリッジである。サーバは、ウェブアプリケーションをホスティングして、ウェブアプリケーションを介して提供された駐車場アクセス情報に基づいて駐車エリアにモバイル機器を携行するユーザがアクセスできるようにする。
【０００９】
このアーキテクチャの利点としては、ソフトウェア機能についての変更及び更新を伴うプログラム保守作業を専らウェブアプリケーションに対して行うことができるということが挙げられ、それ故にホストアプリケーションについて変更を加えることを要さない。
【００１０】
実施形態についての後述の詳細な説明からして、追加の観点及び利点が明白となり、これらは添付の図面に先行して配置されている。
【図面の簡単な説明】
【００１１】
【図１】従来的ソリューションについて例示するブロック図であって、該ソリューションでは、ホストアプリケーションからのリンクを用いて、車両駐車料金支払徴収管理サービスプロバイダのネイティブアプリケーションを開く、ブロック図である。
【図２】車両駐車料金支払徴収管理システムの実施形態のユーザインタフェース（ＵＩ、user interface）の概要及びコンポーネントの機能的関係性を示すブロック図であり、該システムは駐車ウェブアプリケーションを用いて外部スマートオブジェクトとモバイル機器上で作動しているホストアプリケーションとの間での情報通信を行う。
【図３】図３は簡略化されたブロック図であって、左側は図２のシステムのコンポーネントのユーザ側に向いた構成であり、右側は図２のシステムのコンポーネントのユーザにとって透明な（例えば、バックエンドの）構成である、ブロック図である。
【図４】図２〜３のシステムの外部スマートオブジェクトと相互作用するための、ホストアプリケーション及びウェブアプリケーションの機能を組み合わせたハイブリッドモバイルアプリケーションの実装例のアーキテクチャを示す図である。
【図５】図２〜４のシステム内にて行われる認証処理を示すフロー図である。
【図６】Android（登録商標） Payを用いる処理又は支払を示すフロー図である。
【図７】駐車エリアへのアクセスを予約するための購入手続をユーザが完了することを可能とするためのウェブページＵＩについての画面コピーである。
【図８】駐車エリアへのアクセスを予約するための購入手続をユーザが完了することを可能とするためのウェブページＵＩについての画面コピーである。
【図９】駐車券情報及びカスタマイズ化ＵＩコードのダウンロードを開始するためのディープリンクを含むテキストメッセージを示す画面コピーであって、それはホストアプリケーションのネイティブ機能をウェブビューブラウザ内で再現する駐車ウェブアプリケーションを介して利用可能とされる、画面コピーである。
【図１０】図９のディープリンクを取り扱うための処理について示すフロー図である。
【図１１】ホストアプリケーションがディープリンクをバッファリングする際のブロック図である。
【図１２】ビーコン検出を行うための処理についてのフロー図である。
【図１３】図１３−１及び図１３−２は、認証及びウェブアプリケーションのダウンロードに続いてのゲート開門を行うための処理についてのフロー図である。
【図１４】モバイルユーザ機材装置についてのブロック図であって、該装置はスマートフォンとして具現化されており、該スマートフォンはコンピュータ可読媒体から命令を読み取ることができるコンポーネントを有している、ブロック図である。
【発明を実施するための形態】
【００１２】
図１を参照するに、従来型ソリューション１０の短所としては次のことが挙げられる：即ち、ホストアプリケーションの運営側としては、ユーザが関係のない（例えば、サードパーティ非ホワイトリスト型）ネイティブアプリケーションをユーザのスマートフォンにダウンロードすることをして欲しくないという、問題である。なぜならば、そのようなアプリケーションは時としてホストアプリケーションのルックアンドフィールを欠如しているからである。同様に、非ホワイトリスト型ネイティブアプリケーションの開発者らは、各異なるホスト又は会場毎に別個のコードベースを開発・保守することについて、相当なリソースを出費しており、このことは図１の右側に示されたホスト及びネイティブアプリケーションの別のセット３２によって示されている。ウェブアプリケーションによって開発者が自己のコードベースの合理化をもたらし得るも、専用のブラウザ内にて実行されるそのようなアプリケーション（例えば、スマートフォンによって読み込まれたウェブサイト）は、スマートフォンのハードウェアへのアクセスに関して能力を有していない（或いは限定された能力しか有していない）。それ故、スマートフォンは、ビーコンを検出したり、駐車エリアを保護しているゲートを開門せよと無線的に指示することに関して妨げられることになる。
【００１３】
したがって、本願の開示内容は、ダウンロード可能なホストアプリケーションのハイブリッド化手法を説明するものであり、その中に非ネイティブマシン可読命令についての共通セット（例えば、ウェブアプリケーション機能）が含まれ、それによってホスト及びウェブアプリケーションが、保護された駐車エリアへのアクセスをもたらす駐車サービスユーティリティをシームレスな態様で制御できるとともに、ホストアプリケーションのネイティブ機能及び概観を再現できる。例えば、図２の左及び右側は、各々概観がカスタマイズ化された機能的に同一なウェブアプリケーションを示している。図２の各側は機能的に類似した仮想的デプロイメント局面を示しているが故に、即ち、左側がDenver Nuggetsプロフェッショナルバスケットボールチームを示し、右側がPortland Trail Blazersプロフェッショナルバスケットボールチームを示している故に、右側について先述し、左側の差異について簡単な説明が続く。もっとも、両側に関しては、類似のコンポーネントを示すために用いられる同じ参照番号が、共通要素として現れており、これらは本開示の他の図面においても示されている。
【００１４】
具体的には、図２では、車両駐車料金支払徴収管理システム１００が示されており、これはモバイルベースド車両駐車管理ソリューションを実装する。ソリューションは、駐車場ウェブアプリケーション１０２を用いて外部スマートオブジェクト２８とハイブリッドモバイルアプリケーション１０６との間で情報の通信を行い、外部スマートオブジェクト２８は一部の実施形態ではｉＢｅａｃｏｎプロトコルを実装しており、ハイブリッドモバイルアプリケーション１０６は典型的にはユーザ１１２によって携行されるスマートフォン１８であるモバイル機器１８上で作動している（図５）。
【００１５】
ハイブリッドモバイルアプリケーション１０６は、ホストアプリケーション及びウェブアプリケーションを含む。もっとも、通常の用法において及び以下の例においては、ハイブリッド（モバイル）アプリケーション及びホストアプリケーションとの用語は、可換的に用いられるのである。なぜならば、ホストアプリケーション１０６の内部には追加要素としてハイブリッド機能が含められており、実効的にはそれがハイブリッドアプリケーションになっている。結果はハイブリッドアプリケーションである。なぜならば、ネイティブアプリケーションと同様にアプリストアを介してダウンロード配給のためにモバイルアプリケーションとしてパッケージ化されており、また、ネイティブ装置アプリケーションプログラミングインターフェース（ＡＰＩ）へのアクセスを有しているからである。また、純粋なネイティブアプリケーションとは異なり、ホストアプリケーション１０６は、例えば、ネイティブＵＩフレームワークの代わりにウェブビューを介して達成される非ネイティブレイアウトレンダリングを含む。もっとも、ネイティブ機能について、ホストアプリケーション１０６は、純粋なウェブベースドアプリケーションでもない（純粋なウェブアプリケーションは専用のインターネットブラウザを介してアクセス可能である）。この意味では、ホストアプリケーション１０６は、ネイティブＡＰＩ機能等を介してネイティブ機能をアクセスするウェブアプリケーションを実行するためのラッパーを、提供する。
【００１６】
駐車ウェブアプリケーション１０２は、ハイブリッド化ホストアプリケーション１０６のウェブビューブラウザ（単にウェブビューともいう。）１０８を介してアクセスされ、ウェブサーバ１１０上にてホスティングされていることができ、これはスタンドアロンサーバか駐車料金管理プロバイダサーバ２４たり得る。換言するに、ウェブビュー１０８はホストアプリケーション１０６とウェブアプリケーション１０２とが機能的に相互作用することを可能とし、これが可能となるのはウェブサーバ１１０がウェブコンテンツを配信してからであり、車両駐車料金支払徴収管理機能を制御するために実行され、該機能はスマートフォン１８上で作動しているハイブリッド化ホストアプリケーション１０６を介してアクセスされる。例えば、ウェブアプリケーション１０２を備えるソフトウェアは、それとビーコン２８との間で通信を開始する。ビーコン２８はスマートフォン１８と共に車両の存在を感知し、これついては後述の図１２〜１３を参照して説明される。
【００１７】
ユーザ１１２がスマートフォン１８にダウンロードしてスマートフォン１８から起動したホストアプリケーション１０６は、チームのスポーツ会場にて車両駐車地表駐車場及び車庫施設を運営するプロスポーツチーム等の団体のアプリケーションを表す。例えば、ホストアプリケーション１０６は、スマートフォン１８の表示画面上にアイコン画像の形式でユーザ操作可能アクチュエータ１２４１，１２４２，１２４３，１２４４，１２４５，１２４６を提示し、それらについてユーザ１１２は選択して異なるコンピュータプログラムをアクセスすることができる。アクチュエータ１２４６についてのユーザの選択によって駐車ウェブアプリケーション１０２をアクセスする。したがって、図２の右側に示される例においては、ホストアプリケーション１０６から直接的にウェブアプリケーション機能にアクセスすることができ、それはｉＯＳアプリケーションたるVenueNext Sports & Entertainment（VenueNextスポーツ＆エンターテインメント）のハイブリッド化バージョンであり、これはカリフォルニア州サンフランシスコのVenueNextから入手可能である。
【００１８】
図２の左側に示されている実施形態等の他の実施形態では、別個の専用ウェブサイト１２６（ブラウザ１２８を介してアクセス可能であり、ウェブビュー内でも表示可能）が次のことを支援する：認証の処理（例えば、Ｃｉｔｉｆｙｄアカウントログイン）、駐車予約の購入、並びに、所謂マジック（或いはディープ）リンクを生成してユーザ１１２に受信させてユーザ１１２にタップさせることであってそれによってユーザを自動的認証させること及び駐車ウェブアプリケーション１０２へのアクセスを取得することであってその後保護及び予約された駐車エリアを探してアクセスすることを支援すること。ディープリンク統合については図８〜１１を参照して後述する。
【００１９】
図３及び４は、ホストアプリケーション１０６の実装例のアーキテクチャ並びにそれとウェブアプリケーション１０２及びビーコン２８との相互作用についてより詳しく説明する。例えば、図３は、ホストアプリケーション１０６がソフトウェア開発キット（ＳＤＫ、software development kit）フレームワーク１３０を含むことを示している。図４は、一部の実施形態では、ＳＤＫフレームワーク１３０が駐車料金管理プロバイダ（「Ｃｉｔｉｆｙｄ」）ＳＤＫフレームワーク１３０１及びApache CordovaオープンソースモバイルＳＤＫフレームワーク１３０２を含むことを示している。
【００２０】
ＣｉｔｉｆｙｄＳＤＫフレームワーク１３０１は、オープンソースＳＤＫフレームワーク１３０２によって実現されるネイティブ機能を呼び出すためのウェブアプリケーション層である。例えば、ＣｉｔｉｆｙｄＳＤＫフレームワーク１３０１は、認証処理（例えば、ディープリンクの認証コードを渡すこと）を支援し、装置サイドウェブアプリケーション処理（例えば、標準化されたウェブ技術を実行すること）を支援し、−即ち、ハイパーテキストマークアップ言語（ＨＴＭＬ）バージョン５、カスケーディングスタイルシート（ＣＳＳ）バージョン３、ＪａｖａＳｃｒｉｐｔコード−をウェブビュー１０８内で実行し、図６、１０、１２、１３の「ウェブアプリ」の列に示されている。オープンソースＳＤＫフレームワーク１３０２は、ＡＰＩを通じてスマートフォン１８のハードウェア機能へアクセスするためのネイティブブリッジを提供し、それらはネイティブコードを用いて構築されている。そして、後述するように、オープンソースＳＤＫフレームワーク１３０２は、ＣｉｔｉｆｙｄＳＤＫフレームワーク１３０１とは緊密に統合されており、ＣｉｔｉｆｙｄＳＤＫフレームワーク１３０１の特別に開発された機能を通じて制御されるものである。
【００２１】
特別に開発された機能には次のものが含まれる：暗号化、プライバシ鍵、無線通信リンク１３４（図２、３）を介してのブルートゥース（登録商標）低エネルギー（ＢＬＥ、Bluetooth(R) Low-Energy）通信、ウェブビュー１０８及びウェブサーバ１１０上で作動している駐車ウェブアプリケーション１０２間の無線インターネットプロトコル通信リンク１３６（例えば、ソケット）を介してのホストアプリケーション１０６と駐車ウェブアプリケーション１０２との間の車両駐車管理処理を連携させるためのユーザアカウント認証。例えば、長距離無線ラジオが無線ローカルエリアネットワーク（ＷＬＡＮ）又は無線ワイドエリアネットワーク（ＷＷＡＮ）の通信、例えばＷｉ−Ｆｉ（登録商標）又はＬＴＥを生成し、ビーコン２８のプロプライエタリなコードについて報告するためであり、また、サーバ２４に対して認証通信チャンネルを提供するためである。ウェブビュー１０８は、駐車ウェブアプリケーション１０２の機能を実施するための情報を、無線インターネットプロトコル通信リンク１３６を介して受信し、ビーコン２８の作動中にもたらされる信号の処理がこれに含まれる。また、ＣｉｔｉｆｙｄＳＤＫフレームワーク１３０１は、ビーコン２８とのハンドシェーク接続検証及びユーザ１１２についてのシングルサインオン（ＳＳＯ）認証エクスペリエンスを実装するためのソフトウェアを、含む（例えば、図５を参照）。さらに、図６、１０、１２、１３に示されている例示的処理を参照して説明されたように、通信リンク１３４，１３６は、オープンソースＳＤＫフレームワーク１３０２の通信インタフェース１３８，１４０，１４２によって取得された駐車場アクセス情報の交換を可能とし、それは駐車ウェブアプリケーション１０２の対応するプラグイン１３８ｗ，１４０ｗ，１４２ｗによって呼び出されている。
【００２２】
オープンソースＳＤＫフレームワーク１３０２は第１の無線通信信号インタフェース１３８を提供するものであり、スマートフォン１８とビーコン２８との間での無線通信リンク１３４（図２、３）を確立するための無線パーソナルエリアネットワーク（ＷＰＡＮ）通信（例えば、ＢＬＥ無線通信技術）を生成するのに適した短距離無線ラジオの制御を通じてこれを行う。例えば、ウェブアプリケーション１０２は、スマートフォン１８の無線機能を呼び出すＢＬＥプラグイン１３８ｗ（即ち、ＢＬＥのＡＰＩ）を含み、オープンソースＳＤＫフレームワーク１３０２はビーコン２８へのハードウェアデータゲートウェイを提供する。
【００２３】
同様に、オープンソースＳＤＫフレームワーク１３０２は、例えば宇宙ベースドな人工衛星ネットワークたる全地球測位システム（ＧＰＳ）等のナビゲーションシステム（不図示）を第２の無線通信信号インタフェースを提供し、それによって、駐車料金管理プロバイダサーバ２４に（サーバ１１０のウェブアプリケーション１０２を介して）スマートフォン１８を携行するユーザ１１２の位置及び動きについての情報を提供する。この場合、ウェブアプリケーション１０２はＧＰＳプラグイン１４０ｗ（即ち、ＧＰＳのＡＰＩ）を含み、これはスマートフォン１８のＧＰＳ機能を呼び出し、オープンソースＳＤＫフレームワーク１３０２はＧＰＳサービスへのハードウェアデータゲートウェイを提供する。
【００２４】
オープンソースＳＤＫフレームワーク１３０２はプロプライエタリなプロバイダインタフェース１４２をも含み、これはビーコン２８のプロプライエタリなコードを報告し、また、認証通信チャンネルを提供するためのものである。それに対応するプロプライエタリなプロバイダプラグイン１４２ｗがウェブアプリケーション１０２内に含まれている。
【００２５】
スマートフォン１８用の専用ネイティブアプリケーション上ではなくウェブサーバ１１０上で駐車ウェブアプリケーション１０２の作動を可能とすることによって、ホストアプリケーション１０６を用いて実装されるアーキテクチャは、ＳＤＫフレームワーク１３０１へホストアプリケーション１０６によって送られたホストアプリケーション１０６用の識別子等の基礎的構成データを除いて、ホストアプリケーション１０６内にユーザに向けられたウェブアプリケーション１０２の永続的な（即ち、静的な）ソフトウェアのインストールを不要とする。なぜならば、このソフトウェアをサーバ１１０から動的に取得できるからである。このような柔軟なアーキテクチャは合理化されたソフトウェアバージョンコントロールをもたらす。なぜならば、機能変更又は更新を加えるべき時には、駐車ウェブアプリケーション１０２のみの管理サービスを行えば足りるからである。
【００２６】
後述の図５〜１３は、ウェブアプリケーション１０２を起動すること及びサーバ２４によって認証することについての処理についてより詳しく説明するものであり、ディープリンクを含めること、駐車予約を購入すること、及び、購入済み予約を用いて保護駐車エリアへのアクセスを取得することが含まれる。
【００２７】
図５では次のことが示されている：ユーザ１１２がスマートフォン１８の表示画面上でアクチュエータ１２４６を選択したこと、認証処理１５０を開始するログインセッションが開かれたこと、駐車ウェブアプリケーション１０２へのアクセスをもたらす前に駐車料金管理プロバイダサーバ２４上にユーザ１１２が有効な車両駐車サービスアカウントを保有しているか否かを確認すること。ユーザがホストアプリケーション１０６を起動しアクチュエータ１２４６を選択した場合に、ログインセッション要求が次のものを介して送信される：インターネットプロトコル通信リンク１３６（図３、４）、随意的リンク１５２（サーバ２４がサーバ１１０とは別個の場合に存在する）（図３）、及び、サーバ２４及びサードパーティサーバ１５６の間にある接続ＡＰＩ１５４（図２）。
【００２８】
サードパーティサーバ１５６とは、ホストアプリケーション１０６に応答するホストサーバであって車両についてのアクセス及び入場管理を行うものである。ニュージャージー州ヒルズバローのSKIDATA Inc.社は、サードパーティサーバ１５６を運営しており車両アクセス制御及び収入管理ソリューションについてのサードパーティプロバイダの一例である。
【００２９】
サーバ１５６が、駐車ウェブアプリケーション１０２の運営に関して責任を負う駐車管理サービスプロバイダとは関係のない団体によって制御されているが故に、サーバ２４は、サードパーティサーバ１５６へのインターネットプロトコル通信リンク１５８を介して、ユーザ１１２の為に認証部へのアクセスを試みる。ユーザ１１２の識別情報及びアカウント情報並びにサーバ２４のソース識別情報はサーバ１５６上に格納され、既提供情報の確認をした場合、ログインセッション及びユーザ１１２の識別のために必要なセキュリティクレデンシャル並びにユーザアカウントと関連付けられている他の情報が含まれた認証トークン１６０が戻される。認証トークン１６０は、通信リンク１３６を介してホストアプリケーション１０６のネイティブユーザインタフェース要素（デザイン要素、フィンガプリント、トークン、及びバッファリングの組み合わせ）を配信し、これによってログインセッションを完了し、ユーザ１１２がウェブビュー１０８と対話することによって車両駐車場トランザクションを開始できるようになる。
【００３０】
決定ブロック１７０では、ホストアプリケーション１０６は、ユーザによってスマートフォン１８のキャッシュメモリ内に認証トークン１６０が格納されているかを決定する。ユーザ１１２についての認証トークン１６０がキャッシュメモリ内に格納されている場合、ホストアプリケーション１０６は、決定ブロック１７２，１７４，１７６にて、連続する順番でそれぞれ次のことをユーザがなしたかを決定する：ユーザ電話番号の検証、車両の登録、及び、接触又はモバイルウォレット支払機能についてのスマートフォンプラットフォームの有効化（例えば、Apple（登録商標）又はAndroid（登録商標））。決定ブロック１７２，１７４，１７６にて任意の設問に関して回答がいいえである場合、ホストアプリケーション１０６は、ユーザ１１２に対して次のことをそれぞれ要請する：処理ブロック１７８にて電話番号を検証すること；処理ブロック１８０にて追加の車両を登録すること；及び処理ブロック１８２にて支払方法を追加すること。決定ブロック１７６の支払方法基準の充足後、ユーザ１１２は、ウェブビュー１０８にて提示されるイベントリスト画像１８４で示されるようにして駐車ウェブアプリケーション１０２にアクセスするように促される。イベントリスト画像１８４の提示に先立って準備として、ユーザ１１２のアカウント情報に基づいて、ホストアプリケーション１０６のＵＩを再現する対応するマシン可読命令（ＣＳＳ、ＪａｖａＳｃｒｉｐｔ、及びＨＴＭＬ）がウェブアプリケーション１０２によって動的にダウンロードされており、これについては後述されている。
【００３１】
ユーザ１１２についての認証トークン１６０がキャッシュメモリ内に格納されていない場合、ホストアプリケーション１０６は決定ブロック１９０にて、ユーザ１１２がホストアプリケーション１０６の運営団体におけるアカウントを開設済みであるかを決定する。ユーザ１１２がそのようなアカウントを有さない場合、ホストアプリケーション１０６は、処理ブロック１９２にて、ユーザ１１２にホストアプリケーションアカウントを作成させる。
【００３２】
ホストアプリケーションアカウントの存在確認又は作成のどちらかがなされたらば、ホストアプリケーション１０６は、ユーザ１１２がアクセスするための認証トークン１６０に関してこれを（別個の場合はサーバ１１０を経由して）サーバ２４に要求する。これを受けて、サーバ２４は、ＩＰプロトコル通信リンク１５８上で認証トークン１６０をサーバ１５６に要求し、これに応答して該サーバが該トークンを返す。処理ブロック１９６にて認証トークン１６０がＩＰプロトコル通信リンク１３６を介してホストアプリケーション１０６に提供され、キャッシュメモリ内に格納される。ログインセッションの処理フローはブロック１７０にて再開し、上述のようにはいの決定で進行する。
【００３３】
認証処理１５０の代替的実施形態では、該処理はシステム１００によって遂行でき、サードパーティサーバ１５６は用いられず、駐車ウェブアプリケーション１０２は駐車料金管理プロバイダサーバ２４上で作動しており、それはウェブサーバ１１０及び認証サーバとして機能している。アクセス許可を取得するためには、ユーザ１１２はスマートフォン１８上でホストアプリケーション１０６を起動して、ユーザ操作可能アクチュエータ１２４６のアイコン画像が現れている画面へと進み、アクチュエータ１２４６を選択してログインセッションを開く。認証トークン１６０がなにも格納されていない場合、ホストアプリケーション１０６は、ウェブビュー１０８にてログインするようにユーザ１１２に指示する。ユーザログインの完了後、駐車料金管理プロバイダサーバ２４から受信された認証トークン１６０は、駐車ウェブアプリケーション１０２に提供され、ホストアプリケーション１０６のキャッシュメモリ内に格納される。キャッシュメモリ内に認証トークン１６０を格納することによって、ユーザ１１２のためにシングルサインオン認証（ＳＳＯ）エクスペリエンスが実現され、該ユーザは後のログインセッションについてサインアップ処理を省略できることになる。
【００３４】
図２及び図５に示されているように、ユーザが駐車場について予約及び購入を行える場合としては２つの実施形態がある。第１の実施形態によれば、ホストアプリケーション１０６内で購入を行うには、ユーザは、ウェブビュー１０８によって提示されるイベントリスト画像１８４の様々なイベント（例えば、予定されているバスケットボールの試合）に関してタップをしてApple PayやAndroid Payや他の所望の支払方法を用いてウェブアプリケーション１０２を介して駐車枠を購入できる。図６では、Android Payを用いてトランザクションを完了するための処理１９８についてさらに詳述している。第２の実施形態によれば、専用ブラウザ又は他のウェブベースドツール内で購入を行うためには、図２の左側に示すようなウェブサイトイベントリスト２００にて任意の項目が選択可能とされており、対応するクレジットカード支払及び確認ウェブページへと進むことになり、それぞれ図７及び図８に示されている。
【００３５】
特筆するに、図８ではディープリンク２０２（図９）を用いることについての指示が提示されており、これは支払時に生成され、随意的にはユーザ１１２へと配信され、例えばテキストメッセージ２０４内で配信される（図９）。ウェブビューはネイティブ的にはディープリンクを受信しないが故に、ディープリンクを扱うための処理２０６（図１０）によれば、ＳＤＫフレームワーク１３０はディープリンク２０２のユーザアクチュエーションに応答し、そのＵＲＬパラメータをウェブビュー１０８へと転送するようにプログラムされている。
【００３６】
図１０は、ディープリンク２０２がクリックされるシナリオが２種あることが示されている。第１シナリオではホストアプリケーション１０６は実行されておらず、ユーザ１１２がウェブアプリケーション１０２のある機能を指すディープリンク２０２をクリックすると、この場合、ホストアプリケーション１０６が起動されて、ディープリンク２０２を受信し、それをＳＤＫフレームワーク１３０へと転送する。もっとも、ウェブビュー１０８は必ずしも即時的に読み込まれるわけではないため、ＳＤＫフレームワーク１３０はディープリンク２０２をディープリンクバッファ２０８（図１１）内に格納し、ウェブビュー１０８が（例えば、ユーザ操作可能アクチュエータ１２４６を押下することによって）読み込まれたらばやがて放つために保っておく。第２シナリオでは、ホストアプリケーション１０６が実行中にユーザ１１２がディープリンク２０２をクリックすると、ＳＤＫフレームワーク１３０はそれを即時的にウェブアプリケーション１０２へと転送でき、バッファ２０８をバイパスできる。
【００３７】
ディープリンク２０２のＵＲＬコンテンツを構文解析することによって、ウェブアプリケーション１０２は情報を得ることができ、それをもって自動的にサーバ２４にて認証（即ち、手動ログインを省略）でき、対応するマシン可読命令（ＣＳＳ、ＪａｖａＳｃｒｉｐｔ、及びＨＴＭＬ）が動的にダウンロードされ、それらはホストアプリケーション１０６のＵＩを再現する。例えば、図７及び図８並びに図２の左側には色彩とグラフィクスからなるスキームが示されており、Denver Nuggetsのファンの諸君らには見覚えがあるものであろう。したがって、（タップされた）ディープリンク２０２又は別の認証処理によって、（ウェブアプリケーション１０２を介して）ホストアプリケーション１０６は次のことを惹起する：ホストアプリケーション１０６と同じスキームでユーザ１１２の駐車パスを表示するための、対応するＣＳＳファイル及びユーザデータをフェッチしてきて、それによってネイティブＵＩを再現すること。さらに、予め購入されているパスのリスト２１０がウェブアプリケーション１０２によってユーザ１１２に提示され、リスト２１０内に示されたイベントにて購入済み駐車パスを使用することに関しての次のようなオプション２１２（図２）が各々のパスについて設けられている：交換、キャンセル、ゲートのないイベントに関してはスマートフォン１８のディスプレイから手動でＱＲコードをスキャンさせること、及びその他ゲートにてデプロイすること。
【００３８】
ゲート付きイベントに関して、図１２は処理２１４を説明するものであり、該処理において、スマートフォン１８を携行するユーザ１１２の周囲においてビーコンを検知し、スマートフォン１８は自機のＧＰＳ位置を報告しており且つ付近のビーコンからＢＬＥ信号を受信中である。報告されたＧＰＳ位置がサーバ１１０によってビーコンに比較的に近いと決定された場合、ウェブアプリケーション１０２が処理２１４のＪａｖａＳｃｒｉｐｔを実行してビーコンについてスキャンし始めるようにそれが強いる。ＧＰＳデータは典型的なＧＰＳ使用時において生成され、ジオフェンシング及び三角測量のために供用される。例えば、ビーコン信号が弱い場合にはＧＰＳデータを代わりに用いて、ビーコン及び駐車希望者の位置を探知できる。
【００３９】
システム１００はソースビーコン２８及びユーザビーコンを含み、後者はスマートフォン１８内に実装されている。１つの実施形態では、ソースビーコン２８はＢＬＥ汎用属性（BLE GATT、Bluetooth Low Energy Generic Attribute）プロファイル広告データを用いて自己の存在をユーザ１１２へと宣言する。そして、ＢＬＥ機能を持たされたスマートフォン１８は、特定のユニバーサル一意的識別子（ＵＵＩＤ、Universally Unique Identifier）についてＢＬＥ広告データを監視することによって、ソースビーコン２８を発見する。各ビーコン２８は自機の識別子を送信する（例えば、CTFxx[ID]形式での名称、受信信号強度指示値（ＲＳＳＩ、received signal strength indication）、及び他の存在情報。ＳＤＫフレームワーク１３０はこの情報をスキャン及び取得し、処理のためそれをウェブアプリケーション１０２へと渡す。そして、ウェブアプリケーション１０２はＪａｖａＳｃｒｉｐｔ関数を実行して、どのビーコンが範囲内にあるかを決定して、もはや範囲内にないものを近隣検出ビーコンリストから除く。ビーコンについて近接度スコアが算出され、閾値に達する最近接ビーコンが選択されてこれがサーバ１１０に報告されて該サーバがウェブアプリケーション１０２を更新してゲート開門処理２１６が開始される（図１３）。
【００４０】
図１３は、スマートフォン１８を携行するユーザ１１２がどのようにしてウェブアプリケーション１０２を用いて、ビーコン２８をアクチュエートして駐車パスの購入と引き換えにゲートを開門するかを示している。スマートフォン１８がソースビーコン２８を識別して既定の範囲内（例えば、１．５ｍの距離）に入った場合、スマートフォン側ビーコンが認証プロセスを開始する。ソースビーコン２８はスマートフォン側ビーコン広告を読み取って、それを検証して、承認をシグナル伝達する。そして、スマートフォン１８を介して通信するウェブアプリケーション１０２はソースビーコン２８と相互作用して駐車エリアの入場及び出場バリアゲートの開閉を制御し、駐車用地表駐車場又は車庫施設に入出場する車両の存在を検出する。
【００４１】
スマートフォン１８上で稼働しているホストアプリケーション１０６は、駐車トランザクションセッションの初め及び終わりを開始させ、これによって偽陽性事象を減じる。偽陽性事象は、車両に乗車していない顧客が駐車施設を入出場することによって惹起され得る。行動を行うこと又はホストアプリケーション１０６それ自体の中で行動を行うことに関しての更なる許可をユーザ１１２に求めるプッシュ通知にて実行される明示的アクションを介して、これは達成される。システム１００によって、顧客は、商業駐車場又は施設を使用する際にそれらのインフラストラクチャを回避できる。
【００４２】
図１４は、一部の例示的実施形態による、コンポーネントについて示すブロック図であり、該コンポーネントはマシン可読又はコンピュータ可読媒体（例えば、非一時的マシン可読記憶媒体）から命令を読み出し可能なものであり、該コンポーネントは上述した任意の１つ以上の方法をなし得る。具体的には、図１４は、スマートフォン１８についての概略図であり、該スマートフォンは、１つ以上のプロセッサ（プロセッサコア）３１４、１つ以上のメモリ／記憶装置３２０、並びに、１つ以上の通信リソース３３０を含み、各々は通信可能な態様でバス３４０を介して接続され得る。
【００４３】
プロセッサ３１４（例えば、中央処理装置（ＣＰＵ）、縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ、複数命令セットコンピュータ（ＣＩＳＣ）、グラフィックス処理ユニット（ＧＰＵ）、ベースバンドプロセッサ等のデジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、無線周波数集積回路（ＲＦＩＣ）、別のプロセッサ、又は、それらの任意の適切な組み合わせ）は、例えばプロセッサ３１６及びプロセッサ３１８を含み得る。
【００４４】
メモリ／記憶装置３２０は、メインメモリ、ディスク記憶部、又は任意の適切なそれらの組み合わせを含み得る。メモリ／記憶装置３２０は任意のタイプの次のような揮発性・不揮発性メモリを含み得るがこれらには限定されない：ダイナミックＲＡＭ（ＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、フラッシュメモリ、ソリッドステート記憶部等。
【００４５】
通信リソース３３０は、相互接続やネットワークインタフェースコンポーネントや他の適切な装置を含むことができ、これらはネットワーク３０８経由で１つ以上の周辺装置３３４又は１つ以上のデータベース３０６と通信するためのものたり得る：例えば、通信リソース３３０は次のものを含み得る：有線通信コンポーネント（例えば、ユニバーサルシリアルバス（ＵＳＢ）を介しての接続のためのもの）、セルラ通信コンポーネント、ＮＦＣコンポーネント、ブルートゥースコンポーネント（例えば、ＢＬＥ）、Ｗｉ−Ｆｉコンポーネント、及び他の通信コンポーネント。
【００４６】
命令３５０は、ソフトウェア、プログラム、アプリケーション、アプレット、アプリ、又はプロセッサ３１４の少なくともどれかに対して上述した任意の１つ以上の方法を行わせる他の実行可能コードを備えることができる。命令３５０は、少なくとも１つのプロセッサ３１４（例えば、プロセッサのキャッシュメモリ）、メモリ／記憶装置３２０、又はそれらの任意の適切な組み合わせの中に、完全に又は部分的に存在できる。さらに、命令３５０の任意の部分は、任意の組み合わせの周辺装置３３４又はデータベース３０６からスマートフォン１８へと転送され得る。したがって、プロセッサ３１４のメモリ、メモリ／記憶装置３２０、周辺装置３３４、及びデータベース３０６は、コンピュータ可読媒体及びマシン可読媒体の例である。
【００４７】
本発明の根底的な原理から逸脱せずに、上述の実施形態に関して詳細事項に様々な変更を加え得ることを当業者であれば理解できよう。例えば、当業者であれば、図１２及び１３のＪａｖａＳｃｒｉｐｔの機能は、サーバサイドでも装置サイドでも実行されることができ、その結果はサーバ１１０及びスマートフォン１８の間で容易に無線的に交換され得ることに気付くであろう。したがって、本発明の範囲は、添付の特許請求の範囲によってのみ画されるべきである。
【図１】
0006918373.tif 000002
【図２】
0006918373.tif 000003
【図３】
0006918373.tif 000004
【図４】
0006918373.tif 000005
【図５】
0006918373.tif 000006
【図６】
0006918373.tif 000007
【図７】
0006918373.tif 000008
【図８】
0006918373.tif 000009
【図９】
0006918373.tif 000010
【図１０】
0006918373.tif 000011
【図１１】
0006918373.tif 000012
【図１２】
0006918373.tif 000013
【図１３−１】
0006918373.tif 000014
【図１３−２】
0006918373.tif 000015
【図１４】
0006918373.tif 000016