IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

<>
  • 特表-通話品質問題を解決すること 図1
  • 特表-通話品質問題を解決すること 図2
  • 特表-通話品質問題を解決すること 図3
  • 特表-通話品質問題を解決すること 図4
  • 特表-通話品質問題を解決すること 図5
  • 特表-通話品質問題を解決すること 図6
  • 特表-通話品質問題を解決すること 図7
  • 特表-通話品質問題を解決すること 図8
  • 特表-通話品質問題を解決すること 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-05-24
(54)【発明の名称】通話品質問題を解決すること
(51)【国際特許分類】
   H04W 24/10 20090101AFI20240517BHJP
   H04W 24/02 20090101ALI20240517BHJP
   H04W 76/10 20180101ALI20240517BHJP
【FI】
H04W24/10
H04W24/02
H04W76/10
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023574499
(86)(22)【出願日】2021-06-02
(85)【翻訳文提出日】2024-01-31
(86)【国際出願番号】 US2021035531
(87)【国際公開番号】W WO2022256009
(87)【国際公開日】2022-12-08
(81)【指定国・地域】
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】レスマン,マット・ビィ
(72)【発明者】
【氏名】ガン,タイラー・ジェイ
(72)【発明者】
【氏名】アグラワル,ラディカ
(72)【発明者】
【氏名】ラマチャンドラン,アムルス
(72)【発明者】
【氏名】クラウス,デイビッド・ジェイ
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067AA23
5K067DD41
5K067EE02
5K067EE10
5K067LL05
(57)【要約】
本文書は、リアルタイムパーソントゥパーソンメディアセッション(例えば、通話)中の通話品質問題を解決するための方法およびデバイスを説明する。本明細書で説明する技術は、無線通信ネットワーク(例えば、IMSネットワーク)を通して第2のコンピューティングデバイスとの通話を確立するために第1のコンピューティングデバイスを利用する。第1のコンピューティングデバイスは、デバイスのステータス情報を通信するために、通話中に第2のコンピューティングデバイスとステータスメッセージを交換することができる。例えば、第2のコンピューティングデバイスからのステータスメッセージにおいて受信されたステータス情報を使用して、通話品質問題が第1のコンピューティングデバイスによって検出される場合、第1のコンピューティングデバイスは、問題の原因を決定し、第1のコンピューティングデバイスのユーザに通話品質問題を通知することができる。さらに、第1のコンピューティングデバイスは、ユーザ体験を改善するために、通話品質問題を解決するための推奨を決定し、ユーザに推奨を通知することができる。
【特許請求の範囲】
【請求項1】
第1のコンピューティングデバイス(102-1)によって実施される方法(900)であって、
無線通信ネットワークにおいて登録を要求する(902)ことと、
前記無線通信ネットワークにおいて登録を要求することに応答して、第2のコンピューティングデバイス(102-1)と前記無線通信ネットワークを通じてリアルタイムパーソントゥパーソンメディアセッションを確立する(904)ことと、
前記第2のコンピューティングデバイスからステータスメッセージを受信する(906)こととを含み、
前記ステータスメッセージは前記第2のコンピューティングデバイスのデバイス健全性情報を含み、前記デバイス健全性情報は前記リアルタイムパーソントゥパーソンメディアセッションの品質を示し、
前記方法は、
前記第2のコンピューティングデバイスの前記デバイス健全性情報に基づいて前記リアルタイムパーソントゥパーソンメディアセッションの通話品質問題を判定する(908)ことと、
前記リアルタイムパーソントゥパーソンメディアセッションの前記通話品質問題を判定することに応答して、前記第1のコンピューティングデバイスのユーザに前記リアルタイムパーソントゥパーソンメディアセッションの前記通話品質問題を知らせるための通知を生成する(910)ことと、
前記通知を使用して前記第1のコンピューティングデバイスの前記ユーザに通知する(912)ことと
をさらに含む、方法。
【請求項2】
前記リアルタイムパーソントゥパーソンメディアセッションの前記通話品質問題の原因を決定するために前記第2のコンピューティングデバイスの前記デバイス健全性情報を利用することと、
前記原因を利用して、前記第1のコンピューティングデバイスの前記ユーザが、前記通話品質問題を解決することを可能にするための推奨を決定することとをさらに含み、
前記推奨は、前記ユーザが実施するための推奨タスクを含み、
前記方法は、
前記第1のコンピューティングデバイスの前記ユーザに前記推奨を通知することをさらに含む、請求項1に記載の方法。
【請求項3】
前記第1のコンピューティングデバイスのデバイス健全性情報を決定することと、
前記第1のコンピューティングデバイスの前記デバイス健全性情報に基づいて前記リアルタイムパーソントゥパーソンメディアセッションの第2の通話品質問題を判定することと、
前記リアルタイムパーソントゥパーソンメディアセッションの前記第2の通話品質問題を判定することに応答して、前記第1のコンピューティングデバイスの前記ユーザに前記リアルタイムパーソントゥパーソンメディアセッションの前記第2の通話品質問題を知らせるための第2の通知を生成することと、
前記第1のコンピューティングデバイスの前記ユーザに前記リアルタイムパーソントゥパーソンメディアセッションの前記第2の通話品質問題を通知することとをさらに含む、先行する請求項のいずれかに記載の方法。
【請求項4】
前記リアルタイムパーソントゥパーソンメディアセッションの前記第2の通話品質問題を判定することに応答して、前記第1のコンピューティングデバイスの前記デバイス健全性情報を含む第2のステータスメッセージを生成することと、
前記第2のコンピューティングデバイスのユーザが前記第2の通話品質問題を通知されることを可能にするために前記第2のコンピューティングデバイスに前記第2のステータスメッセージを送信することとをさらに含む、請求項3に記載の方法。
【請求項5】
前記第1のコンピューティングデバイスの前記ユーザについての前記推奨は、前記ユーザが実施するための前記推奨されたタスクの実施を促進させるためにショートカットを含む、請求項2~請求項4のいずれかに記載の方法。
【請求項6】
第3者が前記第1のコンピューティングデバイスの前記ステータス情報にアクセスすることを防止するために、前記第2のステータスメッセージをエンコードすることをさらに含み、前記第3者は、前記第1のコンピューティングデバイスとは異なり、また、前記第2のコンピューティングデバイスとは異なる、請求項3~請求項5のいずれかに記載の方法。
【請求項7】
前記第1のコンピューティングデバイスの前記デバイス健全性情報を前記決定することは、
前記無線通信ネットワークの状態を決定すること、
前記リアルタイムパーソントゥパーソンメディアセッションの品質を決定すること、
現時点における前記第1のコンピューティングデバイスの健全性ステータスを決定すること、または、
前記ユーザからの前記第1のコンピューティングデバイスへの少なくとも1つの入力を検出すること
のうちの1つを含む、請求項3~請求項6のいずれかに記載の方法。
【請求項8】
前記第1のコンピューティングデバイスの前記デバイス健全性情報の前記決定を可能にするために、前記第1のコンピューティングデバイスの少なくとも1つのセンサから取得されるコンテキスト情報を利用することをさらに含む、請求項3~請求項7のいずれかに記載の方法。
【請求項9】
より早い時点における前記第1のコンピューティングデバイスの前記ステータス情報と比較したときの、現時点における前記第1のコンピューティングデバイスの前記ステータス情報の変化を決定することと、
前記第1のコンピューティングデバイスの前記ステータス情報の前記決定された変化に基づいて前記第2のコンピューティングデバイスに送信するために第3のステータスメッセージを生成することと、
前記第2のコンピューティングデバイスが、前記リアルタイムパーソントゥパーソンメディアセッションの通話品質問題を解決することを可能にするために、前記第2のコンピューティングデバイスに前記第3のステータスメッセージを送信することとをさらに含む、請求項3~請求項8のいずれかに記載の方法。
【請求項10】
前記第2の通話品質問題は、
機械学習モデル、
内部論理システム、または、
ヒステリシス論理
のうちの少なくとも1つを使用して予測される、請求項3~請求項9のいずれかに記載の方法。
【請求項11】
ハンドシェーク手順を使用して、前記リアルタイムパーソントゥパーソンメディアセッション中にステータスメッセージを交換するために、デバイストゥデバイス通信を確立することをさらに含み、前記ハンドシェーク手順は、
前記無線通信ネットワークを通して前記第2のコンピューティングデバイスに要求メッセージを送信することを含み、前記送信された要求メッセージは、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの交換を要求する、または、
前記無線通信ネットワークを通して前記第2のコンピューティングデバイスから要求メッセージを受信することを含み、前記受信された要求メッセージは、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの前記交換を要求する、先行する請求項のいずれかに記載の方法。
【請求項12】
前記ハンドシェーク手順は、
前記第2のコンピューティングデバイスに要求メッセージを送信することに応答して、前記無線通信ネットワークを通して前記第2のコンピューティングデバイスから応答メッセージを受信することをさらに含み、前記受信された応答メッセージは、前記第2のコンピューティングデバイスが、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの前記交換をサポートすることを示す、または、
前記第2のコンピューティングデバイスから要求メッセージを受信することに応答して、前記無線通信ネットワークを通して前記第2のコンピューティングデバイスに応答メッセージを送信することをさらに含み、前記送信された応答メッセージは、前記第1のコンピューティングデバイスが、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの前記交換をサポートすることを示す、請求項11に記載の方法。
【請求項13】
A、B、C、またはDのうちの1つまたは複数のデュアルトーンマルチ周波数、DTMF、デジットを使用して、前記第2のコンピューティングデバイスが、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの前記交換をサポートするか否かを判定するために前記ハンドシェーク手順を実施することと、
前記第1のコンピューティングデバイスのステータス情報を含むDTMFステータスメッセージを生成することとをさらに含み、
前記DTMFステータスメッセージは、A、B、C、またはDのうちの1つまたは複数のDTMFデジットを使用し、
前記方法は、
A、B、C、またはDのうちの1つまたは複数のDTMFデジットを使用して、前記第2のコンピューティングデバイスが、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの前記交換をサポートすると判定することに応答して、前記無線通信ネットワークを通して前記第2のコンピューティングデバイスに前記DTMFステータスメッセージを送信することをさらに含む、請求項11または請求項12に記載の方法。
【請求項14】
リアルタイムトランスポートプロトコル、RTP、ヘッダ拡張を使用して、前記第2のコンピューティングデバイスが、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの前記交換をサポートするか否かを判定するために前記ハンドシェーク手順を実施することと、
前記第1のコンピューティングデバイスのステータス情報を含むRTPステータスメッセージを生成することとをさらに含み、
前記RTPステータスメッセージは、前記RTPヘッダ拡張を使用し、
前記方法は、
RTPヘッダ拡張を使用して、前記第2のコンピューティングデバイスが、前記第2のコンピューティングデバイスと前記第1のコンピューティングデバイスとの間でのステータスメッセージの前記交換をサポートすると判定することに応答して、前記無線通信ネットワークを通して前記第2のコンピューティングデバイスに前記RTPステータスメッセージを送信することをさらに含む、請求項11または請求項12に記載の方法。
【請求項15】
コンピューティングデバイス(102)であって、
少なくとも1つのプロセッサ(204)と、
命令を含むコンピュータ可読記憶媒体(210)とを備え、前記命令は、前記プロセッサによる実行に応答して、請求項1~請求項14に記載の方法のうちのいずれか1つの方法を実施するように前記コンピューティングデバイスに指示するためのものである、コンピューティングデバイス。
【発明の詳細な説明】
【背景技術】
【0001】
背景
コンピューティングデバイス(例えば、スマートフォン)は、通信ネットワークを通して別のコンピューティングデバイスと通信することができる。例えば、第1のコンピューティングデバイスは、リアルタイムパーソントゥパーソンメディアセッション(例えば、通話)のために無線通信ネットワークを通して第2のコンピューティングデバイスに接続することができる。しかしながら、通信ネットワークを通したデバイスのそのようなネットワーク接続は、通話の品質を下げる場合がある問題が起こりやすい。これらの通話品質問題は、例えば、デバイスがローバッテリ状態によって突然電力を喪失すること、遠隔の場所に位置するデバイスによって引き起こされる不十分な音声(オーディオ)の品質、輻輳したネットワークによる不十分なオーディオ品質などを含む。ユーザは、しばしば、これらの通話品質問題のための解決策を独力で決定するのを任され、それは、ユーザが、問題を解決する試みにおいて自分のデバイス上で設定をナビゲートすることを要求する場合がある。ユーザは、ナビゲートする間に注意散漫になるかまたは問題を解決する方法に関して迷う場合があり、通話およびユーザ体験の効果をさらに減少させる。結果として、ユーザが、通話中に別のユーザと効果的に通信することを妨げる障壁が存在する。
【発明の概要】
【課題を解決するための手段】
【0002】
概要
本文書は、通話品質問題を解決するための技術およびデバイスを説明する。本明細書で説明する技術は、無線通信ネットワーク(例えば、インターネットプロトコルマルチメディアコアネットワークサブシステム(IMS:Internet Protocol Multimedia Core Network Subsystem)ネットワーク)を使用して別のデバイスとのリアルタイムパーソントゥパーソンメディアセッション(本明細書で略して通話と呼ばれる)を確立するためにコンピューティングデバイスを利用する。無線通信ネットワークを通して、コンピューティングデバイスは、デバイスうちの少なくとも1つのステータス情報(例えば、デバイスの健全性、コールの品質、ネットワークの品質)を通信するために、通話中に他のデバイスとステータスメッセージを交換することができる。ステータスメッセージは、例えば、リアルタイムトランスポートプロトコル(RTP:real-time transport protocol)ヘッダ拡張または未使用デュアルトーンマルチ周波数(DTMF:dual-tone multi-frequency)デジット(例えば、デジットA、B、C、またはD)を使用して、通話中にデバイス間に交換され得る。通話品質問題は、別のデバイスからのステータスメッセージにおいて受信されたステータス情報を一部には使用して、コンピューティングデバイスによって検出され得る。通話品質問題を判定すると、コンピューティングデバイスは、ユーザに問題を知らせるために、デバイスのユーザに表示される通知を生成することができる。コンピューティングデバイスは、ユーザが通話品質問題を解決するのを助けるために推奨をさらに決定することができる。
【0003】
以下で説明する態様は、通話品質問題を解決するための技術を含む。例の方法は、第1のコンピューティングデバイスによって実施され、無線通信ネットワークにおいて登録を要求すること、および、第2のコンピューティングデバイスと、無線通信ネットワークを通じてリアルタイムパーソントゥパーソンメディアセッションを確立することを含むことができる。第1のコンピューティングデバイスは、第2のコンピューティングデバイスからステータスメッセージを受信することができ、ステータスメッセージは、リアルタイムパーソントゥパーソンメディアセッションの品質を示す、第2のコンピューティングデバイスのデバイス健全性情報を含む。第2のコンピューティングデバイスのデバイス健全性情報に基づいて、第1のコンピューティングデバイスは、リアルタイムパーソントゥパーソンメディアセッションの通話品質問題を判定することができる。通知は、第1のコンピューティングデバイスのユーザにリアルタイムパーソントゥパーソンメディアセッションの通話品質問題を知らせるために、第1のコンピューティングデバイスによって生成され得る。第1のコンピューティングデバイスは、通知を使用してユーザに通知することができる。
【0004】
認識されるように、本明細書で説明される種々の例は、通話に対する1人または複数人の加入者に接続/通信の支配的な状態および/または切断についての理由を通知するのに役立つことができる。幾つかの例において、提供される通知は、2人の加入者間の接続/通信問題を効率的に解決するためのヒューマンマシンインタラクションの一部を形成することができる。切断についての理由を示す通知は、様々な利点の中でも、接続を再始動させようと試みることが、価値があるか否かについての情報を提供することができる。
【0005】
この概要は、詳細な説明および図面において以下でさらに説明される、通話品質問題を解決するための単純化された概念を導入するために提供される。この概要は、特許請求される主題の本質的な特徴を特定することを意図されないし、特許請求される主題の範囲を決定するときの使用についても意図されない。
【0006】
通話品質問題を解決するための技術およびデバイスの1つまたは複数の態様の詳細は、添付図面を参照して説明される。
【図面の簡単な説明】
【0007】
図1】通話品質問題を解決する技術が、通話中に、接続されたコンピューティングデバイスによって実施される例の環境を示す図である。
図2】通話品質問題を解決する技術を実行する例のコンピューティングデバイスを示す図である。
図3】通話中にデバイストゥデバイス通信を確立するために使用され得る例のハンドシェーク手順を示す図である。
図4】通話品質問題を特定し解決するために、ステータスメッセージに含まれ得る例のステータス情報を示す図である。
図5】プライバシーオプションのユーザ選択を可能にするステータスモジュールの例のステータス共有制御を示す図である。
図6】第1のデバイス上に経時的に表示される通知の例のシーケンスを示す図である。
図7】通話品質問題を解決するためにコンピューティングデバイス上に表示される推奨の例のシーケンスを示す図である。
図8】通話品質問題を解決するための例の方法を示す図である。
図9】通話品質問題を解決する技術を具現化する、または、その技術の使用を可能にする技術が実行され得る例のコンピューティングシステムを示す図である。
【発明を実施するための形態】
【0008】
図面全体を通した異なるインスタンスにおける同じ数字の使用は、同様の機能およびコンポーネントを参照することができる。
【0009】
詳細な説明
概要
コンピューティングデバイス間のネットワーク接続(例えば、オーディオ通話、ビデオ通話を可能にする)は、通話の品質を下げる場合がある通話品質問題が起こりやすい。これらの問題は、例えば、スマートフォンがローバッテリによって突然電力を喪失すること、遠隔の場所にあるスマートフォンの不十分な信号に伴うオーディオ擾乱、輻輳したネットワークによるビデオ通話のレーテンシなどを含む場合がある。デバイスユーザは、問題の原因または問題についての解決策を理解することなく、通話品質問題をしばしば体験する場合がある。例えば、通話が不意に中断する場合、ユーザは、通話がなぜ終了したかおよび自分のデバイスがその問題の発生源であるか否かを思案するままにされる場合がある。問題がデバイスに特定される場合でも、ユーザは、問題を素早く解決する方法を知りたいと思う場合がある。ユーザは、しばしば、通話品質問題に対する解決策を独力で決定し、問題を解決するために自分のデバイスをナビゲートするのを任される。ユーザは、ナビゲートする間に注意散漫になるかまたは問題を解決する方法に関して迷う場合があり、通話およびユーザ体験の効果をさらに減少させる。結果として、ユーザが通話品質問題を解決することを妨げる障壁が存在する。
【0010】
これらの課題に対処するために、本文書は、通話品質問題を解決するための方法を説明する。態様において、解決はリアルタイムに実施される。別のデバイスとの通話を確立した後、コンピューティングデバイスは、デバイスの1つまたは複数のステータス情報をリアルタイムに受動的に通信する(例えば、ユーザによって知覚されるように)ために、他のデバイスとステータスメッセージを交換することができる。このステータス情報は、例えば、デバイスのステータス(例えば、バッテリレベル)、通話の品質(例えば、接続強度)、無線通信ネットワークの品質(例えば、ネットワークトラフィックレベル)、および/または関連するユーザ入力(例えば、設定、入力)を含むことができる。通話中にこれらのステータスメッセージを交換するために、デバイスは、例えば、RTPヘッダ拡張および/または未使用DTMFデジットを使用するハンドシェーク手順の動作を実施することによって、別のデバイスとのデバイストゥデバイス(device-to-device)通信を確立することができる。
【0011】
デバイスは、プレコールの(例えば、通話(コール)前の)、電話をかける間の、通話中の、またはポストコールの(例えば、通話(コール)が中断した後の)通話品質問題を判定するために、通話の際の接続されたデバイスの受信されたステータスメッセージおよび/または自分自身のデバイスのローカル健全性を使用することができる。通話品質問題を判定した後、コンピューティングデバイスは、デバイスのユーザに問題の詳細情報を通知すること、問題を素早く解決するための推奨をユーザに通知すること、または、他のデバイスのユーザに通話品質問題を知らせるために通話の際に別のデバイスにステータスメッセージを送信すること、の1つまたは複数を実施することによって問題を解決することができる。推奨は、ユーザが、動作を実施するように自分のデバイスをナビゲートすることなく、通話品質問題を素早く解決することを可能にするさらなる機能(例えば、ショートカット)を含むことができる。例えば、推奨は、1つまたは複数のユーザ選択可能オプションを含むことができ、そのオプションの選択は、推奨がそれに関して選択されるデバイスに、推奨された行為/動作を実施させることができる。
【0012】
例の環境
図1は、通話品質問題を解決する技術が、通話中に、接続されたコンピューティングデバイスによって実施される例の環境100を示す。例の環境100は、無線リンク110-1として示される1つまたは複数の無線通信リンク110(無線リンク110)を通して第1の基地局106と通信する第1のコンピューティングデバイス102-1(デバイス102-1)を含む。例の環境100は、無線リンク110-2として示される1つまたは複数の無線通信リンク110を通して第2の基地局108と通信する第2のコンピューティングデバイス102-2(デバイス102-2)をさらに含む。説明を容易にするために、第1のデバイス102-1および第2のデバイス102-2は、本明細書でコンピューティングデバイス102とそれぞれ呼ばれ得、第1の基地局106および第2の基地局108は、ひとまとめに基地局104として示される。
【0013】
マクロセル、マイクロセル、スモールセル、ピコセル、分散基地局、および同様なもの、あるいはその任意の組み合わせまたは将来進化は、基地局104(例えば、進化型ユニバーサル地上無線アクセスネットワークNodeB、E-UTRAN NodeB、進化型NodeB、eNodeB、eNB、次世代eNB、ng-eNB、次世代NodeB、gNode B、gNB、基地局送受信機システム、無線ローカルアクセスネットワーク(WLAN:Wireless Local Access Network)ルータ、衛星、地上テレビジョンブロードキャストタワー、アクセスポイント、ピアトゥピアデバイス、基地局として働く別のコンピューティングデバイス、または同様なもの)を実装することができる。基地局104は、任意の適切なタイプの無線リンクとして実装される無線リンク110を使用してコンピューティングデバイス102と通信することができる。無線リンク110は、制御およびデータ通信、例えば、基地局104からコンピューティングデバイス102に通信されるデータおよび制御情報のダウンリンク、コンピューティングデバイス102から基地局104に通信される他のデータおよび制御情報のアップリンク、または両方を含むことができる。無線リンク110は、任意の適切な通信プロトコルまたは規格あるいは通信プロトコルまたは規格の組み合わせ、例えば、第3世代パートナーシッププロジェクト長期進化(3GPP(登録商標) LTE:3rd Generation Partnership Project Long-Term Evolution)、第5世代ニューラジオ(5G NR:Fifth Generation New Radio)などを使用して実装される1つまたは複数の無線リンク(例えば、ラジオリンク)またはベアを含むことができる。
【0014】
基地局104(第1の基地局106、第2の基地局108)は、ひとまとめに無線アクセスネットワーク118(例えば、RAN(:Radio Access Network)、進化型ユニバーサル地上無線アクセスネットワーク、E-UTRAN、5G NR RAN、またはNR RAN)である。RAN118内の基地局106および108は、コアネットワーク112(例えば、音声、画像、ビデオ、テキスト、メッセージング、および同様なもののために他のネットワークとインタフェースすることができるサービスをサポートするIMSネットワーク)に接続される。基地局106および108は、5Gコアネットワークに接続するときユーザプレーンデータ通信用のNG3インタフェース、進化型パケットコア(EPC:Evolved Packet Core)ネットワークに接続するときコントロールプレーンシグナリングおよびユーザプレーンデータ通信用のS1インタフェース、および同様なもののうちの任意の1つを使用して、コントロールプレーンシグナリング用のNG2インタフェースを通して、それぞれ120および122において、コアネットワーク112に接続することができる。基地局106および108は、123において、Xnインタフェースを通したXnアプリケーションプロトコル(XnAP:Xn Application Protocol)を使用して、ユーザプレーンデータおよびコントロールプレーンデータを交換するためのX2インタフェースを通したX2アプリケーションプロトコル(X2AP:X2 Application Protocol)を使用して、および同様なものを使用して通信することができる。コンピューティングデバイス102は、リモートサービス116と相互作用するために、インターネット114などのパブリックネットワーに、コアネットワーク112を使用して接続することができる。
【0015】
通話品質問題を解決する開示される技術は、第1のデバイス102-1または第2のデバイス102-2の一方または両方によって実施され得る。例の環境100において、第1のデバイス102-1は、基地局104を通して第2のデバイス102-2との通話を可能にするため、シグナリングを実施し、リアルタイムパーソントゥパーソンメディアセッションに登録するために、無線リンク110-1を利用する。通話は、IMSネットワークを通じて確立され、例えば、オーディオ通話、ビデオ通話、共有サーバ上での接続、ボイスオーバー長期進化(VoLTE:voice over long-term evolution)通話、ボイスオーバーインターネットプロトコル(VoIP:voice over internet protocol)通話、ボイスオーバー5Gニューラジオ(VoNR:voice over 5G New Radio)通話、ボイスオーバーWiFi(登録商標)(VoWiFi:voice over WiFi)通話などを含むことができる。通話の確立は、第1のユーザ124-1が第2のユーザ124-2と、両者のそれぞれのコンピューティングデバイス102を利用して通信することを可能にする。説明を容易にするために、第1のユーザ124-1および第2のユーザ124-2は、本明細書でそれぞれユーザ124と呼ばれ得る。
【0016】
例の環境100において、第1のデバイス102-1および第2のデバイス102-2は、通話品質問題を特定し解決するために、通話中にステータスメッセージを交換することができる。これらの通話品質問題は、例えば、ネットワーク状態(例えば、輻輳したネットワーク)、メディアセッションの品質、コンピューティングデバイス102の健全性ステータス(例えば、バッテリレベル)、あるいは1つまたは複数のユーザ入力(例えば、ユーザ124の意図的コマンド、ユーザ124の非意図的コマンド)の1つまたは複数に関連する場合がある。
【0017】
例の環境100において、第1のデバイス102-1と第2のデバイス102-2との間の通話は、第1のユーザ124-1によって知覚されるように不意に中断する。本明細書で説明する技術を使用して、第2のデバイス102-2のローバッテリ状態によって通話が中断した可能性があることを第1のユーザ124-1に知らせるための通知126が、第1のデバイス102-1のディスプレイ128-1上に表示される。この例において、第1のデバイス102-1は、通話品質問題(例えば、中断された通話)を検出し、第2のデバイス102-2からのステータスメッセージにおいて受信された情報に基づいて通話品質問題(例えば、第2のデバイス102-2のローバッテリ状態)の原因を決定し、通話品質問題の原因を含んだ通知126を用いて第1のユーザ124-1に通知した可能性がある。一般に、第1のデバイス102-1は、検出された通話品質問題に関するステータスメッセージを第2のデバイス102-2に送信することができ、ステータスメッセージは、第2のデバイス102-2が第2のユーザ124-2に問題を通知することを可能にすることができる。しかしながら、第2のデバイス102-2は、例の環境100において電力を喪失したため、通知は、第2のデバイス102-2のディスプレイ128-2上に表示されないかまたは第2のデバイス102-2によって受信されない場合がある。説明を容易にするために、ディスプレイ128-1およびディスプレイ128-2は、本明細書でそれぞれディスプレイ128と呼ばれ得る。本開示で説明する例のコンピューティングデバイスはスマートフォンであるが、他のタイプのコンピューティングデバイス102が、図2に関してさらに説明するように通話品質問題を解決する技術をサポートすることもできる。
【0018】
例のコンピューティングデバイス
図2は、通話品質問題を解決する技術を実行する例のコンピューティングデバイス102を示す。コンピューティングデバイス102は、デスクトップコンピュータ202-1、タブレット202-2、ラップトップ202-3、テレビジョン202-4、コンピューティングウォッチ202-5、コンピューティングメガネ202-6、ゲーミングシステム202-7、マイクロ波202-8、および車両202-9を含む種々の非制限的な例のデバイスと共に示される。他のデバイスも使用され得、他のデバイスは、ホームサービスデバイス、スマートスピーカ、スマートサーモスタット、セキュリティカメラ、ベビーモニター、WiFi(登録商標)ルータ、ドローン、トラックパッド、ドローイングパッド、ネットブック、電子書籍リーダ、ホームオートメーションおよび制御システム、ウォールディスプレイ、仮想現実ヘッドセット、および/または別の家電製品を含む。コンピューティングデバイス102は、装着可能、非装着可能であるがモバイルである、または比較的固定である(例えば、デスクトップ、電化製品)とすることができる。
【0019】
コンピューティングデバイス102は、例えば、中央処理ユニット(CPU:central processing unit)、データ処理ユニット(DPU:data processing unit)、グラフィクス処理ユニット(GPU:graphics processing unit)などの1つまたは複数を含むプロセッサ204を含むことができる。コンピューティングデバイス102は、信号を受信し送信するために使用される1つまたは複数の送受信機206を含むこともできる。送受信機206は、ステータスメッセージを別のコンピューティングデバイスに送信し、ステータスメッセージを他のコンピューティングデバイスから受信するために使用され得る。図2に示さないが、コンピューティングデバイス102は、代替的に、それぞれ、別のデバイスから信号を受信し、別のデバイスに信号を送信するように指定される受信機および送信機を含むことができる。
【0020】
コンピューティングデバイス102は、ディスプレイ128および少なくとも1つのセンサ208を含むことができる。図1の例の環境100において、ディスプレイ128は、中断された通話の通知126を表示するために一部が使用され得る。一般に、ディスプレイ128は、ユーザ設定、選好などを含むコンピューティングデバイス102のコンテンツを観察および/または制御するために使用され得る。少なくとも1つのセンサ208は、例えば、コンピューティングデバイス102に関連するコンテキスト情報(例えば、触覚入力、場所、検出された動きなど)を使用して、コンピューティングデバイス102のステータスを決定するために一部が使用され得る。センサ208は、例えば、カメラ、マイクロフォン、スピーカ、周囲光センサ、バイオメトリックセンサ、加速度計、ジャイロスコープ、磁力計、近接センサ、全地球航法衛星システム(GNSS:global navigation satellite system)センサ、タッチスクリーンセンサ、健全性センサ、バーコードセンサ、迅速応答(QR:quick response)コードスキャナ、バロメータ、レーダーセンサなどを含むことができる。
【0021】
図2に示すコンピューティングデバイス102は、コンピュータ可読媒体(CRM:computer-readable medium)210を含むこともできる。CRM210上のコンピュータ可読命令として実現されるアプリケーションおよび/またはオペレーティングシステム(示さず)は、プロセッサ204によって実行され、本明細書で説明する機能の一部を提供することができる。CRM210は、通話品質問題を判定するために、ステータスモジュール212への入力として、送受信機206および/またはセンサ208から情報を受信することができる。CRM210は、通話品質問題を解決する技術を実施するようにコンピューティングデバイス102のステータスモジュール212に指示するための命令を含むことができる。
【0022】
通話中にステータスメッセージの交換を可能にするために、デバイストゥデバイス通信が、ステータスモジュール212のメッセージ初期化器214を使用して確立され得る。メッセージ初期化器214は、送受信機206を使用して通話の際に別のデバイスに送信され得る要求メッセージを生成するようにメッセージ生成器216に指示することによってデバイストゥデバイス通信を確立することができる。コンピューティングデバイス102が送受信機206を使用して応答メッセージを受信する場合、ステータスモジュール212のメッセージ解析器218は、メッセージ初期化器214への入力としてこのメッセージを解析する(例えば、デコードする、変換する)。コンピューティングデバイス102が別のデバイスとのデバイストゥデバイス通信を確立すると、メッセージ生成器216およびメッセージ解析器218は、デバイス間で交換されるステータスメッセージを、それぞれ生成し解析するためにさらに使用され得る。
【0023】
ステータスモジュール212の接続解析器220は、通話の際に別のデバイスからの受信されたステータスメッセージおよび/またはコンピューティングデバイス102のローカル健全性情報内の情報に基づいて通話品質問題を判定することができる。示さないが、ステータスモジュール212は、CRM210のユーザ入力モジュール(例えば、1つまたは複数のユーザ入力を検出するため)、デバイス健全性モジュール(例えば、コンピューティングデバイス102の健全性ステータスを決定するため)、メディア接続モジュール(例えば、無線リンク100を通る通話の品質を決定するため)、または通信ネットワークモジュール(例えば、コアネットワーク112の状態を検出するため)のうちの任意の1つまたは組み合わせを使用してローカル健全性情報を決定することができる。これらのモジュール(示さず)の1つまたは複数は、ハードウェア、ソフトウェア、ファームウェア、またはその組み合わせを使用して実行され得る。
【0024】
接続解析器220が通話品質問題を判定した後、通知生成器222は、(例えば、ディスプレイ128-1上で第1のユーザ124-1に通知するために第1のデバイス102-1を使用して)デバイスのユーザに問題を警告するために使用される1つまたは複数の通知126を決定することができる。通知生成器222は、通話品質問題に関連するステータス情報を含む、別のデバイスに(例えば、送受信機206を使用して)送信される1つまたは複数のステータスメッセージを決定することもできる。他のデバイスにおいてこのステータスメッセージを受信すると、他のデバイスは、そのデバイスのユーザに問題を通知する同様の動作を実施するためにローカルステータスモジュール212を使用することができる。さらに、ステータスモジュール212は、通話品質問題を解決するための1つまたは複数の推奨を決定するために推奨生成器224を使用することができる。第1のデバイス102-1の推奨生成器224は、例えば、推奨を決定し、ディスプレイ128-1上で第1のユーザ124-1にその推奨を知らせることができる。
【0025】
デバイストゥデバイス通信を確立すること
通話品質問題を解決する技術をイネーブルするために、コンピューティングデバイス102は、通話中に、接続されたデバイスとステータスメッセージを交換することができる。ステータスメッセージのこの交換(デバイストゥデバイス通信)は、ユーザ124が直接関わることなく実施され得る(例えば、ユーザ124によって知覚される受動的交換)。例えば、第1のデバイス102-1は、第1のユーザ124-1も第2のユーザ124-2も直接に交換を実施することなく、第2のデバイス102-2と、通話中に1つまたは複数のステータスメッセージを受信および/または送信することができる。通話品質問題(例えば、中断された通話)を検出すると、第1のデバイス102-1は、第2のデバイス102-2からのステータスメッセージにおいて受信された情報に、一部には基づいて、第1のユーザ124-1に通話品質問題を通知するためにディスプレイ128-1上に通知126を表示することができる。第1のデバイス102-1および第2のデバイス102-2の例のコンピューティングデバイス102はこのデバイストゥデバイス通信をサポートするが、一部のコンピューティングデバイス102は、そのようなメッセージ交換をサポートしない。したがって、第1のデバイス102-1は、図3に関してさらに説明するように、ステータスメッセージを送信する前に、接続された第2のデバイス102-2がデバイストゥデバイス通信をサポートするか否かを判定する必要がある場合がある。
【0026】
図3は、通話中にデバイストゥデバイス通信を確立するために使用され得る例のハンドシェーク手順300を示す。例のハンドシェーク手順300は、第1のデバイス102-1および第2のデバイス102-2を含むシステムによって実施される動作(または動き)のセットとして示される。これらのコンピューティングデバイス102の一方または両方は、示す動作をイネーブルするためにそのコンピューティングデバイス102のそれぞれのステータスモジュール212を利用することができる。例のハンドシェーク手順300は、示す動作に限定されず、本明細書で説明する技術をイネーブルするために、必要に応じて再配置、反復、または排除され得る。2つのライフラインが300に示され、第1のデバイス102-1によって実施される動作は、少なくとも部分的に第1のライフラインの周りに配向するか第1のライフラインから生じ、第2のデバイス102-2によって実施される動作は、少なくとも部分的に第2のライフラインの周りに配向するか第2のライフラインから生じる。
【0027】
例のハンドシェーク手順300は、ステータスモジュール212のメッセージ初期化器214によって実施され得るが、一般に、例のハンドシェーク手順300は、プロセッサ204、CRM210の別のモジュール、またはその任意の組み合わせによって実施され得る。例のハンドシェーク手順300の動作は、通話に先立って(プレコール)、電話をかける間に(例えば、通話が第1のデバイスによって始動された後であるが、第2のデバイスがその通話に接続される前に)、および/または通話中に実施され得る。デバイストゥデバイス通信を確立した後、ステータスメッセージは、電話をかける間にまたは通話中に交換され得る。一般に、デバイストゥデバイス通信は、例えばユーザニーズに基づいてユーザによって、任意のデバイス上で、手動でイネーブル(稼働)またはディセーブル(停止)され得る。第1のデバイス102-1がデバイストゥデバイス通信機能をイネーブルしてしまっており、第2のデバイス102-2が、デバイスによってサポートされる場合、この機能を同様にイネーブルしたか否かを、一部には判定するために、ハンドシェーク手順を実施していることが300において仮定される。
【0028】
ネットワーク接続手順302-1にて、第1のデバイス102-1および第2のデバイス102-2は、本明細書で説明する技術をイネーブルする、1つまたは複数の基地局(例えば、基地局104)、共通サーバ、ピアトゥピアネットワーク、および/またはクライアントサーバモデルを使用して無線通信ネットワークに対する接続を(例えば、無線リンク110を使用して)確立する。基地局104は、コアネットワーク112に対する接続(例えば、IMSネットワーク接続)をイネーブルすることができる。例えば、第1のデバイス102-1は、IMSネットワークにおいて登録を要求することができる。
【0029】
通話接続手順302-1において、リアルタイムパーソントゥパーソンメディアセッション(通話)は、無線通信ネットワークに対する接続を確立すると、第1のデバイス102-1と第2のデバイス102-2との間に確立される。例えば、第1のデバイス102-1は、IMSネットワークにおいて登録を受信し、その後、第2のデバイス102-2とのオーディオ通話を確立し始めることができる。通話は、オーディオ通話、ビデオ通話、共有サーバ上での接続、VoLTE通話、VoIP通話、VoNR通話、またはVoWiFi通話などの1つまたは複数を含むことができる。
【0030】
第1のデバイス102-1は、要求メッセージ304(第1の要求メッセージ304-1として300に示す)を送信することができる。この要求メッセージ304は、接続された第2のデバイス102-2に送信され得る、1つまたは複数のバイナリーデジット(ビット)、第1のデバイス102-1によってサポートされるメッセージングプロトコルのバージョン(例えば、デバイストゥデバイス通信)、トーン、メッセージ、命令のセットなどを含むことができる。第1のデバイス102-1のメッセージ初期化器214は、第2のデバイス102-2がステータスメッセージの交換をサポートするか否かを判定するため、送受信機206を使用して第2のデバイス102-2に要求メッセージ304を送信するように第1のデバイス102-1に指示することによってデバイストゥデバイス通信を確立することができる。
【0031】
要求メッセージ304は、メッセージ生成器216によって生成され、或る継続時間にわたって(例えば、周期的に40ミリ秒(ms)ごとに)再送され得る。なぜなら、要求の受信が、無線通信ネットワークに対して保証されない場合があるからである。継続時間中、第1の受信検証手順306は、応答メッセージ312が第2のデバイス102-2から受信されたか否かを判定するために、第1のデバイス102-1によって実施され得る。応答メッセージ312が、継続時間内の所与の時間に受信されなかった場合、第1のデバイス102-1は、要求メッセージ304を再送することができる(別の要求メッセージ304-Nとして300に示す、ここで、Nは、再送ごとに単調に増加する1より大きい整数値を示す)。第1のデバイス102-1は、応答メッセージ312が第1のデバイス102-1によって受信されるかまたは継続時間が終了してしまうまで、要求を再送することができる。要求メッセージ304の再送は、ユーザニーズ(例えば、バッテリ充電の維持)に基づいて、継続時間にわって、連続的に、周期的に、所定の時間に、または断続的に実施され得る。
【0032】
継続時間は、第1の要求メッセージ304-1が第1のデバイス102-1から送信された時間に対して測定され得る。特に、タイマーは、第1の要求メッセージ304-1を送信すると、アクティブ状態にトリガーされ得る(例えば、タイマーの開始をトリガーする)。タイマー(例えば、計時システム)は、継続時間内の時間を計数するために使用され、継続時間が終了するかまたは応答メッセージ312が第2のデバイス102-2から受信されるまで、アクティブ状態にあるままである。第1の受信検証手順306において、第1のデバイス102-1は、タイマーが、アクティブ状態にあるかまたは非アクティブ状態にある(例えば、継続時間が終了したことを示す)かをさらに判定することができる。継続時間内の所与の時間にて、タイマーが、アクティブ状態にあると判定され、応答メッセージ312が受信されていない場合、第1のデバイス102-1は、要求メッセージ304を再送することができる。
【0033】
例のハンドシェーク手順300において、応答プロセス308は、第2のデバイス102-2がデバイストゥデバイス通信をサポートする場合、実施され得る。第1の肯定応答手順310において、第2のデバイス102-2は、第1のデバイス102-1が、例えば要求メッセージ304を受信することに基づいてデバイストゥデバイス通信をサポートすると判定することができる。第2のデバイス102-2が、第1のデバイス102-1からの再送された要求メッセージ(例えば、304-N)を受信する場合、第2のデバイス102-2は、第1の受信された要求メッセージ304と同様であるいずれのさらなる要求を無視することができる。第2のデバイス102-2は、将来参照するために、第2のデバイス102-2(例えば、CRM210)上に第1のデバイス102-1のデバイストゥデバイス通信設定を記憶することができる。
【0034】
第2のデバイス102-2は、要求メッセージ304と同様であるかまたは要求メッセージ304とは異なる、1つまたは複数のビット、第2のデバイス102-2によってサポートされるメッセージングプロトコルのバージョン、トーン、メッセージ、命令のセットなどを含む、第1のデバイス102-1に対する応答メッセージ312(第1の応答メッセージ312-1として300に示す)を送信することもできる。特に、第2のデバイス102-2の送受信機206は、第1のデバイス102-1から要求メッセージ304を受信することができ、第2のデバイス102-2のメッセージ初期化器214は、第1のデバイス102-1がデバイストゥデバイス通信をサポートすると判定することができる。このメッセージ初期化器214は、第2のデバイス102-2の送受信機206を使用して、第1のデバイス102-1に送信され得る応答メッセージ312を生成するようにメッセージ生成器216に指示することもできる。
【0035】
第2の受信検証手順314において、第2のデバイス102-2は、第2の継続時間にわたって応答メッセージ312(別の要求メッセージ312-Mとして300に示す、ここで、Mは、再送ごとに単調に増加する1より大きい整数値を示す)を再送することができる。なぜなら、応答の受信が、無線通信ネットワークに対して保証されない場合があるからである。第2のデバイス102-2は、デバイストゥデバイス通信が始まる(例えば、ステータスメッセージが、第1のデバイス102-1から第2のデバイス102-2において受信される)かまたは第2の継続時間が終了するまで、応答を再送することができる。応答メッセージ312の再送は、ユーザニーズに基づいて、第2の継続時間にわたって、連続的に、周期的に、所定の時間に、または断続的に実施され得る。第2の継続時間は、上記に述べた継続時間と同様であるかまたは上記に述べた継続時間とは異なる場合がある。第2のタイマーは、第1の応答メッセージ312-1の送信によって、アクティブ状態に同様にトリガーされ得る。第2のタイマーは、第2の継続時間内の時間を計数するために使用され、第2の継続時間が終了するかまたはデバイストゥデバイス通信が始まる(例えば、ステータスメッセージが、第1のデバイス102-1から受信される)まで、アクティブ状態にあるままである。
【0036】
第2の肯定応答手順316において、第1のデバイス102-1は、例えば継続時間内に応答メッセージ312を受信することに基づいて第2のデバイス102-2がデバイストゥデバイス通信をサポートすると判定することができる。この判定を行うと、第1のタイマーは、第1のデバイス102-1によって非アクティブ状態にトリガーされ得る。第1のデバイス102-1が、第2のデバイス102-2から、再送された応答メッセージ(例えば、312-M)を受信する場合、第1のデバイス102-1は、第1の受信された応答メッセージ312と同様であるいずれのさらなる応答も無視することができる。第1のデバイス102-1は、将来参照するために、第1のデバイス102-1(例えば、CRM210)上に第2のデバイス102-2のデバイストゥデバイス通信設定を記憶することができる。
【0037】
一般に、要求メッセージ304および/または応答メッセージ312は、ランダムである、予め決められる、暗号化される(例えば、プライバシーのためにエンコードされる)、および/または、送信デバイスに関する情報(例えば、識別子)を含むことができる。例のハンドシェーク手順300の第1のライフラインに関連する動作が第1のデバイス102-1によって実施されるものとして説明され、第2のライフラインに関連する動作が第2のデバイス102-2によって実施されるものとして説明されるが、一般に、第2のデバイス102-2は第1のライフラインの動作を実施することができ、第1のデバイス102-1は第2のライフラインの動作を実施することができる。
【0038】
第2のデバイス102-2がデバイストゥデバイス通信をサポートすると判定した後、第1のデバイス102-1および第2のデバイス102-2は、ステータスメッセージを交換し始めることができる。一例において、ステータスメッセージは、一部には、通話品質問題を特定し解決するために、デバイストゥデバイス通信を使用して交換され得る。しばしば、ユーザは、問題の原因または問題についての解決策を理解することなく、通話品質問題を体験する場合がある。例えば、通話は、不意に中断する場合があり、通話がなぜ終了したかおよびユーザのデバイスが問題の発生源であるか否かをユーザが思案するままにさせる。ステータスメッセージは、これらのタイプの通話品質問題に対処することができる、接続されたデバイスに関するコンテキスト情報を通信するために通話中に交換され得る。目下の例において、デバイスは、デバイストゥデバイス通信を使用して「ローバッテリ(low battery)」というステータスメッセージを送信して、中断された通話をもたらす可能性がある低レベルのバッテリ充電を他のデバイスに知らせることができる。通話が不意に終了する場合、ユーザは、ステータスメッセージにおいて受信された情報(例えば、他のデバイスが、不十分なレベルのバッテリ充電のせいで電力を喪失した)から、中断された通話の原因をよりよく理解することができる。
【0039】
ステータスメッセージは、ステータスモジュール212からの命令によって、デバイストゥデバイス通信を使用してコンピューティングデバイス102の送受信機206によって任意の時間に(例えば、周期的に、所定の時間に、間欠的に)送信され得る。ステータスメッセージは、メッセージ生成器216によって生成され得、第3者(例えば、第1のデバイス102-1および第2のデバイス102-2とは異なるエンティティ)がデバイスのステータス情報にアクセスすることを防止するために暗号化され得る。コンピューティングデバイス102は、コンピューティングデバイス102の送受信機206において任意の時間にステータスメッセージを受信することもできる。メッセージ解析器218は、暗号化されたメッセージをデコードする、ステータスメッセージ内の情報を変換する、および/またはステータスメッセージ内の情報を理解するために解析手順を実施することができる。
【0040】
一例において、第1のデバイス102-1は、デバイスのバッテリ充電レベルの変化を検出し、プロセッサ204は、デバイストゥデバイス通信を使用して通話中に、接続された第2のデバイス102-2に第1のデバイス102-1のステータス情報のこの変化を通信するようにステータスモジュール212に指示する。第1のデバイス102-1のメッセージ生成器216は、第1のデバイス102-1がローレベルのバッテリ充電を有することを第2のデバイス102-2に知らせるために、(例えば、「ローバッテリ」の)ステータスメッセージを生成することができる。第1のデバイス102-1は、送受信機206によって第2のデバイス102-2に送信されるこのステータスメッセージを暗号化することができる。第2のデバイス102-2は、暗号化されたメッセージを、送受信機206を使用して受信することができ、第2のデバイス102-2のメッセージ解析器218は、接続解析器220への入力としてメッセージをデコードすることができる。
【0041】
ディセーブリングプロセス320は、第2のデバイス102-2がデバイストゥデバイス通信をサポートしない場合に実施され得る。却下手順322において、第2のデバイス102-2は、第1のデバイス102-1からの要求メッセージ(複数可)304を無視することができる。第2のデバイス102-2がデバイストゥデバイス通信をサポートすることが可能であっても、ユーザ124(例えば、第2のユーザ124-2)は、第2のデバイス102-2に対して機能をディセーブルした可能性がある。この場合、第2のデバイス102-2は、却下手順322に示すように、要求メッセージ304を依然として無視することができる。
【0042】
時間検証手順324において、第1のデバイス102-1は、(例えば、タイマーを使用して)継続時間が終了したこと、および、応答メッセージ312が第2のデバイス102-2から受信されなかったことを判定する。この判定に基づいて、第1のデバイス102-1は、第3の肯定応答手順326において、第2のデバイス102-2がデバイストゥデバイス通信をサポートせず、ステータスメッセージの交換をディセーブルするかまたはそれを控えることができると判定することができる。デバイストゥデバイス通信機能は、例えば第1のデバイス102-1のCRM210上の第2のデバイス102-2の記憶された設定を使用して、この通話中におよび/または第2のデバイス102-2との将来の通話中に一時的にディセーブルされ得る。この機能は、例えば第3のデバイスとのデバイストゥデバイス通信を確立するときに、再びイネーブルされ得る。
【0043】
要求メッセージ304、応答メッセージ312、およびステータスメッセージは、メッセージヘッダ(例えば、RTPヘッダ拡張を使用する)および/または未使用DTMFデジット(例えば、A~Dのデジット)を利用することができる。メッセージヘッダまたは未使用DTMFデジットを使用して、例のハンドシェーク手順300の動作は、既存の規格(例えば、機械、ソフトウェア、ネットワーク)を全く修正することなくおよび/またはキャリアインフラストラクチャ(例えば、LTE、5G NR、または無線ローカルエリアネットワーク)に対する変更を全く必要とすることなく実施され得る。さらに、ステータスメッセージは、電気通信システムを動作させるキャリアネットワークによって修正またはブロックされることなくデバイス間で交換され得る。
【0044】
一例において、デバイストゥデバイス通信およびハンドシェーク手順は、少なくとも1つのRTPヘッダ拡張を含むメッセージヘッダを使用して実施され得る。電気通信システム用の3GPPによって設定された規格および仕様によれば、多くのコンピューティングデバイス102は、IPネットワークを通じてオーディオおよびビデオ情報を送出するためにRTPデータパケットをサポートする。IMSネットワークは、例えば、マルチメディアサービス(例えば、通話、テキスト、RTPメッセージ)が、IPネットワークを使用して別のデバイスに送出されることを可能にすることができる。この例において、IMSネットワークは、RTPデータパケットが、第1のコンピューティングデバイス(例えば、第1のデバイス102-1)から第2のコンピューティングデバイス(例えば、第2のデバイス102-2)に送出されることを可能にする。RTPデータパケットは、コンピューティングデバイス102間のリアルタイムデータ伝送(例えば、メディアストリーミング、遠隔会議アプリケーションなど)を可能にするエンドトゥエンドネットワークトランスポート機能を提供することができる。RTPデータパケットを使用してデータを伝送する動作は、IPネットワークにわたる迅速送出を可能にするためにデータをデータパケットに構造化することを含むことができる。データパケットを受信した後、データは、受信者コンピューティングデバイスのためのデータの滑らかに流れるストリームになるように再構築される。RTPデータパケットは、受信者コンピューティングデバイスにデータを再構築する方法を知らせるRTPヘッダを含むことができる。RTPヘッダは、例えば、ヘッダ拡張、プロトコルのバージョン、パディングバイト、貢献ソース識別、マーカ、ペイロードタイプ情報、シーケンス番号、タイムスタンプなどを含むことができる。
【0045】
RTP仕様は、理解されないRTPヘッダを無視するように受信者コンピューティングデバイスに要求する。RTPヘッダは独立した情報(例えば、RTPペイロードとは異なる)を保持するため、RTPヘッダを無視することは、データ(例えば、オーディオデータ、ビデオデータ)の処理、デコーディング、またはエンコーディングに影響を及ぼさない。メッセージ(例えば、ステータス情報を含む)は、コンピューティングデバイス102間でデータを伝送するための技術としてのRTPヘッダ拡張に含まれ得る。例のハンドシェーク手順300において、第1のデバイス102-1は、RTPヘッダ拡張を使用して要求メッセージ304(例えば、RTP要求)を送信することができる。RTP要求は、例えば、識別子(ID:identifier)、情報の長さ、およびデータを含む情報の1つまたは複数のビットを含むことができる。RTP要求の送出は、無線通信ネットワークにわたって保証されない場合があるため、第1のデバイス102-1は、或る継続時間にわたって(例えば、バンドリングに応じて20~40msごとに)RTP要求を再送することができる。RTPヘッダ拡張を使用する応答メッセージ312(例えば、RTP応答)が、継続時間内に第1のデバイス102-1において受信される場合、第1のデバイス102-1は、RTP要求を再送することを止めることができる。幾つかの場合に、RTPヘッダ拡張は、例えば未使用DTMFデジットに関してステータスメッセージを交換するための主要な技術として優先順位付けされ得る。
【0046】
デバイス間でのメッセージの交換中に、RTPヘッダ拡張は、例えば、ビットアレイで、コンピューティングデバイス102のステータスに関する情報を含むことができる。例えば、RTPヘッダ拡張に含まれるRTPメッセージは、[1011 0000 0001 0100]のビットアレイを含むことができ、第1のカルテット[1011]はデバイスステータスを指すメッセージを示し、第2のカルテット[0000]はペイロード長を指し、第3のカルテット[0001]は、新しいRTPメッセージごとに単調増加するシーケンス番号を示し、そして、第4のカルテット[0100]は、デバイスの「ローバッテリ」のメッセージを示す。任意の所与の時間に、各デバイスは、1つまたは複数のRTPメッセージを受信することができる。コンピューティングデバイス102は、受信された以前のメッセージと同様である1つまたは複数のRTPメッセージを無視することができる。結果として、コンピューティングデバイス102は、本明細書で説明する技術を使用して、通話の際に別のコンピューティングデバイスのステータスの変化を検出するためにRTPメッセージを使用することができる。
【0047】
ステータスメッセージの交換は、RTPヘッダ拡張を含むメッセージヘッダに限定されない。デバイストゥデバイス通信およびハンドシェーク手順は、未使用DTMFデジットを使用して実施され得る。電気通信システム用の3GPPによって設定された規格および仕様は、多くのコンピューティングデバイス102が、15のデジット(0~9、*、♯、A、B、C、およびD)を使用するDTMFシグナリングの使用をネゴシエートしサポートすることができることも示す。ユーザ124は、コンピューティングデバイス102のキーパッド上で12のデジット(0~9、*、および♯)のみによって制限され得るが、さらなる未使用DTMFデジットA~Dが、デバイストゥデバイス通信のために利用可能とすることができる。
【0048】
例のハンドシェーク手順300において、第1のデバイス102-1は、1つまたは複数の未使用DTMFデジットを使用して1つまたは複数の要求メッセージ304を送信する。要求は、例えば、パラメータ識別子およびパラメータ値を含むことができる。パラメータ識別子は、デジットDによって終端されるデジットAおよび/またはBによって示されるベース3でエンコードしたバージョン番号を含むことができる。パラメータ値は、例えば、第1のデバイス102-1によってサポートされるプロトコルバージョンを第2のデバイス102-2に通信することができる。デジットA~Cは、プロトコルバージョンを特定するために組み合わせて使用され得、一方、デジットDはパラメータ値の終端を特定する。例えば、第1のデバイス102-1は、第1のデバイス102-1によってサポートされるIPバージョン1.0を通信するために、要求メッセージ304において「AD」を第2のデバイス102-2に送信する。第2のデバイス102-2が、未使用DTMFデジットを使用してデバイストゥデバイス通信をサポートすると、第1のデバイス102-1が判定する場合、第1のデバイス102-1は、第2のデバイス102-2にステータス情報を通信するために文字A~Dの組み合わせを送信することができる。
【0049】
一例において、「ABBAD」のDTMFメッセージは、シーケンスの開始を特定するために第1のデジット「A」を、および、シーケンスの終了を特定するために第5のデジット「D」を含む。第2、第3、および第4のデジットは、アレイ[XYZ]を形成し、ステータスメッセージのデータを示し、ここで、Xはパラメータカテゴリを示し、Yはパラメータタイプを示し、Zはパラメータ値を示す。ステータスメッセージ「ABBAD」のデータは「BBA」を含み、ここで、X=「B」はデバイスステータスを指し、Y=「B」はネットワークカバレジを指し、Z=「A」は、不十分という品質を指す。ステータスメッセージ「ABBAD」は、デバイスが不十分なネットワークカバレジを体験していることを示す。一般に、データのアレイは、代替のアレイ(例えば、Xのアレイ、UVWXYZのアレイなど)を形成するために、3より少ないかまたは3より多い任意の量のデジットを含むことができる。未使用DTMFデジットは、通信ネットワークの輻輳を防止するために、RTPヘッダ拡張に関してステータスメッセージを交換するための2次技術として優先順位付けされ得る。未使用DTMFデジットがメッセージを交換するために使用される場合、各デバイスは、ユーザ体験を改善するために、A~DのDTMFデジットに関連する音階を奏することを控えることができる。
【0050】
デバイストゥデバイス通信は、非互換性条件であって、例えば、緊急通話、勧誘員通話、会議、単一無線音声通信継続(SRVCC:single radio voice continuity)のアクティブ状態が検出される、などを含む、非互換性条件が生じる場合、コンピューティングデバイス102によって任意の時間にディセーブルされ得る。これらの事例において、他の接続されたデバイス(例えば、緊急オペレータの固定電話)は、しばしば、通話中にステータスメッセージの交換をサポートせず、本明細書で説明する技術から利益を得ない場合がある。
【0051】
図3に示すハンドシェーク手順は、両方のデバイス(例えば、第1のデバイス102-1および第2のデバイス102-2)が共有サーバ上にある場合、同様に簡略化され得る。この場合、第1のデバイス102-1は、共有サーバに接続し、第2のデバイス102-2も共有サーバに接続されていると判定する。2つのデバイスは、共有サーバにわたってステータスメッセージを交換し始めることができる。
【0052】
通話品質問題を判定すること
ステータスメッセージは、図4に関してさらに説明されるように、例えば、無線通信ネットワークの状態(例えば、IMSネットワークの状態)、通話の品質(例えば、オーディオ品質)、通話の際の1つまたは複数のデバイスの健全性ステータス(例えば、バッテリレベル)、デバイスのユーザからの入力(例えば、触覚入力、コマンド、ユーザ設定)、カスタムメッセージなどの1つまたは複数に関するステータス情報を含むことができる。このステータス情報は、例えば、ステータスメッセージにおいて交換された情報、受信されたステータスメッセージの解析(接続解析器220によって実施される)、CRM210の1つまたは複数のセンサ208、1つまたは複数のさらなるモジュール(示さず)などによって収集された情報を使用して決定され得る。ステータスメッセージに含まれるステータス情報は、歪んだオーディオ/ビデオ信号、エコー、間欠的なオーディオ/ビデオ信号、沈黙、オーディオ信号のボリュームまたは明瞭さの変化、ビデオ信号の解像度の減少、遅延したオーディオ/ビデオ(例えば、レーテンシ、ラグ)、オーディオ/ビデオ干渉または静的ノイズ、背景ノイズ、意図的でないユーザ入力、1つまたは複数のユーザ設定、ユーザコマンド、触覚入力、音声入力、ジャスチャ入力、他のデバイスと共有するためにユーザによって選択された記憶情報(例えば、旅行情報、カレンダーイベント)、バッテリレベル、1つまたは複数のセンサのアクティブまたは非アクティブ状態、マイクロフォンのミュートステータス、スピーカのミュートステータスなどの1つまたは複数に関する情報をさらに含むことができる。ステータス情報は、加速度計を使用して決定されたユーザの活動(例えば、ウォーキング)、位置センサによって決定されたデバイスの場所、動きセンサによって決定された緊急情報(例えば、自動車衝突)などを含むこともできる。
【0053】
コンピューティングデバイス102のユーザ124は、本明細書で説明するシステム、アプリケーション、および/または機能が、ユーザ情報および/またはデバイス情報(例えば、選好、記憶情報、デバイスの目下の場所)の収集を可能にすることができるか否かおよびいつ可能にすることができるか、および、ユーザ124がサーバからコンテンツおよび/または通信情報を送信されるか否かの両方についてユーザ124が選択を行うことを可能にする制御を提供され得る。さらに、特定のデータは、個人的に特定可能な情報が除去されるように、特定のデータが記憶および/または使用される前に1つまたは複数の方法で処理され得る。例えば、ユーザ124のアイデンティティは、個人的に特定可能な情報がユーザ124について特定されることができないように処理され得る。別の例において、ユーザ124の地理的場所は一般化され得、場所情報は、ユーザ124の特定の場所が決定されることができないように(例えば、都市、便集配区域改善計画(ZIP:zone improvement plan)コード、または州レベルに対して)取得される。そのため、ユーザ124は、どんな情報が収集されるか、その情報がどのように使用されるか、およびどんな情報が、通話の際にデバイスに提供されるかを制御することができる。ステータスメッセージ内の情報は、ユーザ体験を改善するために、1つまたは複数のコンピューティングデバイス102のソフトウェアアプリケーション(例えば、フォンブックアプリケーション)によって同様に使用され得る。
【0054】
図4は、通話品質問題を特定し解決するためにステータスメッセージに含まれ得る例のステータス情報を示す。ステータス情報の例は、例の環境402、404、406、および408に示され、通話品質問題を判定するためにステータスモジュール212の接続解析器220によって使用され得る。ステータス情報は、コンピューティングデバイス102上の他のアプリケーションまたはプログラムにリンクされ得る(例えば、フォンブックアプリケーション、メッセージングアプリケーションなどと共有される)。
【0055】
例の環境402において、第1のデバイス102-1は、第2のデバイス102-2との通話中に、基地局(例えば、104)から遠い遠隔の場所(例えば、森)に移動しており、第1のデバイス102-1の不十分な接続性をもたらす。ステータスモジュール212は、第1のデバイス102-1の不十分な接続性に関するステータス情報を第2のデバイス102-2に送信して、第2のデバイス102-2のステータスモジュール212が通話品質問題を判定することを可能にすることができる。第1のデバイス102-1および/または第2のデバイス102-2の接続解析器220は、例えば、接続の以前の品質(例えば、遠隔でない場所における)と比較したときのデバイスの接続性の品質の変化(例えば、平均から不十分への)を特定することによって、第1のデバイス102-1の不十分な接続性に関連する通話品質問題を判定することができる。特に、接続解析器220は、接続性の不十分な条件が、通話品質問題に関連する所定の閾値を超えると判定することができる。一般に、接続解析器220は、経時的なデバイスの接続性の変化、所定のまたは可変の閾値を超える場合がある接続性レベル、通話の品質に関する第2のデバイス102-2からの受信されたステータスメッセージ内のステータス情報などの1つまたは複数を特定することによって、この通話品質問題を判定することができる。
【0056】
例の環境404において、基地局104は、多数のユーザデバイスに接続され、輻輳したネットワークをもたらす。第1のデバイス102-1が、この基地局104を使用してネットワーク接続を確立する場合、1つまたは複数の通話品質問題が生じる場合があり、例えば、オーディオ/ビデオコンテンツのレーテンシまたは中断された通話をもたらす。例えば、無線通信ネットワークの目下の品質に関するセンサ208からの入力に基づいて、接続解析器220は、輻輳したネットワークに関連する通話品質問題を特定することができる。第1のデバイス102-1は、例えば第2のデバイス102-2に関して電話がかけられる前に、この問題を特定することができる。通話が試みられる前に、この通話品質問題を特定することによって、第1のデバイス102-1は、成功裏の通話についての可能性に関して第1のユーザ124-1によりよく知らせることができる。
【0057】
例の環境406において、第1のユーザ124-1は、第2のユーザ124-2(例えば、ジョン)と通話中であり、第1のユーザ124-1は、第1のデバイス102-1のマイクロフォン412をユーザの手で部分的に覆うことによって通話のオーディオを意図せずに歪ませ始める。第1のデバイス102-2は、接続解析器220を使用して、このオーディオ歪みに関連する通話品質問題を判定することができる。特に、第1のデバイス102-1のセンサ208(例えば、タッチセンサ、レーダーセンサ、超音波センサ、周囲光センサ)は、マイクロフォン412のこの閉鎖をステータスモジュール212への入力として検出することができる。接続解析器220は、第1のユーザの手によるマイクロフォン412の閉鎖が、オーディオ歪みを引き起こしていると判定することができる。メッセージ生成器216は、第2のデバイス102-2がオーディオ歪みに関連する通話品質問題を局所的に判定することを可能にするため、第2のデバイス102-2にこのステータス情報を通信するために1つまたは複数のステータスメッセージを生成することができる。
【0058】
例の環境408において、第1のデバイス102-1は、第2のデバイス102-2との中断された通話をもたらす場合があるローバッテリになっている。ステータスモジュール212への入力(例えば、バッテリレベル充電情報)に基づいて、接続解析器220は、通話品質問題(例えば、中断された通話)がローバッテリのせいで起こる可能性があると判定し、ステータスモジュール212は、この通話品質問題を通信するために他のデバイスとステータスメッセージを交換し始める。
【0059】
一般に、接続解析器220は、ステータスメッセージにおいて受信された第1のデバイス102-1のステータス情報および/または第2のデバイス102-2のステータス情報を使用して、デバイスの健全性の変化、所定のまたは可変の閾値(例えば、バッテリレベル)を超える場合があるデバイス健全性レベルなどの1つまたは複数を特定することによって、通話品質問題を判定することができる。接続解析器220は、受信されたステータスメッセージからの情報、ローカルデバイスのステータス情報、および/または機械学習(ML:machine-learned)モデルを使用して通話品質問題を判定することもできる。MLモデルは、デバイスによって体験される通話品質問題の履歴に基づいてローカルデバイスにおける問題を予測することができる。MLモデルは、標準的なニューラルネットワークベースモデルとすることができ、その際、対応するレイヤが、固定側ベクトル、テキスト埋め込み、または可変長シーケンスのような入力機能を処理するために必要とされる。MLモデルは、サポートベクターマシン(SVM:support vector machine)、再帰型ニューラルネットワーク(RNN:recurrent neural network)、畳み込みニューラルネットワーク(CNN:convolutional neural network)、デンスニューラルネットワーク(DNN:dense neural network)、1つまたは複数のヒューリスティック、他の機械学習技術、その組み合わせなどの1つまたは複数として実行され得る。MLモデルは、通話の際の1つまたは複数のデバイスのステータス履歴に基づいて通話品質問題を予測するように訓練され得る。ステータス履歴は、別のデバイスから受信される1つまたは複数のステータスメッセージおよび/またはデバイスのローカルステータス情報を含むことができる。ユーザ124のステータス情報を保護するために、プライバシー設定は、図5に関して説明される。
【0060】
図5は、プライバシーオプションのユーザ選択を可能にするステータスモジュール212の例のステータス共有制御を示す。例の環境500において、ステータスモジュール212は、ユーザが、デバイストゥデバイス通信にオプトインするかまたはそこからオプトアウトするためのオプションを提供する。ユーザ124がオプトアウトする場合、却下手順322は、別の接続されたデバイスがデバイストゥデバイス通信を確立しようと試みる場合、コンピューティングデバイス102によって実施され得る。ユーザ124がデバイストゥデバイス通信にオプトインする場合、ユーザ124は、他のデバイスと共有される情報を修正するためにさらなる制御を提供され得る。例の環境502において、ユーザ124は、通話中に連絡先と共有される情報をカスタム選択することができる。ユーザ124は、全ての連絡先と情報を共有することからオプトアウトする(502に示す)場合、個々の連絡先についてユーザの共有設定をカスタマイズすることができる。例えば、ユーザ124は、通話中に情報を共有する特定の連絡先(例えば、ジョン)を選択することができる。示さないが、ユーザ124は、同様に、ステータスモジュール212によって収集される情報をモニターするために制御を提供され、コンピューティングデバイス102上に経時的に記憶される情報についての選好を設定され得る。
【0061】
接続解析器220が通話品質問題を判定した後、ステータスモジュール212は、通話品質問題を解決するためにさらなる動作を実施することができる。特に、ステータスモジュール212は、通知生成器222を使用してローカルデバイスのユーザに通話品質問題を通知することができる。一般に、通知126は、通話品質問題に関する詳細(例えば、検出されたノイズ)、各デバイスの関連するステータス情報、通話品質問題の原因、および/または問題の発生源を含むことができる。したがって、特定の通知126が、システム(例えば、2つのデバイスおよび2つのデバイス間の接続)の支配的な状態を示すことができ、接続に対する一方または両方の加入者が、通話品質問題がなぜ起こったかをよりよく理解することを可能にすることができることが認識されるであろう。これは、通話品質問題がより効率的に解決されることを可能にするおよび/またはユーザ体験を改善することができる。他の通知126は、通話が中断されることにつながったシステムの技術的状況/状態をユーザに示すことができる。とりわけ、そのような通知126は、通話に対する再始動を試みるか否かを判定するときにユーザ124のために情報を提供することができる。例えば、第2のデバイス102-2のローバッテリ状態のせいで通話が中断された可能性があることを示す通知126は、メディアセッションを即座に再始動しようと試みることが、価値がないことを第1のユーザ124-1に示すことができる。対照的に、何らかの一時的な/説明できない異常が通話を中断させたことを示す通知126は、通話を再始動しようと試みることが、価値があることを第1のユーザ124-1に知らせることができる。
【0062】
図6は、第1のデバイス102-1上に経時的に表示される通知126の例のシーケンス600を示す。この例において、第1のユーザ124-1は、第2のユーザ104-2(例えば、ジョン)を通話したいと思い、通話品質問題が経時的に生じるにつれて通知される。600の通知126は、ディスプレイ128-1上に視覚的に表示されるが、一般に、通知126は、第1のユーザ124-1に通知126を報知するために、音(例えば、音階)、振動、またはさらなる視覚的キュー(例えば、光)を含むこともできる。
【0063】
例の環境601において、第1のデバイス102-1は、「ネットワークがビジーである(network is busy)」ことを示すために、通話が確立される前(例えば、プレコール602)に、通知126-1を表示することができる。601にて、ステータスモジュール212は、無線通信ネットワークの品質に関する入力を使用して、ネットワークが、(例の環境404を参照して)目下、輻輳していると判定することができる。一般に、通知126は、例えば、問題の発生源(例えば、ネットワーク)および問題の原因(例えば、ネットワークの輻輳)に関する情報を含むことができる。
【0064】
例の環境604において、しかしながら、第1のユーザ124-1は、通話を行う(例えば、電話をかける606)ことに決める。示さないが、第1のデバイス102-1は、(ハンドシェーク手順を実施した後)この時間中、第2のデバイス102-2からステータスメッセージを受信することができる。この例において、第1のデバイス102-1は、(例の環境408を参照して)ジョンの電話がローバッテリになっていることを示す、第2のデバイス102-2からステータスメッセージを受信する。接続解析器220は、このローバッテリ状態が通話品質問題の資格があると判定し、表示用の通知126-2を生成するように通知生成器222に指示する。通知126-2は、「ジョンがローバッテリになっている(John has a low battery)」ことを第1のユーザ124-1に知らせ、第1のユーザ124-1は、第2のデバイス102-2のバッテリがより十分に充電されるまで、ジョンが通話を成功裏に確立または維持することができない可能性があると推測することができる。
【0065】
例の環境608において、しかしながら、通話は、ジョンに関して確立される。通話中610、第1のユーザ124-1は、(例の環境406を参照して)自分の手をデバイスのマイクロフォンの近くでこすることによって背景ノイズを意図せずに生成する可能性がある。接続解析器220は、ローカル入力(例えば、第1のデバイス102-1のセンサ208からの)および/または通話品質問題を示す第2のデバイス102-2からのステータスメッセージを使用して、通話品質問題(例えば、望ましくない背景ノイズ)が起こったと判定することができる。ステータスモジュール212は、第1のユーザ124-1に通知するため、「背景ノイズがあなたのデバイス上で検出された(background noise detected on your device)」という別の通知126-3を生成するために通知生成器222を使用することができる。
【0066】
例の環境612において、通話は、(例の環境402を参照して)不十分なネットワーク接続のせいで中断している。接続解析器220は、第1のデバイス102-1のローカルステータス情報(例えば、第1のデバイス102-1に関連するネットワーク接続情報)および/または第2のデバイス102-2からの直近に受信されたステータスメッセージ(例えば、通話が中断される前に、通話中610に受信された直近のステータスメッセージ)を使用して、この通話品質問題を判定することができる。「通話は不十分なネットワーク接続のせいで中断した(call dropped due to poor network connection)」という通知126-4が、ポストコール614に(例えば、通話が終了した後に)現れて、通話がなぜ中断したかを第1のユーザ124-1がよりよく理解するのを助ける。
【0067】
600の例の通知126は、ユーザに、通話品質問題の発生源および原因を通知するために使用されたが、ユーザ124は、この問題をどのように解決するかを知りたいと思う場合がある。ステータスモジュール212は、図7に関してさらに説明するように、この問題を解決するため最良の解決策を決定するために、推奨生成器224を使用することができる。
【0068】
通話品質問題を解決すること
図7は、通話品質問題を解決するためにコンピューティングデバイス102上に表示される推奨701の例のシーケンス700を示す。例のシーケンス700は、それぞれ、例の環境601、604、608、および612に対応する例の環境702、704、706、および708を含む。推奨701は、ステータスモジュール212の推奨生成器224によって決定された、通話品質問題を解決するのを助けるためにユーザ124が実施することができる1つまたは複数の提案された行為を含むことができる。推奨生成器224は、プリセットされた解決策、内部論理システム、ヒステリシス論理、またはMLモデルに基づいて通話品質問題に対する考えられる解決策を決定することができる。考えられる解決策は、1つまたは複数のデバイスの目下のステータス(例えば、1つまたは複数のセンサ、アプリケーション、またはプログラムのユーザ設定および/またはアクティブまたは非アクティブ状態)を条件とすることができる。例えば、ユーザ124が無線ローカルエリアネットワークに接続される場合、推奨生成器224は、推奨701を決定するときにこの設定を含むことができる。
【0069】
第1の時間に、第1のユーザ124-1(例えば、ジェーン)は、第2のユーザ124-2(例えば、ジョン)に関して電話をかけることを意図するが、ステータスモジュール212は、ネットワークがビジーであると判定する。通知126-1(601に示す)は、ジェーンに輻輳したネットワークを警告し、例の環境702において、推奨701-1は、WiFi(登録商標)コーリングに切り換えることを提案する。この例において、推奨701-1は、例の環境601の通知126-1と別個に示された。しかしながら、通知126-1および推奨701-1は、ディスプレイ128-1上に、同時に現れる(例えば、ジェーンに対する1つのメッセージまたは別個のメッセージとして)または異なる時間に現れることができる。推奨701は、通話品質問題が解決されるかまたは期間が終了するまで、或る期間、現れることができる。推奨701が、通知126が表示される時間と異なる時間に表示される場合、着信音または振動が、ユーザ124に推奨701を報知するためにトリガーされ得る。示さないが、各推奨701は、関連するユーザ設定、アプリケーション、またはプログラムに対する迅速アクセスのためのショートカットを提供することもできる。例えば、702の推奨701-1は、正しい設定をアクティブ化するために第1のデバイス102-1をナビゲートするようにジェーンに要求する代わりに、WiFi(登録商標)コーリングを迅速にアクティブ化するためにショートカット(例えば、アイコン、ボタン、リンク)を含むことができる。したがって、幾つかの例において、推奨701に関するユーザ選択(例えば、推奨701に含まれるショートカット)が、推奨された行為/動作がデバイスによって実施されるようにさせることができることが認識されるであろう(または、換言すれば、デバイスは、推奨された行為/動作の実施を引き起こすことによって推奨701に関するユーザ選択に応答することができる)。
【0070】
第2の時間に、第1のデバイス102-1は、第2のデバイス102-2に対して電話をかけており606、ステータスモジュール212は、第2のデバイス102-2がローバッテリになっていると判定する。例の環境704において、ジョンのデバイスを充電するようジョンに求めることを提案する推奨701-2が、第1のデバイス102-1上に現れる。示さないが、この推奨701-2は、例えば、テキストメッセージを作成し、推奨701-2をテキストメッセージに書き直し、テキストメッセージをジョンに送信するようにジェーンに要求することなく、ジェーンが推奨701-2のテキストメッセージをジョンに迅速に送信することを可能にするシュートカットを含むことができる。
【0071】
第3の時間に、第1のデバイス102-1は、第2のデバイス102-2と通話中であり、通知126-3は、背景ノイズが第1のデバイス102-1上で検出されたことをジェーンに知らせる。例の環境706において、推奨701-3は、ノイズがあるか自分のデバイスをチェックするようにジェーンに提案する。1つまたは複数のセンサ208からの入力を使用して、推奨701-3は、より詳細な命令(例えば、マイクロフォンが、妨害がないことをチェックする)を含むことができる。通話品質問題が、例えば、マイクロフォンまたはスピーカに関連する場合、推奨701-3は、ジェーンがマイクロフォンまたはスピーカ試験(例えば、較正、再構成)を迅速に実施することを可能にするためにショートカット(示さず)を含むことができる。
【0072】
第4の時間に、第2のデバイス102-2との通話は、不十分なネットワーク接続のせいで中断している。例の環境708において、推奨701-4は、後でジョンにコールバックするようリマインダーを設定するようにジェーンを促す。ジェーンが後でコールバックすべきであることをこの推奨701-4が提案することが推測され得る。示さないが、推奨701-4は、後のためにリマインダーを迅速に設定するためにショートカットを含むことができる。リマインダーを設定するとき、ステータスモジュール212は、コールバックする時間を最適化するために、記憶された情報(例えば、カレンダーイベント)を利用することができる。例えば、ジェーンが、(例えば、図5に関して説明したプライバシー設定を使用して)記憶されたカレンダーイベントをステータスモジュール212と共有することにオプトインする場合、推奨生成器224は、ジェーンのカレンダー内の計画されたイベントと競合しないコールバックに対する将来の時間を提案することができる。他の推奨701は、異なる通信方法によって(例えば、電子メールまたはテキストメッセージによって)ジョンと連絡をとるための、または、異なるデバイスを使用して(例えば、異なる番号、ハンドセット、ランドラインを使用して)ジョンと連絡をとるためのユーザ選択可能なオプションを含むことができる。そのような推奨がユーザ124によって選択されると、デバイスは、推奨された行為を実施する、または、ユーザ124がそれを実施するのを支援することができる(例えば、例えば受信者としてジョンが事前選択された状態の電子メールまたはメッセージングアプリケーションを開けることによって)。通話品質問題を解決するための技術は、図7に示す例に限定されず、これらの技術は、図8に関してより一般的に説明される。
【0073】
例の方法
図8は、通話品質問題を解決するための例の方法800を示す。方法800は、実施される動作(または行為)のセットとして示され、動作が本明細書で示される順序または組み合わせに必ずしも限定されない。さらに、動作の1つまたは複数の任意の動作は、豊富なさらなるおよび/または代替の方法を提供するために、反復、結合、再編成、またはリンクされ得る。以下の議論の複数の部分において、図1~7で詳述する環境およびエンティティに対して参照が行われ得、それらに対する参照は例のためにだけ行われる。技術は、1つのコンピューティングデバイス102上で動作する1つまたは複数のエンティティによる実施に限定されない。さらに、例の方法800は、通話の際に任意のコンピューティングデバイス102によって実施され得る。
【0074】
802にて、第1のコンピューティングデバイスは、無線通信ネットワークにおける登録を要求する。例えば、第1のデバイス102-1は、図1の例の環境100に示すように基地局104を使用してコアネットワーク112に対して(例えば、無線リンク110を使用して)ネットワーク接続を確立する。コアネットワーク112は、音声、画像、ビデオ、テキスト、メッセージング、および同様なもののために他のネットワークとインタフェースすることができるサービスをサポートするIMSネットワークを含むことができる。
【0075】
804にて、第1のコンピューティングデバイスは、第2のコンピューティングデバイスとの無線通信ネットワークを通じたリアルタイムパーソントゥパーソンメディアセッションを確立する。例えば、第1のデバイス102-1は、第2のデバイス102-2とのIMSネットワークを通じた通話を確立する。通話は、例えば、オーディオ通話、ビデオ通話、共有サーバ上での接続、VoLTE通話、VoIP通話、VoNR通話、またはVoWiFi通話などを含むことができる。図1において、第1のデバイス102-1および第2のデバイス102-2は共に、通話中にデバイストゥデバイス通信(例えば、ステータスメッセージの交換)をサポートする。しかしながら、第1のデバイス102-1は、第2のデバイス102-2が、図3の例のハンドシェーク手順300を使用してデバイストゥデバイス通信をサポートするか否かを判定することができる。
【0076】
806にて、第1のコンピューティングデバイスは、第2のコンピューティングデバイスからステータスメッセージを受信する。例えば、第1のデバイス102-1は、ハンドシェーク手順中に確立されたデバイストゥデバイス通信を使用して、第2のデバイス102-2からのステータスメッセージを送受信機206において受信する。このステータスメッセージは、第1のデバイス102-1が通話品質問題を特定し解決することを可能にするために、第2のデバイス102-2に関するステータス情報(例えば、デバイス健全性情報)を含むことができる。
【0077】
808にて、リアルタイムパーソントゥパーソンメディアセッションの通話品質問題が、第2のコンピューティングデバイスのデバイス健全性情報に基づいて第1のコンピューティングデバイスによって判定される。例えば、通話の通話品質問題は、ステータスメッセージにおいて受信された第2のデバイス102-2のステータス情報に基づいて第1のデバイス102-1のステータスモジュール212の接続解析器220によって判定される。特に、接続解析器220は、第1のユーザ124-1に詳細情報を提供するために、通話品質問題の原因および発生源(例えば、第2のデバイス102-2)を決定することができる。ステータスメッセージにおいて受信されたステータス情報に一部には基づいて通話品質問題を判定することは、図4に関して詳細に説明される。
【0078】
810にて、第1のコンピューティングデバイスは、第1のコンピューティングデバイスのユーザに通話品質問題を知らせるための通知を生成する。例えば、第1のデバイス102-1のステータスモジュール212の通知生成器222は、第1のユーザ124-1に通話品質問題を知らせるための通知126を生成する。例の通知126は、図6の例のシーケンス600に示される。
【0079】
812にて、第1のコンピューティングデバイスは、通知を使用して第1のコンピューティングデバイスのユーザに通知する。例えば、第1のデバイス102-1は、例えば、ディスプレイ128-1上に通知126を表示することによって、第1のユーザ124-1に警告するために音階を奏することによって、および/または第1のデバイス102-1のさらなる視覚的アラート(例えば、光)をトリガーすることによって第1のユーザ124-1に通知する。
【0080】
例のコンピューティングシステム
図9は、通話品質問題を解決する技術を具現化する、または、その技術の使用を可能にする技術が実行され得る例のコンピューティングシステム900を示す。例のコンピューティングシステム900は、任意のタイプのクライアント、サーバ、および/または図2を参照して説明するコンピューティングデバイスとして実行され得る。
【0081】
コンピューティングシステム900は、デバイスデータ902(例えば、受信されたデータ、受信されているデータ、ブロードキャストのためにスケジュールされたデータ、データのデータパケット)を含むことができる。デバイスデータ902または他のデバイスコンテンツは、デバイスの構成設定、デバイス上に記憶されたメディアコンテンツ、および/またはデバイスのユーザに関連する情報を含むことができる。コンピューティングシステム900上に記憶されたメディアコンテンツは、任意のタイプのオーディオ、ビデオ、テキスト、および/または画像データを含むことができる。コンピューティングシステム900は、任意のタイプのデータ、メディアコンテンツ、および/または入力がそれによって受信され得る1つまたは複数のデータ入力904を含むことができ、1つまたは複数のデータ入力904は、ユーザ選択可能入力(明示的なまたは暗黙的な)、メッセージ、ミュージック、テレビジョンメディアコンテンツ、記録されたメディアコンテンツ、ならびに、任意のコンテンツおよび/またはデータ源から受信される任意の他のタイプのオーディオ、ビデオ、テキスト、および/または画像データを含む。
【0082】
コンピューティングシステム900は、通信インタフェース906を含むこともでき、通信インタフェース906は、シリアルおよび/またはパラレルインタフェース、無線インタフェース、任意のタイプのネットワークインタフェース、モデム、および任意の他のタイプの通信インタフェースのうちの任意の1つまたは複数として実行され得る。通信インタフェース906は、コンピューティングシステム900間の接続および/または通信リンク、ならびに、他の電子、コンピューティング、および通信デバイスが、それによってコンピューティングシステム900とデータを通信する通信ネットワークを提供することができる。
【0083】
コンピューティングシステム900は、1つまたは複数のプロセッサ908(例えば、マイクロプロセッサ、コントローラ、および同様なもののうちの任意のもの)を含むことができ、1つまたは複数のプロセッサ908は、種々のコンピュータ実行可能命令を処理して、コンピューティングシステム900の動作を制御し、通話品質問題を解決するための技術、または、通話品質問題を解決することがそこで具現化され得る技術を可能にする。代替的にまたは付加的に、コンピューティングシステム900は、910にて一般に特定される処理および制御回路に関連して実行される、ハードウェア、ファームウェア、または固定論理回路部の任意の1つまたは組み合わせによって実行され得る。示さないが、コンピューティングシステム900は、デバイス内の種々のコンポーネントを結合するシステムバスまたはデータ転送システムを含むことができる。システムバスは、メモリバスまたはメモリコントローラ、ペリフェラルバス、ユニバーサルシリアルバス、および/または種々のバスアーキテクチャの任意のバスアーキテクチャを利用するプロセッサまたはローカルバスを含む異なるバス構造の任意の1つまたは組み合わせを含むことができる。
【0084】
コンピューティングシステム900は、永続的および/または非一時的データストレージ(例えば、単なる信号伝送と対照的に)を可能にする1つまたは複数のメモリデバイスを含むコンピュータ可読媒体210をさらに含むことができ、その例は、ランダムアクセスメモリ(RAM)、不揮発性メモリ(例えば、読み出し専用メモリ(ROM)、フラッシュメモリ、EPROM、EEPROMなどの任意の1つまたは複数)、およびディスクストレージデバイスを含む。ディスクストレージデバイスは、ハードディスクドライブ、記録可能および/または再書き込み可能コンパクトディスク(CD)を含む任意のタイプの磁気または光ストレージデバイス、任意のタイプのデジタル多用途ディスク(DVD)、ならびに同様なものとして実行され得る。コンピューティングシステム900は、大容量ストレージメディアデバイス(ストレージメディア)912を含むこともできる。
【0085】
コンピュータ可読媒体210は、デバイスデータ902、ならびに、種々のデバイスアプリケーション914、および、コンピューティングシステム900の動作態様に関連する任意の他のタイプの情報および/またはデータを記憶するデータストレージ機構を提供することができる。例えば、オペレーティングシステム916は、コンピュータ可読媒体210によってコンピュータアプリケーションとして維持され、プロセッサ908上で実行される。デバイスアプリケーション914は、デバイスマネジャを含むことができ、デバイスマネジャは、任意の形態の制御アプリケーション、ソフトウェアアプリケーション、信号処理および制御モジュール、特定のデバイスに固有のコード、特定のデバイス用のハードウェア抽象化レイヤなどを含む。コンピュータ可読媒体210のステータスモジュール212を使用して、コンピューティングシステム900は、通話中に通話品質問題を特定し解決することができる。
【0086】
むすび
通話品質問題を解決するための技術およびデバイスが、機能および/または方法に特有の言語で説明されたが、添付請求項の主題が、説明される特定の機能または方法に必ずしも限定されないことが理解される。むしろ、特定の機能または方法は、通話品質問題を解決する例の実行態様として開示される。
【0087】
幾つかの例が以下で説明される。
例1:第1のコンピューティングデバイスによって実施される方法であって、無線通信ネットワークにおいて登録を要求することを含む。方法は、無線通信ネットワークにおいて登録を受信することに応答して、第2のコンピューティングデバイスと無線通信ネットワークを通じてリアルタイムパーソントゥパーソンメディアセッションを確立することを含む。方法は、第2のコンピューティングデバイスからステータスメッセージを受信することを含む。ステータスメッセージは第2のコンピューティングデバイスのデバイス健全性情報を含む。デバイス健全性情報はリアルタイムパーソントゥパーソンメディアセッションの品質を示す。方法は、第2のコンピューティングデバイスのデバイス健全性情報に基づいてリアルタイムパーソントゥパーソンメディアセッションの通話品質問題を判定することを含む。方法は、リアルタイムパーソントゥパーソンメディアセッションの通話品質問題を判定することに応答して、第1のコンピューティングデバイスのユーザにリアルタイムパーソントゥパーソンメディアセッションの通話品質問題を知らせるための通知を生成することを含む。方法は、通知を使用して第1のコンピューティングデバイスのユーザに通知することを含む。
【0088】
例2:例1に記載された方法であって、リアルタイムパーソントゥパーソンメディアセッションの通話品質問題の原因を決定するために第2のコンピューティングデバイスのデバイス健全性情報を利用することをさらに含む。方法は、原因を利用して、第1のコンピューティングデバイスのユーザが、通話品質問題を解決するための推奨を決定することをさらに含む。推奨は、ユーザが実施するための推奨タスクを含む。方法は、第1のコンピューティングデバイスのユーザに推奨を通知することをさらに含む。
【0089】
例3:先行する例のいずれかに記載された方法であって、第1のコンピューティングデバイスのデバイス健全性情報を決定することを含む。方法は、第1のコンピューティングデバイスのデバイス健全性情報に基づいてリアルタイムパーソントゥパーソンメディアセッションの第2の通話品質問題を判定することを含む。方法は、リアルタイムパーソントゥパーソンメディアセッションの第2の通話品質問題を判定することに応答して、第1のコンピューティングデバイスのユーザにリアルタイムパーソントゥパーソンメディアセッションの第2の通話品質問題を知らせるための第2の通知を生成することを含む。方法は、第1のコンピューティングデバイスのユーザにリアルタイムパーソントゥパーソンメディアセッションの第2の通話品質問題を通知することを含む。
【0090】
例4:例3に記載された方法であって、リアルタイムパーソントゥパーソンメディアセッションの第2の通話品質問題を判定することに応答して、第1のコンピューティングデバイスのデバイス健全性情報を含む第2のステータスメッセージを生成することをさらに含む。方法は、第2のコンピューティングデバイスのユーザが第2の通話品質問題を通知されることを可能にするために第2のコンピューティングデバイスに第2のステータスメッセージを送信することをさらに含む。
【0091】
例5:例2~例4のいずれかに記載された方法であって、第1のコンピューティングデバイスのユーザについての推奨は、ユーザが実施するための推奨されたタスクの実施を促進させるためにショートカットを含む。
【0092】
例6:例3~例5のいずれかに記載された方法であって、第3者が第1のコンピューティングデバイスのステータス情報にアクセスすることを防止するために、第2のステータスメッセージをエンコードすることをさらに含む。第3者は、第1のコンピューティングデバイスとは異なり、また、第2のコンピューティングデバイスとは異なる。
【0093】
例7:例3~例6のいずれかに記載された方法であって、第1のコンピューティングデバイスのデバイス健全性情報を決定することは、無線通信ネットワークの状態を決定すること、リアルタイムパーソントゥパーソンメディアセッションの品質を決定すること、現時点における第1のコンピューティングデバイスの健全性ステータスを決定すること、または、ユーザからの第1のコンピューティングデバイスへの少なくとも1つの入力を検出することのうちの1つを含む。
【0094】
例8:例3~例7のいずれかに記載された方法であって、第1のコンピューティングデバイスのデバイス健全性情報の決定を可能にするために、第1のコンピューティングデバイスの少なくとも1つのセンサから取得されるコンテキスト情報を利用することをさらに含む。
【0095】
例9:例3~例8のいずれかに記載された方法であって、より早い時点における第1のコンピューティングデバイスのステータス情報と比較したときの、現時点における第1のコンピューティングデバイスのステータス情報の変化を決定することをさらに含む。方法は、第1のコンピューティングデバイスのステータス情報の決定された変化に基づいて第2のコンピューティングデバイスに送信するために第3のステータスメッセージを生成することをさらに含む。方法は、第2のコンピューティングデバイスが、リアルタイムパーソントゥパーソンメディアセッションの通話品質問題を解決することを可能にするために、第2のコンピューティングデバイスに第3のステータスメッセージを送信することをさらに含む。
【0096】
例10:例3~例9のいずれかに記載された方法であって、第2の通話品質問題は、機械学習モデルによって予測される。
【0097】
例11:先行する例のいずれかに記載された方法であって、ハンドシェーク手順を使用して、リアルタイムパーソントゥパーソンメディアセッション中にステータスメッセージを交換するために、デバイストゥデバイス通信を確立することをさらに含む。ハンドシェーク手順は、無線通信ネットワークを通して第2のコンピューティングデバイスに要求メッセージを送信することを含む。送信された要求メッセージは、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換を要求する。または、ハンドシェーク手順は、無線通信ネットワークを通して第2のコンピューティングデバイスから要求メッセージを受信することを含む。受信された要求メッセージは、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換を要求する。
【0098】
例12:例11に記載された方法であって、ハンドシェーク手順は、第2のコンピューティングデバイスに要求メッセージを送信することに応答して、無線通信ネットワークを通して第2のコンピューティングデバイスから応答メッセージを受信することをさらに含む。受信された応答メッセージは、第2のコンピューティングデバイスが、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換をサポートすることを示す。または、ハンドシェーク手順は、第2のコンピューティングデバイスから要求メッセージを受信することに応答して、無線通信ネットワークを通して第2のコンピューティングデバイスに応答メッセージを送信することをさらに含む。送信された応答メッセージは、第1のコンピューティングデバイスが、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換をサポートすることを示す。
【0099】
例13:例11または例12に記載された方法であって、A、B、C、またはDのうちの1つまたは複数のデュアルトーンマルチ周波数、DTMF、デジットを使用して、第2のコンピューティングデバイスが、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換をサポートするか否かを判定するためにハンドシェーク手順を実施することをさらに含む。方法は、第1のコンピューティングデバイスのステータス情報を含むDTMFステータスメッセージを生成することをさらに含む。DTMFステータスメッセージは、A、B、C、またはDのうちの1つまたは複数のDTMFデジットを使用する。方法は、A、B、C、またはDのうちの1つまたは複数のDTMFデジットを使用して、第2のコンピューティングデバイスが、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換をサポートすると判定することに応答して、無線通信ネットワークを通して第2のコンピューティングデバイスにDTMFステータスメッセージを送信することをさらに含む。
【0100】
例14:例11または例12に記載された方法であって、リアルタイムトランスポートプロトコル、RTP、ヘッダ拡張を使用して、第2のコンピューティングデバイスが、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換をサポートするか否かを判定するためにハンドシェーク手順を実施することをさらに含む。方法は、第1のコンピューティングデバイスのステータス情報を含むRTPステータスメッセージを生成することをさらに含む。RTPステータスメッセージは、RTPヘッダ拡張を使用する。方法は、RTPヘッダ拡張を使用して、第2のコンピューティングデバイスが、第2のコンピューティングデバイスと第1のコンピューティングデバイスとの間でのステータスメッセージの交換をサポートすると判定することに応答して、無線通信ネットワークを通して第2のコンピューティングデバイスにRTPステータスメッセージを送信することをさらに含む。
【0101】
例15:先行する例のいずれかに記載された方法であって、メディッセッションは、オーディオ通話、ビデオ通話、共有サーバ上での接続、VoLTE通話、VoIP通話、VoNR通話、またはVoWiFi通話のうちの1つを含む。
【0102】
例16:コンピューティングデバイスであって、少なくとも1つのプロセッサと、命令を含むコンピュータ可読記憶媒体とを備える。命令は、プロセッサによる実行に応答して、例1~例15に記載された方法のうちのいずれか1つの方法を実施するようにコンピューティングデバイスに指示するためのものである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
【国際調査報告】