(57)【要約】      （修正有）【課題】緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法を提供する。【解決手段】方法は、１つ以上のプロセッサと、１つ以上のプロセッサによって実行される命令を記憶するメモリとを含む機器において実行される。方法は、ユーザから発語入力を受け取ることと、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定することと、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定することと、を含む。また、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか又はその判定を取得したことに応じて、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信することを含む。【選択図】図６
2020025272.tif 000002
【特許請求の範囲】
【請求項１】
緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法であって、
メモリ及び１つ以上のプロセッサを有する機器において、
ユーザから発語入力を受け取ることと、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することと、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することと、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することと、
を含むことを特徴とする、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項２】
前記機器がアクティブなデータ接続を有することを特徴とする、請求項１に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項３】
前記機器が加入電話サービスへのアクティブな接続を有しないが、ベースバンド電話サービスへのアクセスを実際に有することを特徴とする、請求項１又は２のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項４】
前記機器が、動作ＳＩＭカードを有しないことを特徴とする、請求項１から３のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項５】
前記機器が、前記機器の現在のロケーションにおいて利用可能ないずれの電話サービスに適合するＳＩＭカードを有しないことを特徴とする、請求項１から３のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項６】
前記現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する前に、前記機器の前記地理的ロケーションを究明することを更に含むことを特徴とする、請求項１から５のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項７】
前記緊急通信指令係電話番号が、前記機器上に記憶された複数の緊急通信指令係電話番号のうちの１つであることを特徴とする、請求項１から６のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項８】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することと、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することと、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信する前に、緊急電話をかけることを求める前記ユーザの要求を確認するための通知及びアフォーダンスを前記ユーザに提供することと、
を含むことを特徴とする、請求項１から７のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項９】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含み、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することが、第２の緊急番号を判定するか、又はその判定を取得することを含み、
前記第１の緊急番号が前記第２の緊急番号と別個である場合には、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することが、前記第２の緊急番号に発信することを含むことを特徴とする、請求項１から８のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項１０】
前記現地の緊急通信指令係電話番号に発信する前に、前記機器は前記現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知を前記ユーザに提供することと、
前記通知を提供している間に、前記ユーザが、緊急電話をかけることを求める前記要求を取り消すためのアフォーダンスを提供することと、
を更に含むことを特徴とする、請求項１から９のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項１１】
前記デジタルアシスタント内に限定自然言語処理モジュールを提供することであって、前記限定自然言語処理モジュールは、通常動作中に前記デジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、前記限定自然言語処理モジュールは、前記緊急電話機能性を呼び出すための発語入力を認識するように適合される、提供すること、を更に含む、請求項１から１０のいずれか一項に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項１２】
前記機器は、前記機器の前記現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されているかどうかを判定することと、
前記機器は、前記機器の前記現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されていないと判定したことに応じて、前記発語入力を処理するために前記限定自然言語処理モジュールを呼び出すことと、
を更に含むことを特徴とする、請求項１１に記載の、緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法。
【請求項１３】
機器であって、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備え、前記１つ以上のプログラムは、前記メモリ内に記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムは、
ユーザから発語入力を受け取り、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得し、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得し、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、前記現地の緊急通信指令係電話番号に発信する、
命令を含むことを特徴とする、機器。
【請求項１４】
前記機器がアクティブなデータ接続を有することを特徴とする、請求項１３に記載の機器。
【請求項１５】
前記機器が加入電話サービスへのアクティブな接続を有しないが、ベースバンド電話サービスへのアクセスを実際に有することを特徴とする、請求項１３又は１４のいずれか一項に記載の機器。
【請求項１６】
前記機器が、動作ＳＩＭカードを有しないことを特徴とする、請求項１３から１５のいずれか一項に記載の機器。
【請求項１７】
前記機器が、前記機器の現在のロケーションにおいて利用可能ないずれの電話サービスに適合するＳＩＭカードを有しないことを特徴とする、請求項１３から１５のいずれか一項に記載の機器。
【請求項１８】
前記１つ以上のプログラムが、前記現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する前に、前記機器の前記地理的ロケーションを究明する命令を更に含むことを特徴とする、請求項１３から１７のいずれか一項に記載の機器。
【請求項１９】
前記緊急通信指令係電話番号が、前記機器上に記憶された複数の緊急通信指令係電話番号のうちの１つであることを特徴とする、請求項１３から１８のいずれか一項に記載の機器。
【請求項２０】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することを含み、
前記１つ以上のプログラムが、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信し、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信する前に、緊急電話をかけることを求める前記ユーザの要求を確認するための通知及びアフォーダンスを前記ユーザに提供する、
命令を更に含むことを特徴とする、請求項１３から１９のいずれか一項に記載の機器。
【請求項２１】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含み、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することが、第２の緊急番号を判定するか、又はその判定を取得することを含み、
前記１つ以上のプログラムが、前記第１の緊急番号が前記第２の緊急番号と別個である場合には、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することが前記第２の緊急番号に発信することを含む命令を更に含むことを特徴とする、請求項１３から２０のいずれか一項に記載の機器。
【請求項２２】
前記１つ以上のプログラムが、
前記現地の緊急通信指令係電話番号に発信する前に、前記機器は前記現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知を前記ユーザに提供し
前記通知を提供している間に、前記ユーザが、緊急電話をかけることを求める前記要求を取り消すためのアフォーダンスを提供する、
命令を更に含むことを特徴とする、請求項１３から２１のいずれか一項に記載の機器。
【請求項２３】
前記１つ以上のプログラムが、前記デジタルアシスタント内に限定自然言語処理モジュールを提供する命令を更に含み、前記限定自然言語処理モジュールは、通常動作中に前記デジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、前記限定自然言語処理モジュールは、前記緊急電話機能性を呼び出すための発語入力を認識するように適合されることを特徴とする、請求項１３から２２のいずれか一項に記載の機器。
【請求項２４】
前記１つ以上のプログラムが、
前記機器は、前記機器の前記現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されているかどうかを判定し、
前記機器は、前記機器の前記現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されていないと判定したことに応じて、前記発語入力を処理するために前記限定自然言語処理モジュールを呼び出す、
命令を更に含むことを特徴とする、請求項２３に記載の機器。
【請求項２５】
１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは命令を含み、前記命令は、電子機器によって実行されると、前記機器に、
ユーザから発語入力を受け取らせ、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得させ、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得させ、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、前記現地の緊急通信指令係電話番号に発信させる、
ことを特徴とする、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項２６】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得する前記命令が、リモートサーバからアクティブなデータ接続を介して、前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかの判定を取得する命令を含むことを特徴とする、請求項２５に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項２７】
前記１つ以上のプログラムが、前記機器が加入電話サービスへのアクティブな接続を有しない場合には、ベースバンド電話サービスを用いて前記現地の緊急通信指令係電話番号に発信する命令を含むことを特徴とする、請求項２５又は２６に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項２８】
前記１つ以上のプログラムが、前記機器が、動作ＳＩＭカードを有しない場合には、ベースバンド電話サービスを用いて前記現地の緊急通信指令係電話番号に発信する命令を含むことを特徴とする、請求項２５から２７のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項２９】
前記１つ以上のプログラムが、前記機器が、前記機器の現在のロケーションにおいて利用可能ないずれの電話サービスに適合するＳＩＭカードを有しない場合には、ベースバンド電話サービスを用いて前記現地の緊急通信指令係電話番号に発信する命令を含むことを特徴とする、請求項２５から２７のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３０】
前記１つ以上のプログラムが、前記現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する前に、前記機器の前記地理的ロケーションを究明する命令を更に含むことを特徴とする、請求項２５から２９のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３１】
前記緊急通信指令係電話番号が、前記機器上に記憶された複数の緊急通信指令係電話番号のうちの１つであることを特徴とする、請求項２５から３０のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３２】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することを含み、
前記１つ以上のプログラムが、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信し、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信する前に、緊急電話をかけることを求める前記ユーザの要求を確認するための通知及びアフォーダンスを前記ユーザに提供する、
命令を更に含むことを特徴とする、請求項２５から３１のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３３】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含み、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することが、第２の緊急番号を判定するか、又はその判定を取得することを含み、
前記１つ以上のプログラムが、前記第１の緊急番号が前記第２の緊急番号と別個である場合には、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することが前記第２の緊急番号に発信することを含む命令を更に含むことを特徴とする、請求項２５から３２のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３４】
前記１つ以上のプログラムが、
前記現地の緊急通信指令係電話番号に発信する前に、前記機器は前記現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知を前記ユーザに提供し、
前記通知を提供している間に、前記ユーザが、緊急電話をかけることを求める前記要求を取り消すためのアフォーダンスを提供する、
命令を更に含むことを特徴とする、請求項２５から３３のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３５】
前記１つ以上のプログラムが、前記デジタルアシスタント内に限定自然言語処理モジュールを提供する命令を更に含み、前記限定自然言語処理モジュールは、通常動作中に前記デジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、前記限定自然言語処理モジュールは、前記緊急電話機能性を呼び出すための発語入力を認識するように適合されることを特徴とする、請求項２５から３４のいずれか一項に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３６】
前記１つ以上のプログラムが、
前記機器は、前記機器の前記現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されているかどうかを判定し、
前記機器は、前記機器の前記現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されていないと判定したことに応じて、前記発語入力を処理するために前記限定自然言語処理モジュールを呼び出す、
命令を更に含むことを特徴とする、請求項３５に記載の、１つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体。
【請求項３７】
電子機器であって、
メモリと、
前記メモリに結合される処理ユニットと、を備え、前記処理ユニットは、
ユーザから発語入力を受け取り、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得し、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得し、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、前記現地の緊急通信指令係電話番号に発信する、
ように構成されることを特徴とする、電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
本出願は、２０１３年６月１３日に出願され、ＳＹＳＴＥＭ  ＡＮＤ  ＭＥＴＨＯＤ  ＦＯＲ  ＥＭＥＲＧＥＮＣＹ  ＣＡＬＬＳ  ＩＮＩＴＩＡＴＥＤ  ＢＹ  ＶＯＩＣＥ  ＣＯＭＭＡＮＤと題する、米国特許仮出願第６１／８３４，８２３号からの優先権を主張する。同出願はその全体が全ての目的のために本明細書において参照により組み込まれている。
【０００２】
［技術分野］
開示されている実施形態は概してデジタルアシスタントに関する。より詳細には、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法及びシステムに関する。
【背景技術】
【０００３】
近年、アップル社（Ａｐｐｌｅ）のＳＩＲＩ（登録商標）などの、ウェブの検索及びナビゲーションなどの様々なタスクを扱うための、音声ベースのデジタルアシスタントが市場に導入されている。自然言語処理における最近の進歩は、ユーザが、従来のユーザインタフェース（例えば、メニュー又はプログラムされたコマンド）を利用するのではなく、音声又は文字の形態で、自然言語を用いてデジタルアシスタントと対話することを可能にした。このようなデジタルアシスタントは、ユーザの入力を解釈してユーザの意図を推測し、推測された意図を実施可能なタスク及びパラメータに翻訳し、タスクを実行するべく動作を実行するか又はサービスをデプロイし、ユーザが理解できる出力を作成することができる。
【発明の概要】
【０００４】
本明細書において開示されている実施形態は、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法、機器、システム、及びコンピュータ可読記憶媒体を提供する。
【０００５】
いくつかの実施形態は、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法を提供する。本方法は、メモリと１つ以上のプロセッサとを有する機器において実行される。本方法は、ユーザから発語入力を受け取ることと、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することと、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することと、を含む。本方法は、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信することを含む。
【０００６】
いくつかの実施形態では、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定することは、機器と別個のリモートサーバにおいて実行される。いくつかの実施形態では、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定することは、機器と別個のリモートサーバにおいて実行される。いくつかの実施形態では、本方法は、ユーザからテキスト入力を受け取ることを更に含む。
【０００７】
様々な状況において、本方法は、機器がアクティブなデータ接続を有するか、又は機器が加入電話サービスへのアクティブな接続を有しないが、ベースバンド電話サービスへのアクセスを実際に有するか、又は機器が、動作ＳＩＭカードを有しないか、又は機器が、その機器の現在のロケーションにおいて利用可能ないずれの電話サービスに適合するＳＩＭカードを有しない間に実行される。
【０００８】
いくつかの実施形態では、本方法は、現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する前に、機器の地理的ロケーションを究明することを更に含む。
【０００９】
いくつかの実施形態では、緊急通信指令係電話番号は、機器上に記憶された複数の緊急通信指令係電話番号のうちの１つである。
【００１０】
いくつかの実施形態では、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することは、発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することを含む。これらの実施形態では、本方法は、発語入力は緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信することと、発語入力は緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信する前に、緊急電話をかけることを求めるユーザの要求を確認するための通知及びアフォーダンスをユーザに提供することと、を更に含む。
【００１１】
いくつかの実施形態では、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することは、発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含む。これらの実施形態では、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することは、第２の緊急番号を判定するか、又はその判定を取得することを含み、第１の緊急番号が第２の緊急番号と別個である場合には、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信することは、第２の緊急番号に発信することを含む。
【００１２】
いくつかの実施形態では、本方法は、現地の緊急通信指令係電話番号に発信する前に、機器は現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知をユーザに提供することと、通知を提供している間に、ユーザが、緊急電話をかけることを求める要求を取り消すためのアフォーダンスを提供することと、を更に含む。
【００１３】
いくつかの実施形態では、本方法は、デジタルアシスタント内に限定自然言語処理モジュールを提供することであって、限定自然言語処理モジュールは、通常動作中にデジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、限定自然言語処理モジュールは、緊急電話機能性を呼び出すための発語入力を認識するように適合される、提供することを更に含む。
【００１４】
いくつかの実施形態では、本方法は、機器は、その機器の現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されているかどうかを判定することと、機器は、その機器の現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されていないと判定したことに応じて、発語入力を処理するために限定自然言語処理モジュールを呼び出すことと、を更に含む。
【００１５】
本明細書において説明されている方法に従うデジタルアシスタントを用いることは、緊急電話機能性を提供するための従来のユーザインタフェースよりも効率的で便利である。
【００１６】
いくつかの実施形態によれば、機器は、１つ以上のプロセッサと、メモリと、１つ以上のプログラムと、を含み、１つ以上のプログラムはメモリ内に記憶され、１つ以上のプロセッサによって実行されるように構成される。１つ以上のプログラムは、ユーザから発語入力を受け取り、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得し、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する、命令を含む。１つ以上のプログラムは、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、現地の緊急通信指令係電話番号に発信する命令を更に含む。いくつかの実施形態では、機器は加入電話サービスへのアクティブな接続を有しないが、ベースバンド電話サービスへのアクセスを実際に有する。
【００１７】
いくつかの実施形態によれば、システムは、１つ以上のプロセッサと、メモリと、１つ以上のプログラムと、を含み、１つ以上のプログラムはメモリ内に記憶され、１つ以上のプロセッサによって実行されるように構成される。１つ以上のプログラムは、機器において、ユーザから発語入力を受け取る命令を含む。１つ以上のプログラムは、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定し、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定し、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したことに応じて、現地の緊急通信指令係電話番号に発信する、命令を更に含む。
【００１８】
いくつかの実施形態によれば、コンピュータ−可読記憶媒体（例えば、非一時的コンピュータ可読記憶媒体）が提供され、コンピュータ−可読記憶媒体は、電子機器の１つ以上のプロセッサによって実行される１つ以上のプログラムを記憶する。１つ以上のプログラムは、電子機器によって実行されると、機器に、ユーザから発語入力を受け取らせ、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定させる、又はその判定を取得させ、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得させる。１つ以上のプログラムは、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、現地の緊急通信指令係電話番号に発信する命令を更に含む。
【００１９】
いくつかの実施形態によれば、電子機器内で使用するための情報処理装置が提供され、この情報処理装置は、本明細書に記載されている方法のいずれかを実行するための手段を備える。
【００２０】
いくつかの実施形態によれば、電子機器は、メモリと、メモリに結合される処理ユニットと、を備える。処理ユニットは、ユーザから発語入力を受け取り、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得し、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する、ように構成される。処理ユニットは、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、現地の緊急通信指令係電話番号に発信するように更に構成される。
【図面の簡単な説明】
【００２１】
【図１】いくつかの実施形態に係る、デジタルアシスタントが動作する環境を示すブロック図である。
【００２２】
【図２】いくつかの実施形態に係るデジタルアシスタントクライアントシステムを示すブロック図である。
【００２３】
【図３Ａ】いくつかの実施形態に係る、デジタルアシスタントシステム又はそのサーバ部分を示すブロック図である。
【００２４】
【図３Ｂ】いくつかの実施形態に係る、図３Ａに示されるデジタルアシスタントの機能を示すブロック図である。
【００２５】
【図３Ｃ】いくつかの実施形態に係る、図３Ｂに示されるオントロジのグラフィカル表示である。
【００２６】
【図４】いくつかの実施形態に係る、タッチスクリーンを有するポータブル多機能機器を示す。
【００２７】
【図５Ａ】いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させることに関連付けられる内容を表示するための例示的なユーザインタフェースを示す。
【図５Ｂ】いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させることに関連付けられる内容を表示するための例示的なユーザインタフェースを示す。
【００２８】
【図６】いくつかの実施形態に係る、デジタルアシスタントシステムの機能を示すフローチャートである。
【００２９】
【図７Ａ】いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法を示すフローチャートである。
【図７Ｂ】いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法を示すフローチャートである。
【図８】いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法を示すフローチャートである。
【００３０】
【図９】いくつかの実施形態に係る、電子機器の機能ブロック図である。
【００３１】
類似の参照番号は、図面全体を通して対応する部分を指す。
【発明を実施するための形態】
【００３２】
次に、添付図面に実施例が示される実施形態を詳細に参照する。以下の詳細な説明では、本発明の完全な理解を提供するために、数多くの具体的な詳細が記載される。しかし、本発明は、これらの具体的な詳細を伴わずとも実施することができる点が、当業者には明らかとなるであろう。他の例では、周知の方法、手順、構成要素、回路、及びネットワークは、実施形態の態様を不必要に不明瞭なものとしないよう、詳細には説明されていない。
【００３３】
本明細書では、様々な要素を説明するために第１、第２などの用語が使用される場合があるが、これらの要素は、これらの用語によって限定されるべきではないことも理解されるであろう。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、本発明の範囲から逸脱することなく、第１の接触を第２の接触と呼ぶことが可能であり、同様に、第２の接触を第１の接触と呼ぶことが可能であろう。第１の接触及び第２の接触は、双方とも接触であるが、それらは同じ接触ではない。
【００３４】
本明細書における本発明の説明で使用される用語は、特定の実施形態を説明することのみを目的とするものであって、本発明の限定を意図するものではない。本発明の説明及び添付の特許請求の範囲で使用される時、単数形「ａ」、「ａｎ」、及び「ｔｈｅ」は、文脈がそうではないことを明確に示さない限り、複数形もまた含むことが意図される。本明細書で使用される時に、用語「及び／又は」が、関連する列挙された項目のうちの１つ以上の任意の全ての可能な組合せを指し、かつこれを含むことをもまた理解されたい。更に、用語「ｉｎｃｌｕｄｅｓ（含む）」、「ｉｎｃｌｕｄｉｎｇ（含む）」、「ｃｏｍｐｒｉｓｅｓ（備える）」、及び／又は「ｃｏｍｐｒｉｓｉｎｇ（備える）」は、本明細書で使用される場合、記述される特徴、整数、ステップ、動作、要素、及び／又は構成要素の存在を指定するが、１つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び／又はそれらの群の存在若しくは追加を排除するものではないことが理解されるであろう。
【００３５】
本明細書で使用される時に、用語「ｉｆ（〜場合に）」は、文脈に応じて「ｗｈｅｎ（〜時に）」、「ｕｐｏｎ（〜時に）」、「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｒｍｉｎｉｎｇ（〜との判定に応じて）」、又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｃｔｉｎｇ（〜の検出に応じて）」を意味すると解釈することができる。同様に、句「ｉｆ  ｉｔ  ｉｓ  ｄｅｔｅｒｍｉｎｅｄ（〜と判定される場合に）」又は「ｉｆ［ａ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｏｒ  ｅｖｅｎｔ］ｉｓ  ｄｅｔｅｃｔｅｄ（［述べられる条件又はイベント］が検出される場合に）」は、文脈に応じて「ｕｐｏｎ  ｄｅｔｅｒｍｉｎｉｎｇ（〜と判定される時に）」、「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｒｍｉｎｉｎｇ（〜との判定に応じて）」、「ｕｐｏｎ  ｄｅｔｅｃｔｉｎｇ［ｔｈｅ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｏｒ  ｅｖｅｎｔ］（［述べられる条件又はイベント］の検出時に）」、又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｃｔｉｎｇ［ｔｈｅ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｏｒ  ｅｖｅｎｔ］（［述べられる条件又はイベント］の検出に応じて）」を意味すると解釈することができる。
【００３６】
図１は、いくつかの実施形態に係るデジタルアシスタントの動作環境１００のブロック図である。用語「デジタルアシスタント」、「仮想アシスタント」、「インテリジェント自動アシスタント」、又は「自動デジタルアシスタント」は、音声及び／又は文字の形態の自然言語入力を解釈してユーザ意図を推測し、推測されたユーザ意図に基づいてアクションを実行する任意の情報処理システムを指す。例えば、推測されたユーザ意図に基づいて動作するために、システムは、以下のことのうちの１つ以上を実行することができる。推測されたユーザ意図を果たすように設計されたステップ及びパラメータを有するタスクフローを特定すること、推測されたユーザ意図からの特定の要求事項をタスクフロー内に入力すること、プログラム、方法、サービス、ＡＰＩ、若しくは同様のものを呼び出すことによってタスクフローを実行すること、並びに可聴（例えば、発語）及び／又は視覚形式のユーザへの出力応答を生成すること。
【００３７】
具体的には、デジタルアシスタントは、少なくとも部分的には、自然言語のコマンド、要求、陳述、叙述、及び／又は照会の形態でユーザ要求を受け入れる能力を有する。通例、ユーザ要求はデジタルアシスタントによる情報回答又はタスクの実行のいずれかを求める。ユーザ要求への満足な応答は、要求された情報回答の提供、要求されたタスクの実行のいずれか、又はその２つの組み合わせとなる。例えば、ユーザはデジタルアシスタントに「私は今どこにいますか？」などの質問をすることができる。ユーザの現在のロケーションに基づき、デジタルアシスタントは、「あなたはセントラルパーク内の西門の近くにいます」と回答してもよい。ユーザはまた、例えば、「来週私のガールフレンドの誕生パーティーに私の友人を招待してほしい」と、タスクの実行を要求することができる。それに応じて、デジタルアシスタントは、「はい、ただ今」と言うことによって要求を了解し、次に、ユーザに代わって、ユーザの電子アドレス帳に載っているユーザの友人の各々に適切なカレンダー招待状を送信してもよい。要求されたタスクの実行中に、デジタルアシスタントは、長期間にわたる複数の情報交換を伴う継続的ダイアログにおいてユーザと時折対話する。情報又は様々なタスクの実行を要求するために、デジタルアシスタントと対話する方法は他にも数多く存在する。言葉による応答を提供し、プログラムされたアクションを取ることに加えて、デジタルアシスタントはまた、他の視覚又はオーディオ形式の応答を、例えば、テキスト、警報、音楽、ビデオ、アニメーション等として、提供する。
【００３８】
デジタルアシスタントの一例が、２０１１年１月１０日出願の「Ｉｎｔｅｌｌｉｇｅｎｔ  Ａｕｔｏｍａｔｅｄ  Ａｓｓｉｓｔａｎｔ」についての出願人の米国実用特許出願第１２／９８７，９８２号に述べられている。同出願の開示の全体は本明細書において参照により組み込まれている。
【００３９】
図１に示されているように、いくつかの実施形態では、デジタルアシスタントはクライアント−サーバモデルに従って実装される。デジタルアシスタントは、ユーザ機器１０４ａ、１０４ｂ上で実行されるクライアント側部分１０２ａ、１０２ｂ（以下、「ＤＡクライアント１０２」）、及びサーバシステム１０８上で実行されるサーバ側部分１０６（以下、「ＤＡサーバ１０６」）を含む。ＤＡクライアント１０２は１つ以上のネットワーク１１０を通じてＤＡサーバ１０６と通信する。ＤＡクライアント１０２は、ユーザ対応入力及び出力処理、並びにＤＡサーバ１０６との通信などのクライアント側機能性を提供する。ＤＡサーバ１０６は、それぞれのユーザ機器１０４上に各々常駐する任意の数のＤＡクライアント１０２のためのサーバ側機能性を提供する。
【００４０】
いくつかの実施形態では、ＤＡサーバ１０６は、クライアント対応Ｉ／Ｏインタフェース１１２、１つ以上の処理モジュール１１４、データ及びモデル１１６、並びに外部サービスへのＩ／Ｏインタフェース１１８を含む。クライアント対応Ｉ／Ｏインタフェースはデジタルアシスタントサーバ１０６のためのクライアント対応入力及び出力処理を促進する。１つ以上の処理モジュール１１４はデータ及びモデル１１６を利用し、自然言語入力に基づきユーザの意図を判定し、推測されたユーザ意図に基づきタスク実行を実行する。いくつかの実施形態では、ＤＡサーバ１０６は、タスク完了又は情報獲得のためにネットワーク（単数又は複数）１１０を通じて外部サービス１２０と通信する。外部サービスへのＩ／Ｏインタフェース１１８はこのような通信を促進する。
【００４１】
ユーザ機器１０４の例としては、限定するものではないが、ハンドヘルドコンピュータ、無線携帯情報端末（Personal Digital Assistant、ＰＤＡ）、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、セルラー電話、スマートホン、拡張型汎用パケット無線サービス（Enhanced General Packet Radio Service、ＥＧＰＲＳ）携帯電話、メディアプレーヤ、ナビゲーションユーザ機器、ゲームコンソール、テレビ、遠隔制御装置、ポータブル多機能機器、又はこれらのデータ処理機器のうちの任意の２つ以上の組み合わせ、あるいは他のデータ処理機器が挙げられる。ユーザ機器１０４に関する更なる詳細が、図２に示される例示的なユーザ機器１０４に関して提供されている。
【００４２】
通信ネットワーク（単数又は複数）１１０の例としては、ローカルエリアネットワーク（「ＬＡＮ」）、及び、ワイドエリアネットワーク（「ＷＡＮ」）、例えば、インターネット、が挙げられる。通信ネットワーク（単数又は複数）１１０は、イーサネット（登録商標）、ユニバーサルシリアルバス（Universal Serial Bus、ＵＳＢ）、ＦＩＲＥＷＩＲＥ（登録商標）、移動通信用のグローバルシステム（Global System for Mobile Communications、ＧＳＭ（登録商標））、拡張データＧＳＭ環境（Enhanced Data GSM Environment、ＥＤＧＥ）、符号分割多元接続（Code Division Multiple Access、ＣＤＭＡ）、時分割多元接続（Time Division Multiple Access、ＴＤＭＡ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）、ボイスオーバーインターネットプロトコル（Voice Over Internet Protocol、ＶｏＩＰ）、Ｗｉ−ＭＡＸ（登録商標）、又は任意の他の好適な通信プロトコル等の、種々の有線又は無線プロトコルを含む、任意の周知のネットワークプロトコルを用いて実装することができる。
【００４３】
サーバシステム１０８は１つ以上の独立型データ処理装置又はコンピュータの分散型ネットワーク上に実装される。いくつかの実施形態では、サーバシステム１０８は、また、様々な仮想機器及び／又はサードパーティーサービスプロバイダ（例えば、サードパーティークラウドサービスプロバイダ）のサービスを利用して、サーバシステム１０８の基本的なコンピューティングリソース及び／又はインフラストラクチャリソースを提供する。
【００４４】
図１に示されるデジタルアシスタントはクライアント側部分（例えば、ＤＡクライアント１０２）及びサーバ側部分（例えば、ＤＡサーバ１０６）の両方を含むが、いくつかの実施形態では、デジタルアシスタントの機能は、ユーザ機器上にインストールされる独立型アプリケーションとして実装される。加えて、デジタルアシスタントのクライアント部分とサーバ部分との間の機能性の分配は実施形態によって異なり得る。例えば、いくつかの実施形態では、ＤＡクライアントは、ユーザ対応入力及び出力処理機能のみを提供し、デジタルアシスタントの全ての他の機能性をバックエンドサーバに委ねるシン・クライアントである。いくつかの実施形態では、デジタルアシスタントは、機器上に実装される限定自然言語処理モジュールを含む。これらの実施形態のうちのいくつかでは、限定自然言語処理モジュールは、機器が、非緊急電話をかけることを許可されていない場合に用いられる。これらの実施形態のうちのいくつかでは、限定自然言語処理モジュールは、緊急電話機能性を呼び出すための発語入力を認識するように適合される。
【００４５】
図２は、いくつかの実施形態に係るユーザ機器１０４のブロック図である。ユーザ機器１０４は、メモリインタフェース２０２、１つ以上のプロセッサ２０４、及び周辺インタフェース２０６を含む。ユーザ機器１０４内の種々の構成要素は１つ以上の通信バス又は信号線によって結合されている。ユーザ機器１０４は、周辺インタフェース２０６に連結されている様々なセンサ、サブシステム、及び周辺機器を含む。センサ、サブシステム、及び周辺機器は情報を収集し、及び／又はユーザ機器１０４の様々な機能を促進する。
【００４６】
例えば、いくつかの実施形態では、配向、光、及び近接検知機能を促進するために、動きセンサ２１０、光センサ２１２、及び近接センサ２１４が周辺インタフェース２０６に結合される。測位システム（例えば、ＧＰＳ受信機）、温度センサ、生体センサ、ジャイロ、コンパス、加速度計、及び同様のものなどの、１つ以上の他のセンサ２１６も、関連機能性を促進するために、周辺インタフェース２０６に接続される。
【００４７】
いくつかの実施形態では、写真の撮影及びビデオクリップの記録などの、カメラ機能を促進するために、カメラサブシステム２２０及び光センサ２２２が利用される。音声認識機能、音声複製機能、デジタル録音機能、及び電話機能などの、音声使用可能機能を促進するために、オーディオサブシステム２２６がスピーカ２２８及びマイクロホン２３０に結合される。
【００４８】
いくつかの実施形態では、様々な通信ポート、無線周波数受信機及び送信機、並びに／又は光（例えば、赤外線）受信機及び送信機を含むことができる、１つ以上の有線及び／又は無線通信サブシステム（単数又は複数）２２４を通じて通信機能が促進される。いくつかの実施形態では、通信サブシステム（単数又は複数）２２４は、ベースバンド電話サービスを提供するためのベースバンドモジュールを含む。いくつかの実施形態では、ベースバンド電話サービスは、たとえ、ユーザが、利用可能なセルラー電話サービスのいずれにも加入しておらず、及び／又はその使用を許可されていなくても、機器のユーザが利用できる電話サービスを含む。
【００４９】
いくつかの実施形態では、Ｉ／Ｏサブシステム２４０も周辺インタフェース２０６に結合される。Ｉ／Ｏサブシステム２４０は、タッチスクリーンコントローラ２４２及び／又は他の入力コントローラ（単数又は複数）２４４を含む。タッチスクリーンコントローラ２４２はタッチスクリーン２４６に結合される。タッチスクリーン２４６及びタッチスクリーンコントローラ２４２は、例えば、容量性技術、抵抗性技術、赤外線技術、表面音響波技術、近接センサアレイ、及び同様のものなどの、複数のタッチ感知技術のうちの任意のものを用いて、接触並びにその移動若しくは中止を検出することができる。他の入力コントローラ（単数又は複数）２４４を１つ以上のボタン、ロッカスイッチ、サムホイール、赤外線ポート、ＵＳＢポート、及び／又はスタイラスなどのポインタデバイスのような他の入力／制御デバイス２４８に結合することができる。
【００５０】
いくつかの実施形態では、メモリインタフェース２０２はメモリ２５０に結合される。メモリ２５０としては、高速ランダムアクセスメモリ並びに／又は不揮発性メモリ、例えば、１つ又は２つ以上の磁気ディスクストレージデバイス、１つ以上の光学ストレージデバイス、及び／若しくはＮＡＮＤ型、ＮＯＲ型のようなフラッシュメモリを挙げることができる。
【００５１】
いくつかの実施形態では、メモリ２５０は、オペレーティングシステム２５２、通信モジュール２５４、ユーザインタフェースモジュール２５６、センサ処理モジュール２５８、電話モジュール２６０、及びアプリケーション２６２を記憶する。オペレーティングシステム２５２は、基本システムサービスを処理する命令、及びハードウェア依存タスクを実行する命令を含む。通信モジュール２５４は、１つ以上の追加機器、１つ以上のコンピュータ及び／又は１つ以上のサーバとの通信を促進する。ユーザインタフェースモジュール２５６は、グラフィックユーザインタフェース処理、及び他の出力チャネル（例えば、スピーカ）を用いた出力処理を促進する。センサ処理モジュール２５８はセンサ関連の処理及び機能を促進する。電話モジュール２６０は電話関連のプロセス及び機能を促進する。アプリケーションモジュール２６２は、電子メッセージング、ウェブブラウジング、メディア処理、ナビゲーション、イメージング及び／又はその他のプロセス及び機能等の、ユーザアプリケーションの種々の機能性を促進する。いくつかの実施形態では、メモリ２５０はまた緊急電話モジュール２７０を記憶する。緊急電話モジュール２７０は、緊急電話に関連するデータ（例えば、緊急通信指令係電話番号、緊急ベースバンド接続プロトコルなど）を提供する。
【００５２】
本明細書において説明されているように、メモリ２５０はまた、デジタルアシスタントのクライアント側機能性を提供するために、（例えば、デジタルアシスタントクライアントモジュール２６４内の）クライアント側デジタルアシスタント命令、並びに種々のユーザデータ２６６（例えば、ユーザ固有の語彙データ、設定データ、及び／若しくはユーザの電子アドレス帳、ｔｏ−ｄｏリスト、買い物リストなど等のその他のデータ）も記憶する。いくつかの実施形態では、メモリ２５０はまた、機器１０４において（例えば、緊急電話機能性に適合された）限定的なデジタルアシスタント機能性を提供するための限定言語モジュール２６８を含む。
【００５３】
種々の実施形態では、デジタルアシスタントクライアントモジュール２６４は、ユーザ機器１０４の種々のユーザインタフェース（例えば、Ｉ／Ｏサブシステム２４４）を通じて音声入力（例えば、発語入力）、テキスト入力、タッチ入力、及び／又はジェスチャ入力を受け入れる能力を有する。デジタルアシスタントクライアントモジュール２６４はまた、オーディオ形態（例えば、発語出力）、視覚形態、及び／又は触覚形態の出力を提供する能力も有する。例えば、出力は、音声、音響、警報、テキストメッセージ、メニュー、グラフィック、ビデオ、アニメーション、振動、及び／又は上記のもののうちの２つ以上の組み合わせとして提供することができる。動作中、デジタルアシスタントクライアントモジュール２６４は、通信サブシステム２２４を用いてデジタルアシスタントサーバと通信する。
【００５４】
いくつかの実施形態では、デジタルアシスタントクライアントモジュール２６４は、ユーザ、現在のユーザ対話、及び／又は現在のユーザ入力に関連付けられるコンテクストを確立するべくユーザ機器１０４の周囲環境から追加情報を集めるために様々なセンサ、サブシステム及び周辺機器を利用する。いくつかの実施形態では、デジタルアシスタントクライアントモジュール２６４は、ユーザの意図の推測を助けるために、ユーザ入力とともにコンテクスト情報又はそのサブセットをデジタルアシスタントサーバに提供する。いくつかの実施形態では、デジタルアシスタントはまた、ユーザへの出力をどのように準備し、送出するのかを決定するためにコンテクスト情報を用いる。
【００５５】
いくつかの実施形態では、ユーザ入力に伴うコンテクスト情報は、センサ情報、例えば、周囲環境の照明、周囲雑音、周囲温度、画像又は映像などを含む。いくつかの実施形態では、コンテクスト情報は、また、機器の物理状態、例えば、機器の向き、機器の場所、機器温度、電力レベル、速度、加速度、運動パターン、セルラー信号強度などを含む。いくつかの実施形態では、ユーザ機器１０６のソフトウェア状態に関係する情報、例えば、ユーザ機器１０４の稼動中のプロセス、インストール済みのプログラム、過去と現在のネットワーク活動、バックグラウンドサービス、エラーログ、リソース使用量などが、ユーザ入力に関連したコンテクスト情報として、デジタルアシスタントサーバに提供される。
【００５６】
いくつかの実施形態では、ＤＡクライアントモジュール２６４は、デジタルアシスタントサーバからの要求に応じて、ユーザ機器１０４上に記憶されている情報（例えば、ユーザデータ２６６）を選択的に提供する。いくつかの実施形態では、デジタルアシスタントクライアントモジュール２６４はまた、デジタルアシスタントサーバ１０６による要求に応じて自然言語ダイアログ又はその他のユーザインタフェースを介してユーザから追加入力も引き出す。デジタルアシスタントクライアントモジュール２６４は、意図推測及び／又はユーザ要求内に表されているユーザの意図の達成においてデジタルアシスタントサーバ１０６を助けるために、追加入力をデジタルアシスタントサーバ１０６に渡す。
【００５７】
種々の実施形態では、メモリ２５０は追加の命令又はより少数の命令を含む。更に、ユーザ機器１０４の様々な機能は、１つ以上の信号処理及び／又は特定用途向け集積回路を含むハードウェアの形態及び／又はファームウェアの形態で実装されてもよい。
【００５８】
図３Ａは、いくつかの実施形態に係る例示的なデジタルアシスタントシステム３００のブロック図である。いくつかの実施形態では、デジタルアシスタントシステム３００は独立型コンピュータシステム上に実施される。いくつかの実施形態では、デジタルアシスタントシステム３００は複数のコンピュータにわたって分散される。いくつかの実施形態では、デジタルアシスタントのモジュール及び機能のいくつかはサーバ部分及びクライアント部分に分割される。この場合には、クライアント部分はユーザ機器（例えば、ユーザ機器１０４）上に常駐し、例えば、図１に示されているように、１つ以上のネットワークを通じてサーバ部分（例えば、サーバシステム１０８）と通信する。いくつかの実施形態では、デジタルアシスタントシステム３００は、図１に示されるサーバシステム１０８（及び／又はデジタルアシスタントサーバ１０６）の一実施形態である。デジタルアシスタントシステム３００はデジタルアシスタントシステムの単なる一例にすぎず、デジタルアシスタントシステム３００は、図示されているよりも多数若しくは少数の構成要素を有してもよく、２つ以上の構成要素を組み合わせてもよく、又は構成要素の異なる構成若しくは配置を有してもよいことに留意されたい。図３Ａに示される様々な構成要素は、１つ以上の信号処理及び／若しくは特定用途向け集積回路を含む、ハードウェア、１つ以上のプロセッサによって実行されるソフトウェア命令、ファームウェア、又はそれらの組み合わせの形態で実装されてもよい。
【００５９】
デジタルアシスタントシステム３００は、メモリ３０２、１つ以上のプロセッサ３０４、入力／出力（Ｉ／Ｏ）インタフェース３０６、及びネットワーク通信インタフェース３０８を含む。これらの構成要素は１本以上の通信バス又は信号線３１０を通じて互いに通信する。
【００６０】
いくつかの実施形態では、メモリ３０２は、高速ランダムアクセスメモリ並びに／又は不揮発性コンピュータ可読記憶媒体（例えば、１つ以上の磁気ディスク記憶装置、フラッシュメモリ装置、若しくはその他の不揮発性固体メモリ装置）等の、非一時的コンピュータ可読媒体を含む。
【００６１】
いくつかの実施形態では、Ｉ／Ｏインタフェース３０６は、ディスプレイ、キーボード、タッチスクリーン、及びマイクロホン等の、デジタルアシスタントシステム３００の入力／出力機器３１６をユーザインタフェースモジュール３２２に結合する。Ｉ／Ｏインタフェース３０６は、ユーザインタフェースモジュール３２２と協働して、ユーザ入力（例えば、音声入力、キーボード入力、タッチ入力等）を受け取り、それらを適宜に処理する。いくつかの実施形態では、例えば、デジタルアシスタントが独立型ユーザ機器上に実装される場合には、デジタルアシスタントシステム３００は、図２におけるユーザ機器１０４に関して説明されている構成要素並びにＩ／Ｏ及び通信インタフェースの任意のものを含む。いくつかの実施形態では、デジタルアシスタントシステム３００はデジタルアシスタント実施のサーバ部分を表し、ユーザ機器（例えば、図２に示されるユーザ機器１０４）上に常駐するクライアント側部分を通じてユーザと対話する。
【００６２】
いくつかの実施形態では、ネットワーク通信インタフェース３０８は有線通信ポート（単数又は複数）３１２並びに／又は無線伝送及び受信回路機構３１４を含む。有線通信ポート（単数又は複数）は、１つ以上の有線インタフェース、例えば、イーサネット（登録商標）、ユニバーサルシリアルバス（ＵＳＢ）、ＦＩＲＥＷＩＲＥなどを介して通信信号を受信及び送信する。無線回路３１４は、通信ネットワーク及び他の通信機器を起点／終点として、ＲＦ信号及び／又は光信号を受信及び送信する。無線通信は、ＧＳＭ（登録商標）、ＥＤＧＥ、ＣＤＭＡ、ＴＤＭＡ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ、ＶｏＩＰ、Ｗｉ−ＭＡＸ、あるいは任意のその他の好適な通信プロトコル等の、複数の通信規格、プロトコル及び技術の任意のものを用いることができる。ネットワーク通信インタフェース３０８は、デジタルアシスタントシステム３００と、インターネット、イントラネット、等のネットワーク、及び／又はセルラー電話ネットワーク、無線ローカルエリアネットワーク（ＬＡＮ）、等の無線ネットワーク、及び／又はメトロポリタンエリアネットワーク（metropolitan area network、ＭＡＮ）、及び他の機器、との間の通信を可能にする。
【００６３】
いくつかの実施形態では、メモリ３０２、又はメモリ３０２のコンピュータ可読記憶媒体は、オペレーティングシステム３１８、通信モジュール３２０、ユーザインタフェースモジュール３２２、１つ以上のアプリケーション３２４、及びデジタルアシスタントモジュール３２６の全て又はサブセットを含むプログラム、モジュール、命令、及びデータ構造を記憶する。１つ以上のプロセッサ３０４はこれらのプログラム、モジュール、命令を実行し、データ構造から／へと読み出し／書き込みを実行する。
【００６４】
オペレーティングシステム３１８（例えば、Ｄａｒｗｉｎ，ＲＴＸＣ，ＬＩＮＵＸ（登録商標），ＵＮＩＸ（登録商標）、ＯＳ  Ｘ、ウィンドウズ（登録商標）、又はＶｘＷｏｒｋｓ等の組み込みオペレーティングシステム）は、一般システムタスク（例えば、メモリ管理、記憶装置制御、電力管理等）を制御及び管理するための種々のソフトウェア構成要素及び／又はドライバを含み、種々のハードウェア、ファームウェア、及びソフトウェア構成要素の間の通信を促進する。
【００６５】
通信モジュール３２０は、ネットワーク通信インタフェース３０８を通じたデジタルアシスタントシステム３００とその他の機器との間の通信を促進する。例えば、通信モジュール３２０は、図２に示される機器１０４の通信インタフェース２５４と通信することができる。通信モジュール３２０はまた、無線回路機構３１４及び／又は有線通信ポート３１２によって受信されたデータを処理するための様々な構成要素も含む。
【００６６】
ユーザインタフェースモジュール３２２はＩ／Ｏインタフェース３０６を介して（例えば、キーボード、タッチスクリーン、ポインティングデバイス、コントローラ、及び／又はマイクロホンから）ユーザからコマンド及び／又は入力を受け取り、ディスプレイ上にユーザインタフェースオブジェクトを生成する。ユーザインタフェースモジュール３２２はまた、出力（例えば、音声、音響、アニメーション、テキスト、アイコン、振動、触覚フィードバック、及び光など）を準備し、Ｉ／Ｏインタフェース３０６を介して（例えば、ディスプレイ、オーディオチャネル、スピーカ、及びタッチパッドなど）を通じてユーザへ送出する。
【００６７】
アプリケーション３２４は、１つ以上のプロセッサ３０４によって実行されるように構成されるプログラム及び／又はモジュールを含む。例えば、デジタルアシスタントシステムがスタンドアロンのユーザ機器上に実装される場合には、アプリケーション３２４は、ゲーム、カレンダアプリケーション、ナビゲーションアプリケーション、又は電子メールアプリケーション等の、ユーザアプリケーションを含んでもよい。デジタルアシスタントシステム３００がサーバファーム上に実装される場合には、アプリケーション３２４は、例えば、資源管理アプリケーション、診断アプリケーション、又はスケジューリングアプリケーションを含んでもよい。
【００６８】
メモリ３０２はまた、デジタルアシスタントモジュール（又はデジタルアシスタントのサーバ部分）３２６も記憶する。いくつかの実施態様では、デジタルアシスタントモジュール３２６は、以下のサブモジュール、又はそれらのサブセット若しくはスーパーセットを含む。即ち、入力／出力処理モジュール３２８、発語テキスト化（speech-to-text、ＳＴＴ）処理モジュール３３０、自然言語処理モジュール３３２、ダイアログフロー処理モジュール３３４、タスクフロー処理モジュール３３６、サービス処理モジュール３３８、及び割り込み処理モジュール３４０。これらのモジュールの各々は、デジタルアシスタント３２６の以下のデータ及びモデルのうちの１つ以上、又はそれらのサブセット若しくはスーパーセットへのアクセスを有する。オントロジ３６０、語彙索引３４４、ユーザデータ３４８、タスクフローモデル３５４、サービスモデル３５６、及び優先度パラメータデータベース３５８。いくつかの実施形態では、メモリ３０２はまた限定言語処理モジュール３６６を記憶する。いくつかの実施形態では、限定言語処理モジュール３６６は、オントロジ３６０、語彙索引３４４、ユーザデータ３４８、タスクフローモデル３５４、サービスモデル３５６、及び優先度パラメータデータベース３５８のサブセットへのアクセスを有する。いくつかの実施形態では、限定言語処理モジュール３６６は、緊急電話機能性を呼び出すための発語入力を認識するように（例えば、緊急事態に関連する語彙を主として包含する限定語彙索引を含むように）適合される。
【００６９】
いくつかの実施形態では、限定言語処理モジュール３６６は、自然言語処理モジュール３３２（又はその一部）が（例えば、アクティブなデータ接続を欠くために）利用不能であり、及び／又は動作不能である時に、デジタルアシスタントシステム３００によって利用される。
【００７０】
いくつかの実施形態では、デジタルアシスタントモジュール３２６内に実装された処理モジュール、データ、及びモデルを用いて、デジタルアシスタントは以下のものの少なくともいくつかを実行する。ユーザから受け取った自然言語入力内に表されたユーザの意図を特定すること、ユーザの意図を十分に推測するために必要とされる情報を（例えば、単語、名前、目的などの曖昧さを除去することによって）能動的に引き出して取得すること、推測された意図を果たすタスクフローを決定すること、及び推測された意図を果たすためにタスクフローを実行すること。
【００７１】
いくつかの実施形態では、図３Ｂに示されるように、Ｉ／Ｏ処理モジュール３２８は、ユーザ入力（例えば、発語入力）を取得するため、及びユーザ入力への応答を（例えば、発語出力として）提供するために、図３ＡにおけるＩ／Ｏ装置３１６を通じてユーザと対話するか、又は、図３Ａのネットワーク通信インタフェース３０８を通じてユーザ機器（例えば、図１におけるユーザ機器１０４）と対話する。Ｉ／Ｏ処理モジュール３２８は、ユーザ入力とともに、又はその受け取りの直後に、ユーザ入力に関連付けられるコンテクスト情報をユーザ機器から任意追加的に取得する。コンテクスト情報は、ユーザ入力に関連するユーザ固有のデータ、語彙、及び／又は設定を含む。いくつかの実施形態では、コンテクスト情報はまた、ユーザ要求が受け取られる時点における機器（例えば、図１におけるユーザ機器１０４）のソフトウェア及びハードウェア状態、並びに／又はユーザ要求が受け取られた時点におけるユーザの周囲環境に関する情報も含む。いくつかの実施形態では、Ｉ／Ｏ処理モジュール３２８はまた、ユーザ要求について、ユーザに補足質問を送信し、ユーザから回答を受け取る。いくつかの実施形態では、ユーザ要求がＩ／Ｏ処理モジュール３２８によって受け取られ、ユーザ要求が発語入力を包含する場合には、Ｉ／Ｏ処理モジュール３２８は発語入力を発語テキスト化変換のために発語テキスト化（ＳＴＴ）処理モジュール３３０へ転送する。
【００７２】
いくつかの実施態様では、発語テキスト化処理モジュール３３０は、Ｉ／Ｏ処理モジュール３２８を通じて発語入力（例えば、音声記録にキャプチャされたユーザの発言）を受け取る。いくつかの実施形態では、発語テキスト化処理モジュール３３０は、発語入力を、音素の列、並びに最終的には、１つ以上の言語で書かれた単語若しくはトークンの列として認識するために、種々の音響モデル及び言語モデルを用いる。発語テキスト化処理モジュール３３０は、隠れマルコフモデル、動的タイムワーピング（Dynamic Time Warping、ＤＴＷ）ベースの発語認識、並びにその他の統計的及び／若しくは解析的技法等の、任意の好適な発語認識技法、音響モデル、及び言語モデルを用いて実装することができる。いくつかの実施形態では、発語テキスト化処理は、サードパーティサービスによって、又はユーザの機器上で少なくとも部分的に実行され得る。発語テキスト化処理モジュール３３０が発語テキスト化処理の結果、例えば、単語又はトークンの列、を取得すると、それはその結果を意図推測のために自然言語処理モジュール３３２へ渡す。
【００７３】
発語テキスト化処理に関する更なる詳細が、２０１１年９月２０日に出願された、「Ｃｏｎｓｏｌｉｄａｔｉｎｇ  Ｓｐｅｅｃｈ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ｒｅｓｕｌｔｓ」についての米国実用特許出願第１３／２３６，９４２号に説明されている。同出願の開示全体は本明細書において参照により組み込まれている。
【００７４】
デジタルアシスタントの自然言語処理モジュール３３２（「自然言語プロセッサ」）は、発語テキスト化処理モジュール３３０によって生成された単語又はトークンの列（「トークン列」）を獲得し、トークン列を、デジタルアシスタントによって認識される１つ以上の「実施可能な意図」に関連付けようと試みる。「実施可能な意図」とは、デジタルアシスタントによって実行されることができるタスクを表現し、タスクフローモデル３５４内に実装される、関連付けられたタスクフローを有する。関連付けられたタスクフローは、タスクを実行するためにデジタルアシスタントが取る一連のプログラムされたアクション及びステップである。デジタルアシスタントの能力の範囲は、タスクフローモデル３５４内に実装され、記憶されているタスクフローの数及び種類に依存し、又は、換言すれば、デジタルアシスタントが認識する「実施可能な意図」の数及び種類に依存する。ただし、デジタルアシスタントの有効性はまた、自然言語で表現されたユーザ要求から正確な「実施可能な意図（単数又は複数）」を推測するアシスタントの能力にも依存する。
【００７５】
いくつかの実施形態では、発語テキスト化処理モジュール３３０から取得される単語又はトークンの列に加えて、自然言語プロセッサ３３２はまた、ユーザ要求に関連付けられるコンテクスト情報も、例えば、Ｉ／Ｏ処理モジュール３２８から、受信する。自然言語プロセッサ３３２は、発語テキスト化処理モジュール３３０から受信されたトークン列内に包含されている情報を明らかにし、補完し、及び／又は更に明確にするために、コンテクスト情報を任意追加的に用いる。コンテクスト情報は、例えば、ユーザ設定、ユーザ機器のハードウェア及び／又はソフトウェアの状態、ユーザ要求の前、最中、又は直後に集められたセンサ情報、デジタルアシスタントとユーザとの間の以前の対話（例えば、ダイアログ）、及び同様のものを含む。本明細書において説明されているように、コンテクスト情報は動的であり、時間、ロケーション、ダイアログの内容、及びその他の要因とともに変化し得る。
【００７６】
いくつかの実施形態では、自然言語処理はオントロジ３６０に基づく。オントロジ３６０は、多くのノードを包含する階層構造であり、各ノードは、「実施可能な意図群」又はその他の「属性群」のうちの１つ以上に関連する「実施可能な意図」又は「属性」のいずれかを表す。上述したように、「実施可能な意図」は、デジタルアシスタントが実行する能力を有するタスクを表す。すなわち、それは「実施可能」であるか又は実施の対象とすることができる。「属性」は、実施可能な意図、又は別の属性の下位態様に関連付けられるパラメータを表す。オントロジ３６０内の実施可能な意図ノードと属性ノードとの間のリンクは、属性ノードによって表されるパラメータが、実施可能な意図ノードによって表されるタスクにどのように関連するのかを定義する。
【００７７】
いくつかの実施形態では、オントロジ３６０は実施可能な意図ノード及び特性ノードで構成される。オントロジ３６０内において、各々の実施可能な意図ノードは、１つ以上の属性ノードに直接、若しくは１つ以上の中間属性ノードを介して接続される。同様に、それぞれの属性ノードは、１つ以上の実施可能な意図ノードに直接又は１つ以上の中間属性ノードを介して接続される。例えば、図３Ｃに示されるように、オントロジ３６０は「レストラン予約」ノード（すなわち、実施可能な意図ノード）を含んでもよい。属性ノード「レストラン」、「日付／時間」（予約用）、及び「参加者人数」が、実施可能な意図ノード（即ち、「レストラン予約」ノード）にそれぞれ直接接続される。更に、属性ノードである「料理」、「価格帯」、「電話番号」及び「場所」は、属性ノード「レストラン」のサブノードであり、中間属性ノード「レストラン」を介して「レストラン予約」ノードにそれぞれ接続される。別の例として、図３Ｃに示されるように、オントロジ３６０はまた、「リマインダ設定」ノード（すなわち、別の実施可能な意図ノード）を含んでもよい。属性ノード「日付／時間」（リマインダ設定用）及び「テーマ」（リマインダ用）は、「リマインダ設定」ノードにそれぞれ接続される。属性ノード「日付／時間」はレストラン予約をするタスク及びリマインダを設定するタスクの両方に関連していることから、属性ノード「日付／時間」はオントロジ３６０において「レストラン予約」ノード及び「リマインダ設定」ノードの両方に接続される。
【００７８】
実施可能な意図ノードは、その接続された概念ノードとともに、「ドメイン」として説明することができる。本説明では、各ドメインは、それぞれの実施可能な意図に関連付けられ、特定の実施可能な意図に関連付けられたノードのグループ（及びノード間の関係）を指す。例えば、図３Ｃに示すオントロジ３６０には、オントロジ３６０内のレストラン予約ドメイン３６２の例及びリマインダドメイン３６４の例が含まれている。レストラン予約ドメインは、実施可能な意図ノードである「レストラン予約」、属性ノードである「レストラン」、「日付／時間」、及び「参加者人数」、並びに下位属性ノードである「料理」「価格帯」、「電話番号」及び「場所」を含む。リマインダドメイン３６４には、実施可能な意図ノードである「リマインダ設定」、及び属性ノードである「テーマ」及び「日付／時間」が含まれている。いくつかの実施形態では、オントロジ３６０は多くのドメインで構成される。各ドメインは、１つ以上の他のドメインと、１つ以上の属性ノードを共有することができる。例えば、「日付／時間」属性ノードは、レストラン予約ドメイン３６２及びリマインダドメイン３６４に加えて、多くの異なるドメイン（例えば、スケジューリングドメイン、旅行予約ドメイン、映画チケットドメインなど）に関連付けることができる。
【００７９】
図３Ｃはオントロジ３６０内の２つの例示的なドメインを示しているが、他のドメイン（又は実施可能な意図）は、例えば、「通話を開始する」、「行き方を見つける」、「会議のスケジュールを設定する」、「メッセージを送信する」、及び「質問に回答を提供する」、「リストを読み上げる」、「ナビゲーション命令を提供する」、「タスクのための命令を提供する」などを含む。「メッセージを送信する」のドメインは、「メッセージを送信する」の実施可能な意図ノードに関連付けられており、「受信者（単数又は複数）」、「メッセージタイプ」、及び「メッセージ本文」などの属性ノードを更に含むことができる。属性ノードの「受信者」は更に、例えば、「受信者名」と「メッセージアドレス」などの下位属性ノードによって定義してもよい。
【００８０】
いくつかの実施形態では、オントロジ３６０は、デジタルアシスタントが理解し、作用する能力を有する全てのドメイン（及びしたがって実施可能な意図）を含む。いくつかの実施形態では、オントロジ３６０は、ドメイン全体若しくはノードを追加又は除去すること、又はオントロジ３６０内のノード間の関係を変更することなどによって、変更されてもよい。
【００８１】
いくつかの実施形態では、複数の関連する実施可能な意図に関連付けられるノードは、オントロジ３６０内の「上位ドメイン」の下にクラスタ化されてもよい。例えば、「旅行」上位ドメインは、旅行に関連する属性ノード及び実施可能な意図ノードのクラスタを含んでもよい。旅行に関連する実施可能な意図ノードは、「航空券予約」、「ホテル予約」、「カーレンタル」、「道順を知る」、「見所を探す」などを含んでもよい。同じ上位ドメイン（例えば、「旅行」上位ドメイン）の下の実施可能な意図ノードは、多くの属性ノードを共有し得る。例えば、「航空券予約」、「ホテル予約」、「カーレンタル」、「道順を知る」、「見所を探す」についての実施可能な意図ノードは、属性ノードである「出発場所」、「目的地」、「出発日／時間」、「到着日／時間」、及び「参加者人数」のうちの１つ以上を共有する可能性がある。
【００８２】
いくつかの実施形態では、オントロジ３６０内の各ノードは、そのノードによって表される特性又は実施可能な意図に関連する単語及び／又はフレーズのセットに関連付けられる。各ノードに関連付けられる単語及び／又はフレーズのそれぞれのセットは、そのノードに関連付けられるいわゆる「語彙」である。各ノードに関連付けられる単語及び／又はフレーズのそれぞれのセットは、ノードによって表される属性又は実施可能な意図に関連して語彙索引３４４内に記憶することができる。例えば、図３Ｂに戻ると、「レストラン」の属性についてのノードに関連付けられる語彙は、「食べ物」、「飲み物」、「料理」、「空腹」、「食べる」、「ピザ」、「ファーストフード」、「食事」などの単語を含んでもよい。別の例として、「通話を開始する（initiate a phone call)」という実施可能な意図のノードに関連付けられる語彙は、「電話する（call)」、「電話（phone)」、「ダイアルする（dial)」、「電話をかける（ring)」、「この番号に電話する（call this number）」、「〜に電話をかける（make a call to）」などの単語及びフレーズを含んでもよい。語彙索引３４４は異なる言語の単語及びフレーズを任意に含む。
【００８３】
自然言語プロセッサ３３２は、発語テキスト化処理モジュール３３０からトークン列（例えば、テキスト文字列）を受信し、どのノードがトークン列内の単語によって暗示されているのかを判定する。いくつかの実施形態では、トークン列内の単語又はフレーズが（語彙索引３４４を介して）オントロジ３６０内の１つ以上のノードに関連付けられることが分かれば、その単語又はフレーズはそれらのノードを「トリガ」又は「アクティブ化」することになる。アクティブ化されたノードの量及び／又は相対的重要度に基づき、自然言語プロセッサ３３２は実施可能な意図のうちの１つを、ユーザがデジタルアシスタントに実行させようと意図したタスクとして選択することになる。いくつかの実施形態では、最も多く「トリガされた」ノードを有するドメインが選択される。いくつかの実施形態では、最も高い信頼値を有するドメイン（例えば、その種々のトリガされたノードの相対的重要度に基づく）が選択される。いくつかの実施形態では、ドメインは、トリガされたノードの数及び重要度の組み合わせに基づき選択される。いくつかの実施形態では、ノードを選択する際には、デジタルアシスタントはユーザからの同様の要求を以前に正確に解釈したかどうか等の追加の因子も考慮される。
【００８４】
いくつかの実施形態では、デジタルアシスタントはまた、特定のエンティティの名前も語彙索引３４４内に記憶する。そのため、これらの名前の１つがユーザ要求内に検出されると、自然言語プロセッサ３３２は、その名前はオントロジ内の属性又は下位属性の特定のインスタンスを指していると認識できることになる。いくつかの実施形態では、特定のエンティティの名前は、企業、レストラン、人、映画、及び同様のものの名前である。いくつかの実施形態では、デジタルアシスタントは、ユーザのアドレス帳、映画データベース、ミュージシャンデータベース、及び／又はレストランデータベース等の、他のデータ源から特定のエンティティ名を検索し、これらを特定する。いくつかの実施形態では、自然言語プロセッサ３３２が、トークン列内の単語は特定のエンティティの名前（ユーザのアドレス帳内の名前等）であると特定すると、その単語は、ユーザ要求のためにオントロジ内の実施可能な意図を選択する際に追加的な重要性を与えられる。
【００８５】
例えば、ユーザ要求から単語「Ｍｒ．Ｓａｎｔｏ」が認識され、語彙索引３４４内にユーザの連絡先リスト内の連絡先の１つとして姓「Ｓａｎｔｏ」が見つかった場合、このとき、ユーザ要求は、「メッセージを送信する」又は「通話を開始する」ドメインに対応する可能性が高い。別の例として、単語「ＡＢＣ  Ｃａｆｅ」がユーザ要求内に見つかり、語彙索引３４４内にユーザの市内の特定のレストランの名前として用語「ＡＢＣ  Ｃａｆｅ」が見つかった場合には、このとき、ユーザ要求は「レストラン予約」ドメインに対応する可能性が高い。
【００８６】
ユーザデータ３４８は、ユーザ固有語彙、ユーザ設定、ユーザアドレス、ユーザの既定言語及び第二言語、ユーザの連絡先リスト、並びに各ユーザに関するその他の短期的若しくは長期的情報等の、ユーザ固有の情報を含む。いくつかの実施形態では、自然言語プロセッサ３３２は、ユーザ入力内に包含されている情報を補完してユーザ意図を更に明確にするために、ユーザ固有の情報を用いる。例えば、ユーザ要求「私の誕生日パーティーに私の友人を招待してほしい」に対して、自然言語プロセッサ３３２は、誰が「友人」であり、いつ及びどこで「誕生日パーティー」が催されるのかを判断するために、ユーザの要求内のこうした情報を明示的に提供するようにユーザに要求する代わりに、ユーザデータ３４８にアクセスすることができる。
【００８７】
トークン文字列に基づいてオントロジを検索することのその他の詳細が、２００８年１２月２２日に出願された、「Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｓｅａｒｃｈｉｎｇ  Ｕｓｉｎｇ  Ａｎ  Ａｃｔｉｖｅ  Ｏｎｔｏｌｏｇｙ」についての米国実用特許出願第１２／３４１，７４３号に説明されている。同出願の開示全体は本明細書において参照により組み込まれている。
【００８８】
いくつかの実施形態では、自然言語プロセッサ３３２がユーザ要求に基づき実施可能な意図（又はドメイン）を特定すると、自然言語プロセッサ３３２は、特定された実施可能な意図を表すように、構造化されたクエリを生成する。いくつかの実施形態では、構造化されたクエリは、実施可能な意図のためのドメイン内の１つ以上のノードのためのパラメータを含み、パラメータの少なくとも一部には、ユーザ要求内で指定される特定の情報及び要求事項が入力される。例えば、ユーザは「私のために７時に寿司屋で夕食の予約を取って下さい」と言う場合がある。この場合には、自然言語プロセッサ３３２は、ユーザ入力に基づき、実施可能な意図を「レストラン予約」であると正確に特定することができてもよい。オントロジによれば、「レストラン予約」ドメインのための構造化されたクエリは、｛料理｝、｛時間｝、｛日付｝、｛参加者人数｝、及び同様のもの等のパラメータを含み得る。いくつかの実施形態では、ユーザの発言内に包含されている情報に基づき、自然言語プロセッサ３３２はレストラン予約ドメインのための部分的な構造化されたクエリを生成する。ここでは、部分的な構造化されたクエリは、パラメータ｛料理＝「寿司」｝及び｛時間＝「午後７時」｝を含む。しかし、本例では、ユーザの発言は、ドメインに関連付けられる構造化されたクエリを完成するために十分な情報を包含していない。したがって、｛参加者人数｝及び｛日付｝等のその他の必要パラメータは、現在利用可能な情報に基づいては、構造化されたクエリ内に指定されない。いくつかの実施形態では、自然言語プロセッサ３３２は、構造化されたクエリのいくつかのパラメータに、受信されたコンテクスト情報を入力する。例えば、いくつかの実施形態では、ユーザが「私の近くの」寿司レストランを要求した場合には、自然言語プロセッサ３３２は、構造化されたクエリ内の｛ロケーション｝パラメータにユーザ機器１０４からのＧＰＳ座標を入力してもよい。
【００８９】
いくつかの実施形態では、自然言語プロセッサ３３２は、（あらゆる入力済みのパラメータを含む）構造化されたクエリをタスクフロー処理モジュール３３６（「タスクフロープロセッサ」）に渡す。タスクフロープロセッサ３３６は、自然言語プロセッサ３３２から、構造化されたクエリを受信し、必要に応じて、構造化されたクエリを完成させ、ユーザの最終的な要求を「完了する」ために必要とされるアクションを実行するように構成される。いくつかの実施形態では、これらのタスクを完成させるために必要な種々の手順はタスクフローモデル３５４内で提供される。いくつかの実施形態では、タスクフローモデルは、ユーザから追加情報を取得する手順、及び実施可能な意図に関連付けられるアクションを実行するタスクフローを含む。
【００９０】
上述したように、構造化されたクエリを完成させるために、タスクフロープロセッサ３３６は、追加情報を入手し、及び／又は潜在的に曖昧な発言の曖昧さを除去するために、ユーザとの追加のダイアログを開始することが必要になる場合がある。このような対話が必要となる場合には、タスクフロープロセッサ３３６は、ユーザとのダイアログに携わるためにダイアログ処理モジュール３３４（「ダイアログプロセッサ３３４」）を呼び出す。いくつかの実施形態では、ダイアログプロセッサ３３４は、どのように（及び／又はいつ）ユーザに追加情報を求めるべきかを決定し、ユーザ応答を受け取り、これらを処理する。Ｉ／Ｏ処理モジュール３２８を通じてユーザに質問が提供され、ユーザから回答が受け取られる。いくつかの実施形態では、ダイアログプロセッサ３３４はオーディオ及び／又は視覚出力を介してユーザにダイアログ出力を提示し、口頭の応答又は物理的（例えば、クリック）応答を介してユーザから入力を受け取る。上述の例を続けると、タスクフロープロセッサ３３６が、ドメイン「レストラン予約」に関連付けられる構造化されたクエリについての「参加者人数」及び「日付」情報を決定するためにダイアログフロープロセッサ３３４を呼び出すと、ダイアログフロープロセッサ３３５は、「何人分ですか？」及び「どの日にしますか？」等の質問を、ユーザに渡すために生成する。ユーザから回答を受け取ると、ダイアログフロープロセッサ３３４は、次に、構造化されたクエリに欠けている情報を追加するか、又は構造化されたクエリから欠けている情報を完成させるために、その情報をタスクフロープロセッサ３３６に渡すことができる。
【００９１】
場合によっては、タスクフロープロセッサ３３６は、１つ以上の曖昧な属性を有する構造化されたクエリを受信することがある。例えば、「メッセージを送信する」ドメインのための構造化されたクエリは、意図された受信者は「Ｂｏｂ」であることを指示する場合があり、ユーザは、「Ｂｏｂ」という名前の連絡先を複数有する場合がある。タスクフロープロセッサ３３６は、ダイアログプロセッサ３３４が、構造化されたクエリのこの属性の曖昧さを除去するように要求することになる。その結果として、ダイアログプロセッサ３３４は「どのＢｏｂですか？」とユーザに尋ね、ユーザが選び得る「Ｂｏｂ」という名前の連絡先のリストを表示してもよい（又は読み上げてもよい）。
【００９２】
タスクフロープロセッサ３３６が、実施可能な意図のための構造化されたクエリを完成させると、タスクフロープロセッサ３３６は、実施可能な意図に関連付けられる最終的なタスクの実行に進む。それに応じて、タスクフロープロセッサ３３６は、構造化されたクエリ内に包含されている具体的なパラメータに応じて、タスクフローモデル内のステップ及び命令を実行する。例えば、「レストラン予約」の実施可能な意図のためのタスクフローモデルは、レストランと連絡を取り、特定の時間に特定の参加者人数のための予約を実際に希望するためのステップ及び命令を含み得る。例えば、｛レストラン予約，レストラン＝ＡＢＣ  Ｃａｆｅ，日付＝３／１２／２０１２，時間＝午後７時，参加者人数＝５｝などの構造化されたクエリを使用して、タスクフロープロセッサ３３６は、（１）ＡＢＣ  Ｃａｆｅのサーバ又はＯＰＥＮＴＡＢＬＥ（登録商標）などのレストラン予約システムへログインするステップと、（２）ウェブサイト上のフォームに日付、時間、及び参加者人数情報を入力するステップと、（３）フォームを提出するステップと、（４）ユーザのカレンダー内に予約のためのカレンダエントリを作成するステップと、を実行してもよい。
【００９３】
いくつかの実施形態では、タスクフロープロセッサ３３６は、ユーザ入力内で要求されたタスクを完了するため、又はユーザ入力内で要求された情報の回答を提供するために、サービス処理モジュール３３８（「サービスプロセッサ」）の補助を用いる。例えば、サービスプロセッサ３３８は、電話をかけるため、カレンダー項目を設定するため、地図検索を呼び出すため、ユーザ機器上にインストールされているその他のユーザアプリケーションを呼び出すか若しくはそれと対話するため、並びにサードパーティサービス（例えばレストラン予約ポータル、ソーシャルネットワーキングウェブサイト、バンキングポータル等）を呼び出すか若しくはそれと対話するために、タスクフロープロセッサ３３６の代わりに動作することができる。いくつかの実施形態では、各サービスによって必要とされるプロトコル及びアプリケーションプログラミングインタフェース（application programming interface、ＡＰＩ）は、サービスモデル群３５６の中のそれぞれのサービスモデルによって指定され得る。サービスプロセッサ３３８は、サービスのための適当なサービスモデルにアクセスし、サービスモデルに係るサービスによって必要とされるプロトコル及びＡＰＩに従ってサービスの要求を生成する。
【００９４】
例えば、レストランがオンライン予約サービスを可能にしている場合には、レストランは、予約を行うために必要なパラメータ、及び必要なパラメータの値をオンライン予約サービスへ伝達するためのＡＰＩを指定するサービスモデルを提出することができる。タスクフロープロセッサ３３６によって要求されると、サービスプロセッサ３３８は、サービスモデルに記憶されているウェブアドレスを用いて、オンライン予約サービスとのネットワーク接続を確立し、必要な予約のパラメータ（例えば、時間、日付、参加者人数）を、オンライン予約サービスのＡＰＩに従う形式でオンライン予約インタフェースへ送信することができる。
【００９５】
いくつかの実施形態では、ユーザの意図を推測して明確にし、ユーザ意図を更に明らかにして絞り込むための情報を取得し、ユーザの意図を達成するべく応答（すなわち、ユーザへの出力、又はタスクの完了）を最終的に生成するために、自然言語プロセッサ３３２、ダイアログプロセッサ３３４、及びタスクフロープロセッサ３３６は集合的かつ反復的に用いられる。
【００９６】
いくつかの実施形態では、ユーザの要求を達成するために必要なタスクが全て実行された後に、デジタルアシスタント３２６は確認応答を策定し、Ｉ／Ｏ処理モジュール３２８を通じてユーザへ応答を送り返す。ユーザ要求が情報の回答を求めている場合には、確認応答は、要求されている情報をユーザに提示する。いくつかの実施形態では、デジタルアシスタントはまた、デジタルアシスタント３２６によって作成された応答にユーザは満足であるかどうかを指示するようにユーザに要求する。
【００９７】
デジタルアシスタントに関する更なる詳細が、２０１０年１月１８日に提出された、「Ｉｎｔｅｌｌｉｇｅｎｔ  Ａｕｔｏｍａｔｅｄ  Ａｓｓｉｓｔａｎｔ」と題する、米国実用特許出願第１２／９８７，９８２号、２０１１年６月３日に提出された、「Ｇｅｎｅｒａｔｉｎｇ  ａｎｄ  Ｐｒｏｃｅｓｓｉｎｇ  Ｄａｔａ  Ｉｔｅｍｓ  Ｔｈａｔ  Ｒｅｐｒｅｓｅｎｔ  Ｔａｓｋｓ  ｔｏ  Ｐｅｒｆｏｒｍ］と題する、米国実用特許出願第６１／４９３，２０１号に見いだすことができる。これらの出願の開示の全体は本明細書において参照により組み込まれている。
【００９８】
次に、いくつかの実施形態に係る、タッチスクリーン２４６を有するポータブル多機能機器４００（例えば、ユーザ機器１０４）を示す図４に注目する。いくつかの実施形態では、タッチスクリーンはユーザインタフェース（user interface、ＵＩ）内に１つ以上のグラフィック表示する。これらの実施形態、並びに後述する他の実施形態では、ユーザは、例えば、１本以上の指４０２（図には、正確な縮尺率では描かれていない）又は１本以上のスタイラス４０３（図には、正確な縮尺率では描かれていない）を用いて接触を行うか又はグラフィックをタッチすることにより、グラフィックのうちの１つ以上を選択する。いくつかの実施形態では、ユーザが１つ以上のグラフィックとの接触を断った際に、１つ以上のグラフィックの選択が生じる。いくつかの実施形態では、接触は、１回以上のタップ、１回以上のスワイプ（左から右へ、右から左へ、上方向へ、及び／又は下方向へ）、及び／又は機器４００と接触した指のローリング（右から左へ、左から右へ、上方向へ、及び／又は下方向へ）などの、ジェスチャを含む。いくつかの実施形態では、グラフィックとの意図的でない接触は、そのグラフィックを選択しないことになる。例えば、選択に対応するジェスチャがタップである場合には、アプリケーションアイコンの上をスワイプするスワイプジェスチャは、対応するアプリケーションを選択しないことになる。
【００９９】
いくつかの実施形態では、機器４００はまた、メニュー（例えば、「ホーム」）ボタン４０４などの、１つ以上の物理ボタンを含む。メニューボタン４０４は、機器４００上で実行することができるアプリケーションのセット内の任意のアプリケーション２６２へナビゲートするために使用される。あるいは、いくつかの実施形態では、メニューボタンは、タッチスクリーン２４６上に表示されたＧＵＩ内のソフトキーとして実装される。
【０１００】
いくつかの実施形態では、機器４００は、タッチスクリーン２４６、メニューボタン４０４、機器への電源をオン／オフし、機器をロックするためのプッシュボタン４０６、音量調整ボタン（単数又は複数）４０８、加入者識別モジュール（Subscriber Identity Module、ＳＩＭ）カードスロット４１０、ヘッドセットジャック４１２、及びドッキング／充電用外部ポート４１１を含む。プッシュボタン４０６は、ボタンを押して押された状態を既定の時間間隔保ち続けることで、デバイス上の電源をオン／オフし、ボタンを押して既定の時間間隔が経過する前にボタンを解放することによりデバイスをロックし、及び／又はデバイスをロック解除若しくはロック解除処理を開始するために、用いることができる。代替の実施形態において、デバイス４００はまた、マイクロホン２３０を通して、一部の機能をアクティブにし、又は非アクティブにするための口頭入力を受け入れてもよい。
【０１０１】
図５Ａ及び図５Ｂは、いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させることに関連付けられる内容を表示するための例示的なユーザインタフェースを示す。図５Ａ及び図５Ｂでは、ユーザインタフェース５００はタッチスクリーン２４６上に表示される。ユーザインタフェース５００は、電話（例えば、セルラ）信号強度インジケータ５１０、ベースバンド電話サービスインジケータ５１２、データサービス接続インジケータ５１４（例えば、３Ｇ若しくは４Ｇデータ接続）、Ｗｉ−Ｆｉ接続及び信号強度インジケータ５１６、並びに全地球測位システム（「ＧＰＳ」）インジケータ５１８を含む。いくつかの実施形態によれば、図５Ａはまた、通知５２０及び取り消しボタン５２２を含むユーザインタフェース５００を示す。いくつかの他の実施形態によれば、図５Ｂは、緊急問い合わせ５２４、確認（例えば、はい）ボタン５２６、及びいいえボタン５２８を含むユーザインタフェース５００を示す。
【０１０２】
図６は、いくつかの実施形態に係る、デジタルアシスタントシステムの機能を示すフローチャートである。これらの実施形態によれば、機器（例えば、ポータブル多機能機器４００）はユーザから発語入力を受け取る（６０２）。
【０１０３】
いくつかの実施形態又は状況では、サーバ（例えば、サーバシステム１０８、図１）が、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定する（６０３）。これらの実施形態では、機器はサーバから判定を取得する（６０４）。しかし、いくつかの実施形態又は状況では、機器が、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうか（又は、代替的に、緊急電話をかけようとするユーザ意図を表しているかどうか）を判定する（６０４）。緊急電話をかけよとの要求又は意図を表す発語入力の例には、「９１１に電話してほしい」及び「警察に電話してほしい」が含まれるのはもちろんのこと、たとえ、発語入力が、このような電話をかけよとの明示的な要求又はコマンドを含んでいなくても、緊急電話をかけようとする、ユーザの意図の様々な表現（「私たちはすぐに警察が必要だ」）も含まれる。
【０１０４】
いくつかの実施形態又は状況では、サーバが、発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定する（６０５）。これらの実施形態又は状況では、機器はサーバから判定を取得する（６０６）。いくつかの実施形態又は状況では、機器が、発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定する（６０６）。
【０１０５】
いくつかの実施形態では、サーバが、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定する（６０７）。これらの実施形態では、機器はサーバから判定を取得する（６０８）。いくつかの実施形態では、機器が、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定する（６０８）。
【０１０６】
いくつかの実施形態では、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したことに応じて（６１０）、機器は、緊急電話機能性（例えば、図２における緊急電話モジュール２７０）を用いて現地の緊急通信指令係電話番号に発信する。
【０１０７】
図７Ａ、図７Ｂ、及び図８は、いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法を示すフロー図である。この方法は、任意選択的に、コンピュータメモリ又は非一時的コンピュータ可読記憶媒体（例えば、ユーザ機器１０４のメモリ２５０、デジタルアシスタントシステム３００に関連付けられたメモリ３０２）内に記憶され、限定するものではないが、サーバシステム１０８、及び／又はユーザ機器１０４を含む、デジタルアシスタントシステムの１つ以上のコンピュータシステムの１つ以上のプロセッサによって実行される命令によって統御される。コンピュータ可読記憶媒体は、任意選択的に、磁気又は光ディスク記憶装置、フラッシュメモリなどの固体記憶装置、又は他の不揮発性メモリ装置若しくは装置群を含む。コンピュータ可読記憶媒体上に記憶されたコンピュータ可読命令は、任意選択的に、ソースコード、アセンブリ言語コード、オブジェクトコード、又は１つ以上のプロセッサによって解釈される他の命令形式、のうちの１つ以上を含む。様々な実装形態では、各方法内のいくつかの動作は組み合わされ、及び／又はいくつかの動作の順序は、図に示されている順序から変更される。また、いくつかの実装形態では、別々の図に示され、及び／又は別々の方法に関連して説明された動作は、他の方法を形成するよう組み合わされ、同じ図に示され、及び／又は同じ方法に関連して説明された動作は、異なる方法に分離される。更に、いくつかの実装形態では、本方法内の１つ以上の動作は、例えば、自然言語処理モジュール３３２、ダイアログフロー処理モジュール３３４、限定言語処理モジュール３６６、緊急電話モジュール２７０、限定言語モジュール２６８、及び／又はそれらのあらゆるサブモジュールを含む、デジタルアシスタントシステム３００及び／又は電子機器（例えば、ユーザ機器１０４）のモジュールによって実行される。
【０１０８】
図７Ａ〜図７Ｂは、いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法７００を示す。いくつかの実施形態では、方法７００は、１つ以上のプロセッサと、１つ以上のプロセッサによって実行される命令を記憶するメモリとを含む機器（例えば、図１における機器１０４）において実行される。
【０１０９】
いくつかの実施形態では、機器はデジタルアシスタント内に限定自然言語処理モジュール（例えば、限定言語モジュール２６８）を提供する（７０２）。限定自然言語処理モジュールは、通常動作中にデジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、具体的には、限定自然言語処理モジュールは、緊急電話機能性を呼び出すための発語入力を認識するように適合される。
【０１１０】
機器はユーザから（例えば、発語、テキスト、及び／又はジェスチャなどを介して）入力を受け取る（７０４）。
【０１１１】
いくつかの実施形態又は状況では、機器はアクティブなデータ接続（例えば、２Ｇ、３Ｇ、４Ｇ、４Ｇ  ＬＴＥ、及び／又はＷｉ−Ｆｉ接続）を有する（７０６）。例えば、機器４００は、図５Ａにおけるデータサービス接続インジケータ５１４及び／又はＷｉ−Ｆｉ接続及び信号強度インジケータ５１６によって示されるとおりのアクティブなデータ接続を有する。いくつかの実施形態又は状況では、機器は加入電話サービスへのアクティブな接続を有しないが、ベースバンド電話サービスへのアクセスを実際に有する（７０８）。例えば、これらの実施形態によれば、図５Ａでは、機器４００上のベースバンド電話サービスインジケータ５１２は、機器４００はベースバンド電話サービスへのアクセスを有することを指示している。
【０１１２】
いくつかの実施形態又は状況では、機器は、動作ＳＩＭカードを有しない（７１０）（例えば、図４におけるＳＩＭカードスロット４１０内に動作ＳＩＭカードを有しない）。例えば、いくつかの実装形態では、機器が、動作ＳＩＭカードを有していない場合には（例えば、その判定に従って）、機器は、ベースバンド電話サービスを用いて現地の緊急通信指令係電話番号に発信する。いくつかの実施形態又は状況では、機器は、その機器の現在のロケーションにおいて利用可能ないずれの電話サービスに適合するＳＩＭカードを有しない（７１２）。例えば、いくつかの実装形態では、機器が、その機器の現在のロケーションにおいて利用可能ないずれの電話サービスに適合するＳＩＭカードを有しない場合には（例えば、その判定に従って）、機器は、ベースバンド電話サービスを用いて現地の緊急通信指令係電話番号に発信する。
【０１１３】
いくつかの実施形態では、機器は、その機器は、その機器の現在の地理的ロケーションにおいて利用可能なセルラーサービスを用いて非緊急電話をかけることを現在許可されているかどうかを判定する（７１４）。機器は、その機器の現在の地理的ロケーションにおいて利用可能な電話サービス（例えば、セルラーサービス）を用いて非緊急電話をかけることを現在許可されていないと判定し、ユーザ入力は発語入力を含むと判定したことに応じて（７１６）、機器は、発語入力を処理するために限定自然言語処理モジュールを呼び出す（７１８）。
【０１１４】
機器は、ユーザ入力（例えば、発語入力）は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得する（７２０）。例えば、いくつかの実施形態では、ユーザ入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかの判定することは、リモートサーバから、アクティブなデータ接続を介して、ユーザ入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかの判定を取得することを含む。いくつかの実施形態又は状況では、機器は、ユーザ入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかをローカルに判定する。
【０１１５】
いくつかの実施形態では、現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する前に、機器はその機器の地理的ロケーションを究明する（７２２）。例えば、いくつかの実施形態又は状況では、機器はＧＰＳセンサ（例えば、センサ２１６）を介して機器の地理的ロケーションを究明する。いくつかの実施形態又は状況では、機器は、最も近い電話サービス塔のロケーションに基づいて機器の地理的ロケーションを究明する。いくつかの実施形態又は状況では、機器は、Ｗｉ−Ｆｉサービスプロバイダのロケーションに基づいて機器の地理的ロケーションを究明する。
【０１１６】
機器は、その機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する（７２４）。例えば、いくつかの実施形態では、機器は、リモートサーバ上に記憶された緊急番号ルックアップテーブルを利用する。いくつかの実施形態では、緊急通信指令係電話番号は、機器上に記憶された複数の緊急通信指令係電話番号のうちの１つである（７２６）。
【０１１７】
ユーザ入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて（７２８）、機器は、緊急電話機能性を用いて（例えば、ベースバンド電話サービスを介して）現地の緊急通信指令係電話番号に発信する（７３４）。
【０１１８】
いくつかの実施形態では、現地の緊急通信指令係電話番号に発信する前に、機器は、その機器は現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知をユーザに提供する（７３０）。通知を提供している間に、機器は、ユーザが、緊急電話をかけることを求める要求を取り消すためのアフォーダンスを提供する（７３２）。例えば、いくつかの実施形態では、機器は、５秒の秒読み通知（例えば、図５Ａにおける通知５２０）、並びに決定待ちの緊急電話を取り消すためのアフォーダンス（例えば、図５Ａにおける取り消しボタン５２２及び／若しくはホームボタン４０４）を表示する。いくつかの実装形態では、機器は、言葉による通知を提供し、及び／又はユーザからの言葉による取り消しを利用することになる。
【０１１９】
図８は、いくつかの実施形態に係る、緊急電話機能性を提供するようにデジタルアシスタントを動作させるための方法８００及び８１０を示す。いくつかの実施形態では、方法８００及び８１０は、１つ以上のプロセッサと、１つ以上のプロセッサによって実行される命令を記憶するメモリとを含む機器（例えば、図１における機器１０４）において実行される。
【０１２０】
いくつかの実施形態では、ユーザ入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得すること（７２０）は、ユーザ入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することを含む（８０２）。
【０１２１】
いくつかの実施形態では、ユーザ入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、（８０４）機器は、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信する（７３４）。例えば、ユーザ入力は、「９１１に電話してほしい」と言う発語入力であり、更なるユーザ入力を用いることなく、機器は、９１１は適切な緊急通信指令係番号であると判定し、機器は９１１に発信する。
【０１２２】
いくつかの実施形態では、発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、（８０６）緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信する（７３４）前に、機器は、緊急電話をかけることを求めるユーザの要求を確認するための通知及びアフォーダンスをユーザに提供する（８０８）。例えば、ユーザ入力は「この近くの消防署を見つけてほしい」であり、機器は、緊急問い合わせ（例えば、図５Ｂにおける確認問い合わせ５２４）、及び確認のためのアフォーダンス（例えば、図５Ｂにおける確認ボタン５２６）を提供する。いくつかの実装形態では、機器は、言葉による通知を提供し、及び／又はユーザからの言葉による確認を利用することになる。
【０１２３】
いくつかの実施形態では、ユーザ入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得すること（７２０）は、ユーザ入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含む（８１２）。例えば、ユーザ入力は「９１１に電話してほしい」であり、機器は、「９１１」は第１の緊急番号であると判定する。
【０１２４】
いくつかの実施形態では、機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得すること（７２４）は、第２の緊急番号を判定するか、又はその判定を取得することを含む（８１４）。第１の緊急番号が第２の緊急番号と別個である場合には、機器は、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信し（８１６）、第２の緊急番号に発信することを含む。例えば、機器は、それは現在、シンガポール内に位置し、適切な緊急通信指令番号は９９５であると判定する。この例では、次に、機器は９９５に発信する。
【０１２５】
上述された本方法に従うデジタルアシスタントを用いることは、緊急電話機能性を提供するための従来のユーザインタフェースよりも効率的で便利である。
【０１２６】
図９は、いくつかの実施形態に係る、上述されたとおりの本発明の原理に従って構成される機器９００の機能ブロック図を示す。機器の機能ブロックは、本発明の原理を実行するためのハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実装することができる。図９に説明されている機能ブロックは、上述されたとおりの本発明の原理を実装するために、組み合わせられるか、又はサブブロックに分割されてもよいことが当業者によって理解される。したがって、本明細書における説明は、あらゆる可能な組み合わせ若しくは分割、又は本明細書に述べられる更なる機能ブロックの定義を支持しうるものである。
【０１２７】
図９に示されるように、電子機器９００は、音声入力を受け取るように構成される音声受け取りユニット９０２を含む。機器９００はまた、音声受け取りユニット９０２に結合される処理ユニット９０６を含む。いくつかの実施形態では、音声受け取りユニット９０２及び処理ユニット９０６に取得ユニット９０４が結合される。 いくつかの実施形態では、処理ユニット９０６は、発語判定ユニット９０８、番号判定ユニット９１０、発信ユニット９１２、究明ユニット９１４、曖昧さ判定ユニット９１６、アフォーダンス提供ユニット９１８、通知提供ユニット９２０、及び言語提供ユニット９２２を含む。いくつかの実施形態では、番号判定ユニット９１０は緊急電話モジュール２７０に対応する。いくつかの実施形態では、曖昧さ判定ユニット９１６は自然言語処理モジュール３３２に対応する。いくつかの実施形態では、曖昧さ判定ユニット９１６は限定言語処理モジュール３６６に対応する。いくつかの実施形態では、取得ユニット９０４はＩ／Ｏサブシステム２４０に対応する。いくつかの実施形態では、アフォーダンス提供ユニット９１８は通知提供ユニット９２０であるか、又はそれを含む。いくつかの実施形態では、発語判定ユニット９０８は曖昧さ判定ユニット９１６であるか、又はそれを含む。
【０１２８】
処理ユニット９０６は、ユーザから発語入力を（例えば、音声受け取りユニット９０２を用いて）受け取り、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを（例えば、発語判定ユニット９０８を用いて）判定するか、又はその判定を（例えば、取得ユニット９０２を用いて）取得し、機器９００の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を（例えば、番号判定ユニット９１０を用いて）判定するか、又はその判定を（例えば、取得ユニット９０２を用いて）取得する、ように構成される。処理ユニット９０６は、発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、現地の緊急通信指令係電話番号に（例えば、発信ユニット９１２を用いて）発信するように更に構成される。
【０１２９】
いくつかの実施形態では、現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する前に、機器９００は機器９００の地理的ロケーションを（例えば、究明ユニット９１４を用いて）究明する。
【０１３０】
いくつかの実施形態では、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することは、発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを（例えば、曖昧さ判定ユニット９１６を用いて）判定するか、又はその判定を（例えば、取得ユニット９０２を用いて）取得することを含む。いくつかの実施形態では、発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、機器９００は、緊急電話機能性を用いて現地の緊急通信指令係電話番号に（例えば、発信ユニット９１２を用いて）発信する。発語入力は緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信する前に、機器９００は、緊急電話をかけることを求めるユーザの要求を確認するための通知（例えば、通知提供ユニット９２０を用いて）及びアフォーダンスを（例えば、アフォーダンス提供ユニット９１８を用いて）ユーザに提供する。
【０１３１】
いくつかの実施形態では、発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することは、発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると（例えば、番号判定ユニット９１０を用いて）判定するか、又はその判定を（例えば、取得ユニット９０２を用いて）取得することを含む。いくつかの実施形態では、機器９００の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することは、第２の緊急番号を（例えば、番号判定ユニット９１０を用いて）判定するか、又はその判定を（例えば、取得ユニット９０２を用いて）取得することを含む。いくつかの実施形態では、第１の緊急番号が第２の緊急番号と別個である場合には、緊急電話機能性を用いて現地の緊急通信指令係電話番号に発信することは、第２の緊急番号に（例えば、発信ユニット９１２を用いて）発信することを含む。
【０１３２】
いくつかの実施形態では、現地の緊急通信指令係電話番号に発信する前に、機器９００は、機器９００は現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知を（例えば、通知提供ユニット９２０を用いて）ユーザに提供し、通知を提供している間に、機器９００は、ユーザが、緊急電話をかけることを求める要求を取り消すためのアフォーダンスを（例えば、アフォーダンス提供ユニット９１８を用いて）提供する。
【０１３３】
上述の説明は、説明の目的上、特定の実施形態を参照して説明されている。しかし、上述の例示的説明は、網羅的であること、又は開示されている実施形態を、開示されている寸分違わない形態に限定することを意図されてはいない。上述の教示を考慮すれば、多くの変更及び変形が可能である。実施形態は、開示された思想の理念と実際の応用を最も良く説明するために、選択して説明し、それによって、当業者が、考えられる特定の用途に適した様々な変更を加えて、それを最も良く利用することができるようにしたものである。
【図１】
2020025272.tif 000003
【図２】
2020025272.tif 000004
【図３Ａ】
2020025272.tif 000005
【図３Ｂ】
2020025272.tif 000006
【図３Ｃ】
2020025272.tif 000007
【図４】
2020025272.tif 000008
【図５Ａ】
2020025272.tif 000009
【図５Ｂ】
2020025272.tif 000010
【図６】
2020025272.tif 000011
【図７Ａ】
2020025272.tif 000012
【図７Ｂ】
2020025272.tif 000013
【図８】
2020025272.tif 000014
【図９】
2020025272.tif 000015
【手続補正書】
【提出日】令和1年10月7日(2019.10.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
緊急電話機能性を提供するようにデジタルアシスタントを動作させる方法であって、
メモリ及び１つ以上のプロセッサを有する機器において、
緊急電話機能性以外の前記デジタルアシスタントの１つ以上の音声ベース機能性が前記機器の発話入力を介してアクセス可能である間に、
ユーザから発語入力を受け取ることと、
前記発語入力を処理するための限定自然言語処理モジュールを呼び出すことであって、
前記限定自然言語処理モジュールは、通常動作中に前記デジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、
前記限定自然言語処理モジュールは、前記緊急電話機能性を呼び出すための発語入力を認識するように適合されている、ことと、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することと、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することと、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することと、
を含むことを特徴とする方法。
【請求項２】
前記機器がアクティブなデータ接続を有することを特徴とする、請求項１に記載の方法。
【請求項３】
前記機器が加入電話サービスへのアクティブな接続を有しないが、ベースバンド電話サービスへのアクセスを実際に有することを特徴とする、請求項１に記載の方法。
【請求項４】
前記機器が、動作するＳＩＭカードを有しないことを特徴とする、請求項１に記載の方法。
【請求項５】
前記機器が、前記機器の現在のロケーションにおいて利用可能ないずれかの電話サービスに適合するＳＩＭカードを有しないことを特徴とする、請求項１に記載の方法。
【請求項６】
前記現地の緊急通信指令係電話番号を判定するか、又はその判定を取得する前に、前記機器の前記地理的ロケーションを究明することを更に含むことを特徴とする、請求項１に記載の方法。
【請求項７】
前記緊急通信指令係電話番号が、前記機器上に記憶された複数の緊急通信指令係電話番号のうちの１つであることを特徴とする、請求項１に記載の方法。
【請求項８】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することと、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することと、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信する前に、緊急電話をかけることを求める前記ユーザの要求を確認するための通知及びアフォーダンスを前記ユーザに提供することと、
を含むことを特徴とする、請求項１に記載の方法。
【請求項９】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含み、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することが、第２の緊急番号を判定するか、又はその判定を取得することを含み、
前記第１の緊急番号が前記第２の緊急番号と別個である場合には、前記緊急電話機能性を用いて前記現地の緊急通信指令係電話番号に発信することが、前記第２の緊急番号に発信することを含むことを特徴とする、請求項１に記載の方法。
【請求項１０】
前記現地の緊急通信指令係電話番号に発信する前に、前記機器は前記現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知を前記ユーザに提供することと、
前記通知を提供している間に、前記ユーザが、緊急電話をかけることを求める前記ユーザ要求を取り消すためのアフォーダンスを提供することと、
を更に含むことを特徴とする、請求項１に記載の方法。
【請求項１１】
前記機器は、前記機器の現在の地理的ロケーションにおいて利用可能なセルラサービスを用いて非緊急電話をかけることを現在許可されているかどうかを判定することと、
前記機器は、前記機器の現在の地理的ロケーションにおいて利用可能なセルラサービスを用いて非緊急電話をかけることを現在許可されていないと判定したことに応じて、前記発語入力を処理するために前記限定自然言語処理モジュールを呼び出すことと、
を更に含むことを特徴とする、請求項１に記載の方法。
【請求項１２】
機器であって、
１つ以上のプロセッサと、
メモリと、
１つ以上のプログラムと、
を備え、前記１つ以上のプログラムは、前記メモリ内に記憶され、前記１つ以上のプロセッサによって実行されるように構成され、前記１つ以上のプログラムは、
緊急電話機能性以外のデジタルアシスタントの１つ以上の音声ベース機能性が前記機器の発話入力を介してアクセス可能である間に、
ユーザから発語入力を受け取り、
前記発語入力を処理するための限定自然言語処理モジュールを呼び出し、
前記限定自然言語処理モジュールは、通常動作中に前記デジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、
前記限定自然言語処理モジュールは、前記緊急電話機能性を呼び出すための発語入力を認識するように適合されており、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得し、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得し、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、前記現地の緊急通信指令係電話番号に発信する、
命令を含むことを特徴とする、機器。
【請求項１３】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することを含み、
前記１つ以上のプログラムが、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、前記現地の緊急通信指令係電話番号に発信し、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、前記現地の緊急通信指令係電話番号に発信する前に、緊急電話をかけることを求める前記ユーザの要求を確認するための通知及びアフォーダンスを前記ユーザに提供する、
命令を更に含むことを特徴とする、請求項１２に記載の機器。
【請求項１４】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含み、
前記機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することが、第２の緊急番号を判定するか、又はその判定を取得することを含み、
前記第１の緊急番号が前記第２の緊急番号と別個である場合には、前記現地の緊急通信指令係電話番号に発信することが前記第２の緊急番号に発信することを含むことを特徴とする、請求項１２に記載の機器。
【請求項１５】
前記１つ以上のプログラムが、
前記現地の緊急通信指令係電話番号に発信する前に、前記機器は前記現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知を前記ユーザに提供し、
前記通知を提供している間に、前記ユーザが、緊急電話をかけることを求める前記ユーザ要求を取り消すためのアフォーダンスを提供する、
命令を更に含むことを特徴とする、請求項１２に記載の機器。
【請求項１６】
命令を含むプログラムであって、前記命令は、電子機器によって実行されると、前記電子機器に、
緊急電話機能性以外のデジタルアシスタントの１つ以上の音声ベース機能性が前記電子機器の発話入力を介してアクセス可能である間に、
ユーザから発語入力を受け取らせ、
前記発語入力を処理するための限定自然言語処理モジュールを呼び出させ、
前記限定自然言語処理モジュールは、通常動作中に前記デジタルアシスタントによって用いられるプライマリ自然言語処理モジュールと異なり、
前記限定自然言語処理モジュールは、前記緊急電話機能性を呼び出すための発語入力を認識するように適合されており、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得させ、
前記電子機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得させ、
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表していると判定したか、又はその判定を取得したことに応じて、前記現地の緊急通信指令係電話番号に発信させる、
ことを特徴とする、プログラム。
【請求項１７】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、緊急電話をかけることを求めるユーザ要求を曖昧さなく表しているかどうかを判定するか、又はその判定を取得することを含み、
前記プログラムが、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表しているとの判定に応じて、更なるユーザ入力を用いることなく、前記現地の緊急通信指令係電話番号に発信し、
前記発語入力は、緊急電話を求めるユーザ要求を曖昧さなく表していないとの判定に応じて、前記現地の緊急通信指令係電話番号に発信する前に、緊急電話をかけることを求める前記ユーザの要求を確認するための通知及びアフォーダンスを前記ユーザに提供する、
命令を更に含むことを特徴とする、請求項１６に記載のプログラム。
【請求項１８】
前記発語入力は、緊急電話をかけることを求めるユーザ要求を表しているかどうかを判定するか、又はその判定を取得することが、前記発語入力は、第１の緊急番号に発信することを求めるユーザ要求であると判定するか、又はその判定を取得することを含み、
前記電子機器の地理的ロケーションに基づいて現地の緊急通信指令係電話番号を判定するか、又はその判定を取得することが、第２の緊急番号を判定するか、又はその判定を取得することを含み、
前記第１の緊急番号が前記第２の緊急番号と別個である場合には、前記現地の緊急通信指令係電話番号に発信することが前記第２の緊急番号に発信することを含むことを特徴とする、請求項１６に記載のプログラム。
【請求項１９】
前記現地の緊急通信指令係電話番号に発信する前に、前記電子機器は前記現地の緊急通信指令係電話番号に直ちに電話をかけようとしているとの通知を前記ユーザに提供し、
前記通知を提供している間に、前記ユーザが、緊急電話をかけることを求める前記ユーザ要求を取り消すためのアフォーダンスを提供する、
命令を更に含むことを特徴とする、請求項１６に記載のプログラム。
【外国語明細書】
2020025272000001.pdf