Method, system and equipment for preventing repeated service triggering
Technical Field
The present invention relates to a service triggering technology, and in particular, to a method, a system, and a device for preventing repeated service triggering.
Background
A Soft Switch (SS) device serves as a core control device of a Next Generation Network (NGN) and plays a core control role in the process of fixed network intellectualization. The intelligent Home location register (SHLR) is introduced under the soft switch system architecture, so that the centralized management of the fixed network user data can be realized, and the flexible triggering of the service and the control of the service logic relationship are facilitated.
The networking structure of the existing soft Switch system is shown in fig. 1, an end office (LS, Local Switch) accesses an IP network through a relay Gateway (TG, Trunk Gateway) and a Signaling Gateway (SG), and is connected to an SS device; the SHLR is used for storing information such as user numbers and intelligent services signed by the users; an Application Server (APP) provides intelligent services, such as a one-number service and a color ring service, for a user. The SS device interacts with the SHLR through an Integrated service digital Network User Part (ISUP) Protocol or an extended Mobile Application Part (MAP) Protocol, queries the information of the calling and called numbers and the intelligent service information, interacts with the APP through a Session Initiation Protocol (SIP), and triggers the APP to implement a corresponding intelligent service.
The one-number service means that a user provides a unique number for the outside, the number can be a virtual number or a common local telephone number, the user can bind numbers such as a fixed telephone, a mobile phone, a personal handphone system and the like through the one-number service platform, and call forwarding is carried out to a destination number appointed by the user through setting different routes under different conditions. Therefore, as long as an external number is called by a friend, the service platform can ring various communication terminals according to a calling sequence currently set by the user. For example: firstly, calling the office fixed telephone, and if no one answers, continuing to call the mobile phone until the mobile phone is connected. Of course, the bound numbers can be set to ring at the same time, and also can be set to ring in sequence.
Taking the one-number service as an example, assuming that the calling number does not sign any intelligent service, but the called number a signs the one-number service, and the parallel operation number bound to the number a in the one-number service is the number B, and the number B does not sign any intelligent service, the flow of implementing the one-number service in the prior art mainly includes the following steps, as shown in fig. 2:
step 201, the calling party initiates a call through LS1, and LS1 sends an Initial Address Message (IAM) to the SS device, where the sent IAM Message carries the routing number of the calling party and the called party number a.
The routing number is a call routing identifier set by an operator for realizing successful call, and the routing number is not open to the user and is therefore invisible to the user.
Step 202, after receiving the IAM message from LS1, the SS device sends a Routing Information (SRI) to the SHLR, where the sent SRI message carries the Routing number of the calling party and the called number a.
Step 203, the SHLR inquires a calling number corresponding to the routing number of the calling party in its own database, inquires that the calling party has not signed a one-number service according to the calling number, inquires that the called number a has signed a one-number service according to the called number a, and then carries the inquired one-number service access code and the calling number in an SRI acknowledge (SRIAck) message to send to the SS device.
Step 204, the SS device sends the obtained called one-number service access code, called number a and calling number carried in an initial call request (invite) message to the APP.
In step 205, the APP queries the number binding relationship in its own database to obtain the parallel operation number bound with the called number a as a number B.
Step 206, the APP implements the called one number service, and sends an invite message to the SS device, where the sent invite message carries the called number a and the called one number service access code.
Step 207, the SS device sends an SRI message to the SHLR, where the sent SRI message carries the calling number, the called one-number service access code, and the called number a.
And step 208, the SHLR acquires the routing number corresponding to the called number a according to the called one-number service access code and the called number a, and carries the routing number of the called number a in the SRIAck message to send to the SS device.
Step 209, the SS device continues the routing number of the called number a, and sends an IAM message carrying the routing numbers of the calling number and the called number a to the LS2 corresponding to the called, thereby implementing the call to the called number a.
Step 210, the APP implements the called one number service, and sends an invite message to the SS device, where the sent invite message carries the called number a, the called number B queried in step 205, and the called one number service access code.
Step 211, the SS device compares the called number B with the called number a to determine that the called number is changed; then sending SRI message to SHLR, where the sent SRI message carries called number B and calling number 0.
The SS device determines that the called number is changed into number B, and then needs to query the intelligent service information signed by number B through the SHLR, and at this time, the intelligent service of the calling number is already implemented, and there is no need for the SHLR to query the intelligent service information signed by the calling number, so that, in order to prevent repeated triggering of the intelligent service of the calling number, the calling number in the SRI message sent to the SHLR needs to be set to null, which means that the intelligent service information of the calling number is not queried, and only the intelligent service information signed by called number B is queried.
Step 212, the SHLR determines the intelligent service without querying the calling number according to the calling number being 0, queries its own database according to the called number B, determines that the called number B does not sign the intelligent service, and then carries the routing number of the called number B in an SRIAck message to send to the SS device.
Step 213, the SS device continues the routing number of the called number B, and sends an IAM message carrying the routing numbers of the calling number and the called number B to the LS2 corresponding to the called, thereby implementing the call to the called number B.
It should be noted that, the above step 206 and step 210 have no fixed sequence, and may be executed simultaneously or sequentially.
In addition, as can be seen from the above step 211, it is critical to determine whether the called number is changed in order to prevent the repeated triggering of the intelligent service. However, the method for determining whether the called number changes in the prior art shown in fig. 2 is as follows: when SS equipment sends an invite message to an APP, a field is newly added in a header field of the invite message, and the field is used for carrying current called number information and is a number A; the APP processes the invite message from the SS device, and transparently transmits a newly added field through the invite message returned to the SS device, wherein the field carries a called number A and inquires a called number B; and the SS equipment analyzes the newly added field, and compares the obtained called number B with the called number A, thereby determining that the called number is changed.
In summary, in the method for preventing repeated service triggering in the prior art, when determining whether a called number changes, the SIP protocol needs to be extended to add corresponding fields, so that the APP needs to modify the existing flow to transparently transmit the newly added fields, and the SS device needs to modify the existing flow to analyze the newly added fields, thereby making the implementation operation complicated and the implementation cost high.
Disclosure of Invention
In view of this, the main objective of the present invention is to provide a method, a system and a device for preventing repeated service triggering, so as to solve the problems in the prior art that the method for preventing repeated service triggering is complex in implementation operation and high in implementation cost.
In order to achieve the purpose, the technical scheme of the invention is realized as follows:
the invention provides a method for preventing repeated triggering of a service, which comprises the following steps:
the application server APP determines whether the service needs to change the called number according to the initial call request message from the soft switch device, specifically: analyzing the initial call request message from the soft switch equipment to obtain a calling number, a called number and an intelligent service access code signed by the called number; inquiring corresponding intelligent service according to the intelligent service access code signed by the called number, and acquiring the called number of the intelligent service; comparing the called number of the intelligent service with the called number in the initial call request message from the soft switch equipment, and if the two are the same, determining that the intelligent service does not need to change the called number; otherwise, determining that the intelligent service needs to change the called number;
when determining that the service needs to change the called number, the APP sets a called number change flag bit, and sends an initial call request message carrying the called number change flag bit to the soft switch device, specifically: setting the change flag bit of the called number in the service code SC field of the initial call request message header field; sending an initial call request message carrying the called number change flag bit and the intelligent service called number to the soft switch device; the soft switch equipment analyzes the initial call request message from the application server, determines whether a called number change flag bit in the initial call request message is set, and sends a sending routing message SRI carrying a calling number as null to an intelligent home location register SHLR when determining that the called number change flag bit is set.
The invention also provides a system for preventing repeated triggering of services, which comprises: the application server and the soft switch device are connected with each other; wherein,
the application server is configured to determine whether a service needs to change a called number according to an initial call request message from the soft switch device, and send an initial call request message carrying a change flag bit of the called number to the soft switch device when it is determined that the service needs to change the called number, specifically: setting the change flag bit of the called number in the SC field of the initial call request message header field; sending an initial call request message carrying the called number change flag bit and the intelligent service called number to the soft switch device;
the soft switch device is used for analyzing the initial call request message from the application server, determining whether a called number change flag bit in the initial call request message is set, and sending an SRI message carrying an empty calling number to an SHLR when determining that the called number change flag bit is set;
the application server includes: the system comprises a number change requirement determining module and an initial call request message sending module which are connected with each other; the number change requirement determining module is used for determining whether the service needs to change the called number according to the initial call request message from the soft switch equipment; the initial call request message sending module is configured to send an initial call request message carrying a called number change flag bit to the soft switch device when it is determined that the service needs to change a called number;
the number change requirement determining module further comprises: the system comprises a message analysis submodule, a service called number acquisition submodule and a comparison submodule; the message analysis submodule is used for analyzing an initial call request message from the soft switch equipment to obtain a calling number, a called number and an intelligent service access code signed by the called number; the service called number acquisition submodule is connected with the message analysis submodule and is used for inquiring the corresponding intelligent service according to the intelligent service access code signed by the called number so as to acquire the called number of the intelligent service; the comparison submodule is connected with the service called number acquisition submodule and is used for comparing the called number of the intelligent service with the called number in the initial call request message from the soft switch equipment, and if the called number and the called number are the same, the intelligent service is determined not to need to change the called number; if the two are different, the intelligent service needs to change the called number.
The soft switch device includes: the message analysis module and the SRI message sending module are connected with each other; wherein,
the message analysis module is used for analyzing the initial call request message from the application server and determining whether a called number change flag bit in the initial call request message is set;
and the SRI message sending module is used for sending the SRI message carrying the empty calling number to the SHLR when the position of the called number change flag is determined.
The present invention also provides an application server, comprising: the system comprises a number change requirement determining module and an initial call request message sending module which are connected with each other; wherein,
the number change requirement determining module is used for determining whether the service needs to change the called number according to the initial call request message from the soft switch equipment;
the initial call request message sending module is configured to send an initial call request message carrying a change flag bit of a called number to the soft switch device when it is determined that the service needs to change the called number, specifically: setting the change flag bit of the called number in the SC field of the initial call request message header field; sending the initial call request message carrying the called number change flag bit and the intelligent service called number to the soft switch device, so that the soft switch device can analyze the initial call request message from the initial call request message sending module, determine whether the called number change flag bit in the initial call request message is set, and send the SRI carrying the calling number as empty to the SHLR when determining that the called number change flag bit is set.
The number change requirement determining module comprises: the intelligent service system comprises a message analysis submodule, an intelligent service called number acquisition submodule and a comparison submodule; wherein,
the message analysis submodule is used for analyzing the initial call request message from the soft switch equipment to obtain a calling number, a called number and an intelligent service access code signed by the called number;
the intelligent service called number acquisition submodule is used for inquiring a corresponding intelligent service according to an intelligent service access code signed by the called number and acquiring a called number of the intelligent service;
the comparison submodule is used for comparing the called number of the intelligent service with the called number in the initial call request message from the soft switch equipment and determining whether the intelligent service needs to change the called number according to whether the two are the same.
The present invention also provides a soft switch device, comprising: the message analysis module and the SRI message sending module are connected with each other; wherein,
the message analysis module is used for analyzing the SC field of the initial call request message header field from the application server and determining whether the change flag bit of the called number in the initial call request message is set;
the SRI message sending module is used for sending the SRI message to the called party when the change flag bit of the called number is determined to be set
SRI information carrying empty calling number is sent to SHLR;
wherein the initial call request message from the application server is generated by:
the application server analyzes the initial call request message from the soft switch equipment to obtain a calling number, a called number and an intelligent service access code signed by the called number; inquiring corresponding intelligent service according to the intelligent service access code signed by the called number, and acquiring the called number of the intelligent service; comparing the called number of the intelligent service with the called number in the initial call request message from the soft switch equipment, and if the two are the same, determining that the intelligent service does not need to change the called number; otherwise, determining that the intelligent service needs to change the called number;
when determining that the service needs to change the called number, the APP sets the called number change flag bit in the service code SC field of the initial call request message header field, and sends the initial call request message carrying the called number change flag bit and the intelligent service called number to the soft switch device.
The method, the system and the equipment for preventing the repeated triggering of the service provided by the invention are characterized in that an APP determines whether the corresponding intelligent service needs to change the called number according to the invite message from SS equipment, and sends the invite message carrying the change flag bit of the called number to the SS equipment when the called number needs to be changed, so that the SS equipment can set the change flag bit of the called number to be empty, and send the calling number to an SHLR, thereby avoiding the repeated triggering of the service; the change flag bit of the called number is arranged in the SC field of the invite message header field, the SIP protocol does not need to be expanded, the implementation operation is simplified, and the implementation cost is reduced.
Drawings
FIG. 1 is a schematic diagram of a networking architecture of a conventional soft switch architecture;
fig. 2 is a flow chart of implementing a one-number service in the prior art;
fig. 3 is a flowchart of the method for preventing repeated service triggering implemented at the APP side according to the present invention;
fig. 4 is a flowchart of the method for preventing repeated service triggering implemented on the SS device side according to the present invention;
fig. 5 is a flowchart of a soft switch implementing a one number service in an embodiment of the present invention;
fig. 6 is a schematic diagram of a system configuration for preventing repeated service triggering according to the present invention.
Detailed Description
The technical solution of the present invention is further elaborated below with reference to the drawings and the specific embodiments.
The method for preventing the repeated triggering of the service determines whether the corresponding intelligent service needs to change the called number or not by the APP according to the invite message from the SS device, and sends the invite message carrying the change flag bit of the called number to the SS device when the called number needs to be changed, so that the SS device can send the calling number with the change flag bit of the called number set to be empty to the SHLR, thereby avoiding the repeated triggering of the service.
As shown in fig. 3, fig. 3 is a flowchart of the method for preventing repeated service triggering implemented at the APP side, and mainly includes the following steps:
step 301, the APP determines whether the service needs to change the called number according to the invite message from the SS device.
The APP analyzes the invite message from the SS device to obtain a calling number, a called number and an intelligent service access code signed by the called number; inquiring corresponding intelligent service in a self database according to the intelligent service access code signed by the called number to acquire the called number of the intelligent service; then comparing the called number of the intelligent service with the called number in the invite message from the SS device, and if the two are the same, determining that the intelligent service does not need to change the called number; if the two are different, the intelligent service needs to change the called number.
Step 302, when determining that the service needs to change the called number, the APP sets a called number change flag bit, and sends an invite message carrying the called number change flag bit to the SS device.
And when the APP determines that the service needs to change the called number, the changed zone bit of the called number is set, and the invite message carrying the changed zone bit of the called number and the called number of the intelligent service is sent to the SS device.
As shown in fig. 4, fig. 4 is a flowchart implemented by the method for preventing repeated service triggering at the SS device side of the present invention, which mainly includes the following steps:
step 401, the SS device parses the invite message from the APP to determine whether the change flag bit of the called number in the invite message is set.
Step 402, when the SS device determines that the called number changes the flag bit, it sends the SRI message carrying the empty calling number to the SHLR.
The SHLR receives the SRI message, analyzes the SRI message to obtain that the calling number is null, and indicates that the service information of the calling number does not need to be inquired, thereby avoiding the repeated triggering of the intelligent service of the calling number.
In the following, a one-number service is taken as an example, in this embodiment, the calling number does not sign any intelligent service, the called number a signs the one-number service, and a parallel machine number bound to the number a in the one-number service is a number B, and the number B also does not sign any intelligent service. The method for preventing repeated service triggering according to the present invention shown in fig. 3 and fig. 4 is applied to a one number service flow chart implemented in a one number service, and as shown in fig. 5, mainly includes the following steps:
step 501, the calling party initiates a call through LS1, LS1 sends an IAM message to the SS device, and the sent IAM message carries the routing number of the calling number and the called number a.
Step 502, after receiving IAM message from LS1, SS device sends SRI message to SHLR, where the sent SRI message carries the routing number of the calling party and called number a.
Step 503, the SHLR queries the calling number corresponding to the routing number of the calling party in its own database, queries that the calling party has not signed a one-number service according to the calling number, queries that the called number a has signed a one-number service according to the called number a, and then carries the queried called one-number service access code and the calling number in an SRIAck message to send to the SS device.
Step 504, the SS device sends the obtained called one number service access code, called number a and calling number carried in invite message to the APP.
And 505, the APP queries the number binding relationship in the database of the APP to obtain the parallel machine number bound with the called number A as a number B.
Step 506, the APP realizes the called one number service, and sends an invite message to the SS device, wherein the sent invite message carries the called number A and the called one number service access code.
Step 507, the SS device sends an SRI message to the SHLR, where the sent SRI message carries the calling number, the called one-number service access code, and the called number a.
And step 508, the SHLR acquires the routing number corresponding to the called number a according to the called one-number service access code and the called number a, and carries the routing number of the called number a in the SRIAck message to send to the SS device.
Step 509, the SS device continues the routing number of the called number a, and sends an IAM message carrying the routing number of the calling number and the called number a to the LS2 corresponding to the called, thereby implementing the call to the called number a.
Step 510, the APP compares the called number B obtained by querying in step 505 with the called number a carried in the invite message from the SS device, and finds that the two are different, thereby determining that the called number needs to be changed for the one-number service; then, a change flag bit of the called number in an SC field of an invite message header field is set, and an invite message carrying the change flag bit of the called number, a one-number service access code and a called number B is sent to the SS device.
Step 511, the SS device analyzes the SC field of the invite message header field, obtains a called number change flag bit, determines that the called number has changed, and sets the carried calling number to 0; then sends the SRI message carrying the called number B and the calling number 0 to the SHLR.
And step 512, the SHLR judges that the calling party has not signed a number one service according to the calling number being 0, and continuously inquires that the called party has not signed any intelligent service according to the called number B, and then carries the routing number of the called number B in an SRIAck message and sends the SRIAck message to the SS device.
Step 513, the SS device continues the routing number of the called number B, and sends an IAM message carrying the routing numbers of the calling number and the called number B to the LS2 corresponding to the called, thereby implementing the call to the called number B.
In order to implement the method for preventing repeated triggering of a service of the present invention, the present invention further provides a system for preventing repeated triggering of a service, as shown in fig. 6, the system includes: an application server 10 and a softswitch 20 connected to each other. The application server 10 is configured to determine whether the service needs to change the called number according to the invite message from the soft switch device 20, and send the invite message carrying the change flag of the called number to the soft switch device 20 when it is determined that the service needs to change the called number. The softswitch 20 is configured to parse the invite message from the application server 10 to determine whether a called number change flag bit in the invite message is set, and send an SRI message carrying a null calling number to the SHLR when it is determined that the called number change flag bit is set.
The application server 10 includes: a number change requirement determining module 11 and a message transmitting module 12 connected to each other. A number change requirement determining module 11, configured to determine whether the service needs to change the called number according to the invite message from the soft switch device 20. A message sending module 12, configured to send an initial invite message carrying a change flag of a called number to the soft switch device 20 when the number change requirement determining module 11 determines that a service needs to change the called number.
The number change requirement determining module 11 further includes: a message parsing sub-module 111, a service called number obtaining sub-module 112 and a comparison sub-module 113. The message parsing sub-module 111 is configured to parse the invite message from the soft switch device 200 to obtain the calling number, the called number, and an intelligent service access code signed by the called number. And the service called number obtaining submodule 112 is connected with the message parsing submodule 111, and is configured to query a corresponding intelligent service according to an intelligent service access code signed by a called number, so as to obtain a called number of the intelligent service. A comparison submodule 113, connected to the service called number obtaining submodule 112, for comparing the called number of the intelligent service with the called number in the invite message from the soft switch device 20, and if the two are the same, determining that the intelligent service does not need to change the called number; if the two are different, the intelligent service needs to change the called number.
The soft switch device 20 includes: a message parsing module 21 and an SRI message sending module 22 connected to each other. The message parsing module 21 is configured to parse the invite message from the application server 11 to determine whether a called number change flag bit in the invite message is set. And the SRI message sending module 22 is configured to send, when it is determined that the called number change flag bit is set, an SRI message carrying that the calling number is null to the SHLR.
It should be noted that the application range of the method, system and device for preventing the repeated triggering of the service provided by the invention is not limited to the one-number service, but also applicable to other intelligent services; and according to the service requirement in practical application, the SC field can also be used for setting other zone bits, and is not limited to the change of the zone bit by the called number in the invention, so that the service control is more flexible.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention.