GB2527144A - Session Handling in a Communications Network - Google Patents

Session Handling in a Communications Network Download PDF

Info

Publication number
GB2527144A
GB2527144A GB1413049.6A GB201413049A GB2527144A GB 2527144 A GB2527144 A GB 2527144A GB 201413049 A GB201413049 A GB 201413049A GB 2527144 A GB2527144 A GB 2527144A
Authority
GB
United Kingdom
Prior art keywords
session
database
function
identified
handling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB1413049.6A
Other versions
GB201413049D0 (en
Inventor
Gabor Morvay
Mihaly Zachar
Oszkar Kmetti
Sandor Szabo
Balint Kovacs
Viktor Kondor
Otto Ursinyi
Balazs Vendeg
Szabolcs Grof
Karako Csinsi
Robert Szokovacs
Tibor Velencei
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GAMMA TELECOM Ltd
Original Assignee
GAMMA TELECOM Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GAMMA TELECOM Ltd filed Critical GAMMA TELECOM Ltd
Priority to GB1413049.6A priority Critical patent/GB2527144A/en
Publication of GB201413049D0 publication Critical patent/GB201413049D0/en
Publication of GB2527144A publication Critical patent/GB2527144A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1046Call controllers; Call servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42136Administration or customisation of services

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A first session handling function 1 receives a message identifying a communications session, retrieves information relating to the identified session from a database 3, and applies at least one session handling rule to the session. The first session handling function sends an update message to the database, the update message including information relating to the effect of the rule applied to the identified session. A further message is sent to a second session handling function 2, the second message identifying the session but not including information relating to the effect of the rule applied to the identified session. The second session handling function then retrieves state information for the session from the database and applies a session handling rule. By storing and maintaining the state information at the database, a network of session handling functions becomes much more scalable and more robust in the event of failure of one of the session handling functions.

Description

Session Handling in a Communications Network
TECHNICAL FIELD
The present invention relates to the field of session handling in a communications network, and in particular to maintaining session state information when handling a session in a communications network.
BACKGROUND
In a communications network, a user has a subscription that is associated with an identifier. For example, an E.164 number is an identifier that is associated with a subscription. A communications service provider might allow the owner (the subscriber) of a subscription to set rules that can be applied to both incoming and outgoing sessions. In an example where the session is a voice call, rules might relate to, for example, call routing, voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, call whisper (a service in which one of the call parties is provided with information about the other call party) and Interactive Voice Response.
Taking the example of an incoming call to an E.164 number, the call is handled by various call functions to determine whether any rules should be applied to the call. For example, a subscriber may have more one device on which the call can be received. If one device is a fixed line telephone, and the other device is a mobile telephone, a rule may be set up so that an incoming call will ring first one the fixed line telephone and, if it is not answered within a predetermined time, is then transferred to the mobile telephone. This is a very simple example of call routing. More complex rules can be set up that take into account factors such as the time of day, the date, whether the subscriber is engaged in another call, whether the subscriber's calendar shows that the subscriber is in a meeting and so on.
Other call handling functions may be used, such as voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, Interactive Voice Response, Add Hunt Group, call whisper and call recording.
When the incoming call is received a message relating to the call is passed from one call handling function to another. As each call handling function applies a rule, the data within the message is changed before it is passed on to the next call handling function.
Once the message has passed through each call handling function, a final action is taken on the call, such as ringing on a particular device, activating voicemail, playing a busy tone and so on.
While the above description relates to the establishment of a call, it will be appreciated that the same principles apply when establishing any kind of session between two endpoints.
SUMMARY
The message that is passed between session handling functions contains state information about the session. This can lead to problems of scalability, particularly where session handling functions are located in different geographic locations. A further problem is that failure of one of the session handling functions can lead to failure of establishment of the session. It is an object to address these problems and provide a more robust system.
According to a first aspect, there is provided a method of handling a session in a communications network. A first session handling function receives a message identifying a communications session. It then retrieves information relating to the identified session from a database and applies at least one session handling rule to the session. The first session handling function sends an update message to the database, the update message including information relating to the effect of the rule applied to the identified session. A further message is sent to a second session handling function, the second message identifying the session and including no information relating to the effect of the rule applied to the identified session. In this way, the messages are passed from one session handling function to another but the messages contain no state information about the session. All of the state information is stored at the database rather than the message. An advantage of this is that networks become more robust and more scalable.
Optional examples of rules applied by the first session handling function include any of call routing, voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, Interactive Voice Response, Add Hunt Group, call whisper and call recording, but it will be appreciated that any type of rule may be applied.
As an option, the update message uses Structured Query Language (SQL). As a further option, the update message is sent via a Remote Authentication Dial In User Service (RADIUS) adapter.
The session is optionally identified using a globally unique Session Initiation Protocol (SIP) session identifier. Examples of sessions include voice calls and video calls, and it will be appreciated that any type of SIP session may be used.
The second session handling function is optionally located at a different geographical location from the session handling function. This does not impact the network because each session handling function queries the database and no state information about the session is held. This allows more versatility in the network topography.
As an option, and prior to retrieving from the database, information relating to the identified session, the database may be selected from a plurality of databases. A plurality of databases builds more redundancy and scalability into the network.
According to a second aspect, there is provided a method of maintaining session state information in a communications network. A database function stores state information relating to a communications session, the state information being associated with an identifier identifying the session. It then receives from a session handling function a request for information relating to the dentified session and, in response, sends a message to the session handling function, the message including the requested information. The database function then receives from the session handling function an update message, the update message including updated information relating to the identified session. This allows the database function to update the state information associated with the identified session with the updated information.
Messages between the database function and the session handling functon optionally use SQL.
As an option, the identifier is a globally unique SIP session identifier.
As an option, the method further comprises receiving from a second session handling function a request for information relating to the identified session and sending to the second session handling function a message, the message including the requested information. The database function then receives from the second session handling function a further update message, the further update message including further updated information relating to the identified session, and updates the state information associated with the identified session with the further updated information.
According to a third aspect, there is provided a session handling device in a communications network. The session handling device is provided with a receiver arranged to receive a message identifying a communications session. An interface is arranged to retrieve, from a database, information relating to the identified session. A processor is arranged to apply at least one session handling rule to the session. The interface is further arranged to send an update message to the database, the update message including information relating to the effect of the rule applied to the identified session. A transmitter is arranged to send a further message to a second session handling function, the second message identifying the session and including no information relating to the effect of the rue applied to the identified session.
As an option, the processor is arranged to apply a rule relating to any of call routing, voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, Interactive Voice Response, Add Hunt Group, call whisper and call recording.
The second session handling function is optionally located at a different geographical location from the session handling function.
As an option, the interface is further arranged to send an accounting message towards an accounting function, the accounting message including information identifying at least the rule applied. This allows the accounting function to correctly charge for any rules applied to the session.
According to a fourth aspect, there is provided a database function device for use in a communications network. The database function device comprises a database arranged to store state information relating to a communications session, the state information being associated with an identifier identifying the session. A receiver is arranged to receive from a session handling function a request for information relating to the identified session. A transmitter is arranged to send to the session handling function a message, the message including the requested information. The receiver is further arranged to receive from the session handling function an update message, the update message including updated information relating to the identified session. A processor is arranged to update the slate information associated with the identified session stored in the database with the updated information.
As an option, the receiver is further arranged to receive from a second session handling function a request for information relating to the identified session. The transmitter is arranged to send to the second session handling function a message, the message including the requested information. The receiver is further arranged to receive from the second session handling function a further update message, the further update message including further updated information relating to the identified session. The processor is arranged to update the state information assocated with the identified session with the further updated information. In this way, the state information relating to the session is updated as each relevant session handling function applies (or chooses not to apply) rules to the session.
According to a fifth aspect, there is provided a computer program comprising computer readable code which, when run from a computer readable medium in the form of a memory in a processor on a session handling device, causes the session handling device to perform the method as described above in the first aspect.
According to a sixth aspect, there is provided a computer program comprising computer readable code which, when run from a computer readable medium in the form of a memory in a processor on a database function device, causes the database function device to perform the method as described above in the second aspect.
According to a seventh aspect, there is provided a computer program product comprising a computer readable medium and a computer program as described above in either of the fifth or sixth aspects, wherein the computer program is stored on the computer readable medium.
BRIEF DESCRIPTION OF DRAWINGS
Figure 1 illustrates schematically in a block diagram an exemplary network architecture relating to session handling functions; Figure 2 is a flow diagram showing exemplary steps at a session handling function; FigureS is a flow diagram showing exemplary steps at a database function; Figure 4 illustrates schematically in a block diagram an exemplary session handling function; and Figures illustrates schematically in a block diagram an exemplary database function.
DETAILED DESCRIPTION
In a typical network that uses Session Initiation Protocol (SIP) signalling, calls are handled by a Back-to-back User Agent (B2BUA). The B2BUA acts as a User Agent server (UAS) from the point of view of incoming calls and the User Agent client (UAC) for outgoing calls. The B2BUA not only handles SIP signalling but also prepares and tears down the media path between the caller and an application component as required by any session handling rules, or between the caller and the destination. The B2BUA also handles inbound dialog establishment, provides call management, allows network interworking and can provide a hiding function for network intervals to, for example, hide network topology. For more information on SIP and the B2BUA, see RFC 3261.
In an example where the session is a call, when the B2BUA receives an incoming call, it signals other entities in turn that may need to have some involvement with the call.
The first entity that the B2BUA contacts is a Call Control application, which processes further routing of the call, plays announcement, implements diversion logic, plays ring tones and error announcements and so on. The Call Control appUcation must therefore apply rules to the incoming call. Other entities that may need to apply call handling include, for example, a call queue function, a voicemail recording function, and a whisper function. It will be appreciated that this list is not exhaustive.
As a SIP message relating to a session such as a call is passed from a first session handling function to a second session handling function, the first session handling function does not amend the message to include state information about the session establishment. In other words, when the first session handling function applies a rule, it does not modify the message in any way to include the results of the application of the rule. Instead, a database is updated to store state information relating to the session.
Each session handling function updates the database and can, if necessary, access information from the database in order to apply a rule. Once the SIP message has been handled by all of the session handling functions, the state information including the results of all of the applied rules can be obtained from the database and the session can be handled in the correct way.
By ensuring that state information relating to handling the session is only stored at the database, and not included in the message, a network of session handling functions becomes much more scalable, and more robust in the event of failure of one of the session handling functions.
Turning to Figure 1, there is illustrated schematically a network of session handling functions. A SIP message relating to a session (denoted by an arrow) is received at the first session handling function 1. The first session handling function applies a rule to session but does not update the SIP message. Instead, a message is sent towards a database function 3 informing the database function 3 of the results of the application of the rule. The database function 3 updates a database that holds state information relating to the session.
Note that in order to apply the rule, the first session handling function may need to obtain state information from the database function 3. In this case, the session handling function 1 queries the database function 3 to obtain state information relating to the session.
Once the first session handling function 3 has applied the rule to the session, the message is passed to a second sesson handling function 2. The SIP message includes no state information relating to the session or to the results of the application of a rule by the first session handling function 1. The second session handling function applies any necessary rules to the session and passes the message on without including any information relating to the effect of the rule applied by the second session handling function.
Once the message has been handled by all of the session handling functions, the database function 3 is queried to determne the state information and the effect of all of the rules, and the session is handled accordingly.
Figure 2 shows exemplary steps at the first session handling function. It will be appreciated that similar steps are performed at subsequent session handlng functions.
The following numbering corresponds to that of Figure 2: Si. The first session handling function 1 receives a SIP message identifying a session. Typically, this will be a session that is to be established.
S2. If necessary, the first session handling function 1 retrieves information about the session from the database 3. For example, a session handling function may have previously applied a rule to play an announcement, but there may not be a need for subsequent session handling functions to be aware of this.
S3. The first session handling function 1 applies a rule to the session. The application of the rule will generate information about how the session is to be handled.
S4. The first session handling function 1 sends the updated information to the database function 3 for the database function 3 to store.
S5. The first session handling function 1 sends the SIP message identifying the session to the second session handling function. The first session handling function 1 may also send information about the rule applied to an accounting function (not shown), allowing the accounting function to apply any necessary charges. It will be appreciated that steps S4 and S5 may be performed in any order or concurrently. It will also be appreciated that subsequent session handling lunctions perform similar steps.
Turning now to Figure 3, there are shown steps that occur at the database function 3.
The following numbering corresponds to that of Figure 3: S6. The database function stores state information relating to a session.
S7. If required, the database function 3 receives a query from the first session handling function 1 for state information relating to the session.
S8. The database function 3 sends the requested information to the first session handling function 1, which applies a rule relating to how the session is to be handled.
S9. The database function 3 receives from the first session handling function 1 updated information about the session after the rule has been applied by the first session handling function 1.
SlO. The database function 3 updates the database with the updated information.
Sn. The first session handling function has passed information identifying the session to the second session handling function 2. If required, the database function 3 receives a query from the second session handling function 2 for state information relating to the session.
S12. The database function 3 sends the requested information to the second session handling function 2, which applies a second rule relating to how the session is to be handled.
S13. The database function 3 receives from the second session handling function 2 updated information about the session after the second rule has been applied by the second session handling function 2.
S14. The database function 3 updates the database with the updated information.
These steps are repeated for each session handling function that handles the session.
Once the session has been handled by all session handling functions the session handling has finished.
Figure 4 shows an exemplary session handling function 1. The session handling function 1 is provided with a receiver 4 that can receive a message identifying the session. An in/out interface 5 is provided that can retrieve from a database information relating to the identified session. A processor 6 applies at least one session handling rule to the session. Any te of session handling rule may be applied, such as call routing, voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, Interactive Voice Response, Add Hunt Group, call whisper and call recording. The interface 5 is further arranged to send an update message to the database, the update message including information relating to the effect of the rule applied to the identified session. A transmitter 7 is provided that is arranged to send a further message to a second session handling function 2 (which may be located in a different geographical region to the first session handling function 1), the second message identifying the session and including no information relating to the effect of the rule applied to the identified session. The interface 5, or another interface, may also send an accounting message towards an accounting function, the accounting message including information identifying at least the rule applied.
A non-transitory computer readable medium in the form of a memory S is provided.
This can be used to store rules, or a program 9 which, when executed by the processor 6, causes the session handling function to behave as described above. Note that the program may be provided from an external source 10, such as a carrier wave or an external non-transitory computer readable medium such as a flash drive or a disk.
Figure 5 shows an exemplary database function 3. The database function is provided with a database 11 arranged to store state information relating to a communications session, the state information being associated with an identifier identifying the session. A receiver 12 is provided that is arranged to receive from a session handling function 1 a request for information relating to the identified session. A transmitter 13 is arranged to send to the session handling function a message, the message including the requested information. The receiver 12 is further arranged to receive from the session handling function an update message, the update message including updated information relating to the identified session. A processor 14 controls the database function 3 and is arranged to update the state information associated with the identified session stored in the database 11 with the updated information.
Note that the database function 3 may, instead of having a database 11, send an update message to a remote database 11. Note also that several remote databases 11 may be provided in order to provide redundancy and scalability in the network. In this case, the processor 14 will select a database to use.
The receiver 12 and transmitter 13 are arranged to receive and send the signalling described above to other session handling functions in the network.
A non-transitory computer readable medium in the form of a memory 15 is provided.
This can be used to store a program 16 which, when executed by the processor 14, causes the session handling function to behave as described above. Note that the program may be provided from an external source 17 such as a carrier wave or an external non-transitory computer readable medium such as a flash drive or a disk.
Any suitable communications protocol may be used between the first session function 1 and the database function 3. As an example, communications are sent using Remote Authentication Dial In User Service (RADIUS), and may be sent via a RADIUS adapter. The communications network in this example uses RADIUS access based services for session routing signalling, for example each time the B2BUA is referred to an application or external destination. The RADIUS service is also used by the session control functions 1, 2 to query the database 3 and any other databases to determine which rules to apply to a session depending on the subscription identities of the caller and/or the recipient of a session.
The use of the database 3 function to maintain state rather than maintaining state in the SIP signalling that passes between session control functions 1, 2 ensures that the communications network is more robust in the event of a failure of one of the session control functions. Furthermore, it allows session control functions to be geographically dispersed without significantly impacting the speed of establishing or controlling a session, which in turn gives greater flexibility in designing a communications network.
It will be appreciated by a person of skill in the art that various modifications may be made to the embodiments described above without departing from the scope of the present disclosure as defined in the claims. For example, the handling of a call is described in detail above. A call is one example of a session and it will be appreciated that the same techniques are applied to any type of session, for example to a video call.
The following abbreviations have been used in the above description: B2BUA Back-to-back User Agent RADIUS Remote Authentication Dial In User Service SIP Session Initiation Protocol SQL Structured Query Language

Claims (20)

  1. CLAIMS: 1. A method of handling a session in a communications network, the method comprising: at a first session handling function, receiving a message identifying a communications session; retrieving, from a database, information relating to the identified session; applying at least one session handling rule to the session; sending an update message to the database, the update message including information relating to the effect of the rue applied to the identified session; and sending a further message to a second session handling function, the second message identifying the session and including no information relating to the effect of the rule applied to the identified session.
  2. 2. The method according to claim 1, wherein the first session handling function applies a rule relating to any of session routing, voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, Interactive Voice Response, Add Hunt Group, call whisper and call recording.
  3. 3. The method according to any of claims 1 or 2, wherein the update message uses Structured Query Language, SQL.
  4. 4. The method according to claim 3 wherein the update message is sent via a Remote Authentication Dial In User Servce, RADIUS, adapter.
  5. 5. The method according to any one of claims 1 to 4 wherein the session is identified using a globally unique Session Initiation Protocol session identifier.
  6. 6. The method according to any one of claims 1 to 5, wherein the second session handling function is located at a different geographical location from the session handling function.
  7. 7. The method according to any one of claims 1 to 6, further comprsing, prior to retrieving, from a database, information relating to the identified session, selecting the database from a plurality of databases.
  8. 8. A method of maintaining session state information in a communications network, the method comprising, at a database function: storing at a database state information relating to a communicafions session, the state information being associated with an identifier identifying the session; receiving from a session handling function a request for information relating to the identified session; sending to the session handling function a message, the message including the requested information; receiving from the session handling function an update message, the update message including updated information relating to the identified session; and updating the state information associated with the identified session with the updated information.
  9. 9. The method according to claim 8, wherein messages between the database function and the session handling function use Structured Query Language, SQL.
  10. 10. The method according to any one of claims 8 or 9 wherein the dentifier is a globally unique Session Initiation Protocol session identifier.
  11. 11. The method according to any one of claims 8, 9 or 10, further comprising: receiving from a second session handling function a request for information relating to the identified session; sending to the second session handling function a message, the message including the requested information; receiving from the second session handling function a further update message, the further update message including further updated information relating to the identified session; and updating the state information associated with the identified session with the further updated information.
  12. 12. A session handling device (1) in a communications network, the session handling device comprising: a receiver (4) arranged to receve a message identifying a communications session; an interface (5) arranged to retrieve, from a database, information relating to the identified session; a processor (6) arranged to apply at least one session handling rule to the session; the interface (5) being further arranged to send an update message to the database, the update message including information relating to the effect of the rule applied to the identified session; and a transmitter (7) arranged to send a further message to a second session handling function (2), the second message identifying the session and including no information relating to the effect of the rue applied to the identified session.
  13. 13. The session handling device (1) according to claim 12, wherein the processor (6) is arranged to apply a rule relating to any of session routing, voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, Interactive Voice Response, Add Hunt Group, call whisper and call recording.
  14. 14. The session handling device (1) according to any one of claims 12 or 13, wherein the second session handling function (4) is located at a different geographical location from the session handling function.
  15. 15. The session handling device (1) according to any one of claims 12, 13 or 14, the interface (5) being further arranged to send an accounting message towards an accounting function, the accounting message including information identifying at least the rule applied.
  16. 16. A database function device (3) for use in a communications network, the database function device comprising: a database (11) arranged to store state information relating to a communications session, the state information being associated with an identifier identifying the session; a receiver (12) arranged to receive from a session handling funcfion a request for information relating to the identified session; a transmitter (13) arranged to send to the session handling function a message, the message including the requested information; the receiver (12) being further arranged to receive from the session handling function an update message, the update message including updated information relating to the identified session; and a processor (14) arranged to update the state information associated with the identified session stored in the database (11) with the updated information.
  17. 17. The database function device (15) according to claim 16, wherein: the receiver (12) is further arranged to receive from a second session handling function a request for information relating to the identified session; the transmitter (13) is arranged to send to the second session handling function a message, the message including the requested information; the receiver (12) is further arranged to receive from the second session handling function a further update message, the further update message including further updated information relating to the identified session; and the processor (14) is arranged to update the state information associated with the identified session with the further updated information.
  18. 18. A computer program (9) comprising computer readable code which, when run from a computer readable medium in the form of a memory in a processor (6) on a session handling device (1), causes the session handling device to perform the method as claimed in any of claims 1 to 7.
  19. 19. A computer program (16) comprising computer readable code which, when run from a computer readable medium in the form of a memory in a processor (14) on a database function device (3), causes the database function device to perform the method as claimed in any of claims 8 to 11.
  20. 20. A computer program product comprising a computer readable medium (8; 10; 15; 17) and a computer program (9; 16) as claimed in claim 18 or 19, wherein the computer program is stored on the computer readable medium.Amendments to the Claims have been filed as follows CLAIMS: 1. A method of handling a session in a communications network, the method comprising: at each of a plurality of session handling functions, receiving one of a plurality of messages identifying a communications session, and for each of the plurality of messages: selecting a database from a plurality of databases; retrieving, from the database, information relating to the identified session; applying at least one session handling rule to the session; sending an update message to the database, the update message including information relating to the effect of the rue applied to the identified session, wherein the second and any subsequent messages in the plurality of messages include no information relating to the effect of the rule applied to the identified session; the method further comprising: IC) querying the database to determine state information and the effect of all the rules applied to the session; and C handling the session accordingly. r2. The method according to claim 1, wherein each session handling function cy) applies a rule relating to any of session routing, voicemail, announcement playing, call queuing, time control, geographic control, call recording, busy notification, email notification, Interactive Voice Response, Add Hunt Group, call whisper and call recording.3. The method according to any of claims 1 or 2, wherein the update message uses Structured Query Language, SQL.4. The method according to claim 3 wherein the update message is sent via a Remote Authentication Dial In User Servce, RADIUS, adapter.5. The method according to any one of claims 1 to 4 wherein the session is identified using a globally unique Session Initiation Protocol session identifier.6. The method according to any one of claims 1 to 5, wherein at least the second session handling function is located at a different geographical locaton from the session handling function.7. A method of maintaining session state information in a communications network, the method comprising, at a database function: storing at a database state information relating to a communicafions session, the state information being associated with an identifier identifying the session; receiving from each of a plurality of session handling functions one of a plurality of requests for information relating to the identified session; sending to each session handling function a message including the information requested in a corresponding request of the plurality of requests; receiving from each session handling function an update message including updated information relating to the effect of a rule applied to the identified session by each session handling function; LI') updating the state information associated with the identified session with the updated information; C receiving a query requesting state information and the effect of all the rules applied to the identified session; and c 20 transmitting the requested state information and the effect of all the rules c, applied to the identified session for handling the identified session accordingly.8. The method according to claim 7, wherein messages between the database function and the session handling function use Structured Query Language, SQL.9. The method according to any one of claims 7 or 8 wherein the dentifier is a globally unique Session Initiation Protocol session identifier.10. A database function device (3) for use in a communications network, the database function device comprising: a database (11) arranged to store state information relating to a communications session, the state information being associated with an identifier identifying the session; a receiver (12) arranged to receive from each of a plurality of session handling functions a plurality of requests for information relating to the identified session; a transmitter (13) arranged to send to each session handling function a message including the information requested in a corresponding request of the plurality of requests; the receiver (12) being further arranged to receive from each session handling function an update message including updated information relating to the effect of a rule applied to the identified session by each session handling function; and a processor (14) arranged to update the state information associated with the identified session stored in the database (11) with the updated information! the receiver being further configured to receive a query requesting state information and the effect of all the rules applied to the identified session, the transmitter being further configured to transmit the requested state information and the effect of all the rules applied to the identified session for handling the identified session accordingly.11. A computer program (9) comprising computer readable code which, when run LI') from a computer readable medium in the form of a memory in a processor (6) on a session handling device (1), causes the session handling device to perform the method C as claimed in any of claims ito 6. r12. A computer program (16) comprising computer readable code which, when run from a computer readable medium in the form of a memory in a processor (14) on a database function device (3), causes the database function device to perform the method as claimed in claim 10.13. A computer program product comprising a computer readable medium (8; 10; 15; 17) and a computer program (9; 16) as claimed in claim 11 or 12, wherein the computer program is stored on the computer readable medium.
GB1413049.6A 2014-07-23 2014-07-23 Session Handling in a Communications Network Withdrawn GB2527144A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB1413049.6A GB2527144A (en) 2014-07-23 2014-07-23 Session Handling in a Communications Network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1413049.6A GB2527144A (en) 2014-07-23 2014-07-23 Session Handling in a Communications Network

Publications (2)

Publication Number Publication Date
GB201413049D0 GB201413049D0 (en) 2014-09-03
GB2527144A true GB2527144A (en) 2015-12-16

Family

ID=51495001

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1413049.6A Withdrawn GB2527144A (en) 2014-07-23 2014-07-23 Session Handling in a Communications Network

Country Status (1)

Country Link
GB (1) GB2527144A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114422576B (en) * 2022-01-24 2024-02-06 深圳壹账通智能科技有限公司 Session cleaning method and device, computer equipment and readable storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200298A1 (en) * 2002-04-23 2003-10-23 Microsoft Corporation System for processing messages to support network telephony services
US20110119391A1 (en) * 2009-11-19 2011-05-19 Oracle International Corporation Protocol level communications for protocol level composition with session sharing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200298A1 (en) * 2002-04-23 2003-10-23 Microsoft Corporation System for processing messages to support network telephony services
US20110119391A1 (en) * 2009-11-19 2011-05-19 Oracle International Corporation Protocol level communications for protocol level composition with session sharing

Also Published As

Publication number Publication date
GB201413049D0 (en) 2014-09-03

Similar Documents

Publication Publication Date Title
US8379818B2 (en) Method and apparatus for conveying a calling party identifier
JP4485850B2 (en) Real-time management of shared communication concept configuration
US11570296B2 (en) End-to-end management of authenticated communications
US12069203B2 (en) Call content management for mobile devices
US8867716B2 (en) Telephone number sharing configuration
US20210144521A1 (en) Call content management for mobile devices
US20220094790A1 (en) Multiple caller numbers assigned to multiple called devices
US8830878B1 (en) Handling connections to reassigned numbers
US20220086274A1 (en) Multiple caller numbers assigned to a called device
US11863698B2 (en) Call content management for mobile devices
US9781267B2 (en) Systems and methods for handling and routing incoming communication requests
US20120230487A1 (en) Method and apparatus for progressive call forwarding
US9401952B1 (en) Managing presence state
GB2527144A (en) Session Handling in a Communications Network
US10958793B2 (en) Devices, systems and methods for communications that include social media clients
EP3297267A1 (en) Optimization of interactive voice response systems campaigns
KR101659326B1 (en) Method and Apparatus for Generating Information of Number Portability Subscriber using ENUM Subscriber Information of VoIP Number Portability Subscriber
US11909918B2 (en) Mapping a universal contact center service access point to a service access point specific to a determined modality
JP6193516B1 (en) Contact ID propagation system and method
GB2531109A (en) Session handling in a communications network
JP2015056827A (en) Switchboard, switchboard control method, and switchboard control program

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)