JP6266502B2 - Remote desktop cooperation processing system and client state management server - Google Patents

Remote desktop cooperation processing system and client state management server Download PDF

Info

Publication number
JP6266502B2
JP6266502B2 JP2014247090A JP2014247090A JP6266502B2 JP 6266502 B2 JP6266502 B2 JP 6266502B2 JP 2014247090 A JP2014247090 A JP 2014247090A JP 2014247090 A JP2014247090 A JP 2014247090A JP 6266502 B2 JP6266502 B2 JP 6266502B2
Authority
JP
Japan
Prior art keywords
client
control
information
session
controlled
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.)
Active
Application number
JP2014247090A
Other languages
Japanese (ja)
Other versions
JP2016111517A (en
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2014247090A priority Critical patent/JP6266502B2/en
Publication of JP2016111517A publication Critical patent/JP2016111517A/en
Application granted granted Critical
Publication of JP6266502B2 publication Critical patent/JP6266502B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、遠隔デスクトップ連携処理システム及びクライアント状態管理サーバに関する。   The present invention relates to a remote desktop cooperation processing system and a client state management server.

従来、プロプライエタリな遠隔デスクトップやオープンソース技術のRFB(Remote Frame Buffer)プロトコルを用いたVNC(Virtual Network Computing)のような、利用者の操作端末から遠隔地に設置された計算機のデスクトップを操作することを可能とする、すなわち遠隔デスクトップシステムが存在している。テレワーク従事者は手元の操作端末から遠隔デスクトップシステムを利用しながら業務を行うことがある。ここでは、遠隔デスクトップシステムクライアントが動作する端末を「操作端末」、操作する先の計算機を「遠隔計算機」と呼ぶ。遠隔計算機上でのリアルタイムコミュニケーションツールの動作は、VNCは音声メディア転送をサポートしていていないので不可能である。その他プロプライエタリな拡張では、操作端末上のカメラやマイクのリソースの利用やUDP(User Datagram Protocol)を用いた高速なメディア転送機能の拡張を具備したものがある。   Conventionally, operating a desktop of a computer installed remotely from a user's operation terminal, such as a proprietary remote desktop or VNC (Virtual Network Computing) using RFB (Remote Frame Buffer) protocol of open source technology That is, there is a remote desktop system. Teleworkers sometimes work while using a remote desktop system from a local operating terminal. Here, a terminal on which a remote desktop system client operates is referred to as an “operation terminal”, and a computer to be operated is referred to as a “remote computer”. Real-time communication tool operation on a remote computer is not possible because VNC does not support voice media transfer. Other proprietary extensions include the use of camera and microphone resources on the operation terminal and the extension of a high-speed media transfer function using UDP (User Datagram Protocol).

"The RFB Protocol Tristan Richardson Real VNC Ltd (formerly of Olivetti Research Ltd/ AT&T Labs Cambridge Version 3.8 Last updated 26 November 2010)"、[online]、[平成26年11月18日検索]、インターネット< http://www.realvnc.com/docs/rfbproto.pdf>"The RFB Protocol Tristan Richardson Real VNC Ltd (formerly of Olivetti Research Ltd / AT & T Labs Cambridge Version 3.8 Last updated 26 November 2010)", [online], [searched November 18, 2014], Internet <http: // www.realvnc.com/docs/rfbproto.pdf>

遠隔計算機上でリアルタイムコミュニケーションツールを用いて音声通信を行う場合、音声は自席のPC(Personal Computer)に到達するまでにVPN(Virtual Private Network)サーバや種々のリレーサーバを経由することになる。そのため、音声通信における音切れや遅延が発生して十分な通話品質を確保することができないという問題がある。そのような問題を解決するために、遠隔計算機上ではなく、自席PCの上でリアルタイムコミュニケーションツールを動作させて、遠隔計算機を介さずに音声通信を行うことが品質の点では有効であるが、利用者は、自席PCからの遠隔計算機の操作を中断し、自席PCの操作をするための手続きを改めて行わなければならない。すなわち、自席PCから遠隔計算機を操作している利用者が、十分な品質の音声通話を行うには煩雑な操作が必要となるという問題がある。   When voice communication is performed using a real-time communication tool on a remote computer, the voice passes through a VPN (Virtual Private Network) server and various relay servers before reaching a personal computer (PC) in the seat. Therefore, there is a problem in that sound interruption or delay occurs in voice communication and sufficient call quality cannot be ensured. In order to solve such a problem, it is effective in terms of quality to operate a real-time communication tool on a personal computer, not on a remote computer, and perform voice communication without going through the remote computer. The user must suspend the operation of the remote computer from the personal computer and re-execute the procedure for operating the personal computer. That is, there is a problem that a user who is operating a remote computer from his / her desk PC needs a complicated operation to make a voice call with sufficient quality.

したがって、かかる点に鑑みてなされた本発明の目的は、煩雑な操作を伴わずに、遠隔計算機(制御クライアント)が実行できない、又は実行した場合の品質が低くなる処理を操作端末(被制御クライアント)に実行させることにある。例えば、本発明の目的のひとつは、遠隔デスクトップシステムから操作端末上のコミュニケーションツールを直接、通信させることを可能とすることにある。   Accordingly, an object of the present invention made in view of such a point is to perform a process in which the remote computer (control client) cannot be executed without complicated operations, or processing that lowers the quality when executed is performed on the operation terminal (controlled client). ). For example, one of the objects of the present invention is to make it possible to directly communicate a communication tool on an operation terminal from a remote desktop system.

上記の課題を解決するため、本発明に係る遠隔デスクトップ連携処理システムは、遠隔デスクトップシステムサーバである制御クライアントと遠隔デスクトップシステムクライアントである被制御クライアントをそれぞれ含む、複数の遠隔デスクトップシステムが、認証サーバ、クライアント状態管理サーバ、及びサブシステムサーバと連携する遠隔デスクトップ連携処理システムであって、前記認証サーバは、前記被制御クライアント及び前記制御クライアントを認証する認証機能部と、前記認証機能部によって認証された前記被制御クライアント及び前記制御クライアントそれぞれの前記認証サーバへのセッションを表すHTTPセッション情報を生成するセッション管理部と、を備え、前記制御クライアントは、所定の処理に係る制御を前記クライアント状態管理サーバに要求し、前記クライアント状態管理サーバは、前記制御クライアント及び前記被制御クライアントがそれぞれ制御クライアント又は被制御クライアントのいずれであるかを表すクライアント状態情報と、前記HTTPセッション情報と、を関連付けて記憶するクライアント状態管理部と、前記制御クライアントによって前記所定の処理を実行するための制御を要求されると、前記サブシステムサーバに前記所定の処理を委譲するサブシステム管理部と、を備え、前記サブシステムサーバは、前記所定の処理が委譲されると、前記制御クライアントに関連付けられて前記クライアント状態管理部に記憶されている前記被制御クライアントが前記所定の処理を行うための制御を行う独自機能部を備える。   In order to solve the above problems, a remote desktop cooperation processing system according to the present invention includes a control client that is a remote desktop system server and a controlled client that is a remote desktop system client. A remote desktop cooperation processing system that cooperates with a client state management server and a subsystem server, wherein the authentication server is authenticated by the authentication function unit that authenticates the controlled client and the control client, and the authentication function unit. A session management unit that generates HTTP session information representing a session to the authentication server of each of the controlled client and the control client, and the control client performs control related to predetermined processing. Requesting the client state management server, the client state management server, the client state information indicating whether the control client and the controlled client are a control client or a controlled client, respectively, the HTTP session information, A client state management unit that associates and stores, and a subsystem management unit that delegates the predetermined process to the subsystem server when requested by the control client to execute the predetermined process. The subsystem server performs control for the controlled client to perform the predetermined process associated with the control client and stored in the client state management unit when the predetermined process is delegated. It has an original function part to perform.

また、請求項6に記載の発明に係るクライアント状態管理サーバは、遠隔デスクトップシステムサーバである制御クライアントと遠隔デスクトップシステムクライアントである被制御クライアントをそれぞれ含む、複数の遠隔デスクトップシステムと連携するクライアント状態管理サーバであって、前記被制御クライアント及び前記制御クライアントがそれぞれ制御クライアント又は被制御クライアントのいずれであるかを表すクライアント状態情報と、前記被制御クライアント及び前記制御クライアントの認証サーバへのHTTPセッションに関するHTTPセッション情報とを関連付けて記憶するクライアント状態管理部と、前記制御クライアントによって所定の処理を実行するための制御を要求されると、前記クライアント状態情報と前記HTTPセッション情報とに基づいて、前記被制御クライアントが前記所定の処理を実行するための制御をサブシステムサーバに委譲するサブシステム管理部と、を備える。   The client state management server according to the invention described in claim 6 is a client state management that cooperates with a plurality of remote desktop systems, each including a control client that is a remote desktop system server and a controlled client that is a remote desktop system client. Server status information indicating whether the controlled client and the controlled client are a controlled client or a controlled client, respectively, and an HTTP relating to an HTTP session to the controlled server and the authentication client of the controlled client A client status management unit that stores session information in association with each other, and when the control client requests control for executing a predetermined process, the client status information Serial based on the HTTP session information, and a sub-system management unit to delegate the sub-system server control for the controlled client executes the predetermined processing.

本発明によれば、煩雑な操作を伴わずに、遠隔計算機(制御クライアント)が実行できない、又は実行した場合の品質が低くなる処理を操作端末(被制御クライアント)に実行させることにある。   According to the present invention, it is possible to cause an operation terminal (controlled client) to execute a process in which a remote computer (control client) cannot be executed without performing a complicated operation or the quality when it is executed is lowered.

実施形態に係る遠隔デスクトップシステム連携処理の機能構成図である。It is a function block diagram of the remote desktop system cooperation process which concerns on embodiment. 図1に示す接続管理部のキーバリューストアを表す概念図である。It is a conceptual diagram showing the key value store of the connection management part shown in FIG. 図1に示すクライアント状態管理部のキーバリューストアを表す概念図である。It is a conceptual diagram showing the key value store of the client state management part shown in FIG. 実施形態に係るシグナリングサーバの機能構成図である。It is a function block diagram of the signaling server which concerns on embodiment. 図1に示す呼状態管理部のキーバリューストアを表す概念図である。It is a conceptual diagram showing the key value store of the call state management part shown in FIG. 図2に示すルーチングテーブル部のキーバリューストアを表す概念図である。It is a conceptual diagram showing the key value store of the routing table part shown in FIG. 本実施形態のログインに係る処理シーケンス図である。It is a processing sequence figure concerning login of this embodiment. 本実施形態のクライアント状態申告に係る処理シーケンス図である。It is a processing sequence figure concerning a client status report of this embodiment. 本実施形態の通話に係る処理シーケンス図である。It is a processing sequence figure concerning the telephone call of this embodiment.

以下、本発明の実施形態について図面を参照して説明する。   Embodiments of the present invention will be described below with reference to the drawings.

<<遠隔デスクトップ連携処理システム連携処理の機能構成>>
まず、図1を参照して本実施形態の遠隔デスクトップ連携処理システム1の機能構成について説明する。
<< Functional configuration of remote desktop linkage processing system linkage processing >>
First, the functional configuration of the remote desktop cooperation processing system 1 of this embodiment will be described with reference to FIG.

遠隔デスクトップ連携処理システム1は、遠隔デスクトップシステム2をそれぞれ利用する複数の利用者同士が通話をするためのシステムであり、図1に示すように、被制御クライアント10と制御クライアント20とを備える遠隔デスクトップシステム2、認証サーバ30、クライアント状態管理サーバ40、サブシステムサーバ50、及び負荷分散装置60を備える。なお、以降において、被制御クライアント10及び制御クライアント20を総称して「クライアント」という。   The remote desktop cooperation processing system 1 is a system for making a call between a plurality of users who respectively use the remote desktop system 2, and includes a controlled client 10 and a control client 20 as shown in FIG. A desktop system 2, an authentication server 30, a client state management server 40, a subsystem server 50, and a load balancer 60 are provided. Hereinafter, the controlled client 10 and the control client 20 are collectively referred to as “client”.

認証サーバ30、クライアント状態管理サーバ40、及びサブシステムサーバ50は、通信ネットワークに接続され、負荷分散装置60を介して、制御クライアント20、及び被制御クライアント10と情報を互いに送受信する。   The authentication server 30, the client state management server 40, and the subsystem server 50 are connected to the communication network, and transmit / receive information to / from the control client 20 and the controlled client 10 via the load balancer 60.

<被制御クライアントの機能構成>
被制御クライアント10は、例えば操作端末であり、遠隔デスクトップ機能により制御クライアント20のデスクトップを操作する。すなわち、被制御クライアント10は、遠隔デスクトップシステム2において遠隔デスクトップシステムクライアントとして動作する。被制御クライアント10は、利用者によって入力された利用者IDを含む利用者情報を受け付け、受け付けた利用者情報を、負荷分散装置60を介して認証サーバ30に送信する。また、被制御クライアント10は、自身が「被制御クライアント」であることを表すローカルクライアント状態情報をクライアント状態管理サーバ40に送信する。
<Functional configuration of controlled client>
The controlled client 10 is an operation terminal, for example, and operates the desktop of the control client 20 by a remote desktop function. That is, the controlled client 10 operates as a remote desktop system client in the remote desktop system 2. The controlled client 10 receives user information including the user ID input by the user, and transmits the received user information to the authentication server 30 via the load balancer 60. In addition, the controlled client 10 transmits local client status information indicating that it is a “controlled client” to the client status management server 40.

また、被制御クライアント10は、サブシステムサーバ50の要求に基づき、セッション記述情報を、負荷分散装置60を介してサブシステムサーバ50に送信する。セッション記述情報とは、セッションの告知やセッションの招待などを必要とするマルチメディアセッションを開始するための情報であり、例えば、SDP(Session Description Protocol)を用いて記述される。   Further, the controlled client 10 transmits session description information to the subsystem server 50 via the load balancer 60 based on a request from the subsystem server 50. The session description information is information for starting a multimedia session that requires session announcement or session invitation, and is described using, for example, SDP (Session Description Protocol).

また、サブシステムサーバ50の制御により通話セッションが確立されると、複数の被制御クライアント10のうちの第1の被制御クライアント10A(以降、単に「被制御クライアント10A」という)と、第2の被制御クライアント10B(以降、単に「被制御クライアント10B」という)と、が通話に係る処理を行う。これにより、これらの被制御クライアント10の利用者同士が通信ネットワークを介して通話することができる。   When a call session is established under the control of the subsystem server 50, the first controlled client 10A (hereinafter simply referred to as “controlled client 10A”) among the plurality of controlled clients 10 and the second The controlled client 10B (hereinafter simply referred to as “controlled client 10B”) performs processing related to the call. Thereby, users of these controlled clients 10 can talk over the communication network.

<制御クライアントの機能構成>
制御クライアント20は、例えば遠隔計算機であり、遠隔デスクトップ機能を用いて被制御クライアント10により、そのデスクトップが操作される。すなわち、制御クライアント20は、遠隔デスクトップシステム2において遠隔デスクトップシステムサーバとして動作する。
<Functional configuration of control client>
The control client 20 is a remote computer, for example, and the desktop is operated by the controlled client 10 using the remote desktop function. That is, the control client 20 operates as a remote desktop system server in the remote desktop system 2.

制御クライアント20は、利用者によって入力された利用者情報を受け付け、受け付けた利用者情報を認証サーバ30に送信する。また、制御クライアント20は、所定の処理をクライアント状態管理サーバ40に要求する。具体的には、制御クライアント20は、Web Socket等により実現されるメッセージ用接続の要求を表すメッセージ用接続要求情報をクライアント状態管理サーバ40に送信する。また、クライアント状態管理サーバ40から送信される、Web Socket等により実現されるメッセージ用接続の応答を表すメッセージ用接続応答情報を受信する。また、制御クライアント20は、自身が「制御クライアント」であることを表すリモートクライアント状態情報をクライアント状態管理サーバ40に送信する。   The control client 20 receives user information input by the user and transmits the received user information to the authentication server 30. Further, the control client 20 requests the client state management server 40 for predetermined processing. Specifically, the control client 20 transmits message connection request information representing a message connection request realized by Web Socket or the like to the client state management server 40. In addition, message connection response information representing a message connection response realized by Web Socket or the like transmitted from the client state management server 40 is received. Further, the control client 20 transmits remote client status information indicating that it is a “control client” to the client status management server 40.

また、複数の制御クライアント20のうちの第1の制御クライアント20A(以降、単に「制御クライアント20A」という)は、第2の制御クライアント20B(以降、単に「制御クライアント20B」という)との通話セッションの確立を要求する(発呼する)旨を表す通話セッション確立要求情報をクライアント状態管理サーバ40に送信する。また、制御クライアント20Bによる通話セッション確立応答情報がクライアント状態管理サーバ40から送信されると、送信された通話セッション確立応答情報を受信する。通話セッション確立応答情報とは、通話セッション確立要求情報を受信した制御クライアント20Bが、通話セッションの確立に応じる旨を表す情報である。   Also, a first control client 20A (hereinafter simply referred to as “control client 20A”) among the plurality of control clients 20 is connected to a second control client 20B (hereinafter simply referred to as “control client 20B”). Call session establishment request information indicating that the establishment of a call is requested (calling) is transmitted to the client state management server 40. When the call session establishment response information by the control client 20B is transmitted from the client state management server 40, the transmitted call session establishment response information is received. The call session establishment response information is information indicating that the control client 20B that has received the call session establishment request information responds to the establishment of the call session.

また、制御クライアント20Aは、クライアント状態管理部42から制御クライアント20Bとの通話セッションの切断を要求する旨の通話セッション切断要求情報を受信すると、その通話セッション切断要求情報に係る通話セッションを切断する。セッション切断応答情報とは、セッション切断要求情報を受信した制御クライアント20Aが、通話セッションの切断に応じる旨を表す情報である。   When control session 20A receives call session disconnection request information requesting disconnection of the call session with control client 20B from client state management unit 42, control client 20A disconnects the call session related to the call session disconnection request information. The session disconnection response information is information indicating that the control client 20A that has received the session disconnection request information responds to the disconnection of the call session.

<認証サーバの機能構成>
認証サーバ30は、被制御クライアント10及び制御クライアント20から送信された利用者情報に基づいて利用者を認証し、該送信に係るHTTPセッションに関するHTTPセッション情報を管理する。認証サーバ30は、利用者情報記憶部31、認証機能部32、及びセッション管理部33を備える。
<Functional configuration of authentication server>
The authentication server 30 authenticates the user based on the user information transmitted from the controlled client 10 and the control client 20, and manages the HTTP session information related to the HTTP session related to the transmission. The authentication server 30 includes a user information storage unit 31, an authentication function unit 32, and a session management unit 33.

利用者情報記憶部31は、利用者を識別するための利用者ID、及びパスワード等を含む利用者情報を記憶している。   The user information storage unit 31 stores user information including a user ID for identifying the user and a password.

認証機能部32は、利用者によって入力され、被制御クライアント10及び制御クライアント20から送信された利用者情報を、負荷分散装置60を介して受信する。また、認証機能部32は受信した利用者情報に含まれる利用者ID及びパスワードを用いて利用者認証を行う。具体的には、認証機能部32は、受信した利用者情報に含まれる利用者IDに関連付けて利用者情報記憶部31に記憶されているパスワードが、受信した利用者情報に含まれるパスワードと同一であるか否かを判定する。   The authentication function unit 32 receives user information input from the user and transmitted from the controlled client 10 and the control client 20 via the load balancer 60. Further, the authentication function unit 32 performs user authentication using the user ID and password included in the received user information. Specifically, in the authentication function unit 32, the password stored in the user information storage unit 31 in association with the user ID included in the received user information is the same as the password included in the received user information. It is determined whether or not.

セッション管理部33は、認証機能部32によって認証された被制御クライアント10及び制御クライアント20それぞれの認証サーバ30へのセッションを表すHTTPセッション情報を生成する。具体的には、セッション管理部33は、認証機能部32による認証にあたって、被制御クライアント10及び制御クライアント20から認証サーバ30へのHTTPセッションが正常に行われると、HTTPプロトコルで規定されているメッセージ「200 OK」を送信する。また、セッション管理部33は、HTTPセッションを一意に識別するセッションIDを生成する。   The session management unit 33 generates HTTP session information representing a session to the authentication server 30 of each of the controlled client 10 and the control client 20 authenticated by the authentication function unit 32. Specifically, the session management unit 33 performs a message defined by the HTTP protocol when an HTTP session from the controlled client 10 and the control client 20 to the authentication server 30 is normally performed in the authentication by the authentication function unit 32. “200 OK” is transmitted. In addition, the session management unit 33 generates a session ID that uniquely identifies the HTTP session.

<クライアント状態管理サーバの機能構成>
クライアント状態管理サーバ40は、被制御クライアント10及び制御クライアント20のクライアント状態を管理し、通話セッションに係る処理の制御をサブシステムサーバ50に委譲する。
<Functional configuration of client status management server>
The client state management server 40 manages the client states of the controlled client 10 and the control client 20, and delegates control of processing related to the call session to the subsystem server 50.

図1に示すように、クライアント状態管理サーバ40は、接続管理部41、クライアント状態管理部42、呼状態管理部43、及びサブシステム管理部44を備える。   As shown in FIG. 1, the client state management server 40 includes a connection management unit 41, a client state management unit 42, a call state management unit 43, and a subsystem management unit 44.

接続管理部41は、キーバリューストアを備え、図2に示すように、被制御クライアント10及び制御クライアント20の利用者IDとセッションIDとを関連付けて記憶する。具体的には、接続管理部41は、被制御クライアント10から、負荷分散装置60を介して、メッセージ用接続の要求を表すメッセージ用接続要求情報を受信する。また、接続管理部41がメッセージ用接続要求情報を受信すると、接続管理部41は、認証サーバ30にHTTPセッション情報を要求する。また、接続管理部41は、認証サーバ30からの応答によりHTTPセッション情報を受信し、HTTPセッション情報に含まれるセッションIDとメッセージ用接続要求情報を送信した被制御クライアント10の利用者IDを関連付けて、コネクション情報としてキーバリューストアに記憶する。   The connection management unit 41 includes a key / value store, and stores user IDs and session IDs of the controlled client 10 and the control client 20 in association with each other as illustrated in FIG. Specifically, the connection management unit 41 receives message connection request information representing a message connection request from the controlled client 10 via the load balancer 60. When the connection management unit 41 receives message connection request information, the connection management unit 41 requests HTTP session information from the authentication server 30. Further, the connection management unit 41 receives HTTP session information as a response from the authentication server 30, and associates the session ID included in the HTTP session information with the user ID of the controlled client 10 that transmitted the message connection request information. And stored in the key value store as connection information.

クライアント状態管理部42は、キーバリューストアを備え、被制御クライアント10及び制御クライアント20のクライアント状態情報を管理する。クライアント状態情報とは、クライアントが被制御クライアント10であるか、制御クライアント20であるかを表す情報である。また、クライアント状態情報のうち、クライアントが制御クライアント20であることを表す情報をリモートクライアント状態情報といい、クライアントが被制御クライアント10であることを表す情報をローカルクライアント状態情報という。   The client status management unit 42 includes a key / value store and manages client status information of the controlled client 10 and the control client 20. The client status information is information indicating whether the client is the controlled client 10 or the control client 20. Of the client status information, information indicating that the client is the control client 20 is referred to as remote client status information, and information indicating that the client is the controlled client 10 is referred to as local client status information.

具体的には、クライアント状態管理部42は、制御クライアント20からリモートクライアント状態情報を受信すると、図3に示すように接続管理部41に記憶されているコネクション情報に含まれる利用者ID及びセッションIDに関連付けて、クライアント状態が「制御クライアント」であることをキーバリューストアに記憶する。また、被制御クライアント10からローカルクライアント状態情報を受信すると、図3に示すように接続管理部41に記憶されているコネクション情報に含まれる利用者ID及びセッションIDに関連付けて、クライアント状態が「被制御クライアント」であることを記憶する。   Specifically, when the client state management unit 42 receives remote client state information from the control client 20, the user ID and the session ID included in the connection information stored in the connection management unit 41 as shown in FIG. The key value store stores that the client state is “control client”. When the local client status information is received from the controlled client 10, the client status is “controlled” in association with the user ID and session ID included in the connection information stored in the connection management unit 41 as shown in FIG. It is memorized that it is a “control client”.

また、クライアント状態管理部42は、クライアント状態情報とコネクション情報とを関連付けて記憶すると、通話セッションの確立を要求することが可能(発呼可能)であることを制御クライアント20に通知する。   In addition, when the client state management unit 42 stores the client state information and the connection information in association with each other, the client state management unit 42 notifies the control client 20 that it is possible to request establishment of a call session (callable).

呼状態管理部43は、セッションの確立を要求する旨を表す通話セッション確立要求情報(Offer)、及びセッションの切断を要求する旨を表すセッション切断要求情報(Bye)に基づいて通話セッションに係る制御をサブシステムサーバ50に委譲する。   The call state management unit 43 controls the call session based on the call session establishment request information (Offer) indicating that the session establishment is requested and the session disconnection request information (Bye) indicating that the session is requested to be disconnected. Is delegated to the subsystem server 50.

具体的には、呼状態管理部43は、通話セッション確立要求情報(Offer)を受信すると、その通話セッション確立要求情報を、制御クライアント20Bに送信する。同様に、呼状態管理部43は、制御クライアント20Bが通話セッション確立要求情報に応答する旨を表す通話セッション確立応答情報(Answer)を受信すると、その通話セッション確立応答情報を制御クライアント20Aに送信する。   Specifically, when receiving the call session establishment request information (Offer), the call state management unit 43 transmits the call session establishment request information to the control client 20B. Similarly, when the control client 20B receives call session establishment response information (Answer) indicating that the control client 20B responds to the call session establishment request information, the call state management unit 43 transmits the call session establishment response information to the control client 20A. .

また、呼状態管理部43は、被制御クライアント10Bからセッションの切断を要求する旨を表すセッション切断要求情報(Bye)を受信すると、そのセッション切断要求情報を制御クライアント20Aに送信し、サブシステムサーバ50に通話セッションを切断する旨を表す通話終了情報を送信する。   When the call state management unit 43 receives session disconnection request information (Bye) indicating that a session disconnection is requested from the controlled client 10B, the call state management unit 43 transmits the session disconnection request information to the control client 20A, and the subsystem server Call termination information indicating that the call session is to be disconnected is transmitted to 50.

また、呼状態管理部43は、制御クライアント20Aによって送信された通話セッション確立要求情報を制御クライアント20Bに送信したり、制御クライアント20Bによって送信された通話セッション確立応答情報を制御クライアント20Aに送信したりする。また、呼状態管理部43は、キーバリューストアを備え、制御クライアント20Aと制御クライアント20Bとがセッション確立のための処理中又はセッション確立中であることを表す呼状態を更新する。具体的には、図5に示すように、呼状態管理部43は、通話セッション確立要求情報に含まれる制御クライアント20Aの利用者IDと制御クライアント20Bの利用者IDとを関連付けた呼状態情報をキーバリューストアに記憶する。   Further, the call state management unit 43 transmits the call session establishment request information transmitted by the control client 20A to the control client 20B, or transmits the call session establishment response information transmitted by the control client 20B to the control client 20A. To do. The call state management unit 43 includes a key / value store, and updates the call state indicating that the control client 20A and the control client 20B are processing for session establishment or session establishment. Specifically, as shown in FIG. 5, the call state management unit 43 displays call state information that associates the user ID of the control client 20A and the user ID of the control client 20B included in the call session establishment request information. Store in the key value store.

サブシステム管理部44は、制御クライアント10から要求された所定の処理に係る制御を、クライアント状態情報とHTTPセッション情報とに基づいてサブシステムサーバ50に委譲する。本実施形態では、所定の処理とは、通話セッションでの通話であり、その制御とは、通話セッションの確立及び切断である。具体的には、サブシステム管理部44は、制御クライアント20Aに対応する被制御クライアント10Aのセッション情報と、制御クライアント20Bに対応する被制御クライアント10Bのセッション情報を送信するとともに、通話セッションを確立する旨をサブシステムサーバ50に通知する。   The subsystem management unit 44 delegates control related to a predetermined process requested from the control client 10 to the subsystem server 50 based on the client state information and the HTTP session information. In the present embodiment, the predetermined process is a call in a call session, and the control is establishment and disconnection of the call session. Specifically, the subsystem management unit 44 transmits session information of the controlled client 10A corresponding to the control client 20A and session information of the controlled client 10B corresponding to the control client 20B, and establishes a call session. This is notified to the subsystem server 50.

ここで、サブシステム管理部44が、制御クライアント20Aに対応する被制御クライアント10AのセッションIDを含むセッション情報を抽出する方法について、図3を参照して説明する。サブシステム管理部44は、制御クライアント20AのセッションIDに関連付けてクライアント状態管理部42に記憶されている利用者IDを抽出する。そして、サブシステム管理部44は、抽出された利用者IDに関連付けて記憶されている被制御クライアント10AのセッションIDを抽出する。このようにして抽出された被制御クライアント10AのセッションIDが、制御クライアント20Aに対応する被制御クライアント10AのセッションIDである。制御クライアント20Bに対応する被制御クライアント10BのセッションIDについても同様である。   Here, a method in which the subsystem management unit 44 extracts session information including the session ID of the controlled client 10A corresponding to the control client 20A will be described with reference to FIG. The subsystem management unit 44 extracts the user ID stored in the client state management unit 42 in association with the session ID of the control client 20A. Then, the subsystem management unit 44 extracts the session ID of the controlled client 10A stored in association with the extracted user ID. The session ID of the controlled client 10A extracted in this way is the session ID of the controlled client 10A corresponding to the control client 20A. The same applies to the session ID of the controlled client 10B corresponding to the control client 20B.

<サブシステムサーバの機能構成>
サブシステムサーバ50は、1つ以上の任意の機能を実行するサーバであり、一例として本実施形態では呼制御を行うシグナリングサーバ52とする。図1に示したように、サブシステムサーバ50は独自機能部51を備える。独自機能部51は、サブシステムサーバ50に所定の処理が委譲されると、クライアント状態情報とHTTPセッション情報とに基づいて、被制御クライアントによる所定の処理を制御する。
<Functional configuration of subsystem server>
The subsystem server 50 is a server that executes one or more arbitrary functions. As an example, the subsystem server 50 is a signaling server 52 that performs call control in this embodiment. As shown in FIG. 1, the subsystem server 50 includes a unique function unit 51. When the predetermined process is delegated to the subsystem server 50, the unique function unit 51 controls the predetermined process by the controlled client based on the client status information and the HTTP session information.

一例として、独自機能部51は、クライアント状態情報とHTTPセッション情報に基づいて制御クライアント20に関連付けられている被制御クライアント10の通話セッションを確立又は切断する制御を行うものであって、ルーチングテーブル部53及びメッセージ転送機能部54とする。すなわち、図4に示すように、シグナリングサーバ52が、ルーチングテーブル部53及びメッセージ転送機能部54を備える。   As an example, the unique function unit 51 performs control for establishing or disconnecting the call session of the controlled client 10 associated with the control client 20 based on the client status information and the HTTP session information. 53 and a message transfer function unit 54. That is, as shown in FIG. 4, the signaling server 52 includes a routing table unit 53 and a message transfer function unit 54.

ルーチングテーブル部53は、キーバリューストアを備え、複数の被制御クライアント10同士のネットワークルーチンを記憶する。具体的には、ルーチングテーブル部53は、制御クライアント20Aから通話セッション確立要求情報を受信する。また、ルーチングテーブル部53は、制御クライアント20Bから通話セッション確立応答情報を受信すると、図6に示すように制御クライアント20Aに関連付けて記憶されている被制御クライアント10AのセッションIDと、制御クライアント20Bに関連付けて記憶されている被制御クライアント10BのセッションIDとをキーバリューストアに記憶する。   The routing table unit 53 includes a key / value store, and stores network routines between the plurality of controlled clients 10. Specifically, the routing table unit 53 receives call session establishment request information from the control client 20A. When the routing table unit 53 receives the call session establishment response information from the control client 20B, the routing table unit 53 stores the session ID of the controlled client 10A stored in association with the control client 20A and the control client 20B as shown in FIG. The session ID of the controlled client 10B stored in association is stored in the key-value store.

また、ルーチングテーブル部53は、被制御クライアント10Aと被制御クライアント10Bとの間に確立している通話セッションを切断する旨を表す通話終了情報をクライアント状態管理サーバ40から受信すると、被制御クライアント10AのセッションIDと被制御クライアント10BのセッションIDとをルーチングテーブルから削除する。   When the routing table unit 53 receives from the client state management server 40 call termination information indicating that the call session established between the controlled client 10A and the controlled client 10B is to be disconnected, the routing table unit 53 receives the controlled client 10A. And the session ID of the controlled client 10B are deleted from the routing table.

メッセージ転送機能部54は、被制御クライアント10Aにセッション記述情報を要求するセッション記述要求情報を送信する。また、メッセージ転送機能部54は、被制御クライアント10Aから受信したセッション記述情報を被制御クライアント10Bに送信したり、被制御クライアント10Bから受信したセッション記述情報を被制御クライアント10Aに送信したりする。   The message transfer function unit 54 transmits session description request information for requesting session description information to the controlled client 10A. In addition, the message transfer function unit 54 transmits the session description information received from the controlled client 10A to the controlled client 10B, and transmits the session description information received from the controlled client 10B to the controlled client 10A.

<負荷分散装置の機能構成>
負荷分散装置60は、認証サーバ30、クライアント状態管理サーバ40、及びサブシステムサーバ50のそれぞれにかかる負荷を分散する。図1に示すように、負荷分散装置60は、リバースプロキシ61及びロードバランサ62を備える。
<Functional configuration of load balancer>
The load distribution device 60 distributes the load applied to each of the authentication server 30, the client state management server 40, and the subsystem server 50. As shown in FIG. 1, the load balancer 60 includes a reverse proxy 61 and a load balancer 62.

リバースプロキシ61は、認証サーバ30、クライアント状態管理サーバ40、及びサブシステムサーバ50の代理として、これらのサーバに対して送信された情報を受信し、それぞれのサーバへ送信する。   The reverse proxy 61 receives information transmitted to these servers as a proxy for the authentication server 30, the client state management server 40, and the subsystem server 50, and transmits the information to each server.

ロードバランサ62は、遠隔デスクトップ連携処理システム1が、例えば認証サーバ30を複数、備える場合、被制御クライアント10及び制御クライアント20から送信される情報を、複数の認証サーバ30に振り分ける。これによって、複数の認証サーバ30における1台あたりの負荷を抑えることが可能となる。また、ロードバランサ62は、遠隔デスクトップ連携処理システム1が複数のクライアント状態管理サーバ40、及び複数のサブシステムサーバ50を備える場合も、同様の機能を有する。   When the remote desktop cooperation processing system 1 includes a plurality of authentication servers 30, for example, the load balancer 62 distributes information transmitted from the controlled client 10 and the control client 20 to the plurality of authentication servers 30. Thereby, it is possible to suppress the load per unit in the plurality of authentication servers 30. The load balancer 62 also has the same function when the remote desktop cooperation processing system 1 includes a plurality of client state management servers 40 and a plurality of subsystem servers 50.

<<遠隔デスクトップ連携処理システムの動作>>
<ログイン処理に係る動作>
次に、図7を参照して、本実施形態に係る遠隔デスクトップ連携処理システム1のログイン処理に係る動作を説明する。
<< Operation of Remote Desktop Cooperation Processing System >>
<Operations related to login processing>
Next, with reference to FIG. 7, the operation | movement which concerns on the login process of the remote desktop cooperation processing system 1 which concerns on this embodiment is demonstrated.

図7に示すように、まず、被制御クライアント10は、利用者によって入力された利用者ID及びパスワードを含む利用者情報を受け付け、受け付けた利用者情報を認証サーバ30に送信する(ステップS11)。ステップS11で送信された利用者情報を認証サーバ30が受信すると、認証サーバ30のセッション管理部33はセッションIDを含むHTTPセッション情報を生成し、HTTPプロトコルのメッセージ「200 OK」を送信する(ステップS12)。   As shown in FIG. 7, first, the controlled client 10 receives user information including a user ID and a password input by the user, and transmits the received user information to the authentication server 30 (step S11). . When the authentication server 30 receives the user information transmitted in step S11, the session management unit 33 of the authentication server 30 generates HTTP session information including the session ID, and transmits an HTTP protocol message “200 OK” (step). S12).

続いて、被制御クライアント10は、メッセージ用接続を要求する旨を表すメッセージ用接続要求情報を、Web Socket等のプロトコルを用いてクライアント状態管理サーバ40に送信する(ステップS13)。ステップS13でメッセージ用接続要求情報が送信されると、クライアント状態管理サーバ40の接続管理部41がそのメッセージ用接続要求情報を受信し、セッション管理部33によって生成したHTTPセッション情報を認証サーバ30に要求する(ステップS14)。   Subsequently, the controlled client 10 transmits message connection request information indicating that a message connection is requested to the client state management server 40 using a protocol such as Web Socket (step S13). When the message connection request information is transmitted in step S13, the connection management unit 41 of the client state management server 40 receives the message connection request information, and sends the HTTP session information generated by the session management unit 33 to the authentication server 30. A request is made (step S14).

ステップS14で接続管理部41によってHTTPセッション情報が要求されると、セッション管理部33は要求に応答して、HTTPセッション情報を送信する(ステップS15)。そして、クライアント状態管理サーバ40の接続管理部41が、セッション管理部33によって送信されたHTTPセッション情報と、メッセージ用接続要求のセッション情報とを関連付けて記憶する(ステップS16)。さらに、接続管理部41は、メッセージ用接続要求に応答する旨を表すWeb Socket等のメッセージ用接続応答情報を被制御クライアント10に送信する(ステップS17)。   When HTTP session information is requested by the connection management unit 41 in step S14, the session management unit 33 transmits HTTP session information in response to the request (step S15). Then, the connection management unit 41 of the client state management server 40 stores the HTTP session information transmitted by the session management unit 33 in association with the session information of the message connection request (step S16). Further, the connection management unit 41 transmits message connection response information such as Web Socket indicating response to the message connection request to the controlled client 10 (step S17).

以上の処理によって、被制御クライアント10とクライアント状態管理サーバ40とのメッセージ用接続が確立する。同様に、制御クライアント20についてもステップS11〜ステップS17までの処理を行う。   Through the above processing, the message connection between the controlled client 10 and the client state management server 40 is established. Similarly, the process from step S11 to step S17 is performed for the control client 20 as well.

<クライアント状態申告処理に係る動作>
次に、図8を参照して、本実施形態に係る遠隔デスクトップ連携処理システム1のクライアント状態申告処理に係る動作を説明する。図8に示すように、まず、制御クライアント20がリモートクライアント状態情報をクライアント状態管理サーバ40に送信する(ステップS21)。ステップS21でリモートクライアント状態情報が送信されると、クライアント状態管理部42がそのリモートクライアント状態情報を受信し、接続管理部41に記憶されている利用者ID及びセッションIDに関連付けてリモートクライアント状態情報を図3に示したように記憶する(ステップS22)。
<Operation related to client status report processing>
Next, with reference to FIG. 8, the operation | movement which concerns on the client status notification process of the remote desktop cooperation processing system 1 which concerns on this embodiment is demonstrated. As shown in FIG. 8, first, the control client 20 transmits remote client status information to the client status management server 40 (step S21). When the remote client status information is transmitted in step S21, the client status management unit 42 receives the remote client status information and associates the remote client status information with the user ID and session ID stored in the connection management unit 41. Is stored as shown in FIG. 3 (step S22).

そして、クライアント状態管理部42は、リモートクライアント状態情報が記憶されたことを表す状態変更成功情報を制御クライアント20に送信する(ステップS23)。状態変更成功情報が送信されると、制御クライアント20はその状態変更成功情報を受信し、リモートクライアント(遠隔デスクトップシステムサーバ)として動作するために画面を遷移させる(ステップS24)。   Then, the client status management unit 42 transmits status change success information indicating that the remote client status information is stored to the control client 20 (step S23). When the status change success information is transmitted, the control client 20 receives the status change success information and changes the screen to operate as a remote client (remote desktop system server) (step S24).

同様に、被制御クライアント10がローカルクライアント状態情報をクライアント状態管理サーバ40に送信する(ステップS25)。ステップS25でローカルクライアント状態情報が送信されると、クライアント状態管理部42がそのローカルクライアント状態情報を受信し、接続管理部41に記憶されている利用者ID及びセッションIDに関連付けてローカルクライアント状態情報を記憶する(ステップS26)。   Similarly, the controlled client 10 transmits local client status information to the client status management server 40 (step S25). When the local client status information is transmitted in step S25, the client status management unit 42 receives the local client status information, and associates the local client status information with the user ID and session ID stored in the connection management unit 41. Is stored (step S26).

そして、クライアント状態管理部42は、ローカルクライアント状態情報が記憶されたことを表す状態変更成功情報を制御クライアント10に送信する(ステップS27)。状態変更成功情報が送信されると、制御クライアント20はその状態変更成功情報を受信し、ローカルクライアント(遠隔デスクトップシステムクライアント)として動作するために画面を遷移させる(ステップS28)。   Then, the client status management unit 42 transmits status change success information indicating that the local client status information is stored to the control client 10 (step S27). When the status change success information is transmitted, the control client 20 receives the status change success information and changes the screen to operate as a local client (remote desktop system client) (step S28).

ステップS22及びステップS26でそれぞれ制御クライアント20及び被制御クライアント10について、クライアント状態管理部42がクライアント状態情報とセッション情報とを関連付けて記憶すると、通話セッションの確立を要求することが可能(発呼可能)であることを制御クライアント20に通知する(ステップS29)。   When the client state management unit 42 associates and stores the client state information and the session information for the control client 20 and the controlled client 10 in steps S22 and S26, respectively, it is possible to request establishment of a call session (callable) ) Is notified to the control client 20 (step S29).

<通話セッションの確立及び切断に係る動作>
次に、図9を参照して、本実施形態に係る遠隔デスクトップ連携処理システム1の通話セッションの確立及び切断に係る動作を説明する。図9に示すように、まず、制御クライアント20Aが、通話セッション確立要求情報(Offer)をクライアント状態管理サーバ40に送信する(ステップS41)。ステップS41で送信された通話セッション確立要求情報が送信されると、クライアント状態管理サーバ40の呼状態管理部43がその通話セッション確立要求情報を受信し、その通話セッション確立要求情報を制御クライアント20Bに送信する(ステップS42)。
<Operation related to establishment and disconnection of call session>
Next, with reference to FIG. 9, operations related to establishment and disconnection of a call session of the remote desktop cooperation processing system 1 according to the present embodiment will be described. As shown in FIG. 9, first, the control client 20A transmits call session establishment request information (Offer) to the client state management server 40 (step S41). When the call session establishment request information transmitted in step S41 is transmitted, the call state management unit 43 of the client state management server 40 receives the call session establishment request information, and sends the call session establishment request information to the control client 20B. Transmit (step S42).

ステップS42で送信された通話セッション確立要求情報に基づいて、その要求を受け入れる旨の入力が利用者によってされる(ステップS43)と、制御クライアント20Bは通話セッション確立応答情報(Answer)をクライアント状態管理サーバ40に送信する(ステップS44)。また、制御クライアント20Bは画面を遷移させる(ステップS45)。   Based on the call session establishment request information transmitted in step S42, when the user inputs that the request is accepted (step S43), the control client 20B stores the call session establishment response information (Answer) in the client state management. It transmits to the server 40 (step S44). Further, the control client 20B changes the screen (step S45).

ステップS44で通話セッション確立応答情報が送信されると、呼状態管理部43は、制御クライアント20Aと制御クライアント20Bとの呼状態情報を図5に示したように記憶する(ステップS46)。   When the call session establishment response information is transmitted in step S44, the call state management unit 43 stores the call state information of the control client 20A and the control client 20B as shown in FIG. 5 (step S46).

続いて、サブシステム管理部44が、制御クライアント20Aに対応する被制御クライアント10Aと、制御クライアント20Bに対応する被制御クライアント10Bとが通話セッションを確立するための処理をサブシステムサーバ50であるシグナリングサーバ52に委譲する。具体的には、サブシステム管理部44は、図3に示したクライアント状態管理部42のキーバリューストアに、制御クライアント20AのセッションIDに関連付けて記憶されている被制御クライアント10AのセッションIDを抽出する。同様に、サブシステム管理部44は、制御クライアント20AのセッションIDに関連付けて記憶されている被制御クライアント10AのセッションIDを抽出する。そして、サブシステム管理部44は、抽出したセッションIDを含むセッション情報を送信し、被制御クライアント10Aと被制御クライアント10Bとの通話セッションの開始をシグナリングサーバ52に通知する(ステップS47)。   Subsequently, the subsystem management unit 44 performs processing for establishing a call session between the controlled client 10A corresponding to the control client 20A and the controlled client 10B corresponding to the control client 20B as a signaling that is the subsystem server 50. Delegate to server 52. Specifically, the subsystem management unit 44 extracts the session ID of the controlled client 10A stored in the key value store of the client state management unit 42 shown in FIG. 3 in association with the session ID of the control client 20A. To do. Similarly, the subsystem management unit 44 extracts the session ID of the controlled client 10A stored in association with the session ID of the control client 20A. Then, the subsystem management unit 44 transmits session information including the extracted session ID, and notifies the signaling server 52 of the start of a call session between the controlled client 10A and the controlled client 10B (step S47).

そして、通話セッションの開始を通知されたシグナリングサーバ52のルーチングテーブル部53は、被制御クライアント10Aと被制御クライアント10Aとが通話セッションを確立するためのルーチングを図6に示したように追加する(ステップS48)。   Then, the routing table unit 53 of the signaling server 52 notified of the start of the call session adds a routing for the controlled client 10A and the controlled client 10A to establish a call session as shown in FIG. Step S48).

また、ステップS44で、制御クライアント20Bから通話セッション確立応答情報が送信されると、呼状態管理部43は、送信された通話セッション確立応答情報を受信し、制御クライアント20Aに送信する(ステップS49)。通話セッション確立応答情報が送信されると、制御クライアント20Aはその通話セッション確立応答情報を受信し、通話セッションに用いる画面に遷移する(ステップS50)。   Further, when the call session establishment response information is transmitted from the control client 20B in step S44, the call state management unit 43 receives the transmitted call session establishment response information and transmits it to the control client 20A (step S49). . When the call session establishment response information is transmitted, the control client 20A receives the call session establishment response information, and transitions to a screen used for the call session (step S50).

また、ステップS47で呼状態管理部43によって、シグナリングサーバ52に被制御クライアント10Aと被制御クライアント10Bとの通話セッションの開始が通知されると、シグナリングサーバ52のメッセージ転送機能部35は、被制御クライアント10Aにセッション記述情報を要求する(ステップS51)。ステップS51でセッション記述情報が要求されると、被制御クライアント10Aはその要求に応答して(ステップS52)、セッション記述情報をシグナリングサーバ52に送信する。そして、シグナリングサーバ52のメッセージ転送機能部35は被制御クライアント10Aから受信したセッション記述情報を被制御クライアント10Bに送信する(ステップS53)。   In step S47, when the call state management unit 43 notifies the signaling server 52 of the start of the call session between the controlled client 10A and the controlled client 10B, the message transfer function unit 35 of the signaling server 52 The client 10A is requested for session description information (step S51). When the session description information is requested in step S51, the controlled client 10A transmits the session description information to the signaling server 52 in response to the request (step S52). Then, the message transfer function unit 35 of the signaling server 52 transmits the session description information received from the controlled client 10A to the controlled client 10B (step S53).

そして、被制御クライアント10Bは、受信したセッション記述情報に応答する旨を表すセッション記述応答情報をシグナリングサーバ52に送信し(ステップS54)、シグナリングサーバ52のメッセージ転送機能部35は、そのセッション記述応答情報を被制御クライアント20Aに送信する(ステップS55)。以上の処理によって、被制御クライアント10Aと被制御クライアント10Bとの通話セッション(メディア)が確立される。   Then, the controlled client 10B transmits session description response information indicating that it responds to the received session description information to the signaling server 52 (step S54), and the message transfer function unit 35 of the signaling server 52 receives the session description response. Information is transmitted to the controlled client 20A (step S55). Through the above processing, a call session (media) between the controlled client 10A and the controlled client 10B is established.

通話セッションを終了させる指示が利用者によって制御クライアント20Bに入力されると、制御クライアント20Bは通話セッション切断要求情報(bye)をクライアント状態管理サーバ40に送信し(ステップS60)、通話セッションに用いられていた画面を閉じるよう画面を遷移させる(ステップS61)。そして、ステップS60で送信された通話セッション切断要求情報を、クライアント状態管理サーバ40が受信すると、呼状態管理部43がステップS46で更新された呼状態を更新(削除)する(ステップ62)。   When an instruction to end the call session is input by the user to the control client 20B, the control client 20B transmits call session disconnection request information (bye) to the client state management server 40 (step S60), and is used for the call session. The screen is changed so as to close the screen that has been closed (step S61). When the client state management server 40 receives the call session disconnection request information transmitted in step S60, the call state management unit 43 updates (deletes) the call state updated in step S46 (step 62).

そして、呼状態管理部43は、ステップS60で制御クライアント20Bから送信された通話セッション切断要求情報を制御クライアント20Aに送信する(ステップS63)。ステップS63で通話セッション切断要求情報が送信されると、制御クライアント20Aは通話セッションに用いられていた画面を閉じるよう画面を遷移させる(ステップS64)。   Then, the call state management unit 43 transmits the call session disconnection request information transmitted from the control client 20B in step S60 to the control client 20A (step S63). When the call session disconnection request information is transmitted in step S63, the control client 20A changes the screen so as to close the screen used for the call session (step S64).

また、ステップS63で、呼状態管理部43が通話セッション切断要求情報を制御クライアント20Aに送信すると、サブシステム管理部44は被制御クライアント10Aと被制御クライアント10Aとが通話セッションを切断するための処理をサブシステムサーバ50に委譲する。具体的には、サブシステム管理部44は、被制御クライアント10Aと被制御クライアント10Bとの通話セッションの切断をシグナリングサーバ52に通知する(ステップS65)。   In step S63, when the call state management unit 43 transmits the call session disconnection request information to the control client 20A, the subsystem management unit 44 performs processing for disconnecting the call session between the controlled client 10A and the controlled client 10A. Is delegated to the subsystem server 50. Specifically, the subsystem management unit 44 notifies the signaling server 52 of disconnection of the call session between the controlled client 10A and the controlled client 10B (step S65).

ステップS65で呼状態管理部43によって、シグナリングサーバ52に被制御クライアント10Aと被制御クライアント10Bとの通話セッションの終了が通知されると、シグナリングサーバ52のメッセージ転送機能部35は、被制御クライアント10Aに通話セッションの切断を要求し(ステップS66)、被制御クライアント10Bに通話セッションの切断を要求する(ステップS67)。   In step S65, when the call state management unit 43 notifies the signaling server 52 of the termination of the call session between the controlled client 10A and the controlled client 10B, the message transfer function unit 35 of the signaling server 52 will control the controlled client 10A. Is requested to disconnect the call session (step S66), and the controlled client 10B is requested to disconnect the call session (step S67).

また、ステップS65で、シグナリングサーバ52に被制御クライアント10Aと被制御クライアント10Bとの通話セッションの切断が通知されると、シグナリングサーバ52のルーチングテーブル部53は、被制御クライアント10Aと被制御クライアント10Aとのルーチングをルーチングテーブルから削除する(ステップS68)。   In step S65, when the signaling server 52 is notified of disconnection of the call session between the controlled client 10A and the controlled client 10B, the routing table unit 53 of the signaling server 52 causes the controlled client 10A and the controlled client 10A. Is deleted from the routing table (step S68).

以上のように、本実施形態に記載された遠隔デスクトップ連携処理システム1によって、遠隔デスクトップシステム2の利用者は、遠隔デスクトップシステムサーバとしての制御クライアント20から通話セッションの確立を要求した場合に、制御クライアント20を介さずに遠隔デスクトップシステムクライアントとしての被制御クライアント10同士で直接、通話セッションを確立する。そのため、利用者は、遠隔デスクトップシステムサーバとしての制御クライアントを介して確立した通話セッションによる音切れや音声遅延等の問題を回避することが可能となる。また、クライアント状態管理サーバ40は、クライアント状態管理部42に記憶されている制御クライアント20と被制御クライアント10との関連付けを用いて、被制御クライアント10同士で通話セッションを確立するための制御を行うため、利用者は煩雑な操作を行う必要がない。   As described above, when the user of the remote desktop system 2 requests establishment of a call session from the control client 20 as the remote desktop system server, the remote desktop cooperation processing system 1 described in the present embodiment controls the user. A call session is established directly between the controlled clients 10 as remote desktop system clients without going through the client 20. Therefore, the user can avoid problems such as sound interruption and voice delay due to a call session established via a control client as a remote desktop system server. In addition, the client state management server 40 performs control for establishing a call session between the controlled clients 10 by using the association between the controlled client 20 and the controlled client 10 stored in the client state management unit 42. Therefore, the user does not need to perform complicated operations.

すなわち、通話セッションの確立と通話機能とを連携させることによって、高品質な通話を実現するシステムを実現できる。また、遠隔デスクトップシステム2がメディア転送に適さない通信路を用いていても、被制御クライアント10Aが直接、被制御クライアント10Bと通信するため、高品質な通話が実現できる。また、遠隔デスクトップシステムを利用してリアルタイムコミューケーションを行う場合に、操作端末(被制御クライアント10)が遠隔デスクトップを経由せずに通信を行うため、高品質な通話が実現できる。   That is, a system that realizes a high-quality call can be realized by linking the establishment of a call session and a call function. Even if the remote desktop system 2 uses a communication path that is not suitable for media transfer, the controlled client 10A communicates directly with the controlled client 10B, so that a high-quality call can be realized. Further, when performing real-time communication using a remote desktop system, the operation terminal (controlled client 10) communicates without going through the remote desktop, so that a high-quality call can be realized.

また、本実施形態に記載された遠隔デスクトップ連携処理システム1では、被制御クライアント10同士で直接、通話セッションが確立されるが、制御クライアント20Aに関する機能、性能及び仕様等の条件に基づいて、被制御クライアント10同士で直接、通話セッションを確立するか、制御クライアント20を経由して通話セッションを確立するかをクライアント状態管理部42が判定してもよい。具体的には、クライアント状態管理部42は、制御クライアント20が通話機能を有するか否かを判定する。そして、制御クライアント20が通話機能を有すると判定された場合、制御クライアント20同士が通話セッションを確立するための処理を行う。また、制御クライアント20が通話機能を有しないと判定された場合、サブシステム管理部44が被制御クライアント10のセッション情報をシグナリングサーバ52に通知する。   In the remote desktop cooperation processing system 1 described in the present embodiment, a call session is directly established between the controlled clients 10. However, based on conditions such as functions, performance, and specifications regarding the control client 20 </ b> A, The client state management unit 42 may determine whether to establish a call session directly between the control clients 10 or to establish a call session via the control client 20. Specifically, the client state management unit 42 determines whether or not the control client 20 has a call function. When it is determined that the control clients 20 have a call function, the control clients 20 perform processing for establishing a call session. If it is determined that the control client 20 does not have a call function, the subsystem management unit 44 notifies the signaling server 52 of the session information of the controlled client 10.

また、接続管理部41は利用者からのメッセージ用接続要求を受信すると、セッション管理部33にセッション情報を要求するため、利用者は利用者IDによる認証処理を経ることによって、いずれの端末を制御クライアントとすることも被制御クライアントとすることもできる。一方、セッション管理部33は、利用者の認証に関する情報を記憶するため、利用者が以降の操作において同一の被制御クライアントを用いる場合、改めて認証の処理を行う必要がない。   When the connection management unit 41 receives a message connection request from a user, the connection management unit 41 requests session information from the session management unit 33. Therefore, the user controls any terminal by performing authentication processing using a user ID. It can be a client or a controlled client. On the other hand, since the session management unit 33 stores information related to user authentication, when the user uses the same controlled client in subsequent operations, there is no need to perform authentication processing again.

また、利用者は自身が利用する操作端末に、通話機能の実現に必要なマイクやカメラが具備されていない場合、他の操作端末を被制御クライアントとして動作させてもよい。すなわち、利用者の用いる操作端末は固定されず、通話機能の実現に必要なハードウェアを具備する任意の操作端末を被制御クライアントとすればよい。   In addition, when the operation terminal used by the user does not have a microphone or a camera necessary for realizing the call function, the user may operate another operation terminal as a controlled client. That is, the operation terminal used by the user is not fixed, and any operation terminal equipped with hardware necessary for realizing the call function may be used as the controlled client.

また、本実施形態に記載された遠隔デスクトップ連携処理システム1では、通話セッションの確立中に、画像情報、映像情報、及びテキスト情報等を送受信する場合には、被制御クライアント10同士が直接、送受信するのではなく、制御クライアント20を経由して送受信をすることができる。   Further, in the remote desktop cooperation processing system 1 described in the present embodiment, when image information, video information, text information, and the like are transmitted and received during establishment of a call session, the controlled clients 10 directly transmit and receive each other. Instead, it can be transmitted and received via the control client 20.

また、本実施形態に記載された遠隔デスクトップ連携処理システム1では、通話セッション確立要求情報を送信した制御クライアント20Aとは異なる制御クライアント20Bが通話セッション切断要求を送信するとしているが、制御クライアント20Aが通話セッション切断要求を送信してもよい。   In the remote desktop cooperation processing system 1 described in the present embodiment, the control client 20B that is different from the control client 20A that transmitted the call session establishment request information transmits a call session disconnection request. A call session disconnection request may be transmitted.

また、本実施形態に記載された遠隔デスクトップ連携処理システム1では、制御クライアント20Aが通話に係る機能を備えていない、又は制御クライアント20Aによる通話品質が十分でない場合に、十分な通話品質を実現することができる通話機能を備える被制御クライアント10Aを用いて通話セッションを確立するが、通話以外の他の機能について上記の構成を適用してもよい。すなわち、制御クライアント20Aが、通話以外の所定の機能を備えていない、又はその性能が十分でない場合に、上記の実施形態で説明した方法と同様の方法で独自機能部51にその機能に係る処理を委譲し、制御クライアント10Aに当該所定の処理を行わせるよう制御してもよい。   Moreover, in the remote desktop cooperation processing system 1 described in the present embodiment, sufficient call quality is realized when the control client 20A does not have a function related to a call or the call quality by the control client 20A is not sufficient. Although the call session is established using the controlled client 10A having a call function that can perform the above function, the above-described configuration may be applied to functions other than the call. That is, when the control client 20A does not have a predetermined function other than a call or its performance is not sufficient, the process related to the function is performed in the unique function unit 51 in the same manner as the method described in the above embodiment. The control client 10A may be controlled to perform the predetermined process.

また、本実施形態に記載された遠隔デスクトップ連携処理システム1では、被制御クライアント10及び制御クライアント20から送信された利用者情報をセッション管理部33が端末を一意に識別するための端末情報と関連付けて記憶してもよい。このようにすることによって、利用者が同一の端末を用いれば、認証サーバ30はその後のログインにおいて認証を行わずに、利用者を識別することができる。なお、利用者は、認証を経ることによって別の端末を被制御クライアント10Aとして、本遠隔デスクトップ連携処理システム1にログインすることもできる。例えば、被制御クライアント10Aとして利用したい端末がマイクやカメラを備えていない場合、利用者は別の端末を利用するという運用も可能である。   Further, in the remote desktop cooperation processing system 1 described in the present embodiment, the user information transmitted from the controlled client 10 and the control client 20 is associated with the terminal information for the session management unit 33 to uniquely identify the terminal. May be stored. In this way, if the user uses the same terminal, the authentication server 30 can identify the user without performing authentication at the subsequent login. The user can also log in to the remote desktop cooperation processing system 1 by using another terminal as the controlled client 10A through authentication. For example, when a terminal that is desired to be used as the controlled client 10A does not include a microphone or a camera, the user can use another terminal.

また、本実施形態に記載された遠隔デスクトップ連携処理システム1では、ログインに係る処理において、被制御クライアント10及び制御クライアント10は、利用者IDを含む利用者情報をあらかじめ記憶し、記憶されている利用者情報を認証サーバ30に送信するドングルを利用してもよい。このようにすることによって、利用者が利用者情報を入力したり、送信したりする作業の負荷を軽減することが可能となる。特に、例えば、制御クライアント10を会社に設置し、自宅で被制御クライアント20を用いるといった状況で、複雑な設定情報や会社からの持ち出しが禁じられているソフトウェアを用いなければならない場合、ドングルによって利用者は簡易に操作することができる。   Moreover, in the remote desktop cooperation processing system 1 described in the present embodiment, in the processing related to login, the controlled client 10 and the control client 10 store and store user information including a user ID in advance. A dongle that transmits user information to the authentication server 30 may be used. By doing in this way, it becomes possible to reduce the load of the operation | work which a user inputs user information or transmits. In particular, for example, when the control client 10 is installed in a company and the controlled client 20 is used at home, complicated setting information or software prohibited from being taken out from the company must be used by a dongle. The person can easily operate.

また、本実施形態に記載された遠隔デスクトップ連携処理システム1では、接続管理部41、クライアント状態管理部42、サブシステム管理部44、及びルーチングテーブル部53は、それぞれ各情報をキーバリューストアに記憶する。これによって、拡張性の高い設計を実現することができる。しかし、接続管理部41、クライアント状態管理部42、サブシステム管理部44、及びルーチングテーブル部53は、例えばリレーショナル・データベースといった任意の形式の記憶ユニットに各情報を記憶してもよい。   In the remote desktop cooperation processing system 1 described in the present embodiment, the connection management unit 41, the client status management unit 42, the subsystem management unit 44, and the routing table unit 53 store each information in the key value store. To do. As a result, a highly scalable design can be realized. However, the connection management unit 41, the client state management unit 42, the subsystem management unit 44, and the routing table unit 53 may store each information in a storage unit of an arbitrary format such as a relational database.

上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の複数の構成ブロックを1つに組み合わせたり、あるいは1つの構成ブロックを分割したりすることが可能である。   Although the above embodiment has been described as a representative example, it will be apparent to those skilled in the art that many changes and substitutions can be made within the spirit and scope of the invention. Therefore, the present invention should not be construed as being limited by the above-described embodiments, and various modifications and changes can be made without departing from the scope of the claims. For example, a plurality of constituent blocks described in the embodiments can be combined into one, or one constituent block can be divided.

1 遠隔デスクトップ連携処理システム
10 被制御クライアント
20 制御クライアント
30 認証サーバ
31 利用者情報記憶部
32 認証機能部
33 セッション管理部
40 クライアント状態管理サーバ
41 接続管理部
42 クライアント状態管理部
43 呼状態管理部
44 サブシステム管理部
50 サブシステムサーバ
51 独自機能部
52 シグナリングサーバ
53 ルーチングテーブル部
54 メッセージ転送機能部
60 負荷分散装置
61 リバースプロキシ
62 ロードバランサ
DESCRIPTION OF SYMBOLS 1 Remote desktop cooperation processing system 10 Controlled client 20 Control client 30 Authentication server 31 User information storage part 32 Authentication function part 33 Session management part 40 Client state management server 41 Connection management part 42 Client state management part 43 Call state management part 44 Subsystem management unit 50 Subsystem server 51 Unique function unit 52 Signaling server 53 Routing table unit 54 Message transfer function unit 60 Load balancer 61 Reverse proxy 62 Load balancer

Claims (6)

遠隔デスクトップシステムサーバである制御クライアントと遠隔デスクトップシステムクライアントである被制御クライアントをそれぞれ含む、複数の遠隔デスクトップシステムが、認証サーバ、クライアント状態管理サーバ、及びサブシステムサーバと連携する遠隔デスクトップ連携処理システムであって、
前記認証サーバは、
前記被制御クライアント及び前記制御クライアントを認証する認証機能部と、
前記認証機能部によって認証された前記被制御クライアント及び前記制御クライアントそれぞれの前記認証サーバへのセッションを表すHTTPセッション情報を生成するセッション管理部と、を備え、
前記制御クライアントは、
所定の処理に係る制御を前記クライアント状態管理サーバに要求し
前記クライアント状態管理サーバは、
前記制御クライアント及び前記被制御クライアントがそれぞれ制御クライアント又は被制御クライアントのいずれであるかを表すクライアント状態情報と、前記HTTPセッション情報と、を関連付けて記憶するクライアント状態管理部と、
前記制御クライアントによって前記所定の処理を実行するための制御を要求されると、前記サブシステムサーバに前記所定の処理を委譲するサブシステム管理部と、を備え、
前記サブシステムサーバは、前記所定の処理が委譲されると、前記制御クライアントに関連付けられて前記クライアント状態管理部に記憶されている前記被制御クライアントが前記所定の処理を行うための制御を行う独自機能部
を備える、遠隔デスクトップ連携処理システム。
A remote desktop cooperative processing system in which a plurality of remote desktop systems, each including a control client that is a remote desktop system server and a controlled client that is a remote desktop system client, cooperate with an authentication server, a client state management server, and a subsystem server. There,
The authentication server is
An authentication function unit for authenticating the controlled client and the control client;
A session management unit that generates HTTP session information representing a session to the authentication server of each of the controlled client and the control client authenticated by the authentication function unit;
The control client is
Requesting control related to a predetermined process from the client state management server, the client state management server,
A client state management unit for storing the client state information indicating whether the control client and the controlled client are a control client or a controlled client, respectively, and the HTTP session information;
A subsystem management unit that delegates the predetermined process to the subsystem server when control for executing the predetermined process is requested by the control client;
When the predetermined process is delegated, the subsystem server performs control for the controlled client associated with the control client and stored in the client state management unit to perform the predetermined process. Remote desktop cooperation processing system with functional units.
請求項1に記載の遠隔デスクトップ連携処理システムにおいて、
前記所定の処理に係る制御は、通話セッションを確立又は切断することであり、
前記独自機能部は、前記クライアント状態情報と前記HTTPセッション情報に基づいて前記制御クライアントに関連付けられている前記被制御クライアントの通話セッションを確立又は切断することを特徴とする遠隔デスクトップ連携処理システム。
In the remote desktop cooperation processing system according to claim 1,
The control related to the predetermined process is to establish or disconnect a call session;
The unique function unit establishes or disconnects a call session of the controlled client associated with the control client based on the client status information and the HTTP session information.
請求項2に記載の遠隔デスクトップ連携処理システムにおいて、
前記サブシステム管理部は、前記クライアント状態管理部に記憶されている前記HTTPセッション情報及び前記クライアント状態情報を前記独自機能部に送信し、
前記独自機能部は、
前記クライアント状態情報と前記HTTPセッション情報とに基づいて、前記被制御クライアントのセッションIDを記憶するルーチングテーブル部と、
前記ルーチングテーブル部に記憶されているセッションIDに係る被制御クライアントとセッション記述情報を送受信するメッセージ転送機能部と、を備える、
遠隔デスクトップ連携処理システム。
In the remote desktop cooperation processing system according to claim 2,
The subsystem management unit transmits the HTTP session information and the client state information stored in the client state management unit to the unique function unit,
The unique function unit is
A routing table unit that stores a session ID of the controlled client based on the client status information and the HTTP session information;
A message transfer function unit that transmits and receives session description information to and from a controlled client associated with a session ID stored in the routing table unit,
Remote desktop linkage processing system.
請求項2又は3に記載の遠隔デスクトップ連携処理システムにおいて、
複数の前記制御クライアントのうちの第1の制御クライアントは、第2の制御クライアントとの前記通話セッションを確立するための通話セッション確立要求情報を前記クライアント状態管理サーバに送信し、
前記第2の制御クライアントは、前記通話セッション確立要求情報に基づいて通話セッション確立応答情報を前記クライアント状態管理サーバに送信し、
前記クライアント状態管理サーバは、
前記通話セッション確立応答情報を受信すると、前記第1の制御クライアントに係る利用者IDと前記第2の制御クライアントに係る利用者IDとを関連付けた呼状態情報を記憶する呼状態管理部を備える、
遠隔デスクトップ連携処理システム。
In the remote desktop cooperation processing system according to claim 2 or 3,
A first control client of the plurality of control clients transmits call session establishment request information for establishing the call session with a second control client to the client state management server,
The second control client transmits call session establishment response information to the client state management server based on the call session establishment request information,
The client state management server
When receiving the call session establishment response information, a call state management unit that stores call state information that associates a user ID related to the first control client and a user ID related to the second control client;
Remote desktop linkage processing system.
請求項4に記載の遠隔デスクトップ連携処理システムにおいて、
前記呼状態管理部は、前記第1の制御クライアント及び前記第2の制御クライアントのいずれか1つから、通話セッション切断要求情報が送信されると、前記呼状態情報を削除することを特徴とする遠隔デスクトップ連携処理システム。
In the remote desktop cooperation processing system according to claim 4,
The call state management unit deletes the call state information when call session disconnection request information is transmitted from any one of the first control client and the second control client. Remote desktop linkage processing system.
遠隔デスクトップシステムサーバである制御クライアントと遠隔デスクトップシステムクライアントである被制御クライアントをそれぞれ含む、複数の遠隔デスクトップシステムと連携するクライアント状態管理サーバであって、
前記被制御クライアント及び前記制御クライアントがそれぞれ制御クライアント又は被制御クライアントのいずれであるかを表すクライアント状態情報と、前記被制御クライアント及び前記制御クライアントの認証サーバへのHTTPセッションに関するHTTPセッション情報とを関連付けて記憶するクライアント状態管理部と、
前記制御クライアントによって所定の処理を実行するための制御を要求されると、前記クライアント状態情報と前記HTTPセッション情報とに基づいて、前記被制御クライアントが前記所定の処理を実行するための制御をサブシステムサーバに委譲するサブシステム管理部と、
を備える、クライアント状態管理サーバ。



A client state management server that cooperates with a plurality of remote desktop systems, each including a control client that is a remote desktop system server and a controlled client that is a remote desktop system client,
Associating client status information indicating whether the controlled client and the controlled client are each a controlled client or a controlled client, and HTTP session information related to an HTTP session to the controlled client and the authentication client of the controlled client A client state management unit for storing
When control for executing a predetermined process is requested by the control client, the control client performs sub-control for executing the predetermined process based on the client status information and the HTTP session information. A subsystem management unit that delegates to the system server;
A client state management server.



JP2014247090A 2014-12-05 2014-12-05 Remote desktop cooperation processing system and client state management server Active JP6266502B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014247090A JP6266502B2 (en) 2014-12-05 2014-12-05 Remote desktop cooperation processing system and client state management server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014247090A JP6266502B2 (en) 2014-12-05 2014-12-05 Remote desktop cooperation processing system and client state management server

Publications (2)

Publication Number Publication Date
JP2016111517A JP2016111517A (en) 2016-06-20
JP6266502B2 true JP6266502B2 (en) 2018-01-24

Family

ID=56125005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014247090A Active JP6266502B2 (en) 2014-12-05 2014-12-05 Remote desktop cooperation processing system and client state management server

Country Status (1)

Country Link
JP (1) JP6266502B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11187121A (en) * 1997-12-18 1999-07-09 Sanwa Consulting:Kk Speaking system
JP2002082907A (en) * 2000-09-11 2002-03-22 Nec Corp Security function substitution method in data communication and its system, and recording medium
JP2004304666A (en) * 2003-03-31 2004-10-28 Ntt Comware Corp Method of providing ip telephone communication service for enterprise, application service providing system using the same, program, and recording medium
JP2007329549A (en) * 2006-06-06 2007-12-20 Nippon Telegr & Teleph Corp <Ntt> Network system and routing selection apparatus thereof

Also Published As

Publication number Publication date
JP2016111517A (en) 2016-06-20

Similar Documents

Publication Publication Date Title
AU2016202485B2 (en) Methods and systems for secure media-based conferencing
US9794201B2 (en) Messaging based signaling for communications sessions
JP4616159B2 (en) Cluster system, load balancer, node transfer method, and node transfer program
JP2006343943A (en) File server device and communication management server
WO2011139322A2 (en) Network-attached display device as an attendee in an online collaborative computing session
US10721311B1 (en) System and method for coupling two separate applications to an application session within a serverless infrastructure
US11736611B2 (en) Visual engagement using automatically dynamically selected visualization mediums
US20210273981A1 (en) Method for establishing a communication connection which is suitable for transmitting media streams between a first rtc client and a second rtc client
US10846658B2 (en) Establishing a communication event
US20100223320A1 (en) Data distribution efficiency for online collaborative computing sessions
US9544253B2 (en) Multimedia conversation transfer
JP2009176289A (en) Service providing system, service providing method, and service providing program
US10855846B1 (en) Encrypting multiple party calls
EP3550794B1 (en) Solution for establishing a communication session
JP2009208430A (en) Image forming apparatus, system, method and program
US9143536B2 (en) Determining a location address for shared data
JP6266502B2 (en) Remote desktop cooperation processing system and client state management server
JP2016149652A (en) Call control server, terminal registration method, terminal registration program and communication system
JP6877727B1 (en) Connection method between terminals via the room site of the signaling server, cloud server and program
JP6631300B2 (en) Communication control system, communication control method, communication control program, and communication control device
JP5028995B2 (en) Service providing apparatus, authentication method, and authentication program
JP2010147909A (en) Information providing apparatus, information providing system, information providing method, and program
JP2007072824A (en) Presence system
JP2007249823A (en) System, apparatus and method for controlling communication, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171120

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: 20171219

R150 Certificate of patent or registration of utility model

Ref document number: 6266502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150