JP6086965B2 - セキュアなメディアベース・カンファレンシングにおける動的シグナリングおよびリソース割り当て - Google Patents

セキュアなメディアベース・カンファレンシングにおける動的シグナリングおよびリソース割り当て Download PDF

Info

Publication number
JP6086965B2
JP6086965B2 JP2015192259A JP2015192259A JP6086965B2 JP 6086965 B2 JP6086965 B2 JP 6086965B2 JP 2015192259 A JP2015192259 A JP 2015192259A JP 2015192259 A JP2015192259 A JP 2015192259A JP 6086965 B2 JP6086965 B2 JP 6086965B2
Authority
JP
Japan
Prior art keywords
conference session
media
session
request
conference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015192259A
Other languages
English (en)
Other versions
JP2016076926A (ja
Inventor
エリック・アンダーソン
ダニエル・ピー・ゲップ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Edifire LLC
Original Assignee
Edifire LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Edifire LLC filed Critical Edifire LLC
Publication of JP2016076926A publication Critical patent/JP2016076926A/ja
Application granted granted Critical
Publication of JP6086965B2 publication Critical patent/JP6086965B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/152Multipoint control units therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1818Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4038Arrangements for multi-party communication, e.g. for conferences with floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1076Screening of IP real time communications, e.g. spam over Internet telephony [SPIT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • H04M3/567Multimedia conference systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本出願は、広くは、セキュアなメディアベース・カンファレンシングにおける動的シグナリングおよびリソース割り当てのための、コンピュータプログラムプロダクトを含む、方法および装置に関するものである。
メディアベース(すなわち、ビデオおよび/または音声)カンファレンシングは、従来、動的なリソース割り当て、監視、データ保存、セッション移動、およびメディアネゴシエーションの特性を欠いている。一般的に、カンファレンス・コールは、静的に構成されたプライベートネットワークを介して、ネットワークおよびカンファレンシングシステムに既知の認証済みエンドポイントデバイス間で実施される。一部の例では、それらのプライベートネットワークは、特定のベンダからのプロプライエタリ・ソフトウェアおよび/またはハードウェアプラットフォームで動作し、プロプライエタリ技術の範囲外のエンドポイントデバイスがカンファレンシング・プラットフォームにアクセスすることを難しくしている。
また、多くの場合、ミーティングルーム、IVR、およびルーティング機能のようなカンファレンシング・リソースは、プライベートネットワークにおいて、カンファレンシングシステムの予想される利用状況に基づいて予め構成設定され、変化するネットワーク要求および予想外のリソース利用状況に対して適応することは、困難でコストがかかる可能性がある。
そこで、必要なのは、対話型音声応答(IVR)機能および自動出席などのコール・エンハンスメント特性、エンドポイントのパスワード管理、(フィルタリングおよび許可/拒否機能を含む)多要素認証および認可などのコール・セキュリティ特性、記録オプション、規制ルール、および他の保持/監視特性などのコール・コンプライアンス特性を与えるロバストな特性群を提供しつつ、メディアベース・カンファレンシングにおいて動的なリソース割り当て、データ保存、カンファレンス・セッション監視、およびメディアベースネゴシエーションを実施するための方法およびシステムである。本明細書に記載のシステムおよび方法は、ルーティング、パーミッション、認証などに関する動的意思決定を提供するという利点を有する。本明細書に記載のシステムおよび方法は、様々に異なるタイプのソフトウェアおよびハードウェアプラットフォームで動作するエンドポイント間のシームレスな相互運用性を備えることによるメディアベース・カンファレンシングの利点を提供する。
本明細書に記載のシステムおよび方法は、メディアベースのカンファレンス・コールの可用性および効率的ルーティングを確保するために、システムのハードウェアおよびソフトウェアリソースを動的に割り当てるという利点を有する。例えば、本明細書に記載のシステムおよび方法によって割り当てられるハードウェアおよびソフトウェアリソースは、メッシュベースのフレームワークで通信する複数の地理的に分散した(例えば、同一の物理的エリアにない)独立ノード上に配置することができる。この属性によって、本システムは、従来の共通に使用される「シングルボックス」システムに代えて、コンポーネント化されたコールシステムという利点を提供することが可能となる。また、所与のカンファレンス・コール、エンドポイントデバイス、またはユーザに対してどのようなアクションを取るべきかについての意思決定において、システムを構成するプロセスおよびモジュールは、互いに独立に、システムの他のノードまたはモジュールに依存することなく動作することができる。本明細書に記載のシステムおよび方法は、「カンファレンス・コール」を、いずれの特定の物理的インフラストラクチャからも切り離すという利点を実現する。
本発明は、一態様では、メディアベースのカンファレンス・セッションにおいてリソースを割り当てる方法を特徴とする。サーバコンピュータ装置は、カンファレンス・セッションに参加するための第1の要求を、そのカンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信し、このとき、第1の要求は、第1のエンドポイントデバイスからの第1のメディアストリームを含んでいる。サーバコンピュータ装置は、第1の要求に基づいてメディアロケーションサービスに問い合わせすることにより、そのカンファレンス・セッションのホスティングサイトを決定し、さらに、第1の要求に基づいてホスティングサイトのデータベースに問い合わせすることにより、カンファレンス・セッションの構成属性を決定する。サーバコンピュータ装置は、第1のエンドポイントデバイスのメディアストリームを、ホスティングサイトのウェイティングルームに接続する。サーバコンピュータ装置は、そのカンファレンス・セッションに参加するための第2の要求を、そのカンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信し、このとき、第2の要求は、第2のエンドポイントデバイスからの第2のメディアストリームを含んでいる。サーバコンピュータ装置は、第2の要求に基づいてメディアロケーションサービスに問い合わせすることにより、そのホスティングサイトにおけるカンファレンス・セッションのためのミーティングルームを決定し、さらに、第1のメディアストリームおよび第2のメディアストリームをそのミーティングルームに転送することにより、カンファレンス・セッションを確立する。
本発明は、別の態様では、メディアベースのカンファレンス・セッションにおいてリソースを割り当てるためのシステムを特徴とする。システムは、カンファレンス・セッションに参加するための第1の要求を、そのカンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信するように構成されたサーバコンピュータ装置を備え、このとき、第1の要求は、第1のエンドポイントデバイスからの第1のメディアストリームを含んでいる。サーバコンピュータ装置は、第1の要求に基づいてメディアロケーションサービスに問い合わせすることにより、そのカンファレンス・セッションのホスティングサイトを決定し、さらに、第1の要求に基づいてホスティングサイトのデータベースに問い合わせすることにより、カンファレンス・セッションの構成属性を決定するように、さらに構成されている。サーバコンピュータ装置は、第1のエンドポイントデバイスのメディアストリームを、ホスティングサイトのウェイティングルームに接続するように、さらに構成されている。サーバコンピュータ装置は、そのカンファレンス・セッションに参加するための第2の要求を、そのカンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信するように、さらに構成されており、このとき、第2の要求は、第2のエンドポイントデバイスからの第2のメディアストリームを含んでいる。サーバコンピュータ装置は、第2の要求に基づいてメディアロケーションサービスに問い合わせすることにより、そのホスティングサイトにおけるカンファレンス・セッションのためのミーティングルームを決定し、さらに、第1のメディアストリームおよび第2のメディアストリームをそのミーティングルームに転送することにより、カンファレンス・セッションを確立するように、さらに構成されている。
本発明は、別の態様では、メディアベースのカンファレンス・セッションにおいてリソースを割り当てるためのコンピュータプログラムプロダクトであって、非一時的なコンピュータ可読記憶媒体内に有形に具現化されたコンピュータプログラムプロダクトを特徴とする。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、カンファレンス・セッションに参加するための第1の要求を、そのカンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信させるように機能する命令を含み、このとき、第1の要求は、第1のエンドポイントデバイスからの第1のメディアストリームを含んでいる。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、第1の要求に基づいてメディアロケーションサービスに問い合わせすることにより、そのカンファレンス・セッションのホスティングサイトを決定させ、さらに、第1の要求に基づいてホスティングサイトのデータベースに問い合わせすることにより、カンファレンス・セッションの構成属性を決定させるように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、第1のエンドポイントデバイスのメディアストリームを、ホスティングサイトのウェイティングルームに接続させるように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、そのカンファレンス・セッションに参加するための第2の要求を、そのカンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信させるように機能する命令をさらに含み、このとき、第2の要求は、第2のエンドポイントデバイスからの第2のメディアストリームを含んでいる。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、第2の要求に基づいてメディアロケーションサービスに問い合わせすることにより、そのホスティングサイトにおけるカンファレンス・セッションのためのミーティングルームを決定させ、さらに、第1のメディアストリームおよび第2のメディアストリームをそのミーティングルームに転送することにより、カンファレンス・セッションを確立させるように機能する命令をさらに含む。
上記の態様はいずれも、以下の特徴のうちの1つ以上を含むことができる。一部の実施形態では、カンファレンス・セッションのホスティングサイトには、カンファレンス・セッションをホストするために使用されるコンピュータ装置の地理的ロケーション、およびカンファレンス・セッションをホストするために使用されるコンピュータ装置の論理的ロケーション、のうちの1つ以上が含まれる。一部の実施形態では、構成属性には、認証データ、セッション主催者データ、セッション参加者データ、セッションのメディア能力データ、セッション特性データ、のうちの1つ以上が含まれる。一部の実施形態では、ウェイティングルームは、対話型音声応答(IVR)システムを含む。
一部の実施形態では、カンファレンス・セッションのホスティングサイトを決定することは、利用できるホスティングサイトのリストをメディアロケーションサービスから取得することと、第1のエンドポイントデバイスのロケーションに基づいてホスティングサイトを選択することとを含む。一部の実施形態では、カンファレンス・セッションのホスティングサイトを決定することは、利用できるホスティングサイトのリストをメディアロケーションサービスから取得することと、カンファレンス・セッションの主催者に基づいてホスティングサイトを選択することとを含む。
一部の実施形態では、そのホスティングサイトにおけるカンファレンス・セッションのためのミーティングルームを決定することは、利用できるミーティングルームのリストをメディアロケーションサービスから取得することと、そのカンファレンス・セッションを確立するために必要なリソースに基づいてミーティングルームを選択することとを含む。一部の実施形態では、サーバコンピュータ装置は、第1の要求に基づいてユーザプロファイル・データベースに問い合わせすることによって、その非主催者参加者を識別する。一部の実施形態では、サーバコンピュータ装置は、第3のエンドポイントデバイスに接続して、第3のエンドポイントデバイスからの第3のメディアストリームをミーティングルームに転送する。
一部の実施形態では、第1の要求は、その非主催者参加者に関連付けられた第1の認証資格情報を含み、サーバコンピュータ装置は、第1の認証資格情報に基づいて、第1のエンドポイントデバイスをミーティングルームに接続すべきかどうか判断する。一部の実施形態では、第2の要求は、その主催者に関連付けられた第2の認証資格情報を含み、サーバコンピュータ装置は、第2の認証資格情報に基づいて、カンファレンス・セッションを確立すべきかどうか判断する。
本発明は、別の態様では、複数のメディアベースカンファレンス・セッションのセッション状態を管理する方法を特徴とする。サーバコンピュータ装置は、一次インメモリデータ構造体内のデータ要素を更新するための第1の要求を受け取り、このとき、該要求は、1つ以上の進行中のメディアベースカンファレンス・セッションのセッション状態に関連付けられたデータ要素に対する更新を含んでいる。サーバコンピュータ装置は、そのデータ要素を更新するための、第1の要求の後に受け取る後続の要求をブロックし、そしてブロックされた各要求に関連付けられたタイムスタンプに基づいて、それらのブロックされた要求を順に一時キューに格納する。サーバコンピュータ装置は、そのデータ要素に対する更新を二次インメモリデータ構造体に複製する。サーバコンピュータ装置は、複製ステップが完了すると、第1の要求のデータ要素の更新に基づいて、一次インメモリデータ構造体においてそのデータ要素を更新し、そしてブロックされた要求をタイムスタンプに基づいて処理する。
本発明は、別の態様では、複数のメディアベースカンファレンス・セッションのセッション状態を管理するためのシステムを特徴とする。システムは、一次インメモリデータ構造体内のデータ要素を更新するための第1の要求を受け取るように構成されたサーバコンピュータ装置を備え、このとき、該要求は、1つ以上の進行中のメディアベースカンファレンス・セッションのセッション状態に関連付けられたデータ要素に対する更新を含んでいる。サーバコンピュータ装置は、そのデータ要素を更新するための、第1の要求の後に受け取る後続の要求をブロックし、そしてブロックされた各要求に関連付けられたタイムスタンプに基づいて、それらのブロックされた要求を順に一時キューに格納するように、さらに構成されている。サーバコンピュータ装置は、そのデータ要素に対する更新を二次インメモリデータ構造体に複製するように、さらに構成されている。サーバコンピュータ装置は、複製ステップが完了すると、第1の要求のデータ要素の更新に基づいて、一次インメモリデータ構造体においてそのデータ要素を更新し、そしてブロックされた要求をタイムスタンプに基づいて処理するように、さらに構成されている。
本発明は、別の態様では、複数のメディアベースカンファレンス・セッションのセッション状態を管理するためのコンピュータプログラムプロダクトであって、非一時的なコンピュータ可読記憶媒体内に有形に具現化されたコンピュータプログラムプロダクトを特徴とする。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、一次インメモリデータ構造体内のデータ要素を更新するための第1の要求を受け取らせる、ように機能する命令を含み、このとき、該要求は、1つ以上の進行中のメディアベースカンファレンス・セッションのセッション状態に関連付けられたデータ要素に対する更新を含んでいる。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、そのデータ要素を更新するための、第1の要求の後に受け取る後続の要求をブロックさせ、そしてブロックされた各要求に関連付けられたタイムスタンプに基づいて、それらのブロックされた要求を順に一時キューに格納させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、そのデータ要素に対する更新を二次インメモリデータ構造体に複製させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、複製ステップが完了すると、サーバコンピュータ装置に、第1の要求のデータ要素の更新に基づいて、一次インメモリデータ構造体においてそのデータ要素を更新させ、そしてブロックされた要求をタイムスタンプに基づいて処理させる、ように機能する命令をさらに含む。
上記の態様はいずれも、以下の特徴のうちの1つ以上を含むことができる。一部の実施形態では、サーバコンピュータ装置は、ブロックされた要求を処理する前に、そのデータ要素に対する更新を、インメモリデータ構造体に結び付けられた1つ以上のデータストアに複製する。一部の実施形態では、サーバコンピュータ装置は、インメモリデータ構造体をインデキシングする。一部の実施形態では、インデキシングすることは、それらのインメモリデータ構造体内の各データ要素にタイムスタンプを割り当てることを含む。一部の実施形態では、サーバコンピュータ装置は、(i)一次インメモリデータ構造体と(ii)二次インメモリデータ構造体のそれぞれにおける対応するデータ要素に割り当てられたタイムスタンプを比較することで、それらのインメモリデータ構造体が同期しているかどうか判定する。
一部の実施形態では、サーバコンピュータ装置は、比較ステップに基づいて、それらの対応するデータ要素におけるコンフリクトを判定し、そして、より古いタイムスタンプを有するデータ要素を、より新しいタイムスタンプを有するデータ要素に一致するように更新する。一部の実施形態では、サーバコンピュータ装置は、比較ステップに基づいて、それらの対応するデータ要素におけるコンフリクトを判定し、そして、それらの対応するデータ要素を両方とも削除する。
一部の実施形態では、サーバコンピュータ装置は、1つ以上のデータストアから一次インメモリデータ構造体に持続的データ要素をロードすることにより、一次インメモリデータ構造体を初期化する。一部の実施形態では、持続的データ要素には、カンファレンス・セッションのルームデータ、および多地点制御ユニットのリソース可用性、のうちの1つ以上が含まれる。一部の実施形態では、1つ以上の進行中のメディアベースカンファレンス・セッションのセッション状態には、そのカンファレンス・セッションが割り当てられている多地点制御ユニットの識別情報が含まれる。一部の実施形態では、サーバコンピュータ装置は、一次インメモリデータ構造体がオフラインであることを判定し、そして第1の要求に基づいて、二次インメモリデータ構造体内のデータ要素を更新する。
本発明は、別の態様では、メディアベースのカンファレンス・セッションを再ルーティングするためのコンピュータ化された方法を特徴とする。サーバコンピュータ装置は、外部メディアストリームによって該サーバコンピュータ装置にそれぞれ接続されるとともに第1の内部メディアストリームによって該サーバコンピュータ装置から第1の多地点制御ユニットにそれぞれ接続されている複数のエンドポイントデバイス間の、第1のカンファレンス・セッションに関連したコンディションを判定し、このとき、該コンディションは、新たな多地点制御ユニットが必要であることを示すものである。サーバコンピュータ装置は、それらの複数のエンドポイントデバイス間の第2のカンファレンス・セッションをホストするために利用できる第2の多地点制御ユニットを特定する。サーバコンピュータ装置は、外部メディアストリームが接続されたままで、第1の内部メディアストリームを第1の多地点制御ユニットから切断する。サーバコンピュータ装置は、それらの複数のエンドポイントデバイスの各々を、第2の内部メディアストリームによって該サーバコンピュータ装置から第2の多地点制御ユニットに接続する。サーバコンピュータ装置は、第2の多地点制御ユニット上で、それらの複数のエンドポイントデバイス間の第2のカンファレンス・セッションを確立する。
本発明は、別の態様では、メディアベースのカンファレンス・セッションを再ルーティングするためのシステムを特徴とする。システムは、外部メディアストリームによってサーバコンピュータ装置にそれぞれ接続されるとともに第1の内部メディアストリームによってサーバコンピュータ装置から第1の多地点制御ユニットにそれぞれ接続されている複数のエンドポイントデバイス間の、第1のカンファレンス・セッションに関連したコンディションを判定するように構成されたサーバコンピュータ装置を備え、このとき、該コンディションは、新たな多地点制御ユニットが必要であることを示すものである。サーバコンピュータ装置は、それらの複数のエンドポイントデバイス間の第2のカンファレンス・セッションをホストするために利用できる第2の多地点制御ユニットを特定するように、さらに構成されている。サーバコンピュータ装置は、外部メディアストリームが接続されたままで、第1の内部メディアストリームを第1の多地点制御ユニットから切断するように、さらに構成されている。サーバコンピュータ装置は、それらの複数のエンドポイントデバイスの各々を、第2の内部メディアストリームによって該サーバコンピュータ装置から第2の多地点制御ユニットに接続し、そして第2の多地点制御ユニット上で、それらの複数のエンドポイントデバイス間の第2のカンファレンス・セッションを確立するように、さらに構成されている。
本発明は、別の態様では、メディアベースのカンファレンス・セッションを再ルーティングするためのコンピュータプログラムプロダクトであって、非一時的なコンピュータ可読記憶媒体内に有形に具現化されたコンピュータプログラムプロダクトを特徴とする。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、外部メディアストリームによって該サーバコンピュータ装置にそれぞれ接続されるとともに第1の内部メディアストリームによって該サーバコンピュータ装置から第1の多地点制御ユニットにそれぞれ接続されている複数のエンドポイントデバイス間の、第1のカンファレンス・セッションに関連したコンディションを判定させる、ように機能する命令を含み、このとき、該コンディションは、新たな多地点制御ユニットが必要であることを示すものである。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、それらの複数のエンドポイントデバイス間の第2のカンファレンス・セッションをホストするために利用できる第2の多地点制御ユニットを特定させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、外部メディアストリームが接続されたままで、第1の内部メディアストリームを第1の多地点制御ユニットから切断させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、それらの複数のエンドポイントデバイスの各々を、第2の内部メディアストリームによって該サーバコンピュータ装置から第2の多地点制御ユニットに接続させ、そして第2の多地点制御ユニット上で、それらの複数のエンドポイントデバイス間の第2のカンファレンス・セッションを確立させる、ように機能する命令をさらに含む。
上記の態様はいずれも、以下の特徴のうちの1つ以上を含むことができる。一部の実施形態では、コンディションには、第1の多地点制御ユニットの障害、所定の限度を超える第1のカンファレンス・セッションのエンドポイントデバイスのカウント数、所定の限度を超える第1のカンファレンス・セッションから生じるリソース負荷、のうちの1つ以上が含まれる。一部の実施形態では、サーバコンピュータ装置は、第1の内部メディアストリームを第1の多地点制御ユニットから切断する前に、それらの複数のエンドポイントデバイスに通知する。
一部の実施形態では、第2のカンファレンス・セッションをホストするために利用できる第2の多地点制御ユニットを特定することは、第2の多地点制御ユニットのロケーションを特定することを含む。一部の実施形態では、第2のカンファレンス・セッションをホストするために利用できる第2の多地点制御ユニットを特定することは、セッション要件を特定するために第1のカンファレンス・セッションを分析することと、第2の多地点制御ユニットがそれらのセッション要件を満たすことが可能かどうか判断することとを含む。一部の実施形態では、セッション要件には、第1のカンファレンス・セッションに参加しているエンドポイントデバイスのカウント数、第1のカンファレンス・セッションに参加しているエンドポイントデバイスによって消費されるメディア帯域幅、第1の多地点制御ユニットの地理的ロケーション、第1のカンファレンス・セッションに参加している複数のエンドポイントデバイスの少なくとも1つによって使用されるメディアプロトコル、のうちの1つ以上が含まれる。
一部の実施形態では、第2のカンファレンス・セッションをホストするために利用できる第2の多地点制御ユニットを特定することは、多地点制御ユニットのリストを特定することと、それらの多地点制御ユニットの各々に関連した現在のリソース利用状況に基づいて、そのリストから多地点制御ユニットを選択することとを含む。一部の実施形態では、第1の内部メディアストリームを第1の多地点制御ユニットから切断することは、外部メディアストリームがアクティブに維持されるように、外部メディアストリームによって、それらの複数のエンドポイントデバイスにメディアを伝送することを含む。
一部の実施形態では、これらのステップは、リアルタイムで実行される。一部の実施形態では、サーバコンピュータ装置は、第2のカンファレンス・セッションをホストするために利用できる第2の多地点制御ユニットを特定する前に、第1のカンファレンス・セッションに関連したコンディションが解消するのを待つ。一部の実施形態では、サーバコンピュータ装置は、所定の期間、待機する。
本発明は、別の態様では、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートする方法を特徴とする。サーバコンピュータ装置は、複数のエンドポイントデバイス間のカンファレンス・セッションに参加するための要求を受信し、このとき、該要求は、第1のエンドポイントデバイスから受信するものであって、第1のエンドポイントデバイスからのメディアフローを含んでいる。サーバコンピュータ装置は、第1のエンドポイントデバイスと、第1のエンドポイントデバイスがその要求を送信した送信元ネットワーク、のうちの少なくとも1つを特定する。サーバコンピュータ装置は、特定された第1のエンドポイントデバイスに関連付けられた第1のメディアネゴシエーション・プロファイルが存在するかどうか判定する。サーバコンピュータ装置は、特定されたネットワークに関連付けられた第2のメディアネゴシエーション・プロファイルが存在するかどうか判定する。サーバコンピュータ装置は、第1のメディアネゴシエーション・プロファイルおよび第2のメディアネゴシエーション・プロファイルに基づいて、メディアフローのビットレート、メディアフローのセッション記述、メディアフローの宛先多地点制御ユニット、のうちの1つ以上を調整する。サーバコンピュータ装置は、第1のエンドポイントデバイスからの調整されたメディアフローを、カンファレンス・セッションに接続する。
本発明は、別の態様では、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートするためのシステムを特徴とする。システムは、複数のエンドポイントデバイス間のカンファレンス・セッションに参加するための要求を受信するように構成されたサーバコンピュータ装置を備え、このとき、該要求は、第1のエンドポイントデバイスから受信するものであって、第1のエンドポイントデバイスからのメディアフローを含んでいる。サーバコンピュータ装置は、第1のエンドポイントデバイスと、第1のエンドポイントデバイスがその要求を送信した送信元ネットワーク、のうちの少なくとも1つを特定するように、さらに構成されている。サーバコンピュータ装置は、特定された第1のエンドポイントデバイスに関連付けられた第1のメディアネゴシエーション・プロファイルが存在するかどうか判定するように、さらに構成されている。サーバコンピュータ装置は、特定されたネットワークに関連付けられた第2のメディアネゴシエーション・プロファイルが存在するかどうか判定するように、さらに構成されている。サーバコンピュータ装置は、第1のメディアネゴシエーション・プロファイルおよび第2のメディアネゴシエーション・プロファイルに基づいて、メディアフローのビットレート、メディアフローのセッション記述、メディアフローの宛先多地点制御ユニット、のうちの1つ以上を調整するように、さらに構成されている。サーバコンピュータ装置は、第1のエンドポイントデバイスからの調整されたメディアフローを、カンファレンス・セッションに接続するように、さらに構成されている。
本発明は、別の態様では、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートするためのコンピュータプログラムプロダクトであって、非一時的なコンピュータ可読記憶媒体内に有形に具現化されたコンピュータプログラムプロダクトを特徴とする。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、複数のエンドポイントデバイス間のカンファレンス・セッションに参加するための要求を受信させる、ように機能する命令を含み、このとき、該要求は、第1のエンドポイントデバイスから受信するものであって、第1のエンドポイントデバイスからのメディアフローを含んでいる。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、第1のエンドポイントデバイスと、第1のエンドポイントデバイスがその要求を送信した送信元ネットワーク、のうちの少なくとも1つを特定させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、特定された第1のエンドポイントデバイスに関連付けられた第1のメディアネゴシエーション・プロファイルが存在するかどうか判定させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、特定されたネットワークに関連付けられた第2のメディアネゴシエーション・プロファイルが存在するかどうか判定させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、第1のメディアネゴシエーション・プロファイルおよび第2のメディアネゴシエーション・プロファイルに基づいて、メディアフローのビットレート、メディアフローのセッション記述、メディアフローの宛先多地点制御ユニット、のうちの1つ以上を調整させる、ように機能する命令をさらに含む。コンピュータプログラムプロダクトは、サーバコンピュータ装置に、第1のエンドポイントデバイスからの調整されたメディアフローを、カンファレンス・セッションに接続させる、ように機能する命令をさらに含む。
上記の態様はいずれも、以下の特徴のうちの1つ以上を含むことができる。一部の実施形態では、特定された第1のエンドポイントデバイスに関連付けられた第1のメディアネゴシエーション・プロファイルが存在するかどうか判定することは、サーバコンピュータ装置によって、第1のエンドポイントデバイスに関連付けられた識別子に基づいて、第1のメディアネゴシエーション・プロファイルをデータベースから取得することを含む。一部の実施形態では、特定されたネットワークに関連付けられた第2のメディアネゴシエーション・プロファイルが存在するかどうか判定することは、サーバコンピュータ装置によって、そのネットワークに関連付けられた識別子に基づいて、第2のメディアネゴシエーション・プロファイルをデータベースから取得することを含む。
一部の実施形態では、セッション記述を調整することは、セッション記述に列挙されている1つ以上の特性がそのカンファレンス・セッションでサポートされているかどうか判定することと、そのカンファレンス・セッションでサポートされていない特性を削除するようにセッション記述を修正することとを含む。一部の実施形態では、1つ以上の特性には、第1のエンドポイントデバイスによってサポートされるコーデックが含まれる。一部の実施形態では、1つ以上の特性には、第1のエンドポイントデバイスによってサポートされるシグナリング能力が含まれる。一部の実施形態では、第1のメディアネゴシエーション・プロファイルおよび第2のメディアネゴシエーション・プロファイルが存在しない場合には、メディアフローは調整されない。
一部の実施形態では、サーバコンピュータ装置は、カンファレンス・セッション中に、第1のエンドポイントデバイスからのメディアフローに関連した品質メトリクスを定期的に分析する。一部の実施形態では、サーバコンピュータ装置は、品質メトリクスの分析に基づいて、メディアフローのビットレート、メディアフローのセッション記述、メディアフローの宛先多地点制御ユニット、のうちの1つ以上を調整する。一部の実施形態では、品質メトリクスには、分解能、ジッタ、レイテンシ、のうちの1つ以上が含まれる。一部の実施形態では、サーバコンピュータ装置は、品質メトリクスの分析に基づいて、第1のメディアネゴシエーション・プロファイルと、第2のメディアネゴシエーション・プロファイル、のうちの少なくとも1つを更新する。一部の実施形態では、サーバコンピュータ装置は、品質メトリクスの分析に基づいて、第1のエンドポイントデバイスからのメディアフローを他の多地点制御ユニットに転送する。
本発明の他の態様および利点は、単なる例として本発明の原理を示す添付の図面を併用して、以下の詳細な説明から明らかになるであろう。
添付の図面を併用して、以下の説明を参照することにより、上記発明の利点を、さらなる利点と共に、より良く理解することができる。それらの図面は、必ずしも縮尺通りではなく、全体的に本発明の原理を強調して示している。
図1は、メディアベースのカンファレンス・セッションにおいてリソースを割り当てるため、複数のメディアベースカンファレンス・セッションのセッション状態を管理するため、メディアベースのカンファレンス・セッションを再ルーティングするため、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートするための、システムのブロック図である。
図2は、メディアベースのカンファレンス・セッションにおいてリソースを割り当てる方法のフロー図である。
図3Aは、メディアベースのカンファレンス・セッションにおいてリソースを割り当てる方法のワークフロー図である。 図3Bは、メディアベースのカンファレンス・セッションにおいてリソースを割り当てる方法のワークフロー図である。
図4は、複数のメディアベースカンファレンス・セッションのセッション状態を管理するためのモジュールの詳細ブロック図である。
図5は、複数のメディアベースカンファレンス・セッションのセッション状態を管理する方法のフロー図である。
図6は、メディアベースのカンファレンス・セッションを再ルーティングする方法のフロー図である。
図7は、メディアベースのカンファレンス・セッションを再ルーティングする方法のワークフロー図である。
図8は、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートする方法のフロー図である。
図9は、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートする方法のワークフロー図である。
図1は、メディアベースのカンファレンス・セッションにおいてリソースを割り当てるため、複数のメディアベースカンファレンス・セッションのセッション状態を管理するため、メディアベースのカンファレンス・セッションを再ルーティングするため、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートするための、システム100のブロック図である。システム100は、複数のエンドポイントデバイス102a〜102bと、通信ネットワーク104と、カンファレンシング・プラットフォーム106と、を含み、カンファレンシング・プラットフォームは、エッジモジュール107と、ネットワークAPI(NAPI)モジュール108aおよびメディアロケーションサービスモジュール108bを備えたルーティングモジュール108と、メディアプレーヤ/対話型音声応答(IVR)モジュール109と、メディアエンジン/多地点制御ユニット(MCU)110と、ネットワーク監視モジュール111と、データベース112とを有する。
複数のエンドポイントデバイス102a〜102bは、他のエンドポイントデバイスとのカンファレンス・コールおよびその他のメディア通信セッションを開始するため、およびそれに参加するために、通信ネットワーク104を介してカンファレンシング・プラットフォーム106に接続する。例示的なエンドポイントデバイスとして、デスクトップコンピュータ、ラップトップコンピュータ、タブレット、モバイル装置、スマートフォン、インターネット・アプライアンス、が含まれる。なお、本発明の範囲から逸脱することなく、カンファレンシング・プラットフォーム106に接続可能な他のタイプのコンピュータ装置を使用できることは、理解されるべきである。いくつかの実施形態において、エンドポイントデバイス102a〜102bは、カンファレンシング・プラットフォーム106に接続するために、コールカンファレンシング・クライアントソフトウェアをローカルで実行すること、および/または他のタイプのユーザインタフェース(例えば、ウェブブラウザ)を使用すること、が可能である。コールカンファレンシング・クライアントソフトウェアは、ワシントン州レドモンドのマイクロソフト社から入手できるSkype(登録商標)もしくはカリフォルニア州マウンテンビューのグーグル社から入手できるGoogle(登録商標)ハングアウトのような使用料無料/フリーミアムのオープンネットワーク型ソフトウェア、またはカリフォルニア州サンノゼのポリコム社から入手できるRealPresence(登録商標)プラットフォームのような購入可能なクローズドネットワーク型ソフトウェア、とすることができる。一部の実施形態では、コールカンファレンシング・クライアントソフトウェアは、例えば、企業で内部使用のために開発されたプロプライエタリ・プラットフォームとすることができる。図1は、2つのエンドポイントデバイス102a〜102bを示しているが、システム100は、任意の数のエンドポイントデバイスを含み得ることは、理解されるべきである。
エンドポイントデバイス102a〜102bは、メディアベースのカンファレンス・コールおよびミーティングを開始するため、およびそれに参加するために、カンファレンシング・プラットフォーム106と通信することが、通信ネットワーク104によって可能となる。ネットワーク104は、LANのようなローカルネットワーク、またはインターネットおよび/もしくはセルラネットワークのような広域ネットワークとすることができる。一部の実施形態では、ネットワーク104は、エンドポイントデバイス102a〜102bがカンファレンシング・プラットフォーム106と通信することを可能とする、いくつかの別々のネットワークおよび/またはサブネットワーク(例えば、セルラ→インターネット)で構成される。
カンファレンシング・プラットフォーム106は、ハードウェアモジュールとソフトウェアモジュールの組み合わせであり、これにより、複数のエンドポイントデバイス102a〜102b間のメディアベースのカンファレンス・コールおよびミーティングを、確立し、認可し、そのためのリソースを割り当て、監視し、円滑化し、管理する。カンファレンシング・プラットフォーム106は、エッジモジュール107と、ネットワークAPI(NAPI)モジュール108aおよびメディアロケーションサービスモジュール108bを備えたルーティングモジュール108と、メディアプレーヤ/対話型音声応答(IVR)モジュール109と、メディアエンジン/多地点制御ユニット(MCU)110と、ネットワーク監視モジュール111と、データベース112と、を有する。モジュール107、108、109、110、111は、メディアベースのカンファレンス・コールおよびミーティングを確立すること、認可すること、そのためのリソースを割り当てること、監視すること、円滑化すること、管理すること、に関連した機能を実行するために、カンファレンシング・プラットフォーム106に配置されるハードウェアモジュールおよび/またはソフトウェアモジュールである。一部の実施形態では、モジュール107、108、109、110、111の機能は、複数のコンピュータ装置に分散される。なお、本発明の範囲から逸脱することなく、様々なアーキテクチャ、リソース、および構成(例えば、クラスタコンピューティング、仮想コンピューティング、クラウドコンピューティング)で配置された任意の数のコンピュータ装置を使用できることは、理解されるべきである。例えば、カンファレンシング・プラットフォーム106は、各モジュール107、108、109、110、111の1つ以上のインスタンスを維持する複数の異なるサイトを含むことができる。それらのサイトは、いくつかの異なる地理的ロケーションに分散させることができ、このプラットフォーム106の地理的分散を利用して、カンファレンス・セッションの可用性、品質、および耐障害性を向上させることができる(例えば、すべての参加者または大部分の参加者に近い特定のサイトで、セッションをホストすることができる)。
また、一部の実施形態では、本発明の範囲から逸脱することなく、モジュール107、108、109、110、111のいずれかが、本明細書に記載の機能のいずれかを実行できるように、モジュール107、108、109、110、111の機能を分散させることができることも、理解されるべきである。また、図1は、各モジュール107、108、109、110、111の単一のインスタンスを示しているが、本発明の範囲から逸脱することなく、互いに連携して、または独立に動作する、各モジュール107、108、109、110、111の任意の数のインスタンスが配置され得ることは、理解されるべきである。
エッジモジュール107は、ネットワーク104とルーティングモジュール108との間に接続される。エッジモジュール107は、カンファレンシング・プラットフォーム106へのカンファレンス・セッション要求およびコールのエントリポイントである。エッジモジュール107は、エンドポイントデバイス102a〜102bから、ネットワーク104を介して、メディアベースのカンファレンス・セッションの確立および維持に関連したシグナリング通信を、様々なプロトコル(例えば、セッション開始プロトコル(SIP)、h.323)で受け取る。なお、本発明の範囲から逸脱することなく、他のシグナリングプロトコルを使用できることは、理解されるべきである。エッジモジュール107は、エンドポイントデバイス102a〜102bからのシグナリング通信を受け取って、そのシグナリングを、さらなる処理のために、カンファレンシング・プラットフォーム106の他のコンポーネントに伝送する。図1に示すように、エッジモジュール107の一部は外側(すなわち、カンファレンシング・プラットフォーム106の外側)に向いており、エッジモジュールの一部は、内側(すなわち、カンファレンシングシステムの内側)に向いている。エッジモジュール107の外向き部分は、エンドポイントデバイス102a〜102bからの通信を受け取って、エンドポイントデバイス102a〜102bによるシグナリング/メディア接続の認証、認可、パーミッション付与、ユーザプロファイリング、マルウェア検出、および維持に関連したオペレーションを実行する。
いくつかの実施形態において、エッジモジュール107は、そのシグナリングを、カンファレンシング・プラットフォーム106の他のコンポーネントによる処理が可能な別の形式に変換する。例えば、エッジモジュール107は、シグナリングを、コール詳細(例えば、発信先、発信元、ドメイン)、エンドポイントデバイス固有の詳細、ユーザ固有の詳細、他のタイプの情報などの項目を含むXML形式に変換することができ、これにより、シグナリングのさらなるカスタマイズが得られることで、カンファレンシング・プラットフォーム106の他のコンポーネントが、カンファレンス・セッションを各エンドポイントデバイス102a〜102bに応じて動的に処理することが可能となる。
エンドポイントデバイス102a、102bからカンファレンス・セッション要求のためのシグナリングおよびメディアを受信すると、エッジモジュール107は、ルーティングモジュール108とやりとりすることで、カンファレンス・セッションを確立するためにその要求をどのように処理およびルーティングするべきか(例えば、エンドポイントデバイス102a、102bにより要求されたカンファレンス・セッションの特性、そのカンファレンス・セッションをホストするためにどのMCU 110を割り当てるべきか、など)を決定する。具体的には、ルーティングモジュール108は、2つのサブモジュール、すなわち、ネットワークAPI(NAPI)モジュール108aとメディアロケーションサービス(MLS)モジュール108bを含んでいる。
NAPIモジュール108aは、カンファレンシング・プラットフォーム106のコンポーネントの各々を接続するための統合インタフェースフレームワークとして機能する。NAPIモジュール108aは、アプリケーションプログラミングインタフェース(API)ベースのルーティングサービスであり、カンファレンシング・プラットフォーム106内の他のコンポーネント/サービスからのデータ要求を処理し、MLSモジュール108bなどの他のモジュールから供給される情報に基づくとともに、NAPIモジュール108aで維持している内部ロジックに基づいて、カンファレンス・セッションの初期ルーティングおよびパーミッションを管理する。これは、アクセス制御、ミーティングプロファイル、およびカンファレンス・セッションルーティング情報、を含む。例えば、NAPIモジュール108aは、特定のカンファレンス・セッションに対して何が許可され、何が許可されないのかに関して、エッジモジュール107に指示することができる。別の例では、NAPIモジュール108aは、ルームプロファイル情報を(例えば、データベース112および/またはMLSモジュール108bから)取得し、それを用いることで、コールをどのメディアエンジン110にルーティングすべきか決定することができる。NAPIモジュール108aをカンファレンシング・プラットフォーム106の他のコンポーネントへの統合インタフェースとして維持することの利点は、プラットフォーム106のコンポーネント間の通信方法またはワークフローの変更が必要なときに、更新する必要があるのはNAPIモジュール108aのみであることであり、これにより、変更およびアップグレードは集中的かつ効率的となる。
MLSモジュール108bは、特定のカンファレンス・セッションで使用するために選択されるカンファレンス・セッションリソース(例えば、セッションをどのメディアエンジン110でホストするべきか)を管理し、さらに、別のメディアエンジンへの移動の要求または必要が生じるイベントもしくはコンディションが発生したときに、セッションをどこに移動すべきかを管理するように機能する。MLSモジュール108bは、カンファレンシング・プラットフォーム106の現在のリソース使用状況を把握するため、さらに、受信するセッション要求をどのように割り当てまたはルーティングすべきかを把握するために、ネットワーク監視モジュール111から受け取るカンファレンス・セッション状態情報を利用する。また、MLSモジュール108bは、さらに、例えば、各セッション要求またはコールがどのエッジモジュール107で処理されているのか、どのメディアエンジン110でミーティングおよび参加者を現在ホストしているのか、を追跡する。
一部の実施形態では、ルーティングモジュール108は、以下のいくつかの利点を実現するように、ビデオおよび/または音声シグナリングをルーティングする、カンファレンシング・プラットフォーム106内の動的信号ルーティング(DSR)能力のセットとみなすことができる。
・ カンファレンス・セッション/コールのより高い接続率(例えば、利用できないリソースにコールがルーティングされない);
・ セッション/コールのより少ない中断;
・ プラットフォームリソースのより効率的な利用;
・ セッション/コールの向上された品質。
一部の実施形態では、ルーティングモジュール108は、カンファレンシング・プラットフォーム106内でのルーティング決定およびサービス構成のためのブローカである。例えば、エッジモジュール107は、ルーティングモジュール108を利用して、カンファレンス・セッションが存在するか否かを確認する。メディアプレーヤ/IVRモジュール109は、ルーティングモジュール108を利用して、カンファレンス・セッションプロファイルデータにアクセスする。メディアエンジン110は、カンファレンス・セッション/ミーティングルームが(例えば、主催者の出席によって)開始したため、待機している参加者がルームに参加できることを、ルーティングモジュール108とやりとりすることで、カンファレンシング・プラットフォーム106の他のコンポーネントに通知する。
一部の実施形態では、ルーティングモジュール108は、以下のことを実現する、動的バックエンドシステムへの統合インタフェースを提供する。
・ バックエンドコンポーネントへの共通インタフェース: その結果、バックエンドコンポーネントは、(カンファレンシング・プラットフォーム106の各種コンポーネントのすべてとではなく)ルーティングモジュール108との通信をサポートするだけでよいので、その複雑さが軽減される;
・ 高可用性サービスモデル: ルーティングモジュール108のDSR能力によって、ステートレス・メッセージング/データ・ブローカ方法が提供され、それは、高可用性であり得るとともに、限定するものではないが、ラウンドロビンおよびアクティブ/パッシブなどの様々な負荷分散技術をサポートしているモデルにデプロイでき、さらに、フェイルオーバ技術もサポートできる;
・ グローバルなプラットフォームレベルのコールを、プラットフォーム内の特定のサイトまたは環境にルーティング可能であること;
・ 選択されたサイト内で、ルーティングモジュール108は、様々なサービスを利用することで、中断のない高品質のカンファレンス・オペレーションの可能性を確保または増大するカンファレンス・セッション経路を特定/設定するために、デバイスおよびミーティングルームの(IVR、認証、ルーム固有コーデックのサポート、などを含む)セットアップ要件を特定することができる;
・ ルーティングモジュール108は、MLSモジュール108bを利用することで、カンファレンス・セッションステータス(例えば、進行中であるか否か)を特定するとともに、どのメディアエンジン/MCU(複数の場合もある)110でセッションをホストするべきか、または、カンファレンス・セッションを初期化するために特定のエンドポイントデバイス102aをどのメディアエンジン/MCU(複数の場合もある)にルーティングすべきか、を特定することができる。
ルーティングモジュール108によって提供される例示的な能力には、以下のものが含まれる。
・ カンファレンシング・プラットフォーム106上で進行中のすべてのカンファレンス・セッションのリストを取得する;
・ 特定のカンファレンス・セッションの参加者のリストを取得する;
・ ある参加者がカンファレンス・セッションの主催者であるかどうかを調べる;
・ カンファレンス・セッションにおいて特定の参加者(または何人かの参加者)をミュートまたは切断する;
・ カンファレンス・セッションから特定の参加者にダイヤルアウトする;
・ 外部ネットワークからの匿名ユーザを、カンファレンシング・プラットフォーム106で既知のユーザにマッピングする。例えば、匿名ユーザから受信するセッション要求を、クライアント名、ロケーション、認証されたセッションなど、エンドポイントデバイス102aの特性に基づいて、カンファレンシング・プラットフォーム106で既知のユーザに変換する。
メディアプレーヤ/IVRモジュール109は、どこで、どのようにカンファレンス・セッションをルーティング/ホストすべきかを、カンファレンシング・プラットフォーム106の他のコンポーネントで決定する際の、エンドポイントデバイス102a〜102bからのストリームのための一時的ロケーションとして機能する。例えば、NAPIモジュール108aは、メディアエンジンにおいてカンファレンス・セッションが確立されつつある間に、エンドポイントデバイス102aを、ウェイティングルームとしてのメディアプレーヤ/IVRモジュール109にルーティングする(そして、例えば保留音楽を再生する)ように、エッジモジュール107に指示することができる。カンファレンス・セッションの準備ができたら、NAPIモジュール108aは、エンドポイントデバイス102aを、ホストするメディアエンジン110にルーティングするように、エッジモジュール107および/またはメディアプレーヤ/IVRモジュール109に指示することができる。別の例では、エンドポイントデバイス102aをカンファレンス・セッションに接続する前に、メディアプレーヤ/IVRモジュール109を用いて、カンファレンス・セッションの参加者から追加情報(例えば、PIN、ユーザ識別情報など)を収集することができる。
メディアエンジン110は、メディアベースのカンファレンス・セッションまたはミーティングに参加する複数のエンドポイントデバイス102a〜102bのブリッジとして機能する。メディアエンジン110は、カンファレンシング・プラットフォーム106におけるカンファレンス・セッションおよびコールの最終目的地としての役割を果たす。メディアエンジン110は、カンファレンス・セッションに参加しているエンドポイントデバイス102a〜102bからの音声および/またはビデオストリームを受け取って、それらのストリームをミキシングおよびトランスコードし、そしてエンドポイントデバイス102a〜102bに送り返される新たなメディア(例えば、参加者の関連する音声および/またはビデオストリームをすべて含む複合ストリーム)をストリームアウトする。なお、メディアエンジン110は、ビデオおよび音声のミキシング、メディアの再生、記録など、いくつかの異なる能力をサポートし得ることは、理解されるべきである。一部の実施形態では、メディアエンジン110は、多地点制御ユニット(MCU)である。メディアエンジン110に組み込むことができるMCUの一例は、カリフォルニア州サンノゼのシスコシステムズ社から入手可能なCodianである。このMCUは、追加の特性を提供するために、カリフォルニア州サニーベールのヴィッテル社から入手可能なVidtel GATEWAYと統合することができる。
ネットワーク監視モジュール111は、カンファレンシング・プラットフォーム106上のメディアサービス(例えば、ミーティング、参加者)のライブデータ・ピクチャを提供する目的で、カンファレンス・セッションに関連した各種データポイントを監視するためのフレームワークとして機能する。例えば、ネットワーク監視モジュールによって収集されるデータポイントとして、以下のものを含むことができる。
・ システムレベル情報: 特定のカンファレンス・セッションに対してメディアミキシングまたは他のサービスを提供できる利用可能なコンピュータ装置のプールを作成するための、CPU使用率、メモリ使用率、ネットワーク使用率、およびサーバ/サービス可用性など;
・ アプリケーションレベル情報: アクティブなカンファレンス・セッション/ミーティングおよび参加者など。また、コールのビットレート、分解能などのような、各参加者に関するさらなる詳細を含むこともできる;
・ ミーティングサイズ: ネットワーク最適化およびサービス品質に関連する。例えば、多くのより小規模の(すなわち、参加者がより少ない)ミーティングは、第1のプールのサーバ上で進行することができるが、一方、より多くのリソース(例えば、帯域幅、処理能力、高分解能)を必要とし得る、より大規模のミーティングを処理するためには、カンファレンシング・プラットフォーム106は、別個のプールのサーバを割り当てることができ、その別個のプールのサーバは、同時に複数のコールを処理すべきではない。この例では、ミーティングがある閾値に達すると、そのミーティングは専用のサーバに移動させられることになる。
カンファレンシング・プラットフォーム106は、さらにデータベース112を有する。データベース112は、メディアベースのカンファレンシング機能を実行するためにカンファレンシング・プラットフォーム106によって使用されるデータを格納している。データベース112は、コンピュータ装置上でカンファレンシング・プラットフォーム106の他のコンポーネントと統合されるか、またはカンファレンシング・プラットフォーム106の他のコンポーネントとは別のコンピュータ装置上に配置することができる。カンファレンシング・プラットフォーム106で使用できるデータベースの一例は、カリフォルニア州レッドウッドシティのオラクル社から入手可能なMySQL(登録商標)である。また、図1は、単一のデータベース112を示しているが、本発明の範囲から逸脱することなく、互いに連携して、または独立に動作する、任意の数のデータベースまたはデータベースのインスタンス(例えば、データベース・シャーディング技術を用いる)が配置され得ることは、理解されるべきである。
[動的なリソース割り当て/信号ルーティング]
図2は、図1のシステム100を用いて、メディアベースのカンファレンス・セッションにおいてリソースを割り当てる方法200のフロー図である。エッジモジュール107は、カンファレンス・セッションに参加するための第1の要求を、非主催者参加者に関連付けられた第1のエンドポイントデバイス102aから受信(202)する。非主催者参加者は、そのカンファレンス・セッションに加入および参加する資格があるが、そのセッションのリーダまたは主催者(例えば、そのセッションを「ホストする」人)ではない個人である。エッジモジュール107は、そのカンファレンス・セッションのロケーション(例えば、ホスティングサイト)を探すための要求をNAPIモジュール108aに送り、NAPIモジュール108aは、そのカンファレンス・セッションのホスティングサイトを決定(204)する。例えば、NAPIモジュールは、自身で所有する内部ロジックならびにMLSモジュール108bによって供給される情報を用いることで、そのカンファレンス・セッションに好適もしくは最適なホスティングサイトを決定することができる。NAPIモジュール108aは、選択されたホスティングサイトを、エッジモジュール107に返し、そしてエッジモジュール107は、第1のエンドポイントデバイス102aからの要求を、そのホスティングサイトに(例えば、カンファレンシング・プラットフォーム106内の別のサイトのルーティングモジュール108aに)ルーティングする。
ホスティングサイトのルーティングモジュール108aは、要求を受け取ると、そのカンファレンス・セッションの構成属性を決定(206)する。構成属性として、限定するものではないが、セキュリティ特性(例えば、PIN)、主催者/参加者情報(例えば、セッションを開始する権限が誰にあるか)、技術属性(例えば、どのような具体的な能力がメディアエンジン110におけるミーティングルームに所望または要求されるか)、などを含むことができる。構成属性が決定されたら、ミーティング主催者によるセッションの確立をプラットフォーム106が待つ間、ルーティングモジュール108aは、第1のエンドポイントデバイス102aからのメディアストリームを、一時的ロケーションとしてのメディアプレーヤ/IVRモジュール109のウェイティングルームに接続(208)する。
エッジモジュール107は、そのカンファレンス・セッションに参加するための第2の要求を、セッションの主催者に関連付けられた第2のエンドポイントデバイス102bから受信(210)する。一部の実施形態では、エッジモジュール107は、(上述のように)ルーティングモジュール108aとやりとりすることで、そのセッションのホスティングサイトを決定し、そしてルーティングモジュール108aは、第2のエンドポイントデバイス102bをホスティングサイトのルーティングモジュール108aに誘導する。一部の実施形態では、メディアエンジン110においてミーティングルームの開始および確立をプラットフォーム106が完了させる間、ホスティングサイトのルーティングモジュール108aは、第2のエンドポイントデバイス102bのメディアストリームをメディアプレーヤ/IVRモジュール109に誘導することができる。
ホスティングサイトのNAPIモジュール108aは、そのホスティングサイトにおけるカンファレンス・セッションのためのミーティングルームを決定(212)する(例えば、MLSモジュール108bに問い合わせすることにより、そのセッションをホストする容量および能力を有する利用可能なメディアエンジン(複数の場合もある)110のリストを取得する)。NAPIモジュール108aは、次に、選択されたメディアエンジン110においてカンファレンス・セッションを確立(214)して、カンファレンス・セッションが開始されたことをMLSモジュール108bに通知し、そして第1のエンドポイントデバイス102aおよび第2のエンドポイントデバイス102bのメディアストリームを確立済みミーティングルームに転送するように、メディアプレーヤ/IVRモジュール109に通知する。
図3A〜3Bは、図1のシステム100を用いて、メディアベースのカンファレンス・セッションにおいてリソースを割り当てる方法のワークフロー図である。図3A〜3Bに示すワークフローは、図2に示す方法200の詳細な実施形態である。
図3Aに示すように、エッジモジュール107は、カンファレンス・セッションに参加するための第1の要求を、第1のエンドポイントデバイス102aから受信して、その第1の要求を、NAPIモジュール108aに伝送(302)する。NAPIモジュール108aは、そのカンファレンス・セッションをホストすべき、カンファレンシング・プラットフォーム106内の特定のホスティングサイトを、MLSモジュール108bに問い合わせ(304)する。MLSモジュール108bは、そのホスティングサイトをNAPIモジュール108aに返し(306)、そしてこれが次に、そのホスティングサイトをエッジモジュール107に返す(308)。
エッジモジュール107は、その後、第1のエンドポイントデバイス102aに関連したメディアストリームを、そのホスティングサイトのNAPIモジュール108aにルーティング(310)する。NAPIモジュール108aは、そのカンファレンス・セッションに関連付けられた構成属性を、ホスティングサイトのMLSモジュール108bに問い合わせ(312)する。MLSモジュール108bは、それらの構成属性をNAPIモジュール108aに返す(314)。
NAPIモジュール108aは、次に、第1のエンドポイントデバイス102aのメディアストリームを、そのホスティングサイトのメディアプレーヤ/IVRモジュール109のウェイティングルームにルーティング(316)する。そしてメディアプレーヤ/IVRモジュール109は、第1のエンドポイントデバイス102aがモジュール109に接続されて、カンファレンス・セッションの確立を待っていることを、MLSモジュール108bに通知する。
次に図3Bを参照して、エッジモジュール107は、そのカンファレンス・セッションに参加するための第2の要求を、第2のエンドポイントデバイス102bから受信して、その第2の要求を、NAPIモジュール108aに伝送(320)する。NAPIモジュール108aは、そのカンファレンス・セッションをホストすべき、カンファレンシング・プラットフォーム106内の特定のホスティングサイトを、MLSモジュール108bに問い合わせ(322)する。MLSモジュール108bは、そのホスティングサイトをNAPIモジュール108aに返し(324)、そしてこれが次に、そのホスティングサイトをエッジモジュール107に返す(326)。
エッジモジュール107は、その後、第2のエンドポイントデバイス102bに関連したメディアストリームを、そのホスティングサイトのNAPIモジュール108aにルーティング(328)する。NAPIモジュール108aは、そのカンファレンス・セッションのホストとして使用するミーティングルームを、ホスティングサイトのMLSモジュール108bに問い合わせ(330)する。MLSモジュール108bは、そのミーティングルームのロケーション(例えば、どのメディアエンジンで、そのセッションをホストするか)を、NAPIモジュール108aに返す(332)。
NAPIモジュール108aは、次に、第2のエンドポイントデバイス102bのメディアストリームを、そのホスティングサイトのメディアエンジン/MCU 110上にあるミーティングルームにルーティング(334)する。次に、NAPIモジュール108aは、ミーティングルームが確立されたことを、MLSモジュール108bに通知(336)し、そしてMLSモジュール108bが次に、メディアプレーヤ/IVRモジュール109に通知(338)する。そしてモジュール109は、第1のエンドポイントデバイス102aのメディアストリームを、そのカンファレンス・セッションのために確立されたMCU110上のミーティングルームにルーティング(340)する。
[カンファレンス・セッション状態の管理]
カンファレンス・セッション要求が、カンファレンシングシステム106に入力されて、複数のエンドポイントデバイス102a〜102b間でセッションが確立されると、カンファレンシングシステム106は、そのプラットフォーム上で実施されているカンファレンス・セッションの現在のセッション状態のピクチャを入れるデータ構造体を維持する。このセッション状態情報は、その後のルーティングおよびリソース割り当て決定、負荷分散が必要かどうかの判断、プラットフォーム106上のカンファレンス・セッションのコンディションまたはエラーの判定など、様々に異なる機能のために有用である。システム100によって提供される別の利点は、アトミックなリソース割り当て決定のためにプラットフォーム106によって使用される情報を格納するインメモリデータ構造体の迅速かつ効率的な生成にある。
図4は、図1のシステムを用いて、複数のメディアベースカンファレンス・セッションのセッション状態を管理するためのモジュールの詳細ブロック図である。図4に示すように、図1のデータベース112は、一次インメモリデータ構造体402aと、二次インメモリデータ構造体402bと、持続的データストア404a〜404bと、を含むいくつかのサブコンポーネントを有する。図4は、データベース112上にあるサブコンポーネント402a、402b、404a、404bを示しているが、本発明の範囲から逸脱することなく、サブコンポーネントは、図1のコンポーネントのいずれにも分散することができることは、理解されるべきである。例えば、一部の実施形態では、インメモリデータ構造体402a〜402bは、NAPIモジュール108aまたはMLSモジュール108bに結合されたメモリデバイス内に配置することができ、一方、持続的データストア404a〜404bは、データベース112の一部のままとすることができる。
一次インメモリデータ構造体402aおよび二次インメモリデータ構造体402bは、任意の時点でカンファレンシング・プラットフォーム106において進行中のカンファレンス・セッションの状態を表す情報を含んでいる。これらのデータ構造体402a〜402bは、その名前が示すように、その全体がプラットフォーム106のコンピュータ装置のメモリ内に常駐しており、これにより、セッション状態情報の迅速かつ効率的な更新をアトミックに実施する(すなわち、到来する各々の更新要求に関連付けられたタイムスタンプに従って順にセッション状態情報を更新する)ことが可能となる。一部の実施形態では、データ構造体402a〜402bは、(従来のデータキャッシュとは異なり)有効期限はなく、これにより、プラットフォーム106における現在のセッション状態を特定するための、常に利用できる最新状態のリソースが提供される。
一次インメモリデータ構造体402aは、限定するものではないが、以下のものを含むいくつかの機能を有する。
・ プラットフォーム106の他のコンポーネント(NAPIモジュール108a、MLSモジュール108b、メディアエンジン/MCU 110など)からの、さらにはエンドポイントデバイス102a〜102bがプラットフォーム106に接続するのに介するネットワーク/プラットフォーム(例えば、Skype(登録商標)ゲートウェイ)のリソースマネージャのような外部コンポーネントからの、リード要求およびライト要求を受ける;
・ 二次インメモリデータ構造体402b(これは異なるサイトまたは地理的場所に配置されていてもよい)および持続的データストア404a〜404bに、データを複製する;
・ 例えば、持続的データストア404a〜404bによって、これらのデータストアが、それらのローカルデータセットがいかに同期していないかを把握することを可能とするために用いられる、データ構造体の現在位置へのインデックスを提供する;
・ 必要に応じて、データを持続的データストア404a〜404bに同期/リストアさせる。
図4では、セッション状態情報を更新するための要求は、一次インメモリデータ構造体402aに届く。例えば、セッション状態情報を更新するためのそのような要求は、新たなセッションの確立、現在進行中のセッションで利用されているリソース、などに関する情報を含むことができる。一次インメモリデータ構造体402aは、更新された情報を二次インメモリデータ構造体402bに複製することができ、さらに、更新された情報を持続的データストア404a〜404bと同期させることができる。
二次インメモリデータ構造体402bは、本質的に、一次インメモリデータ構造体402aのコピー/バックアップとしての役割を果たす。一次データ構造体402aの障害または使用不能の場合には、プラットフォーム106は、二次データ構造体402bを利用することで、一次データ構造体402aがリカバリする間に、プラットフォーム106のコンポーネントが現在のセッション状態情報を利用可能に維持されるように保証することができる。一部の実施形態では、一次データ構造体402aと二次データ構造体402bは、それらの両方で異なるデータセットを管理して、それぞれのデータ構造体402a、402bは、その近隣データ構造体への何らかの要求に応答するように、構成することができる。例えば、オンラインであるカンファレンスに関する更新要求は、データ構造体402a、402bのいずれかによるサービスを受けることができ、カンファレンスがオンラインでない場合には、その要求は、(例えば、その新たなカンファレンス要求のアトミック処理を確保するために)一次データ構造体402aによって処理される。
持続的データストア404a〜404bは、一次インメモリデータ構造体402aによって維持される動的なセッション状態情報に比して、一般に、より静的な情報を保存するために用いられる。例えば、ミーティングルーム構成、メディアエンジン110のリソース可用性、などの情報は、(セッション状態情報とは対照的に)頻繁な更新を必要としないため、持続的データストア404a、404bに保存することができる。一次インメモリデータ構造体402aは、セッション状態情報の一部として使用される何らかのタイプの情報を取得するために、データストア404a〜404bにアクセスすることができ、また、一次データ構造体402aは、例えば、必要に応じて定期的に、持続的データストア404a〜404bに対する更新を発行することができる。一部の実施形態では、持続的データストアのうちの一方404aを、マスタデータストアとして指定することができ、他方404bを、スレーブデータストアとして指定することができる。このように指定することによって、データストア404a〜404b間に優先順位を設定するとともに、マスタデータストアの障害またはアクセス不能の場合に備えて冗長性を実現する、という利点が得られる。
一部の実施形態では、一次インメモリデータ構造体402aは、その構造体内で特定のセッション状態データオブジェクトの作成、読み取り、更新、削除をサポートするデータインタラクション機能の簡易セットを提供する。一実施形態では、データ構造体402a内のデータとのインタラクションおよびデータの管理のための構文は、テーブルベースのものではなく、オブジェクトベースのものであって、複数の結合されたデータテーブルを表すことができる。例えば、ビデオカンファレンス・セッションは、次のようなデータスキーマを有し得る。
以下のデータフィールドを有するMeeting(オブジェクト)
・ ID
・ タイトル(Title)
・ 開始時刻(Start Time)
・ 終了時刻(End Time)
・ Participants(オブジェクト)
・ ID
・ ミーティングID
一例では、一次インメモリデータ構造体402aは、データを読み取るための次のようなインタフェースを含むことができる:Meeting getMeeting(id)。
上述のように、Meetingオブジェクトは、以下のようなプロパティを有する。
Meeting {
String ID;
String Title;
Date StartTime;
Date EndTime;
Participants[] Participants;
}
Meetingオブジェクトのプロパティのいずれかの更新が、一次インメモリデータ構造体402aで受け取られると、データ構造体402aは、その元となるテーブルまたはデータストアのすべてにわたって、データがすべて更新されるまで、Meetingオブジェクト全体をロックする。
また、前述のように、データは、作成、更新、削除のために、一次インメモリデータ構造体402aから他のデータ記憶要素402b、404a、404bに複製される。一実施形態では、複製プロセスは、以下の通りである。
1)一次インメモリデータ構造体402aで、データ変更要求(例えば、作成、更新、削除)を受け取る;
2)その変更要求に関連するデータ要素を、一次インメモリデータ構造体402aによって、読み取りまたは更新されないようにロックし、同データ要素に対するその後の変更要求は、当分の間、(拒否されるというよりも)ブロックされる。一部の実施形態では、その後の変更要求は、一時キューに格納されて、ソートおよび後の処理の優先順位付けのために、受け取られたときのタイムスタンプが割り当てられる;
3)変更されたデータ要素は、二次インメモリデータ構造体402bに複製される;
4)複製に成功すると、そのデータ要素は、一次インメモリデータ構造体402aにおいて更新されて、そのデータ要素のロックは解除され、そのデータ要素に対する後続の変更要求(例えば、一時キューに格納されている)が、一次インメモリデータ構造体402aによるサービスを受ける。
その後、一次インメモリデータ構造体402aは、変更されたデータ要素(複数の場合もある)を、持続的データストア404a、404bに順に複製する。一部の実施形態では、持続的データストア404a、404bの1つ以上への複製においてエラーが生じる場合に、困難が認められるデータストア(複数の場合もある)は、オフラインとされて、それらが再び使用できるようになったときに、一次インメモリデータ構造体402aとの再同期を求められる。
また、カンファレンシング・プラットフォーム106における複数のサイトにわたって一次インメモリデータ構造体402aを維持するために、各サイトの一次インメモリデータ構造体402a(さらに、一部の実施形態では、二次インメモリデータ構造体402b)は、それらが管理しているオブジェクトのインデックスを維持している。上記のMeetingオブジェクトの例を用いると、以下のようになる。
[リレーショナルデータ記述]
Meeting
・ ID
・ タイトル(Title)
・ 開始時刻(Start Time)
・ 終了時刻(End Time)
Participants
・ ID
・ ミーティングID
[管理対象オブジェクト]
Meeting {
String ID;
String Title;
Date StartTime;
Date EndTime;
Participants[] Participants;
}
[インデックスを含む管理対象オブジェクト]
Meeting {
String ID;
String Title;
Date StartTime;
Date EndTime;
Participants[] Participants;
String lastUpdateUTC;
}
別のサイトの一次インメモリデータ構造体402aがオンラインになると、そのデータ構造体402aは、他のサイトの他の一次データ構造体(例えば、親構造体)に問い合わせすることで、例えば、String[][] getHashIndex()のような関数を用いて他のサイトの構造体と同期しているかどうか評価する。
その結果は、関連するデータ要素が更新された最新時刻を示す値のオブジェクト配列である。(インデックスの比較に基づいて)最も「最近」のデータセットを有するデータ構造体は、マスタであるとみなされる。その後、マスタ構造体のデータは、他のインメモリデータ構造体に同期させられ、さらに場合によっては、各サイトの持続的データストア404a〜404bに同期させられる。
複製する際に、データ要素(複数の場合もある)にコンフリクトが生じた場合は、カンファレンシング・プラットフォーム106は、1)(UTC時刻に基づいて)最新のものでオーバライトするか、または2)両方を削除して、例えば、コールを失敗/破損とするか、いずれかをサポートするように構成可能である。
図5は、図1および4のシステムを用いて、複数のメディアベースカンファレンス・セッションのセッション状態を管理する方法のフロー図である。一次インメモリデータ構造体402aは、データ要素を更新するための第1の要求を受け取る(502)。一次データ構造体402aは、そのデータ要素を更新するための、第1の要求の後に受け取る後続の要求をブロック(504)し、それらのブロックされた要求を、各々の要求に割り当てられたタイムスタンプに基づいて順に一時キューに格納する。
一次データ構造体402aは、第1の要求のデータ要素の更新を、二次インメモリデータ構造体402bに複製(506)し、そして第1の要求のデータ要素の更新に基づいて、一次データ構造体402aにおいてデータ要素を更新(508)する。一次データ構造体402aは、複製ステップおよび更新ステップが完了すると、ブロックされた要求をタイムスタンプに基づいて処理(510)する。
[ライブセッションの再ルーティング]
本明細書に記載の方法およびシステムの別の態様は、マルチパーティ音声およびビデオ・カンファレンシングにおいて、最適なエクスペリエンスを提供することである。ビデオ・カンファレンスのような多大なリソースを要するプロセスの文脈において、高レベルの耐障害性および品質を提供するためには、セッションを中断することなく、または参加者のエンドポイントデバイスがいずれかの特別な要件を認識もしくは備えていることに依拠することなく、メディアエンジン間でセッションを動的に移動可能であることが重要である。典型的には、セッションの移動をトリガする以下の3通りのコンディションが発生し得る:1)ハードウェア/ソフトウェア/ネットワーク障害;2)負荷閾値;3)ミーティングサイズ(すなわち、参加者数)。これらのコンディションのいずれが発生した場合も、そのセッションを処理するための方法は同じである。これらのコンディションの間の違いの1つは、障害の場合にプラットフォーム上で損失したメディアに対して、エッジモジュール107は、その障害にいかに対処するかについて、プラットフォームの他のコンポーネントからの指示を待つ設定可能な時間を有することで、回復力がなければならないことである。エッジモジュール107は、何も指示を受けなかった場合は、リカバリ不能な状況が発生したとして、通常のセッションのティアダウン処理をすることができる。一方、損失したメディアが検出された場合は、エッジモジュール107は、そのセッションをホストするための新たなメディアエンジンが特定および準備される間、セッションの外側でメディアフロー(すなわち、エンドポイントデバイスとエッジモジュールとの間の接続)を維持するための、例えば、内部再生機構を有し得る。
図6は、図1のシステム100を用いて、メディアベースのカンファレンス・セッションを再ルーティングする方法600のフロー図である。ネットワーク監視モジュール111は、(例えば、デバイスとエッジモジュール107との間で)外部メディアストリームによってカンファレンシング・プラットフォーム106にそれぞれ接続されるとともに内部メディアストリームによってエッジモジュール107からセッションをホストするメディアエンジン(MCU)110にそれぞれ接続された複数のエンドポイントデバイス102a〜102b間の、第1のカンファレンス・セッションに関連したコンディションを判定(602)する。上述のように、そのコンディションは、そのセッションをホストするために新たなメディアエンジン(MCU)110を割り当てることが必要となる、ネットワーク障害、負荷閾値、および/またはミーティングサイズ閾値、であり得る。
NAPIモジュール108aは、それらの複数のエンドポイントデバイス102a〜102b間の第2のカンファレンス・セッションをホストするために利用できる第2のメディアエンジン(MCU)110を特定(604)する。NAPIモジュール108aは、第2のメディアエンジン110のロケーションを、エッジモジュールに通知する。
エッジモジュール107は、外部メディアストリームが接続されたままで、エッジモジュール107と第1のメディアエンジン110との間でエンドポイントデバイス102a〜102bの内部メディアストリームを切断(606)し、そしてエンドポイントデバイス102a〜102bの各々を、第2の内部メディアストリームによってエッジモジュール107から第2のメディアエンジン110に接続(608)する。第2のメディアエンジン(MCU)110は、エンドポイントデバイス102a〜102b間の第2のカンファレンス・セッションを確立(610)する。エンドポイントデバイス102は、そのセッションがメディアエンジン間で移行される間に、カンファレンシング・プラットフォーム106との接続を失うことはなく、このように、エンドポイントデバイスまたは関連付けられたユーザが介入することなく、セッションは維持され、その結果、プラットフォーム106のユーザは、より良好なエクスペリエンスが得られる。
図7は、図1のシステム100を用いて、メディアベースのカンファレンス・セッションを再ルーティングする方法のワークフロー図である。図7に示すワークフローは、図6に示す方法600の詳細な実施形態である。ネットワーク監視モジュール111は、複数のエンドポイントデバイス102a〜102b間のカンファレンス・セッションを現在ホストしているMCU 110を監視(702)する。その監視中に、モジュール111は、そのカンファレンス・セッションをホストするために新たなMCUを割り当てる必要がある、カンファレンス・セッションおよび/またはMCUのコンディションを確認(704)する。
ネットワーク監視モジュール111は、そのコンディションが存在することと、そして、新たなMCUが必要であることとを、NAPIモジュール108aに通知(706)する。NAPIモジュール108aは、MLSモジュール108bに問い合わせすることにより、新たなMCUを要求(708)する。一部の実施形態では、MLSモジュール108bは、さらに、ネットワーク監視モジュール111に問い合わせすることにより、新たなMCUを選択する目的で、プラットフォーム106における現在の状態およびリソース割り当てに関する追加情報を受け取る。MLSモジュール108bは、選択された新たなMCUを、NAPIモジュール108aに返す(710)。
NAPIモジュール108aは、その新たなMCUを、エッジモジュール107に提示(712)する。エッジモジュール107は、該エッジモジュール107と、そのセッションを元々ホストしていた第1のMCUとの間で、エンドポイントデバイス102a〜102bの各々のための内部メディアストリームを切断(714)する。エッジモジュール107は、次に、該エッジモジュール107と、元のセッションを引き継ぐ新規のカンファレンス・セッションを確立する新たなMCU 110との間で、エンドポイントデバイス102a〜102bの各々のための新たなメディアストリームを接続(718)する。
[メディアネゴシエーションおよびトランスコーディング]
本明細書に記載の方法およびシステムの別の重要な態様は、個々のユーザに合わせて調整されない最小公倍数アプローチを用いるのではなく、個々のエンドポイントデバイスの能力および/またはユーザプリファレンスに応じて、メディアネゴシエーションおよびトランスコーディングの実施が可能であることである。本明細書に記載のメディアネゴシエーションおよびトランスコーディング技術によって、カンファレンシング・プラットフォーム106は、カンファレンス・セッションのためのメディアストリームがセットアップされる前に、メディアネゴシエーションに関する問題を解決することが可能となり、さらに、セッションの成功を保証するために互換性の問題の解決が必要な場合は、トランスコーディングプロセスを取り込むことが、必要に応じて可能となる。エンドポイントデバイスのタイプ、セッション記述情報、発信元ネットワークなどを含む、シグナリングから収集されたデータを用いて、カンファレンシング・プラットフォーム106は、メディア互換性の問題を事前に解決することができる。
本明細書に記載のメディアネゴシエーションおよびトランスコーディング技術の一態様は、エンドポイントデバイスに関連したプロファイル情報、および/またはエンドポイントデバイスがカンファレンシング・プラットフォーム106に接続する接続元ネットワーク(例えば、Skype(登録商標))に関連したプロファイル情報、を収集および維持することである。プロファイル情報は、カンファレンス・セッションの確立に先立って、さらに/またはエンドポイントデバイスがプラットフォーム106に接続して利用する時間の経過に伴って動的に、収集することができる。
一例では、プロファイル情報は、以下のものを含むことができる。
・ エンドポイントデバイスがプラットフォームに接続するのに使用しているネットワーク: これによって、エンドポイントデバイスの発信元に基づいた具体的な処理が可能となる;
・ シグナリングデータ:要素として、ユーザエージェント(すなわち、報告されたクライアントタイプ)およびセッション記述(例えば、分解能、コーデックなど)が含まれる。これらに加えて、例えば、セッション開始プロトコル(SIP)でサポートされたヘッダおよび必須ヘッダのような、他のヘッダを用いることができる;
・ クライアント品質メトリクス(一般的な、分解能、ジッタ、レイテンシなど)。
図8は、図1のシステム100を用いて、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートする方法800のフロー図である。エッジモジュール107は、複数のエンドポイントデバイス102a〜102b間のカンファレンス・セッションに参加するための要求を受信(802)する。その要求は、第1のエンドポイントデバイス102aから受信するものであり、その要求は、第1のエンドポイントデバイス102aからのメディアフローを含んでいる。エッジモジュール107は、第1のエンドポイントデバイス102aと、第1のエンドポイントデバイス102aがその要求を送信した送信元ネットワーク、のうちの少なくとも1つを特定(804)する。例えば、エッジモジュール107は、シグナリングデータ、エンドポイントデバイス/ネットワークの技術属性、などに基づいて、そのエンドポイントデバイスおよび/またはネットワークに関する情報を、例えばデータベース112から、取得することができる。
エッジモジュール107は、特定された第1のエンドポイントデバイス102aに関連付けられた第1のメディアネゴシエーション・プロファイルが存在するかどうか判定(806)する。例えば、エッジモジュール107は、エンドポイントデバイスの識別情報に基づいてデータベース112に問い合わせすることで、そのエンドポイントデバイスのメディアネゴシエーション・プロファイルを取得することができる。
メディアネゴシエーション・プロファイルは、そのエンドポイントデバイス102aによって、その技術的能力および/またはユーザ要求に基づいてサポートされている、いくつかのメディアタイプ、コーデック、などを含むことができる。例えば、ほんの一部のコーデックのみをサポートするように制限されたエンドポイントデバイス102aは、それらのコーデックを反映するメディアネゴシエーション・プロファイルを有し得る。別の例では、エンドポイントデバイス102aは、カンファレンス・セッション中に従業員によって消費される帯域幅を制限することを望むエンティティ(例えば、企業)に関連付けられたものであり得る。そのエンティティに関連付けられたエンドポイントデバイスのメディアネゴシエーション・プロファイルでは、それらのエンドポイントデバイスで受信可能なデータ量およびカンファレンス・セッションの品質(例えば、分解能)の制限を明示することができる。
エッジモジュール107は、さらに、特定されたネットワークに関連付けられた第2のメディアネゴシエーション・プロファイルが存在するかどうか判定(808)する。エッジモジュール107は、特定されたネットワークのメディアネゴシエーション・プロファイルに関して、上記と同様の考え方を用いる。例えば、容量または品質の制限があることをプラットフォーム106が把握している既知のネットワーク内のエンドポイントデバイスから届くカンファレンス・セッション要求は、それらの制限を反映したメディアネゴシエーション・プロファイルを有し得る。別の例では、特定の要件(例えば、WebRTC/VP8)を有するネットワークから届くカンファレンス・セッション要求は、そのネットワークのメディアネゴシエーション・プロファイルに反映された、その要件を有し得る。
エッジモジュール107は、第1のメディアネゴシエーション・プロファイルおよび第2のメディアネゴシエーション・プロファイルに基づいて、メディアフローのビットレート、メディアフローのセッション記述、メディアフローの宛先MCU 110、のうちの1つ以上を調整(810)する。例えば、エンドポイントデバイス102aからのカンファレンス・セッション要求は、そのシグナリングにおいて、有効でないことが知られている能力を通達する可能性があり(例えば、E20は、プロファイルレベルIDを正しく表示しておらず、1.2を提示しているが、3.1をサポートしている)、あるいは、エンドポイントデバイスは、既知の問題(例えば、G.722.1CによるLifeSizeの処理)があるコーデックのサポートを表示している。この情報を用いて、エッジモジュール107は、エンドポイントデバイス102aのメディアフローをMCU 110に伝送する前にセッション記述を調整することができる。別の例では、エッジモジュール107は、サポートされていないコーデックまたは特性をセッション記述から削除することができる。
別の例では、エッジモジュール107は、第1のメディアネゴシエーション・プロファイルおよび第2のメディアネゴシエーション・プロファイルに基づいて、(必要なシグナリング修正をいずれも含む)トランスコーディングエンジンを取り込むことができる。例えば、特定のコーデックを提供するカンファレンス・セッション要求が、そのコーデックをサポートしていないMCUロケーションに送られることになっている。エッジモジュール107は、サポートされたコーデックを提供するように、シグナリングを修正することができ、その接続情報は、エンドポイントデバイスとMCU 110との間の経路に、メディアを変換するためのトランスコーディングエンジンを含むことができる(すなわち、インライン・トランスコーディング)。
別の例では、エッジモジュール107は、第1のメディアネゴシエーション・プロファイルおよび第2のメディアネゴシエーション・プロファイルに基づいて、経路変更を実施することができる。例えば、上述のように、エッジモジュール107は、エンドポイントデバイスとMCUの間でメディアフローのインライン・トランスコードが必要となることを回避するため、カンファレンス・セッション要求を、特定の要件(WebRTC/VP8)を有するエンドポイントデバイスから、必要な機能をサポートしているか、またはその機能が組み込まれたメディアエンジン/MCU 110に、ルーティングすることができる。
図9は、図1のシステム100を用いて、メディアベースのカンファレンス・セッションにおいて複数のエンドポイントデバイス間でメディア能力をネゴシエートする方法のワークフロー図である。図9に示すワークフローは、図8に示す方法800の詳細な実施形態である。
エッジモジュール107は、カンファレンス・セッションに参加するための第1の要求を、第1のエンドポイントデバイス102aから受信(902)する。エッジモジュール107は、データベース112とやりとりすることで、そのエンドポイントデバイス102aおよび/またはエンドポイントデバイス102aが要求を送信した送信元ネットワークの識別情報を特定(904)する。
特定された識別情報に基づいて、エッジモジュール107は、データベース112とやりとりすることで、そのエンドポイントデバイス102aに関連付けられた第1のメディアネゴシエーション・プロファイルを取得(906)する。エッジモジュール107は、さらに、データベース112とやりとりすることで、エンドポイントデバイス102aが要求を送信した送信元ネットワークに関連付けられた第2のメディアネゴシエーション・プロファイルを取得(908)する。
エッジモジュール107は、取得されたメディアネゴシエーション・プロファイルに基づいて、第1のエンドポイントデバイス102aに関連したメディアフローを調整(910)する。場合によっては、それらのメディアネゴシエーション・プロファイルのいずれか一方または両方が存在しない。エッジモジュール107は、そのエンドポイントデバイス102aおよび/またはネットワークのための新規のメディアネゴシエーション・プロファイルを、そのデバイス/ネットワークに関してモジュール107が把握している情報に基づいて、作成することができる。別の例では、エッジモジュール107は、フローの処理または修正をいずれも実施することなく、そのメディアフローを適切なMCU 110に単に転送することができる。エッジモジュール107は、フローを調整した後に、第1のエンドポイントデバイスからのメディアフローを、適用可能なメディアエンジン/MCU 110上のカンファレンス・セッションに接続(912)する。
なお、上記の方法、システム、および技術は、いずれも、本発明の範囲から逸脱することなく、ビデオ・カンファレンシング(すなわち、ビデオおよび音声メディアで構成されるカンファレンス・コール)、および音声のみのカンファレンシングの文脈において実現できることは、理解されるべきである。
上記の技術は、デジタルおよび/もしくはアナログ電子回路で、またはコンピュータハードウェア、ファームウェア、ソフトウェア、もしくはそれらの組み合わせで実装することができる。その実装は、コンピュータプログラムプロダクトとして可能であり、すなわち、例えば、プログラマブルプロセッサ、コンピュータ、および/または複数のコンピュータであるデータ処理装置によって実行するために、またはその動作を制御するために、機械可読記憶装置内に有形に具現化されたコンピュータプログラムとして、可能である。コンピュータプログラムは、ソースコード、コンパイル式のコード、インタプリタ式のコード、および/またはマシンコード、などの任意の形式のコンピュータ言語またはプログラミング言語で記述することができ、そしてコンピュータプログラムは、スタンドアロン・プログラムとして、またはサブルーチン、エレメント、もしくはコンピューティング環境で用いるのに適した他のユニットとしてなど、任意の形式でデプロイすることができる。コンピュータプログラムは、1つのコンピュータ上、または1つ以上のサイトの複数のコンピュータ上で実行されるように、デプロイすることができる。
方法ステップは、入力データの操作および/または出力データの生成によって本発明の機能を実行するためのコンピュータプログラムを実行する1つ以上のプロセッサによって実施することができる。また、例えば、FPGA(フィールドプログラマブルゲートアレイ)、FPAA(フィールドプログラマブルアナログアレイ)、CPLD(結合プログラム可能論理回路)、PSoC(プログラマブルシステムオンチップ)、ASIP(特定用途向け命令セットプロセッサ)、またはASIC(特定用途向け集積回路)、などの専用論理回路によって、方法ステップを実施することもできるとともに、その専用論理回路として、装置を実現することができる。サブルーチンとは、1つ以上の機能を実現する、記憶されたコンピュータプログラムおよび/またはプロセッサおよび/または専用回路からの部分を意味し得る。
コンピュータプログラムの実行に適したプロセッサは、例として、汎用および専用マイクロプロセッサの両方、ならびに、あらゆる種類のデジタルまたはアナログコンピュータのいずれか1つ以上のプロセッサ、が含まれる。一般に、プロセッサは、読み取り専用メモリまたはランダムアクセスメモリまたはその両方から、命令およびデータを受け取る。コンピュータの主要な要素は、命令を実行するためのプロセッサと、命令および/またはデータを保存するための1つ以上のメモリデバイスである。キャッシュのようなメモリデバイスを用いて、データを一時的に保存することができる。また、メモリデバイスは、長期データ保存のために使用することもできる。一般に、コンピュータは、さらに、例えば、磁気ディスク、光磁気ディスク、もしくは光ディスクなど、データを保存するための1つ以上の大容量記憶装置を有し、あるいは、大容量記憶装置からデータを受信するか、またはそれにデータを転送するか、またはその両方のために、動作可能に接続されている。また、コンピュータは、ネットワークから命令および/もしくはデータを受信するため、ならびに/またはネットワークに命令および/もしくはデータを転送するために、通信ネットワークに動作可能に接続され得る。コンピュータプログラム命令およびデータを具現化するのに適したコンピュータ可読記憶媒体には、あらゆる形式の揮発性および不揮発性メモリが含まれ、例として、例えばDRAM、SRAM、EPROM、EEPROM、フラッシュメモリデバイスなどの半導体メモリデバイス;例えば内蔵ハードディスクまたはリムーバブルディスクなどの磁気ディスク;光磁気ディスク;例えばCD、DVD、HD−DVD、ブルーレイ(登録商標)ディスクなどの光ディスク、が含まれる。プロセッサおよびメモリは、専用論理回路を補足されること、および/または専用論理回路に組み込まれることが可能である。
ユーザとの対話を提供するために、上記技術は、例えばCRT(ブラウン管)、プラズマまたはLCD(液晶表示)モニタ、モバイル装置のディスプレイまたは画面、ホログラム装置および/またはプロジェクタなど、ユーザに情報を表示するための表示装置と、さらに、ユーザがコンピュータへの入力を供給する(例えば、ユーザインタフェース要素と対話する)ことが可能な、キーボード、例えばマウス、トラックボール、タッチパッド、またはモーションセンサなどのポインティングデバイスと、やりとりするコンピュータ装置上に実装することができる。また、ユーザとの対話を提供するために、他の種類の装置を用いることも可能であり、例えばユーザに提供されるフィードバックは、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックなど、任意の形態の感覚フィードバックとすることができ、そしてユーザからの入力は、音響入力、音声入力、および/または触覚入力など、任意の形態で受け取ることができる。
上記技術は、バックエンドコンポーネントを含む分散コンピューティングシステムで実現することができる。バックエンドコンポーネントは、例えば、データサーバ、ミドルウェアコンポーネント、および/またはアプリケーションサーバ、とすることができる。上記技術は、フロントエンドコンポーネントを含む分散コンピューティングシステムで実現することができる。フロントエンドコンポーネントは、例えば、グラフィカルユーザインタフェース、ユーザが例示的実装とやりとりすることが可能なウェブブラウザ、および/または送信装置用の他のグラフィカルユーザインタフェース、を有するクライアントコンピュータとすることができる。上記技術は、そのようなバックエンドコンポーネント、ミドルウェアコンポーネント、またはフロントエンドコンポーネントの任意の組み合わせを含む分散コンピューティングシステムで実現することができる。
コンピューティングシステムのコンポーネントは、デジタルまたはアナログデータ通信の任意の形態または媒体(例えば、通信ネットワーク)を含み得る伝送媒体によって、相互接続することができる。伝送媒体は、任意の構成で、1つ以上のパケットベースのネットワーク、および/または1つ以上の回路ベースのネットワーク、を含むことができる。パケットベースのネットワークとして、例えば、インターネット、キャリアインターネットプロトコル(IP)ネットワーク(例えば、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、キャンパスエリアネットワーク(CAN)、メトロポリタンエリアネットワーク(MAN)、ホームエリアネットワーク(HAN))、プライベートIPネットワーク、IP構内交換(IPBX)、無線ネットワーク(例えば、無線アクセスネットワーク(RAN)、ブルートゥース(登録商標)、Wi−Fi(登録商標)、WiMAX(登録商標)、汎用パケット無線サービス(GPRS)ネットワーク、HiperLAN)、および/または他のパケットベースのネットワーク、を含むことができる。回路ベースのネットワークとして、例えば、公衆交換電話網(PSTN)、レガシー構内交換(PBX)、無線ネットワーク(例えば、RAN、符号分割多重アクセス(CDMA)ネットワーク、時分割多重アクセス(TDMA)ネットワーク、グローバルシステムフォーモバイルコミュニケーションズ(GSM(登録商標))ネットワーク)、および/または他の回路ベースのネットワーク、を含むことができる。
伝送媒体を介した情報転送は、1つ以上の通信プロトコルに基づくことができる。通信プロトコルとして、例えば、イーサネット(登録商標)プロトコル、インターネットプロトコル(IP)、ボイスオーバIP(VOIP)、ピアツーピア(P2P)プロトコル、ハイパーテキスト転送プロトコル(HTTP)、セッション開始プロトコル(SIP)、H.323、メディアゲートウェイ制御プロトコル(MGCP)、シグナリングシステム#7(SS7)、グローバルシステムフォーモバイルコミュニケーションズ(GSM(登録商標))プロトコル、プッシュツートーク(PTT)プロトコル、PTTオーバセルラ(POC)プロトコル、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)、3GPPロングタームエボリューション(LTE)、および/または他の通信プロトコル、を含むことができる。
コンピューティングシステムの装置として、例えば、コンピュータ、ブラウザ装置を備えたコンピュータ、電話機、IP電話機、モバイル装置(例えば、携帯電話、パーソナルデジタルアシスタント(PDA)装置、スマートフォン、タブレット、ラップトップコンピュータ、電子メール装置)、および/または他の通信装置、を含むことができる。ブラウザ装置には、例えば、ワールドワイドウェブブラウザ(例えば、グーグル社からのChrome(登録商標)、マイクロソフト社から入手可能なMicrosoft(登録商標)Internet Explorer(登録商標)、および/またはモジラ社から入手可能なMozilla(登録商標)Firefox)を備えたコンピュータ(例えば、デスクトップコンピュータおよび/またはラップトップコンピュータ)、が含まれる。モバイルコンピュータ装置には、例えば、リサーチ・イン・モーション社からのBlackberry(登録商標)、アップル社からのiPhone(登録商標)、および/またはAndroid(登録商標)ベースのデバイス、が含まれる。IP電話機として、例えば、シスコシステムズ社から入手可能なCisco(登録商標)Unified IP Phone 7985G、および/またはCisco(登録商標)Unified Wireless Phone 7920、が含まれる。
「備える」、「含む」、および/または複数形は、それぞれ制限のない表現であって、列挙された要素を含むとともに、列挙されていない追加の要素を含むことができる。「および/または」は、制限のない表現であって、列挙された要素の1つ以上、および列挙された要素の組み合わせを含む(「および」を「ならびに」に変えた場合や、「または」を「もしくは」に変えた場合も同様)。
本発明は、その趣旨または本質的特徴から逸脱することなく、他の具体的な形態で実施できることは、当業者であれば理解できるであろう。よって、上記の実施形態は、本明細書に記載の発明を限定するものではなく、あらゆる点において、例示的なものとみなされるべきである。
本発明は一側面において以下の発明を包含する。
(発明1)
メディアベース・カンファレンシングシステムにおいてリソースを割り当てる方法であって、
サーバコンピュータ装置で、カンファレンス・セッションに参加するための第1の要求を、前記カンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信することであって、前記第1のエンドポイントデバイスからの第1のメディアストリームを含む第1の要求を受信することと、
前記サーバコンピュータ装置で、前記第1の要求に基づいてメディアロケーションサービスに問い合わせすることにより、前記カンファレンス・セッションのホスティングサイトを決定することと、
前記サーバコンピュータ装置で、前記第1の要求に基づいて前記ホスティングサイトのデータベースに問い合わせすることにより、前記カンファレンス・セッションの構成属性を決定することと、
前記サーバコンピュータ装置で、前記第1のエンドポイントデバイスの前記メディアストリームを、前記ホスティングサイトのウェイティングルームに接続することと、
前記サーバコンピュータ装置で、前記カンファレンス・セッションに参加するための第2の要求を、前記カンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信することであって、前記第2のエンドポイントデバイスからの第2のメディアストリームを含む第2の要求を受信することと、
前記サーバコンピュータ装置で、前記第2の要求に基づいて前記メディアロケーションサービスに問い合わせすることにより、前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定することと、
前記サーバコンピュータ装置で、前記第1のメディアストリームおよび前記第2のメディアストリームを前記ミーティングルームに転送することにより、前記カンファレンス・セッションを確立することとを含む方法。
(発明2)
前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の地理的ロケーション、および前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の論理的ロケーション、のうちの1つ以上を前記カンファレンス・セッションの前記ホスティングサイトが含む、発明1に記載の方法。
(発明3)
前記構成属性が、認証データ、セッション主催者データ、セッション参加者データ、セッションのメディア能力データ、セッション特性データ、のうちの1つ以上を含む、発明1に記載の方法。
(発明4)
前記ウェイティングルームが、対話型音声応答(IVR)システムを含む、発明1に記載の方法。
(発明5)
前記カンファレンス・セッションのホスティングサイトを決定するステップが以下を含む、発明1に記載の方法:
利用できるホスティングサイトのリストを前記メディアロケーションサービスから取得することと、
前記第1のエンドポイントデバイスのロケーションに基づいてホスティングサイトを選択すること。
(発明6)
前記カンファレンス・セッションのホスティングサイトを決定するステップが以下を含む、発明1に記載の方法:
利用できるホスティングサイトのリストを前記メディアロケーションサービスから取得することと、
前記カンファレンス・セッションの前記主催者に基づいてホスティングサイトを選択すること。
(発明7)
前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定するステップが以下を含む、発明1に記載の方法:
利用できるミーティングルームのリストを前記メディアロケーションサービスから取得することと、
前記カンファレンス・セッションを確立するために必要なリソースに基づいてミーティングルームを選択すること。
(発明8)
前記サーバコンピュータ装置が、前記第1の要求に基づいてユーザプロファイル・データベースに問い合わせすることによって、前記非主催者参加者を識別することをさらに含む、発明1に記載の方法。
(発明9)
前記サーバコンピュータ装置が、第3のエンドポイントデバイスに接続して、前記第3のエンドポイントデバイスからの第3のメディアストリームを前記ミーティングルームに転送することをさらに含む、発明1に記載の方法。
(発明10)
前記非主催者参加者に関連付けられた第1の認証資格情報を前記第1の要求が含み、前記サーバコンピュータ装置は、前記第1の認証資格情報に基づいて、前記第1のエンドポイントデバイスを前記ミーティングルームに接続すべきかどうか判断する、発明1に記載の方法。
(発明11)
前記主催者に関連付けられた第2の認証資格情報を前記第2の要求が含み、前記サーバコンピュータ装置は、前記第2の認証資格情報に基づいて、カンファレンス・セッションを確立すべきかどうか判断する、発明1に記載の方法。
(発明12)
メディアベースのカンファレンス・セッションにおいてリソースを割り当てるためのシステムであって、当該システムは、サーバコンピュータ装置を備え、該サーバコンピュータ装置は、
カンファレンス・セッションに参加するための第1の要求であって、第1のエンドポイントデバイスからの第1のメディアストリームを含む第1の要求を、前記カンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信し、
前記第1の要求に基づいてメディアロケーションサービスに問い合わせすることにより、前記カンファレンス・セッションのホスティングサイトを決定し、
前記第1の要求に基づいて前記ホスティングサイトのデータベースに問い合わせすることにより、前記カンファレンス・セッションの構成属性を決定し、
前記第1のエンドポイントデバイスの前記メディアストリームを、前記ホスティングサイトのウェイティングルームに接続し、
前記カンファレンス・セッションに参加するための第2の要求であって、第2のエンドポイントデバイスからの第2のメディアストリームを含む第2の要求を、前記カンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信し、
前記第2の要求に基づいて前記メディアロケーションサービスに問い合わせすることにより、前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定し、
前記第1のメディアストリームおよび前記第2のメディアストリームを前記ミーティングルームに転送することにより、前記カンファレンス・セッションを確立する、ように構成されている、システム。
(発明13)
前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の地理的ロケーション、および前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の論理的ロケーション、のうちの1つ以上を前記カンファレンス・セッションの前記ホスティングサイトが含む、発明12に記載のシステム。
(発明14)
前記構成属性が、認証データ、セッション主催者データ、セッション参加者データ、セッションのメディア能力データ、セッション特性データ、のうちの1つ以上を含む、発明12に記載のシステム。
(発明15)
前記ウェイティングルームが、対話型音声応答(IVR)システムを含む、発明12に記載のシステム。
(発明16)
前記カンファレンス・セッションのホスティングサイトを決定することが、以下を含む、発明12に記載のシステム:
利用できるホスティングサイトのリストを前記メディアロケーションサービスから取得することと、
前記第1のエンドポイントデバイスのロケーションに基づいてホスティングサイトを選択すること。
(発明17)
前記カンファレンス・セッションのホスティングサイトを決定することが、以下を含む、発明12に記載のシステム:
利用できるホスティングサイトのリストを前記メディアロケーションサービスから取得することと、
前記カンファレンス・セッションの前記主催者に基づいてホスティングサイトを選択すること。
(発明18)
前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定することが、以下を含む、発明12に記載のシステム:
利用できるミーティングルームのリストを前記メディアロケーションサービスから取得することと、
前記カンファレンス・セッションを確立するために必要なリソースに基づいてミーティングルームを選択すること。
(発明19)
前記サーバコンピュータ装置が、前記第1の要求に基づいてユーザプロファイル・データベースに問い合わせすることによって、前記非主催者参加者を識別するように、さらに構成されている、発明12に記載のシステム。
(発明20)
前記サーバコンピュータ装置は、第3のエンドポイントデバイスに接続して、前記第3のエンドポイントデバイスからの第3のメディアストリームを前記ミーティングルームに転送するように、さらに構成されている、発明12に記載のシステム。
(発明21)
前記非主催者参加者に関連付けられた第1の認証資格情報を前記第1の要求が含み、前記サーバコンピュータ装置は、前記第1の認証資格情報に基づいて、前記第1のエンドポイントデバイスを前記ミーティングルームに接続すべきかどうか判断する、発明12に記載のシステム。
(発明22)
前記主催者に関連付けられた第2の認証資格情報を前記第2の要求が含み、前記サーバコンピュータ装置は、前記第2の認証資格情報に基づいて、カンファレンス・セッションを確立すべきかどうか判断する、発明12に記載のシステム。
(発明23)
メディアベースのカンファレンス・セッションにおいてリソースを割り当てるための、非一時的なコンピュータ可読記憶媒体内に有形に具現化されたコンピュータプログラムプロダクトであって、当該コンピュータプログラムプロダクトは、サーバコンピュータ装置に、
カンファレンス・セッションに参加するための第1の要求であって、第1のエンドポイントデバイスからの第1のメディアストリームを含む第1の要求を、前記カンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信させ、
前記第1の要求に基づいてメディアロケーションサービスに問い合わせすることにより、前記カンファレンス・セッションのホスティングサイトを決定させ、
前記第1の要求に基づいて前記ホスティングサイトのデータベースに問い合わせすることにより、前記カンファレンス・セッションの構成属性を決定させ、
前記第1のエンドポイントデバイスの前記メディアストリームを、前記ホスティングサイトのウェイティングルームに接続させ、
前記カンファレンス・セッションに参加するための第2の要求であって、第2のエンドポイントデバイスからの第2のメディアストリームを含む第2の要求を、前記カンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信させ、
前記第2の要求に基づいて前記メディアロケーションサービスに問い合わせすることにより、前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定させ、
前記第1のメディアストリームおよび前記第2のメディアストリームを前記ミーティングルームに転送することにより、前記カンファレンス・セッションを確立させる、ように機能する命令を含む、コンピュータプログラムプロダクト。



Claims (19)

  1. メディアベース・カンファレンシングシステムにおいてリソースを割り当てる方法であって、
    サーバコンピュータ装置で、カンファレンス・セッションに参加するための第1の要求を、前記カンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信することであって、前記第1のエンドポイントデバイスからの第1のメディアストリームを含む第1の要求を受信することと、
    前記サーバコンピュータ装置で、前記第1のメディアストリームの属性、前記第1のエンドポイントデバイスの属性、および前記カンファレンス・セッションの属性に基づいてメディアロケーションサービスに問い合わせすることにより、前記カンファレンス・セッションのホスティングサイトを決定することであって、ここで、前記サーバコンピュータ装置は前記第1の要求を受信したときに前記ホスティングサイトを動的に決定する、該決定することと、
    前記サーバコンピュータ装置で、前記ホスティングサイトを決定するときに、前記カンファレンス・セッションをサポートするために、一以上のリソースを動的に割り当てることと、
    前記サーバコンピュータ装置で、前記第1のエンドポイントデバイスの前記第1のメディアストリームを、前記ホスティングサイトのウェイティングルームに接続することと、
    前記サーバコンピュータ装置で、前記カンファレンス・セッションに参加するための第2の要求を、前記カンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信することであって、前記第2のエンドポイントデバイスからの第2のメディアストリームを含む第2の要求を受信することと、
    前記サーバコンピュータ装置で、前記第2のメディアストリームの属性、前記第2のエンドポイントデバイスの属性、および前記カンファレンス・セッションの属性に基づいて前記メディアロケーションサービスに問い合わせすることにより、前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定することであって、ここで、前記サーバコンピュータ装置は前記第2の要求を受信したときに前記ミーティングルームを動的に決定する、該決定することと、
    前記サーバコンピュータ装置で、前記第1のメディアストリームおよび前記第2のメディアストリームを前記ミーティングルームに転送することにより、前記カンファレンス・セッションを確立することとを含む方法。
  2. 前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の地理的ロケーション、および前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の論理的ロケーション、のうちの1つ以上を前記カンファレンス・セッションの前記ホスティングサイトが含む、請求項1に記載の方法。
  3. 前記カンファレンス・セッションの前記属性が、認証データ、セッション主催者データ、セッション参加者データ、セッションのメディア能力データ、セッション特性データ、のうちの1つ以上を含む、請求項1に記載の方法。
  4. 前記ウェイティングルームが、対話型音声応答(IVR)システムを含む、請求項1に記載の方法。
  5. 前記カンファレンス・セッションのホスティングサイトを決定するステップが以下を含む、請求項1に記載の方法:
    利用できるホスティングサイトのリストを前記メディアロケーションサービスから取得することと、
    前記カンファレンス・セッションの前記主催者の選択に基づいてホスティングサイトを選択すること。
  6. 前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定するステップが以下を含む、請求項1に記載の方法:
    利用できるミーティングルームのリストを前記メディアロケーションサービスから取得することと、
    前記カンファレンス・セッションをサポートする前記リソースに基づいてミーティングルームを選択すること。
  7. 前記サーバコンピュータ装置が、第3のエンドポイントデバイスに接続して、前記第3のエンドポイントデバイスからの第3のメディアストリームを前記ミーティングルームに転送することをさらに含む、請求項1に記載の方法。
  8. 前記非主催者参加者に関連付けられた第1の認証資格情報を前記第1の要求が含み、前記サーバコンピュータ装置は、前記第1の認証資格情報に基づいて、前記第1のエンドポイントデバイスを前記ミーティングルームに接続すべきかどうか判断する、請求項1に記載の方法。
  9. 前記主催者に関連付けられた第2の認証資格情報を前記第2の要求が含み、前記サーバコンピュータ装置は、前記第2の認証資格情報に基づいて、前記カンファレンス・セッションを確立すべきかどうか判断する、請求項1に記載の方法。
  10. メディアベースのカンファレンス・セッションにおいてリソースを割り当てるためのシステムであって、当該システムは、サーバコンピュータ装置を備え、該サーバコンピュータ装置は、
    カンファレンス・セッションに参加するための第1の要求であって、第1のエンドポイントデバイスからの第1のメディアストリームを含む第1の要求を、前記カンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信し、
    前記第1のメディアストリームの属性、前記第1のエンドポイントデバイスの属性、および前記カンファレンス・セッションの属性に基づいてメディアロケーションサービスに問い合わせすることにより、前記カンファレンス・セッションのホスティングサイトを決定し(ここで、前記サーバコンピュータ装置は前記第1の要求を受信したときに前記ホスティングサイトを動的に決定する)、
    前記ホスティングサイトを決定するときに、前記カンファレンス・セッションをサポートするために、一以上のリソースを動的に割り当て、
    前記第1のエンドポイントデバイスの前記第1のメディアストリームを、前記ホスティングサイトのウェイティングルームに接続し、
    前記カンファレンス・セッションに参加するための第2の要求であって、第2のエンドポイントデバイスからの第2のメディアストリームを含む第2の要求を、前記カンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信し、
    前記第2のメディアストリームの属性、前記第2のエンドポイントデバイスの属性、および前記カンファレンス・セッションの属性に基づいて前記メディアロケーションサービスに問い合わせすることにより、前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定し(ここで、前記サーバコンピュータ装置は前記第2の要求を受信したときに前記ミーティングルームを動的に決定する)、
    前記第1のメディアストリームおよび前記第2のメディアストリームを前記ミーティングルームに転送することにより、前記カンファレンス・セッションを確立する、ように構成されている、システム。
  11. 前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の地理的ロケーション、および前記カンファレンス・セッションをホストするために使用されるコンピュータ装置の論理的ロケーション、のうちの1つ以上を前記カンファレンス・セッションの前記ホスティングサイトが含む、請求項10に記載のシステム。
  12. 前記カンファレンス・セッションの前記属性が、認証データ、セッション主催者データ、セッション参加者データ、セッションのメディア能力データ、セッション特性データ、のうちの1つ以上を含む、請求項10に記載のシステム。
  13. 前記ウェイティングルームが、対話型音声応答(IVR)システムを含む、請求項10に記載のシステム。
  14. 前記カンファレンス・セッションのホスティングサイトを決定することが、以下を含む、請求項10に記載のシステム:
    利用できるホスティングサイトのリストを前記メディアロケーションサービスから取得することと、
    前記カンファレンス・セッションの前記主催者の選択に基づいてホスティングサイトを選択すること。
  15. 前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定することが、以下を含む、請求項10に記載のシステム:
    利用できるミーティングルームのリストを前記メディアロケーションサービスから取得することと、
    前記カンファレンス・セッションをサポートするリソースに基づいてミーティングルームを選択すること。
  16. 前記サーバコンピュータ装置は、第3のエンドポイントデバイスに接続して、前記第3のエンドポイントデバイスからの第3のメディアストリームを前記ミーティングルームに転送するように、さらに構成されている、請求項10に記載のシステム。
  17. 前記非主催者参加者に関連付けられた第1の認証資格情報を前記第1の要求が含み、前記サーバコンピュータ装置は、前記第1の認証資格情報に基づいて、前記第1のエンドポイントデバイスを前記ミーティングルームに接続すべきかどうか判断する、請求項10に記載のシステム。
  18. 前記主催者に関連付けられた第2の認証資格情報を前記第2の要求が含み、前記サーバコンピュータ装置は、前記第2の認証資格情報に基づいて、前記カンファレンス・セッションを確立すべきかどうか判断する、請求項10に記載のシステム。
  19. メディアベースのカンファレンス・セッションにおいてリソースを割り当てるための、非一時的なコンピュータ可読記憶媒体内に有形に具現化されたコンピュータプログラムであって、当該コンピュータプログラムは、サーバコンピュータ装置に、
    カンファレンス・セッションに参加するための第1の要求であって、第1のエンドポイントデバイスからの第1のメディアストリームを含む第1の要求を、前記カンファレンス・セッションの非主催者参加者に関連付けられた第1のエンドポイントデバイスから受信させ、
    前記第1のメディアストリームの属性、前記第1のエンドポイントデバイスの属性、および前記カンファレンス・セッションの属性に基づいてメディアロケーションサービスに問い合わせすることにより、前記カンファレンス・セッションのホスティングサイトを決定させ(ここで、前記サーバコンピュータ装置は前記第1の要求を受信したときに前記ホスティングサイトを動的に決定する)、
    前記ホスティングサイトを決定するときに、前記カンファレンス・セッションをサポートするために、一以上のリソースを動的に割り当て、
    前記第1のエンドポイントデバイスの前記第1のメディアストリームを、前記ホスティングサイトのウェイティングルームに接続させ、
    前記カンファレンス・セッションに参加するための第2の要求であって、第2のエンドポイントデバイスからの第2のメディアストリームを含む第2の要求を、前記カンファレンス・セッションの主催者に関連付けられた第2のエンドポイントデバイスから受信させ、
    前記第2のメディアストリームの属性、前記第2のエンドポイントデバイスの属性、および前記カンファレンス・セッションの属性に基づいて前記メディアロケーションサービスに問い合わせすることにより、前記ホスティングサイトにおける前記カンファレンス・セッションのためのミーティングルームを決定させ(ここで、前記サーバコンピュータ装置は前記第2の要求を受信したときに前記ミーティングルームを動的に決定する)、
    前記第1のメディアストリームおよび前記第2のメディアストリームを前記ミーティングルームに転送することにより、前記カンファレンス・セッションを確立させる、ように機能する命令を含む、コンピュータプログラム。
JP2015192259A 2014-09-29 2015-09-29 セキュアなメディアベース・カンファレンシングにおける動的シグナリングおよびリソース割り当て Expired - Fee Related JP6086965B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/500,422 US9131112B1 (en) 2014-09-29 2014-09-29 Dynamic signaling and resource allocation in secure media-based conferencing
US14/500,422 2014-09-29

Publications (2)

Publication Number Publication Date
JP2016076926A JP2016076926A (ja) 2016-05-12
JP6086965B2 true JP6086965B2 (ja) 2017-03-01

Family

ID=54012726

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015192259A Expired - Fee Related JP6086965B2 (ja) 2014-09-29 2015-09-29 セキュアなメディアベース・カンファレンシングにおける動的シグナリングおよびリソース割り当て

Country Status (5)

Country Link
US (1) US9131112B1 (ja)
EP (1) EP3001603A1 (ja)
JP (1) JP6086965B2 (ja)
AU (1) AU2015230835B2 (ja)
CA (1) CA2906465C (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX365073B (es) * 2014-10-29 2019-05-22 Kodiak Networks Inc Sistema y metodo para hacer uso de comunicacion web en tiempo real para implementar soluciones de presiona para hablar.
CN107170452A (zh) * 2017-04-27 2017-09-15 广东小天才科技有限公司 一种电子会议的加入方法及装置
CN111681650A (zh) * 2019-03-11 2020-09-18 阿里巴巴集团控股有限公司 一种智能会议控制方法和装置
CN112333190B (zh) * 2020-11-05 2024-05-03 深圳Tcl新技术有限公司 会话控制方法、会话控制设备及计算机可读存储介质
CN114125362A (zh) * 2021-11-19 2022-03-01 中国电信集团系统集成有限责任公司 会议加入方法、装置、会议平台及计算机可读存储介质

Family Cites Families (134)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549178B2 (en) 1994-03-11 2003-04-15 Canon Kabushiki Kaisha Communication terminal apparatus
US6690654B2 (en) 1996-11-18 2004-02-10 Mci Communications Corporation Method and system for multi-media collaboration between remote parties
CH691155A5 (fr) 1997-02-13 2001-04-30 Fotowire Dev S A Procédé de traitement d'images et dispositif pour sa mise en oeuvre.
US6779030B1 (en) 1997-10-06 2004-08-17 Worldcom, Inc. Intelligent network
US6262978B1 (en) 1998-03-20 2001-07-17 At&T Corp. Call completion of video telephone/teleconference call as packet voice call
US6404873B1 (en) 1998-12-01 2002-06-11 Siemens Information And Communication Networks, Inc. Subconference calling in a telephony-over-LAN environment
GB9903125D0 (en) 1999-02-11 1999-04-07 Nokia Telecommunications Oy Handover in a mobile communication system
US7136838B1 (en) 1999-03-27 2006-11-14 Microsoft Corporation Digital license and method for obtaining/providing a digital license
US6782412B2 (en) 1999-08-24 2004-08-24 Verizon Laboratories Inc. Systems and methods for providing unified multimedia communication services
CA2389404C (en) 1999-11-08 2012-07-24 Polycom Israel Ltd. A system and method for controlling one or more multipoint control units as one multipoint control unit
US7174365B1 (en) 2000-11-08 2007-02-06 Polycom Israel Ltd. System and method for controlling one or more multipoint control units as one multipoint control unit
US7353251B1 (en) 1999-12-23 2008-04-01 Polycom, Inc. Automated call launching
WO2001061570A1 (en) 2000-02-14 2001-08-23 Lockheed Martin Corporation Information access, collaboration and integration system and method
US7085243B2 (en) 2000-03-01 2006-08-01 Polycom Israel Ltd. System and method for providing reservationless conferencing
US6529941B2 (en) 2000-03-23 2003-03-04 Fraunhofer Center For Research In Computer Graphics, Inc. Extensible information distribution mechanism for session management
US20020120760A1 (en) 2000-05-26 2002-08-29 Gur Kimchi Communications protocol
US7539155B1 (en) 2000-08-15 2009-05-26 Michael Holloway Centralized feature platform in a packetized network
US6751297B2 (en) 2000-12-11 2004-06-15 Comverse Infosys Inc. Method and system for multimedia network based data acquisition, recording and distribution
US7058168B1 (en) 2000-12-29 2006-06-06 Cisco Technology, Inc. Method and system for participant control of privacy during multiparty communication sessions
US7016315B2 (en) 2001-03-26 2006-03-21 Motorola, Inc. Token passing arrangement for a conference call bridge arrangement
US20020147814A1 (en) 2001-04-05 2002-10-10 Gur Kimchi Multimedia devices over IP
US6633324B2 (en) 2001-07-31 2003-10-14 Forgent Networks, Inc. System and method for video call configuration and scheduling
US7216114B2 (en) 2001-08-09 2007-05-08 International Business Machines Corporation Transfer of mail folders between e-mail users
US8218829B2 (en) 2001-08-20 2012-07-10 Polycom, Inc. System and method for using biometrics technology in conferencing
US7142230B2 (en) 2001-08-22 2006-11-28 Digeo, Inc. System and method for screening incoming and outgoing video communications within an interactive television system
US7243123B1 (en) 2001-10-22 2007-07-10 Digeo, Inc. Video call routing with presence determination
US6674459B2 (en) 2001-10-24 2004-01-06 Microsoft Corporation Network conference recording system and method including post-conference processing
US6621515B2 (en) 2001-10-31 2003-09-16 Forgent Networks, Inc. System and method for routing video calls
US20040103147A1 (en) 2001-11-13 2004-05-27 Flesher Kevin E. System for enabling collaboration and protecting sensitive data
US7031700B1 (en) 2001-11-14 2006-04-18 Sprint Spectrum L.P. Method and system for location-based group conference initiation
WO2003053004A1 (en) 2001-12-15 2003-06-26 Thomson Licensing S.A. Videoconference bandwidth selection mechanism
US6922718B2 (en) 2002-02-01 2005-07-26 Dell Products L.P. Method and system for participating locations in a multi-point video conference
US20070285504A1 (en) 2002-02-15 2007-12-13 Hesse Thomas H Systems and methods for conferencing among governed and external participants
US7916322B2 (en) 2002-03-14 2011-03-29 Senshin Capital, Llc Method and apparatus for uploading content from a device to a remote network location
US7701926B2 (en) 2002-06-14 2010-04-20 Polycom, Inc. Multipoint multimedia/audio conference using IP trunking
US20040107270A1 (en) 2002-10-30 2004-06-03 Jamie Stephens Method and system for collaboration recording
JP2004274310A (ja) 2003-03-07 2004-09-30 Sony Ericsson Mobilecommunications Japan Inc 移動端末装置
US20040207724A1 (en) 2003-04-17 2004-10-21 Siemens Information And Communication Networks, Inc. System and method for real time playback of conferencing streams
US8223944B2 (en) 2003-05-05 2012-07-17 Interactions Corporation Conference call management system
US7590230B1 (en) 2003-05-22 2009-09-15 Cisco Technology, Inc. Automated conference recording for missing conference participants
US7428000B2 (en) 2003-06-26 2008-09-23 Microsoft Corp. System and method for distributed meetings
NO318974B1 (no) 2003-07-07 2005-05-30 Tandberg Telecom As Distribuert MCU
US20050018826A1 (en) 2003-07-21 2005-01-27 Benco David S. Conference call scheduling
US7412489B2 (en) 2003-08-21 2008-08-12 Ameriprise Financial, Inc. Method and system for electronic archival and retrieval of electronic communications
US7095829B2 (en) 2003-09-04 2006-08-22 Emc Corporation Data message mirroring and redirection
US7499531B2 (en) 2003-09-05 2009-03-03 Emc Corporation Method and system for information lifecycle management
GB2406663B (en) 2003-10-01 2006-03-22 Toshiba Res Europ Ltd Flexible protocol stack
US7466812B1 (en) 2003-10-22 2008-12-16 Cisco Technology, Inc. Connecting an endpoint to a conference call
GB2411494B (en) 2004-02-27 2006-04-12 Toshiba Res Europ Ltd Protocol stack with modification facility
US7483526B2 (en) 2004-06-10 2009-01-27 International Business Machines Corporation Method for conference call initialization
US8229904B2 (en) 2004-07-01 2012-07-24 Emc Corporation Storage pools for information management
US7657021B2 (en) 2004-09-29 2010-02-02 Avaya Inc. Method and apparatus for global call queue in a global call center
US7312809B2 (en) 2004-10-12 2007-12-25 Codian Ltd. Method and apparatus for controlling a conference call
US7532231B2 (en) 2004-12-17 2009-05-12 Codian Limited Video conference recorder
US7707262B1 (en) 2004-12-28 2010-04-27 Aol Llc Negotiating content controls
US7679640B2 (en) 2005-01-27 2010-03-16 Polycom, Inc. Method and system for conducting a sub-videoconference from a main videoconference
US7822185B2 (en) 2005-05-10 2010-10-26 Samsung Electronics Co., Ltd. Instant conference method and apparatus
US20060285670A1 (en) 2005-05-26 2006-12-21 Lucent Technologies Inc. Method and apparatus for providing conference call services
CN1881924B (zh) 2005-06-16 2011-05-25 松下电器产业株式会社 群组通信安全分配媒体记录及取回之方法及装置
US8079079B2 (en) 2005-06-29 2011-12-13 Microsoft Corporation Multimodal authentication
US8605878B2 (en) 2005-06-30 2013-12-10 Emc Corporation Redirecting and mirroring of telephonic communications
US8831194B2 (en) 2005-06-30 2014-09-09 Emc Corporation Telephonic communication redirection and compliance processing
US8140362B2 (en) 2005-08-30 2012-03-20 International Business Machines Corporation Automatically processing dynamic business rules in a content management system
US7676033B2 (en) 2005-08-31 2010-03-09 Broadsoft M6, Llc Methods, systems, and computer program products for automatically establishing a conference call having a plurality of different subscriber participation classes
NO327518B1 (no) 2005-09-26 2009-07-27 Tandberg Telecom As Fremgangsmate for arkivering og streaming av mediedata mellom et antall endepunkter gjennom en gatekeeper
US8487976B2 (en) 2006-01-24 2013-07-16 Lifesize Communications, Inc. Participant authentication for a videoconference
US8433050B1 (en) 2006-02-06 2013-04-30 Avaya Inc. Optimizing conference quality with diverse codecs
NO325250B1 (no) * 2006-02-22 2008-03-10 Tandberg Telecom As Endepunktsinitiering av flerpartskonferanser
US7729482B2 (en) 2006-02-27 2010-06-01 Cisco Technology, Inc. Method and system for providing communication protocol interoperability
US7653705B2 (en) 2006-06-26 2010-01-26 Microsoft Corp. Interactive recording and playback for network conferencing
US8526336B2 (en) 2006-08-09 2013-09-03 Cisco Technology, Inc. Conference resource allocation and dynamic reallocation
NO325487B1 (no) 2006-09-14 2008-05-13 Tandberg Telecom As Fremgangsmate og anordning for dynamisk streaming-/arkiveringskonfigurasjon
US8817668B2 (en) 2006-09-15 2014-08-26 Microsoft Corporation Distributable, scalable, pluggable conferencing architecture
US7937442B2 (en) 2006-09-22 2011-05-03 Microsoft Corporation Multipoint control unit (MCU) failure detection and rollover
US20080263010A1 (en) 2006-12-12 2008-10-23 Microsoft Corporation Techniques to selectively access meeting content
US8259152B2 (en) 2006-12-29 2012-09-04 Glowpoint, Inc. Video call distributor
US8654954B2 (en) 2007-01-03 2014-02-18 Alcatel Lucent System and method for controlling access to conference calls
US8233605B2 (en) 2007-01-03 2012-07-31 At&T Intellectual Property I, L.P. Methods, systems, and products for monitoring conferences
US8407289B2 (en) 2007-01-08 2013-03-26 Cisco Technology, Inc. Methods and apparatuses for dynamically suggesting an application based on a collaboration session
US8149261B2 (en) 2007-01-10 2012-04-03 Cisco Technology, Inc. Integration of audio conference bridge with video multipoint control unit
US20080183467A1 (en) 2007-01-25 2008-07-31 Yuan Eric Zheng Methods and apparatuses for recording an audio conference
US8520820B2 (en) 2007-03-07 2013-08-27 Cisco Technology, Inc. Conference call access
US8300557B2 (en) 2007-04-26 2012-10-30 Microsoft Corporation Breakout rooms in a distributed conferencing environment
JP2008282191A (ja) 2007-05-10 2008-11-20 Hitachi Ltd 計算機システム及び第2計算機
US8320886B2 (en) 2007-05-23 2012-11-27 Verint Americas, Inc. Integrating mobile device based communication session recordings
US8290134B2 (en) 2007-07-26 2012-10-16 International Business Machines Corporation Managing conference calls via a talk queue
WO2009032931A2 (en) 2007-09-04 2009-03-12 Ticketmaster, Llc Methods and systems for reservation and brokering of tickets or resources
CN101453483B (zh) 2007-11-29 2012-05-02 华为技术有限公司 会话历史记录的存储处理和查询方法、系统和装置
US8368738B2 (en) 2008-01-14 2013-02-05 Microsoft Corporation Joining users to a conferencing session
US8411835B2 (en) 2008-02-28 2013-04-02 At&T Intellectual Property I, L.P. Methods and apparatus to manage conference calls
US20090220066A1 (en) 2008-02-29 2009-09-03 Cisco Technology, Inc. System and method for seamless transition of a conference call participant between endpoints
US8887067B2 (en) 2008-05-30 2014-11-11 Microsoft Corporation Techniques to manage recordings for multimedia conference events
US20100042647A1 (en) 2008-08-14 2010-02-18 Verizon Business Network Services Inc. Method and system for recording real-time communications
US9615146B2 (en) 2008-11-21 2017-04-04 At&T Intellectual Property I, L.P. Method and apparatus for managing conference calls
US20100153497A1 (en) 2008-12-12 2010-06-17 Nortel Networks Limited Sharing expression information among conference participants
NO331287B1 (no) 2008-12-15 2011-11-14 Cisco Systems Int Sarl Fremgangsmate og anordning for gjenkjenning av ansikter i en videostrom
US8380790B2 (en) 2008-12-15 2013-02-19 Microsoft Corporation Video conference rate matching
US8379819B2 (en) 2008-12-24 2013-02-19 Avaya Inc Indexing recordings of telephony sessions
US8489887B1 (en) 2008-12-31 2013-07-16 Bank Of America Corporation Biometric authentication for video communication sessions
US20100306180A1 (en) 2009-01-28 2010-12-02 Digitiliti, Inc. File revision management
US8468581B2 (en) 2009-03-18 2013-06-18 Savemeeting, S.L. Method and system for the confidential recording, management and distribution of meetings by means of multiple electronic devices with remote storage
US8356332B2 (en) 2009-07-30 2013-01-15 Alcatel Lucent Extensible protocol validation
US8675524B2 (en) * 2009-09-23 2014-03-18 At&T Intellectual Property I, L.P. Method and apparatus for dynamically allocating resources for large-scale multimedia conferences
US8359616B2 (en) 2009-09-30 2013-01-22 United Video Properties, Inc. Systems and methods for automatically generating advertisements using a media guidance application
US8923325B2 (en) 2009-10-06 2014-12-30 Adobe Systems Incorporated Client-server architecture for audio-video communications
US8699674B2 (en) * 2010-04-21 2014-04-15 Angel.Com Incorporated Dynamic speech resource allocation
US20110268263A1 (en) 2010-04-30 2011-11-03 American Teleconferencing Services Ltd. Conferencing alerts
US9559869B2 (en) 2010-05-04 2017-01-31 Qwest Communications International Inc. Video call handling
US8885013B2 (en) 2010-05-12 2014-11-11 Blue Jeans Network, Inc. Systems and methods for novel interactions with participants in videoconference meetings
US20110287748A1 (en) 2010-05-18 2011-11-24 Albert Angel Consent, Signature and Recording Retention in a Certified Communications System
US8489692B2 (en) 2010-08-03 2013-07-16 Comcast Cable Communications, Llc Establishment of a conference
US9247205B2 (en) 2010-08-31 2016-01-26 Fujitsu Limited System and method for editing recorded videoconference data
US8630854B2 (en) 2010-08-31 2014-01-14 Fujitsu Limited System and method for generating videoconference transcriptions
EP2619980A4 (en) 2010-09-20 2017-02-08 Vidyo, Inc. System and method for the control and management of multipoint conferences
US9118734B2 (en) 2010-12-07 2015-08-25 International Business Machines Corporation Systems for managing conferences
US8582474B2 (en) 2010-12-09 2013-11-12 At&T Intellectual Property I, L.P. Video conference system and method
JP4893855B1 (ja) 2010-12-21 2012-03-07 オムロン株式会社 画像認証装置、画像処理システム、画像認証装置制御プログラム、コンピュータ読み取り可能な記録媒体、および画像認証方法
US8619949B2 (en) 2011-05-09 2013-12-31 Avaya Inc. Video conference bridge setting, sharing, pushing, and rationalization
IN2014DN00284A (ja) 2011-07-25 2015-06-05 Hewlett Packard Development Co
US8917306B2 (en) 2011-07-29 2014-12-23 Cisco Technology, Inc. Previewing video data in a video communication environment
WO2013066980A1 (en) 2011-11-01 2013-05-10 Teliris, Inc. Cloud-based interoperability platform for video conferencing
US8607319B2 (en) 2011-11-22 2013-12-10 Daon Holdings Limited Methods and systems for determining biometric data for use in authentication transactions
US20130179507A1 (en) 2012-01-06 2013-07-11 Microsoft Corporation Communicating Media Data
US8588111B1 (en) 2012-09-15 2013-11-19 Zoom International S.R.O. System and method for passive communication recording
US8908843B2 (en) * 2012-03-21 2014-12-09 Avaya Inc. Beaming to the next conference or between concurrent conferences
US8941712B2 (en) 2012-06-14 2015-01-27 Logitech Europe S.A. Call movement in a conferencing system
US8934342B2 (en) * 2012-08-17 2015-01-13 Avaya Inc. System and method for obviating a meet-me conference hub
US9065873B2 (en) 2012-10-18 2015-06-23 Cisco Technology, Inc. Reduction of chaining in conference sessions
US8957936B2 (en) 2012-10-23 2015-02-17 Cisco Technology, Inc. Method to preview caller in a video conference session
US8955048B2 (en) 2012-11-27 2015-02-10 Ricoh Company, Ltd. Conference data management
US9367676B2 (en) 2013-03-22 2016-06-14 Nok Nok Labs, Inc. System and method for confirming location using supplemental sensor and/or location data
US9635061B2 (en) * 2013-03-24 2017-04-25 Avaya Inc. System and method for managing conference calls
US20140317061A1 (en) 2013-04-22 2014-10-23 Cti Group (Holding) Inc. System and method for distributed interaction media storage and retrieval
US8970660B1 (en) 2013-10-11 2015-03-03 Edifire LLC Methods and systems for authentication in secure media-based conferencing

Also Published As

Publication number Publication date
JP2016076926A (ja) 2016-05-12
CA2906465C (en) 2017-02-07
US9131112B1 (en) 2015-09-08
AU2015230835B2 (en) 2016-05-26
EP3001603A1 (en) 2016-03-30
CA2906465A1 (en) 2016-01-26

Similar Documents

Publication Publication Date Title
US9591040B2 (en) Dynamic session monitoring in secure media-based conferencing
JP5969675B2 (ja) セキュアなメディアベース・カンファレンシングにおける動的なカンファレンスセッションの再ルーティング
JP5960898B2 (ja) セキュアなメディアベース・カンファレンシングにおける動的なカンファレンス・セッション状態の管理
US9565396B2 (en) Methods, systems and program products for initiating a process on data network
US8144632B1 (en) Methods, systems and program products for efficient communications during data sharing event
JP6086965B2 (ja) セキュアなメディアベース・カンファレンシングにおける動的シグナリングおよびリソース割り当て
JP6208875B2 (ja) セキュアメディアベース会議のための方法およびシステム
KR102127019B1 (ko) 무선 네트워크 상에서의 멀티 모달 통신 우선순위
JP2017523709A (ja) 通信エンドポイント間の代理トランザクション
WO2014085093A1 (en) Systems for providing services in a voice conferencing environment
JP6371472B2 (ja) セキュアなメディアベース会議における多要素認証のための方法およびシステム
JP6215508B1 (ja) セキュアなメディアベース会議におけるコンプライアンス監視のための方法およびシステム
WO2018196464A1 (zh) 基于软件媒体服务器的会议级联方法、服务器及存储介质
US20210194937A1 (en) Dynamically expandable conference call system using active load balancing

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161018

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170131

R150 Certificate of patent or registration of utility model

Ref document number: 6086965

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees