(57)【要約】  コンピュータ実装方法が説明される。本方法は、コンピューティングシステムがブックマークを生成するためのユーザからの第1の音声入力を受け取ることを含む。音声入力を受信したことに応答して、コンピューティングシステムは、リソースページに関連するリソース識別子を取得する。本方法は、コンピューティングシステムがユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとしてリソース識別子を記憶することを含む。本方法は、コンピューティングシステムが、リソースページにアクセスするために、ブックマークとして記憶されたリソース識別子を使用することをさらに含む。コンピューティングシステムは、ユーザデバイスからの要求に基づいてリソースページにアクセスするために、リソース識別子を使用する。ユーザデバイスがユーザから第2の音声入力を受け取ったことに応答して、要求がユーザデバイスによって生成される。
2020516980.tif 000002
【特許請求の範囲】
【請求項１】
ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムによって受け取るステップと、
前記音声入力を受信したことに応答して、リソースページに関連するリソース識別子を前記コンピューティングシステムによって取得するステップと、
ユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとして前記リソース識別子を前記コンピューティングシステムによって記憶するステップと、
前記ユーザデバイスからの前記要求に基づいて前記リソースページにアクセスするために、前記ブックマークとして記憶された前記リソース識別子を前記コンピューティングシステムによって使用するステップであって、前記ユーザデバイスが前記ユーザから第2の音声入力を受信したことに応答して、前記要求が前記ユーザデバイスによって生成される、ステップと
を含む、コンピュータ実装方法。
【請求項２】
i)前記リソースページがウェブブラウザアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページにアクセスするためのリソースアドレスを提供するユニフォームリソースロケータ(URL)である、請求項1に記載の方法。
【請求項３】
i)前記リソースページが前記ユーザデバイス上にインストールされたネイティブアプリケーションによって生成され、前記ネイティブアプリケーションが、アプリケーションインデックス内に1つまたは複数のディープリンクを記憶するように構成され、
ii)前記リソース識別子が、前記リソースページについてのユニフォームリソースロケータ(URL)であり、かつ前記ネイティブアプリケーションについてのアドレスデータを含む前記アプリケーションインデックスから取得される、
請求項1に記載の方法。
【請求項４】
前記リソース識別子を取得するステップが、
i)前記ネイティブアプリケーションに関連する前記1つまたは複数のディープリンクを記憶する前記アプリケーションインデックスにアクセスするステップと、
ii)前記リソースページについての前記URLを示すディープリンクを前記アプリケーションインデックスから選択するステップであって、前記ディープリンクが前記リソースページにアクセスするためのリソースアドレスを提供する、ステップと
を含む、請求項3に記載の方法。
【請求項５】
i)前記リソースページが、ネイティブアプリケーションインデックスに対する1つまたは複数のアプリケーションディープリンクを記憶しない、ウェブブラウザ以外のネイティブアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページに対するコンピューティング経路に関連する電子アドレスを提供する、
請求項1に記載の方法。
【請求項６】
i)前記リソースページが、前記ユーザデバイス上にインストールされた特定のタイプのアプリケーションによって生成され、
ii)前記リソース識別子が、
a)前記アプリケーションによって生成された前記リソースページの画面イメージを特定するデータ、または
b)前記アプリケーションによって生成された前記リソースページにアクセスするためのリソースアドレスを提供するディープリンク
の少なくとも一方である、
請求項1に記載の方法。
【請求項７】
前記特定のタイプアプリケーションに関連するアプリケーションコンテンツの解析に基づいて、パターンデータを前記コンピューティングシステムによって検出するステップと、
前記パターンデータに基づいて、前記ディープリンクを前記コンピューティングシステムによって生成するステップと
をさらに含む、請求項6に記載の方法。
【請求項８】
前記ユーザから前記第1の音声入力を受け取った後、
a)ネイティブアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ネイティブアプリケーションユニフォームリソースロケータ(URL)、
b)ウェブブラウザアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ウェブブラウザアプリケーションURL、
c)前記ユーザデバイス上にインストールされた仮想アシスタントアプリケーションによって生成された補助データ、または
d)前記リソースページの画面イメージを特定するデータ
のうちの少なくとも1つを含むコンテキストデータを前記コンピューティングシステムによって取得するステップ
をさらに含む、請求項1に記載の方法。
【請求項９】
前記受け取ったコンテキストデータの少なくともサブセットを示すデータを含むテンプレートを前記コンピューティングシステムによって生成するステップと、
前記リソース識別子に対応するURL、または前記リソース識別子に対応するディープリンクの一方を、前記コンピューティングシステムによって、前記テンプレートに基づいて生成するステップと、
前記リソースページにアクセスするための前記ブックマークを生成するために、前記テンプレートと前記URLまたは前記ディープリンクの一方とを前記コンピューティングシステムによって使用するステップと
をさらに含む、請求項8に記載の方法。
【請求項１０】
前記ブックマークについての識別子を前記コンピューティングシステムによって決定するステップであって、前記ブックマークについての前記識別子が、前記ユーザから前記コンピューティングデバイスによって受け取られた前記第1の音声入力に基づいて決定される、ステップ
をさらに含む、請求項1から9のいずれか一項に記載の方法。
【請求項１１】
前記ブックマークについての前記識別子が前記ブックマークの名前であり、前記方法が、
前記ブックマークについての前記識別子を前記コンピューティングシステムによって修正するステップであって、前記ブックマークをリネームするステップを含む、ステップ
をさらに含む、請求項10に記載の方法。
【請求項１２】
1つまたは複数の処理装置と、
命令を記憶するための1つまたは複数の機械可読記憶装置であって、前記命令が、
ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムによって受け取ることと、
前記音声入力を受信したことに応答して、リソースページに関連するリソース識別子を前記コンピューティングシステムによって取得することと、
ユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとして前記リソース識別子を前記コンピューティングシステムによって記憶することと、
前記ユーザデバイスからの前記要求に基づいて前記リソースページにアクセスするために、前記ブックマークとして記憶された前記リソース識別子を前記コンピューティングシステムによって使用することであって、前記ユーザデバイスが前記ユーザから第2の音声入力を受信したことに応答して、前記要求が前記ユーザデバイスによって生成される、使用することと
を含む動作を実施するように前記1つまたは複数の処理装置によって実行可能である、1つまたは複数の機械可読記憶装置と
を備える、電子システム。
【請求項１３】
i)前記リソースページがウェブブラウザアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページにアクセスするためのリソースアドレスを提供するユニフォームリソースロケータ(URL)である、
請求項12に記載の電子システム。
【請求項１４】
i)前記リソースページが、前記ユーザデバイス上にインストールされたネイティブアプリケーションによって生成され、前記ネイティブアプリケーションが、アプリケーションインデックス内に1つまたは複数のディープリンクを記憶するように構成され、
ii)前記リソース識別子が、前記リソースページについてのユニフォームリソースロケータ(URL)であり、かつ前記ネイティブアプリケーションについてのアドレスデータを含む前記アプリケーションインデックスから取得される、
請求項12に記載の電子システム。
【請求項１５】
前記リソース識別子を取得することが、
i)前記ネイティブアプリケーションに関連する前記1つまたは複数のディープリンクを記憶する前記アプリケーションインデックスにアクセスすることと、
ii)前記リソースページについての前記URLを示すディープリンクを前記アプリケーションインデックスから選択することであって、前記ディープリンクが前記リソースページにアクセスするためのリソースアドレスを提供する、選択することと
を含む、請求項14に記載の電子システム。
【請求項１６】
i)前記リソースページが、ネイティブアプリケーションインデックスに対する1つまたは複数のアプリケーションディープリンクを記憶しない、ウェブブラウザ以外のネイティブアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページに対するコンピューティング経路に関連する電子アドレスを提供する、
請求項12に記載の電子システム。
【請求項１７】
i)前記リソースページが、前記ユーザデバイス上にインストールされたメッセージングアプリケーションによって生成され、
ii)前記リソース識別子が、
a)前記メッセージングアプリケーションによって生成された前記リソースページの画面イメージを特定するデータ、または
b)前記メッセージングアプリケーションの前記リソースページにアクセスするためのリソースアドレスを提供するディープリンク
の少なくとも一方である、
請求項12に記載の電子システム。
【請求項１８】
前記メッセージングアプリケーションに関連する2つ以上のメッセージの解析に基づいて、パターンデータを前記コンピューティングシステムによって検出することと、
前記パターンデータに基づいて、前記ディープリンクを前記コンピューティングシステムによって生成することと
をさらに含む、請求項17に記載の電子システム。
【請求項１９】
前記ユーザから前記第1の音声入力を受け取った後、
a)ネイティブアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ネイティブアプリケーションユニフォームリソースロケータ(URL)、
b)ウェブブラウザアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ウェブブラウザアプリケーションURL、
c)ユーザデバイス上にインストールされた仮想アシスタントアプリケーションによって生成された補助データ、または
d)前記リソースページの画面イメージを特定するデータ
のうちの少なくとも1つを含むコンテキストデータを前記コンピューティングシステムによって取得すること
をさらに含む、請求項12から18のいずれか一項に記載の電子システム。
【請求項２０】
前記受け取ったコンテキストデータの少なくともサブセットを示すデータを含むテンプレートを前記コンピューティングシステムによって生成することと、
前記リソース識別子に対応するURL、または前記リソース識別子に対応するディープリンクの一方を、前記コンピューティングシステムによって、前記テンプレートに基づいて生成することと、
前記リソースページにアクセスするための前記ブックマークを生成するために、前記テンプレートと前記URLまたは前記ディープリンクの一方とを前記コンピューティングシステムによって使用することと
をさらに含む、請求項19に記載の電子システム。
【請求項２１】
ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムによって受け取ることと、
前記音声入力を受信したことに応答して、リソースページに関連するリソース識別子を前記コンピューティングシステムによって取得することと、
ユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとして前記リソース識別子を前記コンピューティングシステムによって記憶することと、
前記ユーザデバイスからの前記要求に基づいて前記リソースページにアクセスするために、前記ブックマークとして記憶された前記リソース識別子を前記コンピューティングシステムによって使用することであって、前記ユーザデバイスが前記ユーザから第2の音声入力を受信したことに応答して、前記要求が前記ユーザデバイスによって生成される、使用することと
を含む動作を実施するように1つまたは複数の処理装置によって実行可能である命令を記憶する、1つまたは複数の機械可読記憶装置。
【請求項２２】
i)前記リソースページが、前記ユーザデバイス上にインストールされたネイティブアプリケーションによって生成され、前記ネイティブアプリケーションが、アプリケーションインデックス内に1つまたは複数のディープリンクを記憶するように構成され、
ii)前記リソース識別子が、前記リソースページについてのユニフォームリソースロケータ(URL)であり、前記ネイティブアプリケーションについてのアドレスデータを含む前記アプリケーションインデックスから取得される、
請求項21に記載の1つまたは複数の機械可読記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、モバイルデバイスに関する。
【背景技術】
【０００２】
ウェブサイトおよびアプリケーションリソースは、ユーザに関連することも関連しないこともある任意の数のリンク、埋め込まれたファイル、および/または他の情報を含むことが可能である。具体的には、ユーザは、ユーザの関心に直接的に関連する情報源または他のリソースを検出してもよい。したがって、ユーザは、特に関連するウェブベースのリソースまたはアプリケーションリソースへの迅速なアクセスを望む場合がある。
【０００３】
ユーザは、ウェブベースのコンテンツまたはアプリケーションコンテンツへの電子的リンクを記憶するブックマークを作成してもよい。ユーザは、後にブックマークにアクセスして、関連するコンテンツに迅速にナビゲートすることが可能である。コンピューティングシステムの状況では、ブックマークは、例示的電子デバイスを介する後続のアクセスのために、ローカルまたはリモートに作成および記憶することが可能である。
【発明の概要】
【課題を解決するための手段】
【０００４】
ユーザから音声入力を受け取るユーザデバイスと、ユーザデバイスと対話して、ユーザデバイスによってアクセス可能である複数のブックマークを記憶するコンピューティングサーバとを含むコンピューティングシステムが説明される。具体的には、説明されるシステムは、ユーザデバイスの音声入力方法によって、ユーザから第1の音声入力、たとえばクエリを受け取る。クエリは、ユーザがウェブベースのコンテンツまたはアプリケーション特有のコンテンツを閲覧するときにシステムによって受け取られてもよい。
【０００５】
システムは音声入力を認識し、ユーザによって話された音声入力のトランスクリプションと、ウェブベースのコンテンツまたはアプリケーション特有のコンテンツについてのリソース識別子とを少なくとも含むことが可能である複数のデータ要素を生成する。システムのコンピューティングサーバは、複数のデータ要素を受け取り、受け取ったデータ要素を使用して、ブックマークエンジンのブックマークインデックス内に記憶されるブックマークを生成するブックマークエンジンを含む。記憶されたブックマークは、ユーザデバイスが特定のブックマークを立ち上げるためのコマンドを指定する音声入力をユーザから受け取ったことに応答して、ユーザデバイスによってアクセスすることが可能である。
【０００６】
本明細書において説明される主題の一態様は、コンピュータ実装方法で実施することが可能である。本方法は、ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムによって受信することと、音声入力を受信したことに応答して、リソースページに関連するリソース識別子をコンピューティングシステムによって取得することと、ユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとしてリソース識別子をコンピューティングシステムによって記憶することと、ユーザデバイスからの要求に基づいてリソースページにアクセスするために、ブックマークとして記憶されたリソース識別子をコンピューティングシステムによって使用することであって、ユーザデバイスがユーザから第2の音声入力を受信したことに応答して、要求がユーザデバイスによって生成されることとを含む。
【０００７】
本明細書において説明される主題の一態様は、ユーザデバイス(モバイルデバイスでもよい)と、ユーザデバイスから離れたサーバとを含むコンピューティングシステムによって実施されるコンピュータ実装方法で実施することが可能である。本方法は、ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムのユーザデバイスによって受信することと、音声入力を受信したことに応答して、第1の音声入力または第1の音声入力を示すデータをサーバに送信することとを含む。本方法は、リソースページに関連するリソース識別子をコンピューティングシステムのサーバによって取得することと、ユーザデバイスによってアクセス可能であり、またはユーザデバイスからの要求に応答してアクセス可能であるブックマークインデックス内のブックマークとしてリソース識別子をコンピューティングシステムのサーバによって記憶することとを含む。本方法は、ユーザデバイスからの別の要求に基づいてリソースページにアクセスするために、ブックマークとして記憶されたリソース識別子をコンピューティングシステムによって使用することであって、ユーザデバイスがユーザから第2の音声入力を受信したことに応答して、別の要求がユーザデバイスによって生成されることをさらに含んでもよく、たとえば、第2の音声入力の受信に応答して、ユーザデバイスは、特定の記憶されたブックマークにアクセスするためにサーバに要求を送信してもよく、要求に応答して、サーバは、ユーザデバイスがブックマークデータから特定のリソースページを識別するために、ユーザデバイスにブックマークデータを伝送してもよい。次いで、ユーザデバイスは、特定のリソースページにアクセスし、ユーザにリソースページを提示してもよい。代替として、ブックマークデータがユーザデバイス内にローカルに記憶される場合、ユーザデバイスはブックマークデータを検索し、特定のリソースページを識別してもよく、再び特定のリソースページにアクセスし、ユーザにリソースページを提示してもよい。
【０００８】
本明細書において説明される主題の一態様は、サーバによって実施されるコンピュータ実装方法で実施することが可能である。本方法は、ブックマークを生成するためのユーザからユーザデバイスへの第1の音声入力を示すデータを、サーバによってユーザデバイスから受信することを含む。本方法は、リソースページに関連するリソース識別子をサーバによって取得することと、ユーザデバイスによってアクセス可能であり、またはユーザデバイスからの要求に応答してアクセス可能であるブックマークインデックス内のブックマークとしてリソース識別子をサーバによって記憶することとを含む。本方法は、特定のブックマークをその記憶された場所から取得し、または特定のブックマークにアクセスするための要求を、サーバによってユーザデバイスから受信することをさらに含んでもよく、ユーザデバイスがユーザから第2の音声入力を受信したことに応答して、要求がユーザデバイスによって生成される。本方法は、要求の受信に応答して、ユーザデバイスがブックマークデータから特定のリソースページを識別することを可能にするために、サーバがユーザデバイスにブックマークデータを送信することをさらに含んでもよい。
【０００９】
オプションで、これらおよび他の実装はそれぞれ、以下の特徴のうちの1つまたは複数を含むことが可能である。たとえば、いくつかの実装では、リソースページはウェブブラウザアプリケーションによって生成され、リソース識別子は、リソースページにアクセスするためのリソースアドレスを提供するユニフォームリソースロケータ(URL)である。いくつかの実装では、i)リソースページが、ユーザデバイス上にインストールされたネイティブアプリケーションによって生成され、ネイティブアプリケーションが、アプリケーションインデックス内に1つまたは複数のディープリンクを記憶するように構成され、ii)リソース識別子が、リソースページについてのユニフォームリソースロケータ(URL)であり、ネイティブアプリケーションについてのアドレスデータを含むアプリケーションインデックスから取得される。
【００１０】
いくつかの実装では、リソース識別子を取得することは、i)ネイティブアプリケーションに関連する1つまたは複数のディープリンクを記憶するアプリケーションインデックスにアクセスすることと、ii)リソースページについてのURLを示すディープリンクをアプリケーションインデックスから選択することであって、ディープリンクがリソースページにアクセスするためのリソースアドレスを提供することとを含む。いくつかの実装では、i)リソースページが、ネイティブアプリケーションインデックスに対する1つまたは複数のアプリケーションディープリンクを記憶しないウェブブラウザ以外のネイティブアプリケーションによって生成され、ii)リソース識別子が、リソースページに対するコンピューティング経路に関連する電子アドレスを提供する。
【００１１】
いくつかの実装では、i)リソースページがユーザデバイス上にインストールされた特定のタイプのアプリケーションによって生成され、ii)リソース識別子が、a)アプリケーションによって生成されたリソースページの画面イメージを特定するデータ、またはb)アプリケーションによって生成されたリソースページにアクセスするためのリソースアドレスを提供するディープリンクの少なくとも一方である。いくつかの実装では、本方法は、特定のタイプアプリケーションに関連するアプリケーションコンテンツの解析に基づいて、パターンデータをコンピューティングシステムによって検出することと、パターンデータに基づいてディープリンクをコンピューティングシステムによって生成することとをさらに含む。
【００１２】
いくつかの実装では、i)リソースページが、ユーザデバイス上にインストールされたメッセージングアプリケーションによって生成され、ii)リソース識別子が、a)メッセージングアプリケーションによって生成されたリソースページの画面イメージを特定するデータ、またはb)メッセージングアプリケーションのリソースページにアクセスするためのリソースアドレスを提供するディープリンクの少なくとも一方である。いくつかの実装では、本方法は、メッセージングアプリケーションに関連する2つ以上のメッセージの解析に基づいて、パターンデータをコンピューティングシステムによって検出することと、パターンデータに基づいてディープリンクをコンピューティングシステムによって生成することとをさらに含む。
【００１３】
いくつかの実装では、ユーザから音声入力を受け取ることは、a)ネイティブアプリケーションによって生成されるものとしてリソースページを一意に特定するネイティブアプリケーションユニフォームリソースロケータ(URL)、b)ウェブブラウザアプリケーションによって生成されるものとしてリソースページを一意に特定するウェブブラウザアプリケーションURL、c)ユーザデバイス上にインストールされた仮想アシスタントアプリケーションによって生成された補助データ、またはd)リソースページの画面イメージを特定するデータのうちの少なくとも1つを含むコンテキストデータをコンピューティングシステムによって受け取ることを含む。
【００１４】
いくつかの実装では、本方法は、受け取ったコンテキストデータの少なくともサブセットを示すデータを含むテンプレートをコンピューティングシステムによって生成することと、リソース識別子に対応するURL、またはリソース識別子に対応するディープリンクの一方を、コンピューティングシステムによって、テンプレートに基づいて生成することと、リソースページにアクセスするためのブックマークを生成するために、テンプレートとURLまたはディープリンクの一方とをコンピューティングシステムによって使用することとをさらに含む。
【００１５】
いくつかの実装では、本方法は、ブックマークについての識別子をコンピューティングシステムによって決定することであって、ブックマークについての識別子が、ユーザからコンピューティングデバイスによって受け取られた第1の音声入力に基づいて決定されることをさらに含む。いくつかの実装では、ブックマークについての識別子はブックマークの名前であり、本方法は、ブックマークについての識別子をコンピューティングシステムによって修正することであって、識別子を修正することがブックマークをリネームすることを含むことをさらに含む。
【００１６】
リソースページは、たとえばユーザデバイスのディスプレイ上に現在表示されているリソースページでもよく、ユーザに提案されたリソースページでもよく、ユーザによって入力された検索クエリに応答してユーザに返されたリソースページなどでもよい。
【００１７】
この態様および他の態様の他の実装は、コンピュータ記憶装置上に符号化された、方法のアクションを実施するように構成される、対応するシステム、装置、およびコンピュータプログラムを含む。1つまたは複数のコンピュータのシステムが、動作の際にシステムにアクションを実施させる、システム上にインストールされたソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せによってそのように構成することが可能である。1つまたは複数のコンピュータプログラムが、データ処理装置によって実行されるときに装置にアクションを実施させる命令を有することによってそのように構成することが可能である。
【００１８】
この態様および他の態様の他の実装は、1つまたは複数の処理装置と、本明細書において説明される任意の態様または実施形態による方法を含む動作を実施するために1つまたは複数の処理装置によって実行可能である命令を記憶するための1つまたは複数の機械可読記憶装置とを備える電子システムを含む。この態様および他の態様の他の実装は、本明細書において説明される任意の態様または実施形態による方法を含む動作を実施するために1つまたは複数の処理装置によって実行可能である命令を記憶する1つまたは複数の機械可読記憶装置を含む。
【００１９】
本明細書において説明される主題は、特定の実施形態で実装することが可能であり、その結果、以下の利点のうちの1つまたは複数を得ることが可能である。ローカルまたは非ローカルブックマークインデックス内に記憶されたブックマークの拡張された生成、記憶、およびアクセスを可能にするコンピューティングシステムが説明される。説明されるシステムおよび方法は、ユーザからの音声入力に基づいて迅速で計算効率の高い方式でブックマークを作成することを可能にする。
【００２０】
たとえば、コンピューティングデバイスがユーザから複数のタッチまたは物理入力を受け取って処理するのではなく、ブックマークを生成することに関連するデータを迅速に取得および記憶するために、コンピューティングシステムによって単一の音声入力を使用することが可能である。コンピューティングシステムは、ブックマークを作成するためのリソース識別子、たとえばURL/ディープリンクを効率的に取得するために、既存のデータ要素を利用することが可能である。さらに、コンピューティングデバイスはまた、ブックマークの生成のために使用されるデータ要素の解析のためにシステムの非ローカルコンピューティング論理を活用することが可能であり、これは、コンピューティングデバイスが比較的限られた処理能力および電池寿命を有するモバイルデバイスであるときに特に有利である場合がある。
【００２１】
説明されるシステムおよび方法は、ローカルコンピューティングデバイスプロセッサおよびメモリの使用を最小限に抑えることを可能にし、したがってプロセッサ効率が向上し、プロセッサ/メモリ利用を他の計算に拡張することが可能である。したがって、全体のコンピューティングデバイスシステム帯域幅が改善される。
【００２２】
本明細書において説明される主題の1つまたは複数の実装の詳細が、添付の図面および以下の説明で説明される。説明、図面、および特許請求の範囲から主題の他の特徴、態様、および利点が明らかとなるであろう。
【図面の簡単な説明】
【００２３】
【図１】ユーザからの音声入力に基づいてブックマークを作成し、ブックマークにアクセスするための例示的コンピューティングシステムである。
【図２】ユーザからの音声入力に基づいてブックマークを作成するための例示的プロセスの流れ図である。
【図３】ユーザからの音声入力に基づいてブックマークを作成し、ブックマークにアクセスするための例示的ユーザインターフェースの第1のセットを示す図である。
【図４】ユーザからの音声入力に基づいてブックマークを作成し、ブックマークにアクセスするための例示的ユーザインターフェースの第2のセットを示す図である。
【図５】ユーザからの音声入力に基づいてブックマークを作成し、ブックマークにアクセスするための例示的ユーザインターフェースの第3のセットを示す図である。
【図６】ユーザからの音声入力に基づいて1つまたは複数のブックマークにアクセスするための例示的ユーザインターフェースを示す図である。
【図７】本明細書において説明されるコンピュータ実装方法とともに使用することが可能であるコンピューティングシステムのブロック図である。
【発明を実施するための形態】
【００２４】
様々な図面内の同様の参照番号および名称は、同様の要素を示す。
【００２５】
図1は、ユーザからの第1の音声入力に基づいてブックマークを生成および記憶し、ユーザからの第2の音声入力に基づいて、記憶されたブックマークにアクセスするためのコンピューティングシステム100を示す。システム100は、ウェブベースのユニフォームリソースロケータ(URL)を使用してリソースページにアクセスするためのブックマーク、またはモバイルデバイスのネイティブアプリケーション("app"とも呼ばれる)によって生成されたリソースページにアクセスするためのブックマークを生成するために、モバイルデバイスが音声入力を受け取ることを可能にする。モバイルデバイスは、複数のディープリンクを含むアプリケーションインデックスにアクセスし、リソースページにマッピングするディープリンクを使用することによって、ネイティブアプリケーションのリソースページにアクセスしてもよい。
【００２６】
モバイルデバイスは、所望のブックマーク機能を示す音声入力をユーザから受け取る。モバイルデバイスは、ユーザがウェブサイトまたはウェブベースのリソースをブラウジングしている間に、またはユーザがネイティブアプリケーションのリソースページをナビゲートしている間に音声入力を受信してもよい。たとえば、モバイルデバイスは、少なくともi)リソースページについてのURLまたはディープリンクを含む新しいブックマークを生成/作成および記憶し、ii)既存の記憶されたブックマークについてのデータを削除し、またはiii)記憶されたブックマークにアクセスし、ブックマーク内に記憶されたURLまたはディープリンクを使用してリソースページを閲覧するために、ユーザから音声クエリを受け取ることが可能である。
【００２７】
ブックマークを生成するために、システム100のコンピューティングサーバが、所望のブックマーク機能を示す音声入力についての少なくともデータ、または特定のリソースページ、ウェブベースのリソース、もしくはネイティブアプリケーションについてのコンテキスト情報を示す1つまたは複数のデータ要素を受け取る。たとえば、コンテキスト情報は、リソースページに関連するリソース識別子、たとえばURL/ディープリンク、リソースページのスクリーンショット/デジタルイメージ、またはネイティブアプリケーションについての識別子を含むことが可能である。
【００２８】
コンピューティングサーバのブックマークエンジンが、所望のブックマーク機能を示す音声入力についてのデータに基づいて、かつ/またはコンテキスト情報を示す1つまたは複数のデータ要素に基づいてブックマークを生成する。1つまたは複数のデータ要素は、対応する新しく生成されたブックマークに関連して記憶されてもよい。記憶されたブックマークにアクセスし、ブックマークに関連する特定のリソースページを閲覧するというユーザの意図を示すユーザからの音声入力に応答して、記憶されたブックマークにモバイルデバイスによってアクセスすることが可能である。
【００２９】
本明細書では、ネイティブアプリケーションは、モバイルデバイス102のコンピューティングシステムによる使用のために開発することが可能であるが、モバイルデバイスのデフォルトオペレーティングシステムに対してネイティブまたは固有のものではない場合がある、通常は"app"と呼ばれる実行可能アプリケーションプログラムである。アプリケーションプログラムは、特定のプラットフォームまたは電子デバイス上での使用のために開発されることが可能であり、プラットフォーム特有であることによって、オペレーティングシステム機能またはプラットフォームもしくはデバイス上にインストールされる他のソフトウェア機能と対話することが可能である。
【００３０】
図1の実装を再び参照すると、システム100は一般に、ユーザ/モバイルデバイス102およびコンピューティングサーバ104(以下で説明する)を含む。モバイルデバイス102は、ユーザから音声入力または他の入力を受け取るように構成される任意の適切な電子ユーザデバイスであることが可能である。いくつかの実装では、モバイルデバイス102は、セルラースマートフォンデバイス、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、電子リーダデバイス、スマートテレビジョン、または音声入力を受け取るように構成される任意の他のモバイルコンピューティングデバイスでもよい。
【００３１】
モバイルデバイス102は音声モジュール106を含む。音声モジュール106は、自動音声認識器107("ASR107")および自然言語プロセッサ108("NLP108")を含む。いくつかの実装では、モバイルデバイス102は、ユーザが新しいブックマークを生成したいことを示す音声入力103を受け取る。ブックマークは、モバイルデバイス102の例示的ディスプレイ上でユーザに提示される場合がある特定のウェブリソースへの後続のアクセスを促進または能率化するために使用することが可能である。音声モジュール106は、受け取った音声入力、たとえば音声信号データについてのデータを解析し、音声入力のトランスクリプションを生成するために使用することが可能である。
【００３２】
ASR107は、モバイルデバイス102(または以下で説明するコンピューティングサーバ104)の1つまたは複数のプロセッサによって実行される例示的音声認識論理、プログラムされた命令、またはアルゴリズムであることが可能である。たとえば、ASR107は、受け取った音声入力103の音声特徴の識別、抽出、および解析を管理するためにプログラムコードを実行することが可能である。さらに、ASR107は、受け取った音声入力103の音声特徴をNLP108とともに記憶された様々なモデルパラメータと比較するために比較器論理を実行することが可能である。比較の結果、音声入力103の発話に実質的に対応するテキストトランスクリプション出力を得ることが可能である。
【００３３】
NLP108は、一定のワード組合せまたはシーケンスを指定または識別するために音声認識で使用される例示的言語プロセッサであることが可能である。いくつかの実装では、NLP108は、可能性の高い特定のワードシーケンスまたはワード組合せの発生または存在を示すために使用することが可能であるワードシーケンス確率因子を生成するように構成することが可能である。ある場合には、識別されたワードシーケンスが、たとえば文書コーパスではなく、音声コーパスに特有であるシーケンスに主に対応することが可能である。
【００３４】
モバイルデバイス102はまた、アプリケーションモジュール110をも含む。アプリケーションモジュール110は、少なくともi)アプリケーションのリソースページを生成するために特定のアプリケーション111を実行し、またはii)特定のアプリケーション111に関連するデータを記憶するアプリケーションインデックス112にアクセスするために使用することが可能である。いくつかの実装では、アプリケーション111は、モバイルデバイス102上に記憶された少なくともウェブブラウザまたはネイティブアプリケーションであることが可能であり、アプリケーションインデックス112は、ネイティブアプリケーションのリソースページについてのアドレスデータを含むことが可能である。
【００３５】
ある場合には、アプリケーションインデックス112を介して記憶されたデータは、アプリケーション111によって生成される特定のリソースページに対するディープリンクを含むことが可能である。ネイティブアプリケーションは、アプリケーションインデックス112内に1つまたは複数のディープリンクを記憶するように構成することが可能であり、各ディープリンクは、ネイティブアプリケーションによって生成されるリソースページにマッピングすることが可能である。各ディープリンクはまた、ディープリンクにマッピングされるリソースページにアクセスするためのリソースアドレスを提供する。
【００３６】
モバイルデバイス102は、ブックマークインデックス114、デバイスアシスタント116、およびコンテキストデータエンジン118をさらに含む。インデックス114は、生成されたブックマークのローカル記憶と、生成されたブックマークへのアクセスとを提供する。たとえば、インデックス114は、少なくとも音声入力103に基づいて生成される複数のブックマークのリスティングを記憶するように構成することが可能である。
【００３７】
デバイスアシスタント116は、ユーザに1つまたは複数の仮想アシスタント機能を提供するように構成されるソフトウェアプログラムに対応することが可能である。たとえば、デバイスアシスタント116は、ユーザから音声クエリを検出または受信し、クエリに応答するウェブ結果を取得するために計算を実行し、取得されたウェブ結果に基づいて音声応答を提供するように構成することが可能である。以下でより詳細に論じるように、いくつかの実装では、ブックマークは、デバイスアシスタント116によって生成され、モバイルデバイス102によって受信されたユーザ音声クエリに応答するウェブ結果を使用して作成することが可能である。
【００３８】
コンテキストデータエンジン118は、音声入力103がデバイスによって受信されたとき、ウェブベースのリソースまたはモバイルデバイス102によって実行中のネイティブアプリケーション、たとえばアプリケーション111についてのコンテキストデータを取得するように構成される。たとえば、データエンジン118は、音声入力103がデバイスによって受け取られたとき、i)ネイティブアプリケーションのリソースページを一意に特定するURL、ii)ネイティブアプリケーションについての識別子、iii)ウェブサイトのリソースページを一意に特定するウェブサイトURL、またはiv)モバイルデバイス102のディスプレイ上でユーザに提示されたリソースページのスクリーンショットのうちの1つまたは複数を抽出するように構成することが可能である。
【００３９】
いくつかの実装では、デバイスアシスタント116は、表示されるリソースページに関連するデータ、たとえばデバイス補助データ137を生成することが可能である。このデバイス補助データ137は、表示されるリソースページの属性を示す複数のデータ要素を含むことが可能である。たとえば、デバイス補助データ137は、例示的メッセージングアプリケーションによって表示される電子メッセージの送信側または受信側のユーザ名、または特定のリソースページを介して表示される情報についてのデータを含むことが可能である。
【００４０】
補助データ137およびスクリーンショットデータに、複数のアノテータを使用して注釈を付けることが可能である。たとえば、ブックマークを作成するためのデータを注釈に基づいて抽出することが可能となるように、エンティティ、名前、連絡先、ユーザ名、住所、電話番号などの情報に注釈を付けることが可能である。
【００４１】
要素データ134は、コンテキストデータ136、デバイス補助データ137、トランスクリプション138、アプリケーション識別子140("app ID140")、およびリソース識別子(ID)142を含むことが可能である。コンテキストデータ136は、ユーザに表示するために生成された特定のリソースページについてのコンテキスト情報、またはモバイルデバイス102を介してアクセス可能なウェブベースのリソースまたはネイティブアプリケーションについての情報を示すことが可能である。
【００４２】
たとえば、コンテキストデータ136のコンテキスト情報は、i)特定のリソースページにアクセスするためのアドレスを提供するリソース識別子142、たとえばURL/ディープリンク、ii)新しいブックマークを特定するために使用することが可能である説明データ、iii)特定のリソースページのスクリーンショット/デジタルイメージ、またはiv)モバイルデバイス102によって実行され、ユーザがそれについてブックマークを作成することを望むネイティブアプリケーションを特定するapp ID140のうちの少なくとも1つを含むことが可能である。
【００４３】
要素134は一般に、モバイルデバイス102によって受け取られたクエリ音声入力についてのデータを含むことが可能である。そのようなデータは、モバイルデバイス102によって受け取られた1つまたは複数の所望のブックマーク機能を示すトランスクリプション138を含むことが可能である。図1に示されるように、モバイルデバイス102は、所望のブックマーク機能を示す音声入力103、105をユーザから受け取ることが可能である。たとえば、モバイルデバイスは、少なくともi)特定のリソースページについてのURLまたはディープリンクを含む新しいブックマークを生成/作成および記憶し、またはii)記憶されたブックマークにアクセスし、ブックマーク内に記憶されたURLまたはディープリンクを使用して特定のリソースページを閲覧するための音声クエリをユーザから受け取ることが可能である。
【００４４】
モバイルデバイス102は、ユーザがウェブサイトまたはウェブベースのリソースをブラウジングしている間に、またはユーザがネイティブアプリケーションのリソースページをナビゲートしている間に音声入力を受け取ることが可能である。システム100がブックマークを作成/生成するためのクエリを受け取ったことに応答して、コンピューティングサーバ104は、モバイルデバイス102から要素134を受け取り、または取得する。サーバ104は、1つまたは複数のブックマークを生成および記憶するために、受け取った要素134を使用する。
【００４５】
コンピューティングサーバ104は一般に、要素134を受け取り、要素134に基づいて1つまたは複数のブックマークを生成するブックマークエンジン120(「BMエンジン120」)を含む。BMエンジン120は、データ解析論理122、光学式文字認識(OCR)論理124、ブックマークインデックス126、アプリケーションテンプレート128、およびデータストレージ130を含む。BMエンジン120は、サーバ104の例示的コンピューティングモジュールである(またはサーバ104によってアクセス可能である)ことが可能であり、ブックマークインデックス126およびデータストレージ130内に記憶するための複数のブックマークを生成するための複数のデータ要素を受け取り、処理するように構成される。
【００４６】
本明細書では、「モジュール」という用語は、限定はしないが、コンピュータの処理装置に1つまたは複数の機能を実行させるプログラムコードを含む1つまたは複数のソフトウェアプログラムを実行するように構成される1つまたは複数のコンピュータを含むものとする。「コンピュータ」という用語は、デスクトップコンピュータ、ラップトップコンピュータ、メインフレームコンピュータ、タブレットデバイス、サーバ、ハンドヘルド装置、モバイルもしくはスマートフォンデバイス、データを処理することのできる任意の他のデバイスなどの任意のデータ処理装置を含むものとする。
【００４７】
いくつかの実装では、BMエンジン120は、モバイルデバイス102から受け取った要素データ134を解析するためにデータ解析論理122を使用するように構成することが可能である。OCR論理124は、モバイルデバイス102から受け取った、モバイルデバイス102によって受け取られた音声クエリに対応する例示的トランスクリプションの光学式文字を認識するためにBMエンジン120によって使用することが可能である。
【００４８】
論理122は、要素データ134から一定のデータを抽出し、抽出したデータを使用してブックマークを生成/作成するために使用することが可能である。たとえば、ブックマークは、i)ネイティブアプリケーションディープリンク、ii)ウェブサイトURL、またはiii)リソースページのスクリーンショットのうちの1つに対応するリソース識別子を抽出または取得するために、論理122を使用してBMエンジン120によって作成することが可能である。
【００４９】
いくつかの実装では、リソース識別子を取得することは、システム100がネイティブアプリケーションに関連する1つまたは複数のディープリンクを記憶するアプリケーションインデックス112にアクセスすること、およびリソースページについてのリンク、たとえばURLを示すディープリンクをアプリケーションインデックスから選択することを含むことが可能である。選択されたディープリンクは、リソースID142に対応することが可能であり、要素データ134とともにBMエンジン120に提供することが可能である。BMエンジン120は、選択されたディープリンクを、ブックマークを生成するための取得されたリソース識別子として使用することが可能であり、それによってディープリンクは、リソースページにアクセスするためのリソースアドレスを提供する。
【００５０】
いくつかの実装では、ブックマークを生成するためにコンテキストデータ136を他の既存のデータと結合することが可能である。例示的既存データは、ネイティブアプリケーションの1つまたは複数のディープリンクの構造がモバイルデバイス102にとって既知である少なくとも1つのネイティブアプリケーションを含むことが可能である。ある場合には、ブックマークを生成するための少なくとも1つのディープリンクを取得するために、この例示的既存データをサーバ104によって使用することが可能である。
【００５１】
コンテキストデータ136を形成するデータ項目の少なくともサブセットについてのデータを含むアプリケーションテンプレート128を生成するようにBMエンジン120を構成することが可能である。いくつかの実装では、BMエンジン120は、ウェブベースのリソースについてのリソース識別子に対応するURL、またはネイティブアプリケーションについてのリソース識別子に対応するディープリンクの少なくとも一方を取得するために、生成されたテンプレート128を使用することが可能である。次いでBMエンジン120は、特定のリソースページにアクセスするためのブックマークを生成するために、テンプレート128と、URLまたはディープリンクとを使用することが可能である。
【００５２】
生成されたブックマークは、ブックマークインデックス126内に記憶されてもよい。モバイルデバイス102によって受け取られた音声入力105に応答してインデックス126にアクセスするようにモバイルデバイス102を構成することが可能である。いくつかの実装では、BMエンジン120は、ブックマークインデックス126(サーバ側)内にブックマークを記憶し、デバイス上のブックマークインデックス114にローカルに記憶するためにモバイルデバイス102にブックマークデータ143(以下で説明する)を伝送する。
【００５３】
たとえば、特定のブックマークにアクセスするためのユーザコマンドを受け取ったことに応答して、モバイルデバイス102は、ブックマークインデックス126(サーバ側)内の記憶された場所から特定のブックマークを取得/アクセスするためにサーバ104に要求を送信することが可能である。代替として、特定のブックマークにアクセスするためのユーザコマンドを受け取ったことに応答して、サーバ104に要求を送信するのではなく、モバイルデバイス102は、(デバイス102に対してローカルの)ブックマークインデックス114内の記憶された場所から特定のブックマークを取得/アクセスすることが可能である。
【００５４】
いくつかの実装では、音声入力105は、デバイスに、ブックマークインデックス114またはインデックス126の一方の中に記憶されたブックマークにアクセスさせるモバイルデバイス102によって受け取られるユーザコマンドである。ある場合には、記憶されたブックマークへのアクセスを容易にし、または能率化するために、生成されたブックマークと、要素データ134を形成する要素の少なくともサブセットとをそれぞれ、データストレージ130内に記憶することが可能である。モバイルデバイス102は、音声入力105を受け取ったことに応答して、ブックマークデータ143を受け取り、またはアクセス/取得する。
【００５５】
たとえば、モバイルデバイス102による音声入力105の受取りによって、ブックマークインデックス126内に記憶された特定のブックマークにアクセスするために、デバイスに、サーバ104に要求を送信させることが可能である。要求を受信したことに応答して、サーバ102はブックマークデータ143を伝送することが可能である。ブックマークデータ143(「BMデータ143」)は、上記で論じた説明144、ディープリンク146、ウェブURL148、スクリーンショットデータ150、およびapp ID140を含むことが可能である。モバイルデバイス102は、特定のリソースページにアクセスして、モバイルデバイス102のディスプレイを介してユーザにリソースページを提示するために、BMデータ143のリソース識別子を使用することが可能である。
【００５６】
BMデータ143に関して、説明144は、新しく作成されたブックマークを識別するために使用されるブックマーク説明データを含む。例示的説明144は、「私のインターネット銀行」や「G. Doeのレストラン」などのテキストであることが可能である。ディープリンク146は、ネイティブアプリケーションのリソースページにアクセスするためにモバイルデバイス102によって使用されるリソース識別子である。ウェブURL148は、ウェブブラウザアプリケーションのリソースページにアクセスするためにモバイルデバイス102によって使用されるリソース識別子である。スクリーンショット150は、記憶されたブックマークにモバイルデバイス102がアクセスするときにユーザに提示することが可能であるリソースページのデジタルイメージである。
【００５７】
図2は、ユーザからの音声入力に基づいてブックマークを作成するための例示的プロセス200の流れ図である。プロセス200の説明される動作またはステップは、システム100の例示的モバイル/ユーザデバイスおよび例示的コンピューティングサーバのプロセッサおよびメモリによって実行可能であるコンピューティング論理またはプログラムされた命令の実行に基づいて動作可能にし、または実施することが可能である。
【００５８】
ボックス202は、ブックマークを生成することに関係するプロセス200の動作を示す。ボックス204では、モバイルデバイス102が、ユーザが特定のリソースページにアクセスするためのブックマークを生成したいことを示すユーザ音声クエリ、たとえば音声入力103を受け取る。いくつかの実装では、ブックマークを作成したいことを示すことは、ユーザがリソースページについてのブックマークを作成したいことを明示的に述べることを含む。ボックス206では、ユーザクエリを受け取ったことに応答して、システム100は、コンピューティングサーバ104に伝送するための要素134を準備し、抽出し、または取得することが可能である。
【００５９】
ユーザがそれについてブックマークを作成したいリソースページは現在、モバイルデバイス102のディスプレイを介してユーザによって閲覧可能である。ある場合には、ユーザがそれについてブックマークを作成したいリソースページは、デバイスアシスタント116によってユーザに提案されるウェブ結果であることが可能である。ユーザがブックマークを作成したいことを述べるユーザ音声クエリは、作成されるブックマークに割り当てられるようにユーザが望む名前を含むことが可能である。
【００６０】
いくつかの実装では、システム100は、ユーザクエリの意図がシステム100がブックマークを作成することについてであるかどうかを判定するために、音声クエリを解析することが可能である。たとえば、システム100は、ブックマークを作成する意図を示す一定のワードまたは語句を検出するために、文法解析やn-gram解析などの1つまたは複数の技法を使用することが可能である。さらに、システム100は、ブックマークを作成する意図を示す、埋め込まれたクエリを決定または検出するために、機械学習論理を使用することが可能である。
【００６１】
ボックス208では、プロセス200は、ユーザがシステム100がブックマークを作成することを意図するかどうかを判定することを含む。ユーザがシステムがブックマークを作成することを意図しないとシステム100が判定する場合、プロセス200はボックス210において終了する。ユーザがシステムがブックマークを作成することを意図するとシステム100が判定する場合、プロセス200はボックス212に進み、システム100はコンピューティングサーバ104に要素134を伝送する。
【００６２】
ボックス212では、システム100は、要素データ134のデータ項目を解析し、要素データ134の1つまたは複数の項目をストレージ130内に記憶するために、BMエンジン120を使用することが可能である。たとえば、ボックス214では、BMエンジン120は、サーバ104から要素データ134の少なくとも一部を取得し、または受け取り、ボックス216では、BMエンジン120は、要素データ134の少なくとも一部をデータストレージ130内に記憶してもよい。ボックス218では、BMエンジン120は、要素データ134を解析し、ブックマークを識別するために使用されるブックマークに割り当てられるべき少なくとも名前を抽出するために、論理122を使用することが可能である。前述のように、要素データ134の一部またはサブセットは、コンテキストデータ136、補助データ137、トランスクリプション138、app ID140、またはリソースID142のうちの1つまたは複数を含むことが可能である。
【００６３】
ブックマークを作成するユーザの意図を述べるクエリ音声入力103はまた、作成されたブックマークを識別するためにユーザが割り当てることを望む名前をも含むことが可能である。たとえば、音声入力103は、「ブックマークページを私のバンキングとして」というユーザの陳述を含むことが可能であり、したがって「私のバンキング」が、ブックマークを識別するために使用される名前となる。モバイルデバイス102は、単一のユーザセッションの間に複数の音声入力103クエリを受け取ることが可能である。いくつかの実装では、ユーザが以前に少なくとも1つのブックマークとして作成した現ユーザセッションについて、BMエンジン120は、ブックマークを識別するための名前を取得または抽出するために、最新の以前のクエリのコンテンツデータを使用することが可能である。
【００６４】
いくつかの実装では、音声入力103を受け取ったことに応答して(ボックス204)、システム100は、ユーザがそれについてブックマークを作成したいリソースページに関連するリソース識別子を作成または取得するためにBMエンジン120を使用する。ネイティブアプリケーションによって生成されたリソースページについて、BMエンジン120は、リソースページにアクセスするためのリソースアドレスを提供するアプリケーションディープリンクを使用して、リソース識別子を取得することが可能である。代替または追加として、ウェブブラウザアプリケーションによって生成されたリソースページについて、BMエンジン120は、リソースページにアクセスするためのリソースアドレスを提供するURLを使用して、リソース識別子を作成することが可能である。
【００６５】
いくつかの実装では、システム100がブックマークを生成するとき、BMエンジン120は、モバイルデバイス102のディスプレイを介してユーザが現在閲覧しているリソースページについてのリソース識別子を作成または取得する。ある場合には、ネイティブアプリケーションによって生成されたリソースページについてのリソース識別子を取得することは、ネイティブアプリケーションのアプリケーション識別子(app ID)を取得すること、およびapp IDをリソース識別子に関連付けることをも含むことが可能である。上記で示されるように、ブックマークを生成するためのリソース識別子を要素データ134から取得することが可能であり、または以下で説明する1つまたは複数のプロセスステップに基づいて、システム100によって少なくとも部分的に作成することが可能である。
【００６６】
たとえば、ボックス220では、プロセス200は、URLまたはディープリンクに対応するリソース識別子を要素データ134から、たとえばコンテキストデータ136または補助データ137を使用することによって取得することが可能であるかどうかを判定する。同様に、ボックス220では、プロセス200は、ネイティブアプリケーションについてのapp IDを要素データ134から、たとえばapp ID140を使用することによって取得することが可能かどうかを判定する。
【００６７】
URLまたはディープリンクについてのリソース識別子、またはネイティブアプリケーションについてのapp IDを要素データ134から取得することが可能であるとシステム100が判定する場合、システム100は、i)ネイティブアプリケーションリソースページにアクセスするためのブックマークを生成および記憶するために、app IDを含む、取得されたディープリンクをリソース識別子として使用する(ボックス222)、ii)ウェブブラウザのリソースページにアクセスするためのブックマークを生成および記憶するために、取得されたURLをリソース識別子として使用する(ボックス224)、またはiii)コンテキストデータ136から抽出可能である任意のスクリーンショットデータを記憶する(ボックス226)のうちの少なくとも1つであることが可能である。ある場合には、スクリーンショットデータをデータストレージ130内に記憶して、生成されたブックマークとリンクすることが可能である。
【００６８】
URLまたはディープリンクについてのリソース識別子、またはネイティブアプリケーションについてのapp IDを要素データ134から取得することができないとシステム100が判定する場合、システム100は、app IDを取得するためにコンテキストデータ136とともに含まれるスクリーンショットデータを使用することが可能である(ボックス228)。代替として、システム100はまた、app IDを取得するために補助データ137を使用することも可能である。
【００６９】
いくつかの実装では、アプリケーションインデックス112は、ネイティブアプリケーションによって生成されたリソースページについてのディープリンクを含まない場合があり、インデックス112はまた、特定のネイティブアプリケーションについてのapp IDを含まない場合がある。したがって、ある場合には、モバイルデバイス102は、ネイティブアプリケーションインデックス、たとえばインデックス112に対するアプリケーションディープリンクを記憶しない、ウェブブラウザ以外のネイティブアプリケーションによって生成される、ユーザに表示するためのリソースページを提供してもよい。
【００７０】
ボックス230では、インデックス112が特定のディープリンクまたはapp IDを含まない実装について、システム100は、ブックマークを生成するために使用することが可能であるパターンデータが存在するかどうかを検出または判定することが可能である。パターンデータは、アプリケーションディープリンクを作成する、それについての既知のパターンがシステム100内に存在し、かつ/またはシステム100のメモリ内に記憶されるネイティブアプリケーションに対応することが可能である。パターンデータは、ユーザデバイス上にインストールされ、またはユーザデバイスからアクセス可能である様々な異なるタイプのネイティブアプリケーションについて存在する場合がある。したがって、アプリケーションディープリンクを定期的に作成する任意のタイプのアプリケーションについてパターンデータを使用することが可能である。
【００７１】
いくつかの実装では、パターンデータを、補助データ137やコンテキストデータ136のスクリーンショットイメージなどの要素データ134の1つまたは複数の項目と関連付けることが可能である。たとえば、補助データ137および/またはスクリーンショットデータは、モバイルデバイス102上にインストールされたメッセージングアプリケーション、たとえばネイティブアプリケーションに対応することが可能である。パターンデータは、チャットapp内で表示されるユーザ名または連絡先名や、チャットappによってアクセス可能であるユーザ連絡先リスト内に記憶された電話番号などの2つ以上のメッセージ内で識別されるユーザの属性を含むことが可能である。
【００７２】
別の実装では、要素データ134の項目に関連付けられるパターンデータは、モバイルデバイス102を使用してアクセス可能である様々な他のタイプのネイティブアプリケーションに対応することが可能である。たとえば、パターンデータが、ゲーミングアプリケーション、レストランレビューアプリケーション、バンキングアプリケーション、ソーシャルメディアアプリケーション、またはアプリケーションディープリンクを含むことが可能であるパターンデータを定期的に作成する任意の他のタイプのアプリケーションについて存在し、あるいはそれらに対応することが可能である。
【００７３】
たとえば、ユーザが人気のあるゲーミングアプリケーションである"Angry Games"をプレイしている場合、Angry Gamesのレベル7において、モバイルデバイス102を介してユーザに表示するために、テキスト「レベル7」を生成することが可能である。具体的には、Angry Games appについてのパターンデータに関連する少なくとも1つのディープリンクが、ディープリンクを定義するハイパーリンクまたは一意識別子内のレベル番号を含んでもよい。たとえば、Angry Gamesの特定のインデックス付けされたレベル(またはセクション)に対するディープリンクが、一般的パターン"angry-games://$level"を有してもよく、より具体的には、Angry Gamesのレベル7に対するディープリンクが、一般的パターン"angry-games://7"を有してもよい。ある場合には、先行する例示的一般的パターンは、様々な他のタイプのアプリケーションに適用することが可能であり、たとえば"any-app://$section/level"と表現してもよい。
【００７４】
この状況では、このパターンデータの存在を検出または判定したことに応答して、システム100は、パターンデータ(たとえば、補助データ137またはコンテキストデータ136のスクリーンショットイメージ)を含む、またはパターンデータに関連する要素データ134の項目から少なくともレベル/セクション番号を解析および/または抽出することが可能である。したがって、システム100は、Angry Gamesレベル7またはAny Appセクションに対するディープリンクを使用して例示的ブックマークを構築または生成するために、このパターンデータを使用することが可能である。Angry Gamesについてのブックマークを参照すると、ブックマークの選択によって、ゲーミングアプリケーションの実行を引き起こし、ユーザに対する表示のために以前に生成されたレベル7の特徴を閲覧することが可能である。一般には、アプリケーションディープリンクおよびディープリンクについてのリソース識別子を作成するために使用されるデータセットを形成するために、パターンデータを解析および抽出することが可能である。
【００７５】
いくつかの実装では、ユーザがそれについてのブックマークを作成することを望むリソースページは、メッセージングアプリケーションによって、またはモバイルデバイス102上にインストールされた1つまたは複数の他のタイプのアプリケーションのうちのアプリケーションによって生成されるページでもよい。この実装では、リソースページについてのリソース識別子は、i)メッセージングアプリケーション/他のアプリケーションによって生成されたリソースページの画面イメージ特定するデータ、たとえばメッセージング/チャットウィンドウのスクリーンショット、またはii)メッセージングアプリケーション/他のアプリケーションのリソースページにアクセスするためのリソースアドレスを提供するディープリンクのうちの少なくとも一方であることが可能である。したがって、メッセージングアプリケーション/他のアプリケーションに関連する2つ以上のメッセージ/他のデータの解析に基づいてパターンデータを検出し、パターンデータに基づいてディープリンクを生成するようにシステム100を構成することが可能である。
【００７６】
ボックス232では、システム100は、アプリケーションディープリンクを作成するために、検出されたパターンデータの1つまたは複数のデータ要素を使用および/または抽出することが可能である。たとえば、システム100は、1つまたは複数のデータ要素を抽出してアプリケーションディープリンクを作成するために、パターンデータを少なくとも部分的に形成する少なくとも補助データ137またはスクリーンショットデータを参照することが可能である。ボックス234では、パターンデータの抽出されたデータ要素が、ブックマークインデックス126および/またはインデックス112内に記憶されるブックマークを生成するためのリソース識別子として働くディープリンクを生成するために、システム100によって使用されるデータセットを形成することが可能である。
【００７７】
再びボックス230を参照すると、インデックス112が特定のディープリンクまたはapp IDを含まない実装では、ブックマークを生成するためのパターンデータが存在するかどうかをシステム100が検出または判定することができない場合、システム100は、特定のネイティブアプリケーションのコンテンツがパブリックドメイン内で知られているかどうかを判定することが可能である(ボックス236)。
【００７８】
特定のネイティブアプリケーションのコンテンツがパブリックドメイン内で知られているとシステム100が判定する場合、システム100は、検索エンジンに提出するための例示的クエリを生成するために、補助データ137および/またはコンテキストデータ136からのテキストデータを使用することが可能である。たとえば、モバイルデバイス102の「ルックアップ」または検索機能を使用してブックマークを生成することが可能である。いくつかの実装では、BMエンジン120は、検索エンジンによって受け取られ、処理されて、1つまたは複数の検索結果が生成される検索クエリを構築するために、コンテキストデータ136から抽出されたテキストの部分を使用する。
【００７９】
ボックス242では、システム100は、ユーザデバイス102を介して表示される文書またはリソースページのURL、ディープリンク、および/またはアプリケーションIDを選択または取得するために、検索クエリの生成された1つまたは複数の検索結果を使用する。取得されたURLまたはディープリンクは、app IDとともに、ブックマークインデックス126および/またはインデックス112内に記憶され、ユーザデバイス102を介して表示される文書またはリソースページにアクセスするためのブックマークを生成する際に使用されるリソース識別子として働く。
【００８０】
ある場合には、コンテキストデータ136、または補助データ137から抽出され、音声入力103または検索クエリを伴う追加のデータも、作成されたブックマークの検索を容易にするために、作成されたブックマークに関連して記憶されてもよい。
【００８１】
特定のネイティブアプリケーションのコンテンツがパブリックドメイン内で知られていないとシステム100が判定する場合、システム100は、ブックマークを生成するためのリソース識別子として働くことが可能であるURLまたはディープリンクを取得するために、要素データ134内で利用可能な任意のデータ(たとえば、スクリーンショットデータ)を使用することが可能である。上記で示したように、生成されたブックマークは、ブックマークインデックス126および/またはインデックス112内に記憶され、ユーザデバイス102を介して表示される特定の文書またはリソースページにアクセスするために使用されてもよい。
【００８２】
いくつかの実装では、スクリーンショットデータがコンテキストデータ136内に存在し、またはコンテキストデータ136とともに含まれるとき、BMエンジン120は、ブックマークを生成または作成するとき、このスクリーンショットデータをブックマークに関連して記憶することが可能である。しかしながら、ある場合には、システム100は、アプリケーションディープリンクおよび対応するapp IDを取得することができない場合があり、またはウェブURLを取得することができない場合がある。これが生じるとき、システム100は、スクリーンショットデータを使用してブックマークを生成し、スクリーンショットデータをブックマークのリソース識別子として記憶することが可能である。したがって、スクリーンショットをリソース識別子として使用する特定のブックマークにアクセスすることによって、モバイルデバイス102は、スクリーンショットに対応するイメージデータを表示することになる。
【００８３】
再びボックス242を参照すると、いくつかの実装では、システム100は、検索結果のセットを計算または生成するために検索エンジンを使用する。たとえば、システム100は、複数の発行されたクエリから取得された検索結果の和集合として検索結果のセットを計算することが可能である。次いでシステム100は、検索結果のセットから各検索結果についてのスコアを生成することが可能である。いくつかの実装では、生成されるスコアは、検索結果が上位数検索結果(たとえば、上位5個、または上位10個の検索結果)の部分であったクエリの数に依存する場合がある。
【００８４】
特定の数の上位検索結果について、システム100は、事前定義されたしきいスコアを超過するスコアを特定の検索結果が有するかどうかを検出または判定することが可能である。しきいスコアを超過するスコアを有する特定の検索結果について、システム100は、ブックマークを生成するためのリソース識別子として使用するために、任意の利用可能なapp IDデータとともに、その検索結果のウェブURLまたはディープリンクを選択することが可能である。次いで、生成されたブックマークをブックマークインデックス126またはインデックス112内に記憶することが可能である。
【００８５】
いくつかの実装では、ブックマークを作成する前に、システム100は、システム内に、たとえばインデックス126または112内に記憶された既存のブックマークが新しいブックマークに割り当てられるべきブックマーク名/識別子に合致するブックマーク名/識別子を有するかどうかを判定するためにBMエンジン120を使用してもよい。システム内に記憶された既存のブックマークが新しいブックマークに割り当てられるべきブックマーク名/識別子に合致するブックマーク名/識別子を有することをシステム100が検出した場合、システム100は、i)既存のブックマークについてのデータを新しいブックマークについてのデータで自動的に上書きし、またはii)モバイルデバイス102がそれに対して所望のブックマーク機能を示す応答データを、たとえばユーザから、受け取ることが可能であるテキストベースのクエリまたは聴覚クエリを生成するためにモバイルデバイス102を使用することが可能である。
【００８６】
たとえば、受け取った応答データに基づいて、i)既存のブックマークについてのデータを新しいブックマークについてのデータで上書きし、ii)新しいブックマークの作成を取り消し、またはiii)新しいブックマークに割り当てるべきブックマーク名/識別子を修正するために、テキストベースのクエリまたは聴覚クエリをシステム100によって使用することが可能である。したがって、システム100は、デバイス102によって受け取られた第1の音声入力に基づいて、ブックマークについての識別子を決定することが可能である。ブックマークについての識別子はブックマークの名前であることが可能であるので、既存のブックマークについての識別子を修正するようにシステム100を構成することが可能であり、既存のブックマークについての識別子を修正することが、既存のブックマークをリネームすることを含む。
【００８７】
図3は、ユーザからの音声入力に基づいて1つまたは複数のブックマークを作成し、1つまたは複数のブックマークにアクセスするための例示的ユーザインターフェース302、304、および306の第1のセットを示す。インターフェース302は、モバイルデバイス102を使用して閲覧またはアクセスすることが可能である例示的バンキングリソースページを示す。インターフェース302は、ウェブURL("www.bankofexample.com")を介してアクセスされる例示的ウェブサイトに対応することが可能である。インターフェース304は、デバイスアシスタント116に関連する例示的インターフェースであることが可能である。インターフェース304は、入力308、出力310、および提案312を示す。いくつかの実装では、入力308は、モバイルデバイス102によって受け取られる音声入力103のトランスクリプションであることが可能である。
【００８８】
たとえば、ユーザは、Bank of Exampleインターネットバンキングウェブサイトを閲覧しており、以下の例示的クエリのうちの1つを話すことによってモバイルデバイス102に音声入力103を発行した可能性がある。i)「これを私のインターネットバンキングとして保存」、ii)「これを私のインターネットバンキングとしてブックマーク」、またはiii)「それを私のインターネットバンキングとして覚える」。モバイルデバイス102のディスプレイが、モバイルデバイス102の聴取モードが活動化され、したがってモバイルデバイス102は音声入力を受け取る準備ができたことという指示をユーザに与えるために(たとえば、ユーザによってタップされたときに)明るくなるマイクロフォンアイコン303を示すことが可能である。いくつかの実装では、ユーザは、インターネットバンキングウェブサイトについての例示的ブックマークの作成を取り消すために、提案312を選択することが可能である。
【００８９】
クエリを受け取ったことに応答して、モバイルデバイス102は、入力308に対応するトランスクリプション138を生成することが可能である。上記で論じたように、モバイルデバイス102は、要素データ134内に含めることが可能である少なくともウェブURLおよび他のデータを提供し、サーバ104はそれを受け取る。BMエンジン120は、「私のインターネットバンキング」と識別される場合があるブックマークを生成および記憶する。ブックマークを作成するとき、システム100は、ウェブURL/リソース識別子がブックマーク名「私のインターネットバンキング」として覚えられたこと、たとえばブックマークインデックス内に記憶されたことをユーザに示す出力310をモバイルデバイス102に生成させることが可能である。
【００９０】
インターフェース306は、デバイスアシスタント116に関連する別の例示的インターフェースであることが可能である。インターフェース306は、入力314、出力316、およびブックマーク318を示す。いくつかの実装では、入力314は、モバイルデバイス102によって受け取られた音声入力105のトランスクリプションであることが可能である。たとえば、ユーザは、Bank of Exampleインターネットバンキングウェブサイトを閲覧するために、記憶されたブックマークを使用することを望む場合がある。ユーザは、(たとえば、アイコン303を使用して)モバイルデバイス102の聴取モードを活動化し、以下の例示的クエリ/コマンド：i)「私のインターネットバンキング」、ii)「私のインターネットバンキングを開く」、iii)「私のインターネットバンキングに行く」、またはiv)「私のインターネットバンキングにナビゲートする」のうちの1つを話すことによって、モバイルデバイス102に音声入力コマンド105を発行することが可能である。
【００９１】
コマンドを受け取ったことに応答して、モバイルデバイス102は、入力314に対応するトランスクリプション138を生成することが可能である。次いでサーバ104は、ブックマークデータ143内に含めることが可能である少なくともウェブURLおよび他のデータを提供し、モバイルデバイス102はそれを受け取ることが可能である。BMエンジン120は、インデックス126から、「私のインターネットバンキング」と識別されてもよい、記憶されたブックマークにアクセスすることが可能である。
【００９２】
ブックマークデータ143を提供した後、システム100は、モバイルデバイス102に、i)システムがコマンドの受取りを確認することを示す出力316を生成させ、ii)ブックマークインデックス126内に「私のインターネットバンキング」というブックマーク名として記憶されたウェブURL/リソース識別子を示す出力316を生成させることが可能である。
【００９３】
上記で論じたように、いくつかの実装では、サーバ104から「私のインターネットバンキング」として識別されたブックマークを受け取るのではなく、モバイルデバイス102は、音声入力105によって示されるブックマーク名に基づいてブックマークを取得するためにローカルブックマークインデックス112にアクセスすることが可能である。ブックマークについてのURLまたはリソース識別子を取得した後、モバイルデバイス102は、音声入力コマンド105によって示されるブックマークとしてブックマークインデックス112内に記憶されたウェブURL/リソース識別子をユーザに示す出力316を生成することが可能である。
【００９４】
以下の説明は、チャットまたはメッセージングアプリケーションなどのネイティブアプリケーションを介して行われる電子的会話についてのリソースページを記憶するためにブックマークが作成される、システム100の例示的動作またはプロセスを示す。ユーザは、モバイルデバイス102上にインストールされたチャットアプリケーションを介してユーザと父親との間で交換されるチャットメッセージを閲覧している場合がある。ユーザが「父親との間の私のチャットとしてこれを保存」と言ったとき、ユーザは音声入力103を提供し、モバイルデバイス102は音声入力103を受け取ることが可能である。
【００９５】
この音声入力103を受け取ったことに応答して、デバイス102は、サーバ104に補助データ137を送信し、データは、ユーザが閲覧しているチャットアプリケーションの画面またはインターフェースに対応することが可能である。ある場合には、デバイス102は、ネイティブチャットアプリケーションまたはウェブURLに対応する要素データ134を送らない場合がある。サーバ104によって受け取られる補助データ137は、スクリーンショットイメージ内の特定の位置、たとえばイメージの上端バーに位置する「父親」に対応するユーザ名を含むことが可能である。
【００９６】
サーバ104が補助データ137を受け取るとき、以下の結果が生じる場合がある。ユーザ名、たとえば「父親」、ならびにapp IDが補助データ137から抽出され、ネイティブチャットアプリケーションに対するディープリンクが構築される。ある場合には、チャットアプリケーションに対するディープリンクは、抽出することが可能であるユーザ名を有する既知のデータパターンを有することが可能である。構築されたディープリンクおよびapp IDは、ブックマークインデックス126またはインデックス112の少なくとも一方の中に記憶される。
【００９７】
したがって、次回にデバイス102がユーザから音声入力、たとえばボイスコマンド105を受け取るとき、デバイス102は、父親との間のユーザの電子的会話を示すネイティブチャットアプリケーションのチャットインターフェース/リソースページをユーザに表示する。コマンド105についての例示的音声入力は、ユーザが以下の：i)「父親との間の私のチャット」、ii)「父親との間の私のチャットを私に見せて」、またはiii)「父親との間の私のチャットに行く」のうちの1つを言うことを含むことが可能である。
【００９８】
代替実装では、補助データ137は、連絡先のフルネームまたは部分的名前、たとえば「父親」または「マイケル」を含むことが可能であり、連絡先の姓をも含んでもよい。したがって、前述の例示的動作プロセスに加えて、サーバ104が補助データ137を受け取るとき、連絡先のフルネームまたは部分的名前を補助データ137から抽出することが可能である。連絡先の名前を、例示的連絡先リスト内のユーザの連絡先とともに記憶することが可能であり、「マイケル」に対応する電話番号が抽出される。
【００９９】
ネイティブチャットアプリケーションに対するディープリンクが構築され、ディープリンクは、電話番号を含むことが可能である。ある場合には、チャットアプリケーションに対するディープリンクが、抽出することが可能であり、第1のユーザがチャットすることを望む場合がある第2のユーザに対応する電話番号を有する既知のデータパターンを有することが可能である。構築されたディープリンクおよびapp IDは、ブックマークインデックス126またはインデックス112の少なくとも一方の中に記憶される。
【０１００】
したがって、次回にデバイス102がユーザから音声入力、たとえばボイスコマンド105を受け取ったとき、デバイス102が、マイケルとの間のユーザの電子的会話を示すネイティブチャットアプリケーションのチャットインターフェース/リソースページをユーザに表示する。コマンド105についての例示的音声入力は、ユーザが以下の：i)「マイケルとの間の私のメッセージ」、ii)「マイケルとの間の私のメッセージを私に見せて」、またはiii)「マイケルとの間の私のメッセージに進む」のうちの1つを言うことを含むことが可能である。
【０１０１】
図4は、ユーザからの音声入力に基づいてブックマークを作成し、ブックマークにアクセスするための例示的ユーザインターフェース402、404、406の第2のセットを示す。インターフェース402は、モバイルデバイス102を使用して閲覧またはアクセスすることが可能である例示的レストランレビューリソースページを示す。インターフェース402は、ディープリンクおよびapp IDを介してアクセスされる例示的ネイティブアプリケーションに対応することが可能である。インターフェース404は、デバイスアシスタント116に関連する例示的インターフェースであることが可能である。インターフェース404は、入力408、出力410、および提案412を示す。いくつかの実装では、入力408は、モバイルデバイス102によって受け取られる音声入力103のトランスクリプションであることが可能である。
【０１０２】
たとえば、ユーザは、レストランレビューについてのネイティブアプリケーションリソースページを閲覧しており、「それをGary Dと覚えて」などの例示的クエリを話すことによってモバイルデバイス102に音声入力103を発行した場合がある。いくつかの実装では、ユーザは、ネイティブアプリケーションリソースページについての例示的ブックマークの作成を取り消すために提案412を選択することが可能である。クエリを受け取ったことに応答して、モバイルデバイス102は、入力408に対応するトランスクリプション138を生成することが可能である。
【０１０３】
上記で論じたように、モバイルデバイス102は、ネイティブアプリケーションによって生成されたリソースページを一意に特定するアプリケーションディープリンク/リソース識別子、ネイティブアプリケーションについてのapp ID、および要素データ134内に含めることが可能である他のデータを提供し、サーバ104はそれらを受け取る。いくつかの実装では、モバイルデバイス102はまた、ディープリンクとは別個のネイティブアプリケーションURLと同一でよいウェブURLを提供し、サーバ104はそれを受け取ることが可能である。BMエンジン120は、"Gary D"と識別されてもよいブックマークを生成および記憶する。
【０１０４】
ブックマークを作成するとき、システム100は、モバイルデバイス102に、URL(ディープリンク)/リソース識別子が覚えられた、たとえばブックマーク名"Gary D"としてブックマークインデックス内に記憶されたことをユーザに示す出力410を生成させることが可能である。
【０１０５】
インターフェース406は、デバイスアシスタント116に関連する別の例示的インターフェースであることが可能である。インターフェース406は、入力414、出力416、およびブックマーク418を示す。いくつかの実装では、入力414は、モバイルデバイス102によって受け取られる音声入力105のトランスクリプションであることが可能である。たとえば、ユーザは、レストランレビューについてのネイティブアプリケーションリソースページを閲覧するために、記憶されたブックマークを使用したい場合がある。ユーザは、以下の例示的クエリ/コマンド：i)"Gary D"、ii)「Gary Dを開く」、またはiii)「Gary Dを私に見せて」のうちの1つを話すことによってモバイルデバイス102に音声入力コマンド105を発行する。
【０１０６】
コマンドを受け取ったことに応答して、モバイルデバイス102は、入力414に対応するトランスクリプション138を生成することが可能である。次いでサーバ104は、少なくともディープリンク146、app ID140、およびブックマークデータ143内に含めることが可能である他のデータを提供し、モバイルデバイス102はそれらを受け取ることが可能である。BMエンジン120は、"Gary D"と識別されてもよい、記憶されたブックマークにインデックス126からアクセスすることが可能である。
【０１０７】
ブックマークデータ143を提供した後、システム100は、モバイルデバイス102に、i)システムがコマンドの受取りを確認することを示す出力416を生成させ、ii)ブックマーク名"Gary D"としてブックマークインデックス126内に記憶されたURL/ディープリンク/リソース識別子を示す出力416を生成させることが可能である。いくつかの実装では、ブックマークのリソース識別子にアクセスすることによって、モバイルデバイス102は、ディープリンクにマッピングされたリソースページを表示するためにディープリンクに関連するネイティブアプリケーションを使用する。
【０１０８】
ある場合には、ディープリンクに関連する特定のネイティブアプリケーションが、もはやモバイルデバイス102上にインストールされていない場合がある。この場合、ネイティブアプリケーションのリソースページについてのウェブURLが、ブックマーク"Gary D"を作成するときに、システム100によって取得されている場合がある。したがって、ブックマークのリソースページを表示するためのネイティブアプリケーションをモバイルデバイス102によってアクセスすることができない場合、ウェブブラウザを介して、ブックマークを作成するときに取得されたウェブURLを使用して、リソースページ、たとえば"Gary Doe"レストランレビューページが表示されてもよい。
【０１０９】
上記で論じたように、いくつかの実装では、サーバ104から"Gary D"と識別されるブックマークを受け取るのではなく、モバイルデバイス102は、音声入力コマンド105によって示されるブックマークを取得するためにローカルブックマークインデックス112にアクセスすることが可能である。URL、ディープリンク、またはブックマークについてのリソース識別子を取得した後、モバイルデバイス102は、音声入力コマンド105によって示されるブックマークとしてブックマークインデックス112内に記憶されたURL/ディープリンク/リソース識別子をユーザに示す出力416を生成することが可能である。
【０１１０】
以下の説明は、ブックマークインデックス126、112内に記憶されたブックマークを検索するためのシステム100の例示的動作またはプロセスを示す。モバイルデバイス102がユーザ音声入力105を受け取ったことに応答して、システム100によって、優先順位の降順のアクションのシーケンスを実行または実施することが可能である。たとえば、優先順位の降順のアクションのシーケンスは、i)ネイティブアプリケーションを使用してリソースページを生成するためにブックマークのディープリンクにアクセスすることと、ii)ウェブブラウザを使用してブックマークのウェブURLにアクセスすることと、iii)ブックマークのスクリーンショットデータを表示することとを含むことが可能である。
【０１１１】
いくつかの実装では、アクションのシーケンスのうちの1つのアクションが首尾よく実行される場合、残りのアクションが実行されない。ある場合には、ユーザが誤ってブックマークをトリガしたとシステム100が判定する場合、システム100は、ブックマークを削除するという提案をユーザに提示または表示してもよい。
【０１１２】
記憶されたブックマークを検索するための例示的動作またはプロセスは、音声入力/クエリ105のユーザの意図が、あるリソースページを閲覧するためにブックマークにアクセスし、またはブックマークを開くことであるとシステム100が判定することを含むことが可能である。いくつかの実装では、システム100は、クエリ105の1つまたは複数のワードが記憶されたブックマークの名前に対応すると判定することによって、音声入力/クエリ105のユーザの意図が、記憶されたブックマークにアクセスし、記憶されたブックマークを開くことであると判定することが可能である。たとえば、システム100は、クエリ105の1つまたは複数のワードが、記憶されたブックマークにアクセスし、または記憶されたブックマークを開くための事前定義された文法構造に合致するかどうかを判定し、次いでこの合致に基づいてブックマークにアクセスするユーザの意図を判定することが可能である。
【０１１３】
いくつかの実装では、システム100は、記憶されたブックマークにアクセスするユーザの意図を判定するために他の技法を使用することが可能である。たとえば、クエリ意図モデルを生成するために機械学習システムをトレーニングするようにシステム100を構成することが可能である。次いでシステム100は、クエリ105のユーザの意図を検出し、クエリ105の1つまたは複数のワードに合致し、または実質的に合致するブックマーク名を検出するために、生成されたクエリ意図モデルを使用することが可能である。
【０１１４】
ユーザが記憶されたブックマークにアクセスすることを意図すると判定したことに応答して、システム100は、クエリ105からブックマーク名を抽出し、記憶されたブックマークが、抽出されたブックマーク名に合致するブックマーク名を含むかどうかを判定することが可能である。いくつかの実装では、システム100は、クエリ105から複数の候補ブックマーク名を抽出することが可能であり、記憶されたブックマーク名との最良の合致、または実質的な合致を示す候補ブックマーク名を検出または決定するために各候補ブックマーク名をテストしてもよい。たとえば、システム100は、全体のクエリ105、またはクエリ105の部分から複数の候補ブックマーク名を抽出することが可能である。
【０１１５】
特定の候補ブックマーク名に合致する名前を有する記憶されたブックマークを検出したことに応答して、システム100は、記憶されたブックマークを選択し、アクションの空きシーケンスを初期化し、アクションの空きシーケンスを1つまたは複数の優先順位付けされたアクションで埋めることに進むことが可能である。たとえば選択された記憶されたブックマークについて、システム100は、アプリケーションディープリンクおよびapp IDが選択されたブックマークに関連して記憶されたと判定することが可能である。この判定に基づいて、システム100は、特定のネイティブアプリケーションを使用してディープリンクを立ち上げ、実行し、または開くためのアクションを追加することによって、アクションのシーケンスを埋めることが可能である。
【０１１６】
さらに、記憶されたブックマークについて、システム100は、ウェブURLが、選択されたブックマークに関連して記憶されたと判定することが可能である。この判定に基づいて、システム100は、モバイルデバイス102の例示的ウェブブラウザアプリケーションを使用してウェブURLを立ち上げ、実行し、または開くためのアクションを追加することによって、アクションのシーケンスをさらに埋めることが可能である。
【０１１７】
さらに、選択された記憶されたブックマークについて、システム100は、スクリーンショットが、選択されたブックマークに関連して記憶されたと判定することが可能である。この判定に基づいて、システム100は、モバイルデバイス102の例示的イメージ閲覧アプリケーションを使用してスクリーンショットにアクセスし、スクリーンショットを表示し、あるいはスクリーンショットを開くためのアクションを追加することによって、アクションのシーケンスをさらに埋めることが可能である。複数のアクションを含むようにアクションの空きシーケンスを埋めることに応答して、次いでシステム100は、システム100の1つまたは複数の構成要素による使用のためにアクションの埋められたシーケンスを出力する。
【０１１８】
図5は、ユーザからの音声入力に基づいてブックマークを作成し、ブックマークにアクセスするための例示的ユーザインターフェース502および504の第3のセットを示す。インターフェース502は、デバイスアシスタント116に関連する例示的インターフェースであることが可能である。インターフェース502は、入力506、出力508、提案チップ510、および提案チップ512を示す。入力506は、USB Bankについてのウェブサイトなどのリソースページを閲覧することを望むユーザからモバイルデバイス102によって受け取られる、音声入力103、105以外のクエリのトランスクリプションであることが可能である。
【０１１９】
提案チップ510は、ユーザのクエリに対する応答としてユーザに表示するために提供される、少なくとも部分的にはデバイスアシスタント116によって生成されたデータであることが可能である。いくつかの実装では、提案チップ510は、USBインターネットバンキングについてのウェブサイトについてのデータでもよく、ユーザのクエリの1つまたは複数のワードに基づいてデータを提案することが可能である。たとえば、ユーザは、モバイルデバイス102を介して受け取られる「USBインターネットバンキング」というクエリをデバイスアシスタント116に発行することが可能である。デバイスアシスタント116は、USBインターネットバンキングリソースページ、たとえばウェブサイトにアクセスするためにユーザがタップし、選択し、あるいは使用することが可能である、ユーザに表示するための、提案チップ510に対応するカードを提供する。
【０１２０】
いくつかの実装では、提案チップ510に加えて、デバイスアシスタント116は、モバイルデバイス102によって受け取られたユーザクエリに対する応答として、ユーザに表示するために、提案チップ512、または1つまたは複数の追加の提案チップを生成し、あるいは提供することが可能である。たとえば、追加の提案チップは、ユーザが新しいブックマークを作成するためにアクセスまたは選択することが可能である「ショートカットを作成」または「それをブックマーク」を含むことが可能である。したがって、提案チップ512の選択により、システム100は、前述のプロセスのうちの1つまたは複数を実行することによって例示的ブックマークを生成および記憶する。
【０１２１】
インターフェース504はまた、入力506、出力508、提案チップ510、および提案チップ512を示す。インターフェース504は、提案チップ512を選択したユーザと、システム100によって生成され、デバイスアシスタント116の例示的インターフェースを介して表示される出力514とをさらに示す。出力514は、ユーザが提案チップ512を選択したことに応答して、システム100によって生成されてもよい。システム100は、システム100が出力510のデータに対応する「USBインターネットバンキング」という名前のブックマーク、URL、またはリソース識別子を覚える、たとえば記憶することをユーザに通知するために出力514を生成することが可能である。
【０１２２】
以下の例示的動作が、インターフェース504のプロセスステップをさらに示す。ユーザは、「USBインターネットバンキング」というクエリをモバイルデバイス上のデジタルアシスタントに(たとえば、話すことによって)発行する。デジタルアシスタントは、ユーザがUSB Bankのインターネットバンキングページにアクセスし、それを閲覧するために選択することが可能な提案チップに対応するカード、たとえば出力510をユーザに表示または出力する。デジタルアシスタントは、追加の提案チップ、たとえば提案チップ512を表示または出力してもよい。提案チップのうちの1つは、「ショートカットを作成」または「それをブックマーク」であることが可能である。
【０１２３】
ユーザがショートカットまたはブックマークを作成するために提案チップ512を押し、または選択するとき、以下の結果が生じる場合がある。USB Bankのインターネットバンキングウェブサイトに対応するウェブURL、ブックマークを作成する意図、およびユーザによって発行された以前のクエリ(「USBインターネットバンキング」)がサーバ104に伝送され、「USBインターネットバンキング」という名前を有する、ウェブURLを指し示すブックマークが作成される。したがって、次回にモバイルデバイス102が「USBインターネットバンキング」というユーザ音声クエリ(または類似のクエリ)を受け取ったとき、モバイルデバイス102は、USB Bankのインターネットバンキングウェブサイトをユーザに表示する。
【０１２４】
以下の説明は、ユーザに表示するために「ショートカットの作成」または「それをブックマーク」提案チップを生成し、作成し、あるいは追加するためのシステム100の例示的動作またはプロセスを示す。いくつかの実装では、モバイルデバイス102は、音声入力103、105以外の音声入力/クエリをユーザから受け取り、デバイスアシスタント116は、受け取ったクエリに基づいて応答結果を提供することが可能である。
【０１２５】
デバイス102がクエリを受け取ったことに応答して、システム100は、デバイスアシスタント116によって提供された応答結果がウェブ結果であると判定することが可能である。この判定に基づいて、システム100は、ユーザに表示するために「ショートカットを作成」または「それをブックマーク」提案チップ(「ブックマークチップ」)を提供することが可能である。ある場合には、ブックマークチップに加えて、システム100は、デバイスアシスタント116によって生成された応答結果に基づいてユーザに提示するために複数の他の提案チップを含むことが可能である。
【０１２６】
いくつかの実装では、単一の結果ではなく、デバイスアシスタント116は、デバイス102によって受け取られたユーザクエリに応答する複数の応答結果を提供してもよい。システム100は、ユーザに表示するためにシステム100によって提供することが可能な潜在的提案チップをどのように最良にランク付けするかを決定するために複数の応答結果を解析するように構成することが可能である。
【０１２７】
たとえば、複数の応答結果のうちの1つまたは複数を使用して、システム100は、マッチングスコアに基づいて他の潜在的提案チップに関連してブックマークチップをランク付けしてもよい。マッチングスコアは、受け取ったクエリに応答して、受け取ったクエリのコンテンツとデバイスアシスタント116によって提供されたウェブ結果のコンテンツとの間の合致を示すことが可能である。1つまたは複数の条件に基づいてマッチングスコアを計算することが可能である。
【０１２８】
第1の条件に関して、いくつかの実装では、複数のウェブ結果のうちの少なくとも1つがウェブURLを含むとき、システム100は、受け取ったクエリのどの部分が、デバイスアシスタント116によって提供されるウェブURLの部分に合致する、または大まかに合致するかの範囲を決定する。システム100は、受け取ったクエリの部分と、ウェブURLの部分との間の合致の範囲または大きさを示すマッチングスコアを生成する。
【０１２９】
たとえば、システム100は、受け取ったクエリの部分とウェブURLの部分との間の整合性のしきいレベルを示すために、エンティティマッチング、n-gram類似性、語句マッチング、特徴類似性などのデータマッチングプロセスおよびデータ比較プロセスについてプログラムコードを使用または実行することが可能である。次いで、システム100は、データマッチングプロセスの結果に基づいてマッチングスコアを生成し、マッチングスコアがしきい値マッチングスコアを超過するかどうかを判定する。
【０１３０】
上記で示したように、システム100は、マッチングスコアに基づいて他の潜在的提案チップに関連してブックマークチップをランク付けする。したがって、生成されるマッチングスコア(たとえば、0.85)がしきい値マッチングスコア(たとえば、0.8)を超過するとき、システム100は、他の潜在的提案チップの間で最高のブックマークチップをランク付けし、このランク付けに基づいてユーザに表示するためにブックマークチップを提供することが可能である。
【０１３１】
いくつかの実装では、ブックマークチップは、特定のランキングおよび/またはマッチングスコアに基づいてユーザに表示するために提供される唯一の提案チップでもよい。別の実装では、ブックマークチップは、特定のランキングおよび/またはマッチングスコアに基づいてユーザに表示するために提供される複数の提案チップのうちの第1の提案チップでもよい。
【０１３２】
いくつかの実装では、ウェブ結果のウェブURLのドメインに合致する、受け取ったクエリの部分は、ブックマークチップをユーザに表示するために提供すべきことを判定するためのより重要な合致を示すことが可能である。したがって、システム100は、ウェブURLのドメインに合致する、受け取ったクエリ部分について、より高いマッチングスコアを生成することが可能である。たとえば、クエリが"Mike's restaurant"を含み、ウェブURLがドメイン"mikesrestaurant.com"を含む場合、この特定の合致は、ウェブURLのドメインに合致しない部分を含む他の受け取ったクエリと比較して、より高いマッチングスコアを生成してもよい。
【０１３３】
第2の条件に関して、いくつかの実装では、ウェブ結果のウェブURLに合致する、受け取ったクエリの関連部分は、ユーザに表示するためにブックマークチップを提供すべきことを判定するためのより重要な合致を示すことが可能である。受け取ったクエリの関連部分は、特定のタイプのエンティティ、たとえばビジネス、ウェブサイト、またはどんな注釈されたエンティティとも交わらない、受け取ったクエリの一部であることが可能である。
【０１３４】
たとえば、受け取ったクエリが"website for Mike's restaurant"を含み、ウェブURLがビジネスおよびウェブサイトタイプ"mikesrestaurant.com"を含む場合、この特定の合致は、ウェブURLのドメインに合致しない部分を含む別の受け取ったクエリと比較して、より高いマッチングスコアを生成してもよい。
【０１３５】
他の条件に関して、いくつかの実装では、受け取ったクエリおよびウェブ結果の部分がそれぞれ、共通の、または合致するエンティティ、たとえばビジネスエンティティ"Mike's restaurant"を含み、システム100がエンティティの重要性を示す重要度因子を決定する。システム100は、重要度因子に基づいてマッチングスコアを生成することが可能である。別の言い方をすると、システム100は、ウェブ結果と受け取ったクエリが共通に有するエンティティの重要度を決定することが可能であり、決定した重要度に基づいてマッチングスコアを生成することが可能である。ある場合には、生成されたマッチングスコアは、エンティティの決定された重要度に比例することが可能である。
【０１３６】
他の条件は、システム100がウェブ結果と受け取ったクエリが共通に有さないエンティティの重要度に基づいてマッチングスコアを生成することを含むことが可能である。いくつかの実装では、マッチングスコアを生成するために、受け取ったクエリとウェブ結果との間の関連性、または関連性の欠如を提案してもよい複数の他の信号をシステム100によって使用することが可能である。
【０１３７】
図6は、ユーザからの音声入力に基づいて1つまたは複数のブックマークにアクセスするための例示的ユーザインターフェース602を示す。いくつかの実装では、システム100は、モバイルデバイス102を介してユーザに表示するために、保存されたブックマークのリスティングを提供する。モバイルデバイス102がユーザから音声入力を受け取り、それがユーザ入力604として文字化されたことに応答して、ユーザに表示するために、保存されたブックマークのリスティングを提供することが可能である。システム100は、ブックマーク608、610、および612を含むことが可能であるブックマークのリスティングを識別するために出力606を生成する。
【０１３８】
いくつかの実装では、システム100は、入力604のユーザの意図が、以前に作成されたブックマークのリスティングを受け取ること、または閲覧することであるかどうかを判定する。ユーザの意図が、以前に作成されたブックマークのリスティングを受け取ることであるとシステム100が判定する場合、クエリ/入力604から識別されてもよい潜在的選択基準またはフィルタリングがあればそれを抽出するようにシステム100を構成することが可能である。次いでシステム100は、抽出された選択またはフィルタリング基準に合致する1つまたは複数のブックマークを選択することが可能である。ある場合には、基準が入力604によって指定されなかった場合、または入力604から基準を抽出することができない場合、システム100は、すべての以前に作成されたブックマークを、ユーザに表示するために提供されるように選択してもよい。
【０１３９】
いくつかの実装では、選択またはフィルタリング基準は、以前に作成されたブックマークに関連して記憶された場合がある任意の追加のデータ、ならびにブックマークの名前を指してもよい。たとえば、ユーザが2つのブックマーク、たとえば「私のお気に入りのニューヨークのレストラン」および「私のお気に入りのサンフランシスコのレストラン」を記憶している場合、これらのブックマークの両方が、「私のレストランブックマークを私に見せて」などのユーザクエリ/入力604に応答して、表示のために提供される。この例では、クエリ/入力604から識別される選択またはフィルタリング基準は、「レストラン」というワードに対応する音声入力である。
【０１４０】
ユーザが直ちに少なくとも1つのブックマークをタップし、クリックし、あるいは選択することを可能にするフォーマットでユーザに表示するために、ブックマーク608、610、および612のリスティングを提示することが可能である。たとえば、特定のハイパーリンクを含む、ブックマーク608、610、および612をそれぞれ提示することが可能である。そのようなハイパーリンクフォーマットは、ブックマークを選択することを可能にし、その結果、モバイルデバイス102が関連するアプリケーションディープリンクまたはハイパーリンクのウェブURLを使用して特定のリソースページを生成する。さらに、ブックマークリスティングの提示のフォーマットはまた、ユーザがブックマーク608、610、または612の一部またはすべてを削除することを可能にすることができる。
【０１４１】
いくつかの実装では、システム100は、入力604のユーザの意図が特定の記憶されたブックマークを削除することであるかどうかを判定する。ユーザの意図が特定の記憶されたブックマークを削除することであるとシステム100が判定する場合、システム100は、特定のブックマークの名前Xまたは名前Xの変形、たとえば名前Xに類似する入力Yがクエリ/入力604の一部であるとき、特定の記憶されたブックマークを削除する。
【０１４２】
図7は、本文書において説明されるシステムおよび方法を、クライアントとして、またはサーバもしくは複数のサーバとして実装するために使用されてもよいコンピューティングデバイス700、750のブロック図である。コンピューティングデバイス700は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことが意図される。コンピューティングデバイス750は、携帯情報端末、セルラー電話、スマートフォン、スマートウォッチ、頭部着用デバイス、他の類似のコンピューティングデバイスなどの様々な形態のモバイルデバイスを表すことが意図される。ここで示される構成要素、その接続および関係、ならびにその機能は、例示的なものに過ぎないことを意味し、本文書において説明され、かつ/または特許請求される実装を限定することを意味しない。
【０１４３】
コンピューティングデバイス700は、プロセッサ702と、メモリ704と、記憶装置706と、メモリ704および高速拡張ポート710に接続する高速インターフェース708と、低速バス714および記憶装置706に接続する低速インターフェース712とを含む。構成要素702、704、606、708、710、および712のそれぞれは、様々なバスを使用して相互接続され、共通マザーボード上に、または他の方式で適宜取り付けられてもよい。プロセッサ702は、高速インターフェース708に結合されたディスプレイ716などの外部入力/出力装置上にGUIについてのグラフィカル情報を表示するために、メモリ704内に、または記憶装置706上に記憶された命令を含む、コンピューティングデバイス700内で実行するための命令を処理することが可能である。別の実装では、複数のメモリおよび複数のタイプのメモリとともに、複数のプロセッサおよび/または複数のバスが適宜使用されてもよい。さらに、複数のコンピューティングデバイス600が接続されてもよく、各デバイスが、たとえばサーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして、必要な動作の部分を提供する。
【０１４４】
メモリ704は、コンピューティングデバイス700内の情報を記憶する。一実装では、メモリ704はコンピュータ可読媒体である。一実装では、メモリ704は揮発性メモリユニットである。別の実装では、メモリ704は不揮発性メモリユニットである。
【０１４５】
記憶装置706は、コンピューティングデバイス700のためのマスストレージを提供することが可能である。一実装では、記憶装置706はコンピュータ可読媒体である。様々な異なる実装では、記憶装置706は、フロッピィディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の類似の固体メモリデバイス、あるいはストレージエリアネットワークまたは他の構成内のデバイスを含むデバイスのアレイでもよい。一実装では、コンピュータプログラム製品は情報キャリアで有形に実施される。コンピュータプログラム製品は、実行されるとき、前述のような1つまたは複数の方法を実施する命令を含む。情報キャリアは、メモリ704、記憶装置706、プロセッサ702上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【０１４６】
高速コントローラ708は、コンピューティングデバイス700についての帯域幅集約的動作を管理し、低速コントローラ712は、より低い帯域幅集約的動作を管理する。そのような任務の割振りは例示的なものに過ぎない。一実装では、高速コントローラ708は、たとえばグラフィックスプロセッサまたはアクセラレータを通じてメモリ704、ディスプレイ716に結合され、様々な拡張カード(図示せず)を受け入れてよい高速拡張ポート710に結合される。実装では、低速コントローラ712が、記憶装置706および低速拡張ポート714に結合される。低速拡張ポートは、様々な通信ポート、たとえばUSB、Bluetooth(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネットを含んでもよく、キーボード、ポインティングデバイス、スキャナ、スイッチやルータなどのネットワーキングデバイスなどの1つまたは複数の入力/出力装置に、たとえばネットワークアダプタを通じて結合されてもよい。
【０１４７】
コンピューティングデバイス700は、図示されるように、いくつかの異なる形態で実装されてもよい。たとえば、コンピューティングデバイス700は、標準サーバ720として、またはそのようなサーバのグループ内で複数回実装されてもよい。コンピューティングデバイス700はまた、ラックサーバシステム724の部分として実装されてもよい。さらに、コンピューティングデバイス700は、ラップトップコンピュータ722などのパーソナルコンピュータとして実装されてもよい。代替として、コンピューティングデバイス700からの構成要素が、デバイス750などのモバイルデバイス(図示せず)内の他の構成要素と組み合わされてもよい。そのようなデバイスのそれぞれは、コンピューティングデバイス700、750のうちの1つまたは複数を含んでもよく、全体のシステムは、互いに通信する複数のコンピューティングデバイス700、750から構成されてもよい。
【０１４８】
コンピューティングデバイス750は、他の構成要素の中でもとりわけ、プロセッサ752、メモリ764、ディスプレイ754などの入力/出力装置、通信インターフェース766、およびトランシーバ768を含む。デバイス750はまた、追加のストレージを提供するために、マイクロドライブや他のデバイスなどの記憶装置を備えてもよい。構成要素750、752、764、754、766、および768のそれぞれは、様々なバスを使用して相互接続され、構成要素のうちのいくつかは、共通のマザーボード上に、または他の方式で適宜取り付けられてもよい。
【０１４９】
プロセッサ752は、メモリ764内で記憶された命令を含む、コンピューティングデバイス750内で実行するための命令を処理することが可能である。プロセッサはまた、別々のアナログおよびデジタルプロセッサを含んでもよい。プロセッサは、たとえば、ユーザインターフェースの制御などの、デバイス750の他の構成要素の調整のために、デバイス750によって実行されるアプリケーション、およびデバイス750によるワイヤレス通信を提供してもよい。
【０１５０】
プロセッサ752は、制御インターフェース758を通じてユーザと通信し、ディスプレイ754に結合されたインターフェース756を表示してもよい。ディスプレイ754は、たとえば、TFT LCDディスプレイもしくはOLEDディスプレイ、または他の適切なディスプレイ技術でもよい。ディスプレイインターフェース756は、グラフィカル情報および他の情報をユーザに提示するためにディスプレイ754を駆動するための適切な回路を含んでもよい。
【０１５１】
制御インターフェース758は、ユーザからコマンドを受信し、プロセッサ752に提出するためにコマンドを変換してもよい。さらに、デバイス750の他のデバイスとの近距離エリア通信を可能にするように、プロセッサ752と通信する外部インターフェース762が提供されてもよい。たとえば、外部インターフェース762は、たとえばドッキング手順を介するワイヤード通信、またはたとえばBluetooth(登録商標)または他のそのような技術を介するワイヤレス通信を実現してもよい。
【０１５２】
メモリ764は、コンピューティングデバイス750内の情報を記憶する。一実装では、メモリ764はコンピュータ可読媒体である。一実装では、メモリ764は揮発性メモリユニットである。別の実装では、メモリ764は不揮発性メモリユニットである。拡張メモリ774をさらに提供して、拡張インターフェース772を通じてデバイス750に接続してもよく、拡張インターフェース772は、たとえばSIMMカードインターフェースを含んでもよい。そのような拡張メモリ774は、デバイス750のための余分の記憶空間を提供してもよく、またはデバイス750のためのアプリケーションまたは他の情報をも記憶してもよい。
【０１５３】
具体的には、拡張メモリ774は、前述のプロセスを実施または補足するための命令を含んでもよく、セキュア情報をも含んでもよい。したがって、たとえば、デバイス750のためのセキュリティモジュールとして拡張メモリ774が提供されてもよく、デバイス750のセキュアな使用を可能にする命令とともにプログラムされてもよい。さらに、ハッキング不可能な方式でSIMMカード上に識別情報を配置することなど、セキュアアプリケーションが追加の情報とともにSIMMを介して提供されてもよい。
【０１５４】
メモリは、以下で論じるように、たとえばフラッシュメモリおよび/またはMRAMメモリを含んでもよい。一実装では、コンピュータプログラム製品は情報キャリアで有形に実施される。コンピュータプログラム製品は、実行されるとき、前述のような1つまたは複数の方法を実施する命令を含む。情報キャリアは、メモリ764、拡張メモリ774、プロセッサ752上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【０１５５】
デバイス750は、通信インターフェース766を通じてワイヤレスに通信してもよく、通信インターフェース766は、必要ならデジタル信号処理回路を含んでもよい。通信インターフェース766は、とりわけGSM(登録商標)音声呼出し、SMS、EMS、またはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSなどの様々なモードまたはプロトコルの下で通信を実現してもよい。そのような通信は、たとえば無線周波数トランシーバ768を通じて行ってもよい。さらに、Bluetooth(登録商標)、WiFi、または他のそのようなトランシーバ(図示せず)などを使用して、近距離通信を行ってもよい。さらに、GPSレシーバモジュール770が、デバイス750に追加のワイヤレスデータを提供してもよく、追加のワイヤレスデータが、デバイス750上で実行中のアプリケーションによって適宜使用されてもよい。
【０１５６】
デバイス750はまた、オーディオコーデック760を使用して可聴に通信してもよく、オーディオコーデック760は、ユーザから発話情報を受け取り、それを使用可能なデジタル情報に変換してもよい。オーディオコーデック760は同様に、スピーカ、たとえばデバイス750のハンドセット内のスピーカなどを通じて、ユーザに対する可聴音を生成してもよい。そのような音は、音声電話呼出しからの音を含んでもよく、記録された音、たとえばボイスメッセージ、音楽ファイルなどを含んでもよく、デバイス750上で動作するアプリケーションによって生成された音をも含んでもよい。コンピューティングデバイス750は、図に示されるような、いくつかの異なる形態で実装されてもよい。たとえば、コンピューティングデバイス750は、セルラー電話780として実装されてもよい。コンピューティングデバイス750はまた、スマートフォン782、携帯情報端末、または他の類似のモバイルデバイスの部分として実装されてもよい。
【０１５７】
ここで説明されるシステムの技法の様々な実装は、デジタル電子回路、集積回路、専用に設計されたASIC、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合せで実現することが可能である。これらの様々な実装は、専用または汎用でもよく、ストレージシステム、少なくとも1つの入力装置、および少なくとも1つの出力装置からデータおよび命令を受け取り、それらにデータおよび命令を伝送するように結合されてもよい、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラム内の実装を含むことが可能である。
【０１５８】
プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとも呼ばれるこれらのコンピュータプログラムは、プログラマブルプロセッサのための機械語命令を含み、高水準手続型および/またはオブジェクト指向プログラミング言語、ならびに/あるいはアセンブリ/機械語として実装することが可能である。本明細書では、「機械可読媒体」、「コンピュータ可読媒体」は、機械語命令を機械可読信号として受け取る機械可読媒体を含む、プログラマブルプロセッサに機械語命令および/またはデータを提供するために使用されるコンピュータプログラム製品、装置、および/またはデバイス、たとえば磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD)を指す。「機械可読信号」という用語は、プログラマブルプロセッサに機械語命令および/またはデータを提供するために使用される任意の信号を指す。
【０１５９】
ユーザとの対話を実現するために、ここで説明されるシステムおよび技法は、ユーザに情報を表示するためのディスプレイ装置、たとえばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザがそれによってコンピュータに入力を与えることが可能であるキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有するコンピュータ上で実装することが可能である。ユーザとの対話を実現するために他の種類のデバイスを使用することも可能であり、たとえば、ユーザに与えられるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることが可能であり、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受け取ることが可能である。
【０１６０】
ここで説明するシステムおよび技法は、バックエンド構成要素をたとえばデータサーバとして含み、またはアプリケーションサーバなどのミドルウェア構成要素を含み、またはここで説明されるシステムおよび技法の実装とユーザが対話することが可能なグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータなどのフロントエンド構成要素を含み、あるいはそのようなバックエンド、ミドルウェア、またはフロントエンド構成要素の任意の組合せを含むコンピューティングシステムで実装することが可能である。通信ネットワークなどの任意の形態または媒体のデジタルデータ通信によってシステムの構成要素を相互接続することが可能である。通信ネットワークの例には、ローカルエリアネットワーク("LAN")、広域ネットワーク("WAN")、およびインターネットが含まれる。
【０１６１】
コンピューティングシステムは、クライアントおよびサーバを含むことが可能である。クライアントおよびサーバは、一般に互いに離れており、通常は通信ネットワークを通じて対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行中の、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。
【０１６２】
さらに、一定のデータが、記憶または使用される前に、1つまたは複数の方式で扱われてもよく、その結果、個人的に識別可能な情報が除去される。たとえば、いくつかの実施形態では、ユーザについての個人的に識別可能な情報を決定することができないように、または位置情報が取得される場合にユーザの地理的位置が(都市、郵便番号、または州レベルなどに)一般化されてもよいようにユーザの識別が扱われてもよく、その結果、ユーザの特定の位置を決定することができない。したがって、ユーザは、ユーザについてどの情報が収集されるか、その情報がどのように使用されるか、およびどの情報がユーザに提供されるかを制御してもよい。
【０１６３】
いくつかの実施形態が説明された。それでも、本発明の精神および範囲から逸脱することなく様々な修正が行われてもよいことを理解されよう。したがって、他の実施形態は以下の特許請求の範囲の範囲内にある。本明細書は多くの特定の実装詳細を含むが、これらを、特許請求されてもよいものの範囲に関する制限としてではなく、特定の実施形態に特有でもよい特徴の説明として解釈すべきである。別々の実施形態の文脈で本明細書で説明されるいくつかの特徴を、単一の実施形態で組み合わせて実装することも可能である。
【０１６４】
逆に、単一の実施形態の文脈で説明される様々な特徴が、複数の実施形態で別々に、または任意の適切なサブコンビネーションで実装されることが可能である。さらに、特徴がいくつかの組合せで動作するものとして上記で説明され、さらにはそのようなものとして最初に特許請求される場合があるが、いくつかのケースでは、特許請求される組合せからの1つまたは複数の特徴を組合せから削除することが可能であり、特許請求される組合せが、サブコンビネーションまたはサブコンビネーションの変形を対象としてもよい。
【０１６５】
同様に、図面では動作が特定の順序で示されるが、望ましい結果を達成するために、そのような動作が図示される特定の順序で、または順次的に実施されること、またはすべての図示される動作が実施されることを必要とすると理解すべきではない。いくつかの環境では、マルチタスキングおよび並列処理が有利である場合がある。さらに、前述の実施形態での様々なシステムモジュールおよび構成要素の分離を、すべての実施形態においてそのような分離を必要とすると理解すべきではなく、説明されるプログラム構成要素およびシステムは一般に、単一のソフトウェア製品としてともに一体化され、または複数のソフトウェア製品としてパッケージ化することが可能であることを理解されたい。
【０１６６】
主題の特定の実施形態が説明された。他の実施形態は以下の特許請求の範囲内にある。たとえば、請求項に記載のアクションは、異なる順序で実施され、それでもなお望ましい結果を達成することが可能である。一例として、添付の図に示されるいくつかのプロセスは、望ましい結果を達成するために、図示される特定の順序、または順次的順序を必ずしも必要とするわけではない。
【符号の説明】
【０１６７】
100  コンピューティングシステム
102  モバイルデバイス
103  音声入力
105  音声入力
104  コンピューティングサーバ
106  音声モジュール
107  自動音声認識器
108  自然言語プロセッサ
110  アプリケーションモジュール
111  アプリケーション
112  アプリケーションインデックス
114  ブックマークインデックス
116  デバイスアシスタント
118  コンテキストデータエンジン
120  BMエンジン
122  論理
124  OCR論理
126  ブックマークインデックス
128  アプリケーションテンプレート
130  データストレージ
134  要素データ
136  コンテキストデータ
137  補助データ
138  トランスクリプション
140  app ID
142  リソースID
143  ブックマークデータ
144  説明
146  ディープリンク
148  ウェブURL
150  スクリーンショット
302  ユーザインターフェース
303  マイクロフォンアイコン
304  ユーザインターフェース
306  ユーザインターフェース
308  入力
310  出力
312  提案
314  入力
316  出力
318  ブックマーク
402  ユーザインターフェース
404  ユーザインターフェース
406  ユーザインターフェース
408  入力
410  出力
412  提案
414  入力
416  出力
418  ブックマーク
502  ユーザインターフェース
504  ユーザインターフェース
506  入力
508  出力
510  提案チップ
512  提案チップ
602  ユーザインターフェース
604  ユーザ入力
606  出力
608  ブックマーク
610  ブックマーク
612  ブックマーク
700  コンピューティングデバイス
702  プロセッサ
704  メモリ
706  記憶装置
708  高速インターフェース
710  高速拡張ポート
712  低速インターフェース
714  低速バス
716  ディスプレイ
720  標準サーバ
722  ラップトップコンピュータ
724  ラックサーバシステム
750  コンピューティングデバイス
752  プロセッサ
754  ディスプレイ
764  メモリ
766  通信インターフェース
768  トランシーバ
770  GPSレシーバモジュール
772  拡張インターフェース
774  拡張メモリ
780  セルラー電話
782  スマートフォン
【図１】
2020516980.tif 000003
【図２】
2020516980.tif 000004
【図３】
2020516980.tif 000005
【図４】
2020516980.tif 000006
【図５】
2020516980.tif 000007
【図６】
2020516980.tif 000008
【図７】
2020516980.tif 000009
【手続補正書】
【提出日】令和1年10月2日(2019.10.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムによって受け取るステップと、
前記第1の音声入力を受信したことに応答して、前記ブックマークを生成するために、リソースページに関連するリソース識別子、および前記第1の音声入力の発話に対応するトランスクリプションを前記コンピューティングシステムによって取得するステップと、
前記コンピューティングシステムのブックマークエンジンを使用して、前記トランスクリプションの解析に基づいて前記ブックマークを生成するためのコンピューティング機能をトリガするステップと、
トリガするステップに応答して、ユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとして前記リソース識別子を前記コンピューティングシステムによって記憶するステップと、
前記ユーザデバイスからの前記要求に基づいて前記リソースページにアクセスするために、前記ブックマークとして記憶された前記リソース識別子を前記コンピューティングシステムによって使用するステップであって、前記ユーザデバイスが前記ユーザから第2の音声入力を受信したことに応答して、前記要求が前記ユーザデバイスによって生成される、ステップと
を含む、コンピュータ実装方法。
【請求項２】
i)前記リソースページがウェブブラウザアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページにアクセスするためのリソースアドレスを提供するユニフォームリソースロケータ(URL)である、請求項1に記載の方法。
【請求項３】
i)前記リソースページが前記ユーザデバイス上にインストールされたネイティブアプリケーションによって生成され、前記ネイティブアプリケーションが、アプリケーションインデックス内に1つまたは複数のディープリンクを記憶するように構成され、
ii)前記リソース識別子が、前記リソースページについてのユニフォームリソースロケータ(URL)であり、かつ前記ネイティブアプリケーションについてのアドレスデータを含む前記アプリケーションインデックスから取得される、
請求項1に記載の方法。
【請求項４】
前記リソース識別子を取得するステップが、
i)前記ネイティブアプリケーションに関連する前記1つまたは複数のディープリンクを記憶する前記アプリケーションインデックスにアクセスするステップと、
ii)前記リソースページについての前記URLを示すディープリンクを前記アプリケーションインデックスから選択するステップであって、前記ディープリンクが前記リソースページにアクセスするためのリソースアドレスを提供する、ステップと
を含む、請求項3に記載の方法。
【請求項５】
i)前記リソースページが、ネイティブアプリケーションインデックスに対する1つまたは複数のアプリケーションディープリンクを記憶しない、ウェブブラウザ以外のネイティブアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページに対するコンピューティング経路に関連する電子アドレスを提供する、
請求項1に記載の方法。
【請求項６】
i)前記リソースページが、前記ユーザデバイス上にインストールされた特定のタイプのアプリケーションによって生成され、
ii)前記リソース識別子が、
a)前記アプリケーションによって生成された前記リソースページの画面イメージを特定するデータ、または
b)前記アプリケーションによって生成された前記リソースページにアクセスするためのリソースアドレスを提供するディープリンク
の少なくとも一方である、
請求項1に記載の方法。
【請求項７】
前記特定のタイプアプリケーションに関連するアプリケーションコンテンツの解析に基づいて、パターンデータを前記コンピューティングシステムによって検出するステップと、
前記パターンデータに基づいて、前記ディープリンクを前記コンピューティングシステムによって生成するステップと
をさらに含む、請求項6に記載の方法。
【請求項８】
前記ユーザから前記第1の音声入力を受け取った後、
a)ネイティブアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ネイティブアプリケーションユニフォームリソースロケータ(URL)、
b)ウェブブラウザアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ウェブブラウザアプリケーションURL、
c)前記ユーザデバイス上にインストールされた仮想アシスタントアプリケーションによって生成された補助データ、または
d)前記リソースページの画面イメージを特定するデータ
のうちの少なくとも1つを含むコンテキストデータを前記コンピューティングシステムによって取得するステップ
をさらに含む、請求項1に記載の方法。
【請求項９】
前記受け取ったコンテキストデータの少なくともサブセットを示すデータを含むテンプレートを前記コンピューティングシステムによって生成するステップと、
前記リソース識別子に対応するURL、または前記リソース識別子に対応するディープリンクの一方を、前記コンピューティングシステムによって、前記テンプレートに基づいて生成するステップと、
前記リソースページにアクセスするための前記ブックマークを生成するために、前記テンプレートと前記URLまたは前記ディープリンクの一方とを前記コンピューティングシステムによって使用するステップと
をさらに含む、請求項8に記載の方法。
【請求項１０】
前記ブックマークについての識別子を前記コンピューティングシステムによって決定するステップであって、前記ブックマークについての前記識別子が、前記ユーザから前記ユーザデバイスによって受け取られた前記第1の音声入力に基づいて決定される、ステップ
をさらに含む、請求項1から9のいずれか一項に記載の方法。
【請求項１１】
前記ブックマークについての前記識別子が前記ブックマークの名前であり、前記方法が、
前記ブックマークについての前記識別子を前記コンピューティングシステムによって修正するステップであって、前記ブックマークをリネームするステップを含む、ステップ
をさらに含む、請求項10に記載の方法。
【請求項１２】
1つまたは複数の処理装置と、
命令を記憶するための1つまたは複数の機械可読記憶装置であって、前記命令が、
ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムによって受け取ることと、
前記第1の音声入力を受信したことに応答して、前記ブックマークを生成するために、リソースページに関連するリソース識別子、および前記第1の音声入力の発話に対応するトランスクリプションを前記コンピューティングシステムによって取得することと、
前記コンピューティングシステムのブックマークエンジンを使用して、前記トランスクリプションの解析に基づいて前記ブックマークを生成するためのコンピューティング機能をトリガすることと、
トリガすることに応答して、ユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとして前記リソース識別子を前記コンピューティングシステムによって記憶することと、
前記ユーザデバイスからの前記要求に基づいて前記リソースページにアクセスするために、前記ブックマークとして記憶された前記リソース識別子を前記コンピューティングシステムによって使用することであって、前記ユーザデバイスが前記ユーザから第2の音声入力を受信したことに応答して、前記要求が前記ユーザデバイスによって生成される、使用することと
を含む動作を実施するように前記1つまたは複数の処理装置によって実行可能である、1つまたは複数の機械可読記憶装置と
を備える、電子システム。
【請求項１３】
i)前記リソースページがウェブブラウザアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページにアクセスするためのリソースアドレスを提供するユニフォームリソースロケータ(URL)である、
請求項12に記載の電子システム。
【請求項１４】
i)前記リソースページが、前記ユーザデバイス上にインストールされたネイティブアプリケーションによって生成され、前記ネイティブアプリケーションが、アプリケーションインデックス内に1つまたは複数のディープリンクを記憶するように構成され、
ii)前記リソース識別子が、前記リソースページについてのユニフォームリソースロケータ(URL)であり、かつ前記ネイティブアプリケーションについてのアドレスデータを含む前記アプリケーションインデックスから取得される、
請求項12に記載の電子システム。
【請求項１５】
前記リソース識別子を取得することが、
i)前記ネイティブアプリケーションに関連する前記1つまたは複数のディープリンクを記憶する前記アプリケーションインデックスにアクセスすることと、
ii)前記リソースページについての前記URLを示すディープリンクを前記アプリケーションインデックスから選択することであって、前記ディープリンクが前記リソースページにアクセスするためのリソースアドレスを提供する、選択することと
を含む、請求項14に記載の電子システム。
【請求項１６】
i)前記リソースページが、ネイティブアプリケーションインデックスに対する1つまたは複数のアプリケーションディープリンクを記憶しない、ウェブブラウザ以外のネイティブアプリケーションによって生成され、
ii)前記リソース識別子が、前記リソースページに対するコンピューティング経路に関連する電子アドレスを提供する、
請求項12に記載の電子システム。
【請求項１７】
i)前記リソースページが、前記ユーザデバイス上にインストールされたメッセージングアプリケーションによって生成され、
ii)前記リソース識別子が、
a)前記メッセージングアプリケーションによって生成された前記リソースページの画面イメージを特定するデータ、または
b)前記メッセージングアプリケーションの前記リソースページにアクセスするためのリソースアドレスを提供するディープリンク
の少なくとも一方である、
請求項12に記載の電子システム。
【請求項１８】
前記メッセージングアプリケーションに関連する2つ以上のメッセージの解析に基づいて、パターンデータを前記コンピューティングシステムによって検出することと、
前記パターンデータに基づいて、前記ディープリンクを前記コンピューティングシステムによって生成することと
をさらに含む、請求項17に記載の電子システム。
【請求項１９】
前記ユーザから前記第1の音声入力を受け取った後、
a)ネイティブアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ネイティブアプリケーションユニフォームリソースロケータ(URL)、
b)ウェブブラウザアプリケーションによって生成されるものとして前記リソースページを一意に特定する前記ウェブブラウザアプリケーションURL、
c)ユーザデバイス上にインストールされた仮想アシスタントアプリケーションによって生成された補助データ、または
d)前記リソースページの画面イメージを特定するデータ
のうちの少なくとも1つを含むコンテキストデータを前記コンピューティングシステムによって取得すること
をさらに含む、請求項12から18のいずれか一項に記載の電子システム。
【請求項２０】
前記受け取ったコンテキストデータの少なくともサブセットを示すデータを含むテンプレートを前記コンピューティングシステムによって生成することと、
前記リソース識別子に対応するURL、または前記リソース識別子に対応するディープリンクの一方を、前記コンピューティングシステムによって、前記テンプレートに基づいて生成することと、
前記リソースページにアクセスするための前記ブックマークを生成するために、前記テンプレートと前記URLまたは前記ディープリンクの一方とを前記コンピューティングシステムによって使用することと
をさらに含む、請求項19に記載の電子システム。
【請求項２１】
ブックマークを生成するためのユーザからの第1の音声入力をコンピューティングシステムによって受け取ることと、
前記第1の音声入力を受信したことに応答して、前記ブックマークを生成するために、リソースページに関連するリソース識別子、および前記第1の音声入力の発話に対応するトランスクリプションを前記コンピューティングシステムによって取得することと、
前記コンピューティングシステムのブックマークエンジンを使用して、前記トランスクリプションの解析に基づいて前記ブックマークを生成するためのコンピューティング機能をトリガすることと、
トリガすることに応答して、ユーザデバイスからの要求に応答してアクセス可能なブックマークインデックス内のブックマークとして前記リソース識別子を前記コンピューティングシステムによって記憶することと、
前記ユーザデバイスからの前記要求に基づいて前記リソースページにアクセスするために、前記ブックマークとして記憶された前記リソース識別子を前記コンピューティングシステムによって使用することであって、前記ユーザデバイスが前記ユーザから第2の音声入力を受信したことに応答して、前記要求が前記ユーザデバイスによって生成される、使用することと
を含む動作を実施するように1つまたは複数の処理装置によって実行可能である命令を記憶する、1つまたは複数の機械可読記憶装置。
【請求項２２】
i)前記リソースページが、前記ユーザデバイス上にインストールされたネイティブアプリケーションによって生成され、前記ネイティブアプリケーションが、アプリケーションインデックス内に1つまたは複数のディープリンクを記憶するように構成され、
ii)前記リソース識別子が、前記リソースページについてのユニフォームリソースロケータ(URL)であり、前記ネイティブアプリケーションについてのアドレスデータを含む前記アプリケーションインデックスから取得される、
請求項21に記載の1つまたは複数の機械可読記憶装置。
【国際調査報告】
2020516980.tif 000010
2020516980.tif 000011
2020516980.tif 000012