JP4834759B2 - Media server, session recovery method, and computer program - Google Patents

Media server, session recovery method, and computer program Download PDF

Info

Publication number
JP4834759B2
JP4834759B2 JP2009179087A JP2009179087A JP4834759B2 JP 4834759 B2 JP4834759 B2 JP 4834759B2 JP 2009179087 A JP2009179087 A JP 2009179087A JP 2009179087 A JP2009179087 A JP 2009179087A JP 4834759 B2 JP4834759 B2 JP 4834759B2
Authority
JP
Japan
Prior art keywords
call
voice
information
processing
recovery
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
JP2009179087A
Other languages
Japanese (ja)
Other versions
JP2011035606A (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.)
NTT Data Corp
Original Assignee
NTT Data 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 NTT Data Corp filed Critical NTT Data Corp
Priority to JP2009179087A priority Critical patent/JP4834759B2/en
Publication of JP2011035606A publication Critical patent/JP2011035606A/en
Application granted granted Critical
Publication of JP4834759B2 publication Critical patent/JP4834759B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、音声自動応答中に故障が発生した際のセッションフェールオーバを行なうメディアサーバ、セッション復旧方法及びコンピュータプログラムに関する。   The present invention relates to a media server, a session recovery method, and a computer program that perform session failover when a failure occurs during automatic voice response.

固定電話では、エンドユーザの電話料金は距離により変わる。そこで、音声による自動応答を行なうIVR(Interactive Voice Response)機能を全国規模で提供する場合、エンドユーザの電話料金を低く抑えるために、通信距離が短くなるようメディアサーバを全国各地に配置することが多い。しかし、全国各地にメディアサーバを配置すると、設備や保守などにかかるコストが高くなってしまうという問題が生じる。   With landline telephones, end-user telephone charges vary with distance. Therefore, when providing an IVR (Interactive Voice Response) function that performs automatic voice response on a nationwide scale, media servers may be placed throughout the country to shorten the communication distance in order to keep end-user telephone charges low. Many. However, when media servers are arranged throughout the country, there is a problem that costs for equipment and maintenance increase.

一方、ここ10年の間にインターネットやIP(Internet Protocol)電話の普及がすすみ、また、VoIP(Voice over IP)やインスタントメッセージ等のリアルタイムサービスに用いられるプロトコルであるSIP(Session Initiation Protocol)の標準化が行なわれ、通信キャリアによるIP電話サービス(VoIPサービス)も広く提供されてきている。   On the other hand, the Internet and IP (Internet Protocol) telephones have been popularized over the past 10 years, and SIP (Session Initiation Protocol), which is a protocol used for real-time services such as VoIP (Voice over IP) and instant messaging, has been standardized. IP telephone services (VoIP services) by communication carriers have been widely provided.

VoIPでは通信費が距離に依存して変化しないため、VoIPを用いれば、各地に点在していたメディアサーバを1箇所に集約することができる。近年は、IP電話サービスの品質が安定し、信頼性も高くなってきたことから、今後、コスト削減のためVoIPを用いたメディアサーバの集約が進むと考えられる。しかし、メディアサーバを集約すると、故障時には影響が全国に及んでしまうため、メディアサーバにはこれまで以上の高い信頼性が要求されるようになる。   Since the communication cost does not change depending on the distance in VoIP, if VoIP is used, it is possible to consolidate media servers scattered in various places in one place. In recent years, the quality of IP telephone services has become stable and the reliability has increased, so it is considered that media servers using VoIP will continue to be consolidated in order to reduce costs. However, if the media servers are consolidated, the media server will be affected nationwide at the time of failure, so that the media server is required to have higher reliability than ever before.

このように、今後はメディアサーバには高い信頼性が要求されると予想されるが、一方低価格化の圧力も大きい。そのため、例えば、ハードウェア面では、高価だが高品質・高信頼性のメインフレームから安価だが故障率の高いIAサーバを用いたSI(システムインテグレーション)に移行する事例も増えてきた。また、ソフトウェア面では、安価なオープンソースソフトウェアを用いた開発も増えてきた。オープンソースソフトウェアはコストを抑えられるものの、ベンダー製品よりも品質が劣る場合もあり、アプリケーション側でエラーが生じる確率が高くなる場合も考えられる。   As described above, it is expected that the media server will be required to have high reliability in the future. For this reason, for example, on the hardware side, there is an increasing number of cases where an expensive but high quality and high reliability mainframe is shifted to SI (system integration) using an inexpensive but high failure rate IA server. On the software side, development using inexpensive open source software has increased. Although the cost of open source software can be reduced, the quality may be inferior to that of a vendor product, and the probability of an error occurring on the application side may be high.

システムの信頼性については、ハードウェアの故障の問題はFT(フォルトトレラント)サーバを用いることにより解決できる。FTサーバではCPU(central processing unit)やメモリなどのハードウェアコンポーネントが全て2重化されており、ハードウェアコンポーネントの一方が故障してもシステムを全く止めることなく、瞬断もせずに動作を継続することができる。FTサーバを導入すれば、ハードウェア故障の心配はなくなるが、非常に高価なことが導入のネックとなっている。また、FTサーバはハードウェアの故障には対応できるが、アプリケーションが何らかのエラーにより落ちた場合にはサービスがストップしてしまうという問題がある。   As for system reliability, the problem of hardware failure can be solved by using an FT (fault tolerant) server. In the FT server, all hardware components such as CPU (central processing unit) and memory are duplicated, and even if one of the hardware components breaks down, the system will not stop at all and will continue to operate without instantaneous interruption. can do. If an FT server is introduced, there is no need to worry about hardware failure, but it is very expensive because it is expensive. In addition, the FT server can cope with a hardware failure, but there is a problem that the service is stopped when an application fails due to some error.

そこで、ミッションクリティカルでないシステムでは、システムの信頼性を高めるために、システムを冗長化して障害によるシステム停止を最小限にするHA(高可用性:High Availability)構成を採用することが多い。HA構成(クラスタ構成ともいう)では、現用系サーバに故障が発生した場合、クラスタ監視アプリケーションが待機系サーバの業務アプリケーションを自動で起動させる。HA構成には、データを共有ディスク上に置き、この共有ディスクを複数のサーバで利用する共有ディスクタイプと、各サーバのディスクをサーバ間でミラーするデータミラータイプがある。HA構成ならば、サービスの瞬断が発生するが、ソフトウェア/ハードウェアのいずれが故障した場合でも、現用系サーバから待機系サーバへの切り替えを行って動作を継続することができる。HA構成は世界で広く用いられている信頼性確保の方式であり、HTTP(Hypertext Transfer Protocol)やDB(データベース)といった非リアルタイムのプロコトルにおいての使用実績は多い。しかし、現用系から待機系に切り替えるために10秒程度かかることもあり、VoIPのようなリアルタイムサービスにおいて用いるには適さないのが現状である。   Therefore, in a system that is not mission critical, in order to improve the reliability of the system, an HA (High Availability) configuration that makes the system redundant and minimizes a system stop due to a failure is often adopted. In the HA configuration (also referred to as a cluster configuration), when a failure occurs in the active server, the cluster monitoring application automatically starts the business application on the standby server. The HA configuration includes a shared disk type in which data is placed on a shared disk and the shared disk is used by a plurality of servers, and a data mirror type in which the disk of each server is mirrored between servers. With the HA configuration, a service interruption occurs, but even if either software or hardware fails, the operation can be continued by switching from the active server to the standby server. The HA configuration is a method for ensuring reliability that is widely used in the world, and has been used in non-real-time protocols such as HTTP (Hypertext Transfer Protocol) and DB (database). However, since it may take about 10 seconds to switch from the active system to the standby system, it is not suitable for use in a real-time service such as VoIP.

また、IVRサービスは、エンドユーザ側のIP電話端末とSIPパケットを中継する中継機とIVR機能を有するメディアサーバにより構成されることが多い。中継機はキャリアが管理するサーバであり、着信先の相手を検索して通話を確立させる役割を持つ。中継機が故障すると、IP電話を使用する全てのユーザが通話不能となる。
特許文献1及び特許文献2には、現用系中継機であるSIPサーバがセッションを確立する度に外部記憶装置にセッション情報を書き込んでおき、現用系中継機の故障時には待機系中継機がその故障を察知し、現用系として起動することが記載されている。特許文献1では、待機系中継機は起動時に外部記憶装置から情報を読み込んで全てのセッションを復旧させており、特許文献2では、現用系とし起動した待機系中継機が、SIPパケットを受信したときに外部記憶装置から情報を取得し、受信したセッションの情報だけを復旧している。
In many cases, the IVR service includes an IP telephone terminal on the end user side, a relay device that relays SIP packets, and a media server having an IVR function. The repeater is a server managed by the carrier, and has a role of searching for a callee and establishing a call. If the relay machine breaks down, all users who use the IP phone will be unable to talk.
In Patent Document 1 and Patent Document 2, session information is written in an external storage device every time a SIP server that is an active repeater establishes a session, and the standby repeater fails when the active repeater fails. It is described that the system is activated as an active system. In Patent Document 1, the standby relay machine reads information from the external storage device at the time of startup and restores all sessions. In Patent Document 2, the standby relay machine activated as the active system receives the SIP packet. Sometimes information is acquired from the external storage device, and only the received session information is restored.

特開2007−81933号公報JP 2007-81933 A 特開2008−103952号公報JP 2008-103952 A

一般に電話系のサービスは、固定電話をはじめ極めて品質の高いサービスが多く、エンドユーザもその品質が当たり前と考えていることが多い。そのため、故障時に通話が切断されることは大きな問題となる。
一方メディアサーバをVoIPにより構築しようとする企業では、これまでは、コストを優先し、FTサーバではない安価なハードウェア、オープンソースソフトウェアなどの安価なソフトウェアによりIVRシステムを構築することが多く、アプリケーションの故障率が高くなり信頼性が低くなる可能性が想定された。
In general, telephone-type services include many fixed-line telephones and other extremely high-quality services, and end users often consider the quality as a matter of course. Therefore, it is a big problem that the call is disconnected at the time of failure.
On the other hand, companies that try to build a media server with VoIP have so far prioritized cost, and have often built an IVR system with inexpensive hardware that is not an FT server, inexpensive software such as open source software. It was assumed that the failure rate might be high and the reliability would be low.

しかし、今後は、大規模かつ高信頼性を求められるIVRシステムがVoIP上で構築される可能性が高いため、音声通話のセッションフェールオーバ機能が必要になると予想される。すなわち、アプリケーション/ハードウェアのいずれの故障時であっても通話が切断されずに現用系から待機系に処理が引継がれる、拠点集約にも耐えうる高信頼な電話システムの構成が切望されている。   However, in the future, since there is a high possibility that a large-scale and high-reliability IVR system will be built on VoIP, it is expected that a session failover function for voice calls will be required. In other words, there is a strong demand for a highly reliable telephone system configuration that can withstand base aggregation, in which processing is taken over from the active system to the standby system without being disconnected even in the event of any application / hardware failure. .

中継機は、故障するとIP電話を使用する全てのユーザが通話不能となるため、基本的に二重化されている。上述した特許文献1や特許文献2の技術は、中継機におけるSIPセッションを復旧させる技術である。特許文献1や特許文献2の技術をメディアサーバで実現しようとした場合、メディアサーバに必要なRTP(Real-Time Transport Protocol)セッションやIVR処理を復旧させることはできないという問題があった。   If the relay machine breaks down, all users who use the IP phone are unable to talk, and thus are basically duplexed. The techniques of Patent Document 1 and Patent Document 2 described above are techniques for restoring a SIP session in a relay device. When attempting to implement the technologies of Patent Document 1 and Patent Document 2 on a media server, there is a problem that the RTP (Real-Time Transport Protocol) session and IVR processing necessary for the media server cannot be restored.

また、特許文献1や特許文献2の技術をメディアサーバで実現しようとした場合、外部装置の負荷が高くなりすぎるという問題もある。特許文献1及び特許文献2では、中継機の二重化をHA構成により実現している。中継機のように、リアルタイムで動作する必要のないサーバであれば、サーバが保持する情報に更新があった場合、その都度、更新内容を共有ディスクに反映させることにより、現用系の故障時には待機系サーバにおいてその共有ディスクの内容を参照して動作を継続することができる。しかし、メディアサーバはリアルタイムで動作するため、単純なHA構成では二重化することはできない。   Moreover, when trying to implement the techniques of Patent Document 1 and Patent Document 2 on a media server, there is a problem that the load on the external device becomes too high. In Patent Document 1 and Patent Document 2, duplexing of repeaters is realized by an HA configuration. If it is a server that does not need to operate in real time, such as a repeater, if the information held by the server is updated, the updated contents are reflected on the shared disk each time, so that the standby system can be used in the event of a failure of the active system. The operation can be continued by referring to the contents of the shared disk in the system server. However, since the media server operates in real time, it cannot be duplicated with a simple HA configuration.

すなわち、中継機では3分ほどの通話でも5〜6パケットしか受信せず、例えば、100人のエンドユーザが通話している状態を仮定しても、3分で500〜600のSIPパケットを受信する程度であり、共有ディスクに変更した情報を記憶するための負荷は3.3アクセス/秒程度と想定される。また、SIPの仕様上、パケット受信後直ちに応答する必要もなく、30秒ほどの余裕がある。   In other words, the relay station receives only 5 to 6 packets even in a call of about 3 minutes. For example, assuming that 100 end users are talking, 500 to 600 SIP packets are received in 3 minutes. The load for storing the changed information on the shared disk is assumed to be about 3.3 accesses / second. Also, because of the SIP specification, there is no need to respond immediately after receiving a packet, and there is a margin of about 30 seconds.

ところが、メディアサーバはリアルタイムで動作するためデータの更新が頻繁に生じる。メディアサーバでは、1つの通話で50パケット/秒という多数の音声パケットを受信するため、例えば、100人のエンドユーザが通話している状態を考えると、共有ディスクに対して5000アクセス/秒程度の負荷があると予想される。これでは、共有ディスクへの書込みが間に合わなくなり、単純なHA構成では対応できない可能性が高い。また、音声パケットの場合、送信に10ミリ秒以上の遅延が生じると、音声が途切れる等の影響が発生するが、これほどの負荷をかけながら10ミリ秒以内の遅延で音声パケットの送受信することは非常に困難である。   However, since the media server operates in real time, data is frequently updated. Since the media server receives a large number of voice packets of 50 packets / second in one call, for example, considering a state in which 100 end users are talking, about 5000 accesses / second to the shared disk Expected to be loaded. In this case, writing to the shared disk is not in time, and there is a high possibility that it cannot be handled by a simple HA configuration. In the case of a voice packet, if a delay of 10 milliseconds or more occurs in transmission, the voice is interrupted. However, voice packets are transmitted and received with a delay of 10 milliseconds or less while applying such a load. Is very difficult.

さらには、特許文献1では、全てのSIPパケットを外部記憶装置に記憶しており、書込み及び読み出しの負荷が高い。
加えて、特許文献1及び特許文献2では、復旧に必要な情報を次々に追記し、削除しておらず、ディスクの利用効率や外部記憶装置の応答性能に影響を与える可能性がある。
Furthermore, in Patent Document 1, all SIP packets are stored in an external storage device, and the load of writing and reading is high.
In addition, in Patent Document 1 and Patent Document 2, information necessary for recovery is added and deleted one after another, and there is a possibility of affecting disk utilization efficiency and external storage device response performance.

このような特許文献1及び2の問題点に加え、先に述べたような拠点集約に耐えうる高い信頼性を実現すること、低価格の圧力でFTサーバによるハードウェア故障の回避を採用できない場合にも信頼性を確保すること、低価格の圧力からベンダー製品よりも品質が低い場合もあるオープンソースソフトウェアの使用率が向上しているためアプリケーションエラーが生じやすい可能性があること、電話系のサービスは他のサービスと比較して高品質を求められやすいことなどを勘案して、メディアサーバのセッションフェールオーバを実現する必要がある。   In addition to the problems of Patent Documents 1 and 2 above, when it is impossible to achieve high reliability that can withstand the consolidation of bases as described above, and avoidance of hardware failure by FT server with low-cost pressure In addition, it is likely that application errors are likely to occur due to the increased usage of open source software, which may be lower quality than vendor products due to low price pressure, which may cause application errors, It is necessary to realize session failover of the media server in consideration of the fact that the service is required to have higher quality than other services.

本発明は、上記の事情に鑑みてなされたものであり、その目的は、IVR機能によりIPネットワークを介して音声データを提供している際にメディアサーバに故障が発生した場合であっても、SIP及びRTPセッションを回復し、故障発生が発生した時点から迅速にIVRシナリオを再開することができるメディアサーバ、セッション復旧方法及びコンピュータプログラムを提供することにある。   The present invention has been made in view of the above circumstances, and its purpose is to provide a case in which a failure occurs in a media server when voice data is provided via an IP network by an IVR function. An object of the present invention is to provide a media server, a session recovery method, and a computer program capable of recovering a SIP and RTP session and quickly restarting an IVR scenario from the time of occurrence of a failure.

上記課題を解決するため、本発明は、ネットワークを介して接続された複数のメディアサーバを有する音声自動応答システムにおける前記メディアサーバであって、前記ネットワークを介して接続される電話端末と呼制御信号パケットを送受信し、前記電話端末との間の呼のセッションを確立する呼処理部と、音声自動応答のシナリオに従って、呼を確立した前記電話端末への音声の送出または前記電話端末から受信した音声の認識あるいはその両方を実行する音声自動応答処理部と、を確立した前記電話端末との間でメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理から送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを前記音声自動応答処理部に出力する音声処理部と、前記呼処理部により送受信された前記呼制御信号から取得した呼特定情報と呼のセッションの復旧に用いられる情報とを設定した呼処理復旧情報を外部記憶装置に書き込むとともに、前記呼特定情報と、前記呼特定情報により特定される呼について確立された前記メディアセッションの復旧に用いられる情報とを設定した音声処理復旧情報を前記外部記憶装置に書込み、さらに、前記呼特定情報と、前記呼特定情報により特定される呼について前記音声自動応答処理部により実行された音声自動応答のシナリオ上の現在の実行位置を特定する情報と、前記音声自動応答処理部により実行された音声自動応答のシナリオに応じて前記電話端末から受信した音声を認識した結果の履歴情報とを設定した音声自動応答処理情報を前記外部記憶装置に書き込む制御部と、他のメディアサーバの故障を検出する監視部と、前記監視部により現用系の他のメディアサーバの故障を検出した際に、前記他のメディアサーバが使用していたアドレスを自アドレスとして設定するとともに、他の前記メディアサーバが書き込んだ、同一の呼特定情報を有する呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から読み出す復旧処理部とを備え、前記音声自動応答処理部は、前記復旧処理部が読み出した前記音声自動応答処理情報からシナリオ上の現在の実行位置を特定する情報と前記履歴情報とを取得し、取得した前記情報と前記履歴情報とにより特定される実行位置から前記音声自動応答のシナリオを実行し、前記音声処理部は、前記復旧処理部が読み出した前記音声処理復旧情報に基づいてメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理部から送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを前記音声自動応答処理部に出力し、前記呼処理部は、前記復旧処理部が読み出した前記呼処理復旧情報に基づいて前記電話端末との間の呼のセッションを確立し、呼処理信号の送受信を行なう、ことを特徴とするメディアサーバである。 In order to solve the above-mentioned problems, the present invention provides a media server in a voice automatic answering system having a plurality of media servers connected via a network, and a telephone terminal connected via the network and a call control signal A call processing unit that transmits and receives packets and establishes a call session with the telephone terminal, and voice transmission to the telephone terminal that has established a call or voice received from the telephone terminal according to a voice automatic response scenario A voice session that establishes a media session between the voice terminal and the telephone terminal that has established the voice, and the voice that is instructed to be transmitted from the voice auto-response process by the established media session. The encoded voice packet is transmitted to the telephone terminal and the voice packet received from the telephone terminal is transmitted. A voice processing unit that outputs a voice processing unit to the voice automatic response processing unit, and call processing recovery in which call identification information acquired from the call control signal transmitted and received by the call processing unit and information used for session recovery are set Audio processing restoration information in which information is written to an external storage device and the call identification information and information used for restoration of the media session established for the call identified by the call identification information are set in the external storage device , Further, the call specifying information, information specifying a current execution position on a scenario of an automatic voice response executed by the voice automatic response processing unit for the call specified by the call specifying information, and the voice and history information of the result of recognizing the voice received from said telephone terminal according to the scenario of voice response executed by the automatic response unit When the controller that writes the set automatic voice response processing information to the external storage device, the monitoring unit that detects a failure of another media server, and the failure of the other media server in the active system are detected by the monitoring unit, The address used by the other media server is set as its own address, and the call processing restoration information, voice processing restoration information, and voice automatic response having the same call identification information written by the other media server are written. A recovery processing unit that reads processing information from the external storage device, and the voice automatic response processing unit includes information for specifying a current execution position on a scenario from the voice automatic response processing information read by the recovery processing unit ; The history information is acquired, and the voice automatic response scenario is executed from the execution position specified by the acquired information and the history information . The audio processing unit establishes a media session based on the audio processing recovery information read by the recovery processing unit, and encodes audio instructed to be transmitted from the automatic audio response processing unit by the established media session. The voice packet is transmitted to the telephone terminal, and the voice packet received from the telephone terminal is output to the voice automatic response processing unit. The call processing unit is based on the call processing recovery information read by the recovery processing unit. A media server for establishing a call session with the telephone terminal and transmitting / receiving a call processing signal.

また、本発明は、上述したメディアサーバであって、呼の復旧に用いられる情報は、送受信した前記呼制御信号から取得した発側電話番号、着側電話番号、及び、前記呼制御信号の送信または受信に伴って値が更新される情報の最新の値を含むことを特徴とする。   Further, the present invention is the above-described media server, wherein information used for call recovery includes the calling party telephone number, the called party telephone number acquired from the transmitted and received call control signal, and the transmission of the call control signal. Alternatively, it includes the latest value of information whose value is updated upon reception.

また、本発明は、上述したメディアサーバであって、呼の復旧に用いられる情報は、前記電話端末から受信した呼制御信号、及び、前記呼制御信号の送信または受信に伴って値が更新される情報の最新の値を含み、前記復旧処理部は、前記外部記憶装置から読み出した前記呼処理復旧情報に設定されている前記呼制御信号を前記呼処理部に送信し、前記呼処理部は、前記復旧処理部から送信された前記呼制御信号に基づいて前記電話端末との間の呼のセッションを確立する、ことを特徴とする。   Further, the present invention is the above-described media server, and the information used for call recovery is updated with a call control signal received from the telephone terminal and with the transmission or reception of the call control signal. The restoration processing unit transmits the call control signal set in the call processing restoration information read from the external storage device to the call processing unit, and the call processing unit A call session with the telephone terminal is established based on the call control signal transmitted from the restoration processing unit.

また、本発明は、上述したメディアサーバであって、メディアセッションの復旧に用いられる前記情報は、発信側及び着信側のメディアセッション用のアドレスと、メディアセッションに特有の値が設定された情報と、音声パケットの送信に伴い値が更新される情報のメディアセッション確立時の値と、前記メディアセッションの開始時刻とを含み、前記音声処理部は、前記復旧処理部により読み出された前記音声処理復旧情報から前記開始時刻と、音声パケットの送信に伴い更新される前記情報のメディアセッション確立時の値とを取得し、前記開始時刻からの経過時間に基づいて更新される前記情報の現在の値を算出し、前記音声処理復旧情報から読み出した、発信側及び着信側のメディアセッション用の前記アドレスと、メディアセッションに特有の値が設定された前記情報と、算出した前記値を設定した、音声パケットの送信に伴い更新される前記情報とを用いて前記呼のメディアセッションを復旧する、ことを特徴とする。   Further, the present invention is the above-described media server, wherein the information used for media session recovery includes addresses for media sessions on the calling side and called side, and information in which values specific to the media session are set. Including a value at the time of media session establishment of information whose value is updated with the transmission of the voice packet, and a start time of the media session, wherein the voice processing unit reads the voice processing read by the restoration processing unit Obtaining the start time from the recovery information and the value at the time of media session establishment of the information updated with transmission of the voice packet, and the current value of the information updated based on the elapsed time from the start time And the addresses for the media session on the caller side and the callee side read from the voice processing recovery information and the media session A media session of the call is recovered using the information in which a value specific to the application is set and the information in which the calculated value is set and updated in response to transmission of a voice packet. To do.

また、本発明は、上述したメディアサーバであって、前記制御部は、解放された呼の呼特定情報を含む前記呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から削除する、ことを特徴とする。   The present invention is the above-described media server, wherein the control unit receives the call processing recovery information, call processing recovery information, and voice automatic response processing information including call identification information of a released call. It is deleted from the storage device.

また、本発明は、ネットワークを介して接続された複数のメディアサーバを有する音声自動応答システムにおける前記メディアサーバに用いられるセッション復旧方法であって、呼処理部が、ネットワークを介して接続される電話端末と呼制御信号パケットを送受信し、前記電話端末との間の呼のセッションを確立する呼処理ステップと、音声自動応答処理部が、音声自動応答のシナリオに従って、呼を確立した前記電話端末への音声の送出または前記電話端末から受信した音声の認識あるいはその両方を実行する音声自動応答処理ステップと、音声処理部が、呼を確立した前記電話端末との間でメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理ステップにおいて送出された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを前記音声自動応答処理部へ出力する音声処理ステップと、御部が、前記呼処理ステップにおいて送受信された前記呼制御信号から取得した呼特定情報と呼のセッションの復旧に用いられる情報とを設定した呼処理復旧情報を外部記憶装置に書き込むとともに、前記呼特定情報と、前記呼特定情報により特定される呼について確立された前記メディアセッションの復旧に用いられる情報とを設定した音声処理復旧情報を前記外部記憶装置に書込み、さらに、前記呼特定情報と、前記呼特定情報により特定される呼について前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオ上の現在の実行位置を特定する情報と、前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオに応じて前記電話端末から受信した音声を認識した結果の履歴情報とを設定した音声自動応答処理情報を前記外部記憶装置に書き込む情報書込みステップと、監視部が、他のメディアサーバの故障を検出する監視ステップと、復旧処理部が、前記監視ステップにおいて現用系の他のメディアサーバの故障を検出した際に、前記他のメディアサーバが使用していたアドレスを自アドレスとして設定するとともに、他の前記メディアサーバが書き込んだ、同一の呼特定情報を有する呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から読み出す復旧処理ステップと、前記音声自動応答処理部が、前記復旧処理ステップにおいて読み出された前記音声自動応答処理情報からシナリオ上の現在の実行位置を特定する情報と前記履歴情報とを取得し、取得した前記情報と前記履歴情報とにより特定される実行位置から前記音声自動応答のシナリオを実行する音声自動応答復旧ステップと、前記音声処理復旧が、前記復旧処理ステップにおいて読み出された前記音声処理復旧情報に基づいてメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答復旧ステップにおいて送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを受信する音声処理復旧ステップと、前記呼処理部が、前記復旧処理ステップにおいて読み出された前記呼処理復旧情報に基づいて前記電話端末との間の呼のセッションを確立し、呼処理信号の送受信を行なう呼処理復旧ステップと、を有することを特徴とするセッション復旧方法である。 The present invention also relates to a session recovery method used for a media server in an automatic voice response system having a plurality of media servers connected via a network, wherein the call processing unit is a telephone connected via the network. A call processing step of transmitting / receiving a call control signal packet to / from a terminal and establishing a call session with the telephone terminal; and a voice automatic response processing unit to the telephone terminal establishing a call according to a voice automatic response scenario A voice automatic response processing step for executing voice transmission and / or recognition of voice received from the telephone terminal, and a voice processing unit establishes and establishes a media session with the telephone terminal that has established a call. Voice encoded in the voice automatic response processing step by the media session A voice processing step of transmitting a packet to the telephone terminal and outputting a voice packet received from the telephone terminal to the voice automatic response processing unit; and a control unit from the call control signal transmitted and received in the call processing step The call processing recovery information in which the acquired call identification information and information used for call session recovery are set is written to an external storage device, and the call identification information and the call identified by the call identification information are established. Voice processing restoration information in which information used for restoration of the media session is set is written in the external storage device, and the call identification information and the call identified by the call identification information in the voice automatic response processing step Information for identifying the current execution position on the executed voice automatic response scenario, and the voice automatic response And information writing step of writing a voice response processing information set and history information of the result of recognizing the voice received from said telephone terminal according to the scenario of voice response that is executed in physical step in the external storage device, the monitoring A monitoring step for detecting a failure of another media server, and a recovery processing unit used by the other media server when the recovery processing unit detected a failure of another active media server in the monitoring step. Recovery that reads the call processing recovery information, voice processing recovery information, and voice automatic response processing information having the same call identification information written by the other media server from the external storage device while setting the address as its own address A processing step, and the voice automatic response processing unit reads the voice automatic read in the restoration processing step. A voice that acquires information specifying the current execution position on the scenario and the history information from the response processing information, and executes the scenario of the voice automatic response from the execution position specified by the acquired information and the history information The automatic response recovery step and the audio processing recovery establish a media session based on the audio processing recovery information read in the recovery processing step, and are transmitted in the audio automatic response recovery step by the established media session. A voice processing recovery step of transmitting a voice packet encoding the instructed voice to the telephone terminal and receiving a voice packet received from the telephone terminal; and the call processing unit is read in the recovery processing step Based on the call processing recovery information, a call session with the telephone terminal is confirmed. And a session recovery method characterized by having a call processing recovery step of transmitting and receiving call processing signal.

また、本発明は、ネットワークを介して接続された複数のメディアサーバを有する音声自動応答システムにおける前記メディアサーバとして用いられるコンピュータに、ネットワークを介して接続される電話端末と呼制御信号パケットを送受信し、前記電話端末との間の呼のセッションを確立する呼処理ステップと、音声自動応答のシナリオに従って、呼を確立した前記電話端末への音声の送出または前記電話端末から受信した音声の認識あるいはその両方を実行する音声自動応答処理ステップと、呼を確立した前記電話端末との間でメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理ステップにおいて送出された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から音声パケットを受信する音声処理ステップと、前記呼処理ステップにおいて送受信された前記呼制御信号から取得した呼特定情報と呼のセッションの復旧に用いられる情報とを設定した呼処理復旧情報を外部記憶装置に書き込むとともに、前記呼特定情報と、前記呼特定情報により特定される呼について確立された前記メディアセッションの復旧に用いられる情報とを設定した音声処理復旧情報を前記外部記憶装置に書込み、さらに、前記呼特定情報と、前記呼特定情報により特定される呼について前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオ上の現在の実行位置を特定する情報と、前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオに応じて前記電話端末から受信した音声を認識した結果の履歴情報とを設定した音声自動応答処理情報を前記外部記憶装置に書き込む情報書込みステップと、他のメディアサーバの故障を検出する監視ステップと、前記監視ステップにおいて現用系の他のメディアサーバの故障を検出した際に、前記他のメディアサーバが使用していたアドレスを自アドレスとして設定するとともに、他の前記メディアサーバが書き込んだ、同一の呼特定情報を有する呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から読み出す復旧処理ステップと、前記復旧処理ステップにおいて読み出された前記音声自動応答処理情報からシナリオ上の現在の実行位置を特定する情報と前記履歴情報とを取得し、取得した前記情報と前記履歴情報とにより特定される実行位置から前記音声自動応答のシナリオを実行する音声自動応答復旧ステップと、前記復旧処理ステップにおいて読み出された前記音声処理復旧情報に基づいてメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答復旧ステップにおいて送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを受信する音声処理復旧ステップと、記復旧処理ステップにおいて読み出された前記呼処理復旧情報に基づいて前記電話端末との間の呼のセッションを確立し、呼処理信号の送受信を行なう呼処理復旧ステップと、を実行させることを特徴とするコンピュータプログラムである。 The present invention also transmits and receives a call control signal packet to and from a telephone terminal connected via a network to a computer used as the media server in an automatic voice response system having a plurality of media servers connected via a network. A call processing step for establishing a call session with the telephone terminal, and voice transmission to the telephone terminal that established the call or recognition of voice received from the telephone terminal, or according to a scenario of automatic voice response A voice automatic response processing step that executes both, and a media session established with the telephone terminal that has established a call, and a voice encoded in the voice automatic response processing step by the established media session Send the packet to the telephone terminal and Call processing recovery information for receiving a voice packet; call processing recovery information in which call identification information acquired from the call control signal transmitted and received in the call processing step and information used for call session recovery are set in an external storage device And writing to the external storage device voice processing restoration information in which the call identification information and information used for restoration of the media session established for the call identified by the call identification information are set, and In the voice automatic response processing step, the call specifying information, information specifying a current execution position on a voice automatic response scenario executed in the voice automatic response processing step for the call specified by the call specifying information, and recognizing a voice received from said telephone terminal according to the execution scenario voice response Results and information writing step of writing a voice response processing information to the external storage device is set and the history information, and the monitoring step of detecting a failure of other media servers, other media servers of the primary system in the monitoring step When a failure is detected, the address used by the other media server is set as its own address, and the call processing restoration information and voice processing restoration having the same call identification information written by the other media server are written. A recovery processing step of reading information and voice automatic response processing information from the external storage device; information specifying a current execution position on a scenario from the voice automatic response processing information read in the recovery processing step; and History information is acquired, from the execution position specified by the acquired information and the history information A voice automatic response recovery step for executing a voice automatic response scenario, a media session is established based on the voice processing recovery information read in the recovery processing step, and the voice automatic response recovery step is performed by the established media session. The voice packet encoded in the voice instructed to be transmitted in the voice terminal is transmitted to the telephone terminal, and the voice processing recovery step of receiving the voice packet received from the telephone terminal, and the call read in the recovery processing step A computer program characterized by executing a call processing recovery step of establishing a call session with the telephone terminal based on processing recovery information and transmitting / receiving a call processing signal.

本発明によれば、音声送出中に現用系のメディアサーバが故障した場合であっても、通話がとぎれることなく、待機系のメディアサーバによって、故障が発生した時点から引き続きIVRシナリオを提供することができる。このように、メディアサーバのセッションフェールオーバを実現することができるため、FTサーバと比較して故障率の高いハードウェアを使用した場合や、オープンソースソフトウェアのようにベンダー製品と比較して品質の劣る可能性のあるソフトウェアを使用した場合でも、信頼性の高いシステムを実現することが可能となる。従って、安価なハードウェア、ソフトウェアを使用し、メディアサーバの集約を実現することができるため、導入、運用、保守のコストを軽減することが可能となる。   According to the present invention, even if the active media server fails during voice transmission, the standby media server continues to provide the IVR scenario from the time of the failure without interruption of the call. Can do. As described above, since the session failover of the media server can be realized, the quality is inferior when compared to the vendor product such as the case of using the hardware having a higher failure rate than the FT server or the open source software. Even when possible software is used, a highly reliable system can be realized. Therefore, it is possible to reduce the installation, operation, and maintenance costs because it is possible to realize the consolidation of media servers using inexpensive hardware and software.

本発明の第1の実施形態によるIVRシステムの機能ブロック図である。1 is a functional block diagram of an IVR system according to a first embodiment of the present invention. FIG. 同実施形態による電話番号設定情報のデータ構成例を示す図である。It is a figure which shows the data structural example of the telephone number setting information by the embodiment. 同実施形態によるIVRフローデータのデータ構成例を示す図である。It is a figure which shows the example of a data structure of the IVR flow data by the embodiment. 同実施形態による呼処理復旧情報のデータ構成例を示す図である。It is a figure which shows the example of a data structure of the call process recovery information by the embodiment. 同実施形態による音声処理復旧情報のデータ構成例を示す図である。It is a figure which shows the data structural example of the audio | voice process recovery information by the embodiment. 同実施形態によるIVR処理情報のデータ構成例を示す図である。It is a figure which shows the data structural example of the IVR process information by the embodiment. 同実施形態による着信時のシーケンスを示す図である。It is a figure which shows the sequence at the time of the incoming call by the same embodiment. 同実施形態による故障発生時のシーケンスを示す図である。It is a figure which shows the sequence at the time of the failure generation by the embodiment. 同実施形態による監視フローを示す図である。It is a figure which shows the monitoring flow by the embodiment. 同実施形態による現用系メディアサーバの着信時の処理フローを示す図である。It is a figure which shows the processing flow at the time of the incoming call of the active media server by the embodiment. 同実施形態による現用系メディアサーバの着信時の処理フローを示す図である。It is a figure which shows the processing flow at the time of the incoming call of the active media server by the embodiment. 同実施形態による現用系メディアサーバの発信時の処理フローを示す図である。It is a figure which shows the processing flow at the time of the transmission of the active media server by the embodiment. 同実施形態による待機系メディアサーバの復旧処理フローを示す図である。It is a figure which shows the restoration processing flow of the standby | mediate media server by the same embodiment. 第2の実施形態による呼処理復旧情報のデータ構成例を示す図である。It is a figure which shows the example of a data structure of the call process recovery information by 2nd Embodiment. 同実施の形態による音声処理復旧情報のデータ構成例を示す図である。It is a figure which shows the example of a data structure of the audio | voice process recovery information by the embodiment. 同実施形態による故障発生時のシーケンスを示す図である。It is a figure which shows the sequence at the time of the failure generation by the embodiment. 同実施形態による現用系メディアサーバの着信時の処理フローを示す図である。It is a figure which shows the processing flow at the time of the incoming call of the active media server by the embodiment. 同実施形態による現用系メディアサーバの発信時の処理フローを示す図である。It is a figure which shows the processing flow at the time of the transmission of the active media server by the embodiment. 同実施形態による待機系メディアサーバの復旧処理フローを示す図である。It is a figure which shows the restoration processing flow of the standby | mediate media server by the same embodiment.

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

[第1の実施形態:メモリ情報共有方式]
本実施形態では、メモリ情報共有方式による音声通話のセッションフェールオーバを実現する。メモリ情報共有方式では、IVR(Interactive Voice Response:音声自動応答)システムにおける現用系のメディアサーバはSIP(Session Initiation Protocol)関連の情報全てを外部記憶装置に保存しておき、この現用系のメディアサーバに故障が発生した場合、待機系のメディアサーバが外部記憶装置に保存しているSIP関連の情報を用いて呼処理を継続するものである。
[First Embodiment: Memory Information Sharing Method]
In the present embodiment, session failover of voice calls by the memory information sharing method is realized. In the memory information sharing method, an active media server in an IVR (Interactive Voice Response) system stores all SIP (Session Initiation Protocol) related information in an external storage device, and this active media server If a failure occurs, the call processing is continued using the SIP-related information stored in the external storage device by the standby media server.

図1は、本発明の一実施形態によるIVRシステムの機能ブロック図である。IVRとは、エンドユーザからの電話に自動で応答し、「○○の方は1番を押してください」のような音声を再生することにより、ユーザを誘導してオペレータに転送したり、エンドユーザに情報提供を提供したりする音声自動応答機能を有する音声自動応答システムをいう。   FIG. 1 is a functional block diagram of an IVR system according to an embodiment of the present invention. IVR automatically answers end-user calls and plays voices such as “Please press No. 1 for XX” to guide the user and transfer it to the operator, An automatic voice response system having an automatic voice response function for providing information to the user.

同図に示すように、IVRシステムは、電話端末1、中継サーバ2、メディアサーバ4、外部記憶装置6、発信制御装置7を備える。電話端末1及び中継サーバ2は、IP(Internet Protocol)網であるネットワークNに接続される。同図において電話端末1は、1台のみが記載されているが、複数台がネットワークNに接続される。2台のメディアサーバ4は、ルータ3を介してネットワークNと接続され、メディアサーバ4、外部記憶装置6、及び、発信制御装置7は、LAN(Local Area Network)などの私設網を介して接続される。   As shown in the figure, the IVR system includes a telephone terminal 1, a relay server 2, a media server 4, an external storage device 6, and a call control device 7. The telephone terminal 1 and the relay server 2 are connected to a network N that is an IP (Internet Protocol) network. Although only one telephone terminal 1 is shown in the figure, a plurality of telephone terminals 1 are connected to the network N. The two media servers 4 are connected to the network N via the router 3, and the media server 4, the external storage device 6, and the transmission control device 7 are connected via a private network such as a LAN (Local Area Network). Is done.

同図においては、メディアサーバ4として2台のメディアサーバ4a、4bが記載されているが、3台以上が備えられてもよい。ここでは、メディアサーバ4aが現在動作している現用系、メディアサーバ4bが現用系の故障時に処理を引継ぐ待機系であるとする。なお、メディアサーバ4が3台以上ある場合の現用系と待機系のサーバ台数比はN対M(N、Mは1以上)である。   Although two media servers 4a and 4b are shown as the media server 4 in the figure, three or more media servers may be provided. Here, it is assumed that the media server 4a is an active system that is currently operating, and the media server 4b is a standby system that takes over processing when the active system fails. Note that when there are three or more media servers 4, the ratio of the number of active and standby servers is N to M (N and M are 1 or more).

音声通話のセッションフェールオーバでは、現用系のメディアサーバ4が故障した場合、待機系のメディアサーバ4に動作が引継がれて通話が継続される。例えば、現用系のメディアサーバ4aから「○○の方は1番を押してください」とのアナウンスが流れ、エンドユーザが電話端末1に「1」を入力したのち、再びメディアサーバ4aから「△△の方は…」のようなアナウンスが流れている途中でメディアサーバ4aの故障が発生したとする。この場合、待機系のメディアサーバ4bが起動して、故障が発生した途中のアナウンスから再開し、「△△の方は、2番を押してください。」とのアナウンスを流して引き続きIVR処理を行なう。現用系から待機系への切り替え時には数秒間の無音が発生してもよい。   In a voice call session failover, if the active media server 4 fails, the operation is taken over by the standby media server 4 and the call is continued. For example, after an announcement from the active media server 4a “Please push # 1 for XX” and the end user inputs “1” to the telephone terminal 1, the media server 4a again “△△ Suppose that a failure of the media server 4a occurs in the middle of an announcement such as In this case, the standby media server 4b is started and resumes from the announcement in the middle of the failure, and the announcement ““ △, please press No. 2 ”is continued and the IVR process is continued. . Silence may occur for several seconds when switching from the active system to the standby system.

待機系に切り替わる時に必要な情報は、SIP関連の情報、RTP(Real-Time Transport Protocol)関連の情報、IVR関連の情報である。SIPとは、IP電話により電話をかける相手を探しだすために使用されることが多い呼制御用のプロコトルであり、RFC(Request for Comments)3261に詳しい仕様が記載されている。RTPとは、音声データなどをリアルタイムに伝送するために用いられるプロトコルであり、RTPパケットには、アナログの音声を符号化した音声データが設定される。   Information necessary for switching to the standby system is SIP-related information, RTP (Real-Time Transport Protocol) -related information, and IVR-related information. SIP is a protocol for call control that is often used to find out a party to call with an IP telephone, and detailed specifications are described in RFC (Request for Comments) 3261. RTP is a protocol used for transmitting voice data and the like in real time, and voice data obtained by encoding analog voice is set in the RTP packet.

本実施形態によるIVRシステムに適用されるメモリ情報共有方式では、現用系のメディアサーバ4は、SIP関連の情報全てを外部記憶装置6に保存し、基本的に現用系のメディアサーバは、自身のメモリ上に待機系のメディアサーバに引継ぐSIP関連の情報を記憶しない。よって、現用系のメディアサーバ4が故障した場合でも、待機系のメディアサーバ4は、メモリ上にSIP関連の情報を復旧させる必要はない。   In the memory information sharing method applied to the IVR system according to the present embodiment, the working media server 4 stores all SIP-related information in the external storage device 6, and basically the working media server is its own. SIP related information to be taken over by the standby media server is not stored in the memory. Therefore, even if the active media server 4 fails, the standby media server 4 does not need to restore SIP-related information on the memory.

また、復旧のためのRTPの情報は、RTPセッションの開始時に外部記憶装置6に記憶する。そのため、現用系のメディアサーバ4が故障した場合、待機系のメディアサーバ4は外部記憶装置6に記憶されている情報を参照してRTPポートオープン等の状態復帰処理を行ってセッションを引継ぐが、一部の情報については保存時の値から現在の値を推定してRTPパケット送信を再度起動させる必要がある。   Further, RTP information for recovery is stored in the external storage device 6 at the start of the RTP session. Therefore, when the active media server 4 fails, the standby media server 4 refers to the information stored in the external storage device 6 and performs state return processing such as RTP port open, and takes over the session. For some information, it is necessary to estimate the current value from the stored value and restart RTP packet transmission.

IVR関連の情報は、更新があり次第、その内容を外部記憶装置6に保存していく。そのため、現用系のメディアサーバ4が故障した場合、待機系のメディアサーバ4は外部記憶装置6に記憶されている情報に基づいてIVRを再度起動する。よって、故障が発生した時点からIVR処理を再開することができる。   The information related to IVR is saved in the external storage device 6 as soon as it is updated. Therefore, when the active media server 4 fails, the standby media server 4 activates the IVR again based on the information stored in the external storage device 6. Therefore, the IVR process can be resumed from the time when the failure occurs.

このように、メモリ情報共有方式は、現用系のメディアサーバ4が持つメモリ情報を全て外部記憶装置6に保存しておき、故障時は待機系のメディアサーバ4が外部記憶装置6から情報を取得してメモリ情報を復旧させる方式である。本方式の場合、ブリッジ方式の転送実施時に故障が発生した場合でもセッションフェールオーバが可能となる。また、待機系に切り替わる時、メモリ上にSIP関連の情報を復旧させる必要がないため、短い停止時間で現用系から待機系に切り替わることができる。   As described above, in the memory information sharing method, all the memory information of the active media server 4 is stored in the external storage device 6, and the standby media server 4 acquires information from the external storage device 6 when a failure occurs. Thus, the memory information is restored. In the case of this method, session failover is possible even if a failure occurs during the transfer of the bridge method. In addition, when switching to the standby system, it is not necessary to restore SIP-related information on the memory, so that it is possible to switch from the active system to the standby system in a short stop time.

次に、各装置の構成について説明する。
エンドユーザが保有する電話端末1は、IP電話端末であり、メディアサーバ4との間でSIPにより呼を確立するとともに、RTPを用いてメディアセッションを確立して音声パケットを送受信する。
中継サーバ2は、アドレス解決などを行なって、SIP信号の中継を行なう。
Next, the configuration of each device will be described.
The telephone terminal 1 possessed by the end user is an IP telephone terminal, and establishes a call with the media server 4 by SIP, establishes a media session using RTP, and transmits and receives voice packets.
The relay server 2 performs address resolution or the like and relays the SIP signal.

メディアサーバ4は、通信部40、監視部41及びメディア処理プログラム実行部42を備える。通信部40は、IPにより他の装置との間でパケット(データ)を送受信する。通信部40は、現用系から処理を引継ぐ場合、現用系のメディアサーバ4が使用していたIPアドレスを引継いで使用する。監視部41は、他のメディアサーバ4の故障を検出する。   The media server 4 includes a communication unit 40, a monitoring unit 41, and a media processing program execution unit 42. The communication unit 40 transmits and receives packets (data) to and from other devices by IP. When the communication unit 40 takes over processing from the active system, the communication unit 40 takes over and uses the IP address used by the active media server 4. The monitoring unit 41 detects a failure of another media server 4.

メディア処理プログラム実行部42は、呼処理部43、制御部44、主記憶部45、IVR処理部46、音声処理部47及び復旧処理部48を備える。主記憶部45は、メディア処理プログラム実行部42内の各部からアクセス可能であり、呼処理、音声処理、IVR処理に用いられる各種データを記憶する。制御部44は、外部記憶装置6に対して呼処理復旧情報、音声処理復旧情報、IVR処理情報の書込みや読み出しを行なう。呼処理部43は、SIP信号に基づく既存と同様の呼処理を行なうが、呼処理において用いられる各種情報のうち故障時の引継が必要な情報については制御部44を介して外部記憶装置6に書込みを行ない、適宜この外部記憶装置6内の情報を参照して呼処理を行なう。IVR処理部46は、IVRフローに従った音声データの出力を音声処理部47へ指示する。音声処理部47は、RTPによる音声データの送受信処理を行なう。   The media processing program execution unit 42 includes a call processing unit 43, a control unit 44, a main storage unit 45, an IVR processing unit 46, an audio processing unit 47, and a restoration processing unit 48. The main storage unit 45 is accessible from each unit in the media processing program execution unit 42, and stores various data used for call processing, voice processing, and IVR processing. The control unit 44 writes / reads call processing recovery information, voice processing recovery information, and IVR processing information to / from the external storage device 6. The call processing unit 43 performs the same call processing as that based on the SIP signal, but writes information that needs to be taken over at the time of failure out of various information used in the call processing to the external storage device 6 via the control unit 44. The call processing is performed with reference to information in the external storage device 6 as appropriate. The IVR processing unit 46 instructs the audio processing unit 47 to output audio data according to the IVR flow. The voice processing unit 47 performs voice data transmission / reception processing by RTP.

以下、メディアサーバ4aが備えるメディアサーバ4の各部には符号にaを付加して記載し、メディアサーバ4bが備えるメディアサーバ4の各部には符号にbを付加して記載する。例えば、メディアサーバ4aの備える監視部41は監視部41a、メディアサーバ4bの備える監視部41は監視部41bと記載する。   Hereinafter, each part of the media server 4 included in the media server 4a is described by adding a to the reference numeral, and each part of the media server 4 included in the media server 4b is described by adding b to the reference numeral. For example, the monitoring unit 41 included in the media server 4a is described as a monitoring unit 41a, and the monitoring unit 41 included in the media server 4b is described as a monitoring unit 41b.

外部記憶装置6は記憶部60を備え、記憶部60内の電話番号設定記憶部61、IVRフロー記憶部62、呼処理復旧情報記憶部63、音声処理復旧情報記憶部64、IVR処理情報記憶部65に記憶されているデータの読書きを行なう。
発信制御装置7は、メディアサーバ4に対して呼の発信を指示する。
The external storage device 6 includes a storage unit 60, and a telephone number setting storage unit 61, an IVR flow storage unit 62, a call processing recovery information storage unit 63, a voice processing recovery information storage unit 64, and an IVR processing information storage unit in the storage unit 60. The data stored in 65 is read and written.
The transmission control device 7 instructs the media server 4 to transmit a call.

次に、本実施形態による外部記憶装置6に記憶される各データについて説明する。
図2は、本実施形態による電話番号設定記憶部61に記憶される電話番号設定情報のデータ構成例を示す図である。電話番号設定情報は、電話番号、実行すべきIVRシナリオを特定するIVR ID、同時に接続可能な呼数を示す最大チャネル数、及び、現在接続されている呼数を示すアクティブチャネル数を対応づけたレコードからなる。電話番号は、電話端末1から発信し、メディアサーバ4へ着信したときの着信先電話番号、あるいは、発信制御装置7の指示を受けメディアサーバ4が発信し、電話端末1へ着信したときの発信元電話番号である。
Next, each data stored in the external storage device 6 according to the present embodiment will be described.
FIG. 2 is a diagram illustrating a data configuration example of the telephone number setting information stored in the telephone number setting storage unit 61 according to the present embodiment. The telephone number setting information correlates the telephone number, the IVR ID that identifies the IVR scenario to be executed, the maximum number of channels indicating the number of simultaneously connectable calls, and the number of active channels indicating the number of currently connected calls. Consists of records. The telephone number is transmitted from the telephone terminal 1 and received when receiving the call to the media server 4 or when the media server 4 transmits and receives an instruction from the call control device 7 and receives the call to the telephone terminal 1. The original telephone number.

図3は、本実施形態によるIVRフロー記憶部62に記憶されるIVRフローデータのデータ構成例を示す図である。同図において、IVRフローデータは、IVR IDと、IVRフローシナリオの対応付を示す。IVRフローシナリオは、エンドユーザに対して実行するIVR処理の順番を記述したデータであり、メディアサーバ4のIVR処理部46は、このIVRフローシナリオに従って、送出する音声の再生や、受信した音声の認識等の処理を順番に実行する。受信する音声は、例えば、DTMF(Dual Tone Multi Frequency)やエンドユーザの発話などである。なお、DTMFとは、1〜9までの数字と*、#、A、B、C、Dの記号の16種類の符号を低群・高群の2つの音声周波数帯域の信号音で送信する方法であり、電話端末1にプッシュした番号をメディアサーバ4に伝えることができる。   FIG. 3 is a diagram illustrating a data configuration example of IVR flow data stored in the IVR flow storage unit 62 according to the present embodiment. In the figure, the IVR flow data indicates the correspondence between the IVR ID and the IVR flow scenario. The IVR flow scenario is data describing the order of the IVR processing to be executed for the end user, and the IVR processing unit 46 of the media server 4 reproduces the audio to be transmitted and the received audio according to the IVR flow scenario. Processes such as recognition are executed in order. The received voice is, for example, DTMF (Dual Tone Multi Frequency) or an end user's speech. DTMF is a method of transmitting numbers 1 to 9 and 16 types of codes such as *, #, A, B, C, and D as signal sounds in two audio frequency bands of a low group and a high group. The number pushed to the telephone terminal 1 can be transmitted to the media server 4.

図4は、本実施形態による呼処理復旧情報記憶部63に記憶される呼処理復旧情報のデータ構成例を示す図である。呼処理復旧情報は、電話端末1及びメディアサーバ4の間でSIPのセッションを再確立するために必要な情報を保持し、toタグ、fromタグ、callid、メディアサーバのCSeq、電話端末のCSeq、発着信フラグ、サーバ側電話番号、端末側電話番号、各種ヘッダフィールドを対応付けたレコードからなる。各レコードは、通話単位、つまり、ダイアログ単位で生成される。SIPにおいて、ダイアログとは、電話をかけて通話が確立してから通話が終了するまでの間のことである。呼は、toタグ、fromタグ及びcallidの組み合わせによって示される呼特定情報により一意に特定することができる。   FIG. 4 is a diagram showing a data configuration example of call processing recovery information stored in the call processing recovery information storage unit 63 according to the present embodiment. The call processing recovery information holds information necessary for re-establishing a SIP session between the telephone terminal 1 and the media server 4, and includes a to tag, a from tag, a call, a CSeq of the media server, a CSeq of the telephone terminal, It consists of a record in which an outgoing / incoming flag, a server side telephone number, a terminal side telephone number, and various header fields are associated. Each record is generated in a call unit, that is, in a dialog unit. In SIP, a dialog is a period from when a telephone call is established to when the telephone call is terminated. A call can be uniquely identified by call identification information indicated by a combination of a to tag, a from tag, and a call.

toタグは、論理的なリクエストの送信先(IPアドレスとは異なる)が記載されているSIPのタグである。fromタグは、論理的な(IPアドレスとは異なる)リクエストの送信元が記載されているSIPのタグである。callidは、グローバルでユニークなランダムID(識別子)であり、RFC1750の方式で生成することが推奨されている。CSeqは、新規リクエスト毎にインクリメントされる番号である。発着信フラグは呼がメディアサーバ4からの発信か、電話端末1からの着信かを判別するためのフラグである。各種ヘッダフィールドは、送受信した各SIPメッセージのヘッダの情報の全部または一部の情報である。なお、toタグ、fromタグ、callid、CSeq、SIPメッセージのヘッダの詳細は、RFC3261に記述されている。サーバ側電話番号、端末側電話番号に代えて、メディアサーバ4のSIP URI(Universal Resource Identifier)、電話端末1のSIP URIを用いるようにしてもよい。   The to tag is a SIP tag in which a logical request destination (different from the IP address) is described. The from tag is a SIP tag in which a transmission source of a logical request (different from the IP address) is described. The callid is a globally unique random ID (identifier) and is recommended to be generated by the RFC1750 method. CSeq is a number incremented for each new request. The outgoing / incoming flag is a flag for determining whether the call is outgoing from the media server 4 or incoming from the telephone terminal 1. The various header fields are information on all or part of the header information of each transmitted / received SIP message. Details of the headers of the to tag, the from tag, callid, CSeq, and SIP message are described in RFC3261. Instead of the server-side telephone number and the terminal-side telephone number, the SIP URI (Universal Resource Identifier) of the media server 4 and the SIP URI of the telephone terminal 1 may be used.

図5は、本実施形態による音声処理復旧情報記憶部64に記憶される音声処理復旧情報のデータ構成例を示す図である。音声処理復旧情報は、電話端末1とメディアサーバ4の間のRTPによる音声通信の再確立に必要な情報を保持し、toタグ、fromタグ、callid、発着信開始時間、メディアサーバのRTPシーケンスナンバ、SSRC、RTPポート番号及びIPアドレス、電話端末のRTPポート番号及びIPアドレスを対応付けたレコードからなる。各レコードは、ダイアログ(通話)単位で生成される。   FIG. 5 is a diagram illustrating a data configuration example of the audio processing recovery information stored in the audio processing recovery information storage unit 64 according to the present embodiment. The voice processing restoration information holds information necessary for re-establishing voice communication by RTP between the telephone terminal 1 and the media server 4, and includes a to tag, a from tag, a call, an outgoing / incoming start time, an RTP sequence number of the media server. , SSRC, RTP port number and IP address, and RTP port number and IP address of the telephone terminal. Each record is generated in dialog (call) units.

SSRCは、RTPパケットに含まれるメディアストリームのソースIDであり、他のRTPと識別するために使用される。RTPシーケンスナンバは、RTPパケットの順序性を保障するための番号であり、RTPパケットを送信する度に1ずつ増やしていくが、ここでは、確立したRTPセッションにおいて、最初に送信したRTPパケットに使用したRTPシーケンスナンバを示す。
なお、SSRC、RTPシーケンスナンバの詳細は、RFC3350に記述されている。
SSRC is the source ID of the media stream included in the RTP packet, and is used to distinguish it from other RTPs. The RTP sequence number is a number for ensuring the order of RTP packets, and is incremented by 1 each time an RTP packet is transmitted. Here, in the established RTP session, it is used for the first RTP packet transmitted. The RTP sequence number is shown.
Details of the SSRC and RTP sequence numbers are described in RFC3350.

図6は、本実施形態によるIVR処理情報記憶部65に記憶されるIVR処理情報のデータ構成例を示す図である。IVR処理情報は、メディアサーバ4がエンドユーザに対して実行したコマンドの履歴ログを示し、toタグ、fromタグ、callid、コマンド実行履歴、エンドユーザ入力履歴1〜nを対応付けたレコードからなり、ダイアログ(通話)単位で生成される。   FIG. 6 is a diagram illustrating a data configuration example of IVR processing information stored in the IVR processing information storage unit 65 according to the present embodiment. The IVR processing information indicates a history log of commands executed by the media server 4 for the end user, and includes a record in which a to tag, a from tag, a call, a command execution history, and end user input histories 1 to n are associated with each other. Generated in dialog (call) units.

コマンド実行履歴は、IVRフローシナリオにより規定される一連のIVR処理において、最後に指示したガイダンス送出や音声認識などのIVR処理を特定する。エンドユーザ入力履歴1〜nは、IVR処理において電話端末1から受信したエンドユーザによる入力内容を順に記述したデータであり、入力されたDTMFや、音声やDTMFにより特定される選択内容などを示す。   The command execution history specifies an IVR process such as guidance transmission or voice recognition which is instructed last in a series of IVR processes defined by the IVR flow scenario. The end user input histories 1 to n are data in which the input contents by the end user received from the telephone terminal 1 in the IVR process are described in order, and indicate input DTMF, selection contents specified by voice or DTMF, and the like.

次に、本実施形態によるIVRシステムの動作について説明する。
IVRシステムの稼動前に、電話番号設定情報が電話番号設定記憶部61に、IVRフローデータがIVRフロー記憶部62に記憶されているものとする。ただし、電話番号設定情報のアクティブチャネル数の初期値は「0」とする。
Next, the operation of the IVR system according to the present embodiment will be described.
It is assumed that the telephone number setting information is stored in the telephone number setting storage unit 61 and the IVR flow data is stored in the IVR flow storage unit 62 before the operation of the IVR system. However, the initial value of the number of active channels in the telephone number setting information is “0”.

図7は、本実施形態による電話端末1から現用系のメディアサーバ4への着信時のシーケンス例を示す図である。なお、以下、SIPのX信号が設定されたIPパケットをXパケットと記載する。例えば、INVITE信号が設定されたIPパケットをINVITEパケットとする。   FIG. 7 is a diagram showing a sequence example at the time of an incoming call from the telephone terminal 1 to the active media server 4 according to the present embodiment. Hereinafter, an IP packet in which the SIP X signal is set is referred to as an X packet. For example, an IP packet in which the INVITE signal is set is defined as an INVITE packet.

まず、電話端末1は、中継サーバ2に対してINVITEパケットを送信する(ステップS105)。INVITEパケットには、電話端末1が使用するRTPポート番号及びIPアドレスが設定されている。中継サーバ2は、INVITEパケットのToフィールドに設定されている電話番号を着信先のIPアドレスに変換し、メディアサーバ4aへ送信する(ステップS110)。メディアサーバ4aは、着信を許可すると判断した場合、100Tringメッセージを中継サーバ2に返送し(ステップS115)、続いて、180Ringingを中継サーバ2に送信する(ステップS120)。中継サーバ2は、180Ringingを電話端末1に中継し(ステップS125)、電話端末1は、リングバックトーンをエンドユーザに聞かせる。   First, the telephone terminal 1 transmits an INVITE packet to the relay server 2 (step S105). In the INVITE packet, an RTP port number and an IP address used by the telephone terminal 1 are set. The relay server 2 converts the telephone number set in the To field of the INVITE packet into the destination IP address and transmits it to the media server 4a (step S110). If the media server 4a determines that the incoming call is permitted, the media server 4a returns a 100 Tring message to the relay server 2 (step S115), and then transmits 180 Ringing to the relay server 2 (step S120). The relay server 2 relays 180 Ringing to the telephone terminal 1 (step S125), and the telephone terminal 1 allows the end user to hear a ringback tone.

続いて、メディアサーバ4aの呼処理部43aは、200OKを中継サーバ2に送信する(ステップS130)。200OKには、メディアサーバ4aが使用するRTPポート番号及びIPアドレスが設定されている。中継サーバ2は、200OKを電話端末1に中継する(ステップS135)。電話端末1は、メディアサーバ4aに対してACKを送信する(ステップS140)。ACKの送信に伴い、電話端末1とメディアサーバ4aの音声処理部47a間でRTPのセッションが確立され、通話中状態に遷移すると、メディアサーバ4aの音声処理部47aは、IVRの音声をRTPパケットにより電話端末1へ送信し、電話端末1はエンドユーザの発話やDTMFをRTPパケットによりメディアサーバ4aへ送信する(ステップS145)。   Subsequently, the call processing unit 43a of the media server 4a transmits 200 OK to the relay server 2 (step S130). In 200 OK, an RTP port number and an IP address used by the media server 4a are set. The relay server 2 relays 200 OK to the telephone terminal 1 (step S135). The telephone terminal 1 transmits ACK to the media server 4a (step S140). When the RTP session is established between the telephone terminal 1 and the voice processing unit 47a of the media server 4a along with the transmission of the ACK and transitions to a busy state, the voice processing unit 47a of the media server 4a converts the IVR voice into an RTP packet. The telephone terminal 1 transmits the end user's speech and DTMF to the media server 4a by RTP packet (step S145).

通話中状態が長く継続する場合、定期的にメディアサーバ4aの呼処理部43aまたは電話端末1からre−INVITEパケットまたはUPDATEパケットが送信され(ステップS150)、この受信した電話端末1またはメディアサーバ4aの呼処理部43aは、応答を返送し、セッションの継続を確認する。   If the busy state continues for a long time, a re-INVITE packet or an UPDATE packet is periodically transmitted from the call processing unit 43a of the media server 4a or the telephone terminal 1 (step S150), and the received telephone terminal 1 or media server 4a The call processing unit 43a returns a response and confirms the continuation of the session.

エンドユーザが呼の切断操作を行なった場合、電話端末1はメディアサーバ4aへBYEパケットを送信し(ステップS155)、メディアサーバ4aの呼処理部43aは、200OKを返送する(ステップS160)。なお、メディアサーバ4aが呼の切断を行なう場合、メディアサーバ4aの呼処理部43aは、電話端末1へBYEパケットを送信し、電話端末1は、200OKを返送する。   When the end user performs a call disconnecting operation, the telephone terminal 1 transmits a BYE packet to the media server 4a (step S155), and the call processing unit 43a of the media server 4a returns 200 OK (step S160). When the media server 4a disconnects the call, the call processing unit 43a of the media server 4a transmits a BYE packet to the telephone terminal 1, and the telephone terminal 1 returns 200 OK.

メディアサーバ4からの発信の場合、メディアサーバ4が図7に示すシーケンス中の電話端末1と同様の動作を行い、電話端末1が図7に示すメディアサーバ4と同様の動作を行なう。   In the case of transmission from the media server 4, the media server 4 performs the same operation as the telephone terminal 1 in the sequence shown in FIG. 7, and the telephone terminal 1 performs the same operation as the media server 4 shown in FIG.

図8は、本実施形態によるIVRシステムにおける故障発生時のシーケンスを示す図である。
例えば、図7のステップS105〜S140に示す電話端末1からの発信の手順や、メディアサーバ4からの発信の手順により、電話端末1とメディアサーバ4aの間でSIPセッションが確立されると(ステップS205)、メディアサーバ4aは外部記憶装置6の呼処理復旧情報記憶部63に呼処理復旧情報を書き込む(ステップS210)。メディアサーバ4aは、IVRの処理を起動し(ステップS215)、電話端末1との間でRTPセッションを確立すると(ステップS220)、外部記憶装置6の音声処理復旧情報記憶部64に音声処理復旧情報を書き込む(ステップS225)。
FIG. 8 is a diagram showing a sequence when a failure occurs in the IVR system according to the present embodiment.
For example, when a SIP session is established between the telephone terminal 1 and the media server 4a by the procedure for making a call from the telephone terminal 1 and the procedure for making a call from the media server 4 shown in steps S105 to S140 in FIG. In step S205, the media server 4a writes the call processing recovery information in the call processing recovery information storage unit 63 of the external storage device 6 (step S210). When the media server 4a starts the IVR process (step S215) and establishes an RTP session with the telephone terminal 1 (step S220), the audio process recovery information is stored in the audio process recovery information storage unit 64 of the external storage device 6. Is written (step S225).

メディアサーバ4aは、音声再生などのIVR処理を実行し(ステップS230)、外部記憶装置6のIVR処理情報記憶部65にIVR処理情報を書き込む。また、IVR処理中に呼の継続確認のためのSIPパケットの送受信があった場合、メディアサーバ4aは、外部記憶装置6の呼処理復旧情報記憶部63に記憶されている呼処理復旧情報の読み込みや更新を行なう(ステップS235)。つまり、メディアサーバ4aは、IVR処理が進むたびにIVR処理情報を更新し、電話端末1からSIPパケットを受信する度に呼処理復旧情報を読込んで新規SIPパケットかを確認し、既存の呼の場合には呼処理復旧情報を更新する。   The media server 4a executes IVR processing such as audio reproduction (step S230), and writes IVR processing information in the IVR processing information storage unit 65 of the external storage device 6. Further, when the SIP packet for confirming the continuation of the call is transmitted / received during the IVR process, the media server 4a reads the call process recovery information stored in the call process recovery information storage unit 63 of the external storage device 6. Or updating is performed (step S235). In other words, the media server 4a updates the IVR processing information every time the IVR processing proceeds, reads the call processing recovery information every time a SIP packet is received from the telephone terminal 1, and checks whether it is a new SIP packet. In this case, the call processing recovery information is updated.

IVR処理実行中にメディアサーバ4aが故障した場合、メディアサーバ4bはこれを検知し(ステップS240)、外部記憶装置6のIVR処理情報記憶部65からIVR処理情報を読み出すと(ステップS245)、IVRシナリオの途中からIVR処理を起動する(ステップS250)。さらに、メディアサーバ4bは、外部記憶装置6の音声処理復旧情報記憶部64から音声処理復旧情報を読み出し(ステップS255)、音声処理復旧情報により示されるRTPポートを開き受信状態にすると同時に電話端末1に対してRTPパケットの送信を再開してRTPセッションを復旧し(ステップS260)、電話端末1とのRTPセッションを再確立する(ステップS265)。メディアサーバ4bは、電話端末1からSIPパケットを受信した場合(ステップS270)、外部記憶装置6の呼処理復旧情報記憶部63から呼処理復旧情報を読み出し、受信したSIPパケットがセッション確立済みのパケットかを確認する(ステップS275)。   When the media server 4a fails during the execution of the IVR process, the media server 4b detects this (step S240), and reads the IVR process information from the IVR process information storage unit 65 of the external storage device 6 (step S245). The IVR process is activated from the middle of the scenario (step S250). Further, the media server 4b reads the voice processing restoration information from the voice processing restoration information storage unit 64 of the external storage device 6 (step S255), opens the RTP port indicated by the voice processing restoration information and sets the reception state at the same time. The RTP packet transmission is resumed to restore the RTP session (step S260), and the RTP session with the telephone terminal 1 is reestablished (step S265). When the media server 4b receives a SIP packet from the telephone terminal 1 (step S270), the media server 4b reads the call processing recovery information from the call processing recovery information storage unit 63 of the external storage device 6, and the received SIP packet is a packet for which a session has been established. (Step S275).

次に、メディアサーバ4における処理フローについて説明する。
図9は、本実施形態による監視フローを示す図である。
同図において、メディアサーバ4の監視部41は、所定の時間間隔により、他のメディアサーバ4の生死の監視を起動する(ステップS305)。つまり、メディアサーバ4aの監視部41aは、メディアサーバ4bの生死の監視処理を起動し、メディアサーバ4bの監視部41bは、メディアサーバ4aの生死の監視処理を起動する。
Next, a processing flow in the media server 4 will be described.
FIG. 9 is a diagram showing a monitoring flow according to the present embodiment.
In the figure, the monitoring unit 41 of the media server 4 activates monitoring of the life and death of other media servers 4 at a predetermined time interval (step S305). That is, the monitoring unit 41a of the media server 4a starts the life / death monitoring process of the media server 4b, and the monitoring unit 41b of the media server 4b starts the life / death monitoring process of the media server 4a.

監視が起動されると、メディアサーバ4の監視部41は、他のメディアサーバ4の監視部41との間で生死の監視のための情報を交換する(ステップS310)。メディアサーバ4aの監視部41aは、メディアサーバ4bの監視部41bに対して監視メッセージを送信し、監視メッセージを受信したメディアサーバ4bの監視部41bは、メディアサーバ4bのハードウェアの動作やメディア処理プログラム実行部42bの処理が正常である場合、正常を通知する監視応答メッセージを返送する。同様に、メディアサーバ4bの監視部41bは、メディアサーバ4aの監視部41aに対して監視メッセージを送信し、監視メッセージを受信したメディアサーバ4aの監視部41aは、メディアサーバ4aのハードウェアの動作やメディア処理プログラム実行部42aの処理が正常である場合、正常を通知する監視応答メッセージを返送する。   When the monitoring is activated, the monitoring unit 41 of the media server 4 exchanges information for monitoring the life and death with the monitoring unit 41 of the other media server 4 (step S310). The monitoring unit 41a of the media server 4a transmits a monitoring message to the monitoring unit 41b of the media server 4b, and the monitoring unit 41b of the media server 4b that has received the monitoring message performs hardware operations and media processing of the media server 4b. When the processing of the program execution unit 42b is normal, a monitoring response message notifying normality is returned. Similarly, the monitoring unit 41b of the media server 4b transmits a monitoring message to the monitoring unit 41a of the media server 4a, and the monitoring unit 41a of the media server 4a that has received the monitoring message operates the hardware of the media server 4a. When the processing of the media processing program execution unit 42a is normal, a monitoring response message notifying normality is returned.

現用系、待機系のメディアサーバ4とも正常である場合、つまり、メディアサーバ4a、4bが、ステップS310において自身が送信した監視メッセージに対応して正常を通知する監視応答メッセージを受信した場合(ステップS315:故障検知なし)、現用系、待機系のメディアサーバ4a、4bともそのまま処理を継続する(ステップS320)。   When both the active and standby media servers 4 are normal, that is, when the media servers 4a and 4b receive a monitoring response message for notifying normality in response to the monitoring message transmitted by themselves in step S310 (step S315: No failure detected), the processing continues for both the active and standby media servers 4a and 4b (step S320).

待機系のメディアサーバ4bの故障発生が検出された場合、例えば、メディアサーバ4aの監視部41aが、メディアサーバ4bへ監視メッセージを送信してから所定時間以内に監視応答メッセージを受信しなかった、あるいは、メディアサーバ4bから故障を示す監視応答メッセージを受信した場合(ステップS315:待機系の故障検知)、現用系のメディアサーバ4aは、そのまま処理を継続する(ステップS325)。LANによりメディアサーバ4と接続され、IVRシステム全体の動作を管理する運用サーバ(図示せず)は、管理者宛のメール等を送信し、故障を通知する。   When a failure of the standby media server 4b is detected, for example, the monitoring unit 41a of the media server 4a has not received a monitoring response message within a predetermined time after transmitting the monitoring message to the media server 4b. Alternatively, when a monitoring response message indicating a failure is received from the media server 4b (step S315: standby failure detection), the active media server 4a continues the processing (step S325). An operation server (not shown) connected to the media server 4 via the LAN and managing the operation of the entire IVR system transmits a mail addressed to the administrator and notifies the failure.

現用系のメディアサーバ4aの故障発生が検出された場合、例えば、メディアサーバ4bの監視部41bが、メディアサーバ4aへ監視メッセージを送信してから所定時間以内に監視応答メッセージを受信しなかった、あるいは、メディアサーバ4aから故障を示す監視応答メッセージを受信したりした場合(ステップS315:現用系の故障検知)、待機系のメディアサーバ4bの監視部41bは、通信部40bに現用系のメディアサーバ4aのIPアドレスを引継ぐよう指示するとともに、メディア処理プログラム実行部42bに後述する故障時フローの実行を指示する(ステップS330)。   When a failure of the active media server 4a is detected, for example, the monitoring unit 41b of the media server 4b has not received a monitoring response message within a predetermined time after transmitting the monitoring message to the media server 4a. Alternatively, when a monitoring response message indicating a failure is received from the media server 4a (step S315: failure detection of the active system), the monitoring unit 41b of the standby media server 4b sends the active media server to the communication unit 40b. In addition to instructing to take over the IP address of 4a, the media processing program execution unit 42b is instructed to execute a failure flow described later (step S330).

図10及び図11は、本実施形態による現用系のメディアサーバ4における着信時の処理フローを示す図である。
図10において、メディアサーバ4aの呼処理部43aは、図7のステップS105〜S110に示すように、電話端末1から送信され、中継サーバ2により中継されたINVITEパケットを受信する(ステップS405)。
10 and 11 are diagrams showing a processing flow at the time of an incoming call in the active media server 4 according to the present embodiment.
10, the call processing unit 43a of the media server 4a receives the INVITE packet transmitted from the telephone terminal 1 and relayed by the relay server 2 as shown in steps S105 to S110 in FIG. 7 (step S405).

メディアサーバ4aの呼処理部43aは、INVITEパケットのToフィールドから着信先の電話番号を取得して主記憶部45aに書き込む(ステップS410)。呼処理部43aから指示を受けた制御部44aは、外部記憶装置6に取得した電話番号を通知し、最大チャネル数及びアクティブチャネル数の読み出しを指示する。制御部44aは、外部記憶装置6が電話番号設定記憶部61内の電話番号設定情報から電話番号に対応して読み出した最大チャネル数及びアクティブチャネル数を受信し、呼処理部43aに出力する。呼処理部43aは、アクティブチャネル数が最大チャネル数より小さい場合に、着信を許可する(ステップS415)。
なお、電話番号に対応したアクティブチャネル数や最大チャネル数が電話番号設定情報から読み出せなかった場合、あるいは、アクティブチャネル数が最大チャネル数以上であった場合、呼処理部43aはダイアログを確立せず、呼を終了させる。
The call processing unit 43a of the media server 4a acquires the destination telephone number from the To field of the INVITE packet and writes it in the main storage unit 45a (step S410). Upon receiving an instruction from the call processing unit 43a, the control unit 44a notifies the external storage device 6 of the acquired telephone number and instructs to read out the maximum channel number and the active channel number. The control unit 44a receives the maximum number of channels and the number of active channels that the external storage device 6 has read out from the telephone number setting information in the telephone number setting storage unit 61 corresponding to the telephone number, and outputs it to the call processing unit 43a. The call processing unit 43a permits an incoming call when the number of active channels is smaller than the maximum number of channels (step S415).
If the number of active channels or the maximum number of channels corresponding to the telephone number cannot be read from the telephone number setting information, or if the number of active channels is equal to or greater than the maximum number of channels, the call processing unit 43a establishes a dialog. Rather, the call is terminated.

呼処理部43aは、着信を許可する場合、SIPの仕様に従ってダイアログを確立するとともに、呼の再開に必要なSIPの情報を主記憶部45aに書き込む(ステップS420)。具体的には、以下のように動作する。   When permitting an incoming call, the call processing unit 43a establishes a dialog according to the SIP specification and writes SIP information necessary for resuming the call into the main storage unit 45a (step S420). Specifically, it operates as follows.

呼処理部43aは、受信したINVITEパケットを主記憶部45aに書き込むとともに、INVITEパケットに設定されているfromタグ、callid、各種ヘッダフィールド、電話端末1が用いるRTPポート番号及びIPアドレス、電話端末のCSeqを読み出して主記憶部45aに書き込む。なお、RTPポート番号及びIPアドレスは、ACKパケットから取得する場合もある。   The call processing unit 43a writes the received INVITE packet to the main storage unit 45a, and also sets the from tag, callid, various header fields set in the INVITE packet, the RTP port number and IP address used by the telephone terminal 1, and the telephone terminal CSeq is read and written to the main memory 45a. Note that the RTP port number and IP address may be obtained from the ACK packet.

呼処理部43aは、例えば、図7のステップS115〜S140の処理に示すように、SIPの仕様に従って180Tring、Ringing、200OKの送信、ACKの受信を行なう。呼処理部43aは、送受信したこれらの各SIPパケットを主記憶部45aに書き込むとともに、これらのSIPパケットに設定されている電話端末のCSeqやメディアサーバのCSeqメディアサーバのCSeq、各種ヘッダフィールドを主記憶部45aに書き込む。   For example, as shown in the processing of steps S115 to S140 in FIG. 7, the call processing unit 43a transmits 180 Tring, Ringing, 200 OK, and receives ACK according to the SIP specifications. The call processing unit 43a writes each of these transmitted / received SIP packets in the main storage unit 45a, and also stores the CSeq of the telephone terminal set in these SIP packets, the CSeq of the CSeq media server of the media server, and various header fields. Write to the storage unit 45a.

なお、呼処理部43aは、200OKを送信する際には、200OKに設定したtoタグと、メディアサーバ4aが用いるRTPポート番号及びIPアドレスとを主記憶部45aに書き込む。
また、各種ヘッダフィールドには、To、From、Record−Route、Viaヘッダフィールドがあるが、Record−Route、Viaヘッダフィールドは取得できない場合もある。
Note that when transmitting 200 OK, the call processing unit 43a writes the to tag set to 200 OK, the RTP port number and the IP address used by the media server 4a, to the main storage unit 45a.
The various header fields include the To, From, Record-Route, and Via header fields. However, the Record-Route and Via header fields may not be acquired.

電話端末1とのダイアログ確立後、制御部44aは、外部記憶装置6にステップS410において取得した電話番号を通知し、アクティブチャネル数の加算を指示する。外部記憶装置6は、電話番号により電話番号設定記憶部61内の電話番号設定情報のレコードを特定し、特定したレコードに設定されているアクティブチャネル数に1を加算する(ステップS425)。   After the dialog with the telephone terminal 1 is established, the control unit 44a notifies the external storage device 6 of the telephone number acquired in step S410 and instructs addition of the number of active channels. The external storage device 6 identifies the telephone number setting information record in the telephone number setting storage unit 61 by the telephone number, and adds 1 to the number of active channels set in the identified record (step S425).

次に、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバのCSeq、電話端末のCSeq、INVITEパケットのToフィールドから取得した着信側の電話番号であるサーバ側電話番号、INVITEパケットのFromフィールドから取得した発信側の電話番号である端末側電話番号、各種ヘッダフィールドと、着信を示す発着信フラグとを登録呼処理復旧情報として外部記憶装置6に出力し、呼処理復旧情報への登録を指示する(ステップS430)。外部記憶装置6は、呼処理復旧情報記憶部63内の呼処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録呼処理復旧情報を設定する。   Next, the control unit 44a that has received an instruction from the call processing unit 43a of the media server 4a, the to tag, the from tag, the call, the CSeq of the media server, the CSeq of the telephone terminal, and the INVITE packet stored in the main storage unit 45a. Server side telephone number which is the telephone number of the receiving side acquired from the To field of the terminal, telephone number of the terminal side which is the telephone number of the calling side acquired from the From field of the INVITE packet, various header fields, and an outgoing / incoming flag indicating incoming Is output to the external storage device 6 as registered call processing recovery information, and registration to the call processing recovery information is instructed (step S430). The external storage device 6 adds a record to the call processing recovery information in the call processing recovery information storage unit 63, and sets the registered call processing recovery information received from the media server 4a in the added record.

さらに、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバ4aが用いるRTPポート番号及びIPアドレス、電話端末1が用いるRTPポート番号及びIPアドレスを登録音声処理復旧情報として外部記憶装置6に出力し、音声処理復旧情報への登録を指示する(ステップS435)。外部記憶装置6は、音声処理復旧情報記憶部64内の音声処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録音声処理復旧情報を設定する。
メディアサーバ4aの呼処理部43aは、制御部44aにダイアログの確立を通知する。
Further, the control unit 44a receiving the instruction from the call processing unit 43a of the media server 4a, the to tag, the from tag, and the call stored in the main storage unit 45a, the RTP port number and IP address used by the media server 4a, the telephone The RTP port number and IP address used by the terminal 1 are output to the external storage device 6 as registered voice processing recovery information, and an instruction to register the voice processing recovery information is given (step S435). The external storage device 6 adds a record to the audio processing recovery information in the audio processing recovery information storage unit 64, and sets the registered audio processing recovery information received from the media server 4a in the added record.
The call processing unit 43a of the media server 4a notifies the establishment of the dialog to the control unit 44a.

ダイアログの確立の通知を受信した制御部44aは、主記憶部45aから着信先の電話番号を読み出すと、外部記憶装置6に読み出した電話番号を通知してIVR ID及び最大チャネル数の読み出しを指示する。メディアサーバ4aの制御部44aは、外部記憶装置6が電話番号に対応して電話番号設定記憶部61内の電話番号設定情報から読み出したIVR ID及び最大チャネル数を受信し、主記憶部45aに書き込む(ステップS440)。   Receiving the dialog establishment notification, the control unit 44a reads the destination telephone number from the main storage unit 45a, notifies the external storage device 6 of the read telephone number, and instructs to read the IVR ID and the maximum number of channels. To do. The control unit 44a of the media server 4a receives the IVR ID and the maximum number of channels read from the telephone number setting information in the telephone number setting storage unit 61 by the external storage device 6 corresponding to the telephone number, and stores it in the main storage unit 45a. Writing is performed (step S440).

続いて、制御部44aは、外部記憶装置6に受信したIVR IDを通知してIVRフローシナリオの読み出しを指示する。制御部44aは、外部記憶装置6がIVR IDに対応してIVRフロー記憶部62内のIVRフローデータから読み出したIVRフローシナリオを受信し、主記憶部45aに書き込む(ステップS445)。   Subsequently, the control unit 44a notifies the external storage device 6 of the received IVR ID and instructs the reading of the IVR flow scenario. The control unit 44a receives the IVR flow scenario read from the IVR flow data in the IVR flow storage unit 62 corresponding to the IVR ID by the external storage device 6, and writes it in the main storage unit 45a (step S445).

次に、制御部44aは、外部記憶装置6に主記憶部45aから取得したtoタグ、fromタグ、及び、callidを通知してコマンド実行履歴の読み出しを指示する。制御部44aは、外部記憶装置6がtoタグ、fromタグ、及び、callidに対応してIVR処理情報記憶部65内のIVR処理情報から読み出したコマンド実行履歴を受信し、主記憶部45aに書き込む(ステップS450)。なお、コマンド実行履歴が読み出せなかった場合は、初期状態であると判断する。   Next, the control unit 44a notifies the external storage device 6 of the to tag, the from tag, and the callid acquired from the main storage unit 45a and instructs to read the command execution history. The control unit 44a receives the command execution history read from the IVR processing information in the IVR processing information storage unit 65 by the external storage device 6 corresponding to the to tag, the from tag, and the call, and writes the command execution history in the main storage unit 45a. (Step S450). If the command execution history cannot be read, it is determined that the current state is the initial state.

図11において、制御部44aは、IVR処理部46aに主記憶部45aに書き込んだIVRシナリオとコマンド実行履歴を出力し、IVRフローの実行を指示する。IVR処理部46aは、コマンド実行履歴がなく、初期状態であると判断した場合、IVRシナリオを最初から実行する。コマンド実行履歴に実行したコマンドが設定されている場合、そのコマンドにより示される途中のIVR処理からIVRシナリオを実行する(ステップS505)。   In FIG. 11, the control unit 44a outputs the IVR scenario and the command execution history written in the main storage unit 45a to the IVR processing unit 46a, and instructs execution of the IVR flow. If the IVR processing unit 46a determines that there is no command execution history and is in the initial state, the IVR processing unit 46a executes the IVR scenario from the beginning. If the executed command is set in the command execution history, the IVR scenario is executed from the IVR process halfway indicated by the command (step S505).

音声処理部47aは、制御部44aの指示を受け、自メディアサーバ4aが使用するSSRC及びRTPシーケンスナンバを生成すると、主記憶部45aから自メディアサーバ4aが用いるRTPポート番号及びIPアドレスと、電話端末1が用いるRTPポート番号及びIPアドレスを読み出し、これらの情報を用いて電話端末1との間のRTPセッションを確立し、RTPパケットの送受信を開始する(ステップS510)。制御部44aは、メディアサーバのSSRC、最初に送信したRTPパケットに設定したRTPシーケンスナンバ、RTPセッションを開始した時間を示す発着信開始時間を主記憶部45aに書き込む。   When the voice processing unit 47a receives an instruction from the control unit 44a and generates the SSRC and RTP sequence number used by the own media server 4a, the RTP port number and IP address used by the own media server 4a from the main storage unit 45a, and the telephone The RTP port number and IP address used by the terminal 1 are read out, and using these pieces of information, an RTP session is established with the telephone terminal 1 and transmission / reception of RTP packets is started (step S510). The control unit 44a writes the SSRC of the media server, the RTP sequence number set in the first transmitted RTP packet, and the outgoing / incoming start time indicating the time when the RTP session is started in the main storage unit 45a.

制御部44aは、RTPセッションが確立され、RTPパケットの送受信が行なわれると、主記憶部45aからtoタグ、fromタグ、callid、メディアサーバのSSRC、メディアサーバ4aが電話端末1とのRTPセッションにおいて最初に使用したRTPシーケンスナンバ、当該RTPセッションにおいて最初にRTPパケットを送信した時刻である発着開始時間を外部記憶装置6に通知し、音声処理復旧情報の更新を指示する(ステップS515)。外部記憶装置6は、toタグ、fromタグ及びcallidにより音声処理復旧情報記憶部64内の音声処理復旧情報のレコードを特定し、特定したレコードにメディアサーバ4のSSRC及びRTPシーケンスナンバと、発着開始時間とを書き込む。なお、toタグ、fromタグ及びcallidに対応したレコードが音声処理復旧情報に登録されていない場合、新たなレコードを追加し、追加したレコードにメディアサーバ4のSSRC及びRTPシーケンスナンバと、発着開始時間とを書き込む。   When the RTP session is established and the RTP packet is transmitted / received, the control unit 44a transmits the to tag, the from tag, the call, the SSRC of the media server, and the media server 4a in the RTP session with the telephone terminal 1 from the main storage unit 45a. The RTP sequence number used first and the arrival / departure start time, which is the time when the RTP packet is first transmitted in the RTP session, are notified to the external storage device 6, and the update of the voice processing recovery information is instructed (step S515). The external storage device 6 identifies the record of the voice processing restoration information in the voice processing restoration information storage unit 64 by the to tag, the from tag, and the call, and starts the arrival and departure of the SSRC and RTP sequence number of the media server 4 in the identified record. Write time and. In addition, when the record corresponding to the to tag, the from tag, and the callid is not registered in the audio processing recovery information, a new record is added, and the SSRC and RTP sequence number of the media server 4 and the arrival / departure start time are added to the added record. And write.

メディアサーバ4aは、IVRシナリオを実行していく。具体的には、音声処理部47aは、IVR処理部46aからの指示により、電話端末1に対して再生音声のRTPパケットを送信し、エンドユーザにガイダンスを聞かせたり、電話端末1から受信したRTPパケットにより示されるDTMFや発話内容などをIVR処理部46aが認識したりする。IVR処理部46aは、DTMFやエンドユーザの発話などの音声を認識する度にその認識結果をIVR処理情報に追加するよう制御部44aに指示する。また、IVR処理部46aは、音声認識や音声再生などコマンドをひとつ実行する度に、現在実行しているIVRフローの位置を特定する情報をコマンド実行履歴としてIVR処理情報記憶部65に書き込むよう制御部44aに指示する。具体的には、制御部44aは、現在処理中の呼のtoタグ、fromタグ、callidと、認識結果あるいはコマンド実行履歴を通知して、IVR処理情報の更新を外部記憶装置6に指示する(ステップS520)。外部記憶装置6は、toタグ、fromタグ、callidによりIVR処理情報記憶部65内のIVR処理情報のレコードを特定し、特定したレコードに認識結果あるいはコマンド履歴を書き込む。   The media server 4a executes the IVR scenario. Specifically, the voice processing unit 47a transmits an RTP packet of the playback voice to the telephone terminal 1 in response to an instruction from the IVR processing unit 46a, and gives the end user guidance or receives the RTP received from the telephone terminal 1. The IVR processing unit 46a recognizes the DTMF or the utterance content indicated by the packet. The IVR processing unit 46a instructs the control unit 44a to add the recognition result to the IVR processing information every time it recognizes speech such as DTMF or end user utterance. Further, every time one command such as voice recognition or voice playback is executed, the IVR processing unit 46a controls to write information specifying the position of the currently executed IVR flow in the IVR processing information storage unit 65 as a command execution history. The unit 44a is instructed. Specifically, the control unit 44a notifies the external storage device 6 of the update of the IVR processing information by notifying the to tag, the from tag, and the call of the call currently being processed, the recognition result or the command execution history ( Step S520). The external storage device 6 specifies the record of the IVR processing information in the IVR processing information storage unit 65 using the to tag, the from tag, and the call, and writes the recognition result or the command history in the specified record.

メディアサーバ4aは、150秒以上など所定の時間以上通話が継続する場合(ステップS525:YES)、IVRフローを実行の合間に、セッションの継続確認処理を行なう。つまり、メディアサーバ4aの呼処理部43aは、所定の時間以上通話が継続していることを検出した場合、定期的にre−INVITEパケットあるいはUPDATEパケットを電話端末1に送信する(ステップS530)。
制御部44aは、呼処理部43aがre−INVITEパケットあるいはUPDATEパケットを送信することにより更新されたメディアサーバのCSeqにより呼処理復旧情報を更新する。つまり、制御部44aは、現在処理中の呼のtoタグ、fromタグ、callidと、更新されたメディアサーバのCSeqを外部記憶装置6に通知して、呼処理復旧情報の更新を指示する。外部記憶装置6は、toタグ、fromタグ、callidにより呼処理復旧情報記憶部63内の呼処理復旧情報のレコードを特定し、特定したレコードに記述されているメディアサーバのCSeqを、受信したCSeqにより更新する。
If the call continues for a predetermined time such as 150 seconds or longer (step S525: YES), the media server 4a performs a session continuation confirmation process between executions of the IVR flow. That is, the call processing unit 43a of the media server 4a periodically transmits a re-INVITE packet or an UPDATE packet to the telephone terminal 1 when detecting that the call is continued for a predetermined time or more (step S530).
The control unit 44a updates the call processing recovery information with the CSeq of the media server updated by the call processing unit 43a transmitting the re-INVITE packet or the UPDATE packet. That is, the control unit 44a notifies the external storage device 6 of the to tag, the from tag, and the call of the call currently being processed and the CSeq of the updated media server, and instructs the update of the call processing recovery information. The external storage device 6 identifies the call processing recovery information record in the call processing recovery information storage unit 63 by the to tag, from tag, and call, and receives the CSeq of the media server described in the specified record. Update with

また、メディアサーバ4aの呼処理部43aが、電話端末1からre−INVITEパケットあるいはUPDATEパケットを受信する場合もある。この場合、呼処理部43aは、受信したre−INVITEパケットあるいはUPDATEパケットのパケットからtoタグ、fromタグ、callid、及び、電話端末のCSeqを読み出して、制御部44aに出力する。制御部44aは、呼処理部43aから受信したtoタグ、fromタグ、callid及び電話端末のCSeqを外部記憶装置6に通知して、呼処理復旧情報の更新を指示する。外部記憶装置6は、toタグ、fromタグ、callidにより呼処理復旧情報記憶部63内の呼処理復旧情報のレコードを特定し、特定したレコードに記述されている電話端末のCSeqを、受信した電話端末のCSeqにより更新する。   Further, the call processing unit 43a of the media server 4a may receive a re-INVITE packet or an UPDATE packet from the telephone terminal 1. In this case, the call processing unit 43a reads the to tag, the from tag, the call, and the CSeq of the telephone terminal from the received re-INVITE packet or UPDATE packet, and outputs them to the control unit 44a. The control unit 44a notifies the external storage device 6 of the to tag, from tag, callid, and CSeq of the telephone terminal received from the call processing unit 43a, and instructs to update the call processing recovery information. The external storage device 6 identifies the call processing recovery information record in the call processing recovery information storage unit 63 by the to tag, from tag, and call, and receives the CSeq of the telephone terminal described in the specified record. Update with CSeq of terminal.

電話端末1からの通信断により通話が終了する場合、電話端末1からBYEパケットがメディアサーバ4aに送信される(ステップS525:NO、ステップS530:エンドユーザからの通信断)。メディアサーバ4aの呼処理部43aは、電話端末1から送信されたBYEパケットを受信すると、このパケットからtoタグ、fromタグ、callidを取得して制御部44aに出力する。
制御部44aは、呼処理部43aから受信したtoタグ、fromタグ、callidをIVR処理部46aに出力し、IVR処理の終了を指示する。制御部44aは、呼処理部43aから受信したtoタグ、fromタグ、callidにより特定される呼に対して実行していたIVRフローシナリオの実行を終了する(ステップS540)。
さらに、制御部44aは、呼処理部43aから受信したtoタグ、fromタグ、callidを音声処理部47aに出力し、RTPセッションの終了を指示する。音声処理部47aは、呼処理部43aから受信したtoタグ、fromタグ、callidにより特定される呼について確立していたセッションを終了する(ステップS545)。
呼処理部43aは、BYEパケットの応答として電話端末1に200OKを返送する(ステップS550)。
When the call is terminated due to the communication disconnection from the telephone terminal 1, a BYE packet is transmitted from the telephone terminal 1 to the media server 4a (step S525: NO, step S530: communication disconnection from the end user). When receiving the BYE packet transmitted from the telephone terminal 1, the call processing unit 43a of the media server 4a acquires a to tag, a from tag, and a call from this packet and outputs the acquired to tag to the control unit 44a.
The control unit 44a outputs the to tag, the from tag, and the call received from the call processing unit 43a to the IVR processing unit 46a, and instructs the end of the IVR processing. The control unit 44a ends the execution of the IVR flow scenario executed for the call specified by the to tag, the from tag, and the call received from the call processing unit 43a (step S540).
Further, the control unit 44a outputs the to tag, the from tag, and the call received from the call processing unit 43a to the voice processing unit 47a, and instructs the end of the RTP session. The voice processing unit 47a ends the session established for the call specified by the to tag, the from tag, and the call received from the call processing unit 43a (step S545).
The call processing unit 43a returns 200 OK to the telephone terminal 1 as a response to the BYE packet (step S550).

あるいは、IVRフローが最後まで実行された場合、メディアサーバ4aからの通信断により通話が終了する(ステップS525:NO、ステップS530:メディアサーバからの通信断)。IVR処理部46aは、制御部44aに対してIVRフロー実行終了を通知する。
制御部44aが呼処理部43aにIVRフロー実行終了を通知すると、呼処理部43aは、電話端末1にBYEパケットを送信し(ステップS555)、電話端末1に通話終了を指示する。さらに、制御部44aは、音声処理部47aに停止命令を出力し、RTPセッションの終了を指示する。音声処理部47aは、電話端末1との間で確立していたセッションを終了する(ステップS560)。最後に、呼処理部43aは、電話端末1からBYEパケットの応答として200OKを受信する(ステップS565)。
Alternatively, when the IVR flow is executed to the end, the call is terminated due to the communication disconnection from the media server 4a (step S525: NO, step S530: communication disconnection from the media server). The IVR processing unit 46a notifies the control unit 44a of the end of IVR flow execution.
When the control unit 44a notifies the call processing unit 43a of the end of IVR flow execution, the call processing unit 43a transmits a BYE packet to the telephone terminal 1 (step S555), and instructs the telephone terminal 1 to end the call. Furthermore, the control unit 44a outputs a stop command to the voice processing unit 47a to instruct the end of the RTP session. The voice processing unit 47a ends the session established with the telephone terminal 1 (step S560). Finally, the call processing unit 43a receives 200OK from the telephone terminal 1 as a response to the BYE packet (step S565).

上記のいずれかにより通話が終了したことを認識したメディアサーバ4aの制御部44aは、ステップS550またはS565の後、主記憶部45aから終了した呼のtoタグ、fromタグ、callidを読み出して外部記憶装置6へ送信し、呼処理復旧情報、音声処理復旧情報、及び、IVR処理情報の削除を指示する。外部記憶装置6は、toタグ、fromタグ、callidにより特定される呼処理復旧情報のレコード、音声処理復旧情報のレコード、及び、IVR処理情報のレコードを削除する(ステップS570)。   The control unit 44a of the media server 4a that has recognized that the call has been terminated by any of the above, reads the to tag, the from tag, and the call of the terminated call from the main storage unit 45a after step S550 or S565, and stores them externally. It transmits to the device 6 and instructs to delete call processing recovery information, voice processing recovery information, and IVR processing information. The external storage device 6 deletes the call processing recovery information record, the voice processing recovery information record, and the IVR processing information record specified by the to tag, the from tag, and call (step S570).

さらに、メディアサーバ4aの制御部44aは、終了した呼に対して実行していたIVRフローシナリオのIVR IDを外部記憶装置6へ送信し、アクティブチャネル数の減算を指示する(ステップS575)。外部記憶装置6は、IVR IDにより電話番号設定記憶部61が記憶している電話番号設定情報のレコードを特定し、特定したレコードに設定されているアクティブチャネル数を、1を減算した数に更新する。   Further, the control unit 44a of the media server 4a transmits the IVR ID of the IVR flow scenario being executed for the terminated call to the external storage device 6 and instructs the subtraction of the number of active channels (step S575). The external storage device 6 identifies the telephone number setting information record stored in the telephone number setting storage unit 61 by the IVR ID, and updates the number of active channels set in the identified record to a number obtained by subtracting 1 To do.

図12は、本実施形態による現用系のメディアサーバ4における発信時の処理フローを示す図である。
メディアサーバ4aの制御部44aは、発信制御装置7から発信指示を受信する(ステップS605)。発信指示には、サーバ側電話番号及び端末側電話番号が設定される。
FIG. 12 is a diagram showing a processing flow at the time of outgoing call in the active media server 4 according to the present embodiment.
The control unit 44a of the media server 4a receives a call instruction from the call control device 7 (step S605). A server-side telephone number and a terminal-side telephone number are set in the outgoing call instruction.

メディアサーバ4aの呼処理部43aは、発信指示から取得したサーバ側電話番号を外部記憶装置6に通知し、最大チャネル数及びアクティブチャネル数の読み出しを指示する(ステップS610)。制御部44aは、外部記憶装置6が電話番号に対応して電話番号設定記憶部61内の電話番号設定情報から読み出した最大チャネル数及びアクティブチャネル数を受信すると、これらを比較する。制御部44aは、アクティブチャネル数が最大チャネル数より小さい場合に着信を許可し、呼処理部43aに発信を指示する。
なお、サーバ側電話番号が電話番号設定情報に設定されていない場合、あるいは、アクティブチャネル数が最大チャネル数以上であった場合、制御部44aは発信を指示せず、処理を終了する。
The call processing unit 43a of the media server 4a notifies the external storage device 6 of the server-side telephone number acquired from the outgoing call instruction, and instructs to read out the maximum channel number and the active channel number (step S610). When the external storage device 6 receives the maximum channel number and the active channel number read from the telephone number setting information in the telephone number setting storage unit 61 corresponding to the telephone number, the control unit 44a compares these. The control unit 44a permits an incoming call when the number of active channels is smaller than the maximum number of channels, and instructs the call processing unit 43a to make a call.
If the server side telephone number is not set in the telephone number setting information, or if the number of active channels is equal to or greater than the maximum number of channels, the control unit 44a does not instruct outgoing and ends the process.

制御部44aから発信指示を受けた呼処理部43aは、SIPの仕様に従って電話端末1とのダイアログを確立するとともに、呼の再開に必要なSIPの情報を主記憶部45aに書き込む(ステップS615)。具体的には、以下のように動作する。   The call processing unit 43a that has received a call origination instruction from the control unit 44a establishes a dialog with the telephone terminal 1 in accordance with the SIP specification, and writes SIP information necessary for resuming the call into the main storage unit 45a (step S615). . Specifically, it operates as follows.

呼処理部43aは、INVITEパケットを生成し、電話端末1に送信する。INVITEパケットのToフィールドには発信制御装置7から受信した端末側電話番号が、Fromフィールドには発信制御装置7から受信したサーバ側電話番号と、生成したfromタグが設定される。
制御部44aは、INVITEパケットを主記憶部45aに書き込むとともに、INVITEパケットに設定したfromタグ、callid、各種ヘッダフィールド、メディアサーバ4のRTPポート番号及びIPアドレス、メディアサーバのCSeqを読み出して主記憶部45aに書き込む。なお、RTPポート番号及びIPアドレスは、ACKパケットに設定される場合もある。
The call processing unit 43a generates an INVITE packet and transmits it to the telephone terminal 1. The terminal-side telephone number received from the transmission control device 7 is set in the To field of the INVITE packet, and the server-side telephone number received from the transmission control device 7 and the generated from tag are set in the From field.
The control unit 44a writes the INVITE packet to the main storage unit 45a, and also reads the from tag, callid, various header fields, the RTP port number and IP address of the media server 4, and the CSeq of the media server that are set in the INVITE packet. Write to part 45a. Note that the RTP port number and IP address may be set in the ACK packet.

呼処理部43aは、一般的なSIPの仕様に従って、180Tring、Ringing、200OKの受信、ACKの送信を行ない、電話端末1とのダイアログを確立する。呼処理部43aは、送受信したこれらの各SIPパケットを主記憶部45aに書き込むとともに、これらのSIPパケットに設定されている電話端末のCSeqやメディアサーバのCSeq、各種ヘッダフィールドを主記憶部45aに書き込む。
なお、呼処理部43aは、電話端末1から受信した200OKから、toタグと、電話端末1が用いるRTPポート番号及びIPアドレスを取得して主記憶部45aに書き込む。
また、各種ヘッダフィールドには、To、From、Record−Route、Viaヘッダフィールドがあるが、Record−Route、Viaヘッダフィールドは取得できない場合もある。
The call processing unit 43a receives 180 Tring, Ringing, 200 OK, and transmits ACK according to general SIP specifications, and establishes a dialog with the telephone terminal 1. The call processing unit 43a writes the transmitted / received SIP packets to the main storage unit 45a, and also stores the CSeq of the telephone terminal, the CSeq of the media server, and various header fields set in these SIP packets in the main storage unit 45a. Write.
The call processing unit 43a acquires the to tag, the RTP port number and the IP address used by the telephone terminal 1 from the 200 OK received from the telephone terminal 1, and writes them in the main storage unit 45a.
The various header fields include the To, From, Record-Route, and Via header fields. However, the Record-Route and Via header fields may not be acquired.

電話端末1とのダイアログ確立後、制御部44aは、ステップS610において受信した発信指示から取得した電話番号を外部記憶装置6に通知し、アクティブチャネル数の加算を指示する。外部記憶装置6は、電話番号により電話番号設定記憶部61内の電話番号設定情報のレコードを特定し、特定したレコードに設定されているアクティブチャネル数に1を加算する(ステップS620)。   After the dialog with the telephone terminal 1 is established, the control unit 44a notifies the external storage device 6 of the telephone number acquired from the call instruction received in step S610, and instructs the addition of the number of active channels. The external storage device 6 identifies the telephone number setting information record in the telephone number setting storage unit 61 based on the telephone number, and adds 1 to the number of active channels set in the identified record (step S620).

以降、メディアサーバ4aは、図10のステップS430以降と同様の処理を行なう。ただし、ステップS430において、登録呼処理復旧情報には、発信を示す発着信フラグ、INVITEのFromフィールドから取得した発信側の電話番号であるサーバ側電話番号、INVITEパケットのToフィールドから取得した着信側の電話番号である端末側電話番号が設定される。   Thereafter, the media server 4a performs the same processing as that after step S430 in FIG. However, in step S430, the registered call processing recovery information includes the outgoing / incoming flag indicating the outgoing call, the server side telephone number that is the telephone number of the outgoing side obtained from the INVITE From field, and the incoming side obtained from the To field of the INVITE packet. Is set as the terminal-side telephone number.

図13は、本実施形態による現用系のメディアサーバ4の故障が検出されたときに待機系のメディアサーバ4が実行する復旧処理フローを示す図である。
IVR処理中にメディアサーバ4aの故障が発生した場合、図9に示すように待機系のメディアサーバ4bの監視部41bが現用系の故障を検出する。メディアサーバ4bの監視部41bは、復旧処理部48を起動する(ステップS705)。復旧処理部48bは、通信部40bにメディアサーバ4aの通信部40aが使用していたIPアドレスを引継がせ、メディアサーバ4bは現用系として起動する。
FIG. 13 is a diagram showing a restoration processing flow executed by the standby media server 4 when a failure of the active media server 4 according to the present embodiment is detected.
When a failure of the media server 4a occurs during the IVR process, the monitoring unit 41b of the standby media server 4b detects the failure of the active system as shown in FIG. The monitoring unit 41b of the media server 4b activates the recovery processing unit 48 (step S705). The recovery processing unit 48b causes the communication unit 40b to take over the IP address used by the communication unit 40a of the media server 4a, and the media server 4b is activated as the active system.

メディアサーバ4bの復旧処理部48bは、外部記憶装置6の呼処理復旧情報記憶部63に記憶されている呼処理復旧情報を1レコードずつ特定し、特定したレコードを読み出して主記憶部45bに書き込むとともに、当該レコードからtoタグ、fromタグ及びcallidを読み出して(ステップS710)、以下の処理を行なう。なお、外部記憶装置6からtoタグ、fromタグ及びcallidのみを読み出すことでもよい。   The recovery processing unit 48b of the media server 4b specifies call processing recovery information stored in the call processing recovery information storage unit 63 of the external storage device 6 one record at a time, reads the specified record, and writes it to the main storage unit 45b. At the same time, the to tag, from tag, and callid are read from the record (step S710), and the following processing is performed. Note that only the to tag, the from tag, and the callid may be read from the external storage device 6.

制御部44bは、ステップS710において取得したtoタグ、fromタグ及びcallidの組を外部記憶装置6に通知し、音声処理復旧情報、及び、IVR処理情報の読み出しを指示する(ステップS715)。制御部44bは、外部記憶装置6が各toタグ、fromタグ及びcallidの組に対応して読み出した音声処理復旧情報記憶部64内の音声処理復旧情報のレコード、及び、IVR処理情報記憶部65内のIVR処理情報内のレコードを受信し、主記憶部45bに書き込む。   The control unit 44b notifies the external storage device 6 of the set of the to tag, the from tag, and the call acquired in step S710, and instructs to read out the audio processing recovery information and the IVR processing information (step S715). The control unit 44b includes a record of audio processing recovery information in the audio processing recovery information storage unit 64 read by the external storage device 6 corresponding to each set of to tag, from tag, and call, and an IVR processing information storage unit 65. The record in the IVR processing information is received and written to the main storage unit 45b.

さらに、制御部44bは、ステップS710において主記憶部45bに保存した呼処理復旧情報記のレコードからサーバ側電話番号を取得すると、外部記憶装置6に取得したサーバ側電話番号を通知してIVR IDの読み出しを指示する。制御部44bは、外部記憶装置6がサーバ側電話番号に対応して電話番号設定記憶部61内の電話番号設定情報から読み出したIVR IDを受信する。まだこのIVR IDに対応したIVRフローを読み出していない場合、制御部44bは、外部記憶装置6に受信したIVR IDを通知してIVRフローシナリオの読み出しを指示する。制御部44bは、外部記憶装置6がIVR IDに対応してIVRフロー記憶部62内のIVRフローデータから読み出したIVRフローシナリオを受信し、主記憶部45bに書き込む。   Further, when the control unit 44b acquires the server-side telephone number from the call processing recovery information record stored in the main storage unit 45b in step S710, the control unit 44b notifies the external storage device 6 of the acquired server-side telephone number and notifies the IVR ID. Is instructed to read. The control unit 44b receives the IVR ID read from the telephone number setting information in the telephone number setting storage unit 61 by the external storage device 6 corresponding to the server side telephone number. If the IVR flow corresponding to the IVR ID has not been read yet, the control unit 44b notifies the external storage device 6 of the received IVR ID and instructs the reading of the IVR flow scenario. The control unit 44b receives the IVR flow scenario read from the IVR flow data in the IVR flow storage unit 62 corresponding to the IVR ID by the external storage device 6, and writes the IVR flow scenario in the main storage unit 45b.

なお、コマンドの番号によりIVRフローシナリオが特定可能な場合、メディアサーバ4bの制御部44bは、ステップS715において主記憶部45bに保存したIVR処理情報のレコード内のコマンド実行履歴からコマンドを読み出して外部記憶装置6に通知し、IVRフローシナリオの読み出しを指示する。外部記憶装置6は、IVRフロー記憶部62内のIVRフローデータから、コマンドに対応したIVR処理が含まれているIVRフローを読み出してメディアサーバ4bへ出力する。   When the IVR flow scenario can be specified by the command number, the control unit 44b of the media server 4b reads the command from the command execution history in the record of the IVR processing information stored in the main storage unit 45b in step S715 and externally The storage device 6 is notified, and reading of the IVR flow scenario is instructed. The external storage device 6 reads the IVR flow including the IVR process corresponding to the command from the IVR flow data in the IVR flow storage unit 62, and outputs it to the media server 4b.

メディアサーバ4bの音声処理部47bは、ステップS715において主記憶部45bに保存したIVR処理情報のレコード内のコマンド実行履歴からコマンドを読み出す。IVR処理部47bは、主記憶部45bに記憶されているIVRシナリオを、読み出したコマンドにより特定されるIVR処理から実行することによって、IVR処理を途中から再開する(ステップS720)。   The voice processing unit 47b of the media server 4b reads the command from the command execution history in the record of the IVR processing information saved in the main storage unit 45b in step S715. The IVR processing unit 47b resumes the IVR process from the middle by executing the IVR scenario stored in the main storage unit 45b from the IVR process specified by the read command (step S720).

音声処理部47bは、ステップS715において制御部44bが特定したIVR処理情報のレコードに設定されている値を用いて、電話端末1との間のRTPセッションを再開する(ステップS725)。
具体的には、制御部44bが、ステップS715において読み出した音声処理復旧情報のレコードから発着信開始時間とメディアサーバ4のRTPシーケンスナンバを読み出す。制御部44bは、発着信開始時間から現在の時間までの経過時間を算出すると、この経過時間をRTPパケットの送出間隔で除算することにより、RTPシーケンスナンバの増加分を算出する。RTPの受信側では、RTPシーケンスナンバが1ずつ増加しているかの検証を行なっているため、算出した増加分に所定の定数を加算するなどし、エラーとならない範囲の値としてもよい。制御部44bは、音声処理復旧情報のレコードから読み出したRTPシーケンスナンバに、算出した増加分を加算して、音声処理部47bから送信する最初のRTPパケットに設定すべきRTPシーケンスナンバを算出すると、音声処理部47bへ通知する。また、制御部44bは、通信部40bに指示し、読み出した音声処理復旧情報のレコードで示されるメディアサーバのRTPポートとIPアドレスをオープンする。
The voice processing unit 47b resumes the RTP session with the telephone terminal 1 using the value set in the record of the IVR processing information specified by the control unit 44b in step S715 (step S725).
Specifically, the control unit 44b reads out the outgoing / incoming start time and the RTP sequence number of the media server 4 from the record of the voice processing recovery information read out in step S715. When calculating the elapsed time from the outgoing / incoming start time to the current time, the control unit 44b divides the elapsed time by the RTP packet transmission interval to calculate the increment of the RTP sequence number. Since the RTP receiving side verifies whether the RTP sequence number is incremented by one, a predetermined constant may be added to the calculated increment, and the value may be within a range that does not cause an error. When the control unit 44b calculates the RTP sequence number to be set in the first RTP packet to be transmitted from the voice processing unit 47b by adding the calculated increment to the RTP sequence number read from the voice processing recovery information record, Notify the audio processing unit 47b. Also, the control unit 44b instructs the communication unit 40b to open the RTP port and IP address of the media server indicated by the read voice processing recovery information record.

音声処理部47bは、IVR処理による音声をRTPパケットにより電話端末1へ送信するとともに、電話端末1から送信されたRTPパケットを受信する。電話端末1に送信されるRTPパケットには、ステップS715において読み出したIVR処理情報のレコードに設定されているメディアサーバ4のSSRCと、電話端末1のRTPポート番号及びIPアドレスが用いられる。最初にメディアサーバ4bから送信するRTPパケットには、制御部44bから通知されたRTPシーケンスナンバを用いる。また、音声処理部47bは、ステップS715において読み出したIVR処理情報のレコードに設定されているメディアサーバ4のRTPポート番号及びIPアドレスを用いたRTPパケットを電話端末1から受信する。   The voice processing unit 47b transmits the voice by the IVR process to the telephone terminal 1 by the RTP packet and receives the RTP packet transmitted from the telephone terminal 1. For the RTP packet transmitted to the telephone terminal 1, the SSRC of the media server 4, the RTP port number and the IP address of the telephone terminal 1 set in the record of the IVR processing information read in step S715 are used. The RTP sequence number notified from the control unit 44b is used for the RTP packet initially transmitted from the media server 4b. Also, the voice processing unit 47b receives from the telephone terminal 1 an RTP packet using the RTP port number and IP address of the media server 4 set in the record of the IVR processing information read in step S715.

続いて復旧処理部48bは、外部記憶装置6の呼処理復旧情報記憶部63に記憶されている呼処理復旧情報の中で、まだ読み出していないレコードがあるかを判断し(ステップS730)、まだ読み出していないレコードがあれば(ステップS730:YES)、ステップS710からの処理を行う。一方、全てのレコードについて読み出しを行なったならば(ステップS730:NO)、メディアサーバ4bにおいて、以降、メディアサーバ4aが行なっていたステップS520からの処理を行なう。つまり、各部の符号の最後記載されている「a」を「b」に置き換えればよい。   Subsequently, the recovery processing unit 48b determines whether there is a record that has not yet been read in the call processing recovery information stored in the call processing recovery information storage unit 63 of the external storage device 6 (step S730). If there is a record that has not been read (step S730: YES), the processing from step S710 is performed. On the other hand, if all the records have been read (step S730: NO), the media server 4b subsequently performs the processing from step S520 performed by the media server 4a. That is, it is only necessary to replace “a” described at the end of the reference numerals of each part with “b”.

なお、本実施形態のメモリ情報共有方式は、基本的には全てのデータを外部記憶装置6に保持する。そのため、電話端末1からSIP信号を受信すると、メディアサーバ4の呼処理部43は、受信したSIP信号から取得したtoタグ、fromタグ、及び、callidタグにより特定される外部記憶装置6内の呼処理復旧情報、音声処理復旧情報のレコードに対して情報の参照や書込みを行い、呼処理を実行する。ただし、処理の高速化のために外部記憶装置6と同様の情報をメディアサーバ4の主記憶部45上に保持し、データを読むだけの場合は主記憶部45から情報を取得し、データに更新があった場合のみ外部記憶装置6にアクセスして情報を更新するようにしてもよい。   Note that the memory information sharing method of the present embodiment basically holds all data in the external storage device 6. Therefore, when the SIP signal is received from the telephone terminal 1, the call processing unit 43 of the media server 4 calls the call in the external storage device 6 specified by the to tag, the from tag, and the call tag acquired from the received SIP signal. The information is referred to and written in the record of the process restoration information and the voice process restoration information, and the call process is executed. However, in order to speed up the processing, the same information as that of the external storage device 6 is held in the main storage unit 45 of the media server 4, and when only data is read, the information is acquired from the main storage unit 45 and is stored in the data. The information may be updated by accessing the external storage device 6 only when there is an update.

[第2の実施形態:メモリ情報再構築方式]
次に、本発明の第2の実施形態によるIVRシステムについて説明する。
本実施形態では、メモリ情報再構築方式によるフェールオーバを実現する。メモリ情報再構築方式では、メディアサーバ4は、SIPの処理を実行するための情報を自サーバ内のメモリに保持しており、受信したINVITEパケットや200OKパケット等のパケット自体を外部記憶装置6に記憶しておく。そして、現用系のメディアサーバ4が故障時した時には、待機系のメディアサーバ4が外部記憶装置6からINVITEパケットやACKパケットを読み込み、自らに当該パケットを送信して現用系が故障前に保持していたメモリの内容を待機系のメモリに再構築して状態復帰処理を行う。なお、待機系のメディアサーバ4は、自身が送信した状態復帰用のパケットに暫定応答を返さない等の特別なロジックを実装する必要がある。なお、RTP関連の情報及びIVR関連の情報の保存や復旧については、メモリ情報共有方式と同様である。
[Second Embodiment: Memory Information Reconstruction Method]
Next, an IVR system according to a second embodiment of the present invention will be described.
In this embodiment, failover by the memory information reconstruction method is realized. In the memory information reconstruction method, the media server 4 holds information for executing SIP processing in its own memory, and the received packet itself such as an INVITE packet or a 200 OK packet is stored in the external storage device 6. Remember. When the active media server 4 fails, the standby media server 4 reads an INVITE packet or an ACK packet from the external storage device 6, transmits the packet to itself, and holds the active system before the failure. The contents of the previously stored memory are reconstructed in the standby memory, and the status recovery process is performed. Note that the standby media server 4 needs to implement special logic such as not returning a provisional response to the state return packet transmitted by itself. Note that storage and restoration of RTP-related information and IVR-related information are the same as in the memory information sharing method.

上記のように、メモリ情報再構築方式は、現用系のメディアサーバ4の故障時は現用系が受信したパケットを待機系のメディアサーバ4に送信することで、待機系のメディアサーバ4が保持するメモリ情報を、現用系のメディアサーバ4と同じように復旧させる方式であり、メモリ情報共有方式に比べて改修範囲が少ないため、実装が比較的容易である。
以下では、第1の実施形態との差分について説明する。
As described above, in the memory information reconstruction method, when the active media server 4 fails, the standby media server 4 holds the packet received by the active system by transmitting the packet received to the standby media server 4. This is a method for recovering memory information in the same manner as the media server 4 of the active system, and since the repair range is smaller than that of the memory information sharing method, the implementation is relatively easy.
Below, the difference with 1st Embodiment is demonstrated.

本実施形態によるIVRシステムの構成は、図1に示す第1の実施形態によるIVRシステムの構成と同様である。
また、本実施形態による外部記憶装置6に記憶されるIVRフローデータ、電話番号設定情報、及び、IVR処理情報は、第1の実施形態と同様である。
The configuration of the IVR system according to the present embodiment is the same as the configuration of the IVR system according to the first embodiment shown in FIG.
The IVR flow data, telephone number setting information, and IVR processing information stored in the external storage device 6 according to this embodiment are the same as those in the first embodiment.

図14は、本実施形態による呼処理復旧情報記憶部63に記憶される呼処理復旧情報のデータ構成例を示す図である。同図に示すように、呼処理復旧情報は、toタグ、fromタグ、callid、INVITEパケット、ACKパケット、200OKパケット、メディアサーバのCSeq、電話端末のCSeq、発着信フラグ、サーバ側電話番号、端末側電話番号を対応付けたレコードからなり、各レコードは通話単位で生成される。メディアサーバ4への着信時にINVITEパケット、ACKパケットが保存され、メディアサーバ4からの発信時に200OKパケットが保存される。   FIG. 14 is a diagram showing a data configuration example of call processing recovery information stored in the call processing recovery information storage unit 63 according to the present embodiment. As shown in the figure, the call processing recovery information includes to tag, from tag, callid, INVITE packet, ACK packet, 200 OK packet, media server CSeq, telephone terminal CSeq, outgoing / incoming flag, server side telephone number, terminal Each record is generated in correspondence with a call. An INVITE packet and an ACK packet are stored when the call arrives at the media server 4, and a 200 OK packet is stored when the call is made from the media server 4.

図15は、本実施形態による音声処理復旧情報記憶部64に記憶される音声処理復旧情報のデータ構成例を示す図である。同図に示すように、音声処理復旧情報は、toタグ、fromタグ、callid、発着信開始時間、メディアサーバ4のRTPシーケンスナンバ、SSRC、RTPポート番号及びIPアドレスを対応付けたレコードからなり、各レコードは通話単位で生成される。なお、電話端末のRTPポート番号及びIPアドレスは呼処理復旧情報に記録されているSIPメッセージ中に記述される。   FIG. 15 is a diagram illustrating a data configuration example of the audio processing recovery information stored in the audio processing recovery information storage unit 64 according to the present embodiment. As shown in the figure, the voice processing restoration information is composed of a record in which a to tag, a from tag, a call, a call start / end time, an RTP sequence number of the media server 4, an SSRC, an RTP port number, and an IP address are associated with each other. Each record is generated for each call. The RTP port number and IP address of the telephone terminal are described in the SIP message recorded in the call processing recovery information.

図16は、本実施形態によるIVRシステムにおける故障発生時のシーケンスを示す図である。
同図において、ステップS805〜S840までの処理は、図8のステップS205〜S240の処理と同様である。
メディアサーバ4bはメディアサーバ4aの故障を検知すると、外部記憶装置6から呼処理復旧情報を読み出す(ステップS845)。メディアサーバ4bは、読込んだ呼処理復旧情報を用い、電話端末1から受信したものと同じSIPパケットを内部的に自メディアサーバ4b宛に送信する。ただし、この内部的に受信したSIPパケットに対する応答は電話端末1へは送信しない。これにより、メディアサーバ4bは、SIP処理に必要な情報を構築して主記憶部45bに記憶する(ステップS850)。
以降、ステップS855〜S880までの処理は、図8のステップS245〜S270の処理と同様である。
ステップS885において、電話端末1からSIPパケットを受信すると、メディアサーバ4bは、ステップS850において構築し、内部に記憶している情報を参照して、すでに確立済みのセッションのSIPパケットかを確認する(ステップS885)。
FIG. 16 is a diagram showing a sequence when a failure occurs in the IVR system according to the present embodiment.
In the figure, the processing from step S805 to S840 is the same as the processing from step S205 to S240 in FIG.
When the media server 4b detects a failure of the media server 4a, it reads the call processing recovery information from the external storage device 6 (step S845). The media server 4b internally transmits the same SIP packet received from the telephone terminal 1 to the own media server 4b using the read call processing recovery information. However, the response to the internally received SIP packet is not transmitted to the telephone terminal 1. Thereby, the media server 4b constructs information necessary for SIP processing and stores it in the main storage unit 45b (step S850).
Thereafter, the processing from step S855 to S880 is the same as the processing from step S245 to S270 in FIG.
In step S885, when a SIP packet is received from the telephone terminal 1, the media server 4b refers to the information that has been established in step S850 and stored therein, and confirms whether it is a SIP packet of an already established session ( Step S885).

次に、本実施形態によるメディアサーバ4における処理フローについて説明する。本実施形態による監視フローは、図12に示す第1の実施形態と同様である。   Next, a processing flow in the media server 4 according to the present embodiment will be described. The monitoring flow according to this embodiment is the same as that of the first embodiment shown in FIG.

図17は、本実施形態による電話端末1から現用系のメディアサーバ4への着信時のシーケンス例を示す図である。
同図において、ステップS905〜S925までの処理は、図10に示すS405〜S425までの処理と同様である。
ステップS930において、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、INVITEパケット、ACKパケット、メディアサーバのCSeq、電話端末のCSeqと、着信を示す発着信フラグとを登録呼処理復旧情報として外部記憶装置6に出力し、呼処理復旧情報への登録を指示する(ステップS930)。外部記憶装置6は、呼処理復旧情報記憶部63内の呼処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録呼処理復旧情報を設定する。
FIG. 17 is a diagram showing a sequence example when an incoming call is received from the telephone terminal 1 to the active media server 4 according to the present embodiment.
In the figure, the processing from step S905 to S925 is the same as the processing from S405 to S425 shown in FIG.
In step S930, the control unit 44a that has received an instruction from the call processing unit 43a of the media server 4a stores the to tag, the from tag, the callid, INVITE packet, the ACK packet, the CSeq of the media server stored in the main storage unit 45a, The CSeq of the telephone terminal and the outgoing / incoming flag indicating an incoming call are output to the external storage device 6 as registered call processing recovery information, and an instruction for registration in the call processing recovery information is given (step S930). The external storage device 6 adds a record to the call processing recovery information in the call processing recovery information storage unit 63, and sets the registered call processing recovery information received from the media server 4a in the added record.

さらに、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバ4aが用いるRTPポート番号及びIPアドレスを登録音声処理復旧情報として外部記憶装置6に出力し、音声処理復旧情報への登録を指示する(ステップS935)。外部記憶装置6は、音声処理復旧情報記憶部64内の音声処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録音声処理復旧情報を設定する。
メディアサーバ4aの呼処理部43aは、制御部44aにダイアログの確立を通知する。以降は、図10のステップS440からの処理を行う。
Furthermore, the control unit 44a that receives the instruction from the call processing unit 43a of the media server 4a registers the to tag, the from tag, the callid, the RTP port number and the IP address used by the media server 4a, which are stored in the main storage unit 45a. The voice processing restoration information is output to the external storage device 6 and the registration to the voice processing restoration information is instructed (step S935). The external storage device 6 adds a record to the audio processing recovery information in the audio processing recovery information storage unit 64, and sets the registered audio processing recovery information received from the media server 4a in the added record.
The call processing unit 43a of the media server 4a notifies the establishment of the dialog to the control unit 44a. Thereafter, the processing from step S440 in FIG. 10 is performed.

図18は、本実施形態による現用系のメディアサーバ4における発信時の処理フローを示す図である。
同図において、ステップS1005〜S1020までの処理は、図9に示すS605〜S620までの処理と同様である。
ステップS1025において、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、200OKパケット、メディアサーバのCSeq、電話端末のCSeq、サーバ側電話番号、端末側電話番号と、発信を示す発着信フラグとを登録呼処理復旧情報として外部記憶装置6に出力し、呼処理復旧情報への登録を指示する(ステップS1025)。外部記憶装置6は、呼処理復旧情報記憶部63内の呼処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録呼処理復旧情報を設定する。
FIG. 18 is a diagram showing a processing flow at the time of outgoing call in the active media server 4 according to the present embodiment.
In the figure, the processing from step S1005 to S1020 is the same as the processing from S605 to S620 shown in FIG.
In step S1025, the control unit 44a that has received an instruction from the call processing unit 43a of the media server 4a stores the to tag, from tag, callid, 200OK packet, CSeq of the media server, and telephone terminal stored in the main storage unit 45a. CSeq, the server side telephone number, the terminal side telephone number, and the outgoing / incoming flag indicating transmission are output to the external storage device 6 as registered call processing recovery information, and an instruction to register the call processing recovery information is given (step S1025). The external storage device 6 adds a record to the call processing recovery information in the call processing recovery information storage unit 63, and sets the registered call processing recovery information received from the media server 4a in the added record.

さらに、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバ4aが用いるRTPポート番号及びIPアドレスを登録音声処理復旧情報として外部記憶装置6に出力し、音声処理復旧情報への登録を指示する(ステップS1030)。外部記憶装置6は、音声処理復旧情報記憶部64内の音声処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録音声処理復旧情報を設定する。
メディアサーバ4aの呼処理部43aは、制御部44aにダイアログの確立を通知する。以降は、図10のステップS440からの処理を行う。
Furthermore, the control unit 44a that receives the instruction from the call processing unit 43a of the media server 4a registers the to tag, the from tag, the callid, the RTP port number and the IP address used by the media server 4a, which are stored in the main storage unit 45a. It outputs to the external storage device 6 as voice processing restoration information, and instructs registration to the voice processing restoration information (step S1030). The external storage device 6 adds a record to the audio processing recovery information in the audio processing recovery information storage unit 64, and sets the registered audio processing recovery information received from the media server 4a in the added record.
The call processing unit 43a of the media server 4a notifies the establishment of the dialog to the control unit 44a. Thereafter, the processing from step S440 in FIG. 10 is performed.

図19は、本実施形態による現用系のメディアサーバ4の故障が検出されたときに待機系のメディアサーバ4が実行する復旧処理フローを示す図である。
IVR処理中にメディアサーバ4aの故障が発生した場合のステップS1105〜S1115におけるメディアサーバ4bの処理は、図13のステップS705〜S715までの処理と同じである。ただし、ステップS1110において、復旧処理部48bは、特定した外部記憶装置6から、呼処理復旧情報のレコードから読み出したtoタグ、fromタグ及びcallidと、発着信フラグとを受信する。
FIG. 19 is a diagram showing a recovery process flow executed by the standby media server 4 when a failure of the active media server 4 according to the present embodiment is detected.
The processing of the media server 4b in steps S1105 to S1115 when a failure of the media server 4a occurs during the IVR processing is the same as the processing from steps S705 to S715 of FIG. However, in step S1110, the recovery processing unit 48b receives from the identified external storage device 6 the to tag, the from tag, and the call read from the call processing recovery information record, and the outgoing / incoming flag.

ステップS1110において読み出した発着信フラグが着信を示している場合(ステップS1120:着信)、復旧処理部48bからの指示を受けた制御部44bは、ステップS1110において読み出したtoタグ、fromタグ及びcallidを外部記憶装置6に出力し、INIVITEパケット及びACKパケットの読み出しを指示する(ステップS1125)。外部記憶装置6は、toタグ、fromタグ及びcallidにより呼処理復旧情報記憶部63内の呼処理復旧情報のレコードを特定し、特定したレコードからINVITEパケット及びACKパケットを読み出してメディアサーバ4bに出力する。   When the outgoing / incoming flag read in step S1110 indicates an incoming call (step S1120: incoming call), the control unit 44b that has received an instruction from the recovery processing unit 48b reads the to tag, the from tag, and the call read in step S1110. The output to the external storage device 6 is instructed to read the INIVITE packet and the ACK packet (step S1125). The external storage device 6 identifies the call processing recovery information record in the call processing recovery information storage unit 63 by the to tag, from tag, and call, reads the INVITE packet and the ACK packet from the specified record, and outputs them to the media server 4b. To do.

復旧処理部48bは、外部記憶装置6から読み出したINVITEパケットを呼処理部43bに対して内部的に送信する。これにより、呼処理部43bは、INVITEパケット受信時の処理と同様の処理を行なう(ステップS1130)。呼処理部43bは、図10のステップS420における処理と同様に、INVITEパケットを主記憶部45bに書き込むとともに、INVITEパケットに設定されているfromタグ、callid、各種ヘッダフィールド、電話端末1が用いるRTPポート番号及びIPアドレス、電話端末のCSeqを読み出して主記憶部45bに書き込む。   The recovery processing unit 48b internally transmits the INVITE packet read from the external storage device 6 to the call processing unit 43b. As a result, the call processing unit 43b performs the same processing as that when receiving the INVITE packet (step S1130). The call processing unit 43b writes the INVITE packet to the main storage unit 45b, as in the process in step S420 in FIG. 10, and also sets the from tag, callid, various header fields set in the INVITE packet, and the RTP used by the telephone terminal 1. The port number, IP address, and CSeq of the telephone terminal are read and written in the main storage unit 45b.

続いて、呼処理部43bは、ステップS1130において内部的に送信されたINVITEパケットに対する200OKパケットを生成し、200OKパケットを送信した場合と同様の処理を行なう(ステップS1135)。200OKのメディアサーバ4のRTPポート番号及びIPアドレスには、ステップS1115において読み出した音声処理復旧情報のレコード内のRTPポート番号及びIPアドレスが設定される。また、200OKパケットのToフィールドには、ステップS1110において読み出したtoタグを使用する。なお、実際には200OKパケットの送信は行なわない。これにより、図10のステップS420における処理と同様に、呼処理部43bは、この生成した200OKパケットを主記憶部45bに書き込むとともに、200OKに設定したtoタグと、メディアサーバ4bが用いるRTPポート番号及びIPアドレス、メディアサーバのCSeq、各種ヘッダフィールドを主記憶部45bに書き込む。   Subsequently, the call processing unit 43b generates a 200 OK packet for the INVITE packet internally transmitted in step S1130, and performs the same processing as when the 200 OK packet is transmitted (step S1135). As the RTP port number and IP address of the 200 OK media server 4, the RTP port number and IP address in the record of the audio processing recovery information read in step S1115 are set. The to tag read in step S1110 is used for the To field of the 200 OK packet. Actually, the 200 OK packet is not transmitted. As a result, similar to the processing in step S420 of FIG. 10, the call processing unit 43b writes the generated 200OK packet to the main storage unit 45b, and also sets the to tag set to 200OK and the RTP port number used by the media server 4b. The IP address, the media server CSeq, and various header fields are written in the main memory 45b.

続いて、復旧処理部48bは、ステップS1125において外部記憶装置6から読み出したACKパケットを呼処理部43bに対して内部的に送信する。これにより、呼処理部43bは、ACKパケット受信時の処理と同様の処理を行なう(ステップS1140)。呼処理部43bは、図10のステップS420における処理と同様に、送信したこのACKパケットを主記憶部45bに書き込むとともに、各種ヘッダフィールドを主記憶部45bに書き込む。
上記処理により、メディアサーバ4bは、図17のステップS920と同じ状態になる。
Subsequently, the recovery processing unit 48b internally transmits the ACK packet read from the external storage device 6 in step S1125 to the call processing unit 43b. Thereby, the call processing unit 43b performs the same process as the process at the time of receiving the ACK packet (step S1140). The call processing unit 43b writes the transmitted ACK packet to the main storage unit 45b and also writes various header fields to the main storage unit 45b, similarly to the processing in step S420 of FIG.
With the above processing, the media server 4b is in the same state as step S920 in FIG.

一方、ステップS1110において読み出した発着信フラグが発信を示している場合(ステップS1120:発信)、ステップS1110において読み出したtoタグ、fromタグ及びcallidを外部記憶装置6に出力し、呼処理復旧情報の読み出しを指示する(ステップS1145)。外部記憶装置6は、toタグ、fromタグ及びcallidにより呼処理復旧情報記憶部63内の呼処理復旧情報のレコードを特定し、特定したレコードを読み出してメディアサーバ4bに出力する。   On the other hand, if the outgoing / incoming flag read in step S1110 indicates outgoing (step S1120: outgoing), the to tag, from tag, and callid read in step S1110 are output to the external storage device 6, and the call processing recovery information is displayed. Reading is instructed (step S1145). The external storage device 6 identifies the record of the call processing recovery information in the call processing recovery information storage unit 63 by using the to tag, the from tag, and the call, reads the specified record, and outputs it to the media server 4b.

復旧処理部48bからの指示を受け呼処理部43bは、外部記憶装置6から読み出した呼処理復旧情報のレコードからINVITEパケットを生成する。これにより、呼処理部43bは、INVITEパケット送信時の処理と同様の処理を行なうが、実際には送信を行なわない(ステップS1150)。INVITE信号のToフィールドには読み出した呼処理復旧情報のレコード内の端末側電話番号が、Fromフィールドには当該呼処理復旧情報のレコード内のサーバ側電話番号とfromタグが、callidには読み出した当該呼処理復旧情報のレコード内のcallidが、メディアサーバのCSeqには1が、メディアサーバ4のRTPポート及びアドレスにはステップS1115において読み出した音声処理復旧情報のレコードから読み出したRTPポート番号及びIPアドレスが設定される。呼処理部43bは、図12のステップS615における処理と同様に、呼処理部43bは、INVITEパケットを主記憶部45bに書き込むとともに、INVITEパケットに設定されているfromタグ、callid、各種ヘッダフィールド、メディアサーバ4bが用いるRTPポート番号及びIPアドレス、メディアサーバのCSeqを読み出して主記憶部45bに書き込む。   Upon receiving an instruction from the recovery processing unit 48b, the call processing unit 43b generates an INVITE packet from the call processing recovery information record read from the external storage device 6. Thereby, call processing unit 43b performs the same process as the process at the time of INVITE packet transmission, but does not actually transmit (step S1150). The terminal-side telephone number in the read call processing recovery information record is read in the To field of the INVITE signal, the server-side telephone number and the from tag in the call processing recovery information record are read in the From field, and the call is read in the call. The call in the call processing recovery information record is 1 for the media server CSeq, the RTP port and address of the media server 4 are the RTP port number and IP read from the voice processing recovery information record read in step S1115. An address is set. The call processing unit 43b writes the INVITE packet to the main storage unit 45b, as well as the from tag, call, various header fields set in the INVITE packet, in the same manner as the process in step S615 of FIG. The RTP port number and IP address used by the media server 4b and the CSeq of the media server are read and written in the main storage unit 45b.

続いて、復旧処理部48bは、ステップS1150において読み出した呼処理復旧情報のレコードに設定されている200OKを呼処理部43bに対して内部的に送信する。これにより、呼処理部43bは、200OKパケット受信時の処理と同様の処理を行なう(ステップS1155)。呼処理部43bは、図12のステップS615における処理と同様に、受信した200OKパケットを主記憶部45bに書き込むとともに、toタグ、電話端末1が用いるRTPポート番号及びIPアドレス、電話端末のCSeq、各種ヘッダフィールドを主記憶部45bに書き込む。   Subsequently, the recovery processing unit 48b internally transmits 200 OK set in the call processing recovery information record read in step S1150 to the call processing unit 43b. Thereby, the call processing unit 43b performs the same process as the process at the time of receiving the 200 OK packet (step S1155). The call processing unit 43b writes the received 200 OK packet in the main storage unit 45b, as in the process in step S615 of FIG. 12, and also uses the to tag, the RTP port number and IP address used by the telephone terminal 1, the CSeq of the telephone terminal, Various header fields are written into the main memory 45b.

続いて、復旧処理部48bは、ACKパケットを生成するとともに、ACKパケットを送信した場合と同様の処理を行なう(ステップS1160)。ACKパケットには、INVITE信号と同様のToフィールド、Fromフィールド、callid、メディアサーバのCSeqが設定される。ただし、実際にはACKパケットの送信は行なわない。これにより、図12のステップS615における処理と同様に、呼処理部43bは、このACKパケットを主記憶部45bに書き込むとともに、ACKに設定したfromタグと、メディアサーバのCSeqを主記憶部45bに書き込む。
上記により、メディアサーバ4bは、図18のステップS1015と同じ状態になる。
Subsequently, the recovery processing unit 48b generates an ACK packet and performs the same process as when the ACK packet is transmitted (step S1160). In the ACK packet, the same To field, From field, callid, and CSeq of the media server as in the INVITE signal are set. However, the ACK packet is not actually transmitted. As a result, similar to the processing in step S615 of FIG. 12, the call processing unit 43b writes the ACK packet to the main storage unit 45b and stores the from tag set to ACK and the CSeq of the media server in the main storage unit 45b. Write.
As a result, the media server 4b is in the same state as step S1015 in FIG.

メディアサーバ4bの音声処理部47bは、図13のステップS720と同様の処理により主記憶部45bに保存されたIVR処理情報のレコードを用いてIVR処理を途中から再開し(ステップS1165)、音声処理部47bは、図13のステップS725と同様の処理により、ステップS1115において制御部44bが特定したIVR処理情報のレコードに設定されている値を用いて、電話端末1との間のRTPセッションを再開する(ステップS1170)。   The voice processing unit 47b of the media server 4b resumes the IVR process from the middle using the record of the IVR processing information stored in the main storage unit 45b by the same process as step S720 of FIG. 13 (step S1165), and the voice process The unit 47b resumes the RTP session with the telephone terminal 1 by using the value set in the record of the IVR processing information specified by the control unit 44b in step S1115 by the same process as step S725 in FIG. (Step S1170).

続いて復旧処理部48bは、外部記憶装置6の音声処理復旧情報記憶部64に記憶されている音声処理復旧情報の中で、まだ読み出していないレコードがあるかを判断し(ステップS1175)、まだ読み出していないレコードがあれば(ステップS1175:YES)、ステップS1110からの処理を行う。一方、全てのレコードについて読み出しを行なったならば(ステップS1175:NO)、メディアサーバ4bにおいて、以降、メディアサーバ4aが行なっていたステップS520からの処理を行なう。つまり、各部の符号の最後に記載されている「a」を「b」に置き換えればよい。   Subsequently, the restoration processing unit 48b determines whether there is a record that has not yet been read in the voice processing restoration information stored in the voice processing restoration information storage unit 64 of the external storage device 6 (step S1175). If there is a record that has not been read (step S1175: YES), the processing from step S1110 is performed. On the other hand, if all the records have been read (step S1175: NO), the media server 4b subsequently performs the processing from step S520 performed by the media server 4a. That is, “a” described at the end of the reference numerals of the respective units may be replaced with “b”.

上述したように、本実施形態によれば、現用系のメディアサーバは、セッションが確立したときにSIP、RTPの復旧に必要な情報を外部記憶装置に書込み、IVR処理が開始されると、外部記憶装置にIVR処理の更新状況をリアルタイムに書込み、RTPに関する情報は書き込まない。よって、外部記憶装置に対するアクセスの負荷をかけすぎることなく、メディアサーバは故障が発生した際に引継ぎが必要な情報を外部記憶装置に書き込むことができ、音声パケットに遅延を発生させることもない。なお、SIPの更新情報はセッション確立後も外部記憶装置へ書込む場合がある。通話中に現用系のメディアサーバが故障した場合も、通話がとぎれることなく、待機系のメディアサーバは、故障が発生した時点から引続きIVRシナリオを提供することができる。このように、メディアサーバのセッションフェールオーバを実現することができるため、信頼性の高いシステムを実現することが可能となる。   As described above, according to the present embodiment, the active media server writes information necessary for SIP and RTP recovery to the external storage device when the session is established, and when the IVR process is started, The update status of the IVR process is written to the storage device in real time, and no information regarding RTP is written. Accordingly, without overloading the access to the external storage device, the media server can write information that needs to be taken over to the external storage device when a failure occurs, and does not cause a delay in the voice packet. Note that SIP update information may be written to an external storage device even after a session is established. Even if the active media server fails during a call, the standby media server can continue to provide an IVR scenario from the point of time when the failure occurs without interrupting the call. As described above, since the session failover of the media server can be realized, a highly reliable system can be realized.

上述の電話端末1、中継サーバ2、メディアサーバ4、外部記憶装置6、及び、発信制御装置7は、内部にコンピュータシステムを有している。そして、電話端末1、中継サーバ2、メディアサーバ4の監視部41及びメディア処理プログラム実行部42、外部記憶装置6、ならびに、発信制御装置7の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、CPU及び各種メモリやOS、周辺機器等のハードウェアを含むものである。   The telephone terminal 1, the relay server 2, the media server 4, the external storage device 6, and the transmission control device 7 described above have a computer system inside. The operation processes of the telephone terminal 1, the relay server 2, the monitoring unit 41 and the media processing program execution unit 42 of the media server 4, the external storage device 6, and the transmission control device 7 are computer-readable in the form of a program. The above processing is performed by the computer system reading and executing this program stored in a recording medium. The computer system here includes a CPU, various memories, an OS, and hardware such as peripheral devices.

また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory in a computer system serving as a server or a client in that case, and a program that holds a program for a certain period of time are also included. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.

なお、本発明は、上記において説明した実施形態に限定されるものではなく、その主旨を逸脱しない範囲において種々変更可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。   The present invention is not limited to the embodiment described above, and various modifications can be made without departing from the spirit of the present invention, and it goes without saying that these are also included in the scope of the present invention. Yes.

1…電話端末
2…中継サーバ
3…ルータ
4、4a、4b…メディアサーバ
40、40a、40b…通信部
41、41a、41b…監視部
42、42a、42b…メディア処理プログラム実行部
43、43a、43b…呼処理部
44、44a、44b…制御部
45、45a、45b…主記憶部
46、46a、46b…IVR処理部
47、47a、47b…音声処理部
48、48a、48b…復旧処理部
6…外部記憶装置
60…記憶部
61…電話番号設定記憶部
62…IVRフロー記憶部
63…呼処理復旧情報記憶部
64…音声処理復旧情報記憶部
65…IVR処理情報記憶部
7…発信制御装置
DESCRIPTION OF SYMBOLS 1 ... Telephone terminal 2 ... Relay server 3 ... Router 4, 4a, 4b ... Media server 40, 40a, 40b ... Communication part 41, 41a, 41b ... Monitoring part 42, 42a, 42b ... Media processing program execution part 43, 43a, 43b: Call processing unit 44, 44a, 44b ... Control unit 45, 45a, 45b ... Main storage unit 46, 46a, 46b ... IVR processing unit 47, 47a, 47b ... Voice processing unit 48, 48a, 48b ... Recovery processing unit 6 ... External storage device 60 ... Storage unit 61 ... Telephone number setting storage unit 62 ... IVR flow storage unit 63 ... Call processing recovery information storage unit 64 ... Voice processing recovery information storage unit 65 ... IVR processing information storage unit 7 ... Transmission control device

Claims (7)

ネットワークを介して接続された複数のメディアサーバを有する音声自動応答システムにおける前記メディアサーバであって、
前記ネットワークを介して接続される電話端末と呼制御信号パケットを送受信し、前記電話端末との間の呼のセッションを確立する呼処理部と、
音声自動応答のシナリオに従って、呼を確立した前記電話端末への音声の送出または前記電話端末から受信した音声の認識あるいはその両方を実行する音声自動応答処理部と、
呼を確立した前記電話端末との間でメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理から送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを前記音声自動応答処理部に出力する音声処理部と、
前記呼処理部により送受信された前記呼制御信号から取得した呼特定情報と呼のセッションの復旧に用いられる情報とを設定した呼処理復旧情報を外部記憶装置に書き込むとともに、前記呼特定情報と、前記呼特定情報により特定される呼について確立された前記メディアセッションの復旧に用いられる情報とを設定した音声処理復旧情報を前記外部記憶装置に書込み、さらに、前記呼特定情報と、前記呼特定情報により特定される呼について前記音声自動応答処理部により実行された音声自動応答のシナリオ上の現在の実行位置を特定する情報と、前記音声自動応答処理部により実行された音声自動応答のシナリオに応じて前記電話端末から受信した音声を認識した結果の履歴情報とを設定した音声自動応答処理情報を前記外部記憶装置に書き込む制御部と、
他のメディアサーバの故障を検出する監視部と、
前記監視部により現用系の他のメディアサーバの故障を検出した際に、前記他のメディアサーバが使用していたアドレスを自アドレスとして設定するとともに、他の前記メディアサーバが書き込んだ、同一の呼特定情報を有する呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から読み出す復旧処理部とを備え、
前記音声自動応答処理部は、前記復旧処理部が読み出した前記音声自動応答処理情報からシナリオ上の現在の実行位置を特定する情報と前記履歴情報とを取得し、取得した前記情報と前記履歴情報とにより特定される実行位置から前記音声自動応答のシナリオを実行し、
前記音声処理部は、前記復旧処理部が読み出した前記音声処理復旧情報に基づいてメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理部から送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを前記音声自動応答処理部に出力し、
前記呼処理部は、前記復旧処理部が読み出した前記呼処理復旧情報に基づいて前記電話端末との間の呼のセッションを確立し、呼処理信号の送受信を行なう、
ことを特徴とするメディアサーバ。
The media server in an automatic voice response system having a plurality of media servers connected via a network,
A call processing unit that transmits and receives a call control signal packet to and from a telephone terminal connected via the network, and establishes a call session with the telephone terminal;
An automatic voice response processing unit that performs transmission of voice to the telephone terminal that establishes a call and / or recognition of voice received from the telephone terminal according to a scenario of automatic voice response;
A media session is established with the telephone terminal that established the call, and a voice packet in which voice transmitted from the voice automatic response process is instructed by the established media session is transmitted to the telephone terminal; A voice processing unit that outputs a voice packet received from the telephone terminal to the voice automatic response processing unit;
Writing call processing recovery information in which call specific information acquired from the call control signal transmitted and received by the call processing unit and information used for call session recovery are set in an external storage device, and the call specific information, Voice processing restoration information in which information used for restoration of the media session established for the call identified by the call identification information is set is written in the external storage device, and the call identification information and the call identification information depending on the current information for specifying the execution position, the scenario of voice response executed by the voice response unit on scenario voice response executed by the voice response processing unit for a call identified by the voice response processing information set and history information of the result of recognizing the voice received from the telephone terminal to the external storage device Te And a control unit to burn them,
A monitoring unit for detecting a failure of another media server;
When the monitoring unit detects a failure of another active media server, the address used by the other media server is set as its own address, and the same call written by the other media server is written. Call processing recovery information having specific information, voice processing recovery information, and a recovery processing unit that reads voice automatic response processing information from the external storage device,
The voice automatic response processing unit acquires information specifying the current execution position on the scenario and the history information from the voice automatic response processing information read by the recovery processing unit , and the acquired information and the history information run the scenario of the voice response from the execution position specified by a,
The audio processing unit establishes a media session based on the audio processing recovery information read by the recovery processing unit, and encodes audio instructed to be transmitted from the automatic audio response processing unit by the established media session. Sending voice packets to the telephone terminal, and outputting voice packets received from the telephone terminal to the voice automatic response processing unit,
The call processing unit establishes a call session with the telephone terminal based on the call processing recovery information read by the recovery processing unit, and transmits and receives call processing signals.
A media server characterized by that.
呼の復旧に用いられる情報は、送受信した前記呼制御信号から取得した発側電話番号、着側電話番号、及び、前記呼制御信号の送信または受信に伴って値が更新される情報の最新の値を含むことを特徴とする請求項1に記載のメディアサーバ。   The information used for call restoration includes the latest telephone number, the destination telephone number acquired from the transmitted / received call control signal, and the latest information whose value is updated when the call control signal is transmitted or received. The media server of claim 1, comprising a value. 呼の復旧に用いられる情報は、前記電話端末から受信した呼制御信号、及び、前記呼制御信号の送信または受信に伴って値が更新される情報の最新の値を含み、
前記復旧処理部は、前記外部記憶装置から読み出した前記呼処理復旧情報に設定されている前記呼制御信号を前記呼処理部に送信し、
前記呼処理部は、前記復旧処理部から送信された前記呼制御信号に基づいて前記電話端末との間の呼のセッションを確立する、
ことを特徴とする請求項1に記載のメディアサーバ。
The information used for call recovery includes the latest value of the call control signal received from the telephone terminal, and the information whose value is updated when the call control signal is transmitted or received,
The restoration processing unit transmits the call control signal set in the call processing restoration information read from the external storage device to the call processing unit,
The call processing unit establishes a call session with the telephone terminal based on the call control signal transmitted from the recovery processing unit;
The media server according to claim 1.
メディアセッションの復旧に用いられる前記情報は、発信側及び着信側のメディアセッション用のアドレスと、メディアセッションに特有の値が設定された情報と、音声パケットの送信に伴い値が更新される情報のメディアセッション確立時の値と、前記メディアセッションの開始時刻とを含み、
前記音声処理部は、前記復旧処理部により読み出された前記音声処理復旧情報から前記開始時刻と、音声パケットの送信に伴い更新される前記情報のメディアセッション確立時の値とを取得し、前記開始時刻からの経過時間に基づいて更新される前記情報の現在の値を算出し、前記音声処理復旧情報から読み出した、発信側及び着信側のメディアセッション用の前記アドレスと、メディアセッションに特有の値が設定された前記情報と、算出した前記値を設定した、音声パケットの送信に伴い更新される前記情報とを用いて前記呼のメディアセッションを復旧する、
ことを特徴とする請求項1から請求項3のいずれかの項に記載のメディアサーバ。
The information used for media session recovery includes addresses for media sessions on the calling and called sides, information in which values specific to the media session are set, and information whose values are updated when a voice packet is transmitted. Including a value at the time of media session establishment and a start time of the media session,
The voice processing unit acquires the start time from the voice processing restoration information read by the restoration processing unit, and a value at the time of media session establishment of the information updated with transmission of the voice packet, Calculate the current value of the information to be updated based on the elapsed time from the start time, read from the voice processing recovery information, the address for the caller and callee media session, and the media session specific Recovering the media session of the call using the information with the value set and the information set with the calculated value and updated with the transmission of the voice packet;
The media server according to any one of claims 1 to 3, characterized in that:
前記制御部は、解放された呼の呼特定情報を含む前記呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から削除する、
ことを特徴とする請求項1から請求項4のいずれかの項に記載のメディアサーバ。
The control unit deletes the call processing recovery information including the call identification information of the released call, the voice processing recovery information, and the voice automatic response processing information from the external storage device;
The media server according to any one of claims 1 to 4, wherein the media server is characterized.
ネットワークを介して接続された複数のメディアサーバを有する音声自動応答システムにおける前記メディアサーバに用いられるセッション復旧方法であって、
呼処理部が、ネットワークを介して接続される電話端末と呼制御信号パケットを送受信し、前記電話端末との間の呼のセッションを確立する呼処理ステップと、
音声自動応答処理部が、音声自動応答のシナリオに従って、呼を確立した前記電話端末への音声の送出または前記電話端末から受信した音声の認識あるいはその両方を実行する音声自動応答処理ステップと、
音声処理部が、呼を確立した前記電話端末との間でメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理ステップにおいて送出された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを前記音声自動応答処理部へ出力する音声処理ステップと、
制御部が、前記呼処理ステップにおいて送受信された前記呼制御信号から取得した呼特定情報と呼のセッションの復旧に用いられる情報とを設定した呼処理復旧情報を外部記憶装置に書き込むとともに、前記呼特定情報と、前記呼特定情報により特定される呼について確立された前記メディアセッションの復旧に用いられる情報とを設定した音声処理復旧情報を前記外部記憶装置に書込み、さらに、前記呼特定情報と、前記呼特定情報により特定される呼について前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオ上の現在の実行位置を特定する情報と、前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオに応じて前記電話端末から受信した音声を認識した結果の履歴情報とを設定した音声自動応答処理情報を前記外部記憶装置に書き込む情報書込みステップと、
監視部が、他のメディアサーバの故障を検出する監視ステップと、
復旧処理部が、前記監視ステップにおいて現用系の他のメディアサーバの故障を検出した際に、前記他のメディアサーバが使用していたアドレスを自アドレスとして設定するとともに、他の前記メディアサーバが書き込んだ、同一の呼特定情報を有する呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から読み出す復旧処理ステップと、
前記音声自動応答処理部が、前記復旧処理ステップにおいて読み出された前記音声自動応答処理情報からシナリオ上の現在の実行位置を特定する情報と前記履歴情報とを取得し、取得した前記情報と前記履歴情報とにより特定される実行位置から前記音声自動応答のシナリオを実行する音声自動応答復旧ステップと、
前記音声処理復旧が、前記復旧処理ステップにおいて読み出された前記音声処理復旧情報に基づいてメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答復旧ステップにおいて送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを受信する音声処理復旧ステップと、
前記呼処理部が、前記復旧処理ステップにおいて読み出された前記呼処理復旧情報に基づいて前記電話端末との間の呼のセッションを確立し、呼処理信号の送受信を行なう呼処理復旧ステップと、
を有することを特徴とするセッション復旧方法。
A session recovery method used for the media server in an automatic voice response system having a plurality of media servers connected via a network,
A call processing step for sending and receiving a call control signal packet to and from a telephone terminal connected via a network, and establishing a call session with the telephone terminal;
A voice automatic response processing unit that performs voice transmission to the telephone terminal that established the call and / or recognition of the voice received from the telephone terminal according to a voice automatic response scenario;
A voice processing unit establishes a media session with the telephone terminal that has established a call, and transmits a voice packet obtained by encoding the voice transmitted in the voice automatic response processing step by the established media session to the telephone terminal. A voice processing step of transmitting and outputting a voice packet received from the telephone terminal to the voice automatic response processing unit;
The control unit writes the call processing recovery information in which the call identification information acquired from the call control signal transmitted and received in the call processing step and the information used for recovery of the call session are set in an external storage device, and the call Write audio processing recovery information that sets specific information and information used for recovery of the media session established for the call specified by the call specific information to the external storage device, and further, the call specific information, Information specifying the current execution position on the scenario of the voice automatic response executed in the voice automatic response processing step for the call specified by the call specifying information, and the voice automatic response executed in the voice automatic response processing step voice self set and history information of the result of recognizing the voice received from the telephone terminal in accordance with the scenario An information writing step of writing the response processing information to said external storage device,
A monitoring step in which a monitoring unit detects a failure of another media server; and
When the recovery processing unit detects a failure of another active media server in the monitoring step, the address used by the other media server is set as its own address, and the other media server writes However, a recovery processing step of reading out call processing recovery information, voice processing recovery information, and voice automatic response processing information having the same call identification information from the external storage device,
The voice automatic response processing unit acquires information specifying the current execution position on a scenario and the history information from the voice automatic response processing information read in the recovery processing step, and the acquired information and the A voice automatic response recovery step of executing the voice automatic response scenario from the execution position specified by the history information ;
The audio processing recovery establishes a media session based on the audio processing recovery information read in the recovery processing step, and encodes the audio that is instructed to be transmitted in the audio automatic response recovery step by the established media session. A voice processing recovery step for transmitting the voice packet to the telephone terminal and receiving the voice packet received from the telephone terminal;
The call processing unit establishes a call session with the telephone terminal based on the call processing recovery information read in the recovery processing step, and performs call processing recovery step for transmitting and receiving call processing signals;
A session recovery method comprising:
ネットワークを介して接続された複数のメディアサーバを有する音声自動応答システムにおける前記メディアサーバとして用いられるコンピュータに、
ネットワークを介して接続される電話端末と呼制御信号パケットを送受信し、前記電話端末との間の呼のセッションを確立する呼処理ステップと、
音声自動応答のシナリオに従って、呼を確立した前記電話端末への音声の送出または前記電話端末から受信した音声の認識あるいはその両方を実行する音声自動応答処理ステップと、
呼を確立した前記電話端末との間でメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答処理ステップにおいて送出された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から音声パケットを受信する音声処理ステップと、
前記呼処理ステップにおいて送受信された前記呼制御信号から取得した呼特定情報と呼のセッションの復旧に用いられる情報とを設定した呼処理復旧情報を外部記憶装置に書き込むとともに、前記呼特定情報と、前記呼特定情報により特定される呼について確立された前記メディアセッションの復旧に用いられる情報とを設定した音声処理復旧情報を前記外部記憶装置に書込み、さらに、前記呼特定情報と、前記呼特定情報により特定される呼について前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオ上の現在の実行位置を特定する情報と、前記音声自動応答処理ステップにおいて実行された音声自動応答のシナリオに応じて前記電話端末から受信した音声を認識した結果の履歴情報とを設定した音声自動応答処理情報を前記外部記憶装置に書き込む情報書込みステップと、
他のメディアサーバの故障を検出する監視ステップと、
前記監視ステップにおいて現用系の他のメディアサーバの故障を検出した際に、前記他のメディアサーバが使用していたアドレスを自アドレスとして設定するとともに、他の前記メディアサーバが書き込んだ、同一の呼特定情報を有する呼処理復旧情報、音声処理復旧情報、及び、音声自動応答処理情報を前記外部記憶装置から読み出す復旧処理ステップと、
前記復旧処理ステップにおいて読み出された前記音声自動応答処理情報からシナリオ上の現在の実行位置を特定する情報と前記履歴情報とを取得し、取得した前記情報と前記履歴情報とにより特定される実行位置から前記音声自動応答のシナリオを実行する音声自動応答復旧ステップと、
前記復旧処理ステップにおいて読み出された前記音声処理復旧情報に基づいてメディアセッションを確立し、確立した前記メディアセッションにより前記音声自動応答復旧ステップにおいて送出が指示された音声を符号化した音声パケットを前記電話端末に送信するとともに、前記電話端末から受信した音声パケットを受信する音声処理復旧ステップと、
前記復旧処理ステップにおいて読み出された前記呼処理復旧情報に基づいて前記電話端末との間の呼のセッションを確立し、呼処理信号の送受信を行なう呼処理復旧ステップと、
を実行させることを特徴とするコンピュータプログラム。
A computer used as the media server in an automatic voice response system having a plurality of media servers connected via a network,
A call processing step of transmitting / receiving a call control signal packet to / from a telephone terminal connected via a network and establishing a call session with the telephone terminal;
An automatic voice response processing step for performing transmission of voice to the telephone terminal that has established a call and / or recognition of voice received from the telephone terminal according to a scenario of automatic voice response;
A media session is established with the telephone terminal that established the call, and a voice packet encoded with the voice transmitted in the voice automatic response processing step by the established media session is transmitted to the telephone terminal; A voice processing step for receiving voice packets from the telephone terminal;
Writing call processing recovery information in which call specific information acquired from the call control signal transmitted and received in the call processing step and information used for recovery of a call session is set in an external storage device, and the call specific information, Voice processing restoration information in which information used for restoration of the media session established for the call identified by the call identification information is set is written in the external storage device, and the call identification information and the call identification information depending on the information specifying the current execution location on scenario voice response executing in said voice response processing steps for a call identified, scenarios voice response to said executed in interactive voice response processing step by voice response processing in which the history information of the result of recognizing the voice received from said telephone terminal Te An information writing step of writing the multicast to the external storage device,
A monitoring step for detecting a failure of another media server;
When a failure of another active media server is detected in the monitoring step, the address used by the other media server is set as its own address, and the same call written by the other media server is written. Call processing restoration information having specific information, voice processing restoration information, and restoration processing step of reading out voice automatic response processing information from the external storage device;
The information specifying the current execution position on the scenario and the history information are acquired from the voice automatic response processing information read in the restoration processing step, and the execution specified by the acquired information and the history information An automatic voice response recovery step for executing the automatic voice response scenario from a position;
A media session is established based on the voice processing restoration information read in the restoration processing step, and a voice packet obtained by encoding the voice instructed to be sent in the voice automatic response restoration step by the established media session is A voice processing recovery step of transmitting to the telephone terminal and receiving a voice packet received from the telephone terminal;
A call processing recovery step for establishing a call session with the telephone terminal based on the call processing recovery information read in the recovery processing step, and transmitting and receiving a call processing signal;
A computer program for executing
JP2009179087A 2009-07-31 2009-07-31 Media server, session recovery method, and computer program Active JP4834759B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009179087A JP4834759B2 (en) 2009-07-31 2009-07-31 Media server, session recovery method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009179087A JP4834759B2 (en) 2009-07-31 2009-07-31 Media server, session recovery method, and computer program

Publications (2)

Publication Number Publication Date
JP2011035606A JP2011035606A (en) 2011-02-17
JP4834759B2 true JP4834759B2 (en) 2011-12-14

Family

ID=43764251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009179087A Active JP4834759B2 (en) 2009-07-31 2009-07-31 Media server, session recovery method, and computer program

Country Status (1)

Country Link
JP (1) JP4834759B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5701844B2 (en) * 2012-04-27 2015-04-15 株式会社東芝 COMMUNICATION SYSTEM, DATA CENTER DEVICE, AND CONTROL METHOD USED IN DATA CENTER DEVICE
JP2014007495A (en) * 2012-06-22 2014-01-16 Canon Inc Communication apparatus, communication control method, and program
WO2016157527A1 (en) * 2015-04-03 2016-10-06 三菱電機株式会社 Media communication system, audio terminal, and audio code conversion device
JP6951220B2 (en) * 2017-12-05 2021-10-20 株式会社日立製作所 Call control system and its packet processing device
JP7150243B2 (en) * 2018-11-19 2022-10-11 富士フイルムデジタルソリューションズ株式会社 Automated message system and method
CN113556755A (en) * 2020-04-24 2021-10-26 华为技术有限公司 Method, system and related device for presenting media content

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3130859B2 (en) * 1998-02-26 2001-01-31 日本電気通信システム株式会社 Voice response service continuation method
JP3930221B2 (en) * 2000-01-07 2007-06-13 東芝ソリューション株式会社 Information communication system
JP2003244191A (en) * 2002-02-19 2003-08-29 Oki Electric Ind Co Ltd Call control method by call control server
JP2003298624A (en) * 2002-04-05 2003-10-17 Nippon Telegr & Teleph Corp <Ntt> Communication path securing method in service control application execution program
JP3808442B2 (en) * 2003-02-18 2006-08-09 富士通株式会社 Automatic voice response switching system
JP4592511B2 (en) * 2005-06-22 2010-12-01 沖電気工業株式会社 IP network server backup system

Also Published As

Publication number Publication date
JP2011035606A (en) 2011-02-17

Similar Documents

Publication Publication Date Title
US11165853B2 (en) System and method for managing media in a distributed communication network
KR101130398B1 (en) System and methods for facilitating third-party call and device control
JP4834759B2 (en) Media server, session recovery method, and computer program
JP4470934B2 (en) Proxy server, communication system, communication method, and program
CN101167317A (en) System and methods for a survivable remote network
US9240941B2 (en) System and method for managing media in a distributed communication network
CN101789882B (en) Link switching method, household gateway and link switching system
JP5120380B2 (en) Communication method, communication system, server, and program related to transition of session management
US9736190B2 (en) Communication system for service control
CN105681603A (en) Call center agent terminal conversation fault processing method and device
JP4723676B2 (en) COMMUNICATION METHOD, SERVER, AND PROGRAM FOR SESSION STATUS NOTIFICATION
CN110996358B (en) Call terminal switching method and device, electronic equipment and storage medium
CN101594554A (en) Called service servers, multi-service access node device and calling and called control implementation method
WO2009079960A1 (en) Method, system and equipment for outband dtmf signaling interworking
CN108650425B (en) Monitoring method and monitoring system
CN108337103B (en) Backup method, standby recovery method and system of SIP server
CN103138998B (en) A kind of detection of proxy-state, device and system
GB2491602A (en) Processing media data for a multi service user and a method for alerting a multi service user
JP4331195B2 (en) Telephone system
CN113746865B (en) Fault transfer method and device for VoIP terminal communication service
KR100640289B1 (en) Method of internet protocol terminals for providing a plurality of call services and ip terminals enabling the method
KR100564644B1 (en) A method for providing communication devices with a call holding service ahd a switching system thereof
CN114666305A (en) IP call method, system, device, electronic equipment and storage medium
KR20090132989A (en) A method and apparatus for retrieving session information after repairing cscf failure in ims networks
JP2013138311A (en) Telephone system, server device, and transfer control method used for server device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110805

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110926

R150 Certificate of patent or registration of utility model

Ref document number: 4834759

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140930

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350