JP2009223533A - Session control device, session control method, and program - Google Patents

Session control device, session control method, and program Download PDF

Info

Publication number
JP2009223533A
JP2009223533A JP2008066274A JP2008066274A JP2009223533A JP 2009223533 A JP2009223533 A JP 2009223533A JP 2008066274 A JP2008066274 A JP 2008066274A JP 2008066274 A JP2008066274 A JP 2008066274A JP 2009223533 A JP2009223533 A JP 2009223533A
Authority
JP
Japan
Prior art keywords
session
application server
terminal
communication nodes
established
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.)
Pending
Application number
JP2008066274A
Other languages
Japanese (ja)
Inventor
Masashi Kaneko
雅志 金子
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 JP2008066274A priority Critical patent/JP2009223533A/en
Publication of JP2009223533A publication Critical patent/JP2009223533A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To achieve higher level and highly convenient service development without making an application developer be conscious of medial classification between terminals. <P>SOLUTION: A gateway 200 is installed between an information network 300 and a communication undertaker network 100. In the gateway 200, connection API, disconnection API, switching API, division API, and binding API are set as control API 210 which can be called from an application 410. The gateway 200 establishes session on the basis of media negotiation by using the API calling from the application 410 or transmission from the terminal as a chance. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、アプリケーションからの要求により通信ネットワーク上の端末間(サーバ〜端末間、サーバ〜サーバ間も含む)のセッション制御を行うセッション制御装置、セッション制御方法およびプログラムに関する。   The present invention relates to a session control device, a session control method, and a program for performing session control between terminals on a communication network (including server-to-terminal and server-to-server) in response to a request from an application.

IP電話や通信ネットワーク上の端末間のセッション制御を、API(Application Program Interface)等の提供により第三者のアプリケーションから制御可能とする技術(サードパーティコールコントロール)が一部標準化されている(例えば、非特許文献1参照)。しかしながら、非特許文献1のような従来技術では、接続・切断手段しか提供されないなど、制御の種類が少ないため、アプリケーションによって制御可能なことが限定されていた。   A technology (third-party call control) that allows session control between terminals on an IP phone or communication network to be controlled from a third-party application by providing an API (Application Program Interface) or the like has been partially standardized (for example, Non-Patent Document 1). However, in the conventional technique such as Non-Patent Document 1, since only a connection / disconnection means is provided and the number of types of control is small, control by an application is limited.

そこで、端末間のセッションにおいて多様なメディア種別を利用可能なIPベースの通信ネットワーク上において、セッション制御信号として広く使われているSIP(Session Initiation Protocol)では、SDP(Session Description Protocol)交換によって、セッション確立する端末同士のネゴシエーションで、端末の能力に応じたメディア種別(音声通信・映像通信・データ通信等)を選択する方法が標準化されている(例えば、非特許文献2参照)。
「Best Current Practices for Third Party Call Control(3pcc)in the Session Initiation Protocol(SIP)」、2004年 「実践SIP詳解テキスト」リックテレコム、2005年、p.234−267
Therefore, in an IP-based communication network that can use various media types in a session between terminals, the Session Initiation Protocol (SIP) that is widely used as a session control signal can exchange a session by exchanging a Session Description Protocol (SDP). A method of selecting a media type (voice communication, video communication, data communication, etc.) according to the capability of a terminal by negotiation between terminals to be established has been standardized (for example, see Non-Patent Document 2).
`` Best Current Practices for Third Party Call Control (3pcc) in the Session Initiation Protocol (SIP) '', 2004 "Practical SIP Detailed Text" Rick Telecom, 2005, p. 234-267

しかしながら、上述した従来技術(非特許文献2)では、標準化によって示されている方法は、あくまで端末間のセッション制御方法に留まっている。また、サードパーティコールコントロールにおけるSDP交換方式について規定しているRFC3725においても、非特許文献1のようなセッション制御を追加した場合に、どのような方法でSDP交換を行えばよいかは明確にされていない。   However, in the above-described prior art (Non-Patent Document 2), the method shown by standardization is merely a session control method between terminals. In addition, RFC 3725, which defines the SDP exchange method in third-party call control, clarifies how SDP exchange should be performed when session control as in Non-Patent Document 1 is added. Not.

そこで、制御の種類を増やし(セッションの切り替え、分割、結合)、特定電話番号に対する着信などの呼制御イベントをアプリケーションに通知する手段などを提供し、アプリケーション開発者がより多くのサービスの開発を可能とすることが望まれる。   Therefore, the number of types of control is increased (session switching, splitting, joining), and means for notifying applications of call control events such as incoming calls for specific phone numbers are provided, allowing application developers to develop more services. Is desired.

しかしながら、端末間のセッション接続時に用いられるメディア種別について、常にアプリケーションから指定するのでは、アプリケーション開発者がセッション制御を実行するたびに、接続させる端末間でのメディア種別を意識しなければならない。   However, if the media type used at the time of session connection between terminals is always specified from the application, the media type between the terminals to be connected must be conscious every time the application developer executes session control.

このように、柔軟なセッション制御APIを利用したアプリケーション開発において、制御のたびにセッションのメディア種別をアプリケーションから指定しなければならないのは不便である。また、柔軟なサードパーティコールコントロールにおいても、メディア種別の指定は、あくまで端末間のメディアネゴシエーションに任せることができるような仕組みが必要である。   As described above, in application development using the flexible session control API, it is inconvenient that the media type of the session must be designated from the application for each control. Also in flexible third-party call control, a mechanism that can leave the specification of the media type to media negotiation between terminals is necessary.

本発明は、このような事情を考慮してなされたものであり、その目的は、アプリケーション開発者に端末間でのメディア種別を意識させることなく、より高度で利便性が高いサービス開発を実現することができるセッション制御装置、セッション制御方法およびプログラムを提供することにある。   The present invention has been made in consideration of such circumstances, and its purpose is to realize more advanced and highly convenient service development without making application developers aware of media types between terminals. It is an object to provide a session control apparatus, a session control method, and a program that can perform the above-described process.

上述した課題を解決するために、本発明は、アプリケーションサーバからの指令を受け、通信事業者のネットワークに接続された通信ノード間のセッションを制御するセッション制御装置において、前記アプリケーションサーバからの指令に応じて前記通信ノード間のセッションを確立するセッション確立手段と、前記通信ノード間において確立されたセッションを示すセッション識別子を前記アプリケーションサーバへ送信するセッション識別子通知手段と、前記通信ノード間に確立されたセッションを前記アプリケーションサーバからの指令に応じて制御するセッション制御手段と、前記通信ノードとのセッション確立時に前記通信ノード間でメディアネゴシエーションを行う管理手段と、を具備することを特徴とするセッション制御装置である。   In order to solve the above-described problems, the present invention provides a command from the application server in a session control apparatus that receives a command from an application server and controls a session between communication nodes connected to a network of a communication carrier. In response, session establishment means for establishing a session between the communication nodes, session identifier notification means for transmitting a session identifier indicating a session established between the communication nodes to the application server, and established between the communication nodes Session control means for controlling a session according to a command from the application server; and management means for performing media negotiation between the communication nodes when a session is established with the communication node. It is.

本発明は、上記の発明において、前記前記管理手段は、通信ノード毎のメディアネゴシエーション結果を保持する保持手段を有し、前記通信ノード毎のメディアネゴシエーション結果に基づいて、メディアタイプの変更に伴うコーデック変更を判定することを特徴とする。   According to the present invention, in the above invention, the management means includes holding means for holding a media negotiation result for each communication node, and a codec associated with a media type change based on the media negotiation result for each communication node. It is characterized by determining a change.

本発明は、上記の発明において、前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中のセッションの第1、第2の通信ノードの一方の接続先を第3の通信ノードに切り替える切り替え手段を有することを特徴とする。   According to the present invention, in the above invention, the session control means switches one connection destination of the first and second communication nodes of the established session to the third communication node based on a command from the application server. It has a switching means.

本発明は、上記の発明において、前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中のセッションの第1、第2の通信ノードの接続先を、それぞれ第3、第4の通信ノードに切り替える分割手段を有することを特徴とする。   According to the present invention, in the above invention, the session control means determines the connection destinations of the first and second communication nodes of the established session based on a command from the application server, respectively. It has a dividing means for switching to a node.

本発明は、上記の発明において、前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中の第1のセッションの一方の通信ノードと、確立中の第2のセッションの一方の通信ノードとを、セッションを確立したまま再結合する再結合手段を有する。   According to the present invention, in the above invention, the session control means, based on a command from the application server, one communication node of the first session being established and one communication node of the second session being established And recombination means for recombining with the session established.

本発明は、上記の発明において、前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中のセッションを切断する切断手段を有する。   According to the present invention, in the above invention, the session control unit includes a disconnecting unit that disconnects the session being established based on a command from the application server.

本発明は、上記の発明において、前記セッション制御手段は、通信ノード間でセッションが確立された場合に、確立された当該セッションを特定するセッション識別子を前記アプリケーションサーバに通知することを特徴とする。   The present invention is characterized in that, in the above invention, when the session is established between the communication nodes, the session control means notifies the application server of a session identifier for specifying the established session.

また、上述した課題を解決するために、本発明は、アプリケーションサーバからの指令を受け、通信事業者のネットワークに接続された通信ノード間のセッションを制御するセッション制御方法において、前記アプリケーションサーバからの指令に応じて前記通信ノード間のセッションを確立するステップと、前記通信ノード間において確立されたセッションを示すセッション識別子を前記アプリケーションサーバへ送信するステップと、前記通信ノード間に確立されたセッションを前記アプリケーションサーバからの指令に応じて制御するステップと、前記通信ノードとのセッション確立時に前記通信ノード間でメディアネゴシエーションを行うステップと、を有することを特徴とするセッション制御方法である。   In order to solve the above-mentioned problem, the present invention provides a session control method for receiving a command from an application server and controlling a session between communication nodes connected to a network of a communication carrier. Establishing a session between the communication nodes in response to a command; transmitting a session identifier indicating a session established between the communication nodes to the application server; and a session established between the communication nodes. A session control method comprising: controlling according to a command from an application server; and performing media negotiation between the communication nodes when establishing a session with the communication node.

また、上述した課題を解決するために、本発明は、アプリケーションサーバからの指令を受け、通信事業者のネットワークに接続された通信ノード間のセッションを制御するコンピュータに、前記アプリケーションサーバからの指令に応じて前記通信ノード間のセッションを確立するステップと、前記通信ノード間において確立されたセッションを示すセッション識別子を前記アプリケーションサーバへ送信するステップと、前記通信ノード間に確立されたセッションを前記アプリケーションサーバからの指令に応じて制御するステップと、前記通信ノードとのセッション確立時に前記通信ノード間でメディアネゴシエーションを行うステップと、を実行させるためのプログラムである。   In order to solve the above-described problem, the present invention receives a command from an application server, and sends a command from the application server to a computer that controls a session between communication nodes connected to a network of a communication carrier. Accordingly, establishing a session between the communication nodes, transmitting a session identifier indicating a session established between the communication nodes to the application server, and indicating the session established between the communication nodes to the application server. And a step of performing media negotiation between the communication nodes when establishing a session with the communication node.

この発明によれば、アプリケーションに対して自由度が高いセッション制御APIが提供されることにより、アプリケーション開発者の利便性が向上し、より多くのアプリケーション開発者を通信ネットワーク上のサービス開発に参入させることができる。さらに、当該APIは、セッション制御において端末間メディアネゴシエーションをベースとしているため、マルチメディア対応端末を利用したサービス開発も容易となり、より高度で利便性が高いサービス開発を実現することができる。   According to the present invention, by providing a session control API having a high degree of freedom for an application, the convenience of the application developer is improved, and more application developers are allowed to enter service development on a communication network. be able to. Furthermore, since the API is based on media negotiation between terminals in session control, service development using a multimedia compatible terminal is facilitated, and more advanced and highly convenient service development can be realized.

以下、本発明の一実施形態を、図面を参照して説明する。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

図1は、本発明の一実施の形態によるゲートウェイ(セッション制御装置)を用いた情報通信システムの構成を示すブロック図である。このシステムは、ネットワークの制御プロトコルとして、SIP(Session Initiation Protocol)、API(Application Program Interface)提供プロトコルとして、SOAP(Simple Object Access Protocol)を使用している。   FIG. 1 is a block diagram showing a configuration of an information communication system using a gateway (session control device) according to an embodiment of the present invention. This system uses SIP (Session Initiation Protocol) as a network control protocol and SOAP (Simple Object Access Protocol) as an API (Application Program Interface) providing protocol.

図において、400は通信事業者以外のサーバ提供者が管理するアプリケーションサーバ、410は、アプリケーションサーバ400内に設定されたアプリケーション、300は、アプリケーションサーバ400が接続された情報ネットワーク、100は、通信ノードとしての端末500が接続された通信事業者ネットワーク、200は、情報ネットワーク300と通信事業者ネットワーク100との間に接続されたゲートウェイ、210は、ゲートウェイ200内に設置され、公開されるセッション制御APIである。   In the figure, 400 is an application server managed by a server provider other than the carrier, 410 is an application set in the application server 400, 300 is an information network to which the application server 400 is connected, and 100 is a communication node. As a communication carrier network to which the terminal 500 is connected, 200 is a gateway connected between the information network 300 and the communication carrier network 100, and 210 is a session control API that is installed in the gateway 200 and published. It is.

ここで、端末500は、SIPに対応したVoIP端末であり、これらの端末500がSIP信号により制御するセッションのうち、アプリケーション410と連携させるセッションは、必ずゲートウェイ200を通るものとする。すなわち、アプリケーションサーバ400上のアプリケーション410から送信されたセッション制御API呼出要求がゲートウェイ装置200に受信されると、通信事業者ネットワーク100を介して端末500との間で呼制御信号を送受信し、端末500間のセッション制御を行う。   Here, the terminal 500 is a VoIP terminal compatible with SIP, and among the sessions controlled by these terminals 500 using SIP signals, the session linked with the application 410 always passes through the gateway 200. That is, when the session control API call request transmitted from the application 410 on the application server 400 is received by the gateway device 200, a call control signal is transmitted to and received from the terminal 500 via the communication carrier network 100, and the terminal Session control between 500 is performed.

また、端末500が発信するときに、直接相手の端末500に送信するのではなく、ゲートウェイ200を仲介させることにより、アプリケーション410に対して呼制御イベントの通知を行う。このとき、ゲートウェイ200と端末500との間のプロトコルがSIPとなり、ゲートウェイ200とアプリケーションサーバ400との間のプロトコルがSOAPとなり、アプリケーションサーバ400上で動作しているアプリケーション410からSOAPによってセッション制御API210の呼出が可能となる。   Further, when the terminal 500 makes a call, the call control event is notified to the application 410 by mediating the gateway 200 instead of directly transmitting to the partner terminal 500. At this time, the protocol between the gateway 200 and the terminal 500 is SIP, the protocol between the gateway 200 and the application server 400 is SOAP, and the session control API 210 of the application 410 running on the application server 400 is operated by SOAP. Calling is possible.

図2は、本実施形態によるゲートウェイ200の構成を示すブロック図である。アプリケーション410から呼び出すことができる制御API210としては、図2に示すように、接続API211、切断API212、切り替えAPI213、分割API214、結合API215が設定される。また、呼制御イベント通知のためのイベント通知API216も提供される。端末SDP管理機能217は、後述する、端末間メディアネゴシエーションを実現するために、端末500に送信したSDP情報を保存する機能である。メディア終端機能218は、後述する自動音声を端末500へ送信したり、端末500からの音声入力や、ダイアルトーン信号などのメディアを介した入力を受け付けたりする機能である。ゲートウェイ200を実現する上で、メディア終端機能218は、必須ではなく、これを具備しないゲートウェイ200であってもよい。   FIG. 2 is a block diagram illustrating a configuration of the gateway 200 according to the present embodiment. As the control API 210 that can be called from the application 410, a connection API 211, a disconnect API 212, a switching API 213, a split API 214, and a combined API 215 are set as shown in FIG. An event notification API 216 for call control event notification is also provided. The terminal SDP management function 217 is a function for storing SDP information transmitted to the terminal 500 in order to realize inter-terminal media negotiation, which will be described later. The media termination function 218 is a function for transmitting an automatic voice, which will be described later, to the terminal 500, and accepting voice input from the terminal 500 and input via media such as a dial tone signal. In realizing the gateway 200, the media termination function 218 is not essential and may be the gateway 200 that does not include the media termination function 218.

図3は、本実施形態による、端末発信時のメディア種別の決定方法として標準化されているSDP交換による端末間のセッション制御の一例を示すシーケンス図である。端末間のセッション制御においては、端末間の通信で用いるメディア種別の決定が必要である。図3では、INVITE要求時に、端末500(A)が自らのメディア処理能力(対応コーデック等)や、待ち受け状態情報(どのポートで待ち受けしているか)などをSDP形式で記述した情報をofferAとして端末500(B)に送信する(S31)。これを受信した端末500(B)は、offerAで指定された内容を解読した上で、自らのメディア処理能力から当該セッションで用いるコーデック等を決定し、待ち受け状態情報とともにSDP形式で記述して、応答信号に乗せてanswerBとして送信する(S32)。端末500(A)は、応答信号を受信すると、ACKを端末500(B)に送信する(S33)。   FIG. 3 is a sequence diagram showing an example of session control between terminals by SDP exchange standardized as a method for determining a media type at the time of terminal transmission according to the present embodiment. In session control between terminals, it is necessary to determine a media type used for communication between terminals. In FIG. 3, at the time of INVITE request, the terminal 500 (A) uses as the offer A information describing in its SDP format the media processing capability (corresponding codec, etc.) and the waiting state information (which port is waiting). 500 (B) is transmitted (S31). The terminal 500 (B) that has received this decrypts the content specified by offerA, determines the codec to be used in the session from its media processing capability, and describes it in the SDP format together with the standby state information, The response signal is transmitted as answerB (S32). Upon receiving the response signal, terminal 500 (A) transmits ACK to terminal 500 (B) (S33).

図4は、本実施形態による、端末発信時のメディア種別の決定方法として標準化されているSDP交換による端末間のセッション制御の他の例を示すシーケンス図である。図4に示すように、発信端末500(A)は、SDPを設定しないINVITE(セッション接続信号)を送信し(S41)、それを受信した着信端末500(B)が自らのメディア処理能力からofferBを設定して応答信号に乗せて送信し(S42)、それを受けた端末500(A)がACKにanswerAを乗せて送信する(S43)。   FIG. 4 is a sequence diagram showing another example of session control between terminals by SDP exchange standardized as a method for determining a media type at the time of terminal transmission according to the present embodiment. As shown in FIG. 4, the calling terminal 500 (A) transmits INVITE (session connection signal) that does not set SDP (S41), and the receiving terminal 500 (B) that receives it transmits offerB from its media processing capability. Is set and transmitted on the response signal (S42), and the terminal 500 (A) receiving it transmits ACK with the answerA (S43).

上述した図3、図4に示す手順により、双方の端末500(A)、(B)の間でメディアネゴシエーションが行われ、端末500(A)、(B)の能力に応じたメディアが選択される。上述した例は、あくまで端末500が発信する場合の手順であり、端末500の間でセッション制御を行うゲートウェイ200が端末500間のセッション制御を行うセッション制御方法(サードパーティコールコントロール)に、そのまま適用することはできない。   3 and FIG. 4, the media negotiation is performed between the terminals 500 (A) and (B), and the media according to the capabilities of the terminals 500 (A) and (B) is selected. The The above-described example is a procedure when the terminal 500 makes a call to the end, and is applied as it is to the session control method (third party call control) in which the gateway 200 that performs session control between the terminals 500 performs session control between the terminals 500. I can't do it.

ここで、図5乃至図7は、本実施形態による、ゲートウェイ200のセッション制御API210において制御されるセッションのメディア種別を決定する方法の例を示すシーケンス図である。図2に示すようなセッション制御API210において制御されるセッションのメディア種別の決定については、図5に示すように、アプリケーション410から接続要求により制御APIを呼び出す度に(S51)、アプリケーション410が指定する方法や、図6に示すように、アプリケーション410からの接続要求では指定せず(S61)、ゲートウェイ200が設定ファイル等で静的に保持しているSDP情報を元にネゴシエーション(S62、S63)を行う方法や、図7に示すように、アプリケーション410からの接続要求では指定せず(S71)、セッション制御信号のやりとり(S72、S73)の中で、端末間のネゴシエーションによって決定する方法が考えられる。   Here, FIGS. 5 to 7 are sequence diagrams illustrating an example of a method for determining the media type of the session controlled by the session control API 210 of the gateway 200 according to the present embodiment. The determination of the media type of the session controlled by the session control API 210 as shown in FIG. 2 is specified by the application 410 every time the control API is called by the connection request from the application 410 (S51), as shown in FIG. As shown in FIG. 6, the connection request from the application 410 is not specified (S61), and the negotiation (S62, S63) is performed based on the SDP information that the gateway 200 statically holds in the setting file or the like. As shown in FIG. 7, there is a method of determining by negotiation between terminals in the exchange of session control signals (S72, S73) without specifying in the connection request from the application 410 (S71) as shown in FIG. .

但し、図7に示した方法の実現方法については明らかにされていない。そこで、本発明では、ゲートウェイ200における端末SDP管理機能217と、呼制御API211〜216とが、図8〜図16に示すシーケンスに従って動作することにより、図7で示すようなセッション制御APIを実現する。   However, the implementation method of the method shown in FIG. 7 is not clarified. Therefore, in the present invention, the terminal SDP management function 217 and the call control APIs 211 to 216 in the gateway 200 operate according to the sequences shown in FIGS. 8 to 16, thereby realizing the session control API as shown in FIG. .

[接続API]
まず、接続API211について説明する。
図8は、本実施形態による、接続API211が呼び出された場合のシーケンス(RFC3725(4.3.Page6)で示されているFlow3)図である。本シーケンスにおいて、アプリケーション410から端末500(A)、(B)間の接続要求がゲートウェイ200に送信されると(S001)、セッションを識別するセッションIDが返される(S002)。アプリケーション410は、以降のセッション制御(切断等)を、当該セッションIDを用いて実施する。
[Connection API]
First, the connection API 211 will be described.
FIG. 8 is a sequence diagram (Flow 3 shown in RFC 3725 (4.3. Page 6)) when the connection API 211 is called according to the present embodiment. In this sequence, when a connection request between the terminals 500 (A) and (B) is transmitted from the application 410 to the gateway 200 (S001), a session ID for identifying a session is returned (S002). The application 410 performs subsequent session control (disconnection, etc.) using the session ID.

ゲートウェイ200では、接続要求受信後、通信ネットワーク100を介して端末500(A)、(B)間の呼制御を行う(S003〜S005)。この呼制御が実施されると、端末500(A)が呼びだし〜通話状態となる。但し、この時点では、端末500(B)のSDPが不明であるため、端末500(A)には、bh−SDPを送信して無音状態としておく(S005)。bh−SDPは、IPアドレスに「0.0.0.0」が指定されたSDPであり、このようなSDPを受信した端末500は、メディアの送信を停止する。その後、端末500(A)、(B)間のメディアネゴシエーションが行われ、通信が開始される(S006〜S011)。   The gateway 200 performs call control between the terminals 500 (A) and (B) via the communication network 100 after receiving the connection request (S003 to S005). When this call control is performed, terminal 500 (A) enters a call-to-call state. However, since the SDP of the terminal 500 (B) is unknown at this time, bh-SDP is transmitted to the terminal 500 (A) to be in a silent state (S005). The bh-SDP is an SDP in which “0.0.0.0” is designated as the IP address, and the terminal 500 that has received such SDP stops transmission of the media. Thereafter, media negotiation is performed between the terminals 500 (A) and (B), and communication is started (S006 to S011).

本方式の特徴としては、S005で端末500(A)を無音状態で通話中にしておくことと、S006でSDP無設定のINVITEを端末500(B)に送信することにより、S007にて応答信号で返ってきたSDP(offerB)を、S008にてre−INVITEで端末500(A)に送信することにより、端末間でのメディアネゴシエーションを実現している点である。端末500から送信されたSDPを他方の端末に転送する場合(S006〜S007、S009〜S010)に、ゲートウェイ200でSDPを書き換える場合もある。これは、ゲートウェイ200を利用したセッション制御で故意にメディアの種別を変更する場合や、ゲートウェイ200にてメディアの転送先を操作する場合(ゲートウェイ200がメディア通信を仲介する場合など)等に行われる。当然、これらの変換処理が行われず、SDPをそのまま転送するシーケンスもあり得る。また、標準化での規定により、re−INVITEによるメディア更新には、以下のような制限事項がある。   The feature of this method is that the terminal 500 (A) is in a silent state in S005 and that the SDP non-setting INVITE is transmitted to the terminal 500 (B) in S006, so that a response signal is received in S007. By transmitting the SDP (offerB) returned in step S <b> 008 to the terminal 500 (A) by re-INVITE in step S <b> 008, media negotiation between the terminals is realized. When the SDP transmitted from the terminal 500 is transferred to the other terminal (S006 to S007, S009 to S010), the gateway 200 may rewrite the SDP. This is performed when the media type is intentionally changed by session control using the gateway 200, or when the media transfer destination is operated at the gateway 200 (for example, when the gateway 200 mediates media communication). . Of course, there may be a sequence in which these conversion processes are not performed and the SDP is transferred as it is. Further, according to the standardization, there are the following restrictions on media update by re-INVITE.

[メディア更新時の制限事項]
(A)SDP更新する場合には、前回のSDPと同数以上のm=行(メディアタイプを指定する行)を含んでいる必要がある。
(B)ペイロードタイプ(メディアエンコード情報が指定されているa行)を削除してはいけない。削除する場合には、m行のポート番号を0で上書きしたSDPでメディアネゴシエーション(re−INVITE)することにより、端末からのメディア送信を停止[1]させ、その後、m行を更新したSDPで再度メディアネゴシエーション(re−INVITE)を実施[2]する必要がある。
[Restrictions when updating media]
(A) When updating the SDP, it is necessary to include m = rows (rows specifying the media type) equal to or more than the previous SDP.
(B) Do not delete the payload type (a line in which the media encoding information is specified). In the case of deletion, media negotiation (re-INVITE) is performed with SDP in which the port number of m line is overwritten with 0, so that the media transmission from the terminal is stopped [1], and then SDP with updated m line is used. It is necessary to perform [2] media negotiation (re-INVITE) again.

上記の制限事項により、接続中のある端末500に対して接続先の変更・メディアタイプの変更を実施する時に、送信先のアドレス情報のみを更新する場合や、映像・音声を表すペイロードタイプの変更のみを追加する場合には、図9に示すように、アドレス情報を更新したSDPをINVITE/re−INVITE処理の中で1回送信すればよい(S84)。また、更新後に端末500が利用するペイロードタイプを変更したい場合(ペイロードタイプを削除する場合)には、図10に示すように、2回のre−INVITE送信(上記[1]と[2])が必要になる場合がある(S94、S95)。本発明で示している各APIシーケンスは、1回のre−INVITEで完了した場合のみ示していたが、更新後のメディアタイプによっては、上述した図10に示すような手順となることもある。このとき、re−INVITE処理(S84、S94)によってコーデックが変更されるかどうかは、端末500に送信したSDP情報(S82、S92)を保持していなければ判定できないため、本発明では、図2に示すように、端末毎のSDP情報を保持する端末SDP管理機能217をゲートウェイ200に設け、メディアネゴシエーションの結果を保持しておく。   Due to the above restrictions, when changing the connection destination / media type for a connected terminal 500, only the address information of the destination is updated, or the payload type representing video / audio is changed. In the case of adding only the SDP, as shown in FIG. 9, the SDP with the updated address information may be transmitted once in the INVITE / re-INVITE process (S84). When it is desired to change the payload type used by the terminal 500 after the update (when deleting the payload type), as shown in FIG. 10, two re-INVITE transmissions ([1] and [2] above) May be necessary (S94, S95). Each API sequence shown in the present invention is shown only when it is completed by one re-INVITE. However, depending on the updated media type, the procedure shown in FIG. 10 may be used. At this time, whether or not the codec is changed by the re-INVITE process (S84, S94) cannot be determined unless the SDP information (S82, S92) transmitted to the terminal 500 is held. As shown in FIG. 5, a terminal SDP management function 217 that holds SDP information for each terminal is provided in the gateway 200, and the result of media negotiation is held.

また、図8に示すシーケンスをIP電話網に適用した場合、S004で端末500(A)の利用者が受話器を持ち上げてから、S011にて両者の通信が開始されるまで、端末500(A)の利用者は無音状態のまま待ち続けなければならないという問題がある。また、端末500の中にbh−SDP非対応のものがあった場合、該シーケンスは適用できない。   Further, when the sequence shown in FIG. 8 is applied to the IP telephone network, the terminal 500 (A) from when the user of the terminal 500 (A) lifts the handset in S004 until the communication between the two starts in S011. There is a problem that the user of the user must continue to wait in a silent state. Further, when there is a terminal 500 that does not support bh-SDP, the sequence cannot be applied.

図11は、上記問題点を回避するための動作を説明するためのシーケンス図である。図11において、基本的なシーケンスは、図8のシーケンスと変わらないが、S105にて暫定SDPを返し、端末500(A)には、メディア終端機能21により自動音声を流しておくところが異なる。暫定SDPには、ゲートウェイ200のアドレス等の任意のアドレスと任意メディア種別などが設定される。端末500(A)は、通常の端末とのセッション制御が行われると錯覚する。これにより、端末500の中にbh−SDPに非対応のものがあった場合でも、セッション制御が可能である。また、自動音声については、S104で指定された端末500(A)のSDP(offerA)に対してメディア終端機能218を利用して自動音声を流す。自動音声としては、呼びだし音や、音声による案内の他、故意に無音を指定する場合もある。   FIG. 11 is a sequence diagram for explaining an operation for avoiding the above problem. In FIG. 11, the basic sequence is not different from the sequence of FIG. 8, but the provisional SDP is returned in S 105, and automatic sound is sent to the terminal 500 (A) by the media termination function 21. In the provisional SDP, an arbitrary address such as an address of the gateway 200 and an arbitrary media type are set. Terminal 500 (A) has an illusion that session control with a normal terminal is performed. Thereby, session control is possible even if there is a terminal 500 that does not support bh-SDP. As for the automatic voice, the automatic voice is played using the media termination function 218 to the SDP (offerA) of the terminal 500 (A) designated in S104. As automatic voice, there is a case in which silence is intentionally designated in addition to calling sound or voice guidance.

[切断API]
次に、切断API212について説明する。
切断API212については、RFC3725(7.Page10)の手順で実現可能である。これによれば、接続API呼びだし時などに払い出されるセッションIDを指定された切断要求をゲートウェイ200が受信すると、当該セッションに接続された、端末500にBYEを送信し、セッションを切断する。
[Cut API]
Next, the cutting API 212 will be described.
The cutting API 212 can be realized by the procedure of RFC3725 (7. Page 10). According to this, when the gateway 200 receives a disconnection request with a session ID assigned when calling a connection API, BYE is transmitted to the terminal 500 connected to the session, and the session is disconnected.

[切り替えAPI]
次に、切り替えAPI213について説明する。
図12は、本実施形態による、切り替えAPI213が呼び出された場合のシーケンス図である。まず、図12のシーケンスでは、ゲートウェイ200がアプリケーション410から切り替え要求を受信すると(S201)、アプリケーション410に応答を返し(S202)、その後、セッションID[1]で指定されたセッション[1]の端末500(A)の接続先を、端末500(B)から端末500(C)へ切り替える呼制御を実施する。
[Switching API]
Next, the switching API 213 will be described.
FIG. 12 is a sequence diagram when the switching API 213 is called according to the present embodiment. First, in the sequence of FIG. 12, when the gateway 200 receives a switching request from the application 410 (S201), a response is returned to the application 410 (S202), and then the terminal of the session [1] specified by the session ID [1]. Call control is performed to switch the connection destination of 500 (A) from terminal 500 (B) to terminal 500 (C).

該呼制御では、まず、切り替え後に切断される端末500(B)にBYEを送信し、切断する(S203、S204)。次に、切り替え処理中に端末500(A)が無音状態となることを防ぐために、端末500(A)へのre−INVITE送信(S205〜S207)によって自動音声に接続させる。但し、該シーケンスにおいて、自動音声への接続(S205〜S207)は必須ではない。その後、端末500(C)にSDP無設定のINVITE送信し(S208)、応答して受け取ったofferCを端末500(A)にre−INVITE送信することにより、端末500(A)、(C)間でのSDP交換が行われ(S208〜S213)、端末間でメディアネゴシエーションされたセッションが確立する。   In the call control, first, BYE is transmitted to the terminal 500 (B) to be disconnected after switching, and disconnected (S203, S204). Next, in order to prevent the terminal 500 (A) from entering a silent state during the switching process, re-INVITE transmission (S205 to S207) to the terminal 500 (A) is connected to automatic voice. However, in the sequence, connection to automatic voice (S205 to S207) is not essential. Thereafter, INVITE transmission without SDP setting is transmitted to the terminal 500 (C) (S208), and the offerC received in response is transmitted to the terminal 500 (A) by re-INVITE, whereby the terminals 500 (A) and (C) Is exchanged (S208 to S213), and a session in which media is negotiated between terminals is established.

但し、該シーケンスの制限事項として、端末500(C)がINVITE(S208)に対してビジー応答や、エラー応答などを返してきた場合、端末500(A)の接続先がなくなり、切断することになる。端末500(C)がどのような応答を返してくるかは、INVITEを送信してみなければ分からないため、切り替えを試行するが、端末500(C)への接続に失敗した場合には、切り替え処理を実施しない、というAPI仕様を実現できない。   However, as a restriction of the sequence, when the terminal 500 (C) returns a busy response or an error response to the INVITE (S208), the terminal 500 (A) has no connection destination and is disconnected. Become. Since it is not known what kind of response the terminal 500 (C) will return unless it tries to send INVITE, switching is attempted, but if connection to the terminal 500 (C) fails, The API specification that the switching process is not performed cannot be realized.

図13は、図12のシーケンスの制限事項である端末切り替え失敗時の処理を改善したシーケンス図である。該シーケンスでは、端末500(B)の切断の前に端末500(C)へのINVITE送信を最初に実施する(S303)。そして、端末500(C)から正常応答(200 OK)が返ってくると(S304)、その後に端末500(B)への切断処理を行い(S305、S306)、端末500(A)、(C)間のメディアネゴシエーションを行う(S307〜S310)。該シーケンスでは、端末500(C)へのINVITEに対してビジー応答等のエラー応答が返ってきた場合に、以降の切り替え処理を中止することができる。   FIG. 13 is a sequence diagram in which processing at the time of terminal switching failure, which is a limitation of the sequence of FIG. 12, is improved. In this sequence, before the terminal 500 (B) is disconnected, INVITE transmission to the terminal 500 (C) is first performed (S303). When a normal response (200 OK) is returned from the terminal 500 (C) (S304), the terminal 500 (B) is then disconnected (S305, S306), and the terminals 500 (A), (C ) Is negotiated (S307 to S310). In this sequence, when an error response such as a busy response is returned in response to INVITE to the terminal 500 (C), the subsequent switching process can be stopped.

[分割API]
次に、分割API214について説明する。
図14は、本実施形態による、分割API214が呼び出された場合のシーケンス図である。図14のシーケンスでは、ゲートウェイ200がアプリケーション410からセッションID[1]に対する分割要求を受信すると(S401)、アプリケーション410に分割後に生成されるセッションID[2]を含む応答を返し(S402)、その後、セッションID[1]で指定されたセッション端末500(A)の接続先を端末500(B)から端末500(C)へ切り替え、端末500(B)の接続先を端末500(D)へ切り替え、セッションID[2]を確立する呼制御を実施する。
[Split API]
Next, the divided API 214 will be described.
FIG. 14 is a sequence diagram when the split API 214 is called according to the present embodiment. In the sequence of FIG. 14, when the gateway 200 receives a split request for the session ID [1] from the application 410 (S401), a response including the session ID [2] generated after the split is returned to the application 410 (S402). The connection destination of the session terminal 500 (A) specified by the session ID [1] is switched from the terminal 500 (B) to the terminal 500 (C), and the connection destination of the terminal 500 (B) is switched to the terminal 500 (D). Then, call control for establishing session ID [2] is performed.

該呼制御では、まず、端末500(C)にSDP無設定のINVITEを送信し(S403)、応答(200 OK)を受信し(S404)、その後、端末500(B)に分割処理中に自動音声を流すためのre−INVITEを送信する(S405〜S407)。その後、端末500(C)からの応答に乗っているSDP(offerC)をre−INVITEで端末500(A)に送信することにより、端末500(A)、(C)間のメディアネゴシエーションを実施しセッション[1]を確立させる(S408〜S411)。次に、端末500(D)にSDP無設定のINVITEを送信し(S412)、応答(200 OK)を受信し(S413)、その後、応答信号に乗っているSDP(offerD’)を端末500(B)に送信することにより、端末500(B)、(D)間のメディアネゴシエーションを実施し、セッション[2]を確立させる(S414〜S417)。   In the call control, first, INVITE without SDP setting is transmitted to the terminal 500 (C) (S403), a response (200 OK) is received (S404), and then the terminal 500 (B) automatically performs the split processing. A re-INVITE for sending audio is transmitted (S405 to S407). Thereafter, the SDP (offerC) on the response from the terminal 500 (C) is transmitted to the terminal 500 (A) by re-INVITE, thereby performing media negotiation between the terminals 500 (A) and (C). Session [1] is established (S408 to S411). Next, INVITE without SDP setting is transmitted to terminal 500 (D) (S412), a response (200 OK) is received (S413), and then SDP (offerD ′) on the response signal is transmitted to terminal 500 ( By transmitting to B), media negotiation between the terminals 500 (B) and (D) is performed, and the session [2] is established (S414 to S417).

[結合API215]
次に、結合API215について説明する。
図15は、本実施形態による、結合API215が呼び出された場合のシーケンス図である。図15のシーケンスでは、ゲートウェイ200がアプリケーション410から結合要求(S601)を受信すると、アプリケーション410に応答を返し(S602)、その後、アプリケーション410から指定されたセッション[1]の端末500(A)と、もう1つ指定されたセッション[2]の端末500(C)を新たに接続させる呼制御を実施する。
[Binding API 215]
Next, the binding API 215 will be described.
FIG. 15 is a sequence diagram when the binding API 215 is called according to the present embodiment. In the sequence of FIG. 15, when the gateway 200 receives a join request (S601) from the application 410, it returns a response to the application 410 (S602), and then the terminal 500 (A) of the session [1] designated by the application 410 Then, call control for newly connecting the terminal 500 (C) of the other designated session [2] is performed.

該呼制御では、まず、結合対象でない端末500(B)、端末(D)にBYEを送信し、切断する(S603〜S606)。その後、端末500(A)、(C)間でメディアネゴシエーションを行う(S607〜S612)。端末500(C)のre−INVITE送信時(S609)にSDPとしてofferA’を設定しているが、これは、offerAと端末SDP管理機能217で保持している値を利用して生成する。より詳細には、まず、端末500(A)のre−INVITE送信時(S607)にSDP無設定のre−INVITEを送信し、応答として端末500(A)のofferAを受信する。その後、端末500(C)に対するre−INVITE生成時に、offerAと端末SDP管理機能217で保持している端末500(C)向けのSDPの値を利用して、上記[メディア更新時の制限事項]に従ったメディア交換を実施する。このように、端末SDP管理機能217を用いて、S607〜S612のメディアネゴシエーション処理を実施することにより、端末500(A)、(C)間のSDP交換によるセッション確立を実現できる。但し、該シーケンスの制限事項として、S607〜S612において、端末500(A)、(C)間のメディアネゴシエーションが失敗するなどのエラーが発生した場合、分割処理を実施しない、というAPI仕様を実現できない。   In the call control, first, BYE is transmitted to the terminal 500 (B) and the terminal (D) that are not to be combined and disconnected (S603 to S606). Thereafter, media negotiation is performed between the terminals 500 (A) and (C) (S607 to S612). When the terminal 500 (C) transmits re-INVITE (S609), “offerA ′” is set as the SDP, which is generated using the value held by the “offerA” and the terminal SDP management function 217. More specifically, first, when re-INVITE is transmitted from terminal 500 (A) (S607), re-INVITE without SDP is transmitted, and offerA of terminal 500 (A) is received as a response. After that, when re-INVITE is generated for the terminal 500 (C), using the SDP value for the terminal 500 (C) held by the offer A and the terminal SDP management function 217, the above [Restrictions at the time of media update] Exchange media according to In this way, by performing the media negotiation processing of S607 to S612 using the terminal SDP management function 217, session establishment by SDP exchange between the terminals 500 (A) and (C) can be realized. However, as a restriction of the sequence, in S607 to S612, when an error such as failure of media negotiation between the terminals 500 (A) and (C) occurs, the API specification that the division process is not performed cannot be realized. .

図16は、図15のシーケンスの制限事項である結合失敗時の処理を改善した動作を説明するためのシーケンス図である。該シーケンスでは、まず、端末500(B)、(D)の切断の前に端末500(A)、(C)のメディアネゴシエーションを実施する(S703〜S706)。そして、メディアネゴシエーションが正常終了した後、端末500(B)、(D)への切断処理を行う(S707〜S710)。該シーケンスでは、端末(A)、(C)間のメディアネゴシエーションがエラー終了した場合であっても、以降の結合処理を中止することができる。   FIG. 16 is a sequence diagram for explaining an operation in which the process at the time of the unsuccessful combination, which is a limitation of the sequence in FIG. 15, is improved. In the sequence, first, before the terminals 500 (B) and (D) are disconnected, media negotiation of the terminals 500 (A) and (C) is performed (S703 to S706). Then, after media negotiation ends normally, disconnection processing to terminals 500 (B) and (D) is performed (S707 to S710). In this sequence, even if the media negotiation between the terminals (A) and (C) ends in error, the subsequent combining process can be stopped.

[呼制御イベント通知API]
次に、呼制御イベント通知API216について説明する。
図17は、本実施形態による、呼制御イベント通知API216が呼び出された場合のシーケンス図である。なお、図17では、端末500(A)が端末500(B’)に発信した場合のシーケンスを示している。ここで、端末500(B’)の端末を識別するためのURI(Uniform Resource Identifier)は、端末500(B)と同一の場合もある。
[Call control event notification API]
Next, the call control event notification API 216 will be described.
FIG. 17 is a sequence diagram when the call control event notification API 216 is called according to the present embodiment. FIG. 17 shows a sequence when terminal 500 (A) transmits to terminal 500 (B ′). Here, a URI (Uniform Resource Identifier) for identifying the terminal of the terminal 500 (B ′) may be the same as that of the terminal 500 (B).

端末500(A)が(B’)発信すると(S801)、直接、端末500(B)にINVITEがルーチングされず、まず、ゲートウェイ200がINVITEを受ける。端末発のINVITEを受けると、ゲート200は、AからB’に着信したことを着信通知APIとしてアプリケーション410に通知する(S802)。その際、セッションID[1]をアプリケーション410に通知することにより、アプリケーション410は、これ以降に呼制御APIを用いたセッションの制御が可能となる。アプリケーション410は、イベント通知に対して応答を返す(S803)。応答には、セッションに対する制御情報(セッションを強制切断する、接続先を変更する等)を乗せることを可能とする。これにより、アプリケーション410による着信時のセッション制御動作指定を可能としている。   When terminal 500 (A) sends (B ′) (S801), INVITE is not directly routed to terminal 500 (B), and gateway 200 receives INVITE first. Upon receiving the INVITE from the terminal, the gate 200 notifies the application 410 that an incoming call has arrived from A to B 'as an incoming call notification API (S802). At that time, by notifying the application 410 of the session ID [1], the application 410 can control the session using the call control API thereafter. The application 410 returns a response to the event notification (S803). The response can include control information for the session (forcibly disconnecting the session, changing the connection destination, etc.). Thereby, the session control operation designation at the time of incoming call by the application 410 is made possible.

アプリケーション410から応答が返ってきた後、ゲートウェイ200は、端末500(B)にINVITEを転送し、セッション[1]の確立が行われる(S804〜S808)。その後、通信確立の通知をアプリケーション410に送信する(S809)。アプリケーション410は、受け取る通知(S802、S809)を、ゲートウェイ200に対して事前に指定することを可能とする。但し、該シーケンスの問題点として、アプリケーション410の応答処理(S803)が遅れると、発信した端末500(A)への応答が遅くなり、無音状態が続いてしまうという問題が発生する可能性がある。   After a response is returned from the application 410, the gateway 200 transfers INVITE to the terminal 500 (B), and session [1] is established (S804 to S808). Thereafter, a notification of communication establishment is transmitted to the application 410 (S809). The application 410 can specify the received notification (S802, S809) to the gateway 200 in advance. However, as a problem of the sequence, if the response process (S803) of the application 410 is delayed, there is a possibility that the response to the terminal 500 (A) that made the transmission will be delayed and the silent state will continue. .

図18は、上記問題を改善した動作を説明するためのシーケンス図である。図18において、該シーケンスでは、S904でアプリケーション410へイベント(着信)を通知する前に、自動音声等に接続しておく(S901〜S903)。そして、アプリケーション410から応答が返った後(S905)、端末(A)、(B)間のre−INVITE処理によりメディアネゴシエーションを行い、セッション[1]を確立する。これにより、アプリケーション410からの応答が遅れた場合でも、端末500(A)の無音時間を短縮することができる。   FIG. 18 is a sequence diagram for explaining an operation in which the above problem is improved. In FIG. 18, in this sequence, before notification of an event (incoming call) to the application 410 in S <b> 904, connection to automatic voice or the like is made (S <b> 901 to S <b> 903). Then, after a response is returned from the application 410 (S905), media negotiation is performed by re-INVITE processing between the terminals (A) and (B), and the session [1] is established. Thereby, even when the response from the application 410 is delayed, the silent time of the terminal 500 (A) can be shortened.

上述した実施形態によれば、以下の効果が得られる。
(1)アプリケーション410の開発者にとって利便性の高いセッション制御手段が提供され、通信ネットワーク100上の端末500間のセッション制御を利用した高度なサービスが開発可能となる。
(2)端末間メディアネゴシエーションをベースとしたセッション制御APIが実現されることにより、音声・映像・データ等マルチメディア対応端末を対象としたサービス開発が容易に可能となる。
(3)着信イベント通知APIの実現により、端末発信によって生成されたセッションの場合でも、セッション制御APIとの組み合わせによる端末500間のメディアネゴシエーションを利用したサービスアプリケーション開発が可能となる。
(4)端末500に対しては、多くの端末でサポートされているセッション制御信号のみで構成されるセッション制御を行うため、多様なセッション制御を実現しつつも対応端末が制限されない。
According to the embodiment described above, the following effects can be obtained.
(1) A session control unit that is convenient for the developer of the application 410 is provided, and an advanced service using session control between the terminals 500 on the communication network 100 can be developed.
(2) By realizing the session control API based on the inter-terminal media negotiation, service development for multimedia compatible terminals such as voice, video, and data can be easily performed.
(3) By realizing the incoming event notification API, it is possible to develop a service application that uses media negotiation between terminals 500 in combination with the session control API even in the case of a session generated by terminal transmission.
(4) For the terminal 500, session control including only session control signals supported by many terminals is performed, so that the corresponding terminals are not limited while realizing various session controls.

なお、上述した端末500、ゲートウェイ200、及びアプリケーションサーバ400などは、内部にコンピュータシステムを有していてもよい。そして、上述した端末500、ゲートウェイ200のセッション制御API210、及びアプリケーションサーバ400のアプリケーション410の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記録されており、この記録媒体に記録されたプログラムをコンピュータシステムが読み出して実行することにより、上記処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。   Note that the terminal 500, the gateway 200, the application server 400, and the like described above may have a computer system therein. The operation processes of the terminal 500, the session control API 210 of the gateway 200, and the application 410 of the application server 400 described above are recorded on a computer-readable recording medium in the form of a program, and recorded on this recording medium. The above processing may be performed by the computer system reading and executing the program. Here, the “computer system” may include an OS and hardware such as peripheral devices. Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used. The “computer-readable recording medium” means a flexible disk, a magneto-optical disk, a ROM, a writable nonvolatile memory such as a flash memory, a portable medium such as a CD-ROM, a hard disk built in a computer system, etc. This is a storage device.

さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   Further, the “computer-readable recording medium” means a volatile memory (for example, DRAM (Dynamic DRAM) in a computer system that becomes a server or a client when a program is transmitted through a network such as the Internet or a communication line such as a telephone line. Random Access Memory)), etc., which hold programs for a certain period of time. The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

本発明の一実施の形態によるゲートウェイ(セッション制御装置)を用いた情報通信システムの構成を示すブロック図である。It is a block diagram which shows the structure of the information communication system using the gateway (session control apparatus) by one embodiment of this invention. 本実施形態によるゲートウェイ200の構成を示すブロック図である。It is a block diagram which shows the structure of the gateway 200 by this embodiment. 本実施形態による、端末発信時のメディア種別の決定方法として標準化されているSDP交換による端末間のセッション制御の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the session control between the terminals by SDP exchange standardized as a media type determination method at the time of terminal transmission by this embodiment. 本実施形態による、端末発信時のメディア種別の決定方法として標準化されているSDP交換による端末間のセッション制御の他の例を示すシーケンス図である。It is a sequence diagram which shows the other example of the session control between the terminals by SDP exchange standardized as the determination method of the media type at the time of terminal transmission by this embodiment. 本実施形態による、ゲートウェイ200のセッション制御API210において制御されるセッションのメディア種別の決定する方法の例を示すシーケンス図である。It is a sequence diagram which shows the example of the method of determining the media type of the session controlled in the session control API210 of the gateway 200 by this embodiment. 本実施形態による、ゲートウェイ200のセッション制御API210において制御されるセッションのメディア種別の決定する方法の例を示すシーケンス図である。It is a sequence diagram which shows the example of the method of determining the media type of the session controlled in the session control API210 of the gateway 200 by this embodiment. 本実施形態による、ゲートウェイ200のセッション制御API210において制御されるセッションのメディア種別の決定する方法の例を示すシーケンス図である。It is a sequence diagram which shows the example of the method of determining the media type of the session controlled in the session control API210 of the gateway 200 by this embodiment. 本実施形態による、接続API211が呼び出された場合のシーケンス図である。It is a sequence diagram when connection API211 is called by this embodiment. 接続中のある端末500に対して接続先の変更・メディアタイプの変更を実施する際のシーケンス図である。It is a sequence diagram at the time of implementing change of a connection destination and change of a media type for a certain terminal 500 being connected. 接続中のある端末500ペイロードタイプの変更を実施する際のシーケンス図である。It is a sequence diagram at the time of implementing change of the terminal 500 payload type in connection. 本実施形態による、接続API211が呼び出された際の制限事項を回避するための動作を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the operation | movement for avoiding the restriction | limiting matter at the time of the connection API211 being called by this embodiment. 本実施形態による、切り替えAPI213が呼び出された場合のシーケンス図である。It is a sequence diagram when switching API213 is called by this embodiment. 本実施形態による、切り替えAPI213が呼び出された際の制限事項を回避するための動作を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the operation | movement for avoiding the restriction | limiting matter at the time of the switching API213 being called by this embodiment. 本実施形態による、分割API214が呼び出された場合のシーケンス図である。FIG. 10 is a sequence diagram when a divided API 214 is called according to the present embodiment. 本実施形態による、結合API215が呼び出された場合のシーケンス図である。It is a sequence diagram when combined API215 is called by this embodiment. 本実施形態による、結合API215が呼び出された際の制限事項を回避するための動作を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the operation | movement for avoiding the restriction | limiting matter when combined API215 is called by this embodiment. 本実施形態による、呼制御イベント通知API216が呼び出された場合のシーケンス図である。It is a sequence diagram when the call control event notification API 216 is called according to the present embodiment. 本実施形態による、呼制御イベント通知API216が呼び出された際の問題を改善するための動作を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the operation | movement for improving the problem at the time of the call control event notification API216 being called by this embodiment.

符号の説明Explanation of symbols

100 通信事業者ネットワーク
200 ゲートウェイ
210 セッション制御API
211 接続API
212 切断API
213 切り替えAPI
214 分割API
215 結合API
216 イベント通知API
217 端末SDP管理機能
218 メディア終端機能
300 情報ネットワーク
400 アプリケーションサーバ
410 アプリケーション
500 端末
100 carrier network 200 gateway 210 session control API
211 Connection API
212 Cutting API
213 switching API
214 Split API
215 Binding API
216 Event Notification API
217 Terminal SDP management function 218 Media termination function 300 Information network 400 Application server 410 Application 500 Terminal

Claims (9)

アプリケーションサーバからの指令を受け、通信事業者のネットワークに接続された通信ノード間のセッションを制御するセッション制御装置において、
前記アプリケーションサーバからの指令に応じて前記通信ノード間のセッションを確立するセッション確立手段と、
前記通信ノード間において確立されたセッションを示すセッション識別子を前記アプリケーションサーバへ送信するセッション識別子通知手段と、
前記通信ノード間に確立されたセッションを前記アプリケーションサーバからの指令に応じて制御するセッション制御手段と、
前記通信ノードとのセッション確立時に前記通信ノード間でメディアネゴシエーションを行う管理手段と、
を具備することを特徴とするセッション制御装置。
In a session control device that receives a command from an application server and controls a session between communication nodes connected to a network of a communication carrier,
Session establishment means for establishing a session between the communication nodes in response to a command from the application server;
Session identifier notification means for transmitting a session identifier indicating a session established between the communication nodes to the application server;
Session control means for controlling a session established between the communication nodes according to a command from the application server;
A management means for performing media negotiation between the communication nodes when establishing a session with the communication node;
A session control apparatus comprising:
前記前記管理手段は、通信ノード毎のメディアネゴシエーション結果を保持する保持手段を有し、前記通信ノード毎のメディアネゴシエーション結果に基づいて、メディアタイプの変更に伴うコーデック変更を判定することを特徴とする請求項1記載のセッション制御装置。   The management means includes holding means for holding a media negotiation result for each communication node, and determines a codec change accompanying a change in media type based on the media negotiation result for each communication node. The session control apparatus according to claim 1. 前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中のセッションの第1、第2の通信ノードの一方の接続先を第3の通信ノードに切り替える切り替え手段を有することを特徴とする請求項1記載のセッション制御装置。   The session control means has switching means for switching one connection destination of the first and second communication nodes of the session being established to a third communication node based on a command from the application server. The session control apparatus according to claim 1. 前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中のセッションの第1、第2の通信ノードの接続先を、それぞれ第3、第4の通信ノードに切り替える分割手段を有することを特徴とする請求項1記載のセッション制御装置。   The session control means has a dividing means for switching the connection destinations of the first and second communication nodes of the established session to the third and fourth communication nodes, respectively, based on a command from the application server. The session control apparatus according to claim 1, wherein: 前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中の第1のセッションの一方の通信ノードと、確立中の第2のセッションの一方の通信ノードとを、セッションを確立したまま再結合する再結合手段を有することを特徴とする請求項1記載のセッション制御装置。   The session control means re-establishes one communication node of the first session being established and one communication node of the second session being established with the session established, based on a command from the application server. 2. The session control apparatus according to claim 1, further comprising recombining means for combining. 前記セッション制御手段は、前記アプリケーションサーバからの指令に基づき、確立中のセッションを切断する切断手段を有することを特徴とする請求項1記載のセッション制御装置。   The session control device according to claim 1, wherein the session control unit includes a disconnecting unit that disconnects an established session based on a command from the application server. 前記セッション制御手段は、通信ノード間でセッションが確立された場合に、確立された当該セッションを特定するセッション識別子を前記アプリケーションサーバに通知することを特徴とする請求項1乃至6のいずれかに記載のセッション制御装置。   7. The session control means, when a session is established between communication nodes, notifies the application server of a session identifier that identifies the established session. Session controller. アプリケーションサーバからの指令を受け、通信事業者のネットワークに接続された通信ノード間のセッションを制御するセッション制御方法において、
前記アプリケーションサーバからの指令に応じて前記通信ノード間のセッションを確立するステップと、
前記通信ノード間において確立されたセッションを示すセッション識別子を前記アプリケーションサーバへ送信するステップと、
前記通信ノード間に確立されたセッションを前記アプリケーションサーバからの指令に応じて制御するステップと、
前記通信ノードとのセッション確立時に前記通信ノード間でメディアネゴシエーションを行うステップと、
を有することを特徴とするセッション制御方法。
In a session control method for receiving a command from an application server and controlling a session between communication nodes connected to a network of a communication carrier,
Establishing a session between the communication nodes in response to a command from the application server;
Transmitting a session identifier indicating a session established between the communication nodes to the application server;
Controlling a session established between the communication nodes according to a command from the application server;
Performing media negotiation between the communication nodes when establishing a session with the communication node;
A session control method characterized by comprising:
アプリケーションサーバからの指令を受け、通信事業者のネットワークに接続された通信ノード間のセッションを制御するコンピュータに、
前記アプリケーションサーバからの指令に応じて前記通信ノード間のセッションを確立するステップと、
前記通信ノード間において確立されたセッションを示すセッション識別子を前記アプリケーションサーバへ送信するステップと、
前記通信ノード間に確立されたセッションを前記アプリケーションサーバからの指令に応じて制御するステップと、
前記通信ノードとのセッション確立時に前記通信ノード間でメディアネゴシエーションを行うステップと、
を実行させるためのプログラム。
A computer that receives a command from the application server and controls a session between communication nodes connected to the network of the carrier.
Establishing a session between the communication nodes in response to a command from the application server;
Transmitting a session identifier indicating a session established between the communication nodes to the application server;
Controlling a session established between the communication nodes according to a command from the application server;
Performing media negotiation between the communication nodes when establishing a session with the communication node;
A program for running
JP2008066274A 2008-03-14 2008-03-14 Session control device, session control method, and program Pending JP2009223533A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008066274A JP2009223533A (en) 2008-03-14 2008-03-14 Session control device, session control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008066274A JP2009223533A (en) 2008-03-14 2008-03-14 Session control device, session control method, and program

Publications (1)

Publication Number Publication Date
JP2009223533A true JP2009223533A (en) 2009-10-01

Family

ID=41240255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008066274A Pending JP2009223533A (en) 2008-03-14 2008-03-14 Session control device, session control method, and program

Country Status (1)

Country Link
JP (1) JP2009223533A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011217079A (en) * 2010-03-31 2011-10-27 Nippon Telegr & Teleph Corp <Ntt> Media session termination method and program, and media session termination device
JP2013515417A (en) * 2009-12-21 2013-05-02 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ Content distribution system
WO2016013529A1 (en) * 2014-07-22 2016-01-28 株式会社リコー Control system, communication terminal, communication system, control method, and program
US10122967B2 (en) 2015-01-15 2018-11-06 Ricoh Company, Ltd. Control system, communications terminal, communications system, control method, and recording medium
US10182081B2 (en) 2015-02-19 2019-01-15 Ricoh Company, Ltd. Control system, communication system, control method, and recording medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005026831A (en) * 2003-06-30 2005-01-27 Sharp Corp Communication relaying apparatus and information communication apparatus
JP2007020062A (en) * 2005-07-11 2007-01-25 Canon Inc Connection method of network camera in communication system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005026831A (en) * 2003-06-30 2005-01-27 Sharp Corp Communication relaying apparatus and information communication apparatus
JP2007020062A (en) * 2005-07-11 2007-01-25 Canon Inc Connection method of network camera in communication system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013515417A (en) * 2009-12-21 2013-05-02 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ Content distribution system
JP2011217079A (en) * 2010-03-31 2011-10-27 Nippon Telegr & Teleph Corp <Ntt> Media session termination method and program, and media session termination device
WO2016013529A1 (en) * 2014-07-22 2016-01-28 株式会社リコー Control system, communication terminal, communication system, control method, and program
JPWO2016013529A1 (en) * 2014-07-22 2017-04-27 株式会社リコー Control system, communication terminal, communication system, control method, and program
US10044870B2 (en) 2014-07-22 2018-08-07 Ricoh Company, Ltd. Control system, communications terminal, communications system, control method, and recording medium
US10122967B2 (en) 2015-01-15 2018-11-06 Ricoh Company, Ltd. Control system, communications terminal, communications system, control method, and recording medium
US10182081B2 (en) 2015-02-19 2019-01-15 Ricoh Company, Ltd. Control system, communication system, control method, and recording medium

Similar Documents

Publication Publication Date Title
RU2499359C2 (en) Client controlled dynamic call forwarding
JP4664084B2 (en) System and method for facilitating device control for third party call control and third party call control
KR102253561B1 (en) Tunneling voip call control on cellular networks
TWI404386B (en) Communication system and method for using multi-tiered registration session initiation protocol (sip)
JP2007006047A (en) Voice ip telephone method and device
TW200304303A (en) Apparatus and method for computer telephone integration in packet switched telephone networks
JP5120380B2 (en) Communication method, communication system, server, and program related to transition of session management
US9591036B2 (en) Method and apparatus for dynamic device pairing
US8510435B2 (en) Highly scalable and distributed call/media modeling and control framework
JP2010529791A (en) Method and apparatus for implementing multimedia customized ringtone and multimedia customized ringtone service
JP2009223533A (en) Session control device, session control method, and program
JP4723676B2 (en) COMMUNICATION METHOD, SERVER, AND PROGRAM FOR SESSION STATUS NOTIFICATION
JP2008098750A (en) Ip telephone terminal switching device and method
KR100587945B1 (en) Method And System For Providing Call Transfer Service
JP4523012B2 (en) Session control apparatus, control method, and program
JP5004901B2 (en) Session control event notification API providing apparatus, session control event notification API providing method, and session control event notification API providing program
KR100596003B1 (en) Method for providing barge-in service and IP switch using the method
KR100596004B1 (en) Method for controlling a communication device using an internet protocol exchanger and apparatus of enabling the method
JP5715584B2 (en) APL-GW-FE
KR20060035081A (en) Method of internet protocol terminals for providing a plurality of call services and ip terminals enabling the method
US8041013B2 (en) Transferring multiple dialogs of a call
JP2010004473A (en) Communication terminal, communication control method, and program
JP2014011662A (en) Telephone system, telephone terminal, server device, and telephone system control method
JP2006166199A (en) Method of transfer during communication, call processing server, program, and recording medium
JP2012084978A (en) Transfer service system, session control server, and transfer service control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111011

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111207

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120131