シームレスな通話移行

 

異なるタイプの通話をシームレスに移行するための様々なユーザインタフェース及び他の技術を実装することができる。この技術は、単一の通話について、ある通話タイプから別の通話タイプへアップグレードされるという印象を与えるように実装され得る。シームレスな通話移行が可能であるとき、アクティブ化のために適切なユーザインタフェースコールが現れるように、新たなアプリケーションが登録され得る。したがって、第三者アプリケーションのための移行をサポートすることができる。クロスプラットフォームの実装をサポートすることができる。

 

 

モバイルフォンは、今では、多様な通信モードを提供する機能及びアプリケーションを有する。例えば単一のデバイスは現在、従来的な電話の通話、ボイスオーバー・インターネットプロトコル(VoIP)通話、ビデオ通話及び同様のものをサポートすることができる。しかしながら、そのような機能は、特に、あまり良く統合されておらず、新たなユーザは、そのような機能がユーザ自身にとって利用可能であることに気付かないこともあり得る。
ユーザは、異なる通信モードを利用しようとするときにハードルに直面する可能性があるので、改善の余地がある。
この発明の概要の記載は、下記の発明の詳細な説明で更に説明される概念の選択を簡略化した形で紹介するために提供される。この発明の概要の記載は、特許請求に係る主要な特徴又は本質的な特徴を特定するようには意図されておらず、また特許請求に係る主題の範囲を限定するよう使用されることも意図されていない。
本技術は、少なくとも部分的に通信デバイスによって実施される方法を含むことができ、当該方法は:通信デバイスで第1の通話タイプの第1の通話が実施されている間に、第2の通話タイプの第2の通話へのシームレスな移行(transition)が可能であるかどうかを判断するステップであって、当該シームレスな移行が可能であるかどうかを判断するステップは、第2の通話タイプの通信アプリケーションが前記通信デバイスで利用可能であるかどうかを確認することを含むステップと;シームレスな移行が可能であると判断したことに応答して、シームレスな移行へのユーザインタフェースオプションを提示するステップと;ユーザインタフェースオプションのアクティブ化に応答して、第2の通話タイプの第2の通話へシームレスに移行するステップと;を備える。
本技術は、通信デバイスを含むことができ、当該通信デバイスは:1つ以上のプロセッサと;実行可能なオーディオ通話アプリケーションと、実行可能なビデオ通話アプリケーションと、該実行可能なビデオ通話アプリケーションがシームレスな移行をサポートするかどうかを示すアプリケーション登録情報とを記憶するメモリと;通話をオーディオ通話アプリケーションからビデオ通話アプリケーションへシームレスに移行するように構成される、通話コントローラと;を備える。
本技術は、コンピューティングシステムに方法を実行させるコンピュータ実行可能命令をエンコードした1つ以上のコンピュータ読取可能記憶媒体を含むことができ、上記方法は:リモートデバイスとのオーディオ通話中に、ネットワーク状態がビデオ通話をサポートするかどうか判断し、ビデオ通話へのシームレスな移行をサポートする通信アプリケーションがローカルの通信デバイスに登録されていることを確認し、リモートデバイスが、ビデオ通話アプリケーションからのビデオ通話をサポートすることを検証するステップと;ネットワーク状態がビデオ通話をサポートし、ビデオ通話へのシームレスな移行をサポートする通信アプリケーションがローカルの通信デバイスに登録されており、リモートデバイスがビデオ通話アプリケーションによるビデオ通話をサポートすると判断したことに応答して、ビデオ通話アプリケーションを介して、リモートデバイスとのビデオ通話を開始するステップと;ビデオ通話のオーディオを抑制するステップと;ビデオ通話の接続を検証したことに応答して、オーディオ通話をビデオ通話へシームレスに移行するステップと;を備え、シームレスに移行するステップは、i)ビデオ通話のオーディオを抑制解除することと;ii)ビデオ通話のビデオを表示することと;iii)オーディオ通話を切断(drop)することと;を含む。
本明細書で説明されるように、所望のとおりに、様々な他の特徴及び利点を本技術に組み込むことができる。
シームレスな通話移行を実装する例示のシステムのブロック図である。 シームレスな通話移行を実装する例示の方法のフローチャートである。 シームレスな通話移行が可能であるかどうかを判断するよう構成される例示のシステムのブロック図である。 シームレスな通話移行が可能であるかどうかを判断する例示の方法のフローチャートである。 シームレスな通話移行を実装する例示の通話進行ユーザインタフェースのワイヤフレームである。 通話を移行させる例示の方法のフローチャートである。 シームレスな通話移行を実現する通信アプリケーションを登録する例示の方法のフローチャートである。 優先通信アプリケーションを記憶するテーブルのブロック図である。 通話タイプについて、優先アプリケーションを選択するための例示の設定ユーザインタフェースのワイヤフレームである。 説明される一部の実施形態を実装することができる例示のコンピューティングシステムの図である。 本明細書で説明される技術に使用することができる例示のモバイルデバイスを示す図である。 本明細書で説明される技術と関連して使用することができる例示のクラウドサポート環境を示す図である。
例1 − 例示の概要
本明細書で説明される技術は、種々のシームレスな通話移行シナリオに使用することができ、この技術の採用は、異なる通話タイプにより通信するための改善された技術を提供することができる。ユーザインタフェースは、シームレスな通話移行をより良く容易にすることができる。本明細書で説明される他の特徴は、ユーザプリファレンスに対して通話経験をカスタマイズするように実装され得る。その結果、通話タイプ間のよりスムーズな移行による、全体的により優れたユーザ経験がもたらされ得る。
さらに、本技術は、様々な通信アプリケーションをサポートし、クロスプラットフォームのシームレスな通話移行を実装することができる。
本明細書で説明されるように、様々な他の特徴を実装し、組み合わせることができる。
例2 − シームレスな通話移行を実装する例示のシステム
図1は、本明細書で説明されるようなシームレスな通話移行を実装する例示のシステム100のブロック図である。
コンテキストの目的で、図1は、通信デバイス110が、1つ以上のネットワーク180を介して別の(例えばリモートの)通信デバイス190との通信に関与することを示している。
この例では、通信デバイス110は、通話コントローラ120及び連絡先(contact)データベース125を含む。移行構成データ130は、特定の通話タイプでの使用についての優先アプリケーション(preferred application)を含むことができる。通話移行状態137は、本明細書で説明されるように、通話移行の状態を追跡することができる。
通信デバイス110は、別の通信デバイス190との異なる通話タイプの2つの同時の通話172、174をサポートすることができる。図示されるように、これらの通話は、2つの異なるアプリケーション、すなわち、対となるアプリケーション140Bと通信する電話通話アプリケーション140Aと、対となるアプリケーション145Bと通信する別の(例えば電話以外の通話)通信アプリケーション145Aとによってホストされ得る。異なるアプリケーション140A、145Bは、異なるアプリケーションタイプのものとすることができる。本明細書で説明されるように、クロスプラットフォームのオペレーションをサポートすることができる。通話は、1つ以上のネットワーク180を通過することができる。例えば通話172、174は、同じ又は異なるネットワーク180上で起こり得る。通話は、異なる物理又は論理通信チャネルを通過することができる。
本明細書で説明されるように、2つの通話172、174の間の移行をシームレスに実行して、単一の通話に関与する(例えば通話又は通信が中断されない)という印象を与えることができる。第2の通話をバックグラウンドで開始すること、第1の通話を維持すること、第2の通話のオーディオを抑制すること、第2の通話を、第2の通話として表すことを抑止すること及び最終的に第2の通話へ移行することといった様々な技術を適用して、シームレスな通話移行を実装することができる。
様々なコンポーネントを別個のボックスに図示しているが、実際には、コンポーネントの境界は異なってよい。例えばコンポーネントを、電話のオペレーティングシステム、通話のコントローラ等の一部として提供することができる。本技術を実装しつつ、他の配置も可能である。
実際には、システム100のような、本明細書で示されるシステムは、追加の機能、更なる通信アプリケーション等により、より複雑にされる可能性もある。
本明細書で説明されるシステム100及び他のシステムのいずれかを、以下で説明される(例えば1つ以上のプロセッサとメモリ等を備える)コンピューティングシステム又はモバイルデバイスのような、本明細書で説明されるハードウェアコンポーネントのいずれかとともに実装することができる。本明細書の例のいずれかにおいて、入力、出力、プリファレンス及びアプリケーションを、1つ以上のコンピュータ読取可能記憶媒体又はコンピュータ読取可能記憶デバイスに格納することができる。本明細書で説明される技術は、オペレーティングシステム又はハードウェアの仕様に対して一般的であってよく、説明される特徴を利用するよう全ての様々な環境において適用され得る。
例3 − シームレスな通話移行を実装する方法
図2は、シームレスな通話移行を実装する例示の方法200のフローチャートであり、例えば図1に示されるシステムにおいて実装され得る。
方法200は典型的に、(例えば電話通話アプリケーションによる)第1の通話が既に確立された後に実行される。実際には、第1の通話を実施している間に通話進行ユーザインタフェースが表示される。
210において、(例えば第1の通話とは異なる)第2の通話タイプの第2の通話へのシームレスな通話移行が可能であるかどうかを判断する。そのような判断は、第1の通話タイプの第1の通話を実施している間に行われ得る。本明細書で説明されるように、そのような判断は、他の通信デバイスの能力、ネットワーク状態等に基づくことができる。この時点では、第2の通話を確立する必要はない。
220において、シームレスな通話移行が可能であるという判断に応答して、通信デバイスのユーザインタフェース内に、シームレスな通話移行を開始するためのオプションが提示される。本明細書で説明されるように、そのようなオプションは、シームレスな通話移行が可能であるという判断があるとイネーブルされるグラフィカルなボタンの形をとることができる。このオプションは、(例えば第1の通話を実施している間に)通話進行ユーザインタフェースの一部として提示され得る。
図示されていないが、方法は、本明細書で説明されるように、他の通信デバイスから同意(consent)を取得することを含むことができる。
230において、ユーザインタフェースのオプションのアクティブ化に応答して、第1の通話タイプの第1の通話が、第2の通話タイプの第2の通話へシームレスに移行される。第1の通話を維持しつつ、第2の通話を(例えば移行プロセスの一部として又は事前に)確立することができる。したがって、通信デバイスのユーザにとって、2つの通話が1つ(例えば中断されない)の通話であるように見える。典型的なシナリオは、電話通話を(例えばビデオを伴っても、伴わなくてもよい)VoIP通話に移行させるが、本明細書で説明されるように他の移行も可能である。
シームレスな移行の間、同じ(例えば他の)通信デバイスとの2つの通話を同時に維持することができる。
シームレスな移行の間に、様々な技術を使用することができる。例えば第2の通話を開始し、オーディオを抑制し、接続を確認することができる。続いて、オーディオを抑制解除して、第1の通話を切断することができる。
第2の通話への移行の後、第2のタイプの通話に利用可能な全ての特徴を、利用可能にすることができる。本明細書で説明されるように、そのような特徴は、ビデオ、画面共有、あるいは第2の通話を編成する通信アプリケーションによって提供される他の機能を含むことができる。したがって、ユーザインタフェースは、そのような特徴を提供又は示すようにアップグレードされ得る。
方法200の典型的な使用ケースは、通話を、従来的な(例えば回路交換式、セルラ等)電話の通話による電話通話から、ボイスオーバー・インターネットプロトコル(VoIP)の通話に移行させることである。VoIP通話は、所望のとおりに、ビデオ及び他の特徴をサポートすることができる。しかしながら、本技術は、他の通話タイプの間の移行又は他の方向の移行もサポートすることができる。
本明細書で説明される方法200及び他の方法のいずれかを、1つ以上のコンピュータ読取可能媒体(例えばストレージ又は他の有形の媒体)に記憶されるか、1つ以上のコンピュータ読取可能記憶デバイスに記憶される、(例えばコンピューティングシステムに方法を実行させる)コンピュータ実行可能命令によって実行することができる。
例4 − シームレスな通話移行を実装する例示の通信デバイス
図3は、シームレスな通話移行が可能であるかどうかを判断するように構成される例示のシステム300を示すブロック図である。この例では、通信デバイス305(例えば図1の通信デバイス110)は、電話通話アプリケーション340A、1つ以上の通信アプリケーション345A〜349A、連絡先データベース325及びネットワーク状態インジケータ355を備える。
様々な技術を使用して、シームレスな通話移行が可能であるかどうかを判断することができる。一部の場合には、様々な異なる通話タイプがサポートされることがあり、上記の判断を、異なる通話タイプについて個々に行うことができる(例えばビデオ通話へのシームレスな移行は可能ではないが、ビデオを伴わないVoIPへのシームレスな移行は可能であることがある)。
本明細書で説明されるように、特定の通話タイプへのシームレスな通話移行が可能であるかどうかの判断は、ネットワーク状態インジケータ355に依存する可能性があり、ネットワーク状態インジケータ355は、ネットワーク380の状態が通話タイプをサポートするかどうかを示す。また、アプリケーション登録情報360に対するチェックを実施して、シームレスな移行をサポートするアプリケーションが登録されているかどうかを判断することもできる。本明細書で説明されるように、異なるアプリケーションを、異なる通話タイプのために登録することができる。情報360は、(例えば通話タイプによって)特定のアプリケーションがシームレスな移行をサポートするかどうかを示すことができる。
上記の判断は、他の通信デバイス390の能力に依存することもある。他の通信デバイス390の能力を決定するための1つの技術は、(例えば連絡先データベース325に関連付けられる)情報をローカルに格納することである。例えばデバイスがビデオ能力を有することが知られている場合、データベース内の(例えば電話番号又は他のアドレスに基づく)エントリに、そのデバイスがビデオ能力を有することを示すよう注釈を付けることができる。通信デバイス305は、(例えば連絡先データベース387内の連絡先がローカルのデータベース325内の連絡先と合致するかどうかを判断するために)アプリケーションサービス385と通信することにより、ローカルストアを周期的に更新することができる。
しかしながら、ユーザは、特定の通信サービスについて同じアドレス又はユーザ名を使用する複数のデバイスを有することがある。したがって、他の通信デバイス390上の対応する通信アプリケーション345Bと通信することによって能力を決定することができる。あるいは、アプリケーションサービス385は、追跡したデバイスのステータス(例えばそれらのデバイスが接続されているかどうか、それらのデバイスがどのバージョンのソフトウェアを有しているか等)を積極的に更新してもよい。
一部の場合には、通信アプリケーション345A〜349Aが存在しない。あるいは、特定のタイプの通信アプリケーションが存在しないこともある。そのような場合には、シームレスな通話移行は直ぐには可能ではないが、本明細書で説明されるように、適切な通信アプリケーションを取得することができるオプションを現在のユーザインタフェース内に提示することができる。したがって、その後、シームレスな移行が可能になり得る。よって、ユーザには、ユーザのデバイス上で移行機能が可能であることが、役立つよう通知され得る。
同様に、アプリケーションは存在するが、構成されないかアクティブ化されない場合、通信アプリケーションを構成又はアクティブ化することができるオプションを、現在のユーザインタフェース内に提示することができる。やはり、ユーザには、ユーザのデバイス上で移行機能が可能であることが、役立つよう通知され得る。
例5 − シームレスな通話移行を実装する例示の方法
図4は、シームレスな通話移行が可能であるかどうかを決定する例示の方法400のフローチャートであり、例えば図3に示されるシステムにおいて実装することができる。他の編成も可能であるが、実際には、方法400は典型的に、第1の通話タイプの通話による別のデバイスとの通信中に起動される。方法は、通話移行のシームレスな性質を維持するよう実装され得る。例えば通話中にシームレスな移行が可能であるとき、特別な又は別個のユーザインタフェースへのナビゲーションを必要とする代わりに、簡単なユーザインタフェースオプションを提示することができる。
本明細書の例のいずれかにおいて、(例えば方法400が開始する前に、方法400の間等に)第2の通話タイプの通信アプリケーションが、ローカルの通信デバイスで利用可能であるかどうか(例えばインストールされているか、登録されているか、アクティブに構成されているか等)を判断することができる。本明細書で説明されるように、特定の通話タイプをサポートする複数の通信アプリケーションが利用可能である場合、その通話タイプについて、好みの又は優先アプリケーションを記憶することができる。その後、優先アプリケーションを、シームレスな移行プロセス全体を通して使用することができる。上記の判断は、アプリケーションが(例えば特定の通話タイプへの)シームレスな移行をサポートするかどうかを判断することも含むことができる。
第2の通話タイプの通信アプリケーションが利用可能でない場合、本明細書で説明されるように、そのアプリケーションを取得し、アクティブ化し、構成等するためのオプションを、現在のユーザインタフェースに表示することができる。そうではなく、第2の通話タイプの通信アプリケーションが利用可能であると判断したことに応答して、方法は継続することができる。したがって、第2の通話タイプの通信アプリケーションが、ローカルの通信デバイスにおいて利用可能であるかどうかを確認する。
410において、他の通信デバイスが、第2の通話タイプの第2の通話をサポートするかどうかを判断する。本明細書で説明されるように、そのような判断を様々な方法で行うことができる。
他のデバイスが通話をサポートするかどうかの判断は、他の通信デバイスについてのローカル情報をクエリすることによって達成され得る。例えばローカルの連絡先データベース(例えばアドレス帳)をチェックして、他の通信デバイス(例えば発信者IDを介して見つかるか、ダイアルされた番号)又は他の通信デバイスに関連付けられるユーザ(例えばユーザは、現在の通話の番号に関連付けられるようにローカルの連絡先に記憶される)が、第2の通話タイプの通話をサポートするサービスプロバイダのアカウントを有するかどうかを確かめることができる。アカウントを有する場合、他のデバイスはそのような通話をサポートすると考えることができる。アドレス帳は、シームレスな移行が可能であるかどうかを示すように強化されるか、補足され得る。プラットフォームタイプやプラットフォームバージョン、アプリケーションタイプ、アプリケーションバージョン等のような情報を格納するか、調べて、あるいはその双方を行って、他デバイスがシームレスな移行を実装することができるかどうかを判断することができる。
他の技術は、他の通信デバイスに直接確認をすること(例えばクエリすること)を含む。ローカルアプリケーションと、第2の通話タイプの通話をサポートするリモートアプリケーション(又は例えばそのアプリケーションのバックグラウンドバージョン)との間でハンドシェークを行うことによって、そのような確認を行うことができる。例えば優先アプリケーションが特定の通話タイプについて指示される場合、他のデバイスが、そのアプリケーションの代わりのインスタンス又はバックグラウンドのリスナを有するかどうかを確かめるようクエリを行うことができる。あるいは、クエリコントローラ又は他のソフトウェアは、そのような情報を格納して、アプリケーションを起動しなければならないことを避けることができる。
別の技術は、アプリケーションサービス(例えば第2の通話タイプをサポートする通信アプリケーションに関連付けられるサーバ)にクエリして、(例えば他のデバイスに関連付けられる)番号又は連絡先が認識されるかどうかを確かめることである。認識には、番号又は連絡先が登録されているか、アクティブであるか又はその双方が含まれ得る。
判断を容易にするために、アプリケーション・プログラミング・インタフェース・コールを、通信アプリケーションについて定義することができ、このAPIコールにより、ローカルの通信アプリケーションをクエリして、他のデバイスが適切な能力を有するかどうかに関する回答を提供することができる。入力は、通話タイプ、ユーザ識別子(例えば番号、アドレス等)又はその双方を含むことができる。
420において、現在のネットワークが、第2の通話タイプの通話をサポートすることができるかどうかを判断する。例えば特定のタイプのネットワークへの接続が利用可能でないか、不安定な場合、その通話タイプは可能ではない可能性がある。通信デバイスは、それぞれのネットワークの状態を示す、1つ以上のネットワーク状態インジケータ又はネットワーク接続状態インジケータを格納することができる。そのようなネットワークは、モバイルオペレータによって提供される無線データ接続(例えば3G、4G、4G LTE、WiMAX等)、Wi-Fi接続等を含むことができる。異なる状態インジケータを異なるネットワークについて格納することができる。したがって、シームレスな移行が可能であるかどうかを判断することは、ネットワーク接続状態インジケータが、第2の通話タイプが可能であることを示すかどうかを判断することを含むことができる。
上記の判断が双方とも、第2の通話タイプの通話へのシームレスの移行が可能である(例えば他のデバイスがその能力を有し、かつネットワークが第2の通話タイプをサポートすることになる)ことを示す場合、次いで、本明細書で説明されるように移行を開始するためのオプションを提供することができる。他の条件を上記の判断に組み込むことができる。
例6 − 例示の通話タイプ
本明細書の例のいずれかにおいて、本技術は複数の異なる通話タイプをサポートすることができる。現代の通信デバイスにおいてほぼユビキタスな、ある通話タイプは、(例えばモバイルオペレータのインフラストラクチャを介して切り替え又は管理される)標準的な(携帯)電話の通話であり、これは、その基礎となる技術がセルラでないとしても、時々「セルラ通話」と呼ばれる。他の通話タイプは、VoIP通話を含み、VoIP通話は、一部の実装では音声のみのVoIP通話及びビデオVoIP通話等に更に分けられることがある。RCS又はRCS−e通話タイプもサポートすることができる。
本技術は、通話タイプを指定する様々な方法をサポートすることができる。例えば特定の特性を共有する異なる通信アプリケーションによって編成される通話を、同じ通話タイプであると見なすことができる(例えばSkype(登録商標)の通話とViber(登録商標)の通話は、ビデオ通話タイプと見なされる)。あるいは、そのような通話を、異なる通話タイプとして実装することができる(例えばSkypeの通話をある通話タイプとし、Viberの通話を別の通話タイプとする)。
実際には、異なるアプリケーションタイプを、異なるチャネルを通して又は異なるネットワーク上で実現することができる。しかしながら、一部又は全てのレッグが、同じネットワークインフラストラクチャを共有することができる。
例7 − 例示の通信アプリケーションタイプ
標準的な電話の通話をサポートする通信アプリケーション(app)に加えて、本明細書における例のいずれかにおいて、多様な他の通信アプリケーションタイプ(例えば電話以外の通話アプリケーション)が、単一のデバイス上でサポートされ得る。実際には、そのような通信アプリケーションは、異なるパーティ(例えば第三者)によって提供され得る(例えば電話のオペレーティングシステムのためのソフトウェア、通話コントローラ、電話通話アプリケーション等を提供及び維持するエンティティ以外のエンティティによって提供及び維持される)。サポートされ得る例示のアプリケーションタイプは、ビデオアプリケーション、(例えばビデオをサポートすることができる)VoIPアプリケーション等を含む。
実際には、そのようなアプリケーションタイプは、通信を行うためのソフトウェアを供給し、かつ、接続又は他の機能を容易にするサーバを維持する、サービスプロバイダに関連付けられ得る。例えばMicrosoft社によって提供されるSkypeアプリケーション、Viber Media社によって提供されるViberアプリケーション、TangoME社によって提供されるTango(登録商標)アプリケーション及び他のものが、サポートされ得るアプリケーションを利用可能である。モバイルオペレータによって提供される様々なRCS及びRSC−eアプリケーションもサポートされ得る。
さらに、特定のサービス内で、異なるプラットフォーム又はハードウェアのバージョンについて異なる実際のアプリケーションが存在し得る。例えばSkypeアプリケーションは、様々なオペレーティングシステム上で実装され得る。したがって、単一のサービスプロバイダが、異なるプラットフォーム(例えばオペレーティングシステム)にわたって実装される通信アプリケーションを供給することができる。例えばSkype通信アプリケーションは、Microsoft社によって供給される様々なWindows(登録商標)オペレーティングシステムで、Apple社によって供給されるiOS及びMac OSのオペレーティングシステムで、Google社によって供給されるAndroid(登録商標)オペレーティングシステムで及び同様のものにおいて提供され得る。便宜上、そのようなアプリケーションの集合は時々、通信サービスに関連付けられる「アプリケーションファミリ」と呼ばれる。
したがって、別のデバイス上の対応するアプリケーションは、同じ実際のアプリケーションである必要はない。異なるプラットフォームの対応するアプリケーションを使用して、通信を確立することができる。本明細書における技術は、異なるバージョン及びプラットフォームを区別して、シームレスな通話移行が可能であるかどうかを判断し、それに応じて、シームレスな通話移行を実装することができる。
アプリケーションは、通話のエンドポイントとして機能することができる。したがって、シームレスな移行は、あるセットのエンドポイント(例えば電話通話アプリケーション)から別のセットのエンドポイント(例えば通信サービスに関連付けられるアプリケーションファミリ内のアプリケーション)へ移行することができる。
例8 − 例示の能力の自動検出
シームレスな通話移行をサポートする、他の通信デバイスのインストール済み通信アプリケーションの自動検出を実装して、ローカルデバイスにおいてアプリケーションとの交差が存在するかどうかを判断することができる。そのため、両デバイスが、第2の通話タイプの通話へのシームレスな通話移行をサポートする1つのアプリケーションを共通に有している場合、その共有のアプリケーションを、使用すべきものとして指定することができる。複数のアプリケーションが共有される場合、ユーザプリファレンスを調べることができる。幾つかの場合において、アプリケーションがシームレスな移行をサポートするかどうかは、アプリケーションのバージョン又はプラットフォームに依存し得る。
したがって、第1の通話に関与するパーティは双方とも、同じサービスに加入していると決定することができる。その後、サービスによりサポートされる通話タイプへのシームレスなアップグレードを達成することができる。
例9 − 例示の実装:ビデオ通話へのアップグレード
本明細書で説明される技術は、音声電話通話をビデオ通話へアップグレードするために実装され得る。そのような場合、第1の通話タイプは、電話通話(例えばビデオを伴わないオーディオ)であり、第2の通話タイプは、ビデオ通話(例えば典型的にはVoIPによるビデオとオーディオ)である。ビデオを示すアイコン及び言語を、インタフェース全体を通して使用し、本明細書で説明されるシームレスな通話移行技術を使用して通話をビデオにアップグレードすることができることを示すことができる。したがって、シームレスな移行は、オーディオ通話からビデオ通話へアップグレードする。
そのため、例えば2人のパーティがセルラ通話の一部として話をしているとき、彼らは、通話をビデオ通話タイプにシームレスに移行することにより、セルラ通話をビデオ通話にアップグレードすることができる。
そのような実装は、実行可能なオーディオ通話アプリケーション及び実行可能なビデオ通話アプリケーションを備えるシステムにより達成され得る。通話コントローラは、通話をオーディオ通話アプリケーションからビデオ通話アプリケーションへシームレスに移行するよう構成され得る。
例10 − 例示の実装:VoIPへのアップグレード
本明細書で説明される技術は、携帯電話の通話をVoIP通話へアップグレードするために実装され得る。そのような場合、第1の通話タイプは、セルラ通話(例えばビデオを伴わないオーディオ)であり、第2の通話タイプは、VoIP通話である。VoIPを示すアイコン及び言語を、インタフェース全体を通して使用し、本明細書で説明されるシームレスな通話移行技術を使用して通話をVoIPにアップグレードすることができることを示すことができる。したがって、シームレスな移行は、セルラ通話からVoIP通話へアップグレードする。
そのため、例えば2人のパーティがセルラ通話の一部として話をしているとき、彼らは、通話をVoIP通話タイプにシームレスに移行することにより、VoIP通話をビデオ通話にアップグレードすることができる。
そのような実装は、実行可能な電話通話アプリケーション及び実行可能なVoIP通話アプリケーションを備えるシステムにより達成され得る。通話コントローラは、通話を電話通話アプリケーションからVoIP通話アプリケーションへシームレスに移行するように構成され得る。
例11 − シームレスな通話移行を起動するユーザインタフェースオプション
本明細書の例のいずれかにおいて、シームレスな通話移行を起動することができるユーザインタフェースオプションを提示することができる。本明細書で説明されるように、そのようなオプションは、通話の移行が可能であるかどうかに基づいて、条件付きで提示することができる。
図5は、例示の通話進行ユーザインタフェース500のワイヤフレームであり、移行を開始するためのアクティブ化可能なユーザインタフェース要素535を含む。実際には、ユーザインタフェース要素535は、利用可能でないときはディスエーブル(無効)として表示され(例えばグレーアウトされるか、フェードされる等)、利用可能であるときはイネーブル(有効)として表示され得る。例えばユーザインタフェース要素は、ネットワーク状態が第2の通話タイプをサポートしないとき、ディスエーブルとして表示され得る。
ユーザインタフェース要素535は、説明、テキスト、ロゴ、グラフィック、あるいは(例えば第2の通話の)どのアプリケーション又は通話タイプに関係するかを示す他の情報を組み込むことができる。例えばビデオ通話タイプへの移行では、ビデオカメラ又は同様のアイコンを表示することができる。
この例では、ユーザインタフェース要素は、第1の通話を実施している間に、通話進行(例えば進行中の通話(ongoing call)、通話内(in-call)、通話中(mid-call))ユーザインタフェースの一部として表示される。このユーザインタフェースは、他のパーティの写真520及び現在の通話を制御するための様々な他のユーザインタフェース要素(例えばスピーカボタン531、ミュートボタン532、add call(通話追加)ボタン533、保留ボタン534及びBluetooth(登録商標)ボタン539)。実際には、他の又は追加のユーザインタフェース要素を表示することができる。
適用可能な通信アプリケーションがインストールされていないために、シームレスな通話移行が利用可能でない場合、やはり、ユーザインタフェースを提示することができる。したがって、第2のタイプの通話をサポートするためのアプリケーションが通信デバイス上にインストールされていないと決定し、通話進行ユーザインタフェースの一部としてオプションを提示して、通信デバイス上でアプリケーションのインストールプロセスを開始することができる。
そのようなユーザインタフェース要素は、(例えばアイコン、グラフィクス、テキスト、色等を介して)シームレスな通話移行をサポートするアプリケーションをインストールすることが可能であるという事実への関心を呼び起こすことができる。ユーザインタフェース要素のアクティブ化は、サポートされる通信アプリケーションのリストを表示することにつながり得る。リスト内のアプリケーションのアクティブ化の結果、アプリケーションを取得することができる市場(marketplace)ページへのナビゲーションが行われ得る。あるいは、ユーザインタフェース要素のアクティブ化の結果、適切な通信アプリケーションを購入することができるアプリケーション市場又は市場ページへの直接的なナビゲーションが行われ得る。
ユーザインタフェース要素535は、通話移行が可能であるという判断があると、イネーブルされ得るが、そのような判断は必ずしも完全に厳密である必要はない。例えば他のパーティがもはや関連するサービスに加入していないこと、あるいはネットワーク状態が悪化していることであってもよい。
ある実装は、移行するために複数のユーザインタフェース要素535をサポートすることができる。例えば異なる通話タイプ、異なるサービス又は異なる通話特徴(例えばビデオ、画面共有等)について異なる要素を提示することができる。あるいは、単一の要素535が複数の通話タイプをサポートすることができる(例えばタップとホールドを介して、ユーザ挙動を学習すること等)。
所望であれば、利用可能なときに移行が自動的に起こるように、プリファレンスを設定することができる。
例12 − 例示のアクティブ化
本明細書の例のいずれかにおいて、ユーザインタフェース要素は、ユーザによりアクティブ化可能な、表示又は暗示されるユーザインタフェース要素の形をとることができる。そのような要素は、グラフィカルユーザインタフェースの一部として提示される、タイル、アイコン、グラフィカルボタン、エリア、リスト内のアイテム、形状、スライダ等の形をとることができる。ユーザインタフェース要素は、機能を示すようテキスト、グラフィクス又は色を含むことができる。
(例えばアクティブ化可能なユーザインタフェース要素の)アクティブ化は、(例えばアクティブ化可能なユーザインタフェース要素の)選択を指示するユーザ入力の形をとることができる。例えばタッチをサポートするシステムでは、タップ、ホバリング又は他のタッチジェスチャを受け取ることができる。他のシステムは、クリック、ホバリング、音声によるアクティブ化、まばたき、ウィンク等をサポートすることができる。
例13 − 例示の連絡窓口(contact point)
本明細書の例のいずれかにおいて、様々な番号及びアドレスタイプ(例えば自宅、モバイル、職場等)をサポートすることができる。連絡窓口は、連絡先に関連付けられる番号又はアドレスの形をとることができる。例えば連絡窓口は、連絡先の職場の番号、連絡先の携帯番号又は連絡先の自宅の番号といった、連絡先の電話番号又はユーザアドレスとすることができる。
他の通信デバイスを使用するパーティのアイデンティティを決定するとき、他の通信デバイスの電話番号を使用して、合致する連絡窓口を有する連絡先を検索することができる。次いで、連絡先のエントリを使用して、第2の通話を編成している通信アプリケーションのための番号又はユーザアドレスを見つけることができる。例えば電話番号を使用して、VoIP通話用のユーザアドレスを決定することができる。
例14 − 例示の同意
本明細書の例のいずれかにおいて、第2の通話をアクティブ化又は開始する前に、他の通信デバイスにおいて通話移行に同意する機会を与えることができる。例えばビデオをサポートする通話タイプに移行するとき、他のパーティはそのデバイスがビデオを送信することを望まないことがある。
ユーザからの同意を取得するユーザインタフェースを表示することができる。要求側パーティ及び通話のタイプに関する情報を表示することができる(例えば「エレンは今通話にビデオを含めることを要求しています。OK?」)。同意の受信に応答して、移行は継続することができる。
ユーザの関心を得るために、同意を求めるときに、トーン又は他のオーディオ指示を再生することができる。
望まれる場合、ユーザの意思に配慮しつつも、やはり通話の移行が起こるように、同意を実装することができる。例えば通話をVoIPにアップグレードするが、未同意側からのビデオは含まれない。あるいは、追加のオプションをユーザに提示することができる。例えばアップグレードとビデオの包含について独立の同意を実装することができる。
一部の場合において、同意はサポートされないことがあり、被呼者側からの経験は、被呼者側におけるシームレスな移行ではないことがある(例えば着信は、着信として現れる)。
例15 − 通話を移行させる例示の方法
図6は、通話を移行する例示の方法600のフローチャートであり、例えば図1に図示されるシステムにおいて実装することができる。方法を実装するシステムは、本明細書で説明されるように、第1の通話の一意の識別子及びオーディオ抑制ロジックも含むことができる。
620において、ローカル通信デバイスから他の通信デバイスへの(例えば第1の通話タイプとは異なる)第2の通話タイプの第2の通話が開始される。この通話は、バックグラウンドで起こり得る(例えばユーザには別個の通話として提示されない)。一方、第1の(例えば現在の)通話はアクティブに保持される。例えば第2の通話の結果、典型的に、第1の通話を保留状態に置くことになる場合、そのような機能は阻止され得る。本明細書で説明されるように、第2の通話のオーディオは抑制され得る。
第2の通話はバックグラウンドに置かれ得るが、第2の通話が生じたという印象を与えることなく、進行についての何らかの指示を提供することができる。例えば接続を待っている間、移行の準備を示すマーキー(marquee)、アニメーション又は他の機構を表示することができる。また、移行を開始したユーザインタフェースをディスエーブルすることもできる。
630において、第2の通話の接続が確認される。例えば他の通信デバイスとの第2の通話が成功裏に確立されたかどうかを判断することができる。したがって、第1の通話を維持しつつ、第2の通話が(例えば第2のチャネル上で)確立される。何らかの理由で接続が(例えばn秒後に)成功しない場合、処理は失敗し、第1の通話が続く。
640において、第2の通話の接続を確認したことに応答して、第2の通話が完全にアクティブにされ得る。一部の実装では、その後、第1の通話が保留状態に置かれるか、終了又は切断され、あるいは他の方法で非アクティブにされ得る。第1の通話のアクティブ化解除を容易にするために、一意の識別子を使用して第1の通話を識別することができる。第1の通話の望まれない又は認証されないアクティブ化解除を避けるために、単純な一意の識別子は避けられる可能性がある。代わりに、より複雑な(例えばGUID等)識別子生成スキームを使用して通話を識別することができる。
移行の一部として、第2の通話タイプをより良く容易にするようオーディオリソースを切り替えることができる。例えば第2の通話タイプがビデオである場合、オーディオを、デバイスのイヤホンからスピーカに切り替えて、カメラの使用を容易にすることができる。Bluetooth(登録商標)のオーディオを使用している場合は、オーディオリソースを切り替える必要はない。
説明されるように、方法600は、単一の通話に関係するという印象を維持しつつ、アプリケーションを切り替えること(例えばあるアプリケーションタイプによってサポートされる通話と、異なるアプリケーションタイプによってサポートされる通話との間で切り替えること)を達成することができる。
ビデオを含む通話タイプへ移行するとき、ローカルのビデオが他の通信デバイスに対して見えるようになる前に介在する期間(interstitial period)中に、(例えばユーザに見え方を確認する機会を与えるために)ローカルビデオをデバイス上に表示することができる。第1の通話からのオーディオは、その介在期間中、継続することができる。
被呼者側のデバイスにおいて、シームレスな移行を同様の方法で実装することができる。しかしながら、着信は、シームレスな移行の一部として取り扱われるべき特別な通話として指示され得る。そのため、着信を、着信として示す代わりに、バックグラウンドで処理して、次いで着信への移行がシームレスに達成され得る。本明細書で説明されるように、同意を得ることができる。
一部の場合において、ネットワーク状態が悪化することがあり、この場合、第1の通話の通話タイプへ戻すよう移行を促す。そのような移行は、本明細書で説明されるようにシームレスに実行され得る。(例えば通話からビデオを除外するとき)他のパーティの同意は可能でないか必要とされないことがある。
例16 − 例示のオーディオの抑制
本明細書の例のいずれかにおいて、第2の通話のオーディオを、第2の通話がアクティブにされる前に抑制することができる。そのような技術は、オーディオ、エコー等の二重化を避けることができる。通話抑制は、通話コントローラ又は他のコンポーネントによって制御され得る。
例17 − 例示のユーザインタフェースシーケンス
本明細書の例のいずれかにおいて、ユーザインタフェースは、元のユーザインタフェース(例えば通話進行UI)と、第2の通話をサポートする通話アプリケーションのユーザインタフェースとの間を順序付けすることができる。移行の完了の後、第1の通話が第2の通話に移行したことが見える。次いで、通信デバイスにおける使用のために、第2の通話タイプの機能が提示される。
他のデバイスにおいて、同意の要求を表示することができ、その同意後に、ユーザインタフェースは第2の通話をサポートするものへと移行する。
例18 − 例示の通話移行状態
本明細書の例のいずれかにおいて、移行プロセスを編成するのを助けるよう通話移行状態を記憶することができる。そのような状態は、通話状態とともに又はその一部として実装され得る。例えば状態は「実装されていない」、「非アクティブ」、「第2の通話を開始する」、「完了」等を示すことができる。
同様に、本明細書で説明されるように、ネットワーク状態インジケータを記憶することができる。
例19 − 通信アプリケーションを登録する例示の方法
図7は、シームレスな通話移行を達成するため通信アプリケーションを登録する例示の方法700のフローチャートであり、例えば本明細書で説明される通信デバイスのいずれかで実装され得る。
720において、通信アプリケーションを通信デバイスに登録する。例えばオペレーティングシステム又は他の制御ソフトウェアは、通信アプリケーションがインストールされていること、通信アプリケーションが1つ以上の通信タイプをサポートすること、そして通信アプリケーションがシームレスな通話移行をサポートすることについての通知を受け取ることができる。
730において、登録に応答して、通信デバイスの構成が更新される。例えば特定の通話タイプをサポートする通信アプリケーションのリストは、通信アプリケーションをそのリストへ追加することにより更新され得る。特定の通話タイプについて、優先される通信アプリケーションを記憶することもできる。
740において、登録の結果として、通信アプリケーションによってサポートされるタイプの第2の通話へシームレスに移行するためのオプションが、通信デバイスのユーザインタフェース内に提示される。本明細書で説明されるように、そのようなオプションを(例えば他の通信デバイスの能力、ネットワーク状態等に応じて)条件付きで提示するか、条件付きでイネーブルすることができる。
したがって、第2の通話タイプをサポートするアプリケーションのインストール中に、第2の通話タイプを介したシームレスな移行を実施するときに使用されるように、アプリケーションを登録することができる。続いて、登録に応答して、第2の通話タイプ又はアプリケーションを示すユーザインタフェース要素を提示することができる。
例20 − 登録済み通信アプリケーション
図8は、優先通信アプリケーションを記憶するテーブル800のブロック図であり、構成データ(例えば移行構成データ130)の一部として記憶することができる。テーブル800は、アプリケーション830A及びアプリケーションが優先されるかどうか830Bを示すエントリ830を記憶することができる。テーブル800は、通信アプリケーションが登録するときに、構築されて更新され得る。その後、シームレスな通話移行のためのユーザインタフェースオプションを提示するときを示すかどうか又はどのアプリケーションが示すかを決定するときに、テーブルを確認することができる。例えばアプリケーション3が優先アプリケーションである場合、このアプリケーションを、ユーザインタフェースオプションがアクティブ化されるときに起動されるアプリケーションとして(例えばテキスト、グラフィクス、ロゴ等により)示すことができる。
他の情報(例えばテキスト、アイコン、ロゴ又は他のグラフィクス)をテーブル内に記憶又は参照することもでき、ユーザインタフェース要素の一部として(例えば通話進行UIの一部として)表示することができる。テーブルは、アプリケーションがシームレスな移行をサポートするかどうかを明示的に示すことができ、あるいはテーブルはそのような通信アプリケーションに制限されることもある。シームレスな移行の目的のために別個のプリファレンスを設定することができる。したがって、特定の通話タイプをサポートする複数のアプリケーションが存在する場合、サブセットがシームレスな移行をサポートしてもよい。サブセット内に複数のアプリケーションが存在する場合、通信アプリケーションのうちの特定のアプリケーションを、優先として指定することができる。
例では、単一の通話タイプについての通信アプリケーションを示すが、複数の通話タイプをサポートすることができる。異なるアプリケーションを、異なる通話タイプについての優先として指示することができる。
例21 − 通信アプリケーションの例示の構成
図9は、通信タイプについて優先アプリケーションを選択するための例示の設定ユーザインタフェース900のワイヤフレームである。この例では、通話の特定のタイプ(例えばビデオ)について、優先通信アプリケーションを選択するためのユーザインタフェースが表示されている。他の又は追加の通話タイプについてのユーザインタフェースをサポートすることができる。
優先アプリケーションを、ボックス930内に表示することができる。1つより多くの通信アプリケーションが利用可能である場合、ボックス930は、異なるアプリケーションの選択を可能にするドロップダウンボックスとすることができる。これに従って、本明細書で説明されるようなプリファレンスが更新され得る。
特定のアプリケーションを選択した結果(例えば選択されたアプリケーションが、通話進行UI内に表示されることになること)を説明する、説明テキスト940を表示することができる。アプリケーションがインストールされていない場合、インタフェースは、サポートする通信アプリケーションを取得した結果を示すテキスト940を表示することができる。例えばテキストは、ビデオを有する利点、シームレスな通話移行の利用可能性等を説明することができる(例えば「アップグレードアプリケーションにより通話をビデオ通話にアップグレードすることができることを御存知ですか?」)。
ユーザインタフェース900は、本明細書で説明されるように、サポートするアプリケーションを取得することができるアプリケーション市場へのナビゲーションを可能にする、ユーザインタフェース要素950を表示することができる。
代替の技術は、アプリケーション自体を特定の通話タイプについての優先アプリケーションとして設定することを可能にすることができる。アプリケーションは、設定への直接アクセスを有する必要はない。例えば登録中に、アプリケーションは、(例えば通話タイプ、アプリケーション識別子等を特定する)APIへのアクセスを有することができ、それ自体を優先アプリケーションとして設定することができる。構成に対する不正な変更を回避するために、ダイアログボックスを表示して変更を確認することができる(例えば「アプリケーションxを、あなたの優先ビデオアプリケーションにしますか?はい/いいえ」)。アプリケーションは、APIに照会して、それが既に優先されているかどうかを確かめることができる。優先になっている場合、変更は必要とされない。
例22 − 例示の利点
本明細書で説明されるように、ユーザは、新たな処理について学習する必要なく、あるいは最初はデバイスの能力が存在することに気付くことさえ必要なく、自身のデバイスの能力を容易に利用することができる。
例23 − 例示のコンピューティングシステム
図10は、説明される革新の幾つかが実装され得る、適切なコンピューティングシステム又は環境1000の一般的な例を図示している。本革新は、多様な汎用又は専用のコンピューティングシステムにおいて実装され得るので、コンピューティングシステム1000は使用又は機能の範囲に関して如何なる限定を示唆するようにも意図されていない。本明細書で説明される通信デバイスは、説明されるコンピューティングシステム1000の形をとることができる。
図10に関連して、コンピューティングシステム1000は、1つ以上の処理ユニット1010、1015及びメモリ1020、1025を含む。図10では、この基本的構成1030は破線内に含まれる。処理ユニット1010、1015は、コンピュータ実行可能命令を実行する。処理ユニットは、汎用の中央処理ユニット(CPU)、特定用途向け集積回路(ASIC)内のプロセッサ又は任意の他のタイプのプロセッサとすることができる。マルチ処理システムでは、マルチ処理ユニットがコンピュータ実行可能命令を実行して、処理能力を向上させる。例えば図10は、中央処理ユニット1010だけでなく、グラフィクス処理ユニット又はコプロセッシングユニット1015を示している。有形のメモリ1020、1025は、処理ユニットによってアクセス可能な、揮発性メモリ(例えばレジスタ、キャッシュ、RAM)、不揮発性メモリ(例えばROM、EEPROM、フラッシュメモリ等)又はその2つの何らかの組合せであってよい。メモリ1020、1025は、本明細書で説明される1つ以上の革新を実装するソフトウェア1080を、処理ユニットによる実行に適したコンピュータ実行可能命令の形で記憶する。
コンピューティングシステムは、追加の特徴を有することがある。例えばコンピューティングシステム1000は、ストレージ10040、1つ以上の入力デバイス1050、1つ以上の出力デバイス1060及び1つ以上の通信接続部1070を含む。バス、コントローラ又はネットワークといった相互接続機構(図示せず)が、コンピューティングシステム1000のコンポーネントを相互接続する。典型的に、オペレーティングシステムソフトウェア(図示せず)が、コンピューティングシステム1000内で動作する他のソフトウェアのための動作環境を提供し、コンピューティングシステム1000のコンポーネントの動作を調整する。
有形のストレージ1040は、取外し可能であっても取外し不可能であってもよく、磁気ディスク、磁気テープ若しくはカセット、CD−ROM、DVD又は非一時的に情報を格納するのに使用することができ、コンピューティングシステム1000内でアクセス可能な任意の他の媒体を含む。ストレージ1040は、本明細書で説明される1つ以上の革新を実装するソフトウェア1080のための命令を記憶する。
入力デバイス1050は、キーボード、マウス、ペン若しくはトラックボールのようなタッチ入力デバイス、音声入力デバイス、スキャニングデバイス又はコンピューティングシステム100に入力を提供する別のデバイスであってよい。ビデオエンコーディングのために、入力デバイス1050は、カメラ、ビデオカード、TVチューナカード、あるいはアナログ又はデジタルの形のビデオ入力、コンピューティングシステム1000へのビデオサンプルを読み取るCD−RO又はCD−RWを受け入れる同様のデバイスであってよい。出力デバイス1060は、ディスプレイ、プリンタ、スピーカ、CDライタ又はコンピューティングシステム1000からの出力を提供する別のデバイスであってよい。
通信接続部1070は、通信媒体上で別のコンピューティングエンティティへの通信を可能にする。通信媒体は、コンピュータ実行可能命令、オーディオ又はビデオ入力又は出力、あるいは変調データ信号内の他のデータのような情報を伝達する。変調データ信号は、信号内に情報をエンコードするような方法で設定又は変更された特性の1つ以上を有する信号である。限定ではなく例として、通信媒体は、電気、光、RF又は他の担体を使用することができる。
本革新を、コンピュータ読取可能媒体の一般的なコンテキストで説明することができる。コンピュータ読取可能媒体は、コンピューティング環境内でアクセス可能な任意の利用可能な有形の媒体である。限定ではなく例として、コンピューティングシステム1000では、コンピュータ読取可能媒体は、メモリ1020、1025、ストレージ1040及び上記の任意の組合せを含む。
本革新を、コンピュータ実行可能命令の一般的なコンテキストで説明することもでき、コンピュータ実行可能命令は、例えばプログラムモジュールに含まれるか、対象の実際のプロセッサ又は(例えば最終的にハードウェア内で実行される)仮想プロセッサ上のコンピューティングシステム内で実行される。一般に、プログラムモジュールは、特定のタスクを実行するか特定の抽象データタイプを実装するルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造等を含む。プログラムモジュールの機能は、様々な実施形態で望まれるように、組み合わされてもよく、あるいはプログラムモジュール間に分割されてもよい。プログラムモジュールのためのコンピュータ実行可能命令は、ローカル又は分散コンピューティングシステム内で実行され得る。
「システム」及び「デバイス」という用語は、本明細書では交換可能に使用される。コンテキストにおいて、そうでないことを明示しない限り、いずれの用語もコンピューティングシステム又はコンピューティングデバイスのタイプに関するいかなる限定も示唆しない。一般に、コンピューティングシステム又はコンピューティングデバイスは、ローカルであっても分散させることもでき、本明細書で説明される機能を実装するソフトウェアを有する、専用のハードウェア及び/又は汎用のハードウェアの任意の組合せを含むことができる。
説明の目的で、詳細な説明では、「判断(決定)」及び「使用」等の用語を用いて、コンピューティングシステム内のコンピュータの動作を説明している。これらの用語は、コンピュータによって実行される動作についての高レベルな抽象であり、人間によって実行される動作と混同されるべきではない。これらの用語に対応する実際のコンピュータの動作は、実装に応じて変化する。
例24 − 例示のモバイルデバイス
本明細書の例のいずれかにおいて、通信デバイスはモバイルデバイスの形をとることができる。図11は、全体として1102で示される様々なオプションのハードウェア及びソフトウェアコンポーネントを含む、例示のモバイルデバイス1100を示すシステム図である。モバイルデバイス内の全てのコンポーネント1102が任意の他のコンポーネントと通信することができるが、図の容易性のために必ずしも全ての接続を図示していない。モバイルデバイスは、様々なコンピューティングデバイス(例えばセルフォン、スマートフォン、ハンドヘルドコンピュータ、パーソナルデジタルアシスタント(PDA)等)のいずれかとすることができ、セルラネットワーク、サテライトネットワーク又は他のネットワークといった、1つ以上のモバイル通信ネットワーク1104との無線の双方向通信が可能である。(例えばWi-Fi又は他のネットワーク上での)ボイスオーバーIPシナリオもサポートすることができる。本明細書で説明される通信デバイスは、説明されるモバイルデバイス1100の形をとることができる。
図示されるモバイルデバイス1100は、上記タスクを信号の符号化、データ処理、入力/出力処理、電力制御及び/又は他の機能として実行するための、コントローラ又はプロセッサ1110(例えばシングルプロセッサ、マイクロプロセッサ、ASIC又は他のコントロール及び処理論理回路)を含むことができる。オペレーティングシステム1112は、コンポーネント1102の割当て及び利用を制御し、1つ以上のアプリケーションプログラム1114をサポートすることができる。アプリケーションプログラム1114は、一般のモバイルコンピューティングアプリケーション(例えば電子メールアプリケーション、カレンダ、連絡先マネージャ、ウェブブラウザ、メッセージングアプリケーション)又は任意の他のコンピューティングアプリケーションを含むことができる。アプリケーション1114を取得及び更新するために、アプリケーションストアにアクセスする機能1113を使用することもできる。
図示されるモバイルデバイス1100は、メモリ1120を含むことができる。メモリ1120は、取外し不可能メモリ1122及び/又は取外し可能メモリ1124を含むことができる、取外し不可能メモリ1122は、RAM、ROM、フラッシュメモリ、ハードディスク又は他の周知のメモリストレージ技術を含むことができる。取外し可能メモリ1124は、フラッシュメモリ又はGSM(登録商標)通信システムで周知の加入者識別モジュール(SIM)カード又は「スマートカード」のような他の周知のメモリストレージ技術を含むことができる。メモリ1120は、データ及び/又はコードを記憶し、オペレーティングシステム1112及びアプリケーション1114を実行するために使用され得る。例示のデータには、ウェブページ、テキスト、画像、サウンドファイル、ビデオデータ、あるいは1つ以上の有線又は無線ネットワークを介して1つ以上のネットワークサーバ又は他のデバイスへ送信及び/又はそのようなネットワークサーバ又はデバイスから受信する他のデータセットが含まれ得る。メモリ1120を使用して、IMSI(International Mobile Subscriber Identity)のような加入者識別子及びIMEI(International Mobile Equipment Identifier)のような装置識別子を記憶することができる。そのような識別子を、ユーザ及び装置を識別するようネットワークサーバに伝送することができる。
モバイルデバイス1100は、タッチスクリーン1132、マイクロフォン1134、カメラ1136、物理的なキーボード1138及び/又はトラックボール1140といった1つ以上の入力デバイス1130と、スピーカ1152及びディスプレイ1154といった1つ以上の出力デバイス1150をサポートすることができる。他の可能性のある出力デバイス(図示せず)は、圧電性又は他の触覚出力デバイスを含むことができる。一部のデバイスは、1つより多くの入力/出力機能を果たすことができる。例えばタッチスクリーン1132とディスプレイ1154を組み合わせて、単一の入力/出力デバイスにすることができる。
無線モデム1160をアンテナ(図示せず)に結合することができ、この無線モデム1160は、プロセッサ1110と、当技術分野で理解されるような外部デバイスとの間の双方向通信をサポートすることができる。モデム1160は、一般的に図示されており、モバイル通信ネットワーク1104と通信するためのセルラモデム及び/又は他の無線ベースのモデム(例えばBluetooth(登録商標)1164又はWi-Fi1162)を含むことができる。無線モデム1160は典型的に、GSM(登録商標)やCDMAネットワークのような1つ以上のセルラネットワークとの通信のため、並びに単一のセルラネットワーク内、セルラネットワーク間又はモバイルデバイスと公衆交換電話網(PSTN)との間のデータ及び音声通信のために構成される。
モバイルデバイス1100は、少なくとも1つの入力/出力ポート1180、電源1182、GPS(Global Positioning System)レシーバのような衛星ナビゲーションシステムレシーバ1184、加速度計1186及び/又は物理的コネクタ1190を更に含むことができ、物理的コネクタ1190は、USBポート、IEEE1394(FireWire(登録商標))ポート及び/又はRS−232ポートとすることができる。いずれかのコンポーネントを削除することができ、他のコンポーネントを追加することができるので、図示されるコンポーネント1102は必須ではないか、全て包含しなくてもよい。
例25 − 例示のクラウドサポート環境
図12の例示の環境1200において、クラウド1210は、様々な画面能力を有する接続デバイス1230、1240、1250のためのサービスを提供する。接続デバイス1230は、コンピュータ画面1235(例えば中程度のサイズの画面)を有するデバイスを表す。例えば接続デバイス1230は、デスクトップコンピュータ、ラップトップ、ノートブック、ネットブック等のようなパーソナルコンピュータであり得る。接続デバイス1240は、モバイルデバイス画面1245(例えば小さなサイズの画面)を有するデバイスを表す。例えば接続デバイス1240は、モバイルフォン、スマートフォン、パーソナルデジタルアシスタント、タブレットコンピュータ等であり得る。接続デバイス1250は、大きな画面1255を有するデバイスを表す。例えば接続デバイス1250は、テレビ画面(例えばスマートテレビ)又はテレビに接続される別のデバイス(例えばセットトップボックス又はゲームコンソール)等であり得る。接続デバイス1230、1240、1250のうちの1つ以上が、タッチスクリーン能力を含むことができる。タッチスクリーンは様々な方法で入力を受け入れることができる。例えば容量式タッチスクリーンは、物体(例えば指先又はスタイラス)がその表面にわたって流れる電流を妨げるか遮断すると、タッチ入力を検出する。別の例として、タッチスクリーンは、光学センサからのビームが遮断されると、タッチ入力を検出する光学センサを使用することができる。画面の表面との物理的な接触は、入力が一部のタッチスクリーンによって検出されることに必ずしも必要ではない。画面能力を持たないデバイスを例示の環境1200で使用することもできる。例えばクラウド1210は、ディスプレイを持たない1つ以上のコンピュータ(例えばサーバコンピュータ)のためのサービスを提供することができる。
サービスは、クラウド1210によって、サービスプロバイダ1220を通して、あるいはオンラインサービスの他のプロバイダ(図示せず)を通して提供され得る。例えばクラウドサービスは、画面サイズ、ディスプレイ能力及び/又は特定の接続デバイス(例えば接続デバイス1230、1240、1250)のタッチスクリーン能力に対してカスタマイズされ得る。
例示の環境1200において、クラウド1210は、少なくとも部分的にサービスプロバイダ1220を使用して、本明細書で説明される技術及び解決策を様々な接続デバイス1230、1240、1250に提供する。例えばサービスプロバイダ1220は、様々なクラウドベースのサービスのための集約的解決策を提供することができる。サービスプロバイダ1220は、ユーザ及び/又はデバイス(例えば接続デバイス1230、1240、1250及び/又はこれらのそれぞれのユーザ)についてサービス加入を管理することができる。
例26 − 例示の実装
開示される方法の一部の動作は、説明の便宜上、特定の順番で説明されるが、特定の順序が以下で説明される具体的な言葉によって必要とされない限り、この説明の手法は再編成を含む。例えば順番に説明される動作は、一部の場合では、再編成されるか同時に実行されてよい。さらに、簡潔性の目的で、添付の図面は、開示される方法を他の方法とともに使用することができる、様々な方法を示していないことがある。
開示される方法のいずれかを、1つ以上のコンピュータ読取可能記憶媒体(例えば1つ以上の光媒体ディスクのような非一時的コンピュータ読取可能媒体、(DRAM又はSRAMのような)揮発性メモリコンポーネント又は(ハードドライブのような)不揮発性メモリコンポーネント)に格納され、コンピュータ(例えばスマートフォン又はコンピューティングハードウェアを含む他のモバイルデバイスを含む、任意の市販のコンピュータ)上で実行されるコンピュータ実行可能命令として実装することができる。開示される技術を実装するためのコンピュータ実行可能命令のいずれか、並びに開示される実施形態の実装中に作成及び使用される任意のデータを、1つ以上のコンピュータ読取可能媒体(例えば非一時的コンピュータ読取可能媒体)上に記憶することができる。コンピュータ実行可能命令を、例えば専用のソフトウェアアプリケーション、あるいはウェブブラウザ又は他のソフトウェアアプリケーション(例えばリモートコンピューティングアプリケーション)を介してアクセス又はダウンロードされるソフトウェアアプリケーションの一部とすることができる。そのようなソフトウェアは、例えば単一のローカルコンピュータ(例えば任意の適切な市販のコンピュータ)上で、あるいはネットワーク環境(例えばインターネット、ワイドエリアネットワーク、ローカエルエリアネットワーク、(クラウドコンピューティングネットワークのような)クライアンドサーバネットワーク又は他のそのようなネットワーク)内で1つ以上のネットワークコンピュータを使用して実行され得る。
明確性のために、ソフトウェアベースの実装の特定の選択された態様のみが説明される。当技術分野で周知の他の詳細は省略される。例えば開示される技術は、いずれかの特定のコンピュータ言語又はプログラムに限定されないことを理解されたい。例えば開示される技術は、C++、Java(登録商標)、Perl、JavaScript(登録商標)、Adobe(登録商標)Flash又は任意の他の適切なプログラミング言語によって実装され得る。同様に、開示される技術は、いずれかの特定のコンピュータ又はハードウェアのタイプに限定されない。適切なコンピュータ及びハードウェアの特定の詳細は周知であり、本開示で詳細に説明される必要はない。
さらに、ソフトウェアベースの実施形態(例えば開示される方法のいずれかをコンピュータに実行させるためのコンピュータ実行可能命令を備える)を、適切な通信手段を通してアップロードし、ダウンロードし、あるいはリモートでアクセスすることができる。そのような適切な通信手段には、例えばインターネット、ワールドワイドウェブ、イントラネット、ソフトウェアアプリケーション、ケーブル(ファイバ光ケーブルを含む)、磁気通信、電磁気通信(RF、マイクロ波、赤外線通信を含む)、電気通信又は他のそのような通信手段が含まれる。
開示される方法、装置及びシステムは、如何なる意味においても限定として解釈されるべきではない。代わりに、本開示は、単独並びに別のものとの様々な組合せ及び副次的組合せによる、様々な開示される実施形態の全ての新規で非自明な特徴及び態様に向けられる。開示される方法、装置及びシステムは、いずれかの具体的な態様又は特徴又はその組合せに限定されず、また開示される実施形態は、いずれか1つ以上の具体的な利点が存在すること又は課題が解決することを要しない。
非一時的コンピュータ読取可能媒体
本明細書におけるコンピュータ読取可能媒体のいずれかは、非一時的なもの(例えばメモリ、磁気ストレージ、光ストレージ等)とすることができる。
コンピュータ読取可能媒体への記憶
本明細書で説明される記憶動作のいずれかは、1つ以上のコンピュータ読取可能媒体(例えばコンピュータ読取可能記憶媒体又は他の有形の媒体)内に記憶することによって実装され得る。
記憶されるものとして説明されるもののいずれかを、1つ以上のコンピュータ読取可能媒体(例えばコンピュータ読取可能記憶媒体又は他の有形の媒体)内に記憶することができる。
コンピュータ読取可能媒体における方法
本明細書で説明される方法のいずれかは、1つ以上のコンピュータ読取可能媒体(例えばコンピュータ読取可能記憶媒体又は他の有形の媒体)内(例えばその上にエンコードされる)コンピュータ実行可能命令によって実装され得る。そのような命令は、コンピュータに方法を実行させることができる。本明細書で説明される技術を、様々なプログラミング言語で実装することができる。
コンピュータ読取可能ストレージデバイスにおける方法
本明細書で説明される方法のいずれかは、1つ以上のコンピュータ読取可能ストレージデバイス(例えばメモリ、磁気ストレージ、光ストレージ等)内に記憶されるコンピュータ実行可能命令によって実装され得る。そのような命令は、コンピュータに方法を実行させることができる。
例示の組合せ
様々な組合せがサポートされ得る。例えば着信ユーザインタフェースを、通話進行中ユーザインタフェース(例えば着信が受け入れられた後に)と組み合わせることができる。通話進行中ユーザインタフェースを(例えば通話がバックグラウンドに移る場合)バックグラウンドの通話進行ユーザインタフェースと組み合わせることができる。
通話進行中ユーザインタフェースを、(例えば通話中にホームユーザインタフェースへのナビゲーションが生じる場合)ホームユーザインタフェースと組み合わせることができる。そのような場合、バックグラウンドの通話進行中ユーザインタフェースも表示することができる。
同様に、通信を開始するためのユーザインタフェースを、他のユーザインタフェースのいずれかと組み合わせることも可能である。
代替
いずれかの例からの技術を、他の例のいずれか1つ以上において説明される技術と組み合わせることができる。「例示」という用語が使用される場合、理想的な実施形態ではなく、例を示すように意図される。開示される実施形態の原理を適用することができる多くの可能性のある実施形態の観点から、図示される実施形態は、開示される技術の例でると認識されるべきであり、開示される技術の範囲に対する限定として解釈されるべきではない。むしろ、開示される技術の範囲は、以下の特許請求の範囲によって網羅される範囲を含む。したがって、特許請求の範囲及びその精神にあるもの全てを本発明として請求する。



  1. 少なくとも部分的に通信デバイスによって実施される方法であって:
    前記通信デバイスで第1の通話タイプの第1の通話が実施されている間に、第2の通話タイプの第2の通話へのシームレスな移行が可能であるかどうかを判断するステップであって、当該シームレスな移行が可能であるかどうかを判断するステップは、前記第2の通話タイプの通信アプリケーションが前記通信デバイスで利用可能であるかどうかを確認することを含む、ステップと;
    シームレスな移行が可能であると判断したことに応答して、シームレスな移行へのユーザインタフェースオプションを提示するステップと;
    前記ユーザインタフェースオプションのアクティブ化に応答して、前記第2の通話タイプの前記第2の通話へシームレスに移行するステップと;
    を備える、方法。

  2. 前記シームレスな移行へのユーザインタフェースオプションを提示するステップは、
    前記第1の通話を実施している間に、通話進行ユーザインタフェース内にグラフィカルボタンを提示することを備える、
    請求項1に記載の方法。

  3. 前記グラフィカルボタンは、前記第2の通話タイプを示す、
    請求項2に記載の方法。

  4. ネットワーク状態が前記第2の通話タイプをサポートしないとき、前記のボタンをディスエーブルされるよう表示するステップ
    を更に備える、請求項2に記載の方法。

  5. 前記第2の通話タイプをサポートする通信アプリケーションのインストール中に、前記第2の通話タイプを介してシームレスな移行を実施するときに使用されるように前記通信アプリケーションを登録するステップと;
    前記登録に応答して、前記グラフィカルボタンを提示するステップと;
    を更に備える、請求項2に記載の方法。

  6. 前記第2の通話タイプの前記第2の通話へシームレスに移行するステップは、
    前記第2の通話タイプの前記第2の通話を開始することと;
    前記第2の通話のオーディオを抑制することと;
    前記第2の通話タイプの前記第2の通話の接続を確認することと;
    を備える、請求項1に記載の方法。

  7. 前記第1の通話タイプはビデオを伴わないオーディオを備え、
    前記第2の通話タイプはビデオを伴うオーディオを備え、
    それにより、前記のシームレスに移行するステップは、オーディオ通話からビデオ通話へアップグレードする、
    請求項1に記載の方法。

  8. 前記第2の通話タイプの通話をサポートする通信アプリケーションが、前記通信デバイスにインストールされていないと決定するステップと;
    通話進行ユーザインタフェースの一部として、前記通信デバイスにおける前記通信アプリケーションのインストールプロセスを開始するオプションを提示するステップと;
    を更に備える、請求項1に記載の方法。

  9. 前記第1の通話は、他の通信デバイスとの通話であり、
    前記第2の通話タイプの第2の通話へのシームレスな移行が可能であるかどうかを判断するステップは、
    前記他の通信デバイスが前記第2の通話タイプの通話をサポートするかどうかを判断することを備える、
    請求項1に記載の方法。

  10. 通信デバイスであって:
    1つ以上のプロセッサと;
    実行可能なオーディオ通話アプリケーションと、実行可能なビデオ通話アプリケーションと、該実行可能なビデオ通話アプリケーションがシームレスな移行をサポートするかどうかを示すアプリケーション登録情報とを記憶する、メモリと;
    通話を前記オーディオ通話アプリケーションから前記ビデオ通話アプリケーションへシームレスに移行するように構成される、通話コントローラと;
    を備える、通信デバイス。

 

 

Patent trol of patentswamp
類似の特許
本発明は、4Gシステム以後に、高いデータ転送率を支援するための5G通信システムをIoT技術と融合する通信技法及びそのシステムに関する。5G通信技術及びIoT関連技術を基盤に知能型サービス(例えば、スマートホーム、スマートビルディング、スマートシティ、スマートカーあるいはコネックティドカー、ヘルスケア、デジタル教育、小売り業、保安及び安全関連サービスなど)に適用することができる。本発明の一実施形態による端末は、信号を送受信する通信部と;基地局から前記端末の端末性能情報要請メッセージを受信し、前記端末の端末性能情報メッセージを生成し、前記端末性能情報メッセージを前記基地局に転送する制御部と;を含み、前記端末性能情報メッセージは、前記端末性能が属するカテゴリーグループに対する情報を含むことを特徴とする。
ピンポンハンドオーバおよびピンポンセル再選択を軽減するためのシステムおよび方法が開示される。一態様では、そのシステムおよび方法は、モバイルデバイスによる複数のセル変更を検出し、検出された複数のセル変更において少なくとも1つのセルの2回以上の出現を判断し、その判断に基づいて、セル変更に関連する1つまたは複数のパラメータに1つまたは複数の倍率を適用するように構成される。
ワイヤレスデバイスがネットワークを選択するための装置、システム、方法が開示される。ワイヤレスデバイスがユーザからネットワークサイトにアクセスするリクエストを受信する。ワイヤレスデバイスが次いでユーザに事前に選択された所定の重み付け済み基準設定に基づきネットワークを選択する。
アクセス端末は、あるアクセスポイントから別のアクセスポイントにハンドオーバすべきかどうか、および/またはどのようにハンドオーバすべきかを決定するためにアクセス端末によって使用される少なくとも1つのハンドオーバパラメータを適応(たとえば、自己最適化)させる。さらに、アクセス端末は、アクセスポイントの異なるペア間のハンドオーバのために異なるハンドオーバパラメータを使用する。アクセスポイントペアの各々のために、アクセス端末は、アクセスポイント間のアクセス端末のハンドオーバ中に発生するハンドオーバ問題の記録を維持する。アクセスポイントの所与のペアについてハンドオーバ問題が起こった場合、アクセス端末は、ハンドオーバ問題を緩和する試みにおいて、そのアクセスポイントペアに関連する(1つまたは複数の)ハンドオーバパラメータを適応させ得る。ハンドオーバパラメータ適応が発生するかまたはあまりに頻繁に発生する場合、アクセス端末は、後続のハンドオーバ動作および/またはハンドオーバパラメータ適応動作中に使用するために、適応されたハンドオーバパラメータを記憶し得る。
アクセス端末は、あるアクセスポイントから別のアクセスポイントにハンドオーバすべきかどうか、および/またはどのようにハンドオーバすべきかを決定するためにアクセス端末によって使用される少なくとも1つのハンドオーバパラメータを適応(たとえば、自己最適化)させる。さらに、アクセス端末は、アクセスポイントの異なるペア間のハンドオーバのために異なるハンドオーバパラメータを使用する。アクセスポイントペアの各々のために、アクセス端末は、アクセスポイント間のアクセス端末のハンドオーバ中に発生するハンドオーバ問題の記録を維持する。アクセスポイントの所与のペアについてハンドオーバ問題が起こった場合、アクセス端末は、ハンドオーバ問題を緩和する試みにおいて、そのアクセスポイントペアに関連する(1つまたは複数の)ハンドオーバパラメータを適応させ得る。ハンドオーバパラメータ適応が発生するかまたはあまりに頻繁に発生する場合、アクセス端末は、後続のハンドオーバ動作および/またはハンドオーバパラメータ適応動作中に使用するために、適応されたハンドオーバパラメータを記憶し得る。
本発明の実施例は上り信号に基づくハンドオーバー方法、上り信号の構成方法、ユーザ装置及び基地局を提供し、該ハンドオーバー方法はソース基地局がユーザ装置にトリガーメッセージを送信し、これにより、ユーザ装置がハンドオーバー用の上り信号を送信するようにトリガーし;1つ又は複数の他の基地局が上り信号への探測に基づいて送信した通知メッセージを受信し;及び、通知メッセージに基づいて1つ又は複数の他の基地局のうちからターゲット基地局を確定し、そしてユーザ装置に対してハンドオーバーを行うことを含む。本発明の実施例により、上り信号の測定に基づいてハンドオーバーの判断を加速させ、異なるシナリオ下でのハンドオーバーのニーズを満足することができる。
移動モジュールが、1つ以上のセンサからセンサデータを受け取り、センサデータに基づいて、ユーザーデバイスの移動のタイプの移動を決定する。移動または移動の割合に基づいて、移動モジュールが、ユーザーデバイスを移動度状態に移行する。ユーザーデバイスは、移動度状態に基づいてオフセットがスケーリングされた1つ以上の計測パラメータを使用して、隣接基地局からの無線信号のパワーレベルを評価する。
【選択図】図5
【課題】これまで、2つのシステムに関与し、2つの異なるIPアドレスを使用する2台の端末間で既存のセッションを転送できるシステムは存在していなかった。
【解決手段】2つの異なるシステムにおいて、2つの異なるIPアドレスを使用して、2つの異なる技術標準に従って動作する2つの異なる端末間でインターネットプロトコル(IP)トラフィックを転送(すなわち、ハンドオフ)できる装置および方法が開示される。たとえば、無線ローカルエリアネットワーク(WLAN)端末と3GPP UMTS端末の間、またはCDMA2000端末と3GPP UMTS端末の間のセッションハンドオフがある。端末は物理的に個別のエンティティでも、共通の筺体に収納された別々の論理エンティティでも良い。
【選択図】図1
【課題】コアネットワーク全体の設備コストの低減を図り、効率的なハンドオーバ機能を提供する。【解決手段】ローアクセスプライオリティの端末が該端末からのrrcコネクション要求がローアクセスプライオリティであることを示す情報であるlapiをソース基地局に提供し、さらに前記ソース基地局を介してソースmmeにlapiを通知して保持させ、ソースmmeは端末がハンドオーバする場合にソース基地局からhandover requiredを受信し保持されたlapiに基づき前記端末に専用のターゲットmmeを選択しforward relocation requestを送信する。【選択図】図17
To top