技术领域technical field
本发明涉及通信技术领域,特别涉及一种录音方法、呼叫控制服务器及录音系统。The invention relates to the technical field of communication, in particular to a recording method, a call control server and a recording system.
背景技术Background technique
随着通信技术的不断发展,人们不仅可以通过电子设备进行通信,还可以对通信内容进行录音,如对于一些企业和个人基于监管、记录等需求通常需要对特定用户的通话进行录音。With the continuous development of communication technology, people can not only communicate through electronic devices, but also record the content of communication. For example, some enterprises and individuals usually need to record the calls of specific users based on the needs of supervision and recording.
请参考图1,现有技术中的通话录音系统中通常包含呼叫控制服务器(CallControl Manager)、录音服务器(Recording Server)、媒体控制单元(Multipoint ControlUnit,MCU)及终端(User Equipment,UE)。UE1与UE2之间要实现点对点的通话录音,需要通过呼叫控制服务器在MCU上创建会场,通话的双方UE1、UE2和录音服务器都要加入到会场中。在通话录音时MCU会将UE1和UE2发送的数据进行混音后发送给录音服务器。Please refer to FIG. 1 , the call recording system in the prior art usually includes a call control server (CallControl Manager), a recording server (Recording Server), a media control unit (Multipoint ControlUnit, MCU) and a terminal (User Equipment, UE). To realize point-to-point call recording between UE1 and UE2, a conference site needs to be created on the MCU through the call control server, and both parties in the call, UE1, UE2, and the recording server, must join the conference site. When recording a call, the MCU will mix the data sent by UE1 and UE2 and send it to the recording server.
由于现有技术的通话录音需要创建会场并通过MCU进行混音,因此需要占用MCU的媒体资源,可见现有技术在进行通话录音时存在占用MCU的媒体资源的技术问题。Since the call recording in the prior art needs to create a conference site and perform audio mixing through the MCU, it needs to occupy the media resources of the MCU. It can be seen that there is a technical problem of occupying the media resources of the MCU in the call recording in the prior art.
发明内容Contents of the invention
本发明实施例提供一种录音方法及呼叫控制服务器,用于解决现有技术在进行通话录音时占用MCU的媒体资源的技术问题。Embodiments of the present invention provide a recording method and a call control server, which are used to solve the technical problem in the prior art that media resources of an MCU are occupied during call recording.
第一方面,本发明提供第一种录音方法,应用于呼叫控制服务器,所述方法包括:In a first aspect, the present invention provides a first recording method, which is applied to a call control server, and the method includes:
所述呼叫控制服务器接收与第二终端进行通信的第一终端发送的录音请求;The call control server receives a recording request sent by the first terminal communicating with the second terminal;
所述呼叫控制服务器为所述第一终端分配第一组播组地址,通知所述第一终端加入所述第一组播组地址对应的第一组播组,并向所述第二终端发送所述第一组播组地址,以便于所述第二终端向所述第一组播组地址发送用于与所述第一终端通信的媒体;The call control server assigns a first multicast group address to the first terminal, notifies the first terminal to join the first multicast group corresponding to the first multicast group address, and sends a message to the second terminal The first multicast group address, so that the second terminal sends media for communicating with the first terminal to the first multicast group address;
所述呼叫控制服务器为所述第二终端分配第二组播组地址,通知所述第二终端加入所述第二组播组地址对应的第二组播组,并向所述第一终端发送所述第二组播组地址,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;The call control server assigns a second multicast group address to the second terminal, notifies the second terminal to join the second multicast group corresponding to the second multicast group address, and sends a message to the first terminal The second multicast group address, so that the first terminal sends media for communicating with the second terminal to the second multicast group address;
所述呼叫控制服务器将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。The call control server sends the first multicast group address and the second multicast group address to the recording server, so that the recording server joins the first multicast group and the second multicast group to receive and record the media sent by the first terminal and the second terminal.
结合第一方面,在第一种可能实施的方式中,在所述呼叫控制服务器将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,所述方法还包括:With reference to the first aspect, in a first possible implementation manner, after the call control server sends the first multicast group address and the second multicast group address to the recording server, the method further includes :
所述呼叫控制服务器在接收到所述第一终端或所述第二终端发送的用于停止录音的请求时,向所述第二终端发送所述第一终端的单播地址,以便于所述第二终端向所述第一终端的单播地址发送用于与所述第一终端通信的媒体,向所述第一终端发送所述第二终端的单播地址,以便于所述第一终端向所述第二终端的单播地址发送用于与所述第二终端通信的媒体。When the call control server receives the request for stopping the recording sent by the first terminal or the second terminal, it sends the unicast address of the first terminal to the second terminal, so that the The second terminal sends media for communicating with the first terminal to the unicast address of the first terminal, and sends the unicast address of the second terminal to the first terminal, so that the first terminal Media for communicating with the second terminal is sent to the unicast address of the second terminal.
结合第一方面的第一种可能实施的方式,在第二种可能的实施方式中,所述方法还包括:With reference to the first possible implementation manner of the first aspect, in a second possible implementation manner, the method further includes:
所述呼叫控制服务器在接收到所述用于停止录音的请求时,通知所述第一终端退出所述第一组播组,通知所述第二终端退出所述第二组播组,通知所述录音服务器停止录音并退出所述第一组播组和所述第二组播组,并在确定所述第一终端和所述录音服务器均已退出第一组播组时回收所述第一组播地址,在确定所述第二终端和所述录音服务器均已退出第二组播组时回收所述第二组播地址。When the call control server receives the request for stopping recording, it notifies the first terminal to quit the first multicast group, notifies the second terminal to quit the second multicast group, and notifies all The recording server stops recording and exits the first multicast group and the second multicast group, and reclaims the first multicast group when it is determined that both the first terminal and the recording server have exited the first multicast group A multicast address, reclaiming the second multicast address when it is determined that both the second terminal and the recording server have exited the second multicast group.
第二方面,本发明提供第二种录音方法,应用于呼叫控制服务器,所述方法包括:In a second aspect, the present invention provides a second recording method, which is applied to a call control server, and the method includes:
所述呼叫控制服务器接收所述第一终端发送的请求与第二终端进行通信的呼叫请求,所述呼叫请求中包含所述第一终端所在的第一组播组的第一组播组地址;The call control server receives a call request sent by the first terminal requesting to communicate with the second terminal, and the call request includes a first multicast group address of the first multicast group where the first terminal is located;
所述呼叫控制服务器在确定所述第一终端已开启自动录音业务时,为所述第二终端分配第二组播组地址,将所述第二组播组地址加入所述呼叫请求并向所述第二终端发送修改后的呼叫请求,以使得所述第二终端加入所述第二组播组地址对应的第二组播组并向所述第一组播组地址发送用于与所述第一终端通信的媒体;When the call control server determines that the first terminal has enabled the automatic recording service, it allocates a second multicast group address to the second terminal, adds the second multicast group address to the call request, and sends the call request to the second terminal. The second terminal sends a modified call request, so that the second terminal joins the second multicast group corresponding to the second multicast group address and sends a call request to the first multicast group address for communicating with the the medium through which the first terminal communicates;
所述呼叫控制服务器将接收的所述第二终端发送的包括所述第二组播组地址的呼叫响应转发给所述第一终端,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;The call control server forwards the received call response sent by the second terminal and including the address of the second multicast group to the first terminal, so that the first terminal sends a call response to the second multicast group address sending media for communicating with said second terminal;
所述呼叫控制服务器将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。The call control server sends the first multicast group address and the second multicast group address to the recording server, so that the recording server joins the first multicast group and the second multicast group to receive and record the media sent by the first terminal and the second terminal.
结合第二方面,在第一种可能实施的方式中,在所述呼叫控制服务器接收所述第一终端发送的请求与第二终端进行通信的呼叫请求之前,所述方法还包括:在所述第一终端开启自动录音业务时,所述呼叫控制服务器为所述第一终端分配第一组播组地址并通知所述第一终端加入所述第一组播组。With reference to the second aspect, in a first possible implementation manner, before the call control server receives the call request sent by the first terminal requesting to communicate with the second terminal, the method further includes: When the first terminal starts the automatic recording service, the call control server assigns the first multicast group address to the first terminal and notifies the first terminal to join the first multicast group.
结合第二方面或第二方面的第一种可能实施的方式,在第二种可能实施的方式中,在所述呼叫控制服务器将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,所述方法还包括:With reference to the second aspect or the first possible implementation manner of the second aspect, in the second possible implementation manner, the call control server sets the address of the first multicast group and the address of the second multicast group After the address is sent to the recording server, the method also includes:
所述呼叫控制服务器在检测到所述第一终端挂机时,向所述第二终端发送用于提示所述第二终端退出组播组的提示消息;When the call control server detects that the first terminal is on-hook, sending a prompt message to the second terminal for prompting the second terminal to withdraw from the multicast group;
所述呼叫控制服务器接收所述提示消息对应的反馈消息,回收所述第二组播组地址,其中,所述反馈消息用于表明所述第二终端已退出所述第二组播组。The call control server receives a feedback message corresponding to the prompt message, and reclaims the address of the second multicast group, where the feedback message is used to indicate that the second terminal has withdrawn from the second multicast group.
结合第二方面第二种可能实施的方式,在第三种可能实施的方式中,所述呼叫控制服务器在检测到所述第一终端挂机之后,所述方法还包括:With reference to the second possible implementation manner of the second aspect, in a third possible implementation manner, after the call control server detects that the first terminal hangs up, the method further includes:
所述呼叫控制服务器在所述第一终端关闭所述自动录音业务时,回收所述第一组播组地址。The call control server reclaims the first multicast group address when the first terminal closes the automatic recording service.
第三方面,本发明提供第一种呼叫控制服务器,所述呼叫控制服务器包括:In a third aspect, the present invention provides a first call control server, where the call control server includes:
接收模块,用于接收与第二终端进行通信的第一终端发送的录音请求;A receiving module, configured to receive a recording request sent by the first terminal communicating with the second terminal;
组播地址管理模块,用于为所述第一终端分配第一组播组地址,通知所述第一终端加入所述第一组播组地址对应的第一组播组,并向所述第二终端发送所述第一组播组地址,以便于所述第二终端向所述第一组播组地址发送用于与所述第一终端通信的媒体;为所述第二终端分配第二组播组地址,通知所述第二终端加入所述第二组播组地址对应的第二组播组,并向所述第一终端发送所述第二组播组地址,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;A multicast address management module, configured to assign a first multicast group address to the first terminal, notify the first terminal to join the first multicast group corresponding to the first multicast group address, and send the first multicast group address to the first terminal The second terminal sends the first multicast group address, so that the second terminal sends media for communicating with the first terminal to the first multicast group address; assigns a second terminal to the second terminal multicast group address, notifying the second terminal to join the second multicast group corresponding to the second multicast group address, and sending the second multicast group address to the first terminal, so that the second A terminal sends media for communicating with the second terminal to the second multicast group address;
发送模块,用于将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。A sending module, configured to send the first multicast group address and the second multicast group address to a recording server, so that the recording server joins the first multicast group and the second multicast group to receive and record the media sent by the first terminal and the second terminal.
结合第三方面,在第一种可能实施的方式中,所述发送模块还用于:With reference to the third aspect, in a first possible implementation manner, the sending module is further configured to:
在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,所述接收模块接收到所述第一终端或所述第二终端发送的用于停止录音的请求时,向所述第二终端发送所述第一终端的单播地址,以便于所述第二终端向所述第一终端的单播地址发送用于与所述第一终端通信的媒体,向所述第一终端发送所述第二终端的单播地址,以便于所述第一终端向所述第二终端的单播地址发送用于与所述第二终端通信的媒体。After sending the first multicast group address and the second multicast group address to the recording server, the receiving module receives a request for stopping recording sent by the first terminal or the second terminal , sending the unicast address of the first terminal to the second terminal, so that the second terminal sends media for communicating with the first terminal to the unicast address of the first terminal, and sends The first terminal sends the unicast address of the second terminal, so that the first terminal sends media for communicating with the second terminal to the unicast address of the second terminal.
结合第三方面的第一种可能实施的方式,在第二种可能实施的方式中,所述发送模块还用于:在所述接收模块接收到所述用于停止录音的请求时,通知所述第一终端退出所述第一组播组,通知所述第二终端退出所述第二组播组,通知所述录音服务器停止录音并退出所述第一组播组和所述第二组播组;With reference to the first possible implementation manner of the third aspect, in a second possible implementation manner, the sending module is further configured to: when the receiving module receives the request for stopping recording, notify the The first terminal quits the first multicast group, notifies the second terminal to quit the second multicast group, notifies the recording server to stop recording and quits the first multicast group and the second group broadcast group;
所述组播地址管理模块还用于:在确定所述第一终端和所述录音服务器均已退出第一组播组时回收所述第一组播地址,在确定所述第二终端和所述录音服务器均已退出第二组播组时回收所述第二组播地址。The multicast address management module is also used for: reclaiming the first multicast address when it is determined that both the first terminal and the recording server have exited the first multicast group; Recycle the second multicast address when the recording servers have all exited the second multicast group.
第四方面,本发明提供第二种呼叫控制服务器,所述呼叫控制服务器包括:In a fourth aspect, the present invention provides a second call control server, where the call control server includes:
接收模块,用于接收所述第一终端发送的请求与第二终端进行通信的呼叫请求,所述呼叫请求中包含所述第一终端所在的第一组播组的第一组播组地址;A receiving module, configured to receive a call request sent by the first terminal requesting to communicate with the second terminal, where the call request includes a first multicast group address of the first multicast group where the first terminal is located;
组播地址管理模块,用于在确定所述第一终端已开启自动录音业务时,为所述第二终端分配第二组播组地址,将所述第二组播组地址加入所述呼叫请求并向所述第二终端发送修改后的呼叫请求,以使得所述第二终端加入所述第二组播组地址对应的第二组播组并向所述第一组播组地址发送用于与所述第一终端通信的媒体;A multicast address management module, configured to assign a second multicast group address to the second terminal when determining that the first terminal has started the automatic recording service, and add the second multicast group address to the call request and send a modified call request to the second terminal, so that the second terminal joins the second multicast group corresponding to the second multicast group address and sends a call request to the first multicast group address for a medium for communicating with the first terminal;
发送模块,用于将所述接收模块接收的所述第二终端发送的包括所述第二组播组地址的呼叫响应转发给所述第一终端,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。a sending module, configured to forward, to the first terminal, the call response received by the receiving module and sent by the second terminal and including the second multicast group address, so that the first terminal sends the call response to the first terminal; The second multicast group address sends the media used to communicate with the second terminal; the first multicast group address and the second multicast group address are sent to the recording server, so that the recording server joins the The first multicast group and the second multicast group receive and record the media sent by the first terminal and the second terminal.
结合第四方面,在第一种可能实施的方式中,所述组播地址管理模块还用于:With reference to the fourth aspect, in a first possible implementation manner, the multicast address management module is further configured to:
在所述接收模块接收所述第一终端发送的请求与第二终端进行通信的呼叫请求之前,所述第一终端开启自动录音业务时,为所述第一终端分配第一组播组地址并通知所述第一终端加入所述第一组播组。Before the receiving module receives the call request sent by the first terminal to communicate with the second terminal, when the first terminal starts the automatic recording service, assign the first multicast group address to the first terminal and Informing the first terminal to join the first multicast group.
结合第四方面及第四方面的第一种可能实施的方式,在第二种可能实施的方式中,所述发送模块还用于:在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,检测到所述第一终端挂机时,向所述第二终端发送用于提示所述第二终端退出组播组的提示消息;With reference to the fourth aspect and the first possible implementation manner of the fourth aspect, in a second possible implementation manner, the sending module is further configured to: transmit the first multicast group address and the second After the multicast group address is sent to the recording server, when it is detected that the first terminal is on-hook, a prompt message for prompting the second terminal to withdraw from the multicast group is sent to the second terminal;
所述发送模块接收所述提示消息对应的反馈消息,触发所述组播地址管理模块回收所述第二组播组地址,其中,所述反馈消息用于表明所述第二终端已退出所述第二组播组。The sending module receives a feedback message corresponding to the prompt message, and triggers the multicast address management module to recycle the second multicast group address, wherein the feedback message is used to indicate that the second terminal has withdrawn from the The second multicast group.
结合第四方面的第二种可能实施的方式,在第三种可能实施的方式中,所述组播地址管理模块还用于:在检测到所述第一终端挂机之后,所述第一终端关闭所述自动录音业务时,回收所述第一组播组地址。With reference to the second possible implementation manner of the fourth aspect, in a third possible implementation manner, the multicast address management module is further configured to: after detecting that the first terminal hangs up, the first terminal When the automatic recording service is closed, the first multicast group address is reclaimed.
第五方面,本发明提供第一种录音系统,所述系统包括:In the fifth aspect, the present invention provides the first recording system, the system comprising:
呼叫控制服务器,用于接收与第二终端进行通信的第一终端发送的录音请求;为所述第一终端分配第一组播组地址,通知所述第一终端加入所述第一组播组地址对应的第一组播组,并向所述第二终端发送所述第一组播组地址,以便于所述第二终端向所述第一组播组地址发送用于与所述第一终端通信的媒体;为所述第二终端分配第二组播组地址,通知所述第二终端加入所述第二组播组地址对应的第二组播组,并向所述第一终端发送所述第二组播组地址,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;将所述第一组播组地址和所述第二组播组地址发送给录音服务器;The call control server is configured to receive the recording request sent by the first terminal communicating with the second terminal; assign a first multicast group address to the first terminal, and notify the first terminal to join the first multicast group address corresponding to the first multicast group, and send the first multicast group address to the second terminal, so that the second terminal sends the first multicast group address to the first multicast group address for communication with the first A medium for terminal communication; assigning a second multicast group address to the second terminal, notifying the second terminal to join the second multicast group corresponding to the second multicast group address, and sending a message to the first terminal The second multicast group address, so that the first terminal sends media for communicating with the second terminal to the second multicast group address; the first multicast group address and the The second multicast group address is sent to the recording server;
所述录音服务器,用于加入所述第一组播组和所述第二组播组,接收并录制所述第一终端发送至所述第二组播组的媒体和所述第二终端发送至所述第一组播组的媒体。The recording server is configured to join the first multicast group and the second multicast group, receive and record the media sent by the first terminal to the second multicast group and the media sent by the second terminal to the media of the first multicast group.
结合第五方面,在第一种可能实施的方式中,所述系统还包括:所述第一终端和所述第二终端。With reference to the fifth aspect, in a first possible implementation manner, the system further includes: the first terminal and the second terminal.
结合第五方面及第五方面的第一种可能实施的方式,在第二种可能实施的方式中,所述呼叫控制服务器还用于:With reference to the fifth aspect and the first possible implementation manner of the fifth aspect, in the second possible implementation manner, the call control server is further configured to:
在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,接收到所述第一终端或所述第二终端发送的用于停止录音的请求时,向所述第二终端发送所述第一终端的单播地址,以便于所述第二终端向所述第一终端的单播地址发送用于与所述第一终端通信的媒体,向所述第一终端发送所述第二终端的单播地址,以便于所述第一终端向所述第二终端的单播地址发送用于与所述第二终端通信的媒体。After sending the first multicast group address and the second multicast group address to the recording server, when receiving the request for stopping the recording sent by the first terminal or the second terminal, sending the request to the recording server The second terminal sends the unicast address of the first terminal, so that the second terminal sends media for communicating with the first terminal to the unicast address of the first terminal, and sends the first terminal The terminal sends the unicast address of the second terminal, so that the first terminal sends media used for communicating with the second terminal to the unicast address of the second terminal.
结合第五方面及第五方面的第一种可能实施的方式,在第三种可能实施的方式中,所述呼叫控制服务器还用于:With reference to the fifth aspect and the first possible implementation manner of the fifth aspect, in a third possible implementation manner, the call control server is further configured to:
在接收到所述用于停止录音的请求时,通知所述第一终端退出所述第一组播组,通知所述第二终端退出所述第二组播组,通知所述录音服务器停止录音并退出所述第一组播组和所述第二组播组,并在确定所述第一终端和所述录音服务器均已退出第一组播组时回收所述第一组播地址,在确定所述第二终端和所述录音服务器均已退出第二组播组时回收所述第二组播地址。When receiving the request for stopping recording, notify the first terminal to quit the first multicast group, notify the second terminal to quit the second multicast group, and notify the recording server to stop recording And withdraw from the first multicast group and the second multicast group, and recycle the first multicast address when it is determined that both the first terminal and the recording server have withdrawn from the first multicast group, Reclaiming the second multicast address when it is determined that both the second terminal and the recording server have exited the second multicast group.
第六方面,本发明提供第二种录音系统,所述系统包括:In a sixth aspect, the present invention provides a second recording system, said system comprising:
呼叫控制服务器,用于接收所述第一终端发送的请求与第二终端进行通信的呼叫请求,所述呼叫请求中包含所述第一终端所在的第一组播组的第一组播组地址;在确定所述第一终端已开启自动录音业务时,为所述第二终端分配第二组播组地址,将所述第二组播组地址加入所述呼叫请求并向所述第二终端发送修改后的呼叫请求,以使得所述第二终端加入所述第二组播组地址对应的第二组播组并向所述第一组播组地址发送用于与所述第一终端通信的媒体;将接收的所述第二终端发送的包括所述第二组播组地址的呼叫响应转发给所述第一终端,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;将所述第一组播组地址和所述第二组播组地址发送给录音服务器;A call control server, configured to receive a call request sent by the first terminal requesting to communicate with the second terminal, where the call request includes the first multicast group address of the first multicast group where the first terminal is located ; When determining that the first terminal has started the automatic recording service, assigning a second multicast group address to the second terminal, adding the second multicast group address to the call request and sending the call request to the second terminal sending the modified call request, so that the second terminal joins the second multicast group corresponding to the second multicast group address and sends a call request to the first multicast group address for communicating with the first terminal media; forward the received call response sent by the second terminal and including the second multicast group address to the first terminal, so that the first terminal sends a call response to the second multicast group address Media used for communicating with the second terminal; sending the first multicast group address and the second multicast group address to a recording server;
所述录音服务器,用于加入所述第一组播组和所述第二组播组,接收并录制所述第一终端发送至所述第二组播组的媒体和所述第二终端发送至所述第一组播组的媒体。The recording server is configured to join the first multicast group and the second multicast group, receive and record the media sent by the first terminal to the second multicast group and the media sent by the second terminal to the media of the first multicast group.
结合第六方面,在第一种可能实施的方式中,所述系统还包括所述第一终端和所述第二终端。With reference to the sixth aspect, in a first possible implementation manner, the system further includes the first terminal and the second terminal.
结合第六方面及第六方面的第一种可能实施的方式,在第二种可能实施的方式中,所述呼叫控制服务器还用于:With reference to the sixth aspect and the first possible implementation manner of the sixth aspect, in the second possible implementation manner, the call control server is further configured to:
在接收所述第一终端发送的请求与第二终端进行通信的呼叫请求之前,所述第一终端开启自动录音业务时,所述呼叫控制服务器为所述第一终端分配第一组播组地址并通知所述第一终端加入所述第一组播组。Before receiving the call request sent by the first terminal requesting to communicate with the second terminal, when the first terminal starts the automatic recording service, the call control server assigns the first multicast group address to the first terminal And notify the first terminal to join the first multicast group.
结合第六方面及第六方面的第一种可能实施的方式,在第三种可能实施的方式中,所述呼叫控制服务器还用于:With reference to the sixth aspect and the first possible implementation manner of the sixth aspect, in a third possible implementation manner, the call control server is further configured to:
在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,检测到所述第一终端挂机时,向所述第二终端发送用于提示所述第二终端退出组播组的提示消息;接收所述提示消息对应的反馈消息,回收所述第二组播组地址,其中,所述反馈消息用于表明所述第二终端已退出所述第二组播组。After sending the first multicast group address and the second multicast group address to the recording server, when it is detected that the first terminal is on-hook, send a message to the second terminal to prompt the second terminal A prompt message for exiting the multicast group; receiving a feedback message corresponding to the prompt message, and reclaiming the address of the second multicast group, wherein the feedback message is used to indicate that the second terminal has withdrawn from the second multicast group Group.
结合第六方面的第三种可能实施的方式,在第四种可能实施的方式中,所述呼叫控制服务器还用于:在检测到所述第一终端挂机之后,所述第一终端关闭所述自动录音业务时,回收所述第一组播组地址。With reference to the third possible implementation manner of the sixth aspect, in a fourth possible implementation manner, the call control server is further configured to: after detecting that the first terminal hangs up, the first terminal turns off the When the automatic recording service is used, reclaim the first multicast group address.
本申请实施例中的上述一个或多个技术方案,至少具有如下技术效果:The above one or more technical solutions in the embodiments of the present application have at least the following technical effects:
在第一终端与第二终端进行通信的过程中,通过呼叫控制服务器响应第一终端发送的录音请求,为第一终端和第二终端分别分配第一组播组地址和第二组播组地址,使第一终端和第二终端分别加入第一组播组和第二组播组;呼叫控制服务器还将第一组播组地址和第二组播组地址发送给录音服务器,以使录音服务器加入第一组播组和第二组播组,从而对第一终端和第二终端之间的通话进行录音。呼叫控制服务器通过组播组地址的分配,将录音服务器作为组播成员加入到第一终端和第二终端的组播组中,从而实现录音服务器对第一终端与第二终端之间的通话进行录音,避免了在MCU上创建会场,从而解决了现有技术在进行通话录音时占用MCU的媒体资源的技术问题,达到了节约媒体资源的技术效果。During the communication process between the first terminal and the second terminal, the call control server responds to the recording request sent by the first terminal, and assigns the first multicast group address and the second multicast group address to the first terminal and the second terminal respectively , so that the first terminal and the second terminal join the first multicast group and the second multicast group respectively; the call control server also sends the first multicast group address and the second multicast group address to the recording server, so that the recording server Join the first multicast group and the second multicast group, so as to record the call between the first terminal and the second terminal. The call control server adds the recording server as a multicast member to the multicast group of the first terminal and the second terminal through the allocation of the multicast group address, so that the recording server can control the call between the first terminal and the second terminal. Recording avoids creating a conference site on the MCU, thereby solving the technical problem of occupying the media resources of the MCU during call recording in the prior art, and achieving the technical effect of saving media resources.
附图说明Description of drawings
图1为现有技术中通话录音的系统示意图;Fig. 1 is a system schematic diagram of call recording in the prior art;
图2为本发明实施例一提供的录音系统的结构方框图;Fig. 2 is the block diagram of the structure of the recording system provided by Embodiment 1 of the present invention;
图3为本发明实施例一提供的第一种录音方法的流程示意图;FIG. 3 is a schematic flow chart of the first recording method provided by Embodiment 1 of the present invention;
图4为本发明实施例一提供的通过重协商实现录音的流程示意图;FIG. 4 is a schematic flow diagram of realizing recording through renegotiation provided by Embodiment 1 of the present invention;
图5为本发明实施例一提供的第二种录音方法的流程示意图;FIG. 5 is a schematic flowchart of a second recording method provided by Embodiment 1 of the present invention;
图6为本发明实施例一提供的自动录音流程示意图;FIG. 6 is a schematic diagram of an automatic recording process provided by Embodiment 1 of the present invention;
图7为本申请实施例二提供的第一种呼叫控制服务器的结构方框图;FIG. 7 is a structural block diagram of the first call control server provided in Embodiment 2 of the present application;
图8为本申请实施例二提供的第二种呼叫控制服务器的结构方框图;FIG. 8 is a structural block diagram of a second call control server provided in Embodiment 2 of the present application;
图9为本申请实施例三提供的第一种呼叫控制服务器的结构方框图;FIG. 9 is a structural block diagram of the first call control server provided in Embodiment 3 of the present application;
图10为本申请实施例三提供的第二种呼叫控制服务器的结构方框图。FIG. 10 is a structural block diagram of a second call control server provided in Embodiment 3 of the present application.
具体实施方式detailed description
在本申请实施例提供的技术方案中,呼叫控制服务器通过组播组地址的分配,将录音服务器作为组播成员加入到第一终端和第二终端的组播组中,从而实现录音服务器对第一终端与第二终端之间的通话进行录音,避免了在MCU上创建会场,从而解决现有技术在进行通话录音时占用MCU的媒体资源的技术问题。In the technical solution provided by the embodiment of this application, the call control server adds the recording server as a multicast member to the multicast group of the first terminal and the second terminal through the allocation of the multicast group address, so that the recording server The recording of the call between the first terminal and the second terminal avoids creating a conference site on the MCU, thereby solving the technical problem of occupying the media resources of the MCU during call recording in the prior art.
下面结合附图对本申请实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。The main realization principles, specific implementation methods and corresponding beneficial effects that can be achieved of the technical solutions of the embodiments of the present application will be described in detail below in conjunction with the accompanying drawings.
实施例一Embodiment one
请参考图2,本申请实施例提供一种录音系统,该系统包括:第一终端、第二终端、呼叫控制服务器、录音服务器及路由器(Router)。其中,第一终端用于发送媒体至第二终端所在的第二组播组,第二终端用于发送媒体至第一终端所在的第一组播组;呼叫控制服务器用于实现呼叫信令处理和业务控制,负责管理用户的录音权限、录音业务流程协商;录音服务器与呼叫控制服务器可以通过Web Service接口对接,用于加入所述第一组播组和所述第二组播组以接收并录制第一终端和第二终端发送的媒体;路由器用于复制转发第一终端和第二终端发送的媒体。Referring to FIG. 2 , an embodiment of the present application provides a recording system, which includes: a first terminal, a second terminal, a call control server, a recording server, and a router (Router). Wherein, the first terminal is used to send media to the second multicast group where the second terminal is located, and the second terminal is used to send media to the first multicast group where the first terminal is located; the call control server is used to implement call signaling processing and service control, responsible for managing the user's recording authority and recording business process negotiation; the recording server and the call control server can be connected through the Web Service interface, and are used to join the first multicast group and the second multicast group to receive and Record the media sent by the first terminal and the second terminal; the router is used to copy and forward the media sent by the first terminal and the second terminal.
请参考图3,对应该录音系统本申请实施例提供第一种录音方法,应用于呼叫控制服务器。第一种录音方法可以应用于第一终端未开启自动录音业务的场景中。具体的,第一种录音方法包括:Please refer to FIG. 3 , corresponding to the recording system, this embodiment of the present application provides a first recording method, which is applied to a call control server. The first recording method may be applied in a scenario where the automatic recording service is not enabled on the first terminal. Specifically, the first recording method includes:
S301:所述呼叫控制服务器接收与第二终端进行通信的第一终端发送的录音请求;S301: The call control server receives a recording request sent by the first terminal communicating with the second terminal;
S302:所述呼叫控制服务器为所述第一终端分配第一组播组地址,通知所述第一终端加入所述第一组播组地址对应的第一组播组,并向所述第二终端发送所述第一组播组地址,以便于所述第二终端向所述第一组播组地址发送用于与所述第一终端通信的媒体;S302: The call control server assigns a first multicast group address to the first terminal, notifies the first terminal to join the first multicast group corresponding to the first multicast group address, and sends the call control server to the second The terminal sends the first multicast group address, so that the second terminal sends media for communicating with the first terminal to the first multicast group address;
S303:所述呼叫控制服务器为所述第二终端分配第二组播组地址,通知所述第二终端加入所述第二组播组地址对应的第二组播组,并向所述第一终端发送所述第二组播组地址,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;S303: The call control server assigns a second multicast group address to the second terminal, notifies the second terminal to join the second multicast group corresponding to the second multicast group address, and sends the call control server to the first The terminal sends the second multicast group address, so that the first terminal sends media for communicating with the second terminal to the second multicast group address;
S304:所述呼叫控制服务器将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。S304: The call control server sends the first multicast group address and the second multicast group address to the recording server, so that the recording server joins the first multicast group and the second group broadcast group to receive and record the media sent by the first terminal and the second terminal.
在具体实施过程中,第一终端拨打第二终端的通信号码,通过呼叫控制服务器与第二终端建立通信连接,第一终端与第二终端使用单播通信地址进行通信,即,所述第一终端通过所述第二终端的单播地址(如第二终端的IP地址)向所述第二终端发送媒体,所述第二终端通过所述第一终端的单播地址(如第一终端的IP地址)向所述第一终端发送媒体。In the specific implementation process, the first terminal dials the communication number of the second terminal, establishes a communication connection with the second terminal through the call control server, and the first terminal communicates with the second terminal using a unicast communication address, that is, the first The terminal sends media to the second terminal through the unicast address of the second terminal (such as the IP address of the second terminal), and the second terminal sends media to the second terminal through the unicast address of the first terminal (such as the IP address of the first terminal). IP address) to send media to the first terminal.
请参考图4,在第一终端与第二终端进行通信的过程中,步骤P2:用户1手动启动录音(如点击第一终端界面上的“录音”按钮),触发第一终端向呼叫控制服务器发送录音请求。Please refer to Figure 4. During the communication process between the first terminal and the second terminal, step P2: User 1 manually starts the recording (such as clicking the "recording" button on the interface of the first terminal), triggering the first terminal to call the control server Send a recording request.
在第一终端向呼叫控制服务器发送录音请求后,呼叫控制服务器执行S301接收与第二终端进行通信的第一终端发送的录音请求。呼叫控制服务器在接收到录音请求后将第一终端与第二终端之间的通信方式调整为组播通信。After the first terminal sends the recording request to the call control server, the call control server executes S301 to receive the recording request sent by the first terminal communicating with the second terminal. After receiving the recording request, the call control server adjusts the communication mode between the first terminal and the second terminal to multicast communication.
具体的,呼叫控制服务器将第一终端与第二终端之间的通信方式调整为组播通信,需要在接收第一终端发起的录音请求后,执行S302为第一终端分配第一组播组地址,通知第一终端加入第一组播组地址对应的第一组播组,并向所述第二终端发送所述第一组播组地址,以便于所述第二终端向所述第一组播组地址发送用于与所述第一终端通信的媒体。其中,呼叫控制服务器可以在通知第一终端加入第一组播组的同时向第二终端发送第一组播组地址,也可以在通知第一终端加入第一组播组并确认第一终端已经加入第一组播组后向第二终端发送第一组播组地址。Specifically, the call control server adjusts the communication mode between the first terminal and the second terminal to multicast communication, and needs to execute S302 to assign the first multicast group address to the first terminal after receiving the recording request initiated by the first terminal , notify the first terminal to join the first multicast group corresponding to the first multicast group address, and send the first multicast group address to the second terminal, so that the second terminal can send messages to the first group The broadcast group address sends media used for communicating with the first terminal. Wherein, the call control server may send the first multicast group address to the second terminal while notifying the first terminal to join the first multicast group, or may notify the first terminal to join the first multicast group and confirm that the first terminal has After joining the first multicast group, send the first multicast group address to the second terminal.
在呼叫控制服务器通知第一终端加入第一组播组后,第一终端执行P3:接收呼叫控制服务器通知加入第一组播组的通知消息,加入第一组播组地址对应的第一组播组,并向呼叫控制服务器发送确认消息告知其已加入第一组播组。After the call control server notifies the first terminal to join the first multicast group, the first terminal executes P3: receiving the notification message from the call control server to join the first multicast group, and joins the first multicast corresponding to the first multicast group address group, and send a confirmation message to the call control server to inform it that it has joined the first multicast group.
呼叫控制服务器可以在接收到第一终端的确认消息后,或执行S302的同时执行S303为所述第二终端分配第二组播组地址,通知所述第二终端加入所述第二组播组地址对应的第二组播组,并向所述第一终端发送所述第二组播组地址,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体。需要说明的是,第一组播组地址和第二组播组地址均由呼叫控制服务器动态分配,并且第一组播组地址和第二组播组地址在录音结束后将被回收再利用,为此有效的提高组播组地址的利用率。The call control server may execute S303 to allocate a second multicast group address for the second terminal after receiving the confirmation message from the first terminal, or execute S302 at the same time, and notify the second terminal to join the second multicast group address corresponding to the second multicast group, and send the second multicast group address to the first terminal, so that the first terminal sends the second multicast group address to the second multicast group address for communicating with the second The medium through which the terminal communicates. It should be noted that both the first multicast group address and the second multicast group address are dynamically assigned by the call control server, and the first multicast group address and the second multicast group address will be recycled and reused after the recording ends. Therefore, the utilization rate of the multicast group address is effectively improved.
相应的,第二终端执行P4:在接收到呼叫控制服务器通知加入第二组播组的通知消息后,加入第二组播组地址对应的第二组播组,并向呼叫控制服务器发送确认消息告知其已加入第二组播组。进一步的,呼叫控制服务器在确认第一终端已加入第一组播组、第二终端已加入第二组播组后,执行S304即P5:将第一组播组地址和第二组播组地址发送给录音服务器,以使录音服务器加入第一组播组和第二组播组以接收并录制第一终端和第二终端发送的媒体。Correspondingly, the second terminal executes P4: After receiving the notification message from the call control server to join the second multicast group, join the second multicast group corresponding to the second multicast group address, and send a confirmation message to the call control server Inform it that it has joined the second multicast group. Further, after confirming that the first terminal has joined the first multicast group and the second terminal has joined the second multicast group, the call control server executes S304, that is, P5: set the address of the first multicast group and the address of the second multicast group to Send to the recording server, so that the recording server joins the first multicast group and the second multicast group to receive and record the media sent by the first terminal and the second terminal.
具体的,录音服务器加入第一组播组和第二组播组后,第二终端执行P6:通过第一组播组地址向第一组播组发送媒体。由于第一组播组中包含组员第一终端和录音服务器,为此路由器收到向第一组播组发送的媒体时将媒体复制转发至第一终端和录音服务器。相应的,第一终端执行P7:通过第二组播组地址向第二组播组发送媒体。也因为第二组播组中包含组员第二终端和录音服务器,路由器收到向第二组播组发送的媒体时将媒体复制转发至第二终端和录音服务器。所以通过将录音服务器加入第一组播组和第二组播组,便可以使录音服务器接收并录制第一终端发送给第二终端的媒体及第二终端发送给第一终端的媒体。可见,通过组播录音不需要在MCU上创建会场节约了媒体资源,并且,通过组播录音也不需要对第一终端发送的媒体和第二终端发送的媒体进行混音,减少了会场混音造成的延时,提升了录音场景下的语音质量。Specifically, after the recording server joins the first multicast group and the second multicast group, the second terminal executes P6: sending media to the first multicast group through the address of the first multicast group. Since the first multicast group includes the first terminal and the recording server of the members, the router copies and forwards the media to the first terminal and the recording server when receiving the media sent to the first multicast group. Correspondingly, the first terminal executes P7: sending media to the second multicast group through the second multicast group address. Also because the second multicast group includes the second terminal and the recording server of the group members, when the router receives the media sent to the second multicast group, it copies and forwards the media to the second terminal and the recording server. Therefore, by adding the recording server to the first multicast group and the second multicast group, the recording server can receive and record the media sent from the first terminal to the second terminal and the media sent from the second terminal to the first terminal. It can be seen that the multicast recording does not need to create a site on the MCU, which saves media resources, and the multicast recording does not need to mix the media sent by the first terminal and the media sent by the second terminal, which reduces the mixing of the site. The delay caused improves the voice quality in the recording scene.
下面通过一完整的实例对上述录音方法进行详细说明,假设第一终端UE1未开启自动录音业务;UE1和第二终端UE2均为注册在呼叫控制服务器下的用户;呼叫控制服务器与录音服务器通过Web Service接口对接。UE1与UE2的录音过程如下:The above-mentioned recording method will be described in detail through a complete example below, assuming that the first terminal UE1 has not started the automatic recording service; both UE1 and the second terminal UE2 are users registered under the call control server; Service interface docking. The recording process of UE1 and UE2 is as follows:
首先,UE1拨打UE2的号码,建立通话。然后,UE1在通话中发起录音请求。呼叫控制服务器在收到UE1发送的录音请求后,为UE1分配组播组地址maddr_1,为UE2分配组播组地址maddr_2,然后,向UE1发送SIP(Session Initiation Protocol,会话初始化协议)Reinvite重邀请消息,并在重邀请消息的SDP(Session Description Protocol,会话描述协议)消息体中携带maddr_2作为UE2的通信地址,在SIP Reinvite消息的头域(如callinfo字段)携带maddr_1以通知UE1加入maddr_1对应的组播组;向UE2发送SIP Reinvite消息,在SIP Reinvite消息的SDP消息体中携带maddr_1作为UE1的通信地址,在SIP Reinvite消息的头域(如callinfo字段)携带maddr_2以通知UE2加入maddr_2对应的组播组。相应的,UE1在接收到该Reinvite消息后,则会加入maddr_1对应的组播组、将maddr_2作为通信对端的通信地址向maddr_2发送媒体,并向呼叫控制服务器发送确认消息告知其已加入maddr_1对应的组播组;UE2在接收到Reinvite消息后,则会加入maddr_2对应的组播组、将maddr_1作为通信对端的通信地址向maddr_1发送媒体,并向呼叫控制服务器发送确认消息告知其已加入maddr_2对应的组播组。接下来,呼叫控制服务器接收UE1和UE2发送的确认消息,并通过Web Service接口通知录音服务器加入第一组播组和第二组播。录音服务器在加入第一组播组和第二组播组后接收并录制UE1发送给第一组播组地址的媒体和UE2发送给第二组播组地址的媒体。First, UE1 dials the number of UE2 to establish a call. Then, UE1 initiates a recording request during the call. After receiving the recording request sent by UE1, the call control server assigns the multicast group address maddr_1 to UE1, assigns the multicast group address maddr_2 to UE2, and then sends a SIP (Session Initiation Protocol) Reinvite message to UE1 , and carry maddr_2 in the SDP (Session Description Protocol) message body of the re-invite message as the communication address of UE2, and carry maddr_1 in the header field (such as the callinfo field) of the SIP Reinvite message to notify UE1 to join the group corresponding to maddr_1 broadcast group; send a SIP Reinvite message to UE2, carry maddr_1 in the SDP message body of the SIP Reinvite message as the communication address of UE1, and carry maddr_2 in the header field (such as the callinfo field) of the SIP Reinvite message to notify UE2 to join the multicast corresponding to maddr_2 Group. Correspondingly, after receiving the Reinvite message, UE1 will join the multicast group corresponding to maddr_1, use maddr_2 as the communication address of the communication peer to send media to maddr_2, and send a confirmation message to the call control server to inform that it has joined the multicast group corresponding to maddr_1. Multicast group; UE2 will join the multicast group corresponding to maddr_2 after receiving the Reinvite message, send media to maddr_1 using maddr_1 as the communication address of the communication peer, and send a confirmation message to the call control server to inform that it has joined the group corresponding to maddr_2 multicast group. Next, the call control server receives the confirmation messages sent by UE1 and UE2, and notifies the recording server to join the first multicast group and the second multicast group through the Web Service interface. After joining the first multicast group and the second multicast group, the recording server receives and records the media sent by UE1 to the address of the first multicast group and the media sent by UE2 to the address of the second multicast group.
在具体实施过程中,若用户想要停止录音,可以通过第一终端或第二终端向呼叫控制服务器发送用于停止录音的请求。呼叫控制服务器在接收到第一终端或第二终端发送的用于停止录音的请求时,向第二终端发送第一终端的单播地址,以便于第二终端向第一终端的单播地址发送用于与第一终端通信的媒体,向第一终端发送第二终端的单播地址,以便于第一终端向第二终端的单播地址发送用于与第二终端通信的媒体。During specific implementation, if the user wants to stop recording, he may send a request for stopping recording to the call control server through the first terminal or the second terminal. When the call control server receives the request for stopping the recording sent by the first terminal or the second terminal, it sends the unicast address of the first terminal to the second terminal, so that the second terminal sends a message to the unicast address of the first terminal. The media used for communicating with the first terminal sends the unicast address of the second terminal to the first terminal, so that the first terminal sends the media used for communicating with the second terminal to the unicast address of the second terminal.
例如,图4中P8用户1执行停止录音的操作,通过第一终端向呼叫控制服务器发送用于停止录音的请求。相应的,呼叫控制服务器在接收到用于停止录音的请求时,向第一终端发送重邀请消息以获取在停止录音后用于与第二终端继续通信的第一终端的单播地址。第一终端执行P9接收呼叫控制服务器发送的重邀请消息,向呼叫控制服务器发送用于与第二终端继续通信的单播地址1;如:第一终端自身的IP地址。接下来,呼叫控制服务器接收第一终端的单播地址1,执行P10向第二终端发送重邀请消息以获取在停止录音后用于与第一终端继续通信的第二终端的单播地址并告知第二终端通信对端的单播地址1,以使第二终端在收到重邀请消息后,向呼叫控制服务器反馈自身的单播地址2;如:第二终端自身的IP地址。随后,呼叫控制服务器接收单播地址2,并将该单播地址2发送给第一终端。此后,第一终端和第二终端分别执行P11和P12退出第一组播组和第二组播组,通过单播地址1和单播地址2继续进行点对点的单播通信。For example, in FIG. 4, P8 user 1 performs an operation of stopping recording, and sends a request for stopping recording to the call control server through the first terminal. Correspondingly, when receiving the request for stopping the recording, the call control server sends a re-invitation message to the first terminal to acquire the unicast address of the first terminal for continuing to communicate with the second terminal after the recording is stopped. The first terminal executes P9 to receive the re-invitation message sent by the call control server, and sends the unicast address 1 for continuing communication with the second terminal to the call control server; for example, the IP address of the first terminal itself. Next, the call control server receives the unicast address 1 of the first terminal, and executes P10 to send a re-invitation message to the second terminal to obtain the unicast address of the second terminal for continuing to communicate with the first terminal after the recording is stopped and informs The unicast address 1 of the communication peer of the second terminal, so that the second terminal feeds back its own unicast address 2 to the call control server after receiving the re-invitation message; for example, the second terminal's own IP address. Subsequently, the call control server receives the unicast address 2 and sends the unicast address 2 to the first terminal. Thereafter, the first terminal and the second terminal respectively execute P11 and P12 to exit the first multicast group and the second multicast group, and continue point-to-point unicast communication through unicast address 1 and unicast address 2.
相应的,呼叫控制服务器在将第二终端的单播地址2发送给第一终端后,第一终端便可以通过单播地址2与第二终端进行通信,第二终端也可以通过单播地址1与第一终端进行通信,那么呼叫控制服务器可以直接回收第一组播组地址和第二组播组地址。当然,呼叫控制服务器还可以在接收到第一终端或第二终端发送的用于停止录音的请求时,通知第一终端退出第一组播组,通知第二终端退出第二组播组,通知录音服务器停止录音并退出第一组播组和第二组播组,并在确定第一终端和录音服务器均已退出第一组播组时回收第一组播地址,在确定第二终端和录音服务器均已退出第二组播组时回收第二组播地址。可见,呼叫控制服务器通过动态分配组播组地址及回收组播组地址,以使空闲的组播组地址能够用于其它业务,由此提高组播地址的利用率。Correspondingly, after the call control server sends the unicast address 2 of the second terminal to the first terminal, the first terminal can communicate with the second terminal through the unicast address 2, and the second terminal can also communicate with the second terminal through the unicast address 1. To communicate with the first terminal, the call control server can directly recover the first multicast group address and the second multicast group address. Certainly, the call control server may also notify the first terminal to withdraw from the first multicast group, notify the second terminal to withdraw from the second multicast group, and notify The recording server stops recording and exits the first multicast group and the second multicast group, and recycles the first multicast address when it is determined that both the first terminal and the recording server have exited the first multicast group, and when the second terminal and the recording server are determined The second multicast address is reclaimed when all the servers have exited the second multicast group. It can be seen that the call control server dynamically allocates multicast group addresses and reclaims multicast group addresses so that idle multicast group addresses can be used for other services, thereby improving the utilization rate of multicast addresses.
请参考图5,当第一终端具有自动录音权限时,对应本申请实施例提供的录音系统本申请实施例还提供第二种录音方法,应用于呼叫控制服务器。第二种录音方法可以应用于第一终端开启了自动录音业务的场景中。具体的,第二种录音方法包括:Please refer to FIG. 5 , when the first terminal has automatic recording authority, corresponding to the recording system provided in the embodiment of the present application, the embodiment of the present application also provides a second recording method, which is applied to the call control server. The second recording method may be applied in a scenario where the first terminal has enabled the automatic recording service. Specifically, the second recording method includes:
S501:所述呼叫控制服务器接收所述第一终端发送的请求与第二终端进行通信的呼叫请求,所述呼叫请求中包含所述第一终端所在的第一组播组的第一组播组地址;S501: The call control server receives a call request sent by the first terminal requesting to communicate with the second terminal, and the call request includes the first multicast group of the first multicast group where the first terminal is located address;
S502:所述呼叫控制服务器在确定所述第一终端已开启自动录音业务时,为所述第二终端分配第二组播组地址,将所述第二组播组地址加入所述呼叫请求并向所述第二终端发送修改后的呼叫请求,以使得所述第二终端加入所述第二组播组地址对应的第二组播组并向所述第一组播组地址发送用于与所述第一终端通信的媒体;S502: When determining that the first terminal has enabled the automatic recording service, the call control server allocates a second multicast group address to the second terminal, adds the second multicast group address to the call request, and sending a modified call request to the second terminal, so that the second terminal joins the second multicast group corresponding to the second multicast group address and sends a call request to the first multicast group address for communicating with the first multicast group address the medium of communication of the first terminal;
S503:所述呼叫控制服务器将接收的所述第二终端发送的包括所述第二组播组地址的呼叫响应转发给所述第一终端,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;S503: The call control server forwards the received call response including the second multicast group address sent by the second terminal to the first terminal, so that the first terminal sends a call response to the second group sending the media used for communicating with the second terminal through the broadcast group address;
S504:所述呼叫控制服务器将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。S504: The call control server sends the first multicast group address and the second multicast group address to the recording server, so that the recording server joins the first multicast group and the second group broadcast group to receive and record the media sent by the first terminal and the second terminal.
请参考图6,由于第一终端开启了自动录音业务,所以呼叫控制服务器在接收第一终端发送的开启自动录音业务的消息时,标记第一终端已开启自动录音业务如:“record=on”,并为第一终端分配第一组播组地址maddr_1,并通知第一终端加入第一组播组。例如:呼叫控制服务器可以通过执行P2:通过向第一终端发送信令消息(如携带maddr_1的SIPinfo消息)通知第一终端加入第一组播组。第一终端在加入第一组播组后,同样将发送确认消息告知呼叫控制服务器其已加入第一组播组。那么,第一终端在需要与第二终端建立通信连接时,执行P3向呼叫控制服务器发送呼叫请求,请求与第二终端建立通信连接,其中该呼叫请求中包含第一终端所在第一组播组对应的第一组播组地址maddr_1。Please refer to Figure 6. Since the first terminal has enabled the automatic recording service, the call control server will mark that the first terminal has enabled the automatic recording service when receiving the message of enabling the automatic recording service sent by the first terminal, such as: "record=on" , and allocate the first multicast group address maddr_1 to the first terminal, and notify the first terminal to join the first multicast group. For example, the call control server may execute P2: notify the first terminal to join the first multicast group by sending a signaling message (such as a SIPinfo message carrying maddr_1) to the first terminal. After the first terminal joins the first multicast group, it also sends a confirmation message to inform the call control server that it has joined the first multicast group. Then, when the first terminal needs to establish a communication connection with the second terminal, it executes P3 to send a call request to the call control server, requesting to establish a communication connection with the second terminal, wherein the call request includes the first multicast group where the first terminal belongs The corresponding first multicast group address maddr_1.
为此,呼叫控制服务器执行S501接收第一终端发送的请求与第二终端进行通信的呼叫请求。在确定所述第一终端已开启自动录音业务时,接着执行S502即P4:为所述第二终端分配第二组播组地址,将所述第二组播组地址加入所述呼叫请求并向所述第二终端发送修改后的呼叫请求,以使得所述第二终端加入所述第二组播组地址对应的第二组播组并向所述第一组播组地址发送用于与所述第一终端通信的媒体。To this end, the call control server executes S501 to receive a call request sent by the first terminal to communicate with the second terminal. When it is determined that the first terminal has started the automatic recording service, then perform S502 or P4: assign a second multicast group address to the second terminal, add the second multicast group address to the call request and send The second terminal sends the modified call request, so that the second terminal joins the second multicast group corresponding to the second multicast group address and sends a call request to the first multicast group address for communicating with the second multicast group address. The medium for communicating with the first terminal.
在S502之后,第二终端接收呼叫控制服务器发送的修改后的呼叫请求,从呼叫请求中获取第二组播组地址,并加入第二组播组。然后,第二终端向呼叫控制服务器发送响应呼叫请求的呼叫响应,该呼叫响应包括第二组播组地址用于通过呼叫控制服务器通知第一终端通信对端对应的第二组播组地址。紧接着,呼叫控制服务器执行S503将接收的第二终端发送的包括所述第二组播组地址的呼叫响应转发给所述第一终端,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体。相应的,第一终端执行P6接收呼叫响应获得作为通信对端的第二组播组地址,并通过呼叫控制服务器与第二终端确认通信。After S502, the second terminal receives the modified call request sent by the call control server, obtains the address of the second multicast group from the call request, and joins the second multicast group. Then, the second terminal sends a call response in response to the call request to the call control server, where the call response includes the second multicast group address and is used to notify the first terminal of the corresponding second multicast group address to the communication peer through the call control server. Next, the call control server executes S503, and forwards the received call response including the second multicast group address sent by the second terminal to the first terminal, so that the first terminal can broadcast to the second multicast The group address sends media used to communicate with said second terminal. Correspondingly, the first terminal executes P6 to receive the call response to obtain the second multicast group address as the communication peer, and confirms the communication with the second terminal through the call control server.
进一步的,呼叫控制服务器接着执行S504将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。具体的,呼叫控制服务器可以在接收到第一终端发送的确认与第二终端通信的响应消息之后,将第一组播组地址和第二组播组地址发送给录音服务器,也可以在接收到第二终端发送的呼叫响应,向第一终端转发呼叫响应的同时将第一组播组地址和第二组播组地址发送给录音服务器,加速录音进程。Further, the call control server then performs S504 to send the first multicast group address and the second multicast group address to the recording server, so that the recording server joins the first multicast group and the second multicast group The second multicast group is used to receive and record the media sent by the first terminal and the second terminal. Specifically, the call control server may send the first multicast group address and the second multicast group address to the recording server after receiving the response message sent by the first terminal to confirm communication with the second terminal, or may send the first multicast group address to the recording server after receiving The call response sent by the second terminal forwards the call response to the first terminal and at the same time sends the first multicast group address and the second multicast group address to the recording server, thereby speeding up the recording process.
由于第一终端与第二终端的通信为组播通信,第一终端发送媒体流时执行P9:通过路由器将媒体复制转发给第二组播组的组员:第二终端和录音服务器。同样的,第二终端发送媒体时执行P10:通过路由器将媒体复制转发给第一组播组的组员:第一终端和录音服务器。因此录音服务器能够接收并录制第一终端和第二终端发送的媒体,从而对第一终端和第二终端的通话进行录音。可见,通过组播录音不需要在MCU上创建会场节约了媒体资源,不需要对媒体流进行混音,减少了会场混音造成的延时,提升了录音场景下的语音质量。Since the communication between the first terminal and the second terminal is multicast communication, when the first terminal sends the media stream, execute P9: copy and forward the media to the members of the second multicast group through the router: the second terminal and the recording server. Similarly, when the second terminal sends media, execute P10: copy and forward the media to the members of the first multicast group through the router: the first terminal and the recording server. Therefore, the recording server can receive and record the media sent by the first terminal and the second terminal, so as to record the conversation between the first terminal and the second terminal. It can be seen that the multicast recording does not need to create a site on the MCU, which saves media resources, does not need to mix media streams, reduces the delay caused by site mixing, and improves the voice quality in the recording scene.
例如,假设UE1开启了自动录音业务;UE1和UE2均为注册在呼叫控制服务器下的用户;呼叫控制服务器与录音服务器通过Web Service接口对接。UE1与UE2的录音过程如下:For example, assume that UE1 has enabled the automatic recording service; both UE1 and UE2 are users registered under the call control server; the call control server and the recording server are interconnected through the Web Service interface. The recording process of UE1 and UE2 is as follows:
首先,第一终端UE1拨打第二终端UE2的号码向呼叫控制服务器发送呼叫请求(SIPinvite消息),在SIP invite消息中的SDP消息体中携带自身所在第一组播组对应的第一组播组地址(maddr_1)。然后,呼叫控制服务器在收到UE1发送的呼叫请求后,为第二终端分配第二组播组地址(maddr_2),并将maddr_2添加到SIP invite消息中获得修改后的呼叫请求并发送给UE2。于是,UE2根据接收到的SIP invite消息获取呼叫方UE1的通信地址(maddr_1);UE2根据接收到的修改后的呼叫请求中要求第二终端加入的第二组播组对应的第二组播组地址maddr_2,第二终端加入第二组播组,并通知呼叫控制服务器其已加入第二组播组(maddr_2),并通过呼叫控制服务器向UE1返回呼叫响应(如临时响应消息、200OK响应消息等),并在呼叫响应的SDP消息体中携带maddr_2作为自身的通信地址。第一终端通过呼叫控制服务器向第二终端确认收到第二终端的通信地址确认建立通信连接,于是UE1发送媒体到第二组播组,UE2发送媒体到第一组播组,实现UE1与UE2的通信。接下来,呼叫控制服务器可以通过Web Service接口通知录音服务器加入第一组播组(maddr_1)和第二组播组(maddr_2)。录音服务器在加入第一组播组和第二组播组便可以对第一组播组和第二组播组收到的媒体进行录制。First, the first terminal UE1 dials the number of the second terminal UE2 to send a call request (SIPinvite message) to the call control server, and the SDP message body in the SIP invite message carries the first multicast group corresponding to the first multicast group it belongs to Address (maddr_1). Then, after receiving the call request sent by UE1, the call control server assigns the second multicast group address (maddr_2) to the second terminal, adds maddr_2 to the SIP invite message to obtain a modified call request, and sends it to UE2. Therefore, UE2 obtains the communication address (maddr_1) of the calling party UE1 according to the received SIP invite message; address maddr_2, the second terminal joins the second multicast group, and notifies the call control server that it has joined the second multicast group (maddr_2), and returns a call response (such as a temporary response message, 200OK response message, etc.) to UE1 through the call control server ), and carries maddr_2 as its own communication address in the SDP message body of the call response. The first terminal confirms to the second terminal through the call control server that it has received the communication address of the second terminal to confirm the establishment of a communication connection, so UE1 sends media to the second multicast group, and UE2 sends media to the first multicast group, realizing UE1 and UE2 Communication. Next, the call control server may notify the recording server to join the first multicast group (maddr_1) and the second multicast group (maddr_2) through the Web Service interface. After the recording server joins the first multicast group and the second multicast group, it can record the media received by the first multicast group and the second multicast group.
在具体实施过程中,呼叫控制服务器将第一组播组地址和第二组播组地址发送给录音服务器之后,若呼叫控制服务器检测到第一终端挂机,则向第二终端发送用于提示第二终端退出组播组的提示消息;然后,呼叫控制服务器接收提示消息对应的反馈消息,回收所述第二组播组地址,其中,反馈消息用于表明第二终端已退出第二组播组。当然,呼叫控制服务器也可以检测到第一终端挂机之后,直接执行P12回收第二组播组地址。可见,在第一终端开启自动录音业务时,呼叫控制服务器预先给第一终端分配第一组播地址,并在通话结束后使第一终端保留第一组播地址,减少第一终端在进行通话录音时信令协商步骤。In the specific implementation process, after the call control server sends the first multicast group address and the second multicast group address to the recording server, if the call control server detects that the first terminal hangs up, it will send a message to the second terminal to prompt the second The prompt message for the second terminal to withdraw from the multicast group; then, the call control server receives the feedback message corresponding to the prompt message, and reclaims the address of the second multicast group, wherein the feedback message is used to indicate that the second terminal has withdrawn from the second multicast group . Of course, the call control server may also directly execute P12 to recover the second multicast group address after detecting that the first terminal hangs up. It can be seen that when the first terminal starts the automatic recording service, the call control server pre-allocates the first multicast address to the first terminal, and makes the first terminal retain the first multicast address after the call is over, reducing the number of calls made by the first terminal. Signaling negotiation steps during recording.
当然,在第一终端关闭自动录音业务时,呼叫控制服务器则相应的回收第一组播组地址。具体的,在检测到第一终端挂机之后,用户可以通过第一终端关闭自动录音业务,为此在检测到第一终端挂机之后,呼叫控制服务器还接收第一终端发送的用于关闭自动录音业务的请求消息,回收第一组播组地址。Of course, when the automatic recording service is disabled by the first terminal, the call control server correspondingly recovers the first multicast group address. Specifically, after detecting that the first terminal is on-hook, the user can turn off the automatic recording service through the first terminal. For this reason, after detecting that the first terminal is on-hook, the call control server also receives a message for turning off the automatic recording service sent by the first terminal. request message to recycle the first multicast group address.
实施例二Embodiment two
请参考图7,本申请实施例提供第一种呼叫控制服务器,所述呼叫控制服务器包括:Please refer to FIG. 7, the embodiment of the present application provides a first call control server, and the call control server includes:
接收模块701,用于接收与第二终端进行通信的第一终端发送的录音请求;The receiving module 701 is configured to receive a recording request sent by the first terminal communicating with the second terminal;
组播地址管理模块702,用于为所述第一终端分配第一组播组地址,通知所述第一终端加入所述第一组播组地址对应的第一组播组,并向所述第二终端发送所述第一组播组地址,以便于所述第二终端向所述第一组播组地址发送用于与所述第一终端通信的媒体;为所述第二终端分配第二组播组地址,通知所述第二终端加入所述第二组播组地址对应的第二组播组,并向所述第一终端发送所述第二组播组地址,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;The multicast address management module 702 is configured to assign a first multicast group address to the first terminal, notify the first terminal to join the first multicast group corresponding to the first multicast group address, and send the The second terminal sends the first multicast group address, so that the second terminal sends media for communicating with the first terminal to the first multicast group address; assigning the second terminal to the second terminal Two multicast group addresses, notifying the second terminal to join the second multicast group corresponding to the second multicast group address, and sending the second multicast group address to the first terminal, so that the sending, by the first terminal, media for communicating with the second terminal to the second multicast group address;
发送模块703,用于将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。A sending module 703, configured to send the first multicast group address and the second multicast group address to the recording server, so that the recording server joins the first multicast group and the second multicast group group to receive and record the media sent by the first terminal and the second terminal.
在具体实施过程中,所述发送模块703还用于:在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,所述接收模块701接收到所述第一终端或所述第二终端发送的用于停止录音的请求时,向所述第二终端发送所述第一终端的单播地址,以便于所述第二终端向所述第一终端的单播地址发送用于与所述第一终端通信的媒体,向所述第一终端发送所述第二终端的单播地址,以便于所述第一终端向所述第二终端的单播地址发送用于与所述第二终端通信的媒体。In a specific implementation process, the sending module 703 is further configured to: after sending the first multicast group address and the second multicast group address to the recording server, the receiving module 701 receives the first When a terminal or the second terminal sends a request for stopping recording, send the unicast address of the first terminal to the second terminal, so that the second terminal can send a unicast address to the first terminal. The broadcast address sends the media used for communicating with the first terminal, and sends the unicast address of the second terminal to the first terminal, so that the first terminal sends the unicast address to the second terminal. a medium for communicating with the second terminal.
在具体实施过程中,所述发送模块703还用于:在所述接收模块701接收到所述用于停止录音的请求时,通知所述第一终端退出所述第一组播组,通知所述第二终端退出所述第二组播组,通知所述录音服务器停止录音并退出所述第一组播组和所述第二组播组;In a specific implementation process, the sending module 703 is further configured to: when the receiving module 701 receives the request for stopping recording, notify the first terminal to quit the first multicast group, notify all The second terminal exits the second multicast group, notifies the recording server to stop recording and exits the first multicast group and the second multicast group;
所述组播地址管理模块702还用于:在确定所述第一终端和所述录音服务器均已退出第一组播组时回收所述第一组播地址,在确定所述第二终端和所述录音服务器均已退出第二组播组时回收所述第二组播地址。The multicast address management module 702 is further configured to: recover the first multicast address when it is determined that both the first terminal and the recording server have exited the first multicast group; Reclaiming the second multicast address when all the recording servers have exited the second multicast group.
需要说明的是,本申请实施例提供的第一种呼叫控制服务器为:与实施例一中图3、图4提供的录音方法对应的虚拟装置,其具体实施过程与实施例一中图3、图4提供的录音方法相同。It should be noted that the first call control server provided in the embodiment of the present application is a virtual device corresponding to the recording method provided in Figure 3 and Figure 4 in Embodiment 1, and its specific implementation process is the same as that in Figure 3 and Figure 4 in Embodiment 1. Figure 4 provides the same recording method.
请参考图8,本申请实施例还提供第二种呼叫控制服务器,所述呼叫控制服务器包括:Please refer to FIG. 8, the embodiment of the present application also provides a second call control server, and the call control server includes:
接收模块801,用于接收所述第一终端发送的请求与第二终端进行通信的呼叫请求,所述呼叫请求中包含所述第一终端所在的第一组播组的第一组播组地址;A receiving module 801, configured to receive a call request sent by the first terminal requesting to communicate with a second terminal, where the call request includes a first multicast group address of the first multicast group where the first terminal is located ;
组播地址管理模块802,用于在确定所述第一终端已开启自动录音业务时,为所述第二终端分配第二组播组地址,将所述第二组播组地址加入所述呼叫请求并向所述第二终端发送修改后的呼叫请求,以使得所述第二终端加入所述第二组播组地址对应的第二组播组并向所述第一组播组地址发送用于与所述第一终端通信的媒体;The multicast address management module 802 is configured to assign a second multicast group address to the second terminal when determining that the first terminal has enabled the automatic recording service, and add the second multicast group address to the call requesting and sending a modified call request to the second terminal, so that the second terminal joins the second multicast group corresponding to the second multicast group address and sends a call request to the first multicast group address a medium for communicating with the first terminal;
发送模块803,用于将所述接收模块801接收的所述第二终端发送的包括所述第二组播组地址的呼叫响应转发给所述第一终端,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。A sending module 803, configured to forward, to the first terminal, the call response received by the receiving module 801 and sent by the second terminal and including the second multicast group address, so that the first terminal sends a message to the first terminal. The second multicast group address is used to send the media used to communicate with the second terminal; the first multicast group address and the second multicast group address are sent to the recording server, so that the recording server joins The first multicast group and the second multicast group receive and record the media sent by the first terminal and the second terminal.
在具体实施过程中,所述组播地址管理模块802还用于:在所述接收模块801接收所述第一终端发送的请求与第二终端进行通信的呼叫请求之前,所述第一终端开启自动录音业务时,为所述第一终端分配第一组播组地址并通知所述第一终端加入所述第一组播组。In a specific implementation process, the multicast address management module 802 is further configured to: before the receiving module 801 receives the call request sent by the first terminal to communicate with the second terminal, the first terminal turns on the During the automatic recording service, assign the first multicast group address to the first terminal and notify the first terminal to join the first multicast group.
在具体实施过程中,所述发送模块803还用于:在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,检测到所述第一终端挂机时,向所述第二终端发送用于提示所述第二终端退出组播组的提示消息;In a specific implementation process, the sending module 803 is further configured to: after sending the first multicast group address and the second multicast group address to the recording server, when it is detected that the first terminal hangs up, sending a prompt message for prompting the second terminal to withdraw from the multicast group to the second terminal;
所述发送模块803接收所述提示消息对应的反馈消息,触发所述组播地址管理模块802回收所述第二组播组地址,其中,所述反馈消息用于表明所述第二终端已退出所述第二组播组。The sending module 803 receives a feedback message corresponding to the prompt message, and triggers the multicast address management module 802 to recycle the second multicast group address, wherein the feedback message is used to indicate that the second terminal has exited The second multicast group.
进一步的,所述组播地址管理模块802还用于:在检测到所述第一终端挂机之后,所述第一终端关闭所述自动录音业务时,回收所述第一组播组地址。Further, the multicast address management module 802 is further configured to: recover the first multicast group address when the first terminal closes the automatic recording service after detecting that the first terminal hangs up.
需要说明的是,本申请实施例提供的第二种呼叫控制服务器为:与实施例一中图5、图6提供的录音方法对应的虚拟装置,其具体实施过程与实施例一中图5、图6提供的录音方法相同。并且图7与图8提供的第一种呼叫控制服务器和第二种呼叫控制服务器可以为同一个服务器。It should be noted that the second call control server provided in the embodiment of the present application is a virtual device corresponding to the recording method provided in Figure 5 and Figure 6 in the first embodiment, and its specific implementation process is the same as that in Figure 5 and Figure 6 in the first embodiment. Figure 6 provides the same recording method. And the first type of call control server and the second type of call control server provided in FIG. 7 and FIG. 8 may be the same server.
实施例三Embodiment three
请参考图9,本申请实施例针对第一种录音方法还提供第一种呼叫控制服务器。第一种呼叫控制服务器包括:发送器901、接收器902、处理器(CPU)903、存储器904等,其中发送器901用于向第一终端、第二终端、录音服务器等发送消息,接收器902用于接收第一终端、第二终端、录音服务器等发送来的消息,存储器904用于存储需要发送或接收的消息,处理器903用于处理相应的待处理消息。Referring to FIG. 9 , the embodiment of the present application further provides a first call control server for the first recording method. The first type of call control server includes: a transmitter 901, a receiver 902, a processor (CPU) 903, a memory 904, etc., wherein the transmitter 901 is used to send messages to the first terminal, the second terminal, a recording server, etc., and the receiver 902 is used to receive messages sent by the first terminal, the second terminal, the recording server, etc., the memory 904 is used to store messages to be sent or received, and the processor 903 is used to process corresponding messages to be processed.
具体的,接收器902用于接收与第二终端进行通信的第一终端发送的录音请求;处理器903用于为所述第一终端分配第一组播组地址,通知所述第一终端加入所述第一组播组地址对应的第一组播组,并向所述第二终端发送所述第一组播组地址,以便于所述第二终端向所述第一组播组地址发送用于与所述第一终端通信的媒体;为所述第二终端分配第二组播组地址,通知所述第二终端加入所述第二组播组地址对应的第二组播组,并向所述第一终端发送所述第二组播组地址,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;发送器901用于将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。Specifically, the receiver 902 is used to receive the recording request sent by the first terminal communicating with the second terminal; the processor 903 is used to assign the first multicast group address to the first terminal, and notify the first terminal to join the first multicast group corresponding to the first multicast group address, and send the first multicast group address to the second terminal, so that the second terminal can send the first multicast group address to the first multicast group address Media used for communicating with the first terminal; assigning a second multicast group address to the second terminal, notifying the second terminal to join a second multicast group corresponding to the second multicast group address, and sending the second multicast group address to the first terminal, so that the first terminal sends media for communicating with the second terminal to the second multicast group address; the transmitter 901 is used to sending the first multicast group address and the second multicast group address to the recording server, so that the recording server joins the first multicast group and the second multicast group to receive and record the media sent by the first terminal and the second terminal.
在具体实施过程中,所述发送器901还用于:在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,所述接收器902接收到所述第一终端或所述第二终端发送的用于停止录音的请求时,向所述第二终端发送所述第一终端的单播地址,以便于所述第二终端向所述第一终端的单播地址发送用于与所述第一终端通信的媒体,向所述第一终端发送所述第二终端的单播地址,以便于所述第一终端向所述第二终端的单播地址发送用于与所述第二终端通信的媒体。In a specific implementation process, the sender 901 is further configured to: after sending the first multicast group address and the second multicast group address to the recording server, the receiver 902 receives the first When a terminal or the second terminal sends a request for stopping recording, send the unicast address of the first terminal to the second terminal, so that the second terminal can send a unicast address to the first terminal. The broadcast address sends the media used for communicating with the first terminal, and sends the unicast address of the second terminal to the first terminal, so that the first terminal sends the unicast address to the second terminal. a medium for communicating with the second terminal.
在具体实施过程中,所述发送器901还用于:在所述接收器902接收到所述用于停止录音的请求时,通知所述第一终端退出所述第一组播组,通知所述第二终端退出所述第二组播组,通知所述录音服务器停止录音并退出所述第一组播组和所述第二组播组;In a specific implementation process, the transmitter 901 is further configured to: when the receiver 902 receives the request for stopping recording, notify the first terminal to quit the first multicast group, and notify all The second terminal exits the second multicast group, notifies the recording server to stop recording and exits the first multicast group and the second multicast group;
所述处理器903还用于:在确定所述第一终端和所述录音服务器均已退出第一组播组时回收所述第一组播地址,在确定所述第二终端和所述录音服务器均已退出第二组播组时回收所述第二组播地址。The processor 903 is further configured to: recover the first multicast address when it is determined that both the first terminal and the recording server have exited the first multicast group; Reclaim the second multicast address when all the servers have exited the second multicast group.
需要说明的是,本申请实施例提供的第一种呼叫控制服务器为:与实施例一中图3、图4提供的录音方法对应的实体装置,其具体实施过程与实施例一中图3、图4提供的录音方法相同。It should be noted that the first type of call control server provided in the embodiment of the present application is: a physical device corresponding to the recording method provided in Figure 3 and Figure 4 in Embodiment 1, and its specific implementation process is the same as that in Figure 3 and Figure 4 in Embodiment 1. Figure 4 provides the same recording method.
请参考图10,本申请实施例针对第二种录音方法还提供第二种呼叫控制服务器。第二种呼叫控制服务器包括发送器1001、接收器1002、处理器(CPU)1003、存储器1004等,其中发送器1001用于向第一终端、第二终端、录音服务器等发送消息,接收器1002用于接收第一终端、第二终端、录音服务器等发送来的消息,存储器1004用于存储需要发送或接收的消息,处理器1003用于处理相应的待处理消息。Referring to FIG. 10 , the embodiment of the present application further provides a second call control server for the second recording method. The second type of call control server includes a sender 1001, a receiver 1002, a processor (CPU) 1003, a memory 1004, etc., wherein the sender 1001 is used to send messages to the first terminal, the second terminal, a recording server, etc., and the receiver 1002 The memory 1004 is used for storing messages to be sent or received, and the processor 1003 is used for processing corresponding messages to be processed.
具体的,接收器1002,用于接收所述第一终端发送的请求与第二终端进行通信的呼叫请求,所述呼叫请求中包含所述第一终端所在的第一组播组的第一组播组地址;Specifically, the receiver 1002 is configured to receive a call request sent by the first terminal to request communication with the second terminal, and the call request includes the first group of the first multicast group where the first terminal is located. broadcast group address;
处理器1003,用于在确定所述第一终端已开启自动录音业务时,为所述第二终端分配第二组播组地址,将所述第二组播组地址加入所述呼叫请求并向所述第二终端发送修改后的呼叫请求,以使得所述第二终端加入所述第二组播组地址对应的第二组播组并向所述第一组播组地址发送用于与所述第一终端通信的媒体;Processor 1003, configured to assign a second multicast group address to the second terminal when determining that the first terminal has enabled the automatic recording service, add the second multicast group address to the call request, and send The second terminal sends the modified call request, so that the second terminal joins the second multicast group corresponding to the second multicast group address and sends a call request to the first multicast group address for communicating with the second multicast group address. The medium for communicating with the first terminal;
发送器1001,用于将所述接收器1002接收的所述第二终端发送的包括所述第二组播组地址的呼叫响应转发给所述第一终端,以便于所述第一终端向所述第二组播组地址发送用于与所述第二终端通信的媒体;将所述第一组播组地址和所述第二组播组地址发送给录音服务器,以使所述录音服务器加入所述第一组播组和所述第二组播组以接收并录制所述第一终端和所述第二终端发送的媒体。The sender 1001 is configured to forward the call response received by the receiver 1002 from the second terminal and including the second multicast group address to the first terminal, so that the first terminal sends The second multicast group address is used to send the media used to communicate with the second terminal; the first multicast group address and the second multicast group address are sent to the recording server, so that the recording server joins The first multicast group and the second multicast group are used to receive and record the media sent by the first terminal and the second terminal.
在具体实施过程中,所述处理器1003还用于:在所述接收器1002接收所述第一终端发送的请求与第二终端进行通信的呼叫请求之前,所述第一终端开启自动录音业务时,为所述第一终端分配第一组播组地址并通知所述第一终端加入所述第一组播组。In a specific implementation process, the processor 1003 is further configured to: before the receiver 1002 receives the call request sent by the first terminal to communicate with the second terminal, the first terminal starts the automatic recording service , assigning the first multicast group address to the first terminal and notifying the first terminal to join the first multicast group.
在具体实施过程中,所述发送器1001还用于:在将所述第一组播组地址和所述第二组播组地址发送给录音服务器之后,检测到所述第一终端挂机时,向所述第二终端发送用于提示所述第二终端退出组播组的提示消息;In a specific implementation process, the transmitter 1001 is further configured to: after sending the first multicast group address and the second multicast group address to the recording server, when it is detected that the first terminal hangs up, sending a prompt message for prompting the second terminal to withdraw from the multicast group to the second terminal;
所述发送器1001接收所述提示消息对应的反馈消息,触发所述处理器1003回收所述第二组播组地址,其中,所述反馈消息用于表明所述第二终端已退出所述第二组播组。The transmitter 1001 receives a feedback message corresponding to the prompt message, and triggers the processor 1003 to recycle the second multicast group address, where the feedback message is used to indicate that the second terminal has withdrawn from the second multicast group address. Two multicast groups.
进一步的,所述处理器1003还用于:在检测到所述第一终端挂机之后,所述第一终端关闭所述自动录音业务时,回收所述第一组播组地址。Further, the processor 1003 is further configured to: recover the first multicast group address when the first terminal closes the automatic recording service after detecting that the first terminal hangs up.
需要说明的是,本申请实施例提供的第二种呼叫控制服务器为:与实施例一中图5、图6提供的录音方法对应的实体装置,其具体实施过程与实施例一中图5、图6提供的录音方法相同。并且图9与图10提供的第一种呼叫控制服务器和第二种呼叫控制服务器可以为同一个服务器。It should be noted that the second type of call control server provided in the embodiment of the present application is: a physical device corresponding to the recording method provided in Figure 5 and Figure 6 in Embodiment 1, and its specific implementation process is the same as that in Figure 5 and Figure 6 in Embodiment 1. Figure 6 provides the same recording method. And the first type of call control server and the second type of call control server provided in FIG. 9 and FIG. 10 may be the same server.
通过本申请实施例中的一个或多个技术方案,至少可以实现如下技术效果:Through one or more technical solutions in the embodiments of this application, at least the following technical effects can be achieved:
在第一终端与第二终端进行通信的过程中,通过呼叫控制服务器响应第一终端发送的录音请求,为第一终端和第二终端分别分配第一组播组地址和第二组播组地址,使第一终端和第二终端分别加入第一组播组和第二组播组;呼叫控制服务器还将第一组播组地址和第二组播组地址发送给录音服务器,以使录音服务器加入第一组播组和第二组播组,从而对第一终端和第二终端之间的通话进行录音。呼叫控制服务器通过组播组地址的分配,将录音服务器作为组播成员加入到第一终端和第二终端的组播组中,从而实现录音服务器对第一终端与第二终端之间的通话进行录音,避免了在MCU上创建会场,从而解决了现有技术在进行通话录音时占用MCU的媒体资源的技术问题,达到了节约媒体资源的技术效果。During the communication process between the first terminal and the second terminal, the call control server responds to the recording request sent by the first terminal, and assigns the first multicast group address and the second multicast group address to the first terminal and the second terminal respectively , so that the first terminal and the second terminal join the first multicast group and the second multicast group respectively; the call control server also sends the first multicast group address and the second multicast group address to the recording server, so that the recording server Join the first multicast group and the second multicast group, so as to record the call between the first terminal and the second terminal. The call control server adds the recording server as a multicast member to the multicast group of the first terminal and the second terminal through the allocation of the multicast group address, so that the recording server can control the call between the first terminal and the second terminal. Recording avoids creating a conference site on the MCU, thereby solving the technical problem of occupying the media resources of the MCU during call recording in the prior art, and achieving the technical effect of saving media resources.
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art should understand that the embodiments of the present invention may be provided as methods, systems, or computer program products. Accordingly, the present invention can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It should be understood that each procedure and/or block in the flowchart and/or block diagram, and combinations of procedures and/or blocks in the flowchart and/or block diagram can be realized by computer program instructions. These computer program instructions may be provided to a general purpose computer, special purpose computer, embedded processor, or processor of other programmable data processing equipment to produce a machine such that the instructions executed by the processor of the computer or other programmable data processing equipment produce a Means for realizing the functions specified in one or more steps of the flowchart and/or one or more blocks of the block diagram.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing apparatus to operate in a specific manner, such that the instructions stored in the computer-readable memory produce an article of manufacture comprising instruction means, the instructions The device realizes the function specified in one or more procedures of the flowchart and/or one or more blocks of the block diagram.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device, causing a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process, thereby The instructions provide steps for implementing the functions specified in the flow chart flow or flows and/or block diagram block or blocks.
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention also intends to include these modifications and variations.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201410084244.2ACN104901929B (en) | 2014-03-07 | 2014-03-07 | A kind of way of recording, call control server and recording system |
| PCT/CN2014/090789WO2015131533A1 (en) | 2014-03-07 | 2014-11-11 | Recording method, call control server and recording system |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201410084244.2ACN104901929B (en) | 2014-03-07 | 2014-03-07 | A kind of way of recording, call control server and recording system |
| Publication Number | Publication Date |
|---|---|
| CN104901929A CN104901929A (en) | 2015-09-09 |
| CN104901929Btrue CN104901929B (en) | 2018-01-12 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201410084244.2AActiveCN104901929B (en) | 2014-03-07 | 2014-03-07 | A kind of way of recording, call control server and recording system |
| Country | Link |
|---|---|
| CN (1) | CN104901929B (en) |
| WO (1) | WO2015131533A1 (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110913084B (en)* | 2019-12-18 | 2021-09-17 | 迈普通信技术股份有限公司 | Session recording method and device, electronic equipment and storage medium |
| CN115842808A (en)* | 2021-08-04 | 2023-03-24 | 中国移动通信有限公司研究院 | Call interaction method, device, network node and storage medium |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101287044A (en)* | 2008-05-14 | 2008-10-15 | 华为技术有限公司 | Sound processing method, device and system |
| CN101895612A (en)* | 2009-09-16 | 2010-11-24 | 深圳市震有科技有限公司 | Recording acquisition method for voice over internet protocol (VoIP) communication system |
| CN102404694A (en)* | 2011-12-21 | 2012-04-04 | 北京国基科技股份有限公司 | Multimedia cluster dispatching command system, mobile terminal and voice communication method |
| US8411129B2 (en)* | 2009-12-14 | 2013-04-02 | At&T Intellectual Property I, L.P. | Video conference system and method using multicast and unicast transmissions |
| CN103067188A (en)* | 2012-12-14 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | Network phone conference system and implementation method thereof |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20100067508A (en)* | 2008-12-11 | 2010-06-21 | 엘지노텔 주식회사 | Apparatus, system and method for recording voip media packet |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101287044A (en)* | 2008-05-14 | 2008-10-15 | 华为技术有限公司 | Sound processing method, device and system |
| CN101895612A (en)* | 2009-09-16 | 2010-11-24 | 深圳市震有科技有限公司 | Recording acquisition method for voice over internet protocol (VoIP) communication system |
| US8411129B2 (en)* | 2009-12-14 | 2013-04-02 | At&T Intellectual Property I, L.P. | Video conference system and method using multicast and unicast transmissions |
| CN102404694A (en)* | 2011-12-21 | 2012-04-04 | 北京国基科技股份有限公司 | Multimedia cluster dispatching command system, mobile terminal and voice communication method |
| CN103067188A (en)* | 2012-12-14 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | Network phone conference system and implementation method thereof |
| Publication number | Publication date |
|---|---|
| WO2015131533A1 (en) | 2015-09-11 |
| CN104901929A (en) | 2015-09-09 |
| Publication | Publication Date | Title |
|---|---|---|
| CN101272266B (en) | Method, device and system for file sharing in audio/video conference | |
| CN102137080B (en) | Method, device and system for cross-platform conference convergence | |
| WO2011150815A1 (en) | Method and device for realizing group session | |
| WO2012163075A1 (en) | Video conferencing processing method, apparatus and communication system | |
| CN104902111A (en) | Web RTC-based method, equipment and system for establishing multi party call | |
| CN106797379A (en) | Teleconferencing System Using Synthetic Identifiers | |
| WO2009094940A1 (en) | Method and apparatus of media capability re-negotiation | |
| CN102571758A (en) | Method and device for realizing seamless transfer of two-party call transfer conference | |
| CN104901929B (en) | A kind of way of recording, call control server and recording system | |
| CN107181723A (en) | A kind of media coding/decoding negotiation method and terminal device | |
| CN108012342A (en) | Multicast service handling method and device in a kind of LTE-M networks | |
| EP2466842B1 (en) | Method and service device for private call of conference in ip multimedia subsystem | |
| CN103916823B (en) | The creation method and device of mobile phone meeting | |
| WO2012163098A1 (en) | Method and system for implementing sub-conference function by using application server | |
| CN108616485B (en) | Communication method and device based on fusion device | |
| US8838816B2 (en) | System and method for remote party restrictions in a communications system | |
| CN109120578B (en) | Method and device for realizing link connection processing | |
| CN105915837B (en) | A video switching method, device and system | |
| CN101400022B (en) | Method, device and system for identifying service types and establishing services based on the identification | |
| CN108965772A (en) | Video conference implementation method and server, computer readable storage medium | |
| WO2011140744A1 (en) | Multimedia conference system in next generation network and realization method thereof | |
| WO2011107012A1 (en) | Service control method and apparatus | |
| CN111277783B (en) | Connection establishment method and device for captain mode video conference | |
| WO2009000188A1 (en) | Method for transmitting media content and network side device | |
| CN106507022A (en) | Video intercom method and device |
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |