(57)【特許請求の範囲】
【請求項１】
1）ソース・ユーザーがウェブページにアクセスする時、クライアント側スクリプトプログラムはflashインターフェースをコールしてsocketサーバーと接続し、Flashがstratusサーバーと接続してkeyを取得し、flashはstratusサーバーと変数名がNetconnectionである接続を設立して受信したメッセージをモニターし、Flashがソース・ユーザーのユーザー名及びkeyをsocketサーバーに送信し、socketサーバーがソース・ユーザーのユーザー名及びkeyを保存し、ソース・ユーザーのウェブページにおけるjavascript（登録商標）コードがflashインターフェースをコールし、目標ユーザーを含むユーザー名メッセージをsocketサーバーに送信し、socketサーバーがソース・ユーザーウェブページからのメッセージを受信して、目標ユーザーのユーザー名が対応するkeyをソース・ユーザーのウェブページにおけるflashに返送し、ソース・ユーザーウェブページにおけるflashがNetconnectionと目標ユーザーのkeyにより、目標ユーザーウェブページにおけるflashへビデオ招請メッセージを送信し、目標ユーザーウェブページにおけるflashがメッセージを受信した後、目標ユーザーのウェブページにビデオ放映用flash（該flashの名称をtarget_video_flashにする）をロードし、target_video_flashがstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyと目標ユーザーのユーザー名をsocketサーバーに保存し、target_video_flashはソース・ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該ソース・ユーザーのユーザー名が対応する新しいkeyをtarget_video_flashに返送し、target_video_flashはsocketサーバーが返送した該ソース・ユーザーのユーザー名が対応する新しいkeyを受信した後、Netconnectionの接続と該ソース・ユーザーのユーザー名が対応する新しいkeyにより該keyが対応するビデオ・ストリーミングを放映し始め、同時にNetconnectionの接続を介してローカルカメラビデオ・ストリーミングをソース・ユーザーウェブページのflashに送信するステップ、
2）target_video_flashはNetconnectionを介してビデオ通信を賛成するメッセージをソース・ユーザーウェブページflashに送信するステップ、
3）ソース・ユーザーウェブページflashはtarget_video_flashが送信したビデオ通信を賛成するメッセージを受信した後、ソース・ユーザーのウェブページにビデオ放映用flash（該flashの名称をsource_video_flashにする）をロードし、source_video_flashはstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyとソース・ユーザーのユーザー名をsocketサーバーに保存し、source_video_flashは目標ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該目標ユーザーのユーザー名が対応する新しいkeyをsource_video_flashに返送し、source_video_flashはsocketサーバーが返送した該目標ユーザーのユーザー名が対応する新しいkeyを受信した後、Netconnection接続と目標ユーザーのユーザー名が対応する新しいkeyを介して、該keyが対応するビデオ・ストリーミングを放映し始め、同時にNetconnection接続を介してローカルカメラビデオ・ストリーミングをtarget_video_flashに送信するステップ、
を含むウェブページにおいて実現したp2pビデオ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明はネットワーク技術分野に属し、具体的にウェブページにおいて実現したp2pビデオ通信方法に関わる。
【背景技術】
【０００２】  インターネット技術の発展は家から出る必要がなくてインスタントメッセージ、友達とのチャット、協力パートナとの商談などを実現させた。従来、ダウンロードしてインストールする必要のあるインスタントメッセージ手段、例えばMSN、QQ、netease POPOはすでにユーザーに愛されていることに基づき、これは人々のコミュニケーション、情報交流に新しいルートを提供し、携帯、固定電話、電子メール以外のもう一種の重要な情報交流方式である。これらの手段により、ユーザーはシングル或は複数人のビデオを実現でき、ネットワークビデオ会議を開催でき、ネットワーク遠隔教育を行うことができ、さらに人々の間の交流コストを大きく下げられ、且つ効率を向上させた。しかし、前記インスタントメッセージ手段を使用するには、ユーザーは必ず相応的なクライアント側ソフトウェアをダウンロードしてインストールしなければならない。これは比較的に複雑な配置と理解する過程であり、いままでこのような手段を使用したことがないユーザーとコンピュータをあまり使わないユーザーにとって比較的に困難である。且つ、現在のクライアント側がダウンロードするインスタントメッセージ手段ソフトウェアはますます大きくなり、例えばQQ2010ソフトウェアが32.6MBに達し、MSNソフトウェアが11.2MBに達し、コンピュータの多くの記憶空間を占め、同時に、ダウンロードによるネットワーク安全問題もユーザーを困らせる。また、すべてのデータ情報（例えばチャット記録など）をコンピュータ端末に記憶しているので、一旦コンピュータを取り替え（例えば出張などの原因）、或は新たにソフトウェアをインストールした場合、ユーザーは元データ情報を得ることができなくなり、とても不便である。そこで、いずれのソフトウェアをダウンロードしてインストールする必要がなく、ウェブページを開けるとインスタントメッセージを実現でき、且つすべてのデータ情報を安全的にウェブページに保存することができるという需要が出てきた。【０００３】  現在、ネットワークにいくつかのウェブページにおける通信方式、例えば伝言板、フォーラムなどが出たが、それらの共同な欠点はインスタント性が悪く、ウェブページ版のオーディオビデオを実現できなく、人々のインスタントコミュニケーションの需要を満足しにくいことである。現在一部のソフトウェア（例えばfms或はred5）がウェブページにおいてソフトウェアをダウンロードインストールしないままビデオチャットできることを実現したが、ポイント・ツウ・ポイントビデオ通信をうまく実現できず、ユーザーの帯域幅資源を利用できなく、プラットホームの提供者に大きなサーバー及び帯域幅圧力をもたらして運営コストはユーザー数量の増加に従って急激に上がってしまい、それにより、これらのソフトウェアの運営規模及び経営範囲を制限し、広い範囲での運用及び普及の条件を備えなく、そのために、現在のウェブページ版オーディオビデオには、ある程度の市場規模を有する製品及び会社がまだ現れていない。【０００４】  クライアント側がダウンロードしないまま、且つ高インスタント性の場合において、ユーザーの遊休帯域幅資源を最大限に利用し、プラットホーム方に受けるサーバー及び帯域幅の圧力を軽減し、ウェブページ上の方式でインスタントメッセージの、p2p即ちポイント・ツウ・ポイントに基づくビデオ通信を実現する方法を研究開発する必用がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】  本発明の課題はウェブページにおいて実現したp2pビデオ通信方法を提供し、いずれのソフトウェアをダウンロードしないまま、ポイント・ツウ・ポイントのビデオ通信を実現することである。
【課題を解決するための手段】
【０００６】  前記技術課題を解決するために、本発明は、以下のような技術案を採用する。【０００７】  ウェブページにおいて実現したp2pビデオ通信方法であって、下記のステップを含む。【０００８】  １）ユーザーがウェブページにアクセスし、flashインターフェースをコールしてsocketサーバーと接続する。Flashがstratusサーバーと接続してkeyを取得し、接続Netconnection（Netconnectionが変数名である）を設立して受信したメッセージをモニターする。Flashがユーザーのユーザー名及びkeyをsocketサーバーに送信し、socketサーバーがユーザーのユーザー名及びkeyを保存する。ソース・ユーザーウェブページにおけるjavascriptコードがflashインターフェースをコールし、目標ユーザーを含むユーザー名メッセージをsocketサーバーに送信し、socketサーバーがソース・ユーザーからのメッセージを受信して、目標ユーザーのユーザー名が対応するkeyをソース・ユーザーウェブページにおけるflashに返送する。ソース・ユーザーウェブページにおけるflashがNetconnectionと目標ユーザーのkeyにより、目標ユーザーへビデオ招請メッセージを送信し、目標ユーザーが該メッセージを受信した後、目標ユーザーのウェブページにビデオ放映用flash（該flashの名称をtarget_video_flashにする）をロードし、target_video_flashがstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyと目標ユーザーのユーザー名をsocketサーバーに保存する。目標ユーザーはソース・ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該ソース・ユーザーのユーザー名が対応する新しいkeyを目標ユーザーのtarget_video_flashに返送し、target_video_flashはsocketサーバーが返送した該ソース・ユーザーのユーザー名が対応する新しいkeyを受信した後、Netconnectionの接続と該ソース・ユーザーのユーザー名が対応する新しいkeyにより該keyが対応するビデオ・ストリーミングを放映し始め、同時に目標ユーザーはNetconnection接続を介してローカルカメラビデオ・ストリーミングをソース・ユーザーのflashに送信する。【０００９】  ２）目標ユーザーはNetconnectionを介してビデオ通信を賛成するメッセージをソース・ユーザーに送信する。【００１０】  ３）ソース・ユーザーは目標ユーザーがビデオ通信を賛成するメッセージを受信した後、ソース・ユーザーのウェブページにビデオ放映用flash（該flashの名称をsource_video_flashにする）をロードし、source_video_flashはstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyとソース・ユーザーのユーザー名をsocketサーバーに保存する。ソース・ユーザーは目標ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該目標ユーザーのユーザー名が対応する新しいkeyをソース・ユーザーのsource_video_flashに返送し、source_video_flashはsocketサーバーが返送した該目標ユーザーのユーザー名が対応する新しいkeyを受信した後、ソース・ユーザーのNetconnectionの接続と該目標ユーザーのユーザー名が対応する新しいkeyを介して、該keyが対応するビデオ・ストリーミングを放映し始め、同時にソース・ユーザーはソース・ユーザーのNetconnectionの接続を介してローカルカメラビデオ・ストリーミングを目標ユーザーのflashに送信する。【００１１】  上記技術方案中でステップ１）は、  １ａ）ユーザーはウェ���ページにアクセスし、flashインターフェースをコールしてsocketサーバーに接続する、  １ｂ）Flashはstratusサーバーに接続し、keyを取得し、接続Netconnection（Netconnectionが変数名である）を設立して受信したメッセージをモニターする、  １ｃ）Flashはソース・ユーザーのユーザー名とkeyをsocketサーバーに送信し、socketサーバーはソース・ユーザーのユーザー名とkeyを保存する、  １ｄ）ソース・ユーザーのウェブページにおけるjavascriptコードはflashインターフェースをコールし、目標ユーザーのユーザー名を含むメッセージをsocketサーバーに送信し、socketサーバーはソース・ユーザーからのメッセージを受信し、目標ユーザーのユーザー名が対応するkeyをソース・ユーザーウェブページにおけるflashに返送する、  １ｅ）ソース・ユーザーのウェブページにおけるflashはNetconnectionと目標ユーザーのkeyを介して、目標ユーザーへビデオ招請メッセージを送信し、目標ユーザーがメッセージを受信した後、目標ユーザーのウェブページにビデオ放映用flash（該flashの名称をtarget_video_flashにする）をロードし、target_video_flashはstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyと目標ユーザーのユーザー名をsocketサーバーに保存する、  １ｆ）目標ユーザーはソース・ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該ソース・ユーザーのユーザー名が対応する新しいkeyを目標ユーザーのtarget_video_flashに返送し、target_video_flashはsocketサーバーが返送した該ソース・ユーザーのユーザー名が対応する新しいkeyを受信した後、Netconnection接続と該ソース・ユーザーのユーザー名が対応する新しいkeyとを介して該keyが対応するビデオ・ストリーミングを放映し始め、同時に目標ユーザーはNetConnection接続を介してローカルカメラビデオ・ストリーミングをソース・ユーザーのflashに送信するプロセスを含む。【００１２】  上記技術方案中でのステップ２）は、  目標ユーザーがNetconnectionを介してビデオ通信を賛成するメッセージをソース・ユーザーに送信するプロセスを含む。【００１３】  上記技術方案中でステップ３は、  ３ａ）ソース・ユーザーは目標ユーザーがビデオを賛成するメッセージを受信した後、ソース・ユーザーのウェブページにビデオ放映用flash（該flashの名称をsource_video_flashにする）をロードし、source_video_flashはstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyとソース・ユーザーのユーザー名をsocketサーバーに保存する、 ３ｂ）ソース・ユーザーは目標ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該目標ユーザーのユーザー名が対応する新しいkeyをソース・ユーザーのsource_video_flashに返送し、source_video_flashはsocketサーバーが返送した該目標ユーザーのユーザー名が対応する新しいkeyを受信した後、ソース・ユーザーのNetconnection接続と該目標ユーザーのユーザー名が対応する新しいkeyを介して、該keyが対応するビデオ・ストリーミングを放映し始め、同時にソース・ユーザーはローカルカメラビデオ・ストリーミングをソース・ユーザーのNetconnectionの接続を介して目標ユーザーのflashに送信するプロセスを含む。【００１４】  本発明は従来の技術と比べて下記のメリットを備える。（１）ユーザーはいずれのソフトウェアをダウンロ���ドしないまま、ウェブページにおいてのインスタントメッセージを実現でき、コンピュータの記憶空間を節約し、多くの不便を減少させた。（２）インスタント性は素敵で、遅滞はない。（３）パーソナルコンピュータを含むいずれのネットワーク端末での使用に適合する。（４）p2p技術を採用したので、サーバー圧力を大幅に軽減し、帯域幅を節約し、運営コストを大幅に低減することができる。
【図面の簡単な説明】
【００１５】
【図１】明細書図面における図１、図２は本発明の詳細なプローチャート図である。
【図２】明細書図面における図１、図２は本発明の詳細なプローチャート図である。
【発明を実施するための形態】
【００１６】  図面と実施例を合わせて本本発明に対しさらに説明する。
【００１７】  実施例一、ウェブページにおいてインスタントメッセージを実現する方法であって、下記のステップを含む。
【００１８】  １）ユーザーがウェブページをアクセスし、flashインターフェースをコールしてsocketサーバーと接続する。Flashがstratusサーバーと接続してkeyを取得し、接続Netconnection（Netconnectionが変数名である）を設立して受信したメッセージをモニターする。Flashがソース・ユーザーのユーザー名及びkeyをsocketサーバーに送信し、socketサーバーがソース・ユーザーのユーザー名及びkeyを保存する。ソース・ユーザーウェブページにおけるjavascriptコードがflashインターフェースをコールし、目標ユーザーのユーザー名を含むメッセージをsocketサーバーに送信し、socketサーバーがソース・ユーザーから送信してきたメッセージを受信して、目標ユーザーのユーザー名が対応するkeyをソース・ユーザーウェブページにおけるflashに返送する。ソース・ユーザーウェブページにおけるflashがNetconnectionと目標ユーザーのkeyにより、目標ユーザーへビデオ招請メッセージを送信し、目標ユーザーがメッセージを受信した後、目標ユーザーのウェブページにビデオ放映用flash（該flashの名称をtarget_video_flashにする）をロードし、target_video_flashがstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyと目標ユーザーのユーザー名をsocketサーバーに保存する。目標ユーザーはソース・ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該ソース・ユーザーのユーザー名が対応する新しいkeyを目標ユーザーのtarget_video_flashに返送し、target_video_flashがsocketサーバーが返送した該ソース・ユーザーのユーザー名が対応する新しいkeyを取得した後、Netconnection接続と該ソース・ユーザーのユーザー名が対応する新しいkeyを介して該keyが対応するビデオ・ストリーミングを放映し始め、同時に目標ユーザーはNetconnectionの接続を介してローカルカメラビデオ・ストリーミングをソース・ユーザーのflashに送信する。
【００１９】  ２）目標ユーザーはNetconnectionを介してビデオ通信を賛成するメッセージをソース・ユーザーに送信する。
【００２０】  ３）ソース・ユーザーが目標ユーザーがビデオ通信を賛成するメッセージを受信した後、ソース・ユーザーのウェブページにビデオ放映用flash（該flashの名称をsource_video_flashにする）をロードし、source_video_flashがstratusサーバーに接続し、新しいkeyを取得し、且つsocketサーバーに接続し、新しいkeyとソース・ユーザーのユーザー名をsocketサーバーに保存する。ソース・ユーザーは目標ユーザーのユーザー名をsocketサーバーに送信し、socketサーバーは該目標ユーザーのユーザー名が対応する新しいkeyをソース・ユーザーのsource_video_flashに返送し、source_video_flashはsocketサーバーが返送した該目標ユーザーのユーザー名が対応する新しいkeyを取得した後、ソース・ユーザーのNetconnection接続と該目標ユーザーのユーザー名が対応する新しいkeyを介して、該keyが対応するビデオ・ストリーミングを放映し始め、同時にソース・ユーザーはソース・ユーザーのNetconnectionの接続を介してローカルカメラビデオ・ストリーミングを目標ユーザーのflashに送信する。
【００２１】  以下本発明に記載の方法をさらに詳しく説明する。
【００２２】  明細書図面の図１、図２を参照し、ソース・ユーザーはブラウザに個人ホームページアドレスを入力し、或いはリンクを介してソース・ユーザーの個人ホームページに到達し、ソース・ユーザーはIDとパスワードを入力してソース・ユーザーの個人ホームページを登録し、登録が成功すると、該IDを通信IDとし、登録しないと、システムはそれのために臨時的な通信IDを分配する。クライアント側スクリプトプログラムはflashのインターフェースをコールしてsocketサーバーに接続し、且つ接続を設立する。flashはstratusサーバーに接続し、keyを取得し、接続Netconnection（Netconnectionが変数名である）を設立し、取得したメッセージをモニターし始める。同時にFlashはソース・ユーザーのユーザー名とkeyをsocketサーバーに送信し、socketサーバーはソース・ユーザーのユーザー名とkeyを保存する。ソース・ユーザーウェブページにおけるjavascriptコードはflashインターフェースをコールし、目標ユーザーのユーザー名をsocketサーバーに送信する。Socketサーバーはソース・ユーザーからのメッセージを受信し、目標ユーザーのユーザー名が対応するkeyをソース・ユーザーウェブページにおけるflashに返送する。ソース・ユーザーウェブページにおけるjavascriptプログラムはflashインターフェースをコールし、flashはNetconnectionと目標ユーザーのkeyを介して、ビデオ招請メッセージを目標ユーザーのウェブページにおけるflashに送信する。
【００２３】  目標ユーザーのウェブページにおけるflashはメッセージを受信した後、スクリプトプログラムインターフェースをコールして目標ユーザーのウェブページにおいてビデオ放映用新しいflashをロードし、ビデオflashはstratusサーバーに接続してP2P通信に用いる新しいkeyを取得し、ソース・ユーザーが新たにロードしたflashと目標ユーザーが新たにロードしたflashはこのkeyが対応する接続を介してローカルビデオ・ストリーミングを送信する。同時に相手からのkeyのビデオを受け取り始める。
【００２４】  目標ユーザーのビデオ放映用flashはsocketサーバーに請求し、ソース・ユーザーのユーザー名が対応するビデオ放映flashのkeyを取得し、目標ユーザーのビデオ放映用flashは該keyを取得した後、ビデオ放映用flashはソース・ユーザーからのビデオを受信且つ放映始め、同時にローカルカメラビデオをNetconnectionを介してソース・ユーザーに送信し、ソース・ユーザーにビデオを賛成したメッセージを送信する。
【００２５】  ソース・ユーザーは目標ユーザーからのメッセージを受信し、ソース・ユーザーのウェブページにおいてビデオ放映用新しいflashをロードする。ソース・ユーザーのビデオ放映用flashはsocketサーバーに請求し、目標ユーザーのユーザー名が対応するビデオ放映するflashのkeyを取得し、ソース・ユーザーのビデオ放映用flashは該keyを取得した後、ビデオ放映用flashは目標ユーザーからのビデオを受信及び放映し始めて、同時にローカルカメラビデオをNetconnectionと目標ユーザーが対応するkeyを介して目標ユーザーに送信する。
【図１】
0005336653.tif 000002
【図２】
0005336653.tif 000003