GB2499733A - Selecting a preferred media routing path from a plurality of paths on the basis of a media quality test procedure for a given media routing path - Google Patents

Selecting a preferred media routing path from a plurality of paths on the basis of a media quality test procedure for a given media routing path Download PDF

Info

Publication number
GB2499733A
GB2499733A GB1303471.5A GB201303471A GB2499733A GB 2499733 A GB2499733 A GB 2499733A GB 201303471 A GB201303471 A GB 201303471A GB 2499733 A GB2499733 A GB 2499733A
Authority
GB
United Kingdom
Prior art keywords
media
call
routing path
data
given
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.)
Granted
Application number
GB1303471.5A
Other versions
GB2499733B (en
GB201303471D0 (en
Inventor
Martin Taylor
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.)
Metaswitch Networks Ltd
Original Assignee
Metaswitch Networks 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 Metaswitch Networks Ltd filed Critical Metaswitch Networks Ltd
Publication of GB201303471D0 publication Critical patent/GB201303471D0/en
Publication of GB2499733A publication Critical patent/GB2499733A/en
Application granted granted Critical
Publication of GB2499733B publication Critical patent/GB2499733B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • 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/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • 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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/2236Quality of speech transmission monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/0024Services and arrangements where telephone services are combined with data services
    • H04M7/0057Services where the data services network provides a telephone service in addition or as an alternative, e.g. for backup purposes, to the telephone service provided by the telephone services network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/12Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A method of routing a call involving a call party in a telecommunications network via a selected media routing path of a plurality of different media routing paths is provided. The media routing paths arc for communicating media data to and/or from at least one communication device associated with the call party. A call control system in the telecommunications network receives data derived from a media quality test procedure for a given media routing path. The media quality test procedure includes media test data being communicated via the given media routing path and the media test data being analysed. The call control system selects a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party on the basis of at least the received data.

Description

ROUTING A CALL
TECHNICAL FIELD
The present invention relates to routing a call.
BACKGROUND
Telephony users have long had to deal with a proliferation of user devices (sometimes referred to as 'user equipment' or 'endpoints') through which third parties may contact them. For example, a user might have a fixed-line (or 'wireline') telephony device for use at home, a further fixed-line telephony device for use in the office, and a mobile telephony device for use whilst on the move. Each type of telephony device has associated advantages; whilst a mobile telephony device provides the user with mobility, a fixed-line telephony device can provide more reliable communications with no battery recharge concerns.
Users may also have a number of different access technologies available through which their telephony devices may conduct communications. For example, one of the user's telephony devices may be equipped with a circuit-switched communication interface for conducting communications via suitable circuit-switched networks and the same or another of the user's telephony devices may be equipped with a packet-switched communication interface for communicating via suitable packet-switched networks.
A circuit-switched telephony device may comprise a fixed-line Plain Old Telephone Service (POTS) telephone equipped with a circuit-switched interface and communication client for conducting communications via a Public Switched Telephone Network (PSTN). A circuit-switched telephony user device may comprise a mobile (or 'cellular') telephone equipped with a wireless circuit-switched interface and communication client for conducting communications via a cellular network such as a Global System for Mobile Communications (GSM) network or Code Division Multiple Access (CDMA) network.
More recently, packet-switched telephony devices have proliferated which may take the form of a fixed-line Internet Protocol (IP) telephone equipped with a fixed-line packet-switched interface and communication client for communicating via an Internet Protocol (IP) network, such as the Internet or an IP Private Branch Exchange (IP-PBX). Similarly, a user may conduct
-2-
communications via a personal computer (PC) equipped with a packet-switched communication client for conducting communications over the Internet via a fixed-line Internet connection. A mobile packet-switched telephony device may take the form of a portable computing device,
such as a laptop or tablet, equipped with a wireless packet-switched interface and communication 5 client for communicating via an IP network, such as the Internet, using a WiFi™ or Bluetooth™ compliant wireless access point. A packet-switched communication client may conduct communications according to an Internet telephony protocol, commonly referred to as Voice over Internet Protocol (VoIP), with associated setup and/or control protocols such as the Session Initiation Protocol (SIP) or H.323.
10 Increasingly, telephony user devices are available that are equipped with multiple communication interfaces to facilitate communication via multiple access technologies. For example, a modern "smartphone" is typically equipped with a circuit-switched interface for communicating via a cellular network and a packet-switched interface for communicating via the Internet. Commonly, a smartphone may be equipped with several packet-switched interfaces, for 15 example, a short-range radio interface, e.g. WiFi or Bluetooth™ compliant, and/or an interface for communication of packet data through a cellular network, such as 3rd Generation Partnership Project (3GPP) Long Term Evolution (LTE), LTE-Advanced (LTE-A), High Speed Packet Access (HSPA), Wideband Code Division Multiple Access (W-CDMA) or Mobile WiMax etc. In such cases, a packet-switched communication client may also be deployed for conducting 20 communications via one or more of the available wireless packet-switched interfaces. In cases such as this where a device is equipped with more than one communication client, the various clients deployed in that device are referred to as co-located. A suitable packet-switched communication client may be deployed on a user equipment prior to sale, or could be deployed subsequently through an application distribution portal such as the Apple® App StoreSM or 25 Android™ Market etc.
Taking an example of a smartphone that can conduct communications using WiFi access technology via a packet-switched network or cellular network access technology via a circuit-switched network, there are various reasons for wanting to connect phone calls involving the user over WiFi access, when available, rather than via cellular access. One reason is that a 30 connection via WiFi may well offer better voice quality than via circuit-switched communications at any given location. Indeed, mobile users often suffer poor cellular coverage
in locations where they often wish to use their cell phones and where WiFi coverage is good, including their home and their office. Another reason is that WiFi access may permit a better quality of user experience for a call by permitting the use of High Definition (HD) voice codecs and/or permitting the uplift of a voice call to include video. Yet another reason is that a user who is roaming outside their home network and is currently in a location with WiFi access may be able to make and receive calls via WiFi that do not attract additional roaming charges and, therefore, save the user money. Still another reason is that network operators may be able to benefit from reduced loading on their cellular Radio Access Network (RAN) infrastructure when subscribers connect voice calls over WiFi. One reason not to use WiFi access is because of possible data security concerns, particularly when using an unsecured or public WiFi connection.
With such a number of considerations to be taken into account when routing calls the user is sometimes left with a less than satisfactory experience when a call in which they are involved is routed in the network in an unsatisfactory manner.
It would therefore be desirable to provide improved routing of calls in a telecommunications network, particularly, but not exclusively, where this results in an improved user experience.
SUMMARY
In accordance with a first aspect of the invention, there is provided a method of routing a call involving a call party in a telecommunications network via a selected media routing path of a plurality of different media routing paths, each of the media routing paths being for communicating media data to and/or from at least one communication device associated with the call party, the method comprising, at a call control system in the telecommunications network: receiving data derived from a media quality test procedure for a given media routing path, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call to and/or from one or more of the
-4-
at least one communication devices associated with the call party on the basis of at least the received data derived from the media quality test procedure.
In some embodiments, the method comprises selecting the given media routing path from the plurality of media routing paths based at least on part on pre-existing preferred media routing 5 path selection data.
In some embodiments, the method comprises performing at least part of the media quality test procedure.
In some embodiments, at least part of the media quality test procedure is performed by one or more given communication devices associated with the call party.
10 In some embodiments, the method comprises transmitting one or more messages that are operable to cause the given communication device to perform at least part of the media quality test procedure for the given media routing path.
In some embodiments, the one or more messages are operable to cause the given communication device to initiate the media quality test procedure.
15 In some embodiments, the method comprises transmitting the one or more messages via a given signalling path associated with the given media routing path.
In some embodiments, the one or more messages includes a call setup request for the call.
In some embodiments, the method comprises transmitting the one or more messages in response to receiving an indication that a call setup request directed to the call party may be
20 received.
In some embodiments, the method comprises transmitting the one or more messages in response to receiving a call setup request directed to the call party.
In some embodiments, the method comprises receiving one or more messages comprising the data derived from the media quality test procedure.
25 In some embodiments, the method comprises receiving the one or more messages via a given signalling path associated with the given media routing path.
In some embodiments, the one or more messages include a call setup response for the call.
-5-
In some embodiments, the data derived from the media quality test procedure indicates acceptance or rejection of a call setup request directed to the call party.
In some embodiments, the media quality test procedure comprises a media loopback test being performed.
5 In some embodiments, at least one of the plurality of media routing paths includes a cellular access network.
In some embodiments, at least one of the plurality of media routing paths includes a Wireless Local Area Network (WLAN).
In some embodiments, at least one of the plurality of media routing paths includes a 10 circuit-switched network.
In some embodiments, at least one of the plurality of media routing paths includes a packet-switched network.
In some embodiments, the call control system includes one or more entities located in an Internet Protocol Multimedia Subsystem (IMS) network.
15 In some embodiments, the given media routing path includes one or more intermediate nodes.
In some embodiments, at least part of the media quality test procedure is performed by at least one of the one or more intermediate nodes.
In accordance with a second aspect of the invention, there is provided a call control 20 system for routing a call involving a call party in a telecommunications network via a selected media routing path of a plurality of different media routing paths, each of the media routing paths being for communicating media data to and/or from at least one communication device associated with the call party, the call control system being configured to:
receive data derived from a media quality test procedure for a given media routing path, 25 the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and select a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call to and/or from one or more of the at least one
-6-
communication devices associated with the call party on the basis of at least the received data derived from the media quality test procedure
In accordance with a third aspect of the invention, there is provided a computer program arranged to perform a method of routing a call involving a call party in a telecommunications 5 network via a selected media routing path of a plurality of different media routing paths, each of the media routing paths being for communicating media data to and/or from at least one communication device associated with the call party, the method comprising, at a call control system in the telecommunications network:
receiving data derived from a media quality test procedure for a given media 10 routing path, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call to and/or from one or more of the 15 at least one communication devices associated with the call party on the basis of at least the received data derived from the media quality test procedure.
In accordance with a fourth aspect of the invention, there is provided a method of controlling a communication device, in a telecommunications network comprising at least one media routing path for communicating media data to and/or from one or more entities in the 20 telecommunications network, the method comprising:
receiving one or more messages comprising one or more predetermined parameters;
performing at least part of a media quality test procedure for a given media routing path at least in part on the basis of recognising the one or more predetermined 25 parameters, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and transmitting data derived from the media quality test procedure for the given media routing path.
-7-
In some embodiments, the telecommunications network comprises a plurality of media routing paths for communicating media data to and/or from the one or more entities in the telecommunications network, and the method comprises:
selecting a preferred media routing path from the plurality of media routing paths 5 for communicating media data to and/or from the telecommunications network at least in part on the basis of the media quality test procedure.
In some embodiments, the method comprises transmitting media data associated with the call via the preferred media routing path.
In some embodiments, the method comprises selecting the given media routing path from 10 the plurality of media routing paths based at least on part on pre-existing preferred media routing path selection data.
In some embodiments, the method comprises initiating the media quality test procedure at least in part on the basis of recognising the one or more predetermined parameters.
In some embodiments, the method comprises receiving the one or more messages via a 15 given signalling path associated with the given media routing path.
In some embodiments, the one or more received messages includes a call setup request for a call involving a call party associated with the communication device.
In some embodiments, the method comprises activating an alert associated with an incoming call dependent on a result of the media quality test procedure.
20 In some embodiments, the method comprises transmitting one or more messages comprising the data derived from the media quality test procedure via a given signalling path associated with the given media routing path.
In some embodiments, the one or more transmitted messages includes a call setup response for a call involving a call party associated with the communication device.
25 In some embodiments, the data derived from the media quality test procedure indicates acceptance or rejection of a call setup request directed to a call party associated with the communication device.
-8-
In some embodiments, said performing at least part of a media quality test procedure for the given media routing path comprises performing a media loopback test for the given media routing path.
In some embodiments, the method comprises performing said at least part of the media 5 quality test with an entity in the telecommunications network that is different from an entity from which the one or more received messages originate.
In accordance with a fifth aspect of the invention, there is provided a communication device, in a telecommunications network comprising at least one media routing path for communicating media data to and/or from one or more entities in the telecommunications 10 network, the communication device being configured to:
receive one or more messages comprising one or more predetermined parameters; perform at least part of a media quality test procedure for a given media routing path at least in part on the basis of recognising the one or more predetermined parameters, the media quality test procedure including media test data being 15 communicated via the given media routing path and the media test data being analysed;
and transmit data derived from the media quality test procedure for the given media routing path.
In accordance with a sixth aspect of the invention, there is provided a computer program 20 arranged to perform a method of controlling a communication device, in a telecommunications network comprising at least one media routing path for communicating media data to and/or from one or more entities in the telecommunications network, the method comprising:
receiving one or more messages comprising one or more predetermined parameters;
25 performing at least part of a media quality test procedure for a given media routing path at least in part on the basis of recognising the one or more predetermined parameters, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and
-9-
transmitting data derived from the media quality test procedure for the given media routing path.
In accordance with a seventh aspect of the invention, there is provided a method of controlling a communication device, in a telecommunications network comprising a plurality of 5 different media routing paths, each of the media routing paths being for communicating media data associated with a call to and/or from one or more entities in the telecommunications network, the method comprising:
detecting one or more predetermined triggers prior to originating a call;
initiating a media quality test procedure for a given media routing path prior to 10 originating the call, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call at least in part on the basis of the 15 media quality test procedure.
In some embodiments, the method comprises initiating the media quality test procedure in response to detecting the one or more predetermined triggers.
In some embodiments, the one or more predetermined triggers comprises detecting expiry of a media quality test time period.
20 In some embodiments, the one or more predetermined triggers is associated with originating a call.
In some embodiments, the one or more predetermined triggers includes detecting an attempt to originate the call.
In some embodiments, the one or more predetermined triggers includes detecting activity 25 that may lead to a call origination attempt.
In accordance with an eighth aspect of the invention, there is provided a communication device, in a telecommunications network comprising a plurality of different media routing paths, each of the media routing paths being for communicating media data associated with a call to
- 10-
and/or from one or more entities in the telecommunications network, the communication device being configured to:
detect one or more predetermined triggers prior to originating a call;
initiate a media quality test procedure for a given media routing path prior to 5 originating the call, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and select a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call at least in part on the basis of the 10 media quality test procedure.
In accordance with a ninth aspect of the invention, there is provided a computer program arranged to perform a method of controlling a communication device, in a telecommunications network comprising a plurality of different media routing paths, each of the media routing paths being for communicating media data associated with a call to and/or from one or more entities in 15 the telecommunications network, the method comprising:
detecting one or more predetermined triggers prior to originating a call;
initiating a media quality test procedure for a given media routing path prior to originating the call, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; 20 and selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call at least in part on the basis of the media quality test procedure.
In accordance with a tenth aspect of the invention, there is provided a method of routing a 25 call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media quality monitoring entities intermediate the at least one communication device and the at 30 least one remote party device:
-11-
performing at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the 5 given media path;
determining a media quality associated with the analysed at least some of the media data; and transmitting data derived from the media quality test procedure for a given media routing path to facilitate selection of a preferred media routing path, from the plurality of 10 media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party.
In some embodiments, the method comprises relaying media data associated with the call to the at least one communication device via the given media routing path.
15 In some embodiments, the method comprises relaying media data associated with the call from the at least one communication device via the given media routing path.
In some embodiments, the method comprises analysing at least some media data associated with the call that is being communicated to the at least one communication device via the given media routing path.
20 In some embodiments, the method comprises analysing at least some media data associated with the call that is being communicated from the at least one communication device via the given media routing path.
In some embodiments, the method comprises transmitting the data derived from the media quality test procedure in response to determining that the media quality associated with 25 the analysed at least some of the media data is below a predetermined threshold quality level.
In some embodiments, the method comprises transmitting the data derived from the media quality test procedure to a call control system, the call control system being configured to perform said selection of the preferred media routing path.
- 12-
In accordance with an eleventh aspect of the invention, there is provided a system for routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call and at least one remote 5 party device associated with a remote call party involved in the call, the system comprising one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device, the one or more media quality monitoring entities being configured to:
perform at least part of a media quality monitoring procedure for a given media 10 routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path;
determining a media quality associated with the analysed at least some of 15 the media data; and transmit data derived from the media quality test procedure for a given media routing path to facilitate selection of a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call 20 party.
In accordance with a twelfth aspect of the invention, there is provided a computer program arranged to perform a method for of routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a 25 call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device:
performing at least part of a media quality monitoring procedure for a given 30 media routing path via which media data associated with the call is being communicated,
the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path;
determining a media quality associated with the analysed at least some of the media data; and transmitting data derived from the media quality test procedure for a given media routing path to facilitate selection of a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party.
In accordance with a thirteenth aspect of the invention, there is provided a method of routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device:
performing at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path; and determining a media quality associated with the analysed at least some of the media data; and selecting a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party at least in part on the basis of the media quality monitoring procedure.
In some embodiments, the method comprises relaying media data associated with the call to the at least one communication device via the given media routing path.
In some embodiments, the method comprises relaying media data associated with the call from the at least one communication device via the given media routing path.
- 14-
In some embodiments, the method comprises analysing at least some media data associated with the call that is being communicated to the at least one communication device via the given media routing path.
In some embodiments, the method comprises analysing at least some media data 5 associated with the call that is being communicated from the at least one communication device via the given media routing path.
In accordance with a fourteenth aspect of the invention, there is provided a system for routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one 10 communication device associated with a call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the system comprising one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device, the one or more media quality monitoring entities being configured to:
15 perform at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path; and
20 determining a media quality associated with the analysed at least some of the media data; and select a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party at least in part on the 25 basis of the media quality monitoring procedure.
In accordance with a fifteenth aspect of the invention, there is provided a computer program arranged to perform a method of routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a 30 call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media quality monitoring
- 15-
entities intermediate the at least one communication device and the at least one remote party device:
performing at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, 5 the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path; and determining a media quality associated with the analysed at least some of the media data; and
10 selecting a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party at least in part on the basis of the media quality monitoring procedure.
Further features and advantages of the invention will become apparent from the following 15 description of preferred embodiments of the invention, given by way of example only, which is made with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 shows an exemplary telecommunications network in which some embodiments may be employed.
Figure 2 shows an exemplary communication device adapted to conduct communication sessions such as voice calls in the telecommunication network according to some embodiments.
Figure 3 is a message flow diagram showing operation in the telecommunications network of Figure 1 for routing an incoming call according to some embodiments.
Figure 4 shows a message flow diagram describing operation in telecommunications network of Figure 1 for controlling a communication device associated with the user, in accordance with some embodiments.
Figure 5 shows a message flow diagram describing operation in telecommunications network of Figure 1 for controlling a communication device associated with the user, in accordance with some embodiments.
20
25
- 16-
Figure 6 shows telecommunications network depicted in Figure 1 in more detail according to embodiments.
Figure 7 shows telecommunications network depicted in Figure 1 in more detail according to embodiments.
5 Figure 8 shows telecommunications network depicted in Figure 1 in more detail according to embodiments.
DETAILED DESCRIPTION
Figure 1 shows an exemplary telecommunications network 100 in which some embodiments may be employed. Telecommunications network 100 includes a circuit-switched 10 telecommunications network part 102, a packet-switched network part 104 and may include other network parts (not shown).
The telecommunications network 100 includes a call control system 106. The call control system 106 is responsible for controlling calls in the telecommunications network. In some embodiments, the circuit-switched network 102 and the packet-switched network 104 are 15 configured to route all calls involving a given user via the call control system 106.
The call control system 106 may comprise a media gateway controller, service platform, call agent, application server or sofitswitch and may perform other functions typically associated with such entities. Although depicted in Figure 1 as a single network entity located between the circuit-switched network 102 and the packet-switched network 104, the call control system 106 20 may comprise a plurality of network elements, with some or all such elements being located within the circuit-switched network 102 and/or the packet-switched network 104 and/or one or more other networks (not shown). In some embodiments, the call control system 106 includes one or more entities located in an Internet Protocol Multimedia Subsystem (IMS) network. In some embodiments, a client-shared telephony service is hosted and controlled by the call control 25 system 106, as will be described in more detail below.
The call control system 106 comprises a user database 107 for storing data associated with users of the client-shared telephony service. In some embodiments, user database 107 includes a list of identifiers for the communication clients equipped to various communication devices 108 associated with a given user. User database 107 may also store a user profile
- 17-
associated with each user, which contains a number of user configurable preferences, such as call routing preferences. The user database 107 may store pre-existing preferred media routing path selection data, as will be described in more detail below.
The user of the telephony service provided by the telecommunications network 100 has 5 one or more communication devices 108 through which they conduct communications via the telephony service. The various communication devices 108 through which a user can conduct communications via the service are considered to be associated with that user. The user's associated communication devices may include, for example, a desk phone 110, a mobile (or 'cellular') telephone 112, a tablet device 114 and/or a personal computer 116.
10 Each of the user's communication devices 108 is equipped with one or more interfaces and one or more communication clients for conducting communications in the telecommunications network 100. Communication devices 108 equipped with a circuit-switched interface and communication client are adapted to conduct communications in the telecommunications network 100 via link 118 with the circuit-switched network 102. The 15 circuit-switched interface may comprise a landline PSTN interface in the case of a fixed-line device such as desk phone 110, or a cellular radio telephony interface in the case of a mobile device such as mobile telephone 112. Communication devices equipped with a packet-switched interface and communications client are adapted to conduct communications in telecommunications network via link 120 with packet-switched network 104. This packet-20 switched interface could comprise a wired interface to the Internet in the case of a fixed line device such as personal computer 116, or a wireless interface (e.g. WiFi, Bluetooth, 3G-LTE, WiMax, etc.) to the Internet in the case of a mobile device such as tablet 114. The packet-switched interface may comprise an Ethernet port.
To avoid confusing calling parties with identifiers such as telephone dialling numbers for 25 each of the various communication clients of a user, a one-telephone dialling number telephony service allows the user to publish a single telephone dialling number on which they can be contacted. Using a simultaneous ring service, when the single telephone dialling number is called, more than one of the user's communication clients will ring simultaneously. The user is then able to answer the call using the communication client of his choosing.
- 18-
Each of the communication clients equipped to the various communication devices 108 associated with a given user is likely to have intermittent connectivity to call control system 106, and therefore are only intermittently able to conduct communications. This may be due to the devices being powered off for limited periods. Alternatively this may be due to mobility when 5 connecting to telecommunications network 100 via a wireless interface, for example by moving in and out of range of the various cells and access points or interference from other wireless communication equipment etc. Further, there could be temporary problems with local or centralised network infrastructure in telecommunications network 100, such as downtime due to maintenance work or power outages.
10 From the perspective of call control system 106, the communication clients on the various communication devices 108 associated with a given user can be considered to have intermittent availability. In some embodiments, user database 107 is further configured to store the availability of any clients associated with a given user. In some embodiments, this is achieved by configuring each communication client to periodically send a message (referred to 15 herein as a heartbeat) to call control system 106. If such a heartbeat message is not received by call control system 106, that client can be considered unavailable until a subsequent message is successfully received. Alternatively, in other embodiments, call control system 106 is adapted to periodically "poll" each communication client to probe for its availability using a request response protocol.
20 As explained above, the circuit-switched network 102 and the packet-switched network
104 may be configured to route all calls involving the user, for example in which the user is a called or calling party, via the call control system 106. A call involving the user could be routed between the circuit-switched network 102 and the call control system 106 via a link 122 so that call control system 106 can control the call. The link 122 may, for example, comprise a Session 25 Initiation Protocol (SIP) trunk, or other high capacity communications link. Similarly, a call involving the user could be routed between the packet-switched network 104 and the call control system 106 via a link 124 so that the call control system 106 can control the call.
The link 122 and/or link 124 may comprise one or more gateway or session border controller entities (not shown) which carry out conversion between the various protocols and 30 data formats used to transfer media data and signalling data in the different networks making up
- 19-
the telecommunications network 100. For example, a media gateway (not shown) may convert between the different protocols of media data passing between the circuit-switched network 102 and the packet-switched network 104, such as packetised Voice over Internet Protocol (VoIP) data into Time-Division-Multiplexing (TDM) voice data and vice versa. A signalling gateway 5 (not shown) may convert between the different protocols of signalling information passing between the circuit-switched network 102 and the packet-switched network 104, such as SIP, Signalling System 7 (SS7), Integrated Services Digital Network User Part (ISUP), American National Standards Institute (ANSI) -41, Mobile Application Part (MAP) formats, etc, as appropriate.
10 Some communication devices 108 may be equipped with a plurality of communications clients. For example, in addition to having a circuit-switched communication client and a circuit-switched interface, a communication device 108, such as a mobile telephone 112, may also be equipped with one or more packet-switched communications clients and one or more packet-switched interfaces for conducting communications via the packet-switched network 104 15 via the link 120. In this case, the multiple communication clients provided on the communication device 108 are referred to as 'co-located' communication clients; multiple communication clients on a single communication device 108. In some embodiments, the call control system 106 hosts and controls a client-shared telephony service, in which the user has multiple communication clients that share a common dialling number. In such embodiments, the 20 user can use the shared dialling number for communications involving any of their multiple communication clients.
Figure 1 also shows a remote party device 126, such as a POTS telephone or mobile cellular telephone, that is associated with a remote party and that communicates in the telecommunications network 100 via the circuit-switched network 102. Although the remote 25 party device 126 is described as communicating via the circuit-switched network 102, the remote party device 126 may, instead or additionally, communicate via the packet-switched network 104 and/or one or more other networks not shown).
The telecommunication network 100 includes a plurality of media routing paths 128, 130, 132 via which media data may be communicated. Three such media routing paths 128, 130, 132 30 are depicted in Figure 1. A first media routing path 128, generally referred to herein as a
-20-
'circuit-switched media routing path', is formed between the call control system 106 and the communication device(s) 108 via the circuit-switched network 102 and links 118 and 122. A second media routing path 130, generally referred to herein as a 'packet-switched media routing path', is formed between the call control system 106 and the communication device(s) 108 via 5 the packet-switched network 104 and links 120 and 124. A third media routing path 132 is formed between the call control system 106 and the remote party device 126 via the circuit-switched network 102 and the link 122. In some embodiments, at least one of the plurality of media routing paths, for example, the circuit-switched media routing path 128 or the packet-switched media routing path 130, includes a cellular access network. In some embodiments, at 10 least one of the plurality of media routing paths, for example the packet-switched media routing path 130, includes a Wireless Local Area Network (WLAN). In some embodiments, at least one of the plurality of media routing paths includes a circuit-switched network, such as circuit-switched network 102. In some embodiments, at least one of the plurality of media routing paths includes a packet-switched network, such as packet-switched network 104.
15 The telecommunication network 100 also includes a plurality of signalling paths 129,
131, 133 via which signalling data associated with a call may be communicated. Three such signalling paths 129, 131, 133 are depicted in Figure 1 and are associated with media routing paths 128, 130, 132 respectively. A first signalling path 129, generally referred to herein as a 'circuit-switched signalling path', is formed between the call control system 106 and the 20 communication device(s) 108 via the circuit-switched network 102 and links 118 and 122. A second signalling path 131, generally referred to herein as a 'packet-switched signalling path', is formed between the call control system 106 and the communication device(s) 108 via the packet-switched network 104 and links 120 and 124. A third signalling path 133 is formed between the call control system 106 and the remote party device 126 via the circuit-switched network 102 25 and link 122.
Although media routing and signalling paths 128 and 129, 130 and 131, 132 and 133 are depicted in Figure 1 as being identical, it will be appreciated that, in reality, although they may be considered to be associated with each other, signalling data and media data for a given call may take different routes through the telecommunications network 100, particularly where one 30 or more entities is responsible for handling the signalling data for the given call and one or more different entities is responsible for handling the media data for the given call.
There are various considerations that may be taken into account when selecting a media routing path for a call. Some considerations are discussed below where the packet-switched media routing path 130 includes a wireless local area network (WLAN) connection using WiFi to a communication device 108 associated with the user. At least some of these considerations take into account the likely effect on user experience.
When the communication device 108 is in an area of WiFi coverage, there are good reasons for wanting to route media associated calls using the WiFi connection over the packet-switched media routing path 130 rather than via the circuit-switched media routing path 128. As explained above, one reason is that the WiFi connection to the packet-switched network 104 may offer better voice quality than a cellular connection (for example) to the cellular network 102 at any given location. The user may suffer poor cellular coverage in locations where they often wish to use their communication device 108 and where WiFi coverage is good, including their home and their office. Another reason is that the packet-switched media routing path 130 may permit a better quality of user experience for a given call by permitting the use of HD voice codecs and/or enhanced call services and/or permitting the uplift of a pure voice call to include video. Another reason is that a user who is roaming outside their home network and who is currently in a location with WiFi access may be able to make and receive calls via WiFi through the packet-switched network 104 that may not attract additional roaming charges and, therefore, save the user money. Another reason is that network operators may be able to benefit from reduced loading on their cellular RAN infrastructure when subscribers connect voice calls over WiFi, or otherwise, over the packet-switched media routing path 130.
The ability to connect voice calls, or other communication sessions such as video calls, to a communication device 108 over WiFi access when it is available is generally referred to herein as "WiFi Offload". In some embodiments, calls are connected over WiFi only if the WiFi connection supports media communication with sufficient quality; mere availability of a WiFi connection may not be sufficient for WiFi offload. Although reference is made herein to "WiFi", 'WiFi access", "WiFi connectivity" and the like, it will be appreciated that other access technologies are envisaged depending upon the context.
In some embodiments, WiFi offload may be implemented by making use of a packet-switched communication client, such as a SIP client, installed in the communication device 108,
-22-
which registers with a packet-based service, such as a SIP-based service, in the telecommunications network 100. In this case, a special function exists in the telecommunications network 100 that determines which path to route any given terminating call over, or at least which path to select as a preferred path. In some embodiments, the special 5 function is provided by the call control system 106.
Selecting, or prioritising, a path over which to terminate a call is generally referred to herein as "Terminating Access Domain Selection" (TADS).
One approach to TADS is to determine whether there is a current SIP registration for the communication device 108. If a SIP registration exists, and if user preference or service provider 10 policy indicates, for example in pre-existing preferred media routing path selection data, that calls should be terminated over WiFi whenever possible, then the call control system 106 may attempt to deliver the call using WiFi over the packet-switched signalling path 131. SIP registrations typically have reasonably long time-outs, so it is possible that the user has moved out of WiFi coverage since the most recent successful registration. The call control system 106 15 learns whether the communication device 108 currently has WiFi coverage if and when it sends a SIP INVITE to the communication device 108. If no response is received within a given time following several attempts, then the call control system 106 can conclude that WiFi access is not available and may attempt to send the call via a different path, such as via the circuit-switched signalling path 129 or via a second packet-switched signalling path (not shown) that does not 20 include the unavailable WiFi connection. In this approach, the call control system 106 may not know in advance whether the connectivity between the communication device 108 and the packet-switched network 104 is capable of delivering a voice media stream with acceptable quality. Network congestion, poor WiFi signal strength or other factor could compromise voice quality. The communication device 108 could attempt to communicate with the call control 25 system 106 to indicate current WiFi signal strength, but this may not be a good predictor of acceptable voice quality because of other factors such as network congestion. Delivering the call with less than acceptable quality may detract significantly from user experience.
Another approach to TADS is for the call control system 106 to cooperate with the communication device 108 to determine the quality of the packet-switched media routing path 30 130, for example by means of the communication device 108 initiating a test loopback call to test
-23-
the media quality associated with the packet-switched media routing path 130, before deciding whether to deliver the call to the user over WiFi via the packet-switched paths 130, 131 or via the circuit-switched paths 128, 129.
Loopback test activity on terminating calls adds to the post-dial delay experienced by the 5 calling party, and this therefore has some negative impact on overall user experience. This is balanced against the improvement in user experience achieved by connecting the call via the path that is most likely to provide an acceptable level of voice quality. However, it may be possible to carry out the media quality test whenever a remote party performs activity on their remote party device 126 that is likely to lead to a call origination to the user. For example, the test could be 10 performed if the remote party opens a "phone" or a "contacts" entry in which the user is identified and/or by taking a more positive action in relation to originating a call to the user. For example, depending upon the type of remote part device 126, the remote party device 126 may transmit a capability request, for example in a SIP OPTIONS message, for the user prior to initiating a call to the user. The call control system 106 may determine that it is likely that the 15 call may be made to the user and may initiate the test on the basis of receiving the capability request. By the time the remote party has initiated a call to the user, the test may already have been completed and the results available to perform TADS.
Whereas TADS described above relates to selecting, or prioritising, a path over which to terminate a call, selecting, or prioritising, a path over which to originate a call is generally 20 referred to herein as "Originating Access Domain Selection" (OADS).
OADS is may be handled locally on a communication device 108 based on some combination of user preference, network operator policy and per-call prompting. One approach to OADS is that if the user has indicated a preference to originate all calls over WiFi, then whenever WiFi connectivity is available the communication device 108 will attempt to originate 25 all calls over WiFi. Before a user can originate calls over WiFi, the communication device 108 registers with a SIP service provided by the telecommunications network 100, and the communication device 108 can infer from the success of a registration attempt over WiFi that it does indeed have connectivity with the packet-switched network 104. However the communication device 108 may not know in advance whether the quality of the connection that 30 it has with the packet-switched network 104 is sufficiently good to support a voice call. For
-24-
example, the WiFi signal may be extremely weak or the bandwidth available on the uplink from the WiFi base station to the packet-switched network 104 may be heavily occupied by a large data transfer. In either of these cases, a voice call over WiFi access may be subject to severe and perhaps unacceptable degradation of quality. The communication device 108 may be able to 5 determine the relative strength of the WiFi signal but may not be able to determine in advance whether the WiFi connection will support a sufficiently good quality voice media stream, even if the signal level appears to be good. Furthermore, the communication device 108 may be unable to determine whether the uplink is congested. Originating a call with less than acceptable quality may detract significantly from user experience.
10 Another approach to OADS is for the communication device 108 to (choose to) test the quality of voice media over the WiFi access network before attempting to originate a call over WiFi.
Performing such a quality test after the user has attempted to initiate an originating call may not result in an acceptable user experience, since it will delay the connection of the call by 15 several seconds. However, it may be possible to carry out the test whenever the user performs activity on the communication device 108 that is likely to lead to a call origination. For example, the test could be performed if the user opens a "phone" or a "contacts" application on the communication device 108. By the time the user selects a contact to call or enters a phone number, the test may already have been completed and the results available to perform OADS. 20 In some embodiments, the communication device 108 may perform a media quality test periodically or intermittently, for example by detecting the expiry of media quality test time period, in other words a time period at which the media quality associated with a given media routing path is tested.
Whereas TADS and OADS described above generally (although not necessarily 25 exclusively) relate to selecting, or prioritising, a path over which to terminate and originate a call that has not yet been established, selecting, or prioritising, a path over which to route a call that is already in progress is generally referred to herein as "Voice Call Continuity" (VCC).
VCC is concerned with transitioning an existing established voice call from one path to another, either because the call is currently connected over a non-preferred path and the preferred 30 path has become available (for example because the user has walked into an area of WiFi
-25-
coverage which means that an existing call over the circuit-switched network 102 may be able to be transitioned to the packet-switched network 104) or because the call is connected over the preferred path, but the quality of the call has become degraded (for example because the user has walked out of an area of WiFi coverage). VCC may be performed by the call control system 5 106, based on communication with the communication device 108.
One approach to VCC assumes that that the purpose of WiFi offload is to connect voice calls over WiFi access whenever possible.
When a user who is currently engaged on a call connected via the circuit-switched network 102 enters an area of WiFi, the communication device 108 registers with a SIP service 10 in the telecommunications network 100. The call control system 106 may be made aware of this registration if the call control system 106 incorporates the SIP registrar function, or if the call control 106 system receives notification of SIP registration from a separate SIP registrar function, and this may trigger the call control system 106 to switch the call from the circuit-switched network 102 to the packet-switched network 104. Alternatively, the communication 15 device 108, having successfully registered, could initiate the switching of the call if it is aware that a call over the circuit-switched network 102 is currently in progress. This may or may not be possible, depending on the Operating System (OS) platform of the communication device 108. Either way, neither the call control system 106 nor the communication device 108 may know in advance whether the packet-switched network 104 will be capable of supporting the call 20 with sufficient quality. Therefore there is a risk that transitioning the call from the circuit-switched network 102 to the packet-switched network 104 over WiFi could cause serious degradation of call quality and impact upon user experience.
Similarly, when a user who is currently engaged on a call connected via WiFi access leaves the area of WiFi coverage, the quality of voice media will degrade progressively until the 25 media flow fails entirely. The communication device 108 could detect progressive degradation of the media and signal to the call control system 106 that the call should be transitioned to the circuit-switched network 102. This may still not provide a good user experience because WiFi coverage may be lost before this signalling can take place, and because the communication device 108 may have no visibility of the quality of the media it is sending upstream as perceived 30 by the other party in the call.
-26-
Another approach to VCC is to provide the user with manual controls that enable a call to be transitioned from the circuit-switched network 102 to the packet-switched network 104 or vice versa on demand. The user typically knows when they are entering or leaving an area of WiFi coverage, and can make the decision to transition the call based on currently perceived 5 quality of the media. While this solution may be satisfactory to some users, others will expect the service to provide automatic transition instead of, or perhaps in addition to, manually-controlled VCC.
The above-discussed approaches to VCC may not provide sufficiently high user experience.
10 Another approach to VCC is that the communication device 108 tests the media quality of the WiFi access network, for example by establishing a test media loopback connection,
before deciding whether to indicate to the call control system 106 that it wishes to switch the call to the WiFi access network (or before deciding to switch the call to the WiFi access network itself depending on its capabilities).
15 When a user who is currently engaged on a call that is connected via the WiFi access domain moves away from the centre of the WiFi hot spot, the quality of the media experienced by both parties on the call will progressively degrade until the media connection is effectively completely lost. In order to deliver an acceptable user experience, the call control system 106 causes the call to switch to the circuit-switched network 102 before the level of degradation 20 becomes unacceptable. The communication device 108 may monitor the quality of inbound media and indicate its desire to switch to the circuit-switched network 102 to the call control system 106 either by out-of-band (e.g. HTTP) means or by some specific use of SIP signalling. There are some shortcomings with this approach alone. First, the communication device 108 does not take into account the quality of the upstream media that is heard by the other party, 25 which may well be degraded to a far greater degree that the downstream media as seen by the communication device 108. Secondly, the communication device 108 may temporarily lose data connectivity such that any indication sent to the call control system 106 to request the call control system 106 to switch the call to the circuit-switched network 104 may be lost or seriously delayed.
-27-
As such, the call control system 106, which is typically relaying both upstream and downstream media streams, may monitor the media quality and transition the call in the event that media in either or both directions becomes unacceptable. This may be done instead of, or in addition to, the communication device 108 monitoring the quality of downstream media. The 5 call control system 106 may be able to monitor the quality of upstream media by observing the packet loss, jitter and delay of upstream RTP packets, and may be able to monitor indirectly the quality of the downstream media on the WiFi access network by monitoring RTCP reports from the communication device 108. When the call control system 106 detects media quality in either direction degrading beyond a pre-set threshold condition, the call control system 106 may switch 10 the call to the circuit-switched network 102.
In some embodiments, the call control system 106 may transmit a notification to the communication device 108 prior to switching the call to prompt the user to confirm whether or not they would like the call to be switched. On some occasions, the user may not wish to switch the call, for example if this would mean connecting the call over an 'open' WiFi connection in a 15 public place, albeit a connection that may be of sufficiently high quality for the voice call to be transitioned. The communication device 108 may then activate an alert, such as a visual and/or audible alert to inform the user of the possibility of, in this case, WiFi offload.
Various embodiments that will be discussed in more detail below relate, at least to some extent, to improving user experience in the context of VCC.
20 Figure 2 shows an exemplary communication device 200 adapted to conduct communication sessions such as voice calls in the telecommunication network 100 according to some embodiments. The communication device 200 may for example comprise the mobile telephone 112 depicted in Figure 1.
The communication device 200 comprises a processor 202 for carrying out data 25 processing tasks of embodiments. The communication device 200 comprises a memory 204 for storing data associated with embodiments. The communication device 200 comprises a user interface 206 for collecting user input from a user of the device, including user input associated with setting up and acceptance of communication sessions, such as telephone dialling number digits or incoming call acceptance or rejection commands. In some embodiments, the 30 communication device 200 also comprises a display 206. In some embodiments, the user
-28-
interface 206 may comprise a touch-screen layer overlaying display 206, upon which one or more touch-sensitive screen regions (or 'buttons') are configurable by the processor 202.
The communication device 200 comprises a first communication client 210 adapted to communicate via a first part of telecommunications network 100 via a first communication 5 interface 212. In some embodiments, the first communication client 210 comprises a circuit-switched communication client adapted to communicate via a circuit-switched part 102 of the telecommunications network 100. In such embodiments, the first communication interface 212 is a circuit-switched communication interface.
In some embodiments, the communication device 200 also comprises a second 10 communication client 214 adapted to communicate via a second, different part of the telecommunications network 100 via a second communication interface 216. In such embodiments, the first communication client 210 and the second communication client 214 are described as being co-located on the communication device 200. In some embodiments, the second communication client 214 comprises a packet-switched communication client adapted to 15 communicate via a packet-switched part 104 of the telecommunications network 100. In such embodiments, the second communication interface 216 is a packet-switched communication interface.
In some embodiments, the first communication interface 212 and the second communication interface 216 comprise one or more antennae for wireless radio communication, 20 which may be shared between the first communication interface 212 and the second communication interface 216. In some such embodiments, the first communication interface 212 and the second communication interface 216 comprise a cellular radio modem and a non-cellular radio modem respectively.
In alternative embodiments, the first communication interface 212 and the second 25 communication interface 216 comprise one or more hardware ports for fixed-line communication. In some such embodiments, the first communication interface 212 comprises a PSTN port. In some such embodiments, the second communication interface 216 comprises an Ethernet port.
Figure 3 is a message flow diagram showing operation in the telecommunications 30 network 100 of Figure 1 for routing an incoming call according to some embodiments.
-29-
Processing begins at step 3a, when the remote party device 126 transmits a communication session setup request in the form of a call setup request directed to the user and/or one or more of the user's communication devices 108. The communication session setup request of step 3a may pass through a number of further entities or network parts (not shown) 5 between the remote party device 126 and the circuit-switched network 102, such as one or more telephone switches. The circuit-switched network 102 has been configured to route communication session signalling data for calls involving the user - in this case the user is the called party - to the call control system 106. The circuit-switched network 102 contacts the call control system 106 with appropriate communication session signalling data accordingly in step 10 3b. Upon receipt of the communication session signalling data of step 3b, the call control system 106 takes control of the communication session, as shown by item 302.
The call control system 106 could potentially route the call to the user via either or both of the circuit-switched signalling path 129 and the packet-switched signalling path 131; via the circuit-switched network 102 or the packet-switched network 104 respectively. In some cases, 15 the call control system 106 may route the call to the user via both the circuit-switched signalling path 129 and the packet-switched signalling path 131, for example to a single communication device 108 that has co-located circuit-switched and packet-switched communication clients. In other cases, the call control system 106 may route the call to the user via only one of the circuit-switched signalling path 129 and the packet-switched signalling path 131.
20 On this occasion, the call control system 106 decides to attempt to route the call to the user over the packet-switched signalling path 131 using SIP. The decision may be based on preexisting preferences, for example, network and/or user preferences, for example that an attempt to deliver the call to the user over the packet-switched network 104 should be made wherever possible. In this way, the media routing path to be tested, on this occasion the packet-switched 25 media routing paths 130, may be selected from the plurality of media routing paths, in this case, the circuit-switched media routing path 128 and the packet-switched media routing paths 130, based at least on part on pre-existing preferred media routing path selection data. In some embodiments, the existing preferred media routing path selection data may be stored at the user database 107, which, as explained above, may which contain a number of user configurable 30 preferences, such as call routing preferences. In some embodiments, the pre-existing preferred
-30-
media routing path selection data may be stored at the communication device, for example in memory 204.
At step 3c, the call control system 106 transmits one or more messages that are operable to cause the communication device 108 to perform at least part of the media quality test 5 procedure for the packet-switched media routing path 130 in response to receiving a call setup request directed to the call party, from the remote party device 126. In some embodiments, the call control system 106 transmits the one or more messages via the packet-switched signalling path 131 which is associated with the packet-switched media routing path 130. In some embodiments, the one or more messages includes a call setup request for the call. In some 10 embodiments, the call control system 106 transmits one or more messaged comprising one or more predetermined parameters. The communication device 108 recognises the one or more predetermined parameters and performs at least part of the media quality test procedure. In some embodiments, the call control system 106 sends a SIP INVITE message to the communication device 108 over the packet-switched signalling path 131 via the packet-switched network 104 in 15 an attempt to deliver the terminating call.
At step 3d, the communication device 108 responds with a SIP 100 Trying message over the packet-switched signalling path 131. In some embodiments, at this point, the communication device 108 does not ring to attract the user's attention.
On this occasion, the communication device 108 selects the packet-switched media 20 routing path 130 as a given media routing path to be subject to a media quality test procedure. The communication device 108 may select the packet-switched media routing path 130 to be tested based, for example, on user and/or network preference. For example, the user may have specified that calls should be conducted via the packet-switched network 104 and/or via the packet-switched media routing path 130 where possible.
25 At step 3e, the communication device 108 sends a SIP INVITE message, the contents of which indicated that it is for a media loopback test. For example, the SIP INVITE message may include SDP that indicates a request for a loopback connection, in accordance with the Internet Draft drafit-ietf-mmusic-media-loopback-16. In other embodiments, the SIP INVITE could include, for example, an Alert - Info header set to "Loopback" towards the packet-switched 30 network 104 to initiate a media quality test procedure.
-31-
At step 3f, the call control system 106 responds to the INVITE message with a SIP 200 OK message over the packet-switched signalling path 131.
The communication device 108 establishes a media test connection with the call control system 106 over the packet-switched media routing path 130 via the packet-switched network 5 104 and media test data is communicated via the packet-switched media routing path 130, as shown by item 304. In some embodiments, the call control system 106 performs at least part of the media quality test procedure. For example, the call control system 106 may communicate media test data via the packet-switched media routing path 130 and/or analyse at least some of the media test data. In some embodiments, at least part of the media quality test procedure is 10 performed by the communication device 108 associated with the call party. For example, the communication device 108 may communicate media test data via the packet-switched media routing path 130 and/or analyse at least some of the media test data.
In some embodiments, a given media routing path, such as the packet-switched media routing path 130 may includes one or more intermediate nodes, between the call control system 15 106 and the communication device 108. The intermediate nodes may be switches, routers,
proxies, gateways, wireless access points or such like. In such embodiments, in which there is one or more intermediate nodes, the call control system 106 is not directly connected to the communication device 108.
On this occasion, at item 306, the communication device 108 analyses the media test 20 data, for example by measuring the quality of the looped back media and determines if it is sufficient to support the call to the user.
At step 3g, the communication device 108 transmits one or more messages comprising data derived from the media quality test procedure for the packet-switched media routing path 130 over the packet-switched signalling path 131 to the call control system 106. In some 25 embodiments, the one or more messages includes a call setup response for the call. In some embodiments, the data derived from the media quality test procedure indicates acceptance or rejection of a call setup request directed to the call party. In some embodiments, the derived data comprises media test data metrics and/or measurement information from which the call control system 106 can select a preferred media routing path.
-32-
In some embodiments, the derived data comprises an indication of the result of the analysis performed by the communication device 108, for example by transmitting a first predetermined message to indicate that the media quality associated with the given media routing path being tested is sufficient to support the call to the user or by transmitting a second, different 5 predetermined message to indicate that the media quality associated with the given media routing path being tested is not sufficient to support the call to the user.
For example, if the communication device 108 determines the media quality associated with the packet-switched media routing path 130 to be sufficient to support the call to the user, the communication device 108 may respond to the original INVITE call setup request message 10 from the call control system 106 with a SIP 180 Ringing message and may start ringing the user's communication device 108. In this way, the one or more messages comprising the data derived from the media quality test procedure includes a call setup response for the call that indicates acceptance of the call setup request directed to the call party.
However, if the communication device 108 determines the media quality associated with 15 the packet-switched media routing path 130 not to be sufficient to support the call to the user, the communication device 108 may respond to the original SIP INVITE message with a suitable SIP 4xx response message, for example a SIP 488 Not Acceptable Here response. In this way, the one or more messages comprising the data derived from the media quality test procedure includes a call setup response for the call that indicates rejection of the call setup request directed 20 to the call party.
Based on at least the received data derived from the media quality test procedure, the call control system 106 selects a preferred media routing path from the plurality of media routing paths 128, 130 for communicating media data associated with the call to and/or from at least one communication device 108 associated with the user. The at least one communication device 108 25 may be the same as the communication device 108 involved in the media quality test procedure or may be a different communication device 108. For example, the communication device 108 involved in the media quality test procedure may only be able to conduct communications via the packet-switched network 104. If the packet-switched media routing path 130 is determined not to be sufficient to support the call to the user, then the call control system 106 may select the 30 circuit-switched media routing path 126 as the preferred media routing path. If the
-33-
communication device 108 involved in the media quality test procedure is only able to conduct communications via the packet-switched network 104 then the media data associated with the call cannot be routed to that communication device 108 over the preferred media routing path, but could, instead, be routed to one or more different communication devices 108 associated with 5 the user (where available) that is able to conduct communications over the preferred media routing path via the circuit-switched network 102.
However, on this occasion, the call control system 106 selects the packet-switched media routing path 130 as the preferred media routing path and attempts to terminate the call to the user over the packet-switched signalling path 131 and the packet-switched media routing path 130 via 10 the packet-switched network 104.
Accordingly at step 3h, the call control system 106 transmits a communication session setup request to the communication device 108 over the packet-switched signalling path 131. Upon receipt of the communication session setup request, the communication device 108 alerts the user to the request for the incoming communication, as shown by item 308. Such alert may 15 involve activating one or more alert functions on the communication device 108, such as ring and/or vibrate functions.
The user accepts the communication session setup request, at item 310, by entering appropriate user input, for example by pressing an answer key via a user interface on the communication device 108. The communication device 108 transmits a communication session 20 setup response message (in this case an acceptance response message) back to the call control system 106 over the packet-switched signalling path 131, as shown by step 3i. The call control system 106 then transmits a communication session setup response (acceptance) message back to the remote party device 126 via the circuit-switched network 102, at steps 3j and 3k. Having completed the end-to-end communication session setup signalling flow, a communication 25 session is established between the remote party device 126 and the communication device 108, at item 312. Media data associated with the call can then be communicated via the preferred media routing path, the packet-switched media routing path 130, to and/or from the communication device 108.
The term "Voice Call Continuity" (VCC) is used herein generally to refer to the selection 30 of a preferred media routing path for an already-established call and possible transition from a
-34-
non-preferred media routing path to a preferred media routing path. In some embodiments, VCC is provided by the call control system 106. In some embodiments, VCC is provided by the call control system 106 in cooperation with one or more other entities in the telecommunications network 100. In some embodiments, VCC is provided by the call control system 106 in 5 cooperation with the communication device 108.
At least one communication device 108 associated with a call party is involved in the call and at least one remote party device 126 associated with a remote call party is involved in the call.
In some embodiments, the call control system 106 acts as a media quality monitoring 10 entity intermediate the at least one communication device 108 and the at least one remote party device 126. The call control system 106 performs at least part of a media quality monitoring procedure for the packet-switched media routing path 130 via which media data associated with the call is being communicated. In some embodiments, the call control system 106 remains on the media path, for example by specifying that it should remain on the media path when setting 15 up the call, and relays both upstream and downstream media streams between the communication device 108 and the remote party device 126. The call control system 106 may monitor the media quality of the media stream associated with the call, as indicated by item 314.
In some embodiments, the call control system 106 analyses at least some of the media data being communicated via the packet-switched media routing path 130. In some 20 embodiments, the call control system 106 determines a media quality associated with the analysed at least some of the media data.
In some embodiments, the call control system relays media data associated with the call from the at least one communication device 108 via the packet-switched media routing path 130. In some embodiments, the call control system 106 analyses at least some media data associated 25 with the call that is being communicated from the at least one communication device 108 via the packet-switched media routing path 130. For example, the call control system 106 may monitor the media quality associated with upstream media data over the packet-switched media routing path 130 by observing the packet loss, jitter and delay of upstream media data associated with the call, such as RTP packets.
-35-
In some embodiments, the call control system 106 relays media data associated with the call to the at least one communication device 108 via the packet-switched media routing path
130. In some embodiments, the call control system 106 analyses at least some media data associated with the call that is being communicated to the communication device 108 via the
5 packet-switched media routing path 130. For example, the call control system 106 may indirectly monitor the media quality associated with downstream media data over the packet-switched media routing path 130 by monitoring media quality reports, such as RTCP reports, from the communication device 108. The call control system 106 may monitor the media quality of the media quality associated with the call instead of, or in addition to, the communication 10 device 108 monitoring the quality of downstream media data.
On this occasion, the call control system 106 determines that media quality in one or both directions has become unacceptable, for example if the media quality in either direction has degraded beyond a pre-set threshold condition. The call control system 106 selects a preferred media routing path, from the plurality of media routing paths, for communicating media data 15 associated with the call to and/or from one or more of the at least one communication devices associated with the call party. On this occasion, the call control system selects the circuit-switched media routing path 128 as the preferred media routing path for communicating media data associated with the call to and/or from one or more communication devices 108 associated with the user. The call control system 106 then transitions the call so that media data associated 20 with the call is communicated to and/or from the communication device 108 (or another communication device 108 associated with the user) via the now-preferred circuit-switched media routing path 128 over the circuit-switched network 102. Such transitioning may comprise transmitting a communication session setup request to the communication device 108 over the circuit-switched signalling path 129 and, upon acceptance, tearing down the media connection to 25 communication device 108 over the packet-switched media routing path 130 by sending appropriate signalling, such as a SIP BYE message, over the packet-switched signalling path
131.
In some embodiments, an established communication session 312 consists of multiple communication session legs. A communication session leg is a subset of the established 30 communication session that provides spans only a part of a communication session path. For example, communication session 312 may comprise one communication session leg between
-36-
remote party device 126 and call control system 106, and another communication session leg between call control system 106 and communication device 108. This allows call control system 106 to maintain its presence on the communication session path and provide additional features or call services if required. Each of the communication session legs between call control system 5 106 and the remote party device 126 may actually be subdivided into a number of further legs, but will be discussed henceforth as a single leg for the sake of simplicity. Further, the communication session legs need not connect to the same node in call control system 106 and may be bridged by one or more further legs in order to provide the required end-to-end communications.
10 Figure 4 is a message flow diagram showing operation in telecommunications network
100 of Figure 1 for controlling a communication device 108 associated with the user, in accordance with some embodiments.
In these embodiments, the communication device 108 initiates a media quality test procedure for the packet-switched media routing path 130, determines that the packet-switched 15 media routing path 130 would support the call with sufficient quality and selects the packet-
switched media routing path 130 as a preferred media routing path. Media data associated with the call is then routed between the communication device 108 and the call control system 106 over the preferred, packet-switched media routing path 130 via the packet-switched network 104.
Processing begins at item 402 when the communication device 108 detects one or more 20 predetermined triggers prior to originating the call. In some embodiments, the communication device 108 initiates a media quality test procedure in response to detecting the one or more predetermined triggers. In some embodiments, the one or more predetermined triggers includes detecting an attempt to originate the call. In some embodiments, the one or more predetermined triggers includes detecting activity that may lead to a call origination attempt.
25 In response to detecting the one or more predetermined triggers, the communication device 108 initiates a media quality test procedure for a given media routing path; in this case the packet-switched media routing path 130. In some embodiments, the communication device 108 selects the packet-switched media routing path 130 from the plurality of media routing paths based at least on part on pre-existing preferred media routing path selection data which may, for 30 example, be store in memory 204.
-37-
At step 4a, the communication device 108 transmits a SIP INVITE message over the packet-switched signalling path 131. The contents of the SIP INVITE message are modified to indicate that the message is for a media quality test call or procedure. This may be, for example, by including SDP that indicates a request for a loopback connection, as explained above.
5 The call control system 106 receives the SIP INVITE and recognises the SIP INVITE
message as requesting a media quality test call at least on the basis of the SDP that indicates the request for the loopback connection. At step 4b, the call control system 106 responds to the SIP INVITE message of step 4a with a SIP 200 OK response over the packet-switched signalling path 131. The response includes a Session Description Protocol (SDP) offer that identifies a 10 loopback media port to which the communication device 108 can send media test data over the packet-switched media routing path 130.
At step 4c, following receipt of the SIP 200 OK response, the communication device 108 sends media test data via the packet-switched media routing path 130 towards the designated port on the call control system 106. The media test data may, for example, comprise a series of RTP 15 media test packets.
At step 4d, the call control system 106 sends each media test packet back towards the communication device 108 over the packet-switched media routing path 130.
At item 404, the communication device 108 analyses the media test data to assess the media quality associated with the packet-switched media routing path 130. The communication 20 device 108 may measure the round trip delay, packet loss and jitter of the returned media test stream and derive an estimate of media quality associated with packet-switched media routing path 130. Since the media test stream has been sent both upstream and downstream over the packet-switched media routing path 130, the media test stream received at the communication device 108 has been subjected to both upstream and downstream quality impairments in the 25 packet-switched media routing path 130. The derived estimate of media quality represents an aggregate of upstream and downstream quality associated with the packet-switched media routing path 130.
At step 4e, having analysed the test media stream, the communication device 108 tears down the test media call with the call control system 106 by sending a SIP BYE request to the 30 call control system 106 over the packet-switched signalling path 131. In this way, the media
-38-
quality test procedure includes media test data being communicated via the packet-switched media routing path 130 and the media test data being analysed.
At item 406, the communication device 108 selects a preferred media routing path from the plurality of media routing paths 128, 130 for communicating media data associated with the 5 call to and/or from the call control system 106. On this occasion, the communication device 108 determines the media quality associated with the packet-switched media routing path 130 to be sufficient to support the originating call directed to the remote party and selects the packet-switched media routing path 130 as the preferred media routing path, at least in part on the basis of the media quality test procedure.
10 As such the communication device 108 decides whether to use the packet-based network
104 for the originating call, based on knowledge not just of the mere availability of connectivity to the packet-switched network 104, but also of the expected media quality over the packet-switched network 104.
At step 4f, the communication device 108 transmits a communication session setup 15 request directed to the remote party device 126 to the call control system 106 over the packet-switched signalling path 131. Upon receipt of the communication session setup request of step 4f, the call control system 106 takes control of the communication session, as shown by item 408.
Having taken control of the communication session, the call control system 106 transmits 20 a communication session setup request to the remote party device 126 via the circuit-switched network 102, at steps 4g and 4h. The communication setup request of step 4h may pass through a number of further entities or network parts (not shown) between the remote party device 126 and the circuit-switched network 102, such as one or more telephone switches.
Upon receipt of the communication session setup request, the remote party device 126 25 alerts the remote party to the request for incoming communication as shown by item 410. The remote party accepts the communication session setup request at step 412. This results in remote party device 126 transmitting a communication session setup response message (in this case an acceptance response message) back to the circuit-switched network 102, at step 4i. The circuit-switched network 102 has been configured to route communication session signalling data
-39-
relating to calls involving the user to the call control system 106, and contacts the call control system 106 with appropriate communication session signalling data accordingly, at step 4j.
Upon receipt of the communication session signalling data of step 4j, the call control system 106 then transmits a communication session setup response (acceptance) message back to 5 the communication device 108 over the packet-switched signalling path 131, at step 4k. Having completed the end-to-end communication session setup signalling flow, a communication session is established between the communication device 108 and the remote party device 126, as shown by item 414. Media data associated with the call is then routed between the remote party device 126 and the call control system 106 over the third media routing path 132 via the 10 circuit-switched network 102 and between the call control system 106 and the communication device 108 over the preferred, packet-switched media routing path 130 via the packet-switched network 104.
Figure 5 shows a message flow diagram describing operation in telecommunications network 100 of Figure 1 for controlling a communication device 108 associated with the user, in 15 accordance with some embodiments.
In these embodiments, the communication device 108 initiates a media quality test procedure for the packet-switched media routing path 130, determines that the packet-switched media routing path 130 would not support the call with sufficient quality and selects the circuit-switched media routing path 128 as a preferred media routing path. Media data associated with 20 the call is then routed between communication device 108 and the call control system 106 over the preferred, circuit-switched media routing path 128 via the circuit-switched network 102.
Processing begins at item 502 when the communication device 108 detects one or more predetermined triggers prior to originating the call. In response to detecting the one or more predetermined triggers, the communication device 108 initiates a media quality test procedure 25 for a given media routing path; in this case the packet-switched media routing path 130.
At step 5a, the communication device 108 initiates the media quality test by transmitting a SIP INVITE message over the packet-switched signalling path 131. The contents of the SIP INVITE message are modified to indicate that the message is for a media quality test call or procedure. This may be, for example, by including SDP that indicates a request for a loopback 30 connection.
-40-
The call control system 106 receives the SIP INVITE and recognises the SIP INVITE message as requesting a media quality test call at least on the basis of the SDP that indicates the request for the loopback connection. At step 5b, the call control system 106 responds to the SIP INVITE message of step 5a over the packet-switched signalling path 131 with a SIP 200 OK 5 response that includes a Session Description Protocol (SDP) offer that identifies a loopback media port to which the communication device 108 can send media test data.
At step 5c, following receipt of the SIP 200 OK response, the communication device 108 sends media test data, for example a series of Real-time Transport Protocol (RTP) media test packets, towards the designated port on the call control system 106 over the packet-switched 10 media routing path 130.
At step 5d, the call control system 106 sends each media test packet back towards the communication device 108 over the packet-switched media routing path 130.
At item 504, the communication device 108 analyses the media test data to assess the media quality associated with the packet-switched media routing path 130.
15 At step 5e, having analysed the test media stream, the communication device 108 tears down the test media call with the call control system 106 by sending a SIP BYE request over the packet-switched signalling path 131. In this way, the media quality test procedure includes media test data being communicated via the packet-switched media routing path 130 and the media test data being analysed.
20 At item 506, the communication device 108 selects a preferred media routing path from the plurality of media routing paths 128, 130 for communicating media data associated with the call to and/or from the call control system 106. On this occasion, the communication device 108 determines the media quality associated with the packet-switched media routing path 130 not to be sufficient to support the originating call directed to the remote party and selects a media 25 routing path 126 other than the packet-switched media routing path 130, on this occasion the circuit-switched media routing path 128, as the preferred media routing path, at least in part on the basis of the media quality test procedure.
As such the communication device 108 decides whether to use the packet-based network 104 for the originating call, based on knowledge not just of the availability of connectivity to the
-41-
packet-switched network 104, which is available on this occasion, but also of the expected media quality over the packet-switched network 104, which is considered not to be sufficient on this occasion.
At step 5f, the communication device 108 transmits a communication session setup 5 request directed to the remote party device 126 over the circuit-switched signalling path 129 via the circuit-switched network 102.
The circuit-switched network 102 has been configured to route communication session signalling data for calls involving the user to the call control system 106, and the contacts call control system 106 with appropriate communication session signalling data accordingly at step 10 5g. Upon receipt of the communication session signalling data of step 5g, the call control system 106 takes control of the communication session, as shown by item 508.
Having taken control of the communication session, the call control system 106 transmits a communication session setup request over the third signalling path 133 via the circuit-switched network 102 to the remote party device 126, at steps 5h and 5i. The communication setup 15 request of step 5i may pass through a number of further entities or network parts (not shown) between the remote party device 126 and the circuit-switched network 102, such as one or more telephone switches.
Upon receipt of the communication session setup request, the remote party device 126 alerts the remote party to the request for incoming communication as shown by item 510. The 20 remote party accepts the communication session setup request at step 512. This results in the remote party device 126 transmitting a communication session setup response message (in this case an acceptance response message) back to call control system 106 over the third signalling path 133 via the circuit-switched network 102, at step 5k. The circuit-switched network 102 has been configured to route communication session signalling data relating to calls involving the 25 user to the call control system 106, and contacts the call control system 106 with appropriate communication session signalling data accordingly at step 51.
Upon receipt of the communication session signalling data of step 51, the call control system 106 then transmits a communication session setup response (acceptance) message back to the communication device 108 over the circuit-switched signalling path 131 via the circuit-30 switched network 102, at steps 5m and 5n. Having completed the end-to-end communication
-42-
session setup signalling flow, a communication session is established between the remote party device 126 and the call control system 106 over the third media routing path 132 via the circuit-switched network 102 and between the call control system 106 and the communication device 108 over the preferred, circuit-switched media routing path 130, as indicated by item 514. Media 5 data associated with the call is then routed between the call control system 106 and the communication device 108 over the preferred, circuit-switched media routing path 130 via the circuit-switched network 104.
In embodiments described above with reference to Figure 5, the communication device 108 determined the media quality associated with the packet-switched media routing path 130 10 not to be sufficient and selected a media routing path 126 other than the packet-switched media routing path 130, on that occasion the circuit-switched media routing path 128, as the preferred media routing path, at least in part on the basis of the media quality test procedure. The communication device 108 transmitted a communication session setup request directed to the remote party device 126 over the circuit-switched signalling path 129 via the circuit-switched 15 network 102.
In other embodiments, instead of the communication device 108 transmitting the communication session setup request directed to the remote party over the circuit-switched signalling path 129 via the circuit-switched network 102, the communication device 108 may transmit the communication session setup request directed to the remote party to the call control 20 system 106 over the packet-switched signalling path 131 via the packet-switched network 104. In such other embodiments, the communication device 108 may be configured to transmit data derived from the media quality test procedure for the media routing path being tested, on this occasion the packet-switched media routing path 130, to the call control system 106. The call control system 106 may be configured to select the preferred media routing path, on this 25 occasion the circuit-switched media routing path 128, for communicating media data associated with the call to and/or from the communication device 108, on the basis of at least the data derived from the media quality test procedure that was received from the communication device 108. On this occasion, the call control system 106 may transmit a first communication session setup request directed to the communication device 108 over the circuit-switched signalling path 30 129 via the circuit-switched network 102 (or possibly via the packet-switched signalling path 131 if media data associated with the call could still be communicated via the preferred, circuit-
-43-
switched media routing path 128), which could automatically be accepted by the communication device 108 upon receipt, and a second communication session setup request directed to the remote party device 126 via the circuit-switched network 102.
Figure 6 shows telecommunications network 100 depicted in Figure 1 in more detail 5 according to embodiments.
Similarly to the telecommunications network 100, the telecommunications network 100 includes a circuit-switched network 102 and a packet-switched network 104. The telecommunications network 100 also includes a SIP-based network in the form of an IP Multimedia Subsystem (IMS) network 652. IMS networks have an architecture developed by 10 the 3GPP wireless standards body for providing both mobile and fixed multimedia services.
The IMS network 652 includes a call control system 106. The call control system 106 includes a Session Border Controller (SBC) entity 654 that controls call-related signalling information and media streams in the IMS network 656. The SBC entity 654 may comprise a Proxy Call Session Control Function (P-CSCF) entity and a Border Gateway Function (BGF) 15 entity whose function in the IMS architecture is known in the art and will not be described here in detail. In some embodiments, the call control system 106 also includes a service platform 656 which provides call processing and control, and is referred to as an application server (AS) to accord with standard notation for an IMS architecture. In some embodiments, the application server 656 is a Service Centralization & Continuity Application Server (SCC-AS). The SCC-AS 20 656 may, for example, determine which of two paths to route any given terminating call over (TADS) and/or may cooperate with a communication device 106to perform VCC.
As explained above, a communication device 108 may test the quality of voice media over the packet-switched network 104 before attempting to originate a call over WiFi. The communication device 108 may initiate this test by sending a SIP INVITE towards the network. 25 The contents of the INVITE message indicate to the network 100 that this is a media test call. The first SIP signalling element in the network 100 that receives such an INVITE, in this case the access SBC 654, recognizes the INVITE as requesting a test call. The SBC 654 responds with a 200 OK response that includes an SDP offer that identifies a loopback media port to which the communication device 108 can send media. On receipt of the 200 OK response, the 30 communication device 108 sends a series of RTP test media packets towards the designated port
-44-
on the SBC 662, which turns each packet round and sends it back towards the communication device 108. The communication device 108 may measure the round trip delay, packet loss and jitter of the returned media stream to derive an estimate of media quality for the WiFi access network.
5 The SCC-AS 656 may cooperate with the communication device 108 and the access SBC
654 to determine the quality of WiFi coverage by means of a test loopback call before deciding whether to deliver the call via the circuit-switched network 102 or via the packet-switched network 102. In some embodiments, the SCC-AS 656 sends a SIP INVITE to the communication device 108 as an attempt to deliver the terminating call. The communication 10 device 108 responds with 100 Trying and does not ring. The communication device 108 may send an INVITE with SDP that indicates a request for a loopback connection towards the network. The access SBC 654 intercepts this INVITE and responds with 200 OK to enable the communication device 108to establish a test media connection to the access SBC 654. The communication device 108 measures the quality of the looped back media and determines if it is 15 good enough to support the call. If so, the communication device 108 responds to the original INVITE with 180 Ringing and starts to ring. The SIP-based call setup then proceeds as described above. If not, the communication device 108 responds to the original INVITE with a suitable 4xx response, for example 488 Not Acceptable Here. The SCC-AS 656 may take this as an indication that it cannot deliver the call over the packet-switched network 104 (or at least over 20 a media routing path in the packet-switched network 104 that was tested), and attempts to deliver the call via the circuit-switched network 102.
Other ways of establishing a loopback test media call with the communication device 108 are envisaged, for example by originating the setup of such a test call from the SCC-AS 656 itself.
25 When the communication device 108 enters an area of WiFi coverage, the communication device 108 will typically register with the network 100. Once successfully registered, if the communication device 108 is currently engaged in a call via the circuit-switched network 102, the communication device 108 may indicate to the SCC-AS 656 that it wishes to switch the call from the circuit-switched network 102 to the packet-switched network 30 104. This indication could be sent by some out-of-band means (e.g. via an HTTP request) or by
-45-
making some specific use of SIP signalling towards the SCC-AS 656. In some embodiments, the communication device 108 tests the media quality of the WiFi access network by establishing a test media loopback connection before deciding to indicate to the SCC-AS 656 that it wishes to switch the call to the WiFi access network. In some embodiments, the access SBC 654, which is 5 typically relaying both upstream and downstream media streams, monitors the media quality of a call involving the user and send reports to the SCC-AS 656 in the event that media in either direction becomes unacceptable. This may be done instead of, or in addition to, the communication device 108 monitoring the quality of downstream media. The access SBC 654 may monitor the quality of upstream media by observing the packet loss, jitter and delay of 10 upstream RTP packets, and can indirectly monitor the quality of the downstream media on the WiFi access network by monitoring RTCP reports from the communication device. When the access SBC 654 detects the media quality in either direction degrading beyond a pre-set threshold condition, it may indicate degraded media to the SCC-AS 656 by means of SIP signalling, for example a SIP INFO or PUBLISH message containing a voice quality alert report 15 according to RFC 6035. Upon receipt of such a voice quality alert report, the SCC-AS 656 may then switch the call to the circuit-switched network 102.
Figure 7 shows telecommunications network 100 depicted in Figure 1 in more detail according to embodiments; in such embodiments, circuit-switched network part 102 comprises a mobile (or 'cellular') telephony network part 102a, and packet-switched network part 104 20 comprises IP network part 104a. A client-shared telephony service is hosted and controlled by a call control system 106.
According to the embodiments shown in Figure 7, a user of the client-shared telephony service has a number of devices 108 associated with their multiple communication client shared dialling number through which they may conduct communications via the service. The user's 25 associated devices include, at least, mobile telephone 112. In embodiments, the user's associated devices also include tablet 114.
Mobile telephone 112 is equipped with a cellular radio telephony interface and circuit-switched communications client for conducting communications in telecommunications network 100 via radio link 702 with mobile telephony network part 102a. Mobile telephone 112 is also 30 equipped with at least one wireless packet-switched interface and packet-switched
-46-
communications client for conducting communications in telecommunications network 100 via radio link 704 with IP network part 104a. This wireless packet-switched interface could comprise a short-range radio interface such as WiFi or Bluetooth, and/or an interface for communication of packet data over a mobile network, such as LTE-A, HSPA, W-CDMA or 5 Mobile WiMax. In such embodiments where mobile telephone 112 is equipped with multiple communication clients, the communication clients can be referred to as co-located communication clients.
Tablet 114 is equipped with at least one wireless packet-switched interface and packet-switched communications client for conducting communications in telecommunications network 10 100 via radio link 700 with IP network 104a.
Mobile telephony network part 102a allows for provision of telephony services to a number of mobile telephones, although only the user's mobile telephone 710 is depicted. Mobile telephony network part 102a comprises home mobile network part 706, which is generally associated with mobile telephone 112. Communication sessions initiated to a telephone dialling 15 number associated with mobile telephone 112, e.g. a Mobile Station International Subscriber Directory Number (MSISDN), are routed to home mobile network part 706 for processing as a result of that general association. Home mobile network part 706 comprises mobile switching centre (MSC) 708 and home location register (HLR) 710. HLR 710 comprises a database which provides MSC 708 with data relating to users generally associated with home mobile network 20 706 upon request, such as the location of their mobile telephones and any configuration data (such as call routing triggers, billing information etc.).
Mobile telephony network part 102a also comprises visited mobile network part 712, which is transiently associated with mobile telephone 112. Visited mobile network part 712 comprises serving MSC 714, Visitor Location Register (VLR) 716 and base transceiver station 25 (BTS) 718. BTS 718 transmits radio signals to, and receives radio signals from, the circuit-
switched communications client and cellular radio telephony interface on mobile telephone 112 and radio communication link 702. It is this communication relationship that provides the transient association between mobile telephone 112 and visited mobile network part 712. Mobile telephone 112 is located in an area (commonly known as a 'cell') served by BTS 718. BTS 718 30 may be controlled by a basestation controller (BSC; not shown), which may also control a
-47-
number of further BTSs (also not shown), which in combination with a number of further BSCs and BTSs, may provide a large number of geographically distributed cells served by MSC 714.
When mobile telephone 112 associates with serving MSC 714 (e.g. by entering a cell served by MSC 714), serving MSC 714 informs home MSC 708, which in turn updates HLR 710 5 with the location of mobile telephone 112. In this way, HLR 710 is kept up to date with the most recent location of mobile phone 112. Additionally, any configuration data relating to mobile telephone 112 is copied into VLR 716. This allows calls placed by the circuit-switched client on mobile telephone 112 while being served by serving MSC 714 to be correctly handled according to the aforementioned configuration data.
10 Depending on the location of mobile telephone 112, home mobile network part 706 may also serve mobile telephone 112, in which case it will comprise the same network part as visited mobile network part 712.
According to embodiments, the client-shared telephony service is provided by associating one or more communication clients (including the packet-switched communication client on 15 mobile telephone 112) with a telephone dialling number associated with the circuit-switched communication client on mobile telephony device 112, such as its MSISDN. This can be referred to as twinning the additional communication clients with the circuit-switched communication client. According to such embodiments, the multiple communication client shared dialling number is therefore the MSISDN of the circuit-switched communication client on 20 mobile telephony device 112.
A communication session between a communication client on one of the user's devices 108 and a communication client on a device of a remote party 126 is routed between the remote party device 126 and home mobile network part 706 via one or more further network parts (not shown). In some embodiments, remote party device 126 is also a mobile telephone, in which 25 case the communication session may be routed via one or more serving mobile network parts and home mobile network parts associated with the remote party device. These could be the same as mobile network parts 706 and/or 712, or further mobile network parts (not shown). In other embodiments, remote party device 126 is a fixed line circuit-switched telephone, such as a POTS telephone, in which case the communication session may be routed via the PSTN and one or 30 more gateway entities, such as a gateway MSC, to convert between the various protocols and
-48-
data formats used to transfer media data and signalling data in the PSTN and mobile telephony network part 102a. Home MSC 708 may fulfil the role of the gateway entity, or it may be fulfilled by another intermediate entity. In further alternative embodiments, remote party device 126 is an IP telephony device, such as SIP telephone, in which case the communication session 5 may be routed via an IP network, such as the Internet, and one or more gateway entities. Again, home MSC 708 may fulfil the role of the gateway entity, or it may be fulfilled by another intermediate entity.
A communication session between a communication client on one of the user's devices 108 and a communication client on remote party device 126 can be routed between mobile 10 telephony network part 102a and call control system 106 via link 122, which could be, for example, a SIP trunk, or other high capacity communications link. In the embodiments shown in Figure 7, home MSC 708 is shown as being the gateway entity between mobile network part 102a and call control system 106, however, this role could equally be performed by another entity in mobile network part 102a, such as serving MSC 714. Further, the links between IP 15 network part 104a, call control system 106 and mobile telephony network part 102a may comprise one or more gateway or session border controller entities (not shown) which carry out conversion between the various protocols and data formats used to transfer media data and signalling data in the different networks making up telecommunications network 100.
In order to provide the client-shared telephony service, mobile telephony network part 20 102a is configured to route communication session setup, signalling and or/media data relating to one of the user's devices 108 via call control system 106. This can be achieved by configuring HLR 710 with one or more trigger conditions for communication session data relating to the multiple communication client shared dialling number, such that data originating from or directed to that dialling number results in appropriate communication session signalling data 25 being sent to call control system 106. According to some embodiments, this could be a routing query to establish where the communication session data should be routed.
In other embodiments, the communication session data itself may be routed to call control system 106, which then handles the sending of communication session data to any appropriate further entities. In such embodiments, communication session data transmitted from 30 call control system 106 to the circuit switched client on mobile telephone 112 would be
-49-
undesirably routed back to call control system 106 by mobile telephony network 102a if routed by conventional methods on the basis of the MSISDN of the circuit-switched client. There are several methods for overcoming this behaviour, for example, the transmitted data may include additional information to indicate that the triggers stored in HLR 710 should not be utilised, 5 causing HLR 710 to return the location of the mobile telephone 112 instead of invoking the associated trigger. Alternatively, call control system may be adapted to query HLR 710 directly via a further interface (not shown) to obtain a temporary routing number (TRN) for communicating with the circuit-switched client on mobile telephone 112. Routing communications to the circuit-switched client on mobile telephone 112 via such a TRN would 10 not invoke the triggers stored in HLR 710, as the multiple communication client shared dialling number is not used.
Call control system 106 comprises call control server 720, and user database 128. Call control server 718 is responsible for processing communication session data relating to the user, and is aided in doing so by user database 128. Call control system 106 may further comprise a 15 media gateway controller, service platform, call agent, application server or sofitswitch and may perform other functions typically associated with such entities. The elements comprised by call control system 106 may be located within mobile telephony network part 102a and/or IP network part 104a, or one or more other networks (not shown).
Figure 8 shows telecommunications network 100 depicted in Figure 1 in more detail 20 according to embodiments; in such embodiments, circuit-switched network part 102 comprises a fixed line telephony network part 102b (such as the PSTN), and packet-switched network part 104 comprises IP network part 104a. A client-shared telephony service is hosted and controlled by a call control system 106, which comprises call control server 720 and user database 120, the functions of which are the same as described previously in relation to Figures 1 and 7.
25 Circuit-switched fixed line telephony network 102b comprises telephone switch 804 and routing database 806. Routing database 806 is queried by telephone switch 804 in order to establish how to route communication session data. As well as providing basic routing information, routing database 806 can be configured with a number of triggers in relation to certain calling or called parties. In embodiments of the present disclosure, routing database 806
-50-
is configured to route all communication session data either originating from, or directed to, one of the users devices 108 via call control system 106.
In the embodiment shown in Figure 8, the user's communication devices 108 comprise desk phone 110 and tablet 114. Desk phone 110 is configured with a fixed-line circuit switched 5 PSTN interface and a circuit switched communication client for conducting communications in telecommunications network 100 via fixed-line link 802 with PSTN network part 102b. Tablet 114 is equipped with a wireless packet-switched interface and a packet-switched client for communicating for conducting communications in telecommunications network 100 via radio link 700 with IP network part 104a. The packet-switched client on tablet 114 has been 10 configured into the multiple client shared dialling number telephony service with respect to a telephone dialling number associated with the circuit-switched client on desk phone 110. Again, this can also be described by referring to the packet switched communication client on tablet 114 as having been twinned with the circuit switched client on desk phone 110.
Some embodiments described above relate to network and client functions that support 15 the WiFi offload service to enable the service to make better decisions about access domain selection and voice call continuity, based on observation of the characteristics of media streams to and/or from a communication device. These observations may support an accurate estimation of actual or forecast voice media quality for both parties in a call connected over WiFi access, and this estimation of perceived voice quality may be used to drive decision making logic aimed 20 at maximizing the overall quality of the customer experience.
Some embodiments described above relate to media quality testing, such as loopback media testing, initiated by a communication device 108. In such embodiments, the communication device 108 may be configured to initiate the media test, to perform some or all of the media test, for example by originating a loopback media stream, to measure characteristics of 25 the returning media, and to make appropriate decisions about disposition of calls based on the results of the test. In some such embodiments, the call control system 106 is configured to detect SIP or other signalling from the communication device 108 requesting initiation of the media test, for example requesting the media loopback test, and to act on this signalling by looping back media for such test calls.
Some embodiments described above relate to media quality monitoring at the call control system 106. In some such embodiments, the call control system 106 monitors the characteristics of (at least) upstream media data, for example RTP streams, received from the communication device 108, compares the relevant statistics of the media data, in real time, with predetermined quality thresholds and transitions the call, for example via the circuit-switched network 102 and the packet-switched network 104, as necessary.
The above embodiments are to be understood as illustrative examples of the invention. Further embodiments of the invention are envisaged. For example:
Some embodiments have been described above in terms of selecting a media routing path for a voice call. However, other embodiments relate to video calling which, in general, is not conducted via a circuit switched network 102. In such other embodiments, the use of media quality testing, such loopback test media calls, is aimed at determining whether a video call can be established via the packet-switched network 104 with acceptable quality. If not, then the video call can be 'failed back' to a pure voice call - via the circuit-switched network 102 or via the packet-switched network 104.
In such embodiments, prior to initiating a video call, the communication device 108 may perform a media quality test, for example a loopback media test call, where the media test data characteristics are similar to the characteristics of the desired video media stream. If the results indicate unacceptable video quality, the call is initiated as voice only. Furthermore, in such embodiments, prior to accepting a terminating video call attempt, the communication device 108 may perform a media quality test, such as a loopback video media test call. If the results indicate unacceptable video quality, the communication device 108 may responds to a SIP INVITE for the video call with an SDP offer that includes audio media only. Finally, when a video call is currently in progress, the quality of video media is monitored by the communication device 108 and/or by the call control system 106 as described in relation to VCC above. If the call control system 106 detects poor video quality, it can react by re-negotiating the call as audio only.
In some embodiments described above, the call control system 106 remains on the media path for a call and monitors and analyses the media quality associated with media data that it is relaying. In some embodiments, one or more elements in the telecommunications network 100, 600 may remain on the media path and may transmit at least some of the media data it relays to
-52-
one or more other elements in the telecommunications network 100, 600 that analyses the media data.
In embodiments described above, all calls involving a given user may be subject to TADS, OADS and/or VCC. However, on some occasions, it may be desired that certain calls in 5 which the user is involved are not subject to one or more of TADS, OADS and/or VCC. For example, it may be desirable that originating calls to one or more predetermined parties, such as emergency services, are not subject to OADS, particularly where this may introduce delay into establishing the emergency call. Furthermore, it may be desirable and/or necessary that emergency calls only be conducted over a circuit-switched network 102, 602 and that WiFi 10 offload not be offered for such calls. Such calls may be detected, for example, by identifying the one or more predetermined numbers in call signalling information for the call.
In some embodiments described above, a selection is made between a circuit-switched mobile access connection or a packet-switched access connection such as over WiFi. In an LTE network, there is no circuit-switched mobile access connection. Voice media data is transmitted 15 over the LTE access network as VoIP. In this case, a communication device 108 having co-located communications clients can have two packet-switched interfaces, an LTE and a WiFi interface, and may have either two distinct packet switched communications clients (one for LTE and one for WiFi) or a single packet-switched communications client that may use either LTE or WiFi for access. Although some embodiments described above relate to transitioning between 20 circuit-switched and packet-switched media routing paths, it will be appreciated that, in some cases, the transition may be between two (or more) circuit-switched media routing paths or two (or more) packet-switched media routing paths, for example between a packet-switched path in LTE and a packet-switched path over WiFi. It will be appreciated that an LTE smartphone may also have a circuit-switched communications client to handle circuit-switched communications, 25 for example in the case where neither LTE nor WiFi connectivity is available.
It is to be understood that any feature described in relation to any one embodiment may be used alone, or in combination with other features described, and may also be used in combination with one or more features of any other of the embodiments, or any combination of any other of the embodiments. Furthermore, equivalents and modifications not described above
-53-
may also be employed without departing from the scope of the invention, which is defined in the accompanying claims.
-54-

Claims (1)

1. A method of routing a call involving a call party in a telecommunications network via a selected media routing path of a plurality of different media routing paths, each of the media
5 routing paths being for communicating media data to and/or from at least one communication device associated with the call party, the method comprising, at a call control system in the telecommunications network:
receiving data derived from a media quality test procedure for a given media routing path, the media quality test procedure including media test data being communicated via the
10 given media routing path and the media test data being analysed; and selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party on the basis of at least the received data derived from the media quality test procedure.
15
2. The method according to claim 1, further comprising:
selecting the given media routing path from the plurality of media routing paths based at least on part on pre-existing preferred media routing path selection data.
20 3. The method according to claim 1 or 2, further comprising:
performing at least part of the media quality test procedure.
4. The method according to any preceding claim, wherein at least part of the media quality test procedure is performed by one or more given communication devices associated with
25 the call party.
5. The method according to claim 4, further comprising:
transmitting one or more messages that are operable to cause the given communication device to perform at least part of the media quality test procedure for the given media routing
30 path.
6. The method according to claim 5, wherein the one or more messages are operable to cause the given communication device to initiate the media quality test procedure.
7. The method according to claim 5 or 6, further comprising:
transmitting the one or more messages via a given signalling path associated with the given media routing path.
8. The method according to any of claims 5 to 7, wherein the one or more messages includes a call setup request for the call.
9. The method according to any of claims 5 to 8, further comprising:
transmitting the one or more messages in response to receiving an indication that a call setup request directed to the call party may be received.
10. The method according to any of claims 5 to 8, further comprising:
transmitting the one or more messages in response to receiving a call setup request directed to the call party.
11. The method according to any preceding claim, further comprising:
receiving one or more messages comprising the data derived from the media quality test procedure.
12. The method according to claim 11, further comprising:
receiving the one or more messages via a given signalling path associated with the given media routing path.
13. The method according to claim 11 or 12, wherein the one or more messages includes a call setup response for the call.
-56-
14. The method according to any preceding claim, wherein the data derived from the media quality test procedure indicates acceptance or rejection of a call setup request directed to the call party.
5 15. The method according any preceding claim, wherein the media quality test procedure comprises a media loopback test being performed.
16. The method according to any preceding claim, wherein at least one of the plurality of media routing paths includes a cellular access network.
10
17. The method according to any preceding claim, wherein at least one of the plurality of media routing paths includes a Wireless Local Area Network (WLAN).
18. The method according to any preceding claim, wherein at least one of the plurality of
15 media routing paths includes a circuit-switched network.
19. The method according to any preceding claim, wherein at least one of the plurality of media routing paths includes a packet-switched network.
20 20. The method according to any preceding claim, wherein the call control system includes one or more entities located in an Internet Protocol Multimedia Subsystem (IMS) network.
21. The method according to any preceding claim, wherein the given media routing path
25 includes one or more intermediate nodes.
22. The method according to claim 21, wherein at least part of the media quality test procedure is performed by at least one of the one or more intermediate nodes.
30 23. A call control system for routing a call involving a call party in a telecommunications network via a selected media routing path of a plurality of different media
-57-
routing paths, each of the media routing paths being for communicating media data to and/or from at least one communication device associated with the call party, the call control system being configured to:
receive data derived from a media quality test procedure for a given media routing path, 5 the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and select a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party on the basis of at least the received data 10 derived from the media quality test procedure
24. A computer program arranged to perform a method of routing a call involving a call party in a telecommunications network via a selected media routing path of a plurality of different media routing paths, each of the media routing paths being for communicating media 15 data to and/or from at least one communication device associated with the call party, the method comprising, at a call control system in the telecommunications network:
receiving data derived from a media quality test procedure for a given media routing path, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and 20 selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party on the basis of at least the received data derived from the media quality test procedure.
25 25. A method of controlling a communication device, in a telecommunications network comprising at least one media routing path for communicating media data to and/or from one or more entities in the telecommunications network, the method comprising:
receiving one or more messages comprising one or more predetermined parameters; performing at least part of a media quality test procedure for a given media routing path 30 at least in part on the basis of recognising the one or more predetermined parameters, the media
-58-
quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and transmitting data derived from the media quality test procedure for the given media routing path.
5
26. A method according to claim 25, wherein the telecommunications network comprises a plurality of media routing paths for communicating media data to and/or from the one or more entities in the telecommunications network, the method comprising:
selecting a preferred media routing path from the plurality of media routing paths for
10 communicating media data to and/or from the telecommunications network at least in part on the basis of the media quality test procedure.
27. The method according to claim 26, further comprising:
transmitting media data associated with the call via the preferred media routing path.
15
28. The method according to any of claims 25 to 27, further comprising:
selecting the given media routing path from the plurality of media routing paths based at least on part on pre-existing preferred media routing path selection data.
20 29. The method according to any of claims 25 to 28, further comprising:
initiating the media quality test procedure at least in part on the basis of recognising the one or more predetermined parameters.
30. The method according to any of claims 25 to 29, further comprising:
25 receiving the one or more messages via a given signalling path associated with the given media routing path.
31. The method according to any of claims 25 to 30, wherein the one or more received messages includes a call setup request for a call involving a call party associated with the
30 communication device.
-59-
32. The method according to claim 25, further comprising:
activating an alert associated with an incoming call dependent on a result of the media quality test procedure.
5 33. The method according to any of claims 25 to 33, further comprising:
transmitting one or more messages comprising the data derived from the media quality test procedure via a given signalling path associated with the given media routing path.
34. The method according to claim 33, wherein the one or more transmitted messages 10 includes a call setup response for a call involving a call party associated with the communication device.
35. The method according to any of claims 25 to 34, wherein the data derived from the media quality test procedure indicates acceptance or rejection of a call setup request directed to a
15 call party associated with the communication device.
36. The method according to any of claims 25 to 35, wherein said performing at least part of a media quality test procedure for the given media routing path comprises:
performing a media loopback test for the given media routing path.
20
37. The method according to any of claims 25 to 36, further comprising:
performing said at least part of the media quality test with an entity in the telecommunications network that is different from an entity from which the one or more received messages originate.
25
38. A communication device, in a telecommunications network comprising at least one media routing path for communicating media data to and/or from one or more entities in the telecommunications network, the communication device being configured to:
receive one or more messages comprising one or more predetermined parameters; 30 perform at least part of a media quality test procedure for a given media routing path at least in part on the basis of recognising the one or more predetermined parameters, the media
-60-
quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and transmit data derived from the media quality test procedure for the given media routing path.
5
39. A computer program arranged to perform a method of controlling a communication device, in a telecommunications network comprising at least one media routing path for communicating media data to and/or from one or more entities in the telecommunications network, the method comprising:
10 receiving one or more messages comprising one or more predetermined parameters;
performing at least part of a media quality test procedure for a given media routing path at least in part on the basis of recognising the one or more predetermined parameters, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and
15 transmitting data derived from the media quality test procedure for the given media routing path.
40. A method of controlling a communication device, in a telecommunications network comprising a plurality of different media routing paths, each of the media routing paths being for
20 communicating media data associated with a call to and/or from one or more entities in the telecommunications network, the method comprising:
detecting one or more predetermined triggers prior to originating a call;
initiating a media quality test procedure for a given media routing path prior to originating the call, the media quality test procedure including media test data being
25 communicated via the given media routing path and the media test data being analysed; and selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call at least in part on the basis of the media quality test procedure.
30 41. The method according to claim 40, further comprising:
-61-
initiating the media quality test procedure in response to detecting the one or more predetermined triggers.
42. The method according to claim 40 or 41, wherein the one or more predetermined 5 triggers comprises detecting expiry of a media quality test time period.
43. The method according to any of claims 40 to 42, wherein the one or more predetermined triggers is associated with originating a call.
10 44. The method according to any of claims 40 to 43, wherein the one or more predetermined triggers includes detecting an attempt to originate the call.
45. The method according to any of claims 40 to 44, wherein the one or more predetermined triggers includes detecting activity that may lead to a call origination attempt.
15
46. A communication device, in a telecommunications network comprising a plurality of different media routing paths, each of the media routing paths being for communicating media data associated with a call to and/or from one or more entities in the telecommunications network, the communication device being configured to:
20 detect one or more predetermined triggers prior to originating a call;
initiate a media quality test procedure for a given media routing path prior to originating the call, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and select a preferred media routing path from the plurality of media routing paths for
25 communicating media data associated with the call at least in part on the basis of the media quality test procedure.
47. A computer program arranged to perform a method of controlling a communication device, in a telecommunications network comprising a plurality of different media routing paths,
30 each of the media routing paths being for communicating media data associated with a call to and/or from one or more entities in the telecommunications network, the method comprising:
-62-
detecting one or more predetermined triggers prior to originating a call;
initiating a media quality test procedure for a given media routing path prior to originating the call, the media quality test procedure including media test data being communicated via the given media routing path and the media test data being analysed; and 5 selecting a preferred media routing path from the plurality of media routing paths for communicating media data associated with the call at least in part on the basis of the media quality test procedure.
48. A method of routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device:
performing at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path;
determining a media quality associated with the analysed at least some of the media data; and transmitting data derived from the media quality test procedure for a given media routing path to facilitate selection of a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party.
49. The method according to claim 48, further comprising:
relaying media data associated with the call to the at least one communication device via the given media routing path.
30
50. The method according to claim 48 or 49, further comprising:
10
15
20
25
-63-
relaying media data associated with the call from the at least one communication device via the given media routing path.
51. The method according to any of claims 47 to 50, further comprising:
5 analysing at least some media data associated with the call that is being communicated to the at least one communication device via the given media routing path.
52. The method according to any of claims 48 to 51, further comprising:
analysing at least some media data associated with the call that is being communicated
10 from the at least one communication device via the given media routing path.
53. The method according to any of claims 48 to 52, further comprising:
transmitting the data derived from the media quality test procedure in response to determining that the media quality associated with the analysed at least some of the media data is 15 below a predetermined threshold quality level.
54. The method according to any of claims 48 to 53, further comprising:
transmitting the data derived from the media quality test procedure to a call control system, the call control system being configured to perform said selection of the preferred media 20 routing path.
55. A system for routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call
25 and at least one remote party device associated with a remote call party involved in the call, the system comprising one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device, the one or more media quality monitoring entities being configured to:
perform at least part of a media quality monitoring procedure for a given media routing 30 path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
-64-
analysing at least some of the media data being communicated via the given media path;
determining a media quality associated with the analysed at least some of the media data; and
5 transmit data derived from the media quality test procedure for a given media routing path to facilitate selection of a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party.
10 56. A computer program arranged to perform a method for of routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media 15 quality monitoring entities intermediate the at least one communication device and the at least one remote party device:
performing at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
20 analysing at least some of the media data being communicated via the given media path;
determining a media quality associated with the analysed at least some of the media data; and transmitting data derived from the media quality test procedure for a given media routing 25 path to facilitate selection of a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party.
57. A method of routing a call in a telecommunications network via a selected media 30 routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call
-65-
and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device:
performing at least part of a media quality monitoring procedure for a given media 5 routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path; and determining a media quality associated with the analysed at least some of the
10 media data; and selecting a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party at least in part on the basis of the media quality monitoring procedure.
15
58. The method according to claim 57, comprising relaying media data associated with the call to the at least one communication device via the given media routing path.
59. The method according to claim 57 or 58, comprising relaying media data associated
20 with the call from the at least one communication device via the given media routing path.
60. The method according to any of claims 57 to 59, comprising analysing at least some media data associated with the call that is being communicated to the at least one communication device via the given media routing path.
25
61. The method according to any of claims 57 to 60, comprising analysing at least some media data associated with the call that is being communicated from the at least one communication device via the given media routing path.
30 62. A system for routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network
comprising at least one communication device associated with a call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the system comprising one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device, the one or more media quality monitoring entities being configured to:
perform at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path; and determining a media quality associated with the analysed at least some of the media data; and select a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party at least in part on the basis of the media quality monitoring procedure.
63. A computer program arranged to perform a method of routing a call in a telecommunications network via a selected media routing path of a plurality of different media routing paths, the telecommunications network comprising at least one communication device associated with a call party involved in the call and at least one remote party device associated with a remote call party involved in the call, the method comprising, at one or more media quality monitoring entities intermediate the at least one communication device and the at least one remote party device:
performing at least part of a media quality monitoring procedure for a given media routing path via which media data associated with the call is being communicated, the media quality analysis procedure comprising:
analysing at least some of the media data being communicated via the given media path; and determining a media quality associated with the analysed at least some of the media data; and
-67-
selecting a preferred media routing path, from the plurality of media routing paths, for communicating media data associated with the call to and/or from one or more of the at least one communication devices associated with the call party at least in part on the basis of the media quality monitoring procedure.
GB1303471.5A 2012-02-27 2013-02-27 Routing a call Active GB2499733B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201261603874P 2012-02-27 2012-02-27

Publications (3)

Publication Number Publication Date
GB201303471D0 GB201303471D0 (en) 2013-04-10
GB2499733A true GB2499733A (en) 2013-08-28
GB2499733B GB2499733B (en) 2019-01-30

Family

ID=48092180

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1303471.5A Active GB2499733B (en) 2012-02-27 2013-02-27 Routing a call

Country Status (2)

Country Link
US (1) US9503368B2 (en)
GB (1) GB2499733B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017062221A1 (en) * 2015-10-08 2017-04-13 Microsoft Technology Licensing, Llc Media connection channel quality testing system
US10858929B2 (en) 2015-11-16 2020-12-08 Baker Hughes, A Ge Company, Llc Methods for drilling multiple parallel wells with passive magnetic ranging

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2640030B1 (en) * 2012-03-12 2014-11-12 Telefonaktiebolaget LM Ericsson (publ) Capability update in a telecommunications network
US20130265878A1 (en) * 2012-04-09 2013-10-10 Koninklijke Kpn N.V. HD Voice Recovery
ES2427463B1 (en) * 2012-04-24 2014-11-12 Vodafone España, S.A.U. PROCEDURE AND MOBILE TERMINAL FOR THE ESTABLISHMENT OF CALLS IN A WIRELESS COMMUNICATION NETWORK
US9167484B2 (en) * 2012-10-30 2015-10-20 T-Mobile Usa, Inc. Transition from packet-switched to circuit-switched connection based on communication quality
JP2014090387A (en) * 2012-10-31 2014-05-15 Ricoh Co Ltd Information processor, conference system and program
US9615201B2 (en) * 2013-03-04 2017-04-04 T-Mobile Usa, Inc. Closed communication system
WO2015016919A1 (en) 2013-07-31 2015-02-05 Adaptive Spectrum And Signal Alignment, Inc. Method and apparatus for continuous access network monitoring and packet loss estimation
US10491749B2 (en) 2013-09-27 2019-11-26 Google Llc System and method for increased call quality and success rate
US20150126132A1 (en) * 2013-11-01 2015-05-07 Apple Inc. Methods and apparatus for radio co-existence testing and verification of wireless systems
US10341929B2 (en) * 2014-01-14 2019-07-02 Google Llc PSTN / VoIP communication system and method
CN105282769A (en) * 2014-06-06 2016-01-27 中兴通讯股份有限公司 Network switching processing method and device
US9438728B2 (en) 2014-10-27 2016-09-06 Mya Number Corp. Telephone number grouping service for telephone service providers
US9445051B1 (en) * 2015-08-14 2016-09-13 Qualcomm Incorporated Sender side video telephony downgrade
US10051545B2 (en) 2016-02-16 2018-08-14 Microsoft Technology Licensing, Llc Call handling between a cellular network and a communication service
US10554820B2 (en) 2018-06-26 2020-02-04 Microsoft Technology Licensing, Llc Route an emergency call over VoIP client to cellular device
US10667315B2 (en) * 2018-06-26 2020-05-26 Microsoft Technology Licensing, Llc Route an emergency call over VOIP client to cellular device
US10757556B2 (en) 2018-07-24 2020-08-25 Microsoft Technology Licensing, Llc Device-based access point association and tracking of physical addresses
US10958706B2 (en) 2018-11-02 2021-03-23 Infinite Convergence Solutions, Inc. Devices and method for voice over internet protocol call continuity
US10862781B2 (en) 2018-11-07 2020-12-08 Saudi Arabian Oil Company Identifying network issues using an agentless probe and end-point network locations
US10944622B2 (en) 2018-11-16 2021-03-09 Saudi Arabian Oil Company Root cause analysis for unified communications performance issues
US10924328B2 (en) * 2018-11-16 2021-02-16 Saudi Arabian Oil Company Root cause analysis for unified communications performance issues
US11641380B2 (en) * 2019-05-21 2023-05-02 Nippon Telegraph And Telephone Corporation Call control system, terminal device, call control apparatus, method and program

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0114463A2 (en) * 1982-12-27 1984-08-01 Rockwell International Corporation Link quality analyser and method of link quality measurement
US6466548B1 (en) * 1998-10-28 2002-10-15 Cisco Technology, Inc. Hop by hop quality of service measurement system
WO2003001330A2 (en) * 2001-06-22 2003-01-03 Akamai Technologies, Inc. Automated control of outbound transit links in a multi-homed bgp routing environment
WO2006095262A2 (en) * 2005-03-11 2006-09-14 Santera Systems, Inc. System and method for determining network quality for voip calls
US20060268828A1 (en) * 2005-05-12 2006-11-30 Yahoo! Inc. Selecting a network based on metrics for real time communication
WO2007121561A1 (en) * 2006-04-25 2007-11-01 Tektronix International Sales Gmbh System and method of remote testing in loopback mode using mgcp/ncs
WO2008005274A2 (en) * 2006-06-30 2008-01-10 Vonage Holdings Corp. Method and system for network path discrimination
WO2008043008A2 (en) * 2006-10-04 2008-04-10 Qualcomm Incorporated Ip flow-based load balancing over a plurality of wireless network links
JP2008131346A (en) * 2006-11-21 2008-06-05 Oki Electric Ind Co Ltd Ip network system
WO2010014872A1 (en) * 2008-08-01 2010-02-04 Nivis, Llc Systems and methods for determining link quality
US7995464B1 (en) * 2005-06-27 2011-08-09 At&T Intellectual Property Ii, L.P. Method and apparatus for measuring quality of service levels

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100627834B1 (en) 2004-07-27 2006-10-11 에스케이 텔레콤주식회사 Method and system for providing interworking function between portable internet network and other types of networks
US8804653B2 (en) 2005-01-13 2014-08-12 Telefonaktiebolaget Lm Ericsson (Publ) System and method for call handoff between circuit switched and packet data wireless networks
US7519074B2 (en) * 2005-02-22 2009-04-14 Level 3 Communications, Llc Voice call coordinator
US20060252444A1 (en) 2005-05-03 2006-11-09 Timucin Ozugur Presence enabled call hunting group
US7710950B2 (en) * 2006-02-06 2010-05-04 Research In Motion Limited System and methods for originating a SIP call via a circuit-switched network from a user equipment device
US7995565B2 (en) * 2006-10-03 2011-08-09 Research In Motion Limited System and method for managing call continuity in IMS network environment using SIP messaging
JP2007259320A (en) * 2006-03-24 2007-10-04 Fujitsu Ltd Speech sound quality evaluation system, communication system, test management apparatus and test communication device
US8023497B2 (en) * 2006-04-19 2011-09-20 Qualcomm Incorporated Method and apparatus for dynamic anchoring of CS calls for CS-to-VoIP handoffs
US8743709B1 (en) * 2006-06-12 2014-06-03 Apple Inc. Providing a signaling interface between a circuit-switched domain and a packet-switched domain to enable provision of services to a multi-mode mobile station
US20080037501A1 (en) * 2006-08-14 2008-02-14 Rashad Mohammad Ali Managing mobility of different communication technologies
US9288276B2 (en) * 2006-11-03 2016-03-15 At&T Intellectual Property I, L.P. Application services infrastructure for next generation networks including a notification capability and related methods and computer program products
WO2009026447A1 (en) * 2007-08-21 2009-02-26 Tango Networks, Inc. System, method, and computer-readable medium for provisioning dual-homed voice call continuity
US20090097450A1 (en) * 2007-08-22 2009-04-16 Mavenir Systems, Inc., A Corporation Of Texas Providing voice call continuity
US9307466B2 (en) * 2007-10-31 2016-04-05 Google Technology Holdings LLC In-call handoff between cellular and packet switched networks
US8711846B2 (en) * 2008-09-18 2014-04-29 Futurewei Technologies, Inc. Network attachment for IMS systems for legacy CS UE with home node B access
GB2503809B (en) * 2008-12-04 2014-07-23 Metaswitch Networks Ltd Telephone call processing
US20100309847A1 (en) * 2009-06-04 2010-12-09 Qualcomm Incorporated Method and apparatus for ims application domain selection and mobility
US9191416B2 (en) * 2010-04-16 2015-11-17 Damaka, Inc. System and method for providing enterprise voice call continuity

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0114463A2 (en) * 1982-12-27 1984-08-01 Rockwell International Corporation Link quality analyser and method of link quality measurement
US6466548B1 (en) * 1998-10-28 2002-10-15 Cisco Technology, Inc. Hop by hop quality of service measurement system
WO2003001330A2 (en) * 2001-06-22 2003-01-03 Akamai Technologies, Inc. Automated control of outbound transit links in a multi-homed bgp routing environment
WO2006095262A2 (en) * 2005-03-11 2006-09-14 Santera Systems, Inc. System and method for determining network quality for voip calls
US20060268828A1 (en) * 2005-05-12 2006-11-30 Yahoo! Inc. Selecting a network based on metrics for real time communication
US7995464B1 (en) * 2005-06-27 2011-08-09 At&T Intellectual Property Ii, L.P. Method and apparatus for measuring quality of service levels
WO2007121561A1 (en) * 2006-04-25 2007-11-01 Tektronix International Sales Gmbh System and method of remote testing in loopback mode using mgcp/ncs
WO2008005274A2 (en) * 2006-06-30 2008-01-10 Vonage Holdings Corp. Method and system for network path discrimination
WO2008043008A2 (en) * 2006-10-04 2008-04-10 Qualcomm Incorporated Ip flow-based load balancing over a plurality of wireless network links
JP2008131346A (en) * 2006-11-21 2008-06-05 Oki Electric Ind Co Ltd Ip network system
WO2010014872A1 (en) * 2008-08-01 2010-02-04 Nivis, Llc Systems and methods for determining link quality

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017062221A1 (en) * 2015-10-08 2017-04-13 Microsoft Technology Licensing, Llc Media connection channel quality testing system
US10298472B2 (en) 2015-10-08 2019-05-21 Microsoft Technology Licensing, Llc Media connection channel quality testing system
US10858929B2 (en) 2015-11-16 2020-12-08 Baker Hughes, A Ge Company, Llc Methods for drilling multiple parallel wells with passive magnetic ranging

Also Published As

Publication number Publication date
GB2499733B (en) 2019-01-30
GB201303471D0 (en) 2013-04-10
US9503368B2 (en) 2016-11-22
US20130242775A1 (en) 2013-09-19

Similar Documents

Publication Publication Date Title
US9503368B2 (en) Routing a call
US11849380B2 (en) Call flow system and method for use in a VoIP telecommunication system
US10939255B2 (en) System and method for enabling call originations using SMS and hotline capabilities
US9392499B2 (en) Automatic transfer of mobile calls between voice over internet protocol (VoIP) and guaranteed service (GS) networks based on quality of service (QoS) measurements
US9247462B2 (en) Voice quality control
US9763164B2 (en) System and method for enabling VPN-less session setup for connecting mobile data devices to an enterprise data network
US10791151B2 (en) Communication sessions
US20090036128A1 (en) Method and system for dynamic call anchoring
US20180206166A1 (en) Mobile telephone wifi/cellular seamless roaming switching controller
EP3451643B1 (en) Methods and apparatus for transferring an established communication session in a telecommunications network
GB2499731B (en) Communication system
US8054754B1 (en) Method and system for service interruption notification
US8983049B2 (en) Methods and systems for controlling a user device in a telecommunication network
US9124693B2 (en) Method and system for on-hold messaging for off network calls
US11405846B2 (en) Call flow system and method for use in a legacy telecommunication system
US20110038366A1 (en) Switching data streams between core networks