patents.google.com

CN115941778B - A method, device and storage medium for providing services - Google Patents

  • ️Fri Nov 08 2024

发明内容Summary of the invention

本发明提供了一种提供业务的方法、设备及存储介质,用以解决现有的在用户拨打运营商电话过程中存在的业务交互方式单一,和/或显示上存在冲突的问题。The present invention provides a method, device and storage medium for providing services, which are used to solve the existing problems of single service interaction mode and/or display conflicts in the process of users dialing operator telephones.

本发明提供以下技术方案:The present invention provides the following technical solutions:

一种提供业务的方法,包括:A method for providing a service, comprising:

当终端发生某一呼叫事件时,向业务服务器发送业务请求消息;When a call event occurs at the terminal, a service request message is sent to the service server;

接收业务服务器向终端推送的业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用列表描述信息或业务应用描述信息;Receiving a response message to the service request message pushed by the service server to the terminal, wherein the response message is service description information or service application list description information or service application description information;

根据业务描述信息执行业务处理,或根据业务应用列表描述信息展示可供用户选择使用的业务应用,或根据业务应用描述信息向用户提供业务应用服务。Execute business processing according to the business description information, or display business applications available for users to choose to use according to the business application list description information, or provide business application services to users according to the business application description information.

实施中,进一步包括:During implementation, it further includes:

当终端确定用户摘机时,终端向业务服务器发送业务请求消息中的第一业务请求消息。When the terminal determines that the user has picked up the phone, the terminal sends a first service request message in the service request messages to the service server.

实施中,进一步包括:During implementation, it further includes:

业务服务器向终端推送业务请求消息中的第一业务请求消息的响应消息;The service server pushes a response message of the first service request message in the service request message to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,接收的业务请求消息,是终端向业务服务器发起的HTTP请求消息。In implementation, the received service request message is an HTTP request message initiated by the terminal to the service server.

实施中,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。In implementation, the HTTP request message initiated to the business server is an HTTP GET request message.

实施中,进一步包括:During implementation, it further includes:

接收在业务服务器确定用户未摘机时,在业务请求的响应消息中携带的含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。The service description information before the call or the service application list description information or the service application description information containing the page information and/or the service logic configuration information carried in the response message of the service request is received when the service server determines that the user has not picked up the phone.

实施中,通话前的业务应用描述信息是基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service application description information before the call is provided based on the HTML application, using HTML language to describe the page framework, CSS to describe the page style, and JS to describe the service logic.

实施中,进一步包括:During implementation, it further includes:

终端收到通过数据通道传输的业务服务的响应消息后,根据业务应用列表描述信息或业务应用描述信息,以Webview形式呈现给用户。After receiving the response message of the business service transmitted through the data channel, the terminal presents it to the user in the form of Webview according to the business application list description information or the business application description information.

实施中,进一步包括:During implementation, it further includes:

接收业务服务器向终端推送的第二业务描述或第二业务应用列表描述。Receive the second service description or the second service application list description pushed by the service server to the terminal.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,所述业务包括以下业务之一或者其组合:In implementation, the business includes one or a combination of the following businesses:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,终端向业务服务器获取第一业务描述,是终端在发生以下事件之一或者其组合时发起的:In implementation, the terminal obtains the first service description from the service server when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, the terminal obtains the service description information or the service application list description information or the service application description information from the service server through the data channel after the terminal establishes the data channel with the service server.

一种提供业务的方法,包括:A method for providing a service, comprising:

业务服务器接收终端发送的业务请求消息;The service server receives the service request message sent by the terminal;

业务服务器向终端推送业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用描述信息或业务应用列表描述信息。The service server pushes a response message of the service request message to the terminal, wherein the response message is service description information or service application description information or service application list description information.

实施中,进一步包括:During implementation, it further includes:

接收当终端确定用户摘机时,向业务服务器发送业务请求消息中的第一业务请求消息。When the terminal determines that the user has picked up the phone, the terminal sends a first service request message in the service request message to the service server.

实施中,进一步包括:During implementation, it further includes:

接收业务服务器向终端推送的业务请求消息中的第一业务请求消息的响应消息;Receiving a response message to a first service request message in the service request message pushed by the service server to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,业务服务器接收的业务请求消息,是终端向业务服务器发起的HTTP请求消息。In implementation, the service request message received by the service server is an HTTP request message initiated by the terminal to the service server.

实施中,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。In implementation, the HTTP request message initiated to the business server is an HTTP GET request message.

实施中,进一步包括:During implementation, it further includes:

在确定用户未摘机时,在发送给终端的业务请求的响应消息中携带含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。When it is determined that the user has not picked up the phone, the service description information before the call or the service application list description information or the service application description information including the page information and/or the service logic configuration information is carried in the response message of the service request sent to the terminal.

实施中,通话前的业务应用描述信息是基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service application description information before the call is provided based on the HTML application, using HTML language to describe the page framework, CSS to describe the page style, and JS to describe the service logic.

实施中,进一步包括:During implementation, it further includes:

业务服务器接收终端在发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,接收终端向业务服务器发送的业务请求消息中的第二业务请求消息;The service server receives a second service request message in a service request message sent by the terminal to the service server when one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

业务服务器在终端通话状态改变后,向终端推送业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, the service server pushes a response message of the second service request message in the service request message to the terminal.

实施中,所述业务包括以下业务之一或者其组合:In implementation, the business includes one or a combination of the following businesses:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,业务服务器接收的终端向业务服务器获取第一业务描述的请求,是终端在发生以下事件之一或者其组合时发起的:In implementation, the request received by the service server from the terminal to obtain the first service description is initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器接收的终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息的请求,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, the request received by the service server from the terminal for obtaining service description information or service application list description information or service application description information from the service server is initiated by the terminal through the data channel after the terminal establishes a data channel with the service server.

实施中,进一步包括:During implementation, it further includes:

业务服务器收到终端发送的获取业务描述请求,与收到订阅的核心网呼叫事件相结合,在与终端的通话业务请求消息匹配后,决定返回给终端的业务请求消息的响应消息。The service server receives the service description acquisition request sent by the terminal, combines it with the received subscribed core network call event, and after matching it with the call service request message of the terminal, decides to return a response message to the service request message of the terminal.

实施中,进一步包括根据以下信息之一或者其组合向终端推送业务请求消息的响应消息:In the implementation, it further includes pushing a response message of the service request message to the terminal according to one or a combination of the following information:

终端的通话状态、业务需求、主叫用户身份、被叫用户身份、用户的业务订购关系、用户的业务应用订购关系、呼叫转态、终端归属的业务服务器。The terminal's call status, service requirements, calling user identity, called user identity, user's service subscription relationship, user's service application subscription relationship, call transition status, and the service server to which the terminal belongs.

一种终端,包括:A terminal, comprising:

处理器,用于读取存储器中的程序,执行下列过程:The processor reads the program in the memory and performs the following processes:

当终端发生某一呼叫事件时,向业务服务器发送业务请求消息;When a call event occurs at the terminal, a service request message is sent to the service server;

接收业务服务器向终端推送的业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用列表描述信息或业务应用描述信息;Receiving a response message to the service request message pushed by the service server to the terminal, wherein the response message is service description information or service application list description information or service application description information;

根据业务描述信息执行业务处理,或根据业务应用列表描述信息展示可供用户选择使用的业务应用,或根据业务应用描述信息向用户提供业务应用服务;Execute business processing according to the business description information, or display business applications available for users to choose to use according to the business application list description information, or provide business application services to users according to the business application description information;

收发机,用于在处理器的控制下接收和发送数据。A transceiver is used to receive and send data under the control of the processor.

实施中,进一步包括:During implementation, it further includes:

当终端确定用户摘机时,终端向业务服务器发送业务请求消息中的第一业务请求消息。When the terminal determines that the user has picked up the phone, the terminal sends a first service request message in the service request messages to the service server.

实施中,进一步包括:During implementation, it further includes:

接收业务服务器向终端推送的业务请求消息中的第一业务请求消息的响应消息;Receiving a response message to a first service request message in the service request message pushed by the service server to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,业务服务器接收的业务请求消息,是终端向业务服务器发起的HTTP请求消息。In implementation, the service request message received by the service server is an HTTP request message initiated by the terminal to the service server.

实施中,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。In implementation, the HTTP request message initiated to the business server is an HTTP GET request message.

实施中,进一步包括:During implementation, it further includes:

接收在业务服务器确定用户未摘机时,在业务请求的响应消息中携带的含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。The service description information before the call or the service application list description information or the service application description information containing the page information and/or the service logic configuration information carried in the response message of the service request is received when the service server determines that the user has not picked up the phone.

实施中,通话前的业务应用描述信息是基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service application description information before the call is provided based on the HTML application, using HTML language to describe the page framework, CSS to describe the page style, and JS to describe the service logic.

实施中,进一步包括:During implementation, it further includes:

收到通过数据通道传输的业务服务的响应消息后,根据业务应用列表描述信息或业务应用描述信息,以Webview形式呈现给用户。After receiving the response message of the business service transmitted through the data channel, it is presented to the user in the form of Webview according to the business application list description information or the business application description information.

实施中,进一步包括:During implementation, it further includes:

接收业务服务器向终端推送的第二业务描述或第二业务应用列表描述。Receive the second service description or the second service application list description pushed by the service server to the terminal.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,所述业务包括以下业务之一或者其组合:In implementation, the business includes one or a combination of the following businesses:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,向业务服务器获取第一业务描述,是终端在发生以下事件之一或者其组合时发起的:In implementation, obtaining the first service description from the service server is initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, obtaining the service description information or the service application list description information or the service application description information from the service server is initiated by the terminal through the data channel after the terminal establishes the data channel with the service server.

一种终端,包括:A terminal, comprising:

终端获取模块,用于当终端发生某一呼叫事件时,向业务服务器发送业务请求消息;The terminal acquisition module is used to send a service request message to the service server when a call event occurs in the terminal;

终端接收模块,用于接收业务服务器向终端推送的业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用列表描述信息或业务应用描述信息;The terminal receiving module is used to receive a response message to the service request message pushed by the service server to the terminal, wherein the response message is service description information or service application list description information or service application description information;

终端服务模块,用于根据业务描述信息执行业务处理,或根据业务应用列表描述信息展示可供用户选择使用的业务应用,或根据业务应用描述信息向用户提供业务应用服务。The terminal service module is used to perform business processing according to the business description information, or to display business applications available for users to choose to use according to the business application list description information, or to provide business application services to users according to the business application description information.

实施中,终端获取模块进一步用于在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,向业务服务器发送业务请求消息中的第二业务请求消息;所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。During implementation, the terminal acquisition module is further used to send a second service request message in the service request message to the service server when one of the following events occurs at the terminal: call busy, call unreachable, call unanswered, call forwarded, call held, call waiting, or a new data channel is established; the data channel is a data channel used to transmit the service data during the call process.

终端获取模块进一步用于在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。The terminal acquisition module is further used to receive a response message to the second service request message in the service request message pushed by the service server to the terminal after the call state of the terminal changes.

实施中,终端获取模块进一步用于发送的业务请求消息,是向业务服务器发起的HTTP请求消息。In implementation, the terminal acquisition module is further used to send a service request message, which is an HTTP request message initiated to the service server.

实施中,终端获取模块进一步用于向业务服务器发起的HTTP请求消息,是HTTPGET请求消息。In implementation, the terminal acquisition module is further used to initiate an HTTP request message to the business server, which is an HTTP GET request message.

实施中,终端接收模块进一步用于接收在业务服务器确定用户未摘机时,在业务请求的响应消息中携带的含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。In implementation, the terminal receiving module is further used to receive pre-call service description information or service application list description information or service application description information containing page information and/or service logic configuration information carried in the response message of the service request when the service server determines that the user has not picked up the phone.

实施中,终端接收模块进一步用于接收基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑的通话前的业务应用描述信息。In implementation, the terminal receiving module is further used to receive pre-call business application description information provided based on the HTML application, which uses HTML language to describe the page framework, CSS to describe the page style, and JS to describe the business logic.

实施中,终端服务模块进一步用于在收到通过数据通道传输的业务服务的响应消息后,根据业务应用列表描述信息或业务应用描述信息,以Webview形式呈现给用户。During implementation, the terminal service module is further used to present the response message of the business service transmitted through the data channel to the user in the form of Webview according to the business application list description information or the business application description information.

实施中,终端接收模块进一步用于接收业务服务器向终端推送的第二业务描述或第二业务应用列表描述。In implementation, the terminal receiving module is further used to receive the second service description or the second service application list description pushed by the service server to the terminal.

实施中,终端获取模块进一步用于在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,向业务服务器发送业务请求消息中的第二业务请求消息;In implementation, the terminal acquisition module is further used to send the second service request message in the service request message to the service server when one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,终端接收模块进一步用于在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。In implementation, the terminal receiving module is further used to receive a response message to the second service request message in the service request message pushed by the service server to the terminal after the call state of the terminal changes.

实施中,终端获取模块进一步用于获取的所述业务包括以下业务之一或者其组合:In implementation, the terminal acquisition module is further used to acquire the following services:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,终端获取模块进一步用于在发生以下事件之一或者其组合时向业务服务器获取第一业务描述:In implementation, the terminal acquisition module is further used to acquire the first service description from the service server when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,终端获取模块进一步用于在建立与业务服务器之间的数据通道后向业务服务器获取第一业务描述。In implementation, the terminal acquisition module is further used to acquire the first service description from the service server after establishing a data channel with the service server.

一种业务服务器,包括:A business server, comprising:

处理器,用于读取存储器中的程序,执行下列过程:The processor reads the program in the memory and performs the following processes:

业务服务器接收终端发送的业务请求消息;The service server receives the service request message sent by the terminal;

业务服务器向终端推送业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用描述信息或业务应用列表描述信息;The service server pushes a response message to the service request message to the terminal, wherein the response message is service description information or service application description information or service application list description information;

收发机,用于在处理器的控制下接收和发送数据。A transceiver is used to receive and send data under the control of the processor.

实施中,进一步包括:During implementation, it further includes:

接收终端在确定用户摘机或收到被叫用户的摘机消息时,向业务服务器获取第二业务描述的请求。When determining that the user has picked up the phone or receiving an off-hook message from the called user, the receiving terminal requests the service server to obtain the second service description.

实施中,进一步包括:During implementation, it further includes:

接收终端在发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,接收终端向业务服务器发送的业务请求消息中的第二业务请求消息;The receiving terminal receives a second service request message in the service request message sent by the receiving terminal to the service server when one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,向终端推送业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message of the second service request message in the service request message is pushed to the terminal.

实施中,业务服务器接收的业务请求消息,是终端向业务服务器发起超文本传输协议HTTP请求消息。In implementation, the service request message received by the service server is a Hypertext Transfer Protocol (HTTP) request message initiated by the terminal to the service server.

实施中,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。In implementation, the HTTP request message initiated to the business server is an HTTP GET request message.

实施中,进一步包括:During implementation, it further includes:

在确定用户未摘机时,在发送给终端的业务请求的响应消息中携带含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。When it is determined that the user has not picked up the phone, the service description information before the call or the service application list description information or the service application description information including the page information and/or the service logic configuration information is carried in the response message of the service request sent to the terminal.

实施中,通话前的业务应用描述信息是基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service application description information before the call is provided based on the HTML application, using HTML language to describe the page framework, CSS to describe the page style, and JS to describe the service logic.

实施中,进一步包括:During implementation, it further includes:

向终端推送第二业务描述或第二业务应用列表描述。Push the second service description or the second service application list description to the terminal.

实施中,进一步包括:During implementation, it further includes:

接收终端在发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,接收终端向业务服务器发送的业务请求消息中的第二业务请求消息;The receiving terminal receives a second service request message in the service request message sent by the receiving terminal to the service server when one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,向终端推送业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message of the second service request message in the service request message is pushed to the terminal.

实施中,所述业务包括以下业务之一或者其组合:In implementation, the business includes one or a combination of the following businesses:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,业务服务器接收的终端向业务服务器获取第一业务描述的请求,是终端在发生以下事件之一或者其组合时发起的:In implementation, the request received by the service server from the terminal to obtain the first service description is initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器接收的终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息的请求,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, the request received by the service server from the terminal for obtaining service description information or service application list description information or service application description information from the service server is initiated by the terminal through the data channel after the terminal establishes a data channel with the service server.

实施中,业务服务器收到终端发送的获取业务描述请求,与收到订阅的核心网呼叫事件相结合,在与终端的通话业务请求消息匹配后,决定返回给终端的业务请求消息的响应消息。During implementation, the service server receives a service description acquisition request sent by the terminal, combines it with the received subscribed core network call event, and after matching it with the call service request message of the terminal, decides to return a response message to the service request message of the terminal.

实施中,进一步包括根据以下信息之一或者其组合向终端推送业务请求消息的响应消息:In the implementation, it further includes pushing a response message of the service request message to the terminal according to one or a combination of the following information:

终端的通话状态、业务需求、主叫用户身份、被叫用户身份、用户的业务订购关系、用户的业务应用订购关系、呼叫转态、终端归属的业务服务器。The terminal's call status, service requirements, calling user identity, called user identity, user's service subscription relationship, user's service application subscription relationship, call transition status, and the service server to which the terminal belongs.

一种业务服务器,包括:A business server, comprising:

业务服务器接收模块,用于接收终端发送的业务请求消息;The service server receiving module is used to receive the service request message sent by the terminal;

业务服务器推送模块,用于向终端推送业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用描述信息或业务应用列表描述信息。The service server push module is used to push a response message of the service request message to the terminal, wherein the response message is service description information or service application description information or service application list description information.

实施中,业务服务器接收模块进一步用于接收当终端确定用户摘机时,向业务服务器发送业务请求消息中的第一业务请求消息。In implementation, the service server receiving module is further used to receive the first service request message in the service request message sent to the service server when the terminal determines that the user has picked up the phone.

实施中,业务服务器接收模块进一步用于向终端推送业务请求消息中的第一业务请求消息的响应消息;In implementation, the service server receiving module is further used to push a response message of the first service request message in the service request message to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,业务服务器接收模块进一步用于接收终端在通话状态改变后,向业务服务器获取第三业务描述或第三业务应用列表描述的请求。In implementation, the service server receiving module is further used to receive a request from the terminal to obtain the third service description or the third service application list description from the service server after the call state changes.

实施中,业务服务器接收模块进一步用于接收向业务服务器发起的HTTP请求获取服务。During implementation, the business server receiving module is further used to receive an HTTP request initiated to the business server to obtain services.

实施中,业务服务器接收模块进一步用于接收使用HTTP GET进行的请求。In implementation, the business server receiving module is further used to receive a request made using HTTP GET.

实施中,业务服务器推送模块进一步用于在确定用户未摘机时,在发送给终端的业务请求的响应消息中携带含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。During implementation, the service server push module is further used to carry pre-call service description information or service application list description information or service application description information containing page information and/or service logic configuration information in the response message of the service request sent to the terminal when it is determined that the user has not picked up the phone.

实施中,业务服务器推送模块进一步用于基于HTML应用提供的通话前的业务应用描述信息,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service server push module is further used to describe the page framework using HTML language, the page style using CSS, and the service logic using JS based on the pre-call service application description information provided by the HTML application.

实施中,业务服务器推送模块进一步用于向终端推送第二业务描述或第二业务应用列表描述。In implementation, the service server push module is further used to push the second service description or the second service application list description to the terminal.

实施中,业务服务器接收模块进一步用于接收终端在发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,接收终端向业务服务器发送的业务请求消息中的第二业务请求消息;In implementation, the service server receiving module is further used to receive a second service request message in a service request message sent by the receiving terminal to the service server when one of the following events occurs: call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器推送模块进一步用于向终端推送在终端通话状态改变后,向终端推送业务请求消息中的第二业务请求消息的响应消息。In implementation, the service server push module is further used to push to the terminal a response message to the second service request message in the service request message pushed to the terminal after the call state of the terminal changes.

实施中,业务服务器推送模块进一步用于推送所述业务包括以下业务之一或者其组合:In implementation, the service server push module is further used to push the service including one or a combination of the following services:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,业务服务器接收模块进一步用于接收终端在发生以下事件之一或者其组合时发起的获取第一业务描述的请求:In implementation, the service server receiving module is further used to receive a request for obtaining the first service description initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器接收模块进一步用于接收的终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息的请求,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, the service server receiving module is further used to receive a request from the terminal to obtain service description information or service application list description information or service application description information from the service server, which is initiated by the terminal through the data channel after establishing a data channel with the service server.

实施中,业务服务器接收模块进一步用于收到终端发送的获取业务描述请求,与收到订阅的核心网呼叫事件相结合,在与终端的通话业务请求消息匹配后,决定返回给终端的业务请求消息的响应消息。During implementation, the service server receiving module is further used to receive a service description acquisition request sent by the terminal, combine it with the received subscribed core network call event, and after matching with the call service request message of the terminal, decide to return a response message to the service request message of the terminal.

实施中,业务服务器推送模块进一步用于根据以下信息之一或者其组合向终端推送业务请求消息的响应消息:In implementation, the service server push module is further used to push a response message of the service request message to the terminal according to one or a combination of the following information:

终端的通话状态、业务需求、主叫用户身份、被叫用户身份、用户的业务订购关系、用户的业务应用订购关系、呼叫转态、终端归属的业务服务器。The terminal's call status, service requirements, calling user identity, called user identity, user's service subscription relationship, user's service application subscription relationship, call transition status, and the service server to which the terminal belongs.

一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行上述终端侧和/或业务服务器侧的提供业务的方法的计算机程序。A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program for executing the method of providing services on the terminal side and/or the service server side.

本发明有益效果如下:The beneficial effects of the present invention are as follows:

现有业务直接发送音、视频、文本内容,无法进行交互,无法定义在终端侧的业务显示形态。Existing services directly send audio, video, and text content, and are unable to interact or define the service display format on the terminal side.

在本发明实施例提供的技术方案中,由于业务服务器在收到终端的业务请求消息后,会向终端推送相关业务应用列表描述,使得用户可在该业务应用列表描述中选择5G新通话功能;或根据业务应用描述向用户提供业务应用服务,从而克服了现有的各业务交互方式单一,存在显示上的冲突的问题。也即,可以通过业务应用描述或业务应用列表描述,在通话过程中为用户实现多种附加业务的提供;不仅能够在音频或视频通话中为用户提供可交互的通话相关业务服务,同时也可在拨打通话的过程中提供多种可交互的通话相关业务服务。In the technical solution provided by the embodiment of the present invention, after receiving the service request message of the terminal, the service server will push the description of the relevant service application list to the terminal, so that the user can select the 5G new call function in the service application list description; or provide the user with service application services according to the service application description, thereby overcoming the problem that the existing service interaction mode is single and there is a display conflict. That is, through the service application description or the service application list description, a variety of additional services can be provided to the user during the call; not only can the user be provided with interactive call-related service services in audio or video calls, but also a variety of interactive call-related service services can be provided during the call.

进一步的,由于提供业务应用列表描述供选择,因此避免了多种附加业务相互冲突。Furthermore, since a service application list description is provided for selection, conflicts among multiple additional services are avoided.

具体实施方式DETAILED DESCRIPTION

发明人在发明过程中注意到:The inventors noticed during the invention process that:

1.现有运营商通话系统只支持音频、视频及信令数据的传输交互流程,用户在拨打电话的过程中只能听音频,看对端终端传输的视频,使用拨号盘进行按键交互。不支持在通话中实现触屏式智能菜单交互、屏幕标记、内容分享、实时音、视频处理等功能。2.现有运营商通话系统架构中各个业务由独立的应用服务器处理,核心网网元不做业务管控,只根据业务的签约信息依次触发业务应用服务器向用户提供业务,各个业务可能存在冲突。比如A应用在被叫终端振铃时通知终端显示网络侧推送的视频振铃内容,而B应用在被叫终端振铃时又通知终端显示网络侧推送的主叫名片信息,那么在被叫终端侧,两种业务显示将产生冲突。1. The existing operator call system only supports the transmission and interaction process of audio, video and signaling data. When making a call, users can only listen to the audio, watch the video transmitted by the other terminal, and use the dial pad for key interaction. It does not support touch-screen intelligent menu interaction, screen marking, content sharing, real-time audio and video processing and other functions during the call. 2. In the existing operator call system architecture, each service is processed by an independent application server. The core network element does not perform service management and control. It only triggers the service application server to provide services to users in sequence according to the contract information of the service. There may be conflicts between various services. For example, when the called terminal rings, application A notifies the terminal to display the video ringing content pushed by the network side, and when the called terminal rings, application B notifies the terminal to display the caller business card information pushed by the network side. Then, on the called terminal side, the two service displays will conflict.

下面结合附图对本发明的具体实施方式进行说明。The specific implementation of the present invention will be described below in conjunction with the accompanying drawings.

在说明过程中,将分别从终端与业务服务器侧的实施进行说明,然后还将给出二者配合实施的实例以更好地理解本发明实施例中给出的方案的实施。这样的说明方式并不意味着二者必须配合实施、或者必须单独实施,实际上,当终端与业务服务器分开实施时,其也各自解决自身一侧的问题,而二者结合使用时,会获得更好的技术效果。In the description process, the implementation of the terminal and the service server will be described respectively, and then an example of the coordinated implementation of the two will be given to better understand the implementation of the solution given in the embodiment of the present invention. This description does not mean that the two must be implemented in coordination or must be implemented separately. In fact, when the terminal and the service server are implemented separately, they also solve the problems on their own side, and when the two are used in combination, better technical effects will be obtained.

图1为终端侧提供业务的方法实施流程示意图,如图所示,可以包括:FIG1 is a schematic diagram of an implementation flow of a method for providing services on a terminal side, as shown in the figure, which may include:

步骤101、当终端发生某一呼叫事件时,向业务服务器发送业务请求消息;Step 101: When a call event occurs in the terminal, a service request message is sent to the service server;

步骤102、终端接收业务服务器向终端推送的业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用列表描述信息或业务应用描述信息;Step 102: The terminal receives a response message to the service request message pushed by the service server to the terminal, wherein the response message is service description information or service application list description information or service application description information;

步骤103、终端根据业务描述信息执行业务处理,或根据业务应用列表描述信息展示可供用户选择使用的业务应用,或根据业务应用描述信息向用户提供业务应用服务。Step 103: The terminal performs service processing according to the service description information, or displays service applications available for selection by the user according to the service application list description information, or provides service application services to the user according to the service application description information.

其中,所述业务是通过数据通道提供的业务。The service is provided through a data channel.

图2为业务服务器侧提供业务的方法实施流程示意图,如图所示,可以包括:FIG2 is a schematic diagram of a method for implementing a service provision method on a service server side, which may include:

步骤201、业务服务器接收终端发送的业务请求消息;Step 201: The service server receives a service request message sent by a terminal;

步骤202、业务服务器向终端推送业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用描述信息或业务应用列表描述信息。Step 202: The service server pushes a response message to the service request message to the terminal, where the response message is service description information or service application description information or service application list description information.

其中,所述业务是通过数据通道提供的业务。The service is provided through a data channel.

实施中,网络侧提供业务的功能实体从硬件角度称为业务服务器,如果从软件角度则可称为业务平台,但虽然称谓不同,它们都是指的提供业务的功能实体。In implementation, the functional entity that provides services on the network side is called a service server from a hardware perspective, and it can be called a service platform from a software perspective. Although the names are different, they all refer to the functional entity that provides services.

在实施例中,业务服务器中负责接收所述业务请求消息以及发送所述业务请求响应消息的模块,也可称为业务服务器媒体模块或业务服务器接入模块;它们都是指提供业务的功能实体,可分开部署,也可以作为服务器独立部署,继而成为业务媒体服务器或业务接入服务器。In an embodiment, the module in the service server responsible for receiving the service request message and sending the service request response message may also be referred to as a service server media module or a service server access module; they both refer to functional entities that provide services, which may be deployed separately or independently as a server, and then become a service media server or a service access server.

在实施例中,业务具体也可以称为附加业务、新通话业务、新通话业务应用、5G新通话业务、5G新通话业务应用、Data Channel Application(数据通道应用)等,这便于理解方案中的“业务”与目前具体存在的“附加业务”、“新通话业务”等之间的关系,以及对附加业务如何进行实施。In the embodiments, the service may also be specifically referred to as additional service, new call service, new call service application, 5G new call service, 5G new call service application, Data Channel Application, etc. This makes it easier to understand the relationship between the "service" in the plan and the currently existing "additional service", "new call service", etc., as well as how to implement the additional service.

实施中,对于终端侧,业务服务器接收的业务请求消息,是终端向业务服务器发起HTTP请求消息。In implementation, for the terminal side, the service request message received by the service server is an HTTP request message initiated by the terminal to the service server.

对于业务服务器侧,业务服务器接收的业务请求消息,是终端向业务服务器发起的HTTP请求消息。For the service server side, the service request message received by the service server is an HTTP request message initiated by the terminal to the service server.

实施中,对于终端侧,终端向业务服务器获取第一业务描述,是终端在发生以下事件之一或者其组合时发起的:In implementation, for the terminal side, the terminal obtains the first service description from the service server when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

对于业务服务器侧,业务服务器接收的终端向业务服务器获取第一业务描述的请求,是终端在发生以下事件之一或者其组合时发起的:For the service server side, the request received by the service server from the terminal to obtain the first service description is initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,对于终端侧,终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, on the terminal side, the terminal obtains the service description information or the service application list description information or the service application description information from the service server, which is initiated by the terminal through the data channel after the terminal establishes the data channel with the service server.

对于业务服务器侧,业务服务器接收的终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息的请求,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。For the service server side, the request received by the service server from the terminal for obtaining service description information or service application list description information or service application description information is initiated by the terminal through the data channel after the terminal establishes a data channel with the service server.

具体的,方案中提供了一种可以在通话中向用户提供多种通话附加业务的方案。终端在完成与平台之间的数据通道建立后,向业务平台根目录发起HTTP(超文本传输协议,Hyper Text Transfer Protocol)请求获取服务,也可以不需要建立数据通道,而是通过一个HTTP请求直接发送第一业务描述请求。业务平台收到请求后,根据终端的能力及业务订购情况向终端推送附加业务服务或附加业务应用列表,终端根据网络侧返回内容,直接向用户提供服务或展示可供用户选择使用的附加业务应用列表。Specifically, the solution provides a solution that can provide users with a variety of additional call services during a call. After the terminal completes the establishment of a data channel with the platform, it initiates an HTTP (Hypertext Transfer Protocol) request to the root directory of the service platform to obtain services. It is also possible not to establish a data channel, but to directly send a first service description request through an HTTP request. After receiving the request, the service platform pushes additional service services or a list of additional service applications to the terminal based on the terminal's capabilities and service subscriptions. The terminal directly provides services to the user or displays a list of additional service applications available for the user to choose based on the content returned by the network side.

为了避免服务端对用户的骚扰,终端向平台发起服务获取请求,而不用网络侧直接推送服务。具体可以通过在终端侧设置开关,以供用户决定是否在通话中开启附加业务获取的功能。In order to avoid harassment from the server to the user, the terminal initiates a service acquisition request to the platform instead of directly pushing the service on the network side. Specifically, a switch can be set on the terminal side for the user to decide whether to enable the additional service acquisition function during a call.

触发终端发起通话附加业务请求的方式,可以是终端的拨号事件、振铃事件、摘机事件等呼叫状态事件,也可以是终端与通话附加业务控制平台完成建立了一条专门用于传输通话附加业务数据的通道后发起。The method of triggering the terminal to initiate a call supplementary service request can be a call state event such as a dialing event, ringing event, or off-hook event of the terminal, or it can be initiated after the terminal and the call supplementary service control platform have established a channel specifically for transmitting call supplementary service data.

进一步的,实施中,还可以进一步包括:Furthermore, during implementation, the following may be further included:

业务服务器收到终端发送的获取业务描述请求,与收到订阅的核心网呼叫事件相结合,在与终端的通话业务请求消息匹配后,决定返回给终端的业务请求消息的响应消息。The service server receives the service description acquisition request sent by the terminal, combines it with the received subscribed core network call event, and after matching it with the call service request message of the terminal, decides to return a response message to the service request message of the terminal.

具体的,如果终端发起的通话附加业务请求消息与通话会话相互独立,为提升业务安全性及可靠性,通话附加业务服务器可以业务服务器订阅核心网呼叫事件,将收到的通话附加业务请求消息结合当前核心网呼叫事件做校验,仅当同时收到来自终端的通话附加业务请求消息和该终端的核心网呼叫事件时,才能校验通过,继续执行后续业务逻辑,否则校验不通过,返回错误响应。Specifically, if the call additional service request message initiated by the terminal is independent of the call session, in order to improve service security and reliability, the call additional service server can subscribe to the core network call event, and verify the received call additional service request message in combination with the current core network call event. Only when the call additional service request message and the core network call event of the terminal are received at the same time, can the verification pass and the subsequent business logic continue to execute. Otherwise, the verification fails and an error response is returned.

有关发起请求的时间点,实际方案中,可以是拨打电话时,即发出呼叫请求消息时或者完成业务服务器与终端的数据通道时。Regarding the time point of initiating the request, in an actual solution, it can be when a call is made, that is, when a call request message is sent or when a data channel between a service server and a terminal is completed.

一方面需要终端主动请求服务,另一方面网络侧有推送服务(一个或多个业务)的需求。需要制定方案解决如终端何高效的及时获取服务的问题。比较简单的实现方式是终端通过轮询来获取业务,轮询周期越短,业务体验越好。但是该种方式非常耗费终端和服务器资源。因此,方案中还提出了一种解决高效的及时获取服务的方案。On the one hand, the terminal needs to actively request services, and on the other hand, the network side needs to push services (one or more services). A solution needs to be formulated to solve the problem of how the terminal can obtain services efficiently and timely. A relatively simple implementation method is for the terminal to obtain services through polling. The shorter the polling cycle, the better the service experience. However, this method consumes a lot of terminal and server resources. Therefore, the solution also proposes a solution to solve the problem of efficient and timely service acquisition.

实施中,对于终端侧,进一步包括:In the implementation, for the terminal side, it further includes:

当终端确定用户摘机时,终端向业务服务器发送业务请求消息中的第一业务请求消息。When the terminal determines that the user has picked up the phone, the terminal sends a first service request message in the service request messages to the service server.

对于业务服务器侧,还可以进一步包括:For the service server side, it may further include:

接收当终端确定用户摘机时,向业务服务器发送业务请求消息中的第一业务请求消息。When the terminal determines that the user has picked up the phone, the terminal sends a first service request message in the service request message to the service server.

具体的,数据通道建立后,终端向平台根目录发起HTTP请求获取服务(第一次请求),同时判断当前状态为通话前(即用户未摘机或未收到被叫用户的摘机消息);此后,当终端判断用户摘机或已收到被叫用户的摘机消息时,再次向平台根目录发起HTTP请求获取服务(第二次请求);若终端在发起第一请求时,判断当前状态已经为通话中状态,则无需再发送第二次请求。Specifically, after the data channel is established, the terminal initiates an HTTP request to the platform root directory to obtain the service (the first request), and at the same time determines that the current state is before the call (that is, the user has not picked up the phone or has not received the off-hook message from the called user); thereafter, when the terminal determines that the user has picked up the phone or has received the off-hook message from the called user, it again initiates an HTTP request to the platform root directory to obtain the service (the second request); if the terminal determines that the current state is already in a call state when initiating the first request, there is no need to send the second request.

实施中,在终端侧还可以进一步包括:During implementation, the terminal side may further include:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

相应的,对于网络侧,则还可以进一步包括:Correspondingly, for the network side, it may further include:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

具体的,终端通话状态改变,例如,由通话中改变为呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道等事件。Specifically, the terminal call state changes, for example, from being in a call to being busy, unreachable, unanswered, forwarded, held, waiting, or establishing a new data channel.

根据不同的通话状态,如通话前、通话中,可能存在不同的通话附加业务;同时有些通话附加业务仅适合某一特定的通话状态。因此,对于通话状态有更新时,终端可分别向通话附加业务控制平台发起通话附加业务请求,以及时获取到该状态下的通话附加业务。Different call additional services may exist according to different call states, such as before a call and during a call; at the same time, some call additional services are only suitable for a specific call state. Therefore, when the call state is updated, the terminal can initiate a call additional service request to the call additional service control platform to obtain the call additional services in this state in a timely manner.

下面以终端与作为业务服务器的通话附加业务服务器的实例进行说明。实施例中的附加业务至少可以是国际标准中的Data channel application(数据通道应用),或者是中国移动标准中的新通话业务/新通话应用,如亲情号、中间号、集团V网、通话前回铃音、呼叫后未接来电提醒、留言等类型的业务。The following is an example of a terminal and a call additional service server as a service server. The additional service in the embodiment can be at least a Data channel application in the international standard, or a new call service/new call application in the China Mobile standard, such as family number, middle number, group V network, ringback tone before call, missed call reminder after call, message leaving and other types of services.

图3为提供业务的方法实施流程示意图,如图所示,可以包括:FIG3 is a schematic diagram of a method for providing services, which may include:

终端发起呼叫,业务服务器的通话附加业务服务器收到运营商核心网终端呼叫事件通知。The terminal initiates a call, and the call additional service server of the service server receives a terminal call event notification from the operator's core network.

1、建立数据通道流程,数据通道建立。1. Establish data channel process and establish data channel.

终端与网络侧通话附加业务服务器之间建立用于传输附加业务数据的数据通道。此处,通话附加业务服务器可以有独立媒体服务器,用于专门处理附加业务数据,那么此时,附加业务服务器将在数据通道协商时,协商附加业务媒体服务器与终端之间的数据通道。A data channel for transmitting additional service data is established between the terminal and the call additional service server on the network side. Here, the call additional service server may have an independent media server for processing additional service data. In this case, the additional service server will negotiate the data channel between the additional service media server and the terminal during the data channel negotiation.

2、通话前业务获取阶段。2. Business acquisition stage before call.

终端发起通话附加业务请求;通话附加业务服务器结合核心网呼叫事件完成请求校验:(1)存在请求对应呼叫事件;(2)判断当前主被叫为通话前状态后,返回携带通话前新通话业务的响应;终端进行通话前业务展示。The terminal initiates a request for additional call services; the additional call service server completes the request verification in conjunction with the core network call event: (1) there is a call event corresponding to the request; (2) after determining that the current caller and the called party are in the pre-call state, a response carrying the new pre-call call service is returned; the terminal performs the pre-call service display.

实施中,对于终端侧,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。In implementation, for the terminal side, the HTTP request message initiated to the service server is an HTTP GET request message.

对于业务服务器侧,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。For the service server side, the HTTP request message initiated to the service server is an HTTP GET request message.

具体的,终端完成数据通道的建立后,立即通过该通道向网络发起通话附加业务请求。该业务请求可以使用HTTP GET(获取)方式进行请求,URL(统一资源定位符,uniformresource locator)地址为根目录的地址。Specifically, after the terminal completes the establishment of the data channel, it immediately initiates a call additional service request to the network through the channel. The service request can be made using the HTTP GET (get) method, and the URL (uniform resource locator) address is the address of the root directory.

实施中,对于终端侧,还可以进一步包括:During implementation, for the terminal side, it may further include:

接收在业务服务器确定用户未摘机时,在业务请求的响应消息中携带的含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。When the service server determines that the user has not picked up the phone, the service description information before the call or the service application list description information or the service application description information containing the page information and/or the service logic configuration information carried in the response message of the service request is received.

对于业务服务器侧,还可以进一步包括:For the service server side, it may further include:

在确定用户未摘机时,在发送给终端的业务请求的响应消息中携带含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。When it is determined that the user has not picked up the phone, the service description information before the call or the service application list description information or the service application description information including the page information and/or the service logic configuration information is carried in the response message of the service request sent to the terminal.

具体实施中,通话前的业务应用描述信息是基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In a specific implementation, the service application description information before the call is provided based on the HTML application, using HTML language to describe the page framework, CSS to describe the page style, and JS to describe the service logic.

具体的,通话附加业务服务器判断当前通话状态为通话前状态,则在通话附加业务请求的响应消息中携带通话前业务信息,含页面信息、业务逻辑配置信息。该业务信息描述的方式可以为基于HTML(超文本标记语言,Hyper Text Markup Language)应用提供,使用HTML语言描述页面框架、CSS(层叠样式表,Cascading Style Sheets)描述页面样式、JS(Java脚本,JavaScript)描述业务逻辑。Specifically, if the call additional service server determines that the current call state is the pre-call state, the pre-call service information, including page information and service logic configuration information, is carried in the response message of the call additional service request. The service information description method can be provided based on HTML (Hypertext Markup Language) application, using HTML language to describe the page framework, CSS (Cascading Style Sheets) to describe the page style, and JS (Java Script, JavaScript) to describe the service logic.

3、通话中业务获取阶段。3. Business acquisition stage during the call.

终端判断用户摘机或收到被叫摘机消息,发起通话附加业务请求;通话附加业务服务器收到运营商核心网终端呼叫事件通知,结合核心网呼叫事件完成请求校验:(1)存在请求对应呼叫事件;(2)判断当前主被叫为通话前状态,返回携带通话中新通话业务的响应;终端在通话中进行业务展示。The terminal determines whether the user has picked up the phone or received a message that the called party has picked up the phone, and initiates a call additional service request; the call additional service server receives a call event notification from the operator's core network terminal, and completes the request verification in combination with the core network call event: (1) There is a call event corresponding to the request; (2) It determines that the current caller and the called party are in the pre-call state, and returns a response carrying the new call service in the call; the terminal displays the service during the call.

实施中,还可以进一步包括:During implementation, the method may further include:

终端收到通过数据通道传输的业务服务的响应消息后,根据业务应用列表描述信息或业务应用描述信息,以Webview形式呈现给用户。After receiving the response message of the business service transmitted through the data channel, the terminal presents it to the user in the form of Webview according to the business application list description information or the business application description information.

具体的,终端收到响应消息后,根据业务信息描述,以Webview(Web视图)形式呈现给用户,为用户提供服务。Specifically, after receiving the response message, the terminal presents it to the user in the form of a Webview (Web view) according to the business information description to provide services to the user.

用户摘机后,或者用户收到对端用户的摘机消息后,再次发起通话附加业务请求。After the user picks up the phone, or after the user receives an off-hook message from the other end user, the user initiates a call additional service request again.

通话附加业务服务器判断当前通话状态为通话中状态,则在通话附加业务请求的响应消息中携带通话中业务信息。业务信息描述方式同上述中的业务信息的描述方式。The call additional service server determines that the current call state is in a call state, and then carries the in-call service information in the response message of the call additional service request. The service information description method is the same as the service information description method in the above.

终端收到响应消息后,根据业务应用列表描述信息或业务应用描述信息,以Webview形式呈现给用户,为用户提供服务。After receiving the response message, the terminal presents it to the user in the form of Webview according to the business application list description information or the business application description information to provide services to the user.

下面以UE获取应用程序这一业务为例在进行说明。The following description will be made by taking the service of UE obtaining an application as an example.

图4为UE获取应用程序流程示意图,如图所示,可以包括:FIG4 is a schematic diagram of a process flow of a UE obtaining an application program, which may include:

1、UE与业务服务器媒体模块之间建立数据通道;1. Establish a data channel between the UE and the media module of the service server;

2、UE向业务服务器媒体模块通过HTTP GET:/获取携带业务描述信息的引导程序;2. The UE obtains the bootstrap program carrying the service description information from the service server media module through HTTP GET://.

3、业务服务器媒体模块通过200OK/304Not Modified(不修改)返回携带业务描述信息的引导程序;3. The service server media module returns the boot program carrying the service description information via 200 OK/304 Not Modified (not modified);

4、UE向业务服务器媒体模块通过HTTP GET:/获取携带业务应用列表描述信息的应用列表;4. The UE obtains the application list carrying the service application list description information from the service server media module through HTTP GET://.

5、业务服务器媒体模块通过200OK返回携带业务应用列表描述信息的应用列表;5. The service server media module returns an application list carrying the service application list description information through 200OK;

6、UE向业务服务器媒体模块通过HTTP GET:/获取携带业务应用描述信息的应用程序;6. The UE obtains the application program carrying the service application description information from the service server media module through HTTP GET://.

7、业务服务器媒体模块通过200OK/304Not Modified返回携带业务应用描述信息的应用程序。7. The business server media module returns the application program carrying the business application description information via 200 OK/304 Not Modified.

通话附加业务服务器获取呼叫事件时,可以通过向IMS核心网进行呼叫事件订阅来获取。图5为获取呼叫事件的实施流程示意图,如图所示,可以包括:When the call additional service server obtains the call event, it can obtain it by subscribing to the call event from the IMS core network. FIG5 is a schematic diagram of the implementation process of obtaining the call event, as shown in the figure, which may include:

业务服务器与IMS核心网进行呼叫事件订阅流程:完成对需要呼叫事件的订阅,如invite消息,180消息等。The service server and the IMS core network perform a call event subscription process: complete the subscription to required call events, such as invite messages, 180 messages, etc.

IMS核心网收到呼叫事件,如收到invite消息;The IMS core network receives a call event, such as an invite message.

IMS核心网向通话附加业务服务器发出呼叫事件通知;The IMS core network sends a call event notification to the call additional service server;

通话附加业务服务器发出呼叫事件通知响应。The call additional service server sends a call event notification response.

实施中,对于终端侧,还可以进一步包括:During implementation, for the terminal side, it may further include:

接收业务服务器向终端推送的第二业务描述或第二业务应用列表描述。Receive the second service description or the second service application list description pushed by the service server to the terminal.

对于业务服务器侧,还可以进一步包括:For the service server side, it may further include:

向终端推送第二业务描述或第二业务应用列表描述。Push the second service description or the second service application list description to the terminal.

具体的,在通话前和通话中,通话附加业务服务器可分别通过附加业务应用列表向用户同时推送。用户根据附加业务应用列表选择想使用的附加业务。Specifically, before and during a call, the call additional service server can push additional service application lists to the user at the same time. The user selects the additional service he wants to use according to the additional service application list.

当存在多个附加业务时,平台通过应用列表的形式在用户向根目录请求通话附加业务时,在返回的请求响应中发送给用户。用户选择(点击)某个应用后,终端根据业务信息中该应用指定业务逻辑,向通话附加业务平台发起业务请求,平台根据业务逻辑进行下一步的响应。When there are multiple additional services, the platform sends the application list to the user in the returned request response when the user requests the call additional service from the root directory. After the user selects (clicks) an application, the terminal initiates a service request to the call additional service platform according to the service logic specified by the application in the service information, and the platform responds to the next step according to the service logic.

具体实施中,所述业务包括以下业务之一或者其组合:In a specific implementation, the business includes one or a combination of the following businesses:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

具体的,附加业务应用列表适合向用户提供需要用户主动选择使用的业务,但是还存在一些不需要用户选择,直接提供给用户的业务,如智能客服菜单的推送。电话接通后,用户不需要选择智能客服业务,直接进入智能客服的交互式菜单页面。因此,进一步的,还可以根据不同业务需求,将业务分为直显业务和非直显业务。非直显业务即为用户需要选择后再提供给用户的业务,非直显业务即网络侧推送给终端需要直接显示并提供服务的业务,如智能客服的交互式菜单,电话接通后,终端再次向平台根目录发起HTTP请求获取服务,平台返回智能客服交互式菜单,而非附加业务应用列表。Specifically, the additional service application list is suitable for providing users with services that require users to actively choose to use, but there are still some services that do not require users to choose and are directly provided to users, such as the push of intelligent customer service menus. After the call is connected, the user does not need to select the intelligent customer service service and directly enters the interactive menu page of the intelligent customer service. Therefore, further, the services can be divided into direct display services and non-direct display services according to different business needs. Non-direct display services are services that users need to select before providing to users. Non-direct display services are services that the network side pushes to the terminal to directly display and provide services, such as the interactive menu of intelligent customer service. After the call is connected, the terminal again initiates an HTTP request to the platform root directory to obtain the service, and the platform returns the intelligent customer service interactive menu, rather than the additional service application list.

实施中,还可以进一步包括根据以下信息之一或者其组合向终端推送业务请求消息的响应消息:In implementation, it may further include pushing a response message of the service request message to the terminal according to one or a combination of the following information:

终端的通话状态、业务需求、主叫用户身份、被叫用户身份、用户的业务订购关系、用户的业务应用订购关系、呼叫转态、终端归属的业务服务器。The terminal's call status, service requirements, calling user identity, called user identity, user's service subscription relationship, user's service application subscription relationship, call transition status, and the service server to which the terminal belongs.

具体的,某个通话状态下,可能既存在多个通话附加业务,又存在需要在用户终端界面直接显示某个附加业务界面的情况。通话附加业务平台需要根据业务需求及呼叫身份(主叫/被叫)、呼叫转态决策出需要给终端发送的通话附加业务信息:可能是某个通话附加业务的交互页面,也可能是集成了不同通话附加业务的附加业务应用列表界面。Specifically, in a certain call state, there may be multiple call additional services, and there may be a situation where a certain additional service interface needs to be directly displayed on the user terminal interface. The call additional service platform needs to decide the call additional service information to be sent to the terminal based on the service requirements, call identity (caller/called), and call transition state: it may be an interactive page of a certain call additional service, or it may be an additional service application list interface that integrates different call additional services.

附加业务应用列表适合向用户提供需要用户主动选择使用的业务,但是也可能还存在一些不需要用户选择,就能直接提供给用户的业务,如智能客服菜单的推送。电话接通后,用户不需要选择智能客服业务,直接进入智能客服的交互式菜单页面。因此,还可以根据不同业务需求,将业务分为直显业务和非直显业务。非直显业务即为用户需要选择后再提供给用户的业务,非直显业务即网络侧推送给终端需要直接显示并提供服务的业务,如智能客服的交互式菜单,电话接通后,终端再次向平台根目录发起HTTP请求获取服务,平台返回智能客服交互式菜单,而非附加业务应用列表。The list of additional business applications is suitable for providing users with services that require users to actively choose to use, but there may also be some services that can be directly provided to users without user selection, such as the push of intelligent customer service menu. After the call is connected, the user does not need to select the intelligent customer service service and directly enters the interactive menu page of the intelligent customer service. Therefore, the services can also be divided into direct display services and non-direct display services according to different business needs. Non-direct display services are services that users need to select before providing to users. Non-direct display services are services that the network side pushes to the terminal to directly display and provide services, such as the interactive menu of intelligent customer service. After the call is connected, the terminal again initiates an HTTP request to the platform root directory to obtain the service, and the platform returns the intelligent customer service interactive menu instead of the list of additional business applications.

当网络有统一的通话附加业务控制平台时,控制平台根据平台业务逻辑,当存在需要直接显示的通话附加业务时,向终端推送直显内容,不推送通话附加业务应用列表,如推送通话前名片、智能交互客服菜单等。其他通话附加业务如需提供,则按需集成在直显通话附加业务的页面中,有直显通话附加业务决定是否支持集成,或不提供。When the network has a unified call additional service control platform, the control platform will push direct display content to the terminal according to the platform business logic when there are call additional services that need to be directly displayed, but will not push the call additional service application list, such as pushing pre-call business cards, smart interactive customer service menus, etc. If other call additional services are required, they will be integrated into the page of direct display call additional services as needed. Whether to support integration or not to provide direct display call additional services is determined by the direct display call additional services.

当不同网络存在不同的附加业务控制平台时,如主叫终端和被叫终端归属网络接入不同的通话附加业务控制平台时,本地归属网络通话附加业务控制平台向终端推送通话附加业务应用列表界面,向用户提供不同通话附加业务服务入口;对端归属网络通话附加业务控制平台根据业务需求及终端状态,向终端发送直显附加业务交互页面。When different networks have different additional service control platforms, such as when the calling terminal and the called terminal belong to different call additional service control platforms, the call additional service control platform of the local network pushes the call additional service application list interface to the terminal and provides users with different call additional service entrances; the call additional service control platform of the other network sends a direct display additional service interaction page to the terminal based on service requirements and terminal status.

下面以实例进行说明。The following is an example to illustrate.

主叫侧的业务提供流程可以包括:The service provision process on the calling side may include:

1、VoLTE(长期演进语音承载,Voice over Long-Term Evolution)网络中的终端A接收到拨号事件;1. Terminal A in the VoLTE (Voice over Long-Term Evolution) network receives a dialing event.

2、终端A向音视频能力网元发出Invite消息;2. Terminal A sends an Invite message to the audio and video capability network element;

3、音视频能力网元向新通话平台发起呼叫事件通告;3. The audio and video capability network element initiates a call event notification to the new call platform;

4、新通话平台对通告进行响应;4. The new call platform responds to the announcement;

5、音视频能力网元向VoLTE网络中的终端B发出Invite消息;5. The audio and video capability network element sends an Invite message to terminal B in the VoLTE network;

6、主被叫终端完成初始协商;6. The calling and called terminals complete the initial negotiation;

7、具有SDK(软件开发工具包,Software Development Kit)的终端A向新通话平台请求新通话服务发起HTTP GET:/,其中携带被叫手机号、主叫身份信息及鉴权相关信息;7. Terminal A with SDK (Software Development Kit) initiates HTTP GET:/ to request new call service from the new call platform, which carries the called mobile phone number, caller identity information and authentication related information;

8、新通话平台结合核心网呼叫事件完成业务校验;8. The new call platform completes service verification in conjunction with the core network call events;

9、新通话平台进行鉴权;9. Authentication is performed on the new call platform;

10、向终端A返回新通话服务HTTP 200OK;10. Return a new call service HTTP 200OK to terminal A;

上述1-6步骤,与7-10为并行的步骤。The above steps 1-6 and 7-10 are parallel steps.

11、VoLTE网络中的终端A向终端B发出Invite 200OK消息;11. Terminal A in the VoLTE network sends an Invite 200OK message to terminal B;

12、音视频能力网元向新通话平台发起呼叫事件通知;12. The audio and video capability network element initiates a call event notification to the new call platform;

13、新通话平台对通知进行响应;13. The new call platform responds to the notification;

14、终端A收到摘机信号;14. Terminal A receives an off-hook signal;

15、VoLTE网络中的终端A向具有SDK的终端A通知摘机事件;15. Terminal A in the VoLTE network notifies terminal A with SDK of the off-hook event;

16、具有SDK的终端A向新通话平台请求新通话服务发起HTTP GET:/,其中携带被叫手机号、主叫身份信息及鉴权相关信息;16. Terminal A with SDK initiates HTTP GET:/ to request new call service from the new call platform, which carries the called party's mobile phone number, caller identity information and authentication related information;

17、新通话平台结合核心网呼叫事件完成业务校验;17. The new call platform completes service verification in conjunction with the core network call events;

18、新通话平台进行鉴权;18. Authentication is performed on the new call platform;

19、向终端A返回新通话服务HTTP 200OK;19. Return new call service HTTP 200OK to terminal A;

20、具有SDK的终端A针对URL做重定向地址修改;20. Terminal A with SDK modifies the URL to redirect the URL;

21、具有SDK的终端A向新通话平台发起HTTP GET://nc.cmcc.xxx(该地址仅用于示意);21. Terminal A with SDK initiates HTTP GET://nc.cmcc.xxx to the new call platform (this address is for illustration only);

22、新通话平台向具有SDK的终端A发送302重定向消息;22. The new call platform sends a 302 redirect message to terminal A with SDK;

23、具有SDK的终端A向新通话应用服务器发起HTTP GET://xxx(该地址仅用于示意);23. Terminal A with SDK initiates HTTP GET://xxx to the new call application server (this address is for illustration only);

24、新通话应用服务器返回HTTP 200OK消息。24. The new call application server returns an HTTP 200OK message.

被叫侧的业务提供流程可以包括:The service provision process on the called side may include:

1、具有SDK的被叫终端B收到VoLTE网络中的终端A发出的Invite消息;1. The called terminal B with SDK receives the Invite message sent by terminal A in the VoLTE network;

2、音视频能力网元向新通话平台发送呼叫事件通知;2. The audio and video capability network element sends a call event notification to the new call platform;

3、新通话平台对通知进行响应;3. The new call platform responds to the notification;

4、新通话平台向新通话应用服务器发起呼叫事件通知;4. The new call platform initiates a call event notification to the new call application server;

5、新通话应用服务器对通知进行响应;5. The new call application server responds to the notification;

6、终端A与终端B主被叫完成初始协商;6. Terminal A and terminal B complete the initial negotiation;

7、具有SDK的终端B向终端A返回180消息;7. Terminal B with SDK returns a 180 message to Terminal A;

8、VoLTE网络中的终端B向具有SDK的终端B发起呼叫事件通知;8. Terminal B in the VoLTE network initiates a call event notification to terminal B with SDK;

9、VoLTE网络中的终端B振铃;9. Terminal B in the VoLTE network rings;

10、具有SDK的终端B向新通话平台请求新通话服务发起HTTP GET:/,其中携带被叫手机号、主叫身份信息及鉴权相关信息;10. Terminal B with SDK initiates HTTP GET:/ to request new call service from the new call platform, which carries the called party's mobile phone number, caller identity information and authentication related information;

11、新通话平台结合核心网呼叫事件完成业务校验;11. The new call platform completes service verification in conjunction with the core network call events;

12、新通话平台进行鉴权;12. The new call platform performs authentication;

13、向终端A返回新通话服务HTTP 200OK;13. Return new call service HTTP 200OK to terminal A;

14、具有SDK的终端B进行通话前服务显示;14. Terminal B with SDK performs pre-call service display;

15、终端A发起摘机流程;15. Terminal A initiates the off-hook process;

16、VoLTE网络中的终端B向具有SDK的终端B发起摘机事件通知;16. Terminal B in the VoLTE network initiates an off-hook event notification to terminal B with SDK;

17、具有SDK的终端B向新通话平台请求新通话服务发起HTTP GET:/,其中携带被叫手机号、主叫身份信息及鉴权相关信息;17. Terminal B with SDK initiates HTTP GET:/ to request new call service from the new call platform, which carries the called party's mobile phone number, caller identity information and authentication related information;

18、新通话平台结合核心网呼叫事件完成业务校验;18. The new call platform completes service verification in conjunction with the core network call events;

19、新通话平台进行鉴权;19. The new call platform is authenticated;

20、向终端A返回新通话服务HTTP 200OK;20. Return a new call service HTTP 200OK to terminal A;

21、具有SDK的终端B进行通话前服务显示。21. Terminal B with SDK performs pre-call service display.

基于同一发明构思,本发明实施例中还提供了一种终端、业务服务器及计算机可读存储介质,由于这些设备解决问题的原理与提供业务的方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。Based on the same inventive concept, a terminal, a service server and a computer-readable storage medium are also provided in the embodiment of the present invention. Since the principles of solving the problems by these devices are similar to the methods of providing services, the implementation of these devices can refer to the implementation of the methods, and the repeated parts will not be repeated.

在实施本发明实施例提供的技术方案时,可以按如下方式实施。When implementing the technical solution provided by the embodiment of the present invention, it can be implemented as follows.

图6为业务服务器结构示意图,如图所示,服务器中包括:FIG6 is a schematic diagram of the business server structure. As shown in the figure, the server includes:

处理器600,用于读取存储器620中的程序,执行下列过程:The processor 600 is used to read the program in the memory 620 and execute the following process:

接收终端发送的业务请求消息;Receiving a service request message sent by a terminal;

向终端推送业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用描述信息或业务应用列表描述信息;Pushing a response message to the service request message to the terminal, wherein the response message is service description information or service application description information or service application list description information;

收发机610,用于在处理器600的控制下接收和发送数据。The transceiver 610 is configured to receive and send data under the control of the processor 600 .

实施中,进一步包括:During implementation, it further includes:

接收当终端确定用户摘机时,向业务服务器发送业务请求消息中的第一业务请求消息。When the terminal determines that the user has picked up the phone, the terminal sends a first service request message in the service request message to the service server.

实施中,进一步包括:During implementation, it further includes:

接收业务服务器向终端推送的业务请求消息中的第一业务请求消息的响应消息;Receiving a response message to a first service request message in the service request message pushed by the service server to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,业务服务器接收的业务请求消息,是终端向业务服务器发起超文本传输协议HTTP请求消息。In implementation, the service request message received by the service server is a Hypertext Transfer Protocol (HTTP) request message initiated by the terminal to the service server.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。In implementation, the HTTP request message initiated to the business server is an HTTP GET request message.

实施中,进一步包括:During implementation, it further includes:

在确定用户未摘机时,在发送给终端的业务请求的响应消息中携带含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。When it is determined that the user has not picked up the phone, the service description information before the call or the service application list description information or the service application description information including the page information and/or the service logic configuration information is carried in the response message of the service request sent to the terminal.

实施中,通话前的业务应用描述信息是基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service application description information before the call is provided based on the HTML application, using HTML language to describe the page framework, CSS to describe the page style, and JS to describe the service logic.

实施中,进一步包括:During implementation, it further includes:

向终端推送第二业务描述或第二业务应用列表描述。Push the second service description or the second service application list description to the terminal.

实施中,进一步包括:During implementation, it further includes:

业务服务器接收终端在发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,接收终端向业务服务器发送的业务请求消息中的第二业务请求消息;The service server receives a second service request message in a service request message sent by the terminal to the service server when one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,向终端推送业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message of the second service request message in the service request message is pushed to the terminal.

实施中,所述业务包括以下业务之一或者其组合:In implementation, the business includes one or a combination of the following businesses:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,业务服务器接收的终端向业务服务器获取第一业务描述的请求,是终端在发生以下事件之一或者其组合时发起的:In implementation, the request received by the service server from the terminal to obtain the first service description is initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器接收的终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息的请求,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, the request received by the service server from the terminal for obtaining service description information or service application list description information or service application description information from the service server is initiated by the terminal through the data channel after the terminal establishes a data channel with the service server.

实施中,业务服务器收到终端发送的获取业务描述请求,与收到订阅的核心网呼叫事件相结合,在与终端的通话业务请求消息匹配后,决定返回给终端的业务请求消息的响应消息。During implementation, the service server receives a service description acquisition request sent by the terminal, combines it with the received subscribed core network call event, and after matching it with the call service request message of the terminal, decides to return a response message to the service request message of the terminal.

实施中,进一步包括根据以下信息之一或者其组合向终端推送业务请求消息的响应消息:In the implementation, it further includes pushing a response message of the service request message to the terminal according to one or a combination of the following information:

终端的通话状态、业务需求、主叫用户身份、被叫用户身份、用户的业务订购关系、用户的业务应用订购关系、呼叫转态、终端归属的业务服务器。The terminal's call status, service requirements, calling user identity, called user identity, user's service subscription relationship, user's service application subscription relationship, call transition status, and the service server to which the terminal belongs.

其中,在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器600代表的一个或多个处理器和存储器620代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机610可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器600负责管理总线架构和通常的处理,存储器620可以存储处理器600在执行操作时所使用的数据。Among them, in Figure 6, the bus architecture can include any number of interconnected buses and bridges, specifically one or more processors represented by processor 600 and various circuits of memory represented by memory 620 are linked together. The bus architecture can also link various other circuits such as peripherals, regulators, and power management circuits together, which are all well known in the art, so they are not further described herein. The bus interface provides an interface. The transceiver 610 can be a plurality of components, that is, including a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium. The processor 600 is responsible for managing the bus architecture and general processing, and the memory 620 can store data used by the processor 600 when performing operations.

本发明实施例中还提供了一种业务服务器,包括:The embodiment of the present invention further provides a service server, including:

业务服务器接收模块,用于接收终端发送的业务请求消息;The service server receiving module is used to receive the service request message sent by the terminal;

业务服务器推送模块,用于向终端推送业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用描述信息或业务应用列表描述信息。The service server push module is used to push a response message of the service request message to the terminal, wherein the response message is service description information or service application description information or service application list description information.

实施中,业务服务器接收模块进一步用于接收当终端确定用户摘机时,向业务服务器发送业务请求消息中的第一业务请求消息。In implementation, the service server receiving module is further used to receive the first service request message in the service request message sent to the service server when the terminal determines that the user has picked up the phone.

实施中,业务服务器推送模块进一步用于业务服务器向终端推送业务请求消息中的第一业务请求消息的响应消息;In implementation, the service server push module is further used for the service server to push a response message of the first service request message in the service request message to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,业务服务器接收模块进一步用于接收终端在通话状态改变后,向业务服务器获取第三业务描述或第三业务应用列表描述的请求。In implementation, the service server receiving module is further used to receive a request from the terminal to obtain the third service description or the third service application list description from the service server after the call state changes.

实施中,业务服务器接收模块进一步用于接收终端在发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,接收终端向业务服务器发送的业务请求消息中的第二业务请求消息;In implementation, the service server receiving module is further used to receive a second service request message in a service request message sent by the receiving terminal to the service server when one of the following events occurs: call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器推送模块进一步用于在终端通话状态改变后,向终端推送业务请求消息中的第二业务请求消息的响应消息。In implementation, the service server push module is further used to push a response message of the second service request message in the service request message to the terminal after the call state of the terminal changes.

实施中,业务服务器接收模块进一步用于接收使用HTTP GET进行的请求。In implementation, the business server receiving module is further used to receive a request made using HTTP GET.

实施中,业务服务器推送模块进一步用于在确定用户未摘机时,在发送给终端的业务请求的响应消息中携带含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。During implementation, the service server push module is further used to carry pre-call service description information or service application list description information or service application description information containing page information and/or service logic configuration information in the response message of the service request sent to the terminal when it is determined that the user has not picked up the phone.

实施中,业务服务器推送模块进一步用于基于HTML应用提供的通话前的业务应用描述信息,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service server push module is further used to describe the page framework using HTML language, the page style using CSS, and the service logic using JS based on the pre-call service application description information provided by the HTML application.

实施中,业务服务器推送模块进一步用于向终端推送第二业务描述或第二业务应用列表描述。In implementation, the service server push module is further used to push the second service description or the second service application list description to the terminal.

实施中,业务服务器接收模块进一步用于接收终端在发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,接收终端向业务服务器发送的业务请求消息中的第二业务请求消息;In implementation, the service server receiving module is further used to receive a second service request message in a service request message sent by the receiving terminal to the service server when one of the following events occurs: call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器推送模块进一步用于向在终端通话状态改变后,向终端推送业务请求消息中的第二业务请求消息的响应消息。In implementation, the service server push module is further used to push a response message of the second service request message in the service request message to the terminal after the call state of the terminal changes.

实施中,业务服务器推送模块进一步用于推送所述业务包括以下业务之一或者其组合:In implementation, the service server push module is further used to push the service including one or a combination of the following services:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,业务服务器接收模块进一步用于接收终端在发生以下事件之一或者其组合时发起的获取第一业务描述的请求:In implementation, the service server receiving module is further used to receive a request for obtaining the first service description initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,业务服务器接收模块进一步用于接收的终端向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息的请求,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。In implementation, the service server receiving module is further used to receive a request from the terminal to obtain service description information or service application list description information or service application description information from the service server, which is initiated by the terminal through the data channel after establishing a data channel with the service server.

实施中,业务服务器接收模块进一步用于收到终端发送的获取业务描述请求,与收到订阅的核心网呼叫事件相结合,在与终端的通话业务请求消息匹配后,决定返回给终端的业务请求消息的响应消息。During implementation, the service server receiving module is further used to receive a service description acquisition request sent by the terminal, combine it with the received subscribed core network call event, and after matching with the call service request message of the terminal, decide to return a response message to the service request message of the terminal.

实施中,业务服务器推送模块进一步用于根据以下信息之一或者其组合向终端推送业务请求消息的响应消息:In implementation, the service server push module is further used to push a response message of the service request message to the terminal according to one or a combination of the following information:

终端的通话状态、业务需求、主叫用户身份、被叫用户身份、用户的业务订购关系、用户的业务应用订购关系、呼叫转态、终端归属的业务服务器。The terminal's call status, service requirements, calling user identity, called user identity, user's service subscription relationship, user's service application subscription relationship, call transition status, and the service server to which the terminal belongs.

为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。For the convenience of description, the various parts of the above-mentioned device are divided into various modules or units according to their functions and described separately. Of course, when implementing the present invention, the functions of each module or unit can be implemented in the same or multiple software or hardware.

图7为终端结构示意图,如图所示,终端包括:FIG7 is a schematic diagram of the terminal structure. As shown in the figure, the terminal includes:

处理器700,用于读取存储器720中的程序,执行下列过程:The processor 700 is used to read the program in the memory 720 and execute the following process:

当终端发生某一呼叫事件时,向业务服务器发送业务请求消息;When a call event occurs at the terminal, a service request message is sent to the service server;

接收业务服务器向终端推送的业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用列表描述信息或业务应用描述信息;Receiving a response message to the service request message pushed by the service server to the terminal, wherein the response message is service description information or service application list description information or service application description information;

根据业务描述信息执行业务处理,或根据业务应用列表描述信息展示可供用户选择使用的业务应用,或根据业务应用描述信息向用户提供业务应用服务;Execute business processing according to the business description information, or display business applications available for users to choose to use according to the business application list description information, or provide business application services to users according to the business application description information;

收发机710,用于在处理器700的控制下接收和发送数据。The transceiver 710 is configured to receive and send data under the control of the processor 700 .

实施中,进一步包括:During implementation, it further includes:

当终端确定用户摘机时,终端向业务服务器发送业务请求消息中的第一业务请求消息。When the terminal determines that the user has picked up the phone, the terminal sends a first service request message in the service request messages to the service server.

实施中,进一步包括:During implementation, it further includes:

接收业务服务器向终端推送的业务请求消息中的第一业务请求消息的响应消息;Receiving a response message to a first service request message in the service request message pushed by the service server to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,业务服务器接收的业务请求消息,是终端向业务服务器发起超文本传输协议HTTP请求消息。In implementation, the service request message received by the service server is a Hypertext Transfer Protocol (HTTP) request message initiated by the terminal to the service server.

实施中,向业务服务器发起的HTTP请求消息,是HTTP GET请求消息。In implementation, the HTTP request message initiated to the business server is an HTTP GET request message.

实施中,进一步包括:During implementation, it further includes:

接收在业务服务器确定用户未摘机时,在业务请求的响应消息中携带的含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。The service description information before the call or the service application list description information or the service application description information containing the page information and/or the service logic configuration information carried in the response message of the service request is received when the service server determines that the user has not picked up the phone.

实施中,通话前的业务应用描述信息是基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑。In implementation, the service application description information before the call is provided based on the HTML application, using HTML language to describe the page framework, CSS to describe the page style, and JS to describe the service logic.

实施中,进一步包括:During implementation, it further includes:

收到通过数据通道传输的业务服务的响应消息后,根据业务应用列表描述信息或业务应用描述信息,以Webview形式呈现给用户。After receiving the response message of the business service transmitted through the data channel, it is presented to the user in the form of Webview according to the business application list description information or the business application description information.

实施中,进一步包括:During implementation, it further includes:

接收业务服务器向终端推送的第二业务描述或第二业务应用列表描述。Receive the second service description or the second service application list description pushed by the service server to the terminal.

实施中,进一步包括:During implementation, it further includes:

在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,终端向业务服务器发送业务请求消息中的第二业务请求消息;When one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal, the terminal sends a second service request message in the service request message to the service server;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,进一步包括:During implementation, it further includes:

在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。After the call state of the terminal changes, a response message to the second service request message in the service request message pushed by the service server to the terminal is received.

实施中,所述业务包括以下业务之一或者其组合:In implementation, the business includes one or a combination of the following businesses:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,向业务服务器获取第一业务描述,是终端在发生以下事件之一或者其组合时发起的:In implementation, obtaining the first service description from the service server is initiated by the terminal when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,向业务服务器获取业务描述信息或业务应用列表描述信息或业务应用描述信息,是终端在建立与业务服务器之间的数据通道后,通过所述数据通道发起的。。In implementation, obtaining the service description information or the service application list description information or the service application description information from the service server is initiated by the terminal through the data channel after the terminal establishes a data channel with the service server.

其中,在图7中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器700代表的一个或多个处理器和存储器720代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机710可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接口730还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。Among them, in Figure 7, the bus architecture may include any number of interconnected buses and bridges, specifically one or more processors represented by processor 700 and various circuits of memory represented by memory 720 are linked together. The bus architecture can also link various other circuits such as peripherals, regulators, and power management circuits together, which are all well known in the art and are therefore not further described herein. The bus interface provides an interface. The transceiver 710 can be a plurality of components, namely, a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium. For different user devices, the user interface 730 can also be an interface that can be connected to external or internal devices, and the connected devices include but are not limited to keypads, displays, speakers, microphones, joysticks, etc.

处理器700负责管理总线架构和通常的处理,存储器720可以存储处理器700在执行操作时所使用的数据。The processor 700 is responsible for managing the bus architecture and general processing, and the memory 720 can store data used by the processor 700 when performing operations.

本发明实施例中还提供了一种终端,包括:An embodiment of the present invention further provides a terminal, including:

终端获取模块,用于当终端发生某一呼叫事件时,向业务服务器发送业务请求消息;The terminal acquisition module is used to send a service request message to the service server when a call event occurs in the terminal;

终端接收模块,用于接收业务服务器向终端推送的业务请求消息的响应消息,所述响应消息为业务描述信息或业务应用列表描述信息或业务应用描述信息;The terminal receiving module is used to receive a response message to the service request message pushed by the service server to the terminal, wherein the response message is service description information or service application list description information or service application description information;

终端服务模块,用于根据业务描述信息执行业务处理,或根据业务应用列表描述信息展示可供用户选择使用的业务应用,或根据业务应用描述信息向用户提供业务应用服务。The terminal service module is used to perform business processing according to the business description information, or to display business applications available for users to choose to use according to the business application list description information, or to provide business application services to users according to the business application description information.

实施中,终端获取模块进一步用于当终端确定用户摘机时,向业务服务器发送业务请求消息中的第一业务请求消息。In implementation, the terminal acquisition module is further used to send the first service request message in the service request message to the service server when the terminal determines that the user has picked up the phone.

实施中,终端获取模块进一步用于接收业务服务器向终端推送的业务请求消息中的第一业务请求消息的响应消息;In implementation, the terminal acquisition module is further used to receive a response message to the first service request message in the service request message pushed by the service server to the terminal;

所述第一业务请求消息的响应消息中携带含页面信息和/或业务逻辑配置信息的通话中的业务描述信息或业务应用列表描述信息或业务应用描述信息。The response message to the first service request message carries service description information or service application list description information or service application description information in the call including page information and/or service logic configuration information.

实施中,终端获取模块进一步用于在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,向业务服务器发送业务请求消息中的第二业务请求消息;In implementation, the terminal acquisition module is further used to send the second service request message in the service request message to the service server when one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,终端接收模块进一步用于在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。In implementation, the terminal receiving module is further used to receive a response message to the second service request message in the service request message pushed by the service server to the terminal after the call state of the terminal changes.

实施中,终端获取模块进一步用于向业务服务器发起的业务请求消息,是终端向业务服务器发起的HTTP请求消息。In implementation, the terminal acquisition module is further used to initiate a service request message to the service server, which is an HTTP request message initiated by the terminal to the service server.

实施中,终端获取模块进一步用于向业务服务器发起的HTTP请求消息,是HTTPGET请求消息。In implementation, the terminal acquisition module is further used to initiate an HTTP request message to the business server, which is an HTTP GET request message.

实施中,终端接收模块进一步用于接收在业务服务器确定用户未摘机时,在业务请求的响应消息中携带的含页面信息和/或业务逻辑配置信息的通话前的业务描述信息或业务应用列表描述信息或业务应用描述信息。In implementation, the terminal receiving module is further used to receive pre-call service description information or service application list description information or service application description information containing page information and/or service logic configuration information carried in the response message of the service request when the service server determines that the user has not picked up the phone.

实施中,终端接收模块进一步用于接收基于HTML应用提供的,使用HTML语言描述页面框架、CSS描述页面样式、以及JS描述业务逻辑的通话前的业务应用描述信息。In implementation, the terminal receiving module is further used to receive pre-call business application description information provided based on the HTML application, which uses HTML language to describe the page framework, CSS to describe the page style, and JS to describe the business logic.

实施中,终端服务模块进一步用于在收到通过数据通道传输的业务服务的响应消息后,根据业务应用列表描述信息或业务应用描述信息,以Webview形式呈现给用户。During implementation, the terminal service module is further used to present the response message of the business service transmitted through the data channel to the user in the form of Webview according to the business application list description information or the business application description information.

实施中,终端接收模块进一步用于接收业务服务器向终端推送的第二业务描述或第二业务应用列表描述。In implementation, the terminal receiving module is further used to receive the second service description or the second service application list description pushed by the service server to the terminal.

实施中,终端获取模块进一步用于在终端发生呼叫遇忙、呼叫不可及、呼叫无应答、呼叫前转、呼叫保持、呼叫等待或建立了一条新的数据通道事件之一时,向业务服务器发送业务请求消息中的第二业务请求消息;In implementation, the terminal acquisition module is further used to send the second service request message in the service request message to the service server when one of the events of call busy, call unreachable, call unanswered, call forwarding, call holding, call waiting, or establishment of a new data channel occurs at the terminal;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,终端接收模块进一步用于在终端通话状态改变后,接收业务服务器向终端推送的业务请求消息中的第二业务请求消息的响应消息。In implementation, the terminal receiving module is further used to receive a response message to the second service request message in the service request message pushed by the service server to the terminal after the call state of the terminal changes.

实施中,终端获取模块进一步用于获取的所述业务包括以下业务之一或者其组合:In implementation, the terminal acquisition module is further used to acquire the following services:

需要所述终端根据业务描述信息执行业务处理后,发送业务请求消息中的第四业务请求消息,用以获取业务应用列表信息或者业务应用描述信息的业务;The terminal is required to send a fourth service request message in the service request message after performing service processing according to the service description information, so as to obtain service application list information or service application description information;

需要用户从业务应用列表中选择一个业务应用后,根据用户选择的内容发送业务请求消息中的第五业务请求消息,用以获取业务应用描述信息的业务;A service that requires a user to select a service application from a service application list and then send a fifth service request message in the service request message according to the content selected by the user to obtain the service application description information;

所述终端根据业务应用描述信息完成业务应用的界面显示和业务应用的业务逻辑的业务。The terminal completes the interface display of the business application and the business logic of the business application according to the business application description information.

实施中,终端获取模块进一步用于在发生以下事件之一或者其组合时发起向业务服务器获取第一业务描述:In implementation, the terminal acquisition module is further used to initiate acquisition of the first service description from the service server when one of the following events or a combination thereof occurs:

拨号事件、发送呼叫请求消息事件、收到呼叫请求消息事件、振铃事件、摘机事件、呼叫遇忙事件、呼叫不可及事件、呼叫无应答事件、呼叫前转事件、呼叫保持事件、呼叫等待事件、或数据通道建立事件;Dialing event, sending call request message event, receiving call request message event, ringing event, off-hook event, call busy event, call unreachable event, call no answer event, call forwarding event, call holding event, call waiting event, or data channel establishment event;

所述数据通道是用于在所述呼叫过程中传输所述业务数据的数据通道。The data channel is a data channel used to transmit the service data during the call.

实施中,终端获取模块进一步用于在建立与业务服务器之间的数据通道后向业务服务器获取第一业务描述。In implementation, the terminal acquisition module is further used to acquire the first service description from the service server after establishing a data channel with the service server.

为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。For the convenience of description, the various parts of the above-mentioned device are divided into various modules or units according to their functions and described separately. Of course, when implementing the present invention, the functions of each module or unit can be implemented in the same or multiple software or hardware.

本发明实施例中还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行上述终端侧和/或业务服务器侧的提供业务的方法的计算机程序。A computer-readable storage medium is also provided in an embodiment of the present invention, characterized in that the computer-readable storage medium stores a computer program for executing the method for providing services on the terminal side and/or the service server side.

具体实施可以参见终端侧和/或业务服务器侧的提供业务的方法的实施。For specific implementation, please refer to the implementation of the method for providing services on the terminal side and/or the service server side.

综上所述,在本发明实施例提供的技术方案中,通过应用列表,在通话过程中可以为用户实现多种附加业务。In summary, in the technical solution provided by the embodiment of the present invention, a variety of additional services can be implemented for the user during a call through the application list.

提供了避免附加业务应用随意向用户推送骚扰信息的方案。A solution is provided to prevent additional business applications from randomly pushing harassing information to users.

提供了解决避免多种附加业务相互冲突的方案。A solution is provided to avoid conflicts among multiple additional services.

可以在通话中提供更加丰富的附加业务。Richer additional services can be provided during calls.

图8为业务应用列表显示示意图1,如图所示,将本发明实施例提供的方案用于5G新通话业务中时,支持5G新通话业务的终端,在拨打电话时,将建立一条数据通道通道,通过该通道向终端推送5G新通话相关业务应用列表;也可能不建立通道,直接发起请求,传输数据。用户可在该业务应用列表中选择5G新通话功能。FIG8 is a schematic diagram 1 showing a service application list. As shown in the figure, when the solution provided by the embodiment of the present invention is used in the 5G new call service, a terminal supporting the 5G new call service will establish a data channel when making a call, and push the 5G new call related service application list to the terminal through the channel; or it may not establish a channel, directly initiate a request, and transmit data. The user can select the 5G new call function in the service application list.

当某个通话状态中,存在多个附加业务可供用户选择使用时,通话附加业务控制平台可通过业务应用列表的形式向用户提供通话附加业务。用户选择(点击)某个通话附加业务后,终端向通话附加业务控制平台反馈用户的选择,平台根据业务逻辑返回下一级通话附加业务交互界面。When there are multiple additional services available for users to choose from in a call state, the call additional service control platform can provide the user with call additional services in the form of a service application list. After the user selects (clicks) a call additional service, the terminal feedbacks the user's selection to the call additional service control platform, and the platform returns to the next level of call additional service interaction interface according to the business logic.

图9为业务应用列表显示示意图2,如图所示,黑色框框部分为网络侧推送的附加业务应用列表,该列表可以直接展示部分常用/用户设置的常用的新通话应用,同时还可以提供更多业务入口,如图框中的省略号按钮,用户点击后,可以访问更多应用,如图右侧界面所示。Figure 9 is a schematic diagram 2 of the business application list display. As shown in the figure, the black frame part is the additional business application list pushed by the network side. The list can directly display some commonly used/user-set commonly used new call applications, and can also provide more business entrances, such as the ellipsis button in the frame. After the user clicks it, he can access more applications, as shown in the interface on the right side of the figure.

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) containing computer-usable program code.

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention is described with reference to the flowchart and/or block diagram of the method, device (system), and computer program product according to the embodiment of the present invention. It should be understood that each process and/or box in the flowchart and/or block diagram, as well as the combination of the process and/or box in the flowchart and/or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device that implements the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions may also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。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 equivalents, the present invention is also intended to include these modifications and variations.