JP4834759B2 - Media server, session recovery method, and computer program - Google Patents
Media server, session recovery method, and computer program Download PDFInfo
- 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
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
一般に電話系のサービスは、固定電話をはじめ極めて品質の高いサービスが多く、エンドユーザもその品質が当たり前と考えていることが多い。そのため、故障時に通話が切断されることは大きな問題となる。
一方メディアサーバを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
また、特許文献1や特許文献2の技術をメディアサーバで実現しようとした場合、外部装置の負荷が高くなりすぎるという問題もある。特許文献1及び特許文献2では、中継機の二重化をHA構成により実現している。中継機のように、リアルタイムで動作する必要のないサーバであれば、サーバが保持する情報に更新があった場合、その都度、更新内容を共有ディスクに反映させることにより、現用系の故障時には待機系サーバにおいてその共有ディスクの内容を参照して動作を継続することができる。しかし、メディアサーバはリアルタイムで動作するため、単純なHA構成では二重化することはできない。
Moreover, when trying to implement the techniques of
すなわち、中継機では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
In addition, in
このような特許文献1及び2の問題点に加え、先に述べたような拠点集約に耐えうる高い信頼性を実現すること、低価格の圧力でFTサーバによるハードウェア故障の回避を採用できない場合にも信頼性を確保すること、低価格の圧力からベンダー製品よりも品質が低い場合もあるオープンソースソフトウェアの使用率が向上しているためアプリケーションエラーが生じやすい可能性があること、電話系のサービスは他のサービスと比較して高品質を求められやすいことなどを勘案して、メディアサーバのセッションフェールオーバを実現する必要がある。
In addition to the problems of
本発明は、上記の事情に鑑みてなされたものであり、その目的は、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.
以下、図面を参照して本発明の実施形態の例について説明する。 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
同図においては、メディアサーバ4として2台のメディアサーバ4a、4bが記載されているが、3台以上が備えられてもよい。ここでは、メディアサーバ4aが現在動作している現用系、メディアサーバ4bが現用系の故障時に処理を引継ぐ待機系であるとする。なお、メディアサーバ4が3台以上ある場合の現用系と待機系のサーバ台数比はN対M(N、Mは1以上)である。
Although two
音声通話のセッションフェールオーバでは、現用系のメディアサーバ4が故障した場合、待機系のメディアサーバ4に動作が引継がれて通話が継続される。例えば、現用系のメディアサーバ4aから「○○の方は1番を押してください」とのアナウンスが流れ、エンドユーザが電話端末1に「1」を入力したのち、再びメディアサーバ4aから「△△の方は…」のようなアナウンスが流れている途中でメディアサーバ4aの故障が発生したとする。この場合、待機系のメディアサーバ4bが起動して、故障が発生した途中のアナウンスから再開し、「△△の方は、2番を押してください。」とのアナウンスを流して引き続きIVR処理を行なう。現用系から待機系への切り替え時には数秒間の無音が発生してもよい。
In a voice call session failover, if the
待機系に切り替わる時に必要な情報は、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
また、復旧のためのRTPの情報は、RTPセッションの開始時に外部記憶装置6に記憶する。そのため、現用系のメディアサーバ4が故障した場合、待機系のメディアサーバ4は外部記憶装置6に記憶されている情報を参照してRTPポートオープン等の状態復帰処理を行ってセッションを引継ぐが、一部の情報については保存時の値から現在の値を推定してRTPパケット送信を再度起動させる必要がある。
Further, RTP information for recovery is stored in the
IVR関連の情報は、更新があり次第、その内容を外部記憶装置6に保存していく。そのため、現用系のメディアサーバ4が故障した場合、待機系のメディアサーバ4は外部記憶装置6に記憶されている情報に基づいてIVRを再度起動する。よって、故障が発生した時点からIVR処理を再開することができる。
The information related to IVR is saved in the
このように、メモリ情報共有方式は、現用系のメディアサーバ4が持つメモリ情報を全て外部記憶装置6に保存しておき、故障時は待機系のメディアサーバ4が外部記憶装置6から情報を取得してメモリ情報を復旧させる方式である。本方式の場合、ブリッジ方式の転送実施時に故障が発生した場合でもセッションフェールオーバが可能となる。また、待機系に切り替わる時、メモリ上にSIP関連の情報を復旧させる必要がないため、短い停止時間で現用系から待機系に切り替わることができる。
As described above, in the memory information sharing method, all the memory information of the
次に、各装置の構成について説明する。
エンドユーザが保有する電話端末1は、IP電話端末であり、メディアサーバ4との間でSIPにより呼を確立するとともに、RTPを用いてメディアセッションを確立して音声パケットを送受信する。
中継サーバ2は、アドレス解決などを行なって、SIP信号の中継を行なう。
Next, the configuration of each device will be described.
The
The
メディアサーバ4は、通信部40、監視部41及びメディア処理プログラム実行部42を備える。通信部40は、IPにより他の装置との間でパケット(データ)を送受信する。通信部40は、現用系から処理を引継ぐ場合、現用系のメディアサーバ4が使用していたIPアドレスを引継いで使用する。監視部41は、他のメディアサーバ4の故障を検出する。
The
メディア処理プログラム実行部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
以下、メディアサーバ4aが備えるメディアサーバ4の各部には符号にaを付加して記載し、メディアサーバ4bが備えるメディアサーバ4の各部には符号にbを付加して記載する。例えば、メディアサーバ4aの備える監視部41は監視部41a、メディアサーバ4bの備える監視部41は監視部41bと記載する。
Hereinafter, each part of the
外部記憶装置6は記憶部60を備え、記憶部60内の電話番号設定記憶部61、IVRフロー記憶部62、呼処理復旧情報記憶部63、音声処理復旧情報記憶部64、IVR処理情報記憶部65に記憶されているデータの読書きを行なう。
発信制御装置7は、メディアサーバ4に対して呼の発信を指示する。
The
The
次に、本実施形態による外部記憶装置6に記憶される各データについて説明する。
図2は、本実施形態による電話番号設定記憶部61に記憶される電話番号設定情報のデータ構成例を示す図である。電話番号設定情報は、電話番号、実行すべきIVRシナリオを特定するIVR ID、同時に接続可能な呼数を示す最大チャネル数、及び、現在接続されている呼数を示すアクティブチャネル数を対応づけたレコードからなる。電話番号は、電話端末1から発信し、メディアサーバ4へ着信したときの着信先電話番号、あるいは、発信制御装置7の指示を受けメディアサーバ4が発信し、電話端末1へ着信したときの発信元電話番号である。
Next, each data stored in the
FIG. 2 is a diagram illustrating a data configuration example of the telephone number setting information stored in the telephone number setting
図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
図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
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
図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
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
コマンド実行履歴は、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
次に、本実施形態による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
図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
まず、電話端末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
続いて、メディアサーバ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
通話中状態が長く継続する場合、定期的にメディアサーバ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
エンドユーザが呼の切断操作を行なった場合、電話端末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
メディアサーバ4からの発信の場合、メディアサーバ4が図7に示すシーケンス中の電話端末1と同様の動作を行い、電話端末1が図7に示すメディアサーバ4と同様の動作を行なう。
In the case of transmission from the
図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
メディアサーバ4aは、音声再生などのIVR処理を実行し(ステップS230)、外部記憶装置6のIVR処理情報記憶部65にIVR処理情報を書き込む。また、IVR処理中に呼の継続確認のためのSIPパケットの送受信があった場合、メディアサーバ4aは、外部記憶装置6の呼処理復旧情報記憶部63に記憶されている呼処理復旧情報の読み込みや更新を行なう(ステップS235)。つまり、メディアサーバ4aは、IVR処理が進むたびにIVR処理情報を更新し、電話端末1からSIPパケットを受信する度に呼処理復旧情報を読込んで新規SIPパケットかを確認し、既存の呼の場合には呼処理復旧情報を更新する。
The
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
次に、メディアサーバ4における処理フローについて説明する。
図9は、本実施形態による監視フローを示す図である。
同図において、メディアサーバ4の監視部41は、所定の時間間隔により、他のメディアサーバ4の生死の監視を起動する(ステップS305)。つまり、メディアサーバ4aの監視部41aは、メディアサーバ4bの生死の監視処理を起動し、メディアサーバ4bの監視部41bは、メディアサーバ4aの生死の監視処理を起動する。
Next, a processing flow in the
FIG. 9 is a diagram showing a monitoring flow according to the present embodiment.
In the figure, the
監視が起動されると、メディアサーバ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
現用系、待機系のメディアサーバ4とも正常である場合、つまり、メディアサーバ4a、4bが、ステップS310において自身が送信した監視メッセージに対応して正常を通知する監視応答メッセージを受信した場合(ステップS315:故障検知なし)、現用系、待機系のメディアサーバ4a、4bともそのまま処理を継続する(ステップS320)。
When both the active and
待機系のメディアサーバ4bの故障発生が検出された場合、例えば、メディアサーバ4aの監視部41aが、メディアサーバ4bへ監視メッセージを送信してから所定時間以内に監視応答メッセージを受信しなかった、あるいは、メディアサーバ4bから故障を示す監視応答メッセージを受信した場合(ステップS315:待機系の故障検知)、現用系のメディアサーバ4aは、そのまま処理を継続する(ステップS325)。LANによりメディアサーバ4と接続され、IVRシステム全体の動作を管理する運用サーバ(図示せず)は、管理者宛のメール等を送信し、故障を通知する。
When a failure of the
現用系のメディアサーバ4aの故障発生が検出された場合、例えば、メディアサーバ4bの監視部41bが、メディアサーバ4aへ監視メッセージを送信してから所定時間以内に監視応答メッセージを受信しなかった、あるいは、メディアサーバ4aから故障を示す監視応答メッセージを受信したりした場合(ステップS315:現用系の故障検知)、待機系のメディアサーバ4bの監視部41bは、通信部40bに現用系のメディアサーバ4aのIPアドレスを引継ぐよう指示するとともに、メディア処理プログラム実行部42bに後述する故障時フローの実行を指示する(ステップS330)。
When a failure of the
図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
10, the call processing unit 43a of the
メディアサーバ4aの呼処理部43aは、INVITEパケットのToフィールドから着信先の電話番号を取得して主記憶部45aに書き込む(ステップS410)。呼処理部43aから指示を受けた制御部44aは、外部記憶装置6に取得した電話番号を通知し、最大チャネル数及びアクティブチャネル数の読み出しを指示する。制御部44aは、外部記憶装置6が電話番号設定記憶部61内の電話番号設定情報から電話番号に対応して読み出した最大チャネル数及びアクティブチャネル数を受信し、呼処理部43aに出力する。呼処理部43aは、アクティブチャネル数が最大チャネル数より小さい場合に、着信を許可する(ステップS415)。
なお、電話番号に対応したアクティブチャネル数や最大チャネル数が電話番号設定情報から読み出せなかった場合、あるいは、アクティブチャネル数が最大チャネル数以上であった場合、呼処理部43aはダイアログを確立せず、呼を終了させる。
The call processing unit 43a of the
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
呼処理部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
呼処理部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
なお、呼処理部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
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
次に、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバのCSeq、電話端末のCSeq、INVITEパケットのToフィールドから取得した着信側の電話番号であるサーバ側電話番号、INVITEパケットのFromフィールドから取得した発信側の電話番号である端末側電話番号、各種ヘッダフィールドと、着信を示す発着信フラグとを登録呼処理復旧情報として外部記憶装置6に出力し、呼処理復旧情報への登録を指示する(ステップS430)。外部記憶装置6は、呼処理復旧情報記憶部63内の呼処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録呼処理復旧情報を設定する。
Next, the
さらに、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバ4aが用いるRTPポート番号及びIPアドレス、電話端末1が用いるRTPポート番号及びIPアドレスを登録音声処理復旧情報として外部記憶装置6に出力し、音声処理復旧情報への登録を指示する(ステップS435)。外部記憶装置6は、音声処理復旧情報記憶部64内の音声処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録音声処理復旧情報を設定する。
メディアサーバ4aの呼処理部43aは、制御部44aにダイアログの確立を通知する。
Further, the
The call processing unit 43a of the
ダイアログの確立の通知を受信した制御部44aは、主記憶部45aから着信先の電話番号を読み出すと、外部記憶装置6に読み出した電話番号を通知してIVR ID及び最大チャネル数の読み出しを指示する。メディアサーバ4aの制御部44aは、外部記憶装置6が電話番号に対応して電話番号設定記憶部61内の電話番号設定情報から読み出したIVR ID及び最大チャネル数を受信し、主記憶部45aに書き込む(ステップS440)。
Receiving the dialog establishment notification, the
続いて、制御部44aは、外部記憶装置6に受信したIVR IDを通知してIVRフローシナリオの読み出しを指示する。制御部44aは、外部記憶装置6がIVR IDに対応してIVRフロー記憶部62内のIVRフローデータから読み出したIVRフローシナリオを受信し、主記憶部45aに書き込む(ステップS445)。
Subsequently, the
次に、制御部44aは、外部記憶装置6に主記憶部45aから取得したtoタグ、fromタグ、及び、callidを通知してコマンド実行履歴の読み出しを指示する。制御部44aは、外部記憶装置6がtoタグ、fromタグ、及び、callidに対応してIVR処理情報記憶部65内のIVR処理情報から読み出したコマンド実行履歴を受信し、主記憶部45aに書き込む(ステップS450)。なお、コマンド実行履歴が読み出せなかった場合は、初期状態であると判断する。
Next, the
図11において、制御部44aは、IVR処理部46aに主記憶部45aに書き込んだIVRシナリオとコマンド実行履歴を出力し、IVRフローの実行を指示する。IVR処理部46aは、コマンド実行履歴がなく、初期状態であると判断した場合、IVRシナリオを最初から実行する。コマンド実行履歴に実行したコマンドが設定されている場合、そのコマンドにより示される途中のIVR処理からIVRシナリオを実行する(ステップS505)。
In FIG. 11, the
音声処理部47aは、制御部44aの指示を受け、自メディアサーバ4aが使用するSSRC及びRTPシーケンスナンバを生成すると、主記憶部45aから自メディアサーバ4aが用いるRTPポート番号及びIPアドレスと、電話端末1が用いるRTPポート番号及びIPアドレスを読み出し、これらの情報を用いて電話端末1との間のRTPセッションを確立し、RTPパケットの送受信を開始する(ステップS510)。制御部44aは、メディアサーバのSSRC、最初に送信したRTPパケットに設定したRTPシーケンスナンバ、RTPセッションを開始した時間を示す発着信開始時間を主記憶部45aに書き込む。
When the
制御部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
メディアサーバ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
メディアサーバ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
The
また、メディアサーバ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
電話端末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
The
Further, the
The call processing unit 43a returns 200 OK to the
あるいは、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
When the
上記のいずれかにより通話が終了したことを認識したメディアサーバ4aの制御部44aは、ステップS550またはS565の後、主記憶部45aから終了した呼のtoタグ、fromタグ、callidを読み出して外部記憶装置6へ送信し、呼処理復旧情報、音声処理復旧情報、及び、IVR処理情報の削除を指示する。外部記憶装置6は、toタグ、fromタグ、callidにより特定される呼処理復旧情報のレコード、音声処理復旧情報のレコード、及び、IVR処理情報のレコードを削除する(ステップS570)。
The
さらに、メディアサーバ4aの制御部44aは、終了した呼に対して実行していたIVRフローシナリオのIVR IDを外部記憶装置6へ送信し、アクティブチャネル数の減算を指示する(ステップS575)。外部記憶装置6は、IVR IDにより電話番号設定記憶部61が記憶している電話番号設定情報のレコードを特定し、特定したレコードに設定されているアクティブチャネル数を、1を減算した数に更新する。
Further, the
図12は、本実施形態による現用系のメディアサーバ4における発信時の処理フローを示す図である。
メディアサーバ4aの制御部44aは、発信制御装置7から発信指示を受信する(ステップS605)。発信指示には、サーバ側電話番号及び端末側電話番号が設定される。
FIG. 12 is a diagram showing a processing flow at the time of outgoing call in the
The
メディアサーバ4aの呼処理部43aは、発信指示から取得したサーバ側電話番号を外部記憶装置6に通知し、最大チャネル数及びアクティブチャネル数の読み出しを指示する(ステップS610)。制御部44aは、外部記憶装置6が電話番号に対応して電話番号設定記憶部61内の電話番号設定情報から読み出した最大チャネル数及びアクティブチャネル数を受信すると、これらを比較する。制御部44aは、アクティブチャネル数が最大チャネル数より小さい場合に着信を許可し、呼処理部43aに発信を指示する。
なお、サーバ側電話番号が電話番号設定情報に設定されていない場合、あるいは、アクティブチャネル数が最大チャネル数以上であった場合、制御部44aは発信を指示せず、処理を終了する。
The call processing unit 43a of the
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
制御部44aから発信指示を受けた呼処理部43aは、SIPの仕様に従って電話端末1とのダイアログを確立するとともに、呼の再開に必要なSIPの情報を主記憶部45aに書き込む(ステップS615)。具体的には、以下のように動作する。
The call processing unit 43a that has received a call origination instruction from the
呼処理部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
The
呼処理部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
The call processing unit 43a acquires the to tag, the RTP port number and the IP address used by the
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
以降、メディアサーバ4aは、図10のステップS430以降と同様の処理を行なう。ただし、ステップS430において、登録呼処理復旧情報には、発信を示す発着信フラグ、INVITEのFromフィールドから取得した発信側の電話番号であるサーバ側電話番号、INVITEパケットのToフィールドから取得した着信側の電話番号である端末側電話番号が設定される。
Thereafter, the
図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
When a failure of the
メディアサーバ4bの復旧処理部48bは、外部記憶装置6の呼処理復旧情報記憶部63に記憶されている呼処理復旧情報を1レコードずつ特定し、特定したレコードを読み出して主記憶部45bに書き込むとともに、当該レコードからtoタグ、fromタグ及びcallidを読み出して(ステップS710)、以下の処理を行なう。なお、外部記憶装置6からtoタグ、fromタグ及びcallidのみを読み出すことでもよい。
The
制御部44bは、ステップS710において取得したtoタグ、fromタグ及びcallidの組を外部記憶装置6に通知し、音声処理復旧情報、及び、IVR処理情報の読み出しを指示する(ステップS715)。制御部44bは、外部記憶装置6が各toタグ、fromタグ及びcallidの組に対応して読み出した音声処理復旧情報記憶部64内の音声処理復旧情報のレコード、及び、IVR処理情報記憶部65内のIVR処理情報内のレコードを受信し、主記憶部45bに書き込む。
The control unit 44b notifies the
さらに、制御部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
なお、コマンドの番号により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
メディアサーバ4bの音声処理部47bは、ステップS715において主記憶部45bに保存したIVR処理情報のレコード内のコマンド実行履歴からコマンドを読み出す。IVR処理部47bは、主記憶部45bに記憶されているIVRシナリオを、読み出したコマンドにより特定されるIVR処理から実行することによって、IVR処理を途中から再開する(ステップS720)。
The
音声処理部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
Specifically, the control unit 44b reads out the outgoing / incoming start time and the RTP sequence number of the
音声処理部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
続いて復旧処理部48bは、外部記憶装置6の呼処理復旧情報記憶部63に記憶されている呼処理復旧情報の中で、まだ読み出していないレコードがあるかを判断し(ステップS730)、まだ読み出していないレコードがあれば(ステップS730:YES)、ステップS710からの処理を行う。一方、全てのレコードについて読み出しを行なったならば(ステップS730:NO)、メディアサーバ4bにおいて、以降、メディアサーバ4aが行なっていたステップS520からの処理を行なう。つまり、各部の符号の最後記載されている「a」を「b」に置き換えればよい。
Subsequently, the
なお、本実施形態のメモリ情報共有方式は、基本的には全てのデータを外部記憶装置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
[第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
上記のように、メモリ情報再構築方式は、現用系のメディアサーバ4の故障時は現用系が受信したパケットを待機系のメディアサーバ4に送信することで、待機系のメディアサーバ4が保持するメモリ情報を、現用系のメディアサーバ4と同じように復旧させる方式であり、メモリ情報共有方式に比べて改修範囲が少ないため、実装が比較的容易である。
以下では、第1の実施形態との差分について説明する。
As described above, in the memory information reconstruction method, when the
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
図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
図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
図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
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
次に、本実施形態によるメディアサーバ4における処理フローについて説明する。本実施形態による監視フローは、図12に示す第1の実施形態と同様である。
Next, a processing flow in the
図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
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
さらに、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバ4aが用いるRTPポート番号及びIPアドレスを登録音声処理復旧情報として外部記憶装置6に出力し、音声処理復旧情報への登録を指示する(ステップS935)。外部記憶装置6は、音声処理復旧情報記憶部64内の音声処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録音声処理復旧情報を設定する。
メディアサーバ4aの呼処理部43aは、制御部44aにダイアログの確立を通知する。以降は、図10のステップS440からの処理を行う。
Furthermore, the
The call processing unit 43a of the
図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
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
さらに、メディアサーバ4aの呼処理部43aから指示を受けた制御部44aは、主記憶部45aに記憶されているtoタグ、fromタグ、callid、メディアサーバ4aが用いるRTPポート番号及びIPアドレスを登録音声処理復旧情報として外部記憶装置6に出力し、音声処理復旧情報への登録を指示する(ステップS1030)。外部記憶装置6は、音声処理復旧情報記憶部64内の音声処理復旧情報にレコードを追加し、追加したレコードにメディアサーバ4aから受信した登録音声処理復旧情報を設定する。
メディアサーバ4aの呼処理部43aは、制御部44aにダイアログの確立を通知する。以降は、図10のステップS440からの処理を行う。
Furthermore, the
The call processing unit 43a of the
図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
The processing of the
ステップ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
復旧処理部48bは、外部記憶装置6から読み出したINVITEパケットを呼処理部43bに対して内部的に送信する。これにより、呼処理部43bは、INVITEパケット受信時の処理と同様の処理を行なう(ステップS1130)。呼処理部43bは、図10のステップS420における処理と同様に、INVITEパケットを主記憶部45bに書き込むとともに、INVITEパケットに設定されているfromタグ、callid、各種ヘッダフィールド、電話端末1が用いるRTPポート番号及びIPアドレス、電話端末のCSeqを読み出して主記憶部45bに書き込む。
The
続いて、呼処理部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
続いて、復旧処理部48bは、ステップS1125において外部記憶装置6から読み出したACKパケットを呼処理部43bに対して内部的に送信する。これにより、呼処理部43bは、ACKパケット受信時の処理と同様の処理を行なう(ステップS1140)。呼処理部43bは、図10のステップS420における処理と同様に、送信したこのACKパケットを主記憶部45bに書き込むとともに、各種ヘッダフィールドを主記憶部45bに書き込む。
上記処理により、メディアサーバ4bは、図17のステップS920と同じ状態になる。
Subsequently, the
With the above processing, the
一方、ステップ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
復旧処理部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
続いて、復旧処理部48bは、ステップS1150において読み出した呼処理復旧情報のレコードに設定されている200OKを呼処理部43bに対して内部的に送信する。これにより、呼処理部43bは、200OKパケット受信時の処理と同様の処理を行なう(ステップS1155)。呼処理部43bは、図12のステップS615における処理と同様に、受信した200OKパケットを主記憶部45bに書き込むとともに、toタグ、電話端末1が用いるRTPポート番号及びIPアドレス、電話端末のCSeq、各種ヘッダフィールドを主記憶部45bに書き込む。
Subsequently, the
続いて、復旧処理部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
As a result, the
メディアサーバ4bの音声処理部47bは、図13のステップS720と同様の処理により主記憶部45bに保存されたIVR処理情報のレコードを用いてIVR処理を途中から再開し(ステップS1165)、音声処理部47bは、図13のステップS725と同様の処理により、ステップS1115において制御部44bが特定したIVR処理情報のレコードに設定されている値を用いて、電話端末1との間のRTPセッションを再開する(ステップS1170)。
The
続いて復旧処理部48bは、外部記憶装置6の音声処理復旧情報記憶部64に記憶されている音声処理復旧情報の中で、まだ読み出していないレコードがあるかを判断し(ステップS1175)、まだ読み出していないレコードがあれば(ステップS1175:YES)、ステップS1110からの処理を行う。一方、全てのレコードについて読み出しを行なったならば(ステップS1175:NO)、メディアサーバ4bにおいて、以降、メディアサーバ4aが行なっていたステップS520からの処理を行なう。つまり、各部の符号の最後に記載されている「a」を「b」に置き換えればよい。
Subsequently, the
上述したように、本実施形態によれば、現用系のメディアサーバは、セッションが確立したときに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
また、「コンピュータシステム」は、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
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 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
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)
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)
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 |
-
2009
- 2009-07-31 JP JP2009179087A patent/JP4834759B2/en active Active
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 |