Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
TRANSIT LAYER COMPUTER SYSTEM AND METHOD FOR PROVIDING TELECOMMUNICATION SERVICES WITH LOCAL USER EXPERIENCE
Document Type and Number:
WIPO Patent Application WO/2019/011442
Kind Code:
A1
Abstract:
The disclosure relates to a computer system for selecting a first subscriber telephone number of a subscriber device to be presented to a recipient device. The computer system comprises a receiver configured to receive a second subscriber number of the subscriber device and a recipient telephone number of the recipient device, wherein the recipient telephone number comprises country code information. The computer system also comprises a processor configured to automatically select the first subscriber telephone number based on at least the country code information of the recipient telephone number and a transmitter configured to transmit the selected first subscriber telephone number to be presented to the recipient device.

Inventors:
DE FUIJK PETER (NL)
HELBERS BART (NL)
CLEMENT EDWIN (NL)
Application Number:
PCT/EP2017/067853
Publication Date:
January 17, 2019
Filing Date:
July 14, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
GLOTELL B V (NL)
International Classes:
H04M3/42; H04Q3/00; H04Q3/72; H04W8/26
Foreign References:
US20110081906A12011-04-07
US20050070278A12005-03-31
EP1991019A12008-11-12
Other References:
None
Attorney, Agent or Firm:
DE VRIES & METMAN et al. (NL)
Download PDF:
Claims:
CLAIMS

1. A computer system for selecting a first subscriber telephone number of a subscriber device to be presented to a recipient device, wherein the computer system comprises:

a receiver configured to receive a second subscriber number of the subscriber device and a recipient telephone number of the recipient device, wherein the recipient telephone number comprises country code information;

a processor configured to automatically select the first subscriber telephone number based on at least the country code information of the recipient telephone number; and

a transmitter configured to transmit the selected first subscriber telephone number to be presented to the recipient device .

2. The computer system according to claim 1, wherein the processor is configured to automatically select the first subscriber telephone number based on at least one additional criterion from a plurality of first telephone numbers associated with the same country code information.

3. The computer system according claim 1 or 2, wherein the computer system further comprises a database storing a plurality of first subscriber telephone numbers for a

subscriber device and wherein the processor is configured to automatically select a first subscriber telephone number from the plurality of subscriber telephone numbers stored in the database based on at least the country code information of the recipient telephone number. 4. The computer system according to claim 3, wherein the receiver is configured to receive an identification of the subscriber (e.g. the second subscriber telephone number

((MS) ISDN) or an IMSI of the subscriber device) and wherein the processor is configured to identify a set of the plurality of first subscriber telephone numbers based on the identification of the subscriber.

5. The computer system according to one or more of the claims 2-4, wherein one or more of the first telephone numbers in the database is associated with country code

information and wherein the processor is configured to select the first subscriber telephone number from the database for which at least the country code information matches the country code information of the recipient telephone number.

6. The computer system according to one or more of the claims 3-4, wherein the database is an LDAP database, wherein the LDAP database contains at least one of the

following :

- a MultiNumber object having a country code attribute per MultiNumber entry;

- a MultiNumber object having a support SMS attribute per MultiNumber entry; and

- a Country Code object.

- a Prefix object

7. The computer system according to one or more of the claims 3-6, wherein the database stores at least one of the following indications for at least one of the telephone numbers associated with the subscriber device stored in the database:

- an indication that a first telephone number is a primary telephone number;

- an indication that a first telephone number is a default telephone number to be presented if no match is found between country code information of the recipient telephone number and country code information for any of the stored first subscriber telephone numbers;

- an indication that a first telephone number may or may not be selected for presentation at the recipient device.

- an indication that a first telephone number should be

used only under specific conditions set by the subscriber

8. The computer system according to one or more of the preceding claims, wherein the computer system is configured to indicate a primary telephone number of the subscriber device under which the subscriber device is known in a home location register and wherein the processor is configured to select the primary telephone number for connection to the subscriber device based on a signal containing a first subscriber telephone number of the subscriber device from the recipient device. 9. A computer system for providing local

telecommunication services to a plurality of subscriber devices associated with a plurality of mobile virtual network operators, wherein the computer system is located in a transit layer outside of the network switching system (NSS) containing the home location register (HLR) and/or home subscriber server (HSS) of the subscriber devices.

10. The computer system according to claim 9, wherein the computer system is configured as a proxy.

11. The computer system according to claim 9 or 10, wherein the computer system comprises a database containing a plurality of international mobile subscriber identities (IMSI's) for each of the subscriber devices and a processor configured for receiving a first IMSI of a subscriber device and selecting a second IMSI from the plurality of IMSI's for the subscriber device based on the first IMSI and for transmitting the second IMSI to the HLR/HSS at which the subscriber device is

registered .

12. The computer system according to claim 11, wherein the transit layer further comprises a signalling system, wherein the signalling system is configured to receive the second IMSI and a CAMEL flag configured for triggering a home routing operation from the mobile virtual network operator and for transmitting the CAMEL flag and the first IMSI to a radio network providing access to the subscriber device.

13. The computer system according to one or more of the claims 9-12, wherein the computer system comprises a

database containing a plurality of telephone numbers for each of the subscriber devices and a processor configured for

automatically selecting a first telephone number of the

subscriber device preferred by the subscriber for representation at a recipient device

14. The computer system according to one or more of the claims 9-13, wherein the computer system is further

configured according to one or more of the claims 1-8.

15. The computer system according to one or more of the claims 9-14, wherein the computer system is connected to one or more further computer systems according to one or more of the claims 9-14 by means of dedicated interconnects, such as IP interconnects .

16. A computer-implemented method for selecting a first subscriber telephone number of a subscriber device to be presented to a recipient device, comprising the steps of:

receiving a second subscriber number of the subscriber device and a recipient telephone number of the recipient device, wherein the recipient telephone number comprises country code information;

automatically selecting the first subscriber telephone number based on at least the country code information of the recipient telephone number; and

transmitting the selected first subscriber telephone number to be presented to the recipient device.

17. The computer-implemented method according to claim 16, wherein the method further comprises the steps of the processor of the computer system according to one or more of the claims 1-8.

18. A method for providing local telecommunication services to a plurality of subscriber devices associated with a plurality of mobile virtual network operators, wherein the services are provided from a transit layer computer system located outside of the network switching system (NSS) containing the home location register (HLR) and/or home subscriber server (HSS) of the subscriber devices.

19. The method according to claim 18, further

comprising steps by the transit layer computer system according to claims 10-15.

20. A computer program product or suite of computer programs comprising software code portions which, when executed by a computer systems, cause the computer system to perform the steps as recited according to one or more of the claims 16-19.

Description:
Transit layer computer system and method for providing telecommunication services with local user experience

FIELD OF THE INVENTION

The invention relates to a computer system and method for providing telecommunication services with a local user experience. In particular, the invention relates to a computer system and method wherein the computer system enables

presentation of a local telephone number of a subscriber device to a recipient device and enables the recipient device to connect to the subscriber device using the presented local telephone number. Furthermore, the invention relates to computer system for connecting a plurality of mobile virtual network operators to provide local telecommunication services. The computer system may be located in a transit layer outside the MVNO domain. BACKGROUND

Wireless telecommunications networks enable free mobility of subscribers. Roaming allows subscribers to these networks to use mobile services outside their service provider's area with the same mobile device. Roaming is the ability for a mobile subscriber to make/receive voice calls and use other value added services (VAS) in a visited network outside the coverage area of the home network. For service providers, roaming offers an opportunity to provide telecommunication services to subscribers from foreign networks and thereby increases the revenue stream for the service provider. Roaming services may be provided between networks in the same country (national roaming) or between networks in different countries (international roaming) .

International roaming allows a subscriber to access services to which he is subscribed at home anywhere in the world. The visited network charges these subscribers at a considerable rate. Moreover, for communication services such as voice calls and messaging (e.g. SMS), any recipient device of a call or SMS message will be presented with the home contact details of the subscriber (e.g. the home telephone number of the subscriber) .

In recent years, initiatives have been deployed by parties as Truphone to mitigate these roaming disadvantages.

Truphone provides subscribers with a single SIM and enables contacts of the subscriber to contact the subscriber at local rates using local telephone numbers. In order to provide such services, Truphone uses multiple MVNO networks in different countries and provides an overlay HLR infrastructure.

SUMMARY

It is an object of the invention to further improve the local user experience for telecommunications services offered via the computer system as disclosed herein.

One aspect of the present disclosure pertains to a computer system for selecting a first subscriber telephone number of a subscriber device to be presented to a recipient device. The computer system comprises a receiver configured to receive a second subscriber number of the subscriber device and a recipient telephone number of the recipient device, wherein the recipient telephone number comprises country code

information. The computer system also comprises a processor configured to automatically select the first subscriber

telephone number based on at least the country code information of the recipient telephone number and a transmitter configured to transmit the selected first subscriber telephone number to be presented to the recipient device.

Another aspect of the disclosure relates to a method for performing the steps by the computer system.

The computer system enables the subscriber to present his telephone number on the recipient device irrespective of the telephone number under which he is currently registered. For example, when the subscriber is connected to a Dutch

telecommunications network and selects an Australian telephone number of a recipient device for a voice call or for sending an SMS message, the computer system will present an Australian telephone number to the recipient device provided that the computer system has stored an Australian telephone number for the subscriber. The subscriber may be allowed to manage the telephone numbers in the computer system himself so that he is in direct control of the telephone number presented to a

recipient device. The presentation of a subscriber telephone number to a recipient device is often referred to as calling line identification presentation (CLIP) . The computer system may also be used for calling line identification restriction (CLIR) .

It should be noted that a telephone number may comprise an ISDN, an MSISDN, a SIP URI, etc.

It should be noted that the country code information in the subscriber telephone number and the recipient telephone number may comprise the country code (CC) or the mobile country code (MCC) as is well known to the person skilled in the art. The processor may be required to perform more advanced number analysis when the country code information is not sufficient to select the first subscriber telephone number. For example, both the US and Canada have country code +1, so that further number analysis is necessary when the subscriber owns a US telephone number and a Canadian telephone number and makes a call to one of these countries.

It should be noted that the further number analysis may be used for making further distinctions. In particular, prefix parts of telephone numbers associated with states, regions, areas, cities etc. having a single country code may be used to select the telephone number to be presented to the recipient device. And inversely, a single telephone number may be selected for representation on the recipient device for recipient

telephone numbers associated with different country codes.

The computer system may use the Session Initiation Protocol (SIP) as a communications protocol for setting up and terminating voice calls.

In one embodiment, the computer system further comprises a database storing a plurality of first subscriber telephone numbers for a subscriber device. The processor is configured to automatically select a first subscriber telephone number from the plurality of subscriber telephone numbers stored in the database based on at least the country code information of the recipient telephone number. The embodiment enables the subscriber to have a plurality of telephone numbers for

different countries. In one embodiment, the database stores one subscriber telephone number per country. In another embodiment, the database contains multiple telephone numbers per country and the computer applies one or more additional criteria to select a first telephone number to be presented to the recipient device out of these multiple telephone numbers per country. For

example, the subscriber may have a private telephone number and a business telephone number stored in the database for a

particular country. The subscriber may as an additional

criterion set that the telephone number to be presented to the recipient device when he makes a call or sends an SMS message to that country should be his private telephone number for pre-set recipient telephone numbers (of family or close friends) and his business telephone number otherwise. Or he may set that calls made during a particular time interval should present his business telephone number (e.g. during office hours) and should present his private telephone number outside this time interval or vice versa. Yet another criterion for selecting a telephone number out of multiple telephone numbers for a particular country relates to the type of service. The first telephone number presented to the recipient device may e.g. depend on whether the subscriber makes a voice call or sends an SMS message .

In one embodiment, the receiver of the computer system is configured to receive an identification of the subscriber (e.g. the second subscriber telephone number ((MS) ISDN) or an IMSI of the subscriber device) and the processor is configured to identify a set of the plurality of first subscriber telephone numbers based on the identification of the subscriber. The identification of the subscriber serves as a key to search the database for the applicable set of first telephone numbers of the subscriber. In one embodiment, one or more of the first telephone numbers in the database of the computer system is associated with country code information. The processor is configured to select the first subscriber telephone number from the database for which at least the country code information matches the country code information of the recipient telephone number.

Searching for direct matches of country codes in the database facilitates fast searching.

To further facilitate searching, in one embodiment, the database is a lightweight directory access protocol (LDAP) database. LDAP is an open standard protocol that is frequently used in telecommunications systems. The database is connected to a standard HTTP server that uses scripting language with LDAP capabilities. Changes in the LDAP database to facilitate the use of country code information for selecting the first subscriber telephone number include the change of the existing MultiNumber object and the addition of a new CountryCode object. In

particular, the MultiNumber object may contain a country code attribute per MultiNumber entry and/or a support SMS attribute per MultiNumber entry. This facilitates determination of a

CountryCode for each MultiNumber entry and/or to determine if a telephone number is a mobile number (SMS supported) or a fixed number (SMS not supported) . The CountryCode object enables a lookup based on the Country Prefix to resolve the CountryCode. Whereas the LDAP database implementation is advantageous for reasons of simplicity and availability, it should be noted that more advanced systems may be used when more complex logic is required. One example of such a system is an Enterprise Service Bus (ESB) system.

In one embodiment, the database of the computer system comprises one or more indications for indicating the status of the telephone numbers associated with a particular number stored in the database.

The database may contain an indication that a telephone number of the subscriber is a primary telephone number. The primary telephone number is the number that uniquely identifies the subscriber, together with an IMSI, in a home location register (HLR) and/or home subscriber server (HSS) . The computer system may be in regular or continuous connection with the subscriber databases in the core networks of the (virtual) network operators to determine the primary telephone number. It should be noted that the primary number does not have to be a telephone number that is ever presented to the recipient device. In one embodiment, the primary telephone number is a telephone number selected from an available but unused number block, such as the Shared Country Code for international networks +883 XXXX number block of the E.164 ITU recommendation. Such numbers can be used as unique and constant telephone numbers that are not influenced by porting in or porting out of telephone numbers.

The database may also contain an indication that a telephone number is a default telephone number. The default telephone number is the telephone number to be presented when no match is found between country code information of the recipient telephone number and country code information for any of the stored first subscriber telephone numbers.

The database may also contain an indication that a first telephone number may or may not be selected for

presentation at the recipient device. Such an indication may be useful when e.g. a telephone number cannot be used for SMS messages (e.g. for a fixed telephone number (ISDN) or when CLIR is applicable) .

In one embodiment, the computer system is configured to indicate a primary telephone number of the subscriber device under which the subscriber device is known in a home location register and wherein the processor is configured to select the primary telephone number for connection to the subscriber device based on a signal containing a first subscriber telephone number of the subscriber device from the recipient device. This

embodiment enables the recipient to contact the subscriber device using the local number that was presented to him when he was called or received an SMS message from the subscriber device.

Another aspect of the present disclosure pertains to a computer system for providing local telecommunication services to a plurality of subscriber devices associated with a plurality of mobile virtual network operators. The computer system is located in a transit layer outside of the network switching system (NSS) containing the home location register (HLR) and/or home subscriber server (HSS) of the subscriber devices. By locating the computer system outside of the NSS of a particular network operator, a scalable solution for connecting many network operators becomes feasible. The computer system may comprise at least one session border controller (SBC), or equivalent thereof, for controlling signalling and media traffic and a signal transfer point (STP), or equivalent thereof, for routing signalling messages. The computer system may further comprise one or more servers for performing operations as disclosed herein, such as selecting of a telephone number for representation (using e.g. a SIP application server (SIP-AS)) and enabling a subscriber device to use multiple IMSI's (using e.g. a C7 application server (C7-AS)) . Further systems that may be part of the computer system include a border gateway (BGW) and/or a Diameter Edge Agent (DEA) as known in the art. For SMS messages, the computer system may further contain a short message service centre (SMSC) as also known in the art. Another aspect of the disclosure relates to a method for providing local telecommunication services from a transit layer computer system.

In one embodiment, the computer system is configured, at least in part, as a proxy. Configuring the computer system as a proxy facilitates connection of the computer system to

existing network elements. For example, although the signalling messages exchanged between the MSC/VLR and the HLR run through the computer system, the MSC/VLR and the HLR do not notice the presence of the computer system and can continue transmitting and processing the messages as if the computer system is not there .

In one embodiment, the computer system comprises a database containing a plurality of international mobile

subscriber identities (IMSI's) for each of the subscriber devices and a processor configured for receiving a first IMSI of a subscriber device and selecting a second IMSI from the plurality of IMSI's for the subscriber device based on the first IMSI and for transmitting the second IMSI to the HLR at which the subscriber device is registered. This process is preferably executed as part of a location update process. This embodiment enables the subscriber device to apply a local IMSI when

registering with a network such that the subscriber is only charged a local tariff and can enjoy local services while the HLR will receive the IMSI under which it is known and would not notice that the subscriber device was using another IMSI.

In one embodiment, the transit layer further comprises a signalling system (e.g. an STP) and a communications control system (e.g. an SBC), wherein the signalling system is

configured to receive the second IMSI and a home routing flag (e.g. a CAMEL flag) configured for triggering a home routing operation in the radio network to which the subscriber device is connected and for transmitting the home routing flag and the first IMSI to a radio network providing access to the subscriber device. This process is preferably executed as part of a

location update process. This embodiment enables the

communications to be routed through the computer system (e.g. the communications control system) to perform certain operations when setting up communications with the recipient device. One example of such operation includes automatically selecting the telephone number to be presented to the recipient device based on preferences of the subscriber.

In one embodiment, the computer system comprises a database containing a plurality of telephone numbers for each of the subscriber devices and a processor configured for

automatically selecting a first telephone number of the

subscriber device preferred by the subscriber for representation at a recipient device. This embodiment enables the subscriber to present a preferred telephone number of the subscriber device for the recipient device. The preference may be dependent on one or more criteria, such as dependent on a location of the

subscriber, on a time or time zone for the subscriber and/or the recipient, on the service (voice, SMS, etc.) requested by the subscriber and dependent on the active IMSI of the subscriber and/or the recipient.

One particularly advantageous embodiment pertains to selecting a first subscriber telephone number of a subscriber device to be presented to a recipient device. The computer system comprises a receiver configured to receive a second subscriber number of the subscriber device and a recipient telephone number of the recipient device, wherein the recipient telephone number comprises country code information. The

computer system also comprises a processor configured to

automatically select the first subscriber telephone number based on at least the country code information of the recipient telephone number and a transmitter configured to transmit the selected first subscriber telephone number to be presented to the recipient device. The computer system enables the subscriber to present his telephone number on the recipient device

irrespective of the telephone number under which he is currently registered .

In one embodiment, the computer system is connected to one or more further computer systems as described herein by means of dedicated interconnects, such as IP interconnects. The use of dedicated interconnects guarantees a fast and reliable connection between the computer systems, such that only a relatively small number of computer systems, e.g. less than ten, need to be deployed worldwide for connecting the virtual network operators while guaranteeing optimal service.

The disclosure also relates to methods performed from the computer system.

Another aspect of the present disclosure pertains to computer program product or suite of computer programs that contain software code portions for performing one or more steps of the computer system as disclosed herein.

It is noted that the invention relates to all possible combinations of features recited in the claims. BRIEF DESCRIPTION OF THE DRAWINGS

Aspects of the invention will be explained in greater detail by reference to exemplary embodiments shown in the drawings, in which:

FIG. 1 is a schematic illustration of a

telecommunications computer system according to an embodiment of the invention;

FIGS. 2A and 2B are a flow chart illustrating method steps for presenting the recipient device with a telephone number of the subscriber device based on country code

information;

FIG. 3 is a schematic illustration of a computer system connected to a plurality of mobile virtual network operators ;

FIG. 4 is a schematic illustration of an arrangement of computer systems deployed in some location over the world;

FIG. 5 is a more detailed illustration of the location of the computer system outside the network switching systems of the mobile virtual network operators;

FIGS. 6A-6D provide call flow diagrams for MOC, MTC,

MOS and MTS communications; and

FIG. 7 is a schematic illustration of a generic computer system. DETAILED DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of a computer system 1 comprising a processor 2, a receiver 3, a transmitter 4 and a database 5. The computer system 1 receives a signal originated by a subscriber device, such as a fixed telephone or a mobile telephone, via one or more telecommunications networks as generally known in the art. The telecommunications networks may comprise any generation telecommunications network, such as a 2G (GSM, CDMA), 3G (UMTS, WCDMA) , 4G (LTE) or 5G telecommunications network. The computer system 1 is configured for converting the telephone number A assigned to the subscriber device to a different telephone number A' that will be presented to the recipient device as the telephone number of the subscriber device as schematically depicted in FIG. 1.

It should be noted that the computer system 1 may be a distributed computer system, wherein various components are located at different locations and various tasks are executed by different components.

In one embodiment, the processor 2 of the computer system 1 is configured for automatically selecting the telephone number A' to be presented to the recipient device by verifying country code information. The criterion used for the automatic selection of the telephone number A' to be presented to the recipient device is dependent on country code information of the telephone number of the recipient device. The country code information may be part of the signal representing the recipient telephone number received from the subscriber device using receiver 3 of the computer system 1. The country code

information comprises the country code CC as shown in FIG. 1 or can be used to derive the country code CC . The telephone number A of the subscriber device may be used as a key for finding the set of available telephone numbers for representation at the recipient device. When the country code CC is obtained from the signal of the subscriber device, the processor 2 searches the database 5 for the set with subscriber telephone numbers and finds a match with the country code CC associated with

subscriber telephone number A' of the subscriber. The processor transmits the telephone number A' associated with the subscriber device for presentation at the recipient device as shown in FIG. 1.

The computer system 1 may enable the subscriber to manage the settings of the database by adding and/or changing new telephone numbers for his subscription to/in the database 5 for presentation at a recipient device. Typically, the database stores one or more telephone numbers for one or more countries. When multiple numbers exist for one country, one or more

additional criteria may be used to select a telephone number from these multiple numbers in accordance with these additional criteria . The database 5 of the computer system 1 may comprise one or more indications for indicating the status of the

telephone numbers associated with a particular stored in the database. The database may contain an indication that a

telephone number of the subscriber is a primary telephone number. The primary telephone number is the number that uniquely identifies the subscriber, together with an IMSI, in a home location register (HLR) and/or home subscriber server (HSS) . The computer system 1 may be in regular or continuous connection with the subscriber databases in the core networks of the

(virtual) network operators to determine the primary telephone number of (new) subscribers.

The database 5 may also contain an indication that a telephone number is a default telephone number. The default telephone number is the telephone number to be presented when no match is found between country code information of the recipient telephone number and country code information for any of the stored telephone numbers for a subscriber.

The database 5 may also contain an indication that a stored telephone number may or may not be selected for

presentation at the recipient device. Such an indication may be useful when e.g. a telephone number cannot be used for SMS messages (e.g. for a fixed telephone number (ISDN)) or when CLIR is applicable.

An exemplary database 5 may contain the following information for a particular subscriber. The subscriber has telephone numbers for a country code of The Netherlands (+31), Australia (+61) and France (+33) in this example. The Dutch telephone number is indicated as the primary telephone number and is set as the default number for presentation at a recipient device .

Telephone number Type CLI default

+31 6 4444 3333 Primary True

+61 4 5555 6666 Secondary False

+33 6 1111 2222 Secondary False The below table summarizes the presented telephone number at the recipient device in three cases.

If the subscriber calls an arbitrary telephone number

(+31 xxx) in the Netherlands, the Dutch telephone number will be shown at the recipient device. This is the normal situation.

However, if the subscriber calls an arbitrary telephone number (+61 xxx) in Australia, the processor 2 will

automatically select the Australian telephone number +61 4 5555 6666 for representation at the recipient device associated with the telephone number +61 xxx upon finding a telephone number of the subscriber for the associated country code +61 in the database. The selection is irrespective of the current location or network connection of the subscriber device from which the call was made.

If the subscriber calls a US telephone number +1 xxx, the processor 2 will find that the subscriber does not possess a US telephone number. Because the database indicates that the Dutch telephone number is the default number for CLI

presentation, the recipient device associated with the US telephone number will be presented with the Dutch telephone number .

The subscriber may change the settings for the subscription, e.g. by changing the default telephone number as indicated in the below table, wherein the Australian telephone number is now set as the default telephone number.

Telephone number Type CLI default

+31 6 4444 3333 Primary False

+61 4 5555 6666 Secondary True

+33 6 1111 2222 Secondary False If the subscriber calls an arbitrary telephone number (+31 xxx) in the Netherlands, the Dutch telephone number will be shown at the recipient device, because the processor 2 finds that the database stores a Dutch telephone number (+31 6 4444 3333) for the subscriber based on finding a match of a telephone number with a Dutch country code. The selection of the Dutch telephone number is irrespective of the current location or network connection of the subscriber device from which the call was made.

If the subscriber calls an arbitrary telephone number

(+61 xxx) in Australia, the Australian telephone number will be presented to the recipient device. This is the normal situation. If the subscriber calls a US telephone number +1 xxx, the processor will find that the subscriber does not possess a US telephone number. Because the database indicates that after the change the Australian telephone number is the default number for CLI presentation, the recipient device associated with the US telephone number will be presented with the Australian telephone number (+61 4 5555 6666).

The result is summarized in the below table.

The subscriber may change the setting (s) for the subscription, e.g. by cancelling a telephone number. In the below table, it is shown by strikethrough that the Australian telephone number has been cancelled. The primary telephone number is automatically set as the default telephone number. Cancellation of the primary telephone number is not enabled.

Telephone number Type CLI default

+31 6 4444 3333 Primary True

i f Ol] *Λϊ JC JCJC JC fΌ fΌ fΌ fΌ T 1 J-rL πU.<nJ

+33 6 1111 2222 Secondary False The below table summarizes a few exemplary cases when the Australian telephone number has been cancelled.

Since the database 5 now only stores a French telephone number, the recipient device will be presented with the default Dutch telephone number +31 6 4444 3333 except when the processor 2 detects a recipient telephone number associated with a French country code in which case the French number +33 6 1111 2222 is presented to the recipient device. The database may also link e.g. the French telephone number for representation to other country codes. E.g. the database may store that if the

subscriber calls a recipient telephone number in Guadeloupe (country code +590) that the French subscriber telephone number +33 6 1111 2222 is presented to the recipient device.

As a final example, a database 5 storing a fixed telephone number in France is considered. In the database, an additional field "isCLI" is used to indicate whether or not the telephone number may be used for presentation to a recipient device. This may be useful for fixed telephone numbers to avoid that SMS messages are returned to the fixed telephone number. An alternative is that a telephone number is a number for which a restriction applies so that the number will not be displayed at the recipient device (CLIR) .

Again, the below table indicates some use cases.

Notably, if the French fixed number is dialed, the default Australian telephone number +61 4 5555 6666 will be presented to the recipient device and not the French fixed telephone number as a result of the "False" indication in the "isCLI" field.

A flow chart showing steps of presenting a telephone number of a subscriber to recipient device based on country code information is depicted in FIGS. 2A and 2B.

The method for determining the number presentation starts with a determination of the service type requested by the subscriber device. In one embodiment, the service types are a mobile originated voice call (MOC) , a mobile originated SMS message (MOS), a mobile terminated call (MTC) and a mobile terminated SMS message (MTS) .

If the service type is MOC or MOS, the database is searched with the subscriber telephone number A. Entries are retrieved from the database, if any, and if entries are found, the country code of the recipient telephone number B is used to find a telephone number A' of the subscriber device associated with the country code CC provided that isCLI is set to "True". The telephone number A' for the subscriber device to be

presented to the recipient device is then the result of the process .

If no match is found, the process determines whether or not the subscriber has a default telephone number stored in the database. If so, the default number is returned for

presentation to the recipient device as a result of the process.

If the database does not store a default number, the original telephone number A (the primary number) may be

returned.

If it is determined that the service type is MTC or MTS, i.e. a call returned to the subscriber device from the recipient device using e.g. the telephone number originally presented to him. In that case, the primary telephone number of the subscriber device needs to be looked up to deliver the call or SMS to the subscriber device. As shown in the flow chart, first the number A' is determined and then used for finding the subscription data of the subscriber in the database. If the subscription data is found, the primary number A is returned as a result of the process. If not (e.g. because the number has been ported out), the incoming telephone number A' is returned to the supplier of the telephone number (or rerouted to the operator under which the telephone number resides) .

To further facilitate searching the database 5 is an LDAP database. The database is connected to a standard HTTP server (not shown as such) of the computer system 1 that uses scripting language with LDAP capabilities. The automatic

selection of the subscriber telephone number in dependence of the country code for MOC and MOS services is facilitated by changing and/or adding one or more objects to the database.

Changes in the LDAP database to facilitate the use of country code information for selecting the first subscriber telephone number include the change of the existing MultiNumber object. A country iso2 code (IS03166-2) of the type "string" may be added as an attribute to the MultiNumber object to determine the country code for each MultiNumber entry. Likewise, for MTS an attribute supportsSMS may be added per MultiNumber entry of the type "Boolean" to determine if a number is Mobile or Fixed. An example is:

o DN: MSISDN=16466636101, IMS 1=250485000005391 , dc=V- tell , dc=com

IS02=CA

■ IS02=US

supportsSMS=true

Another change in the LDAP database is the addition of a new CountryCode object. This is a new object in the LDAP, which enables the mapping from Country Code, e.g. 31, to iso2 Code, e.g. NL . The reason for the addition is to facilitate lookup based on Country Prefix to resolve Country Code. It may be possible to add multiple IS02 attributes to a specific prefix_code. An example is:

DN: CC=<prefix_code>

Attribute IS02=<IS02_countryCode> (list of codes, or multiple attributes

Example:

o DN: CC=31,dc=V-tell,dc=com

■ IS02=NL FIG. 3 is a schematic illustration of an embodiment wherein the computer system 1 is connected to a plurality of mobile virtual network operators MV O. MVNO_l, MVNO_2 and MVNO_3 are depicted as full MVNO's, i.e. these MVNO ' s possess a

subscriber database HLR/HSS and switching and signaling systems, such as a GMSC, an SMSc, and an SCP. MVNO_4 and MVNO_5 are light MVNO's that do not possess any hardware but use a

multitenant mobile virtual network enabler (MVNE) that provides for the hardware as described for the full MVNO's and is

connected to the computer system 1. The full MVNO's and the MVNE register subscribers in a subscriber profile with a single IMSI and a single telephone number, e.g. an MSISDN. The computer system 1 may also be connected to (systems of) a mobile network operator MNO .

The computer system 1 is connected to the network subsystems (NSS) of the MVNO's and MVNE via one or more networks and is configured as a proxy transit layer, wherein the computer system 1 can be approached from the radio networks RN_A and RN_B as an HLR/HSS system and wherein the computer system 1 can be approached from the MVNO's/MVNE as a radio network component, e.g. and MSC/VLR. In order to perform the control operations, the computer system 1 must be arranged to transit the traffic.

One or more MVNO's may be operated by the operator of the computer system 1. By providing the computer system in a transit layer, third party MVNO's may be connected easily to the transit layer for performing multi MSISDN and multi-IMSI

operations as described in the present disclosure. The computer system comprises a database 6 storing a plurality of IMSI's associated with the subscriber device. The subscriber device may contain a plurality of IMSI's (e.g. stored on a SIM card, stored in the device, or dynamically assigned to the subscriber device) that it can use in relation to a

particular network. When a subscriber device communicates with the radio network RN_A, it may use an IMSI for the local radio network RN_A. The computer system 1 receives the IMSI with a location update message and translates the IMSI to the IMSI under which the subscriber is known in the HLR/HSS of the MVNO or MVNE . Similarly, in the location update response message from the HLR, the database 6 is used to retrieve the IMSI that the subscriber device used when contacting the local radio network RN_A and contact the MSC/VLR of the radio network RN_A to deliver the subscriber profile. The computer system 1, in other words, provides for IMSI mapping operation. It should be noted that the IMSI's in the database 6 may be obtained from other suppliers, such as the operator MNO in FIG. 3, and these IMSI's are dedicated to terminate at the computer system 1.

In one embodiment, the location update response message contains a home routing flag, e.g. a CAMEL flag, and is stored in the radio network. This flag triggers interrogation with the home network for each event the subscriber starts. This will allow for home routing of events to the computer system 1, such that subsequent communications (e.g. a voice call) between the subscriber device and the recipient device are routed through the computer system 1. An agreement may exist between the operator of the transit layer and the MVNO ' s and/or MVNE to make telephone numbers or number blocks to be provided to the radio network operator available as an address of the computer system to force the subsequent communications through the computer system 1 instead of routing the communications directly to an operator associated with the recipient telephone number.

In 4G/LTE networks, such routing protocols are implicitly defined in the standard. In one embodiment, LTE home- routed roaming is used to enable the computer system 1 to control the communications. The computer system 1 also comprises the database 5 containing a plurality of telephone numbers A' for the

subscriber to be presented to the recipient device when calling or texting the recipient device. Any calls or SMS messages from the subscriber device to the recipient device are routed through the computer system 1 as a result of the subscriber information stored in the radio network RN_A during the location update.

In one embodiment, the processor 2 of the computer system 1 is configured for automatically selecting the telephone number A' to be presented to the recipient device per the preferences of the subscriber by using one or more criteria that are configurable by the subscriber of the subscriber device.

The database 5 may comprise a plurality of different telephone numbers A' and the processor 2 will automatically select one of the telephone number A' dependent on the applicable criterion or criteria. The applicable criteria may e.g. relate to a location of the subscriber, on a time or time zone for the subscriber and/or the recipient, on the service requested by the subscriber and dependent on the active IMSI of the subscriber and/or the recipient.

The applicable criterion may, in one embodiment, also be the country code information associated with the recipient telephone number as described in detail with reference to FIG. 1 and FIGS. 2A and 2B.

As an example, databases 5 and 6 of the computer system

1 may contain the following information for a particular

subscriber. As listed in the below table, the subscriber has IMSI's for The Netherlands, France and Australia and also telephone numbers for these countries. The IMSI and telephone number of the Netherlands are considered the primary information under which the subscriber is known with an MVNO . The IMSI for FR and AU and the telephone number are provided to the

subscriber by the operator of the computer system 1.

Subscriber_id

IMSI NL MS I SDN NL IMSI FR MSISDN FR

IMSI AU MSISDN AU

When the subscriber device arrives in France, the subscriber device connects to the radio network RN_A in France and transmits a location update message containing IMSI FR. This message is received by the computer system 1, e.g. by virtue of IMSI FR associated with the operator of computer system 1. The computer system 1 uses the database 6 to determine the IMSI under which the subscriber is registered in the HLR/HSS of the MVNO/MVNE, i.e. IMSI NL . The location update is the forwarded to the MVNO/MVNE wherein the subscriber is registered. The computer system 1 also receives the location update response from the MVNO/MVNE with a subscriber roaming profile containing the IMSI NL . The subscriber profile contains a routing flag set for enforcing home routing in the radio network RN_A. The computer system 1 forwards the set routing flag of the computer system 1 in combination with IMSI FR to the radio network RN_A in France, where it is stored for further use. The information may e.g. be stored in the MSC/VLR of RN_A. For other radio networks, other systems may be used for storage, e.g. the MME for an LTE network.

The subscriber is now assumed to make a call from France to Australia in the present example. In one embodiment, the call request contains the primary telephone number MSISDN NL and the Australian number of the recipient device that the subscriber tries to contact. The call request is routed to the computer system 1 as a result of the set routing flag stored in the radio network during the location update process. The interception of the call by the computer system 1 enables computer system 1 to search in the database 5 for preferences of the subscriber for presenting the telephone number of the subscriber device. When the active IMSI is used as a criterion, computer system 1 may determine that IMSI FR is the active IMSI and present the French telephone number MSISDN FR to the

recipient device. As another example, the computer system 1 uses the country code as a criterion and may determine that the country code information in the call request is Australian.

Hence, the computer system enables that the Australian telephone number MSISDN AU is presented to the recipient device.

The computer system 1 comprises a separate connection to enable fast and reliable interconnects with other computer systems according to the present invention. Such interconnects may be dedicated IP interconnects reserved for communications between such computer systems .

FIG. 4 is an exemplary figure showing three of such computer systems 1 connected by means of the dedicated

interconnects .

FIG. 5 is a more detailed illustration of the location of the computer system 1 located outside the network switching systems of the mobile virtual network operators.

In FIG. 5, the network switching systems of MVNO_l and MVNO_2 are shown connected to a radio network RN via a transit layer containing the computer system 1 operated by an operator for providing telecommunications services.

The radio network RN is a 2G, 3G, 4G, 5G or further generation wireless access network providing wireless access to a subscriber device. Some components generally known in the art are shown for the radio network, such as an MSC/VLR (for 2G services), an SGSN (for 2G/3G services) and an MME (for 4G services) . The subscriber device has a single SIM (either on a card or implemented in the subscriber device as an electronic SIM) at least containing a plurality of IMSI's provided by the operator of the transit layer computer system(s) . It should be noted that a single IMSI may also be used, e.g. E212 ITU shared Mobile Country Code (also known as international IMSI) that is not linked to a particular country) or an IMSI that is

dynamically allocated for a particular location (e.g. E-SIM) .

The transit layer computer system 1 comprises at least one of the database (s) containing multiple telephone numbers per subscriber and multiple IMSI's per subscriber corresponding to the IMSI's stored at the subscriber devices. Furthermore, the computer system comprises at least one of a SIP application server (SIP-AS) for enabling presentation of a telephone number preferred by a subscriber to a recipient device and a C7

application server (C7-AS) for translating IMSI's received from the subscriber device to an IMSI known at the HLR/HSS of the MVNO and vice versa.

The transit layer further contains several systems for connecting to the radio network RN and the MVNO ' s . These devices depend on the specific connections made. For example, when the radio network RN is a 4G network, the MME of the radio network will communicate over an IP exchange network IPX to the Diameter Edge Agent DEA in the transit layer. Likewise,

communications may be received from an SGSN over a GPRS roaming exchange network GRX at a border gateway BGW in the transit layer. In these cases, the computer system(s) 1 are in

communicative connection with the DEA resp. the BGW.

A more detailed description will be given for communications received from an MSC/VLR in the radio network RN. Signalling messages are received from the radio network RN via a Signalling Connection Controller Part (SCCP) network at a

Signalling Transfer Point (STP) in the transit layer. The C7 application server is connected to the STP for the IMSI

conversion. Voice communications are received from the MSC/VLR via a telephony network (e.g. a PSTN network) at a Service

Border Controller (SBC) in the transit layer. The SIP-AS server of the computer system 1 is connected to the SBC for presenting the preferred subscriber telephone number to the recipient device. Voice communications call flows via the SBC will be described in more detail with reference to FIGS. 6A and 6B. The transit layer also contains an SMS proxy SMSPx connected to the computer system 1 (not shown) for processing SMS messages as will be described in more detail with reference to FIGS. 6C and 6D.

The SBC, STP and/or the SMSPx may be part of computer system 1 or may be operated by other parties than the operator of the computer system 1.

As shown in FIG. 5, the transit layer is located outside the network switching systems of the MVNO ' s containing at least the HLR/HSS, the GMSC, the SCP and the SMSc. In the present example, the SBC of the transit layer is connected to the GMSC of MVNO_l and MVNO_2 for the voice communications. For signalling messages during location update and establishing of the voice connection, the transit layer STP communicates with the HLR and the SCP in the MVNO network switching system

respectively .

FIGS. 6A-6D provide call flow diagrams for MOC, MTC, MOS and MTS communications using SIP.

In each case, the illustrated call flow is preceded by a location update process (not shown) executed when the

subscriber device enters the radio network. As mentioned above, the subscriber device uses an IMSI stored in the subscriber device. In the location update request message, this IMSI is received at the STP in the transit layer over the SCCP network. IMSI conversion to an IMSI known in the HLR/HSS of e.g. MVNO_l is performed using the computer system 1 containing C7-AS and the multi-IMSI database 6. Hence, the HLR/HSS of MVNO_l can process the location update request. The location update

response by the MVNO contains the subscriber profile comprising at least the IMSI stored in the HLR/HSS and a set CAMEL home routing flag. The STP in the transit layer receives the location update response, replaces the IMSI with the IMSI used by the subscriber device in the radio network RN and forwards the subscriber profile including the set CAMEL home routing flag to the radio network RN.

FIG. 6A is a call flow illustration of a voice call originating from the subscriber station (MOC) in the radio network RN. The MOC contains the subscriber telephone number, indicated as CgPy (calling party; indicated as A in FIG. 1), and the recipient telephone number, indicated as CdPy (called party; indicated as B in FIG. 1) .

The MSC/VLR in the radio network RN receives the call request. The MSC/VLR in the radio network has stored the CAMEL home routing flag and, as a result thereof triggers a home routing operation instead of directly forwarding the call request on the basis of the recipient telephone number. The home routing operation involves the transmission of an INAP Initial Detection Point (IDP) message towards the SCP of MVNO_l via the SCCP network and the STP device in the transit layer. The C7-AS computer system may again apply IMSI conversion. The IDP message contains the CdPy number, such that this number is now known to the MV O_l . The SCP of MVNO_l returns an IDP response message and provides a home routing telephone number associated with the computer system 1, e.g. of the SBC, in the transit layer as a temporary CdPy telephone number. As mentioned above, the temporary telephone numbers are selected from a number block that is assigned to the computer system 1 and not used for presentation to the recipient device. The MVNO is informed of these temporary telephone numbers to be included in the IDP response message. The operator of computer system 1 may have ownership of the block with temporary telephone numbers or may have leased the block from a third party, such as another operator. It should be noted that the IDP response message is not necessarily routed through the transit layer.

Next, the MSC/VLR in the radio network transmits a call request to the PSTN network using the temporary home routing

CdPy number of the computer system 1 in the transit layer. The PSTN network forwards the call request as an invite to the SBC in the transit layer and further to the GMSC in MVNO_l . The GMSC requests the originally dialed number CdPy (B in FIG. 1) from the SCP of the MVNO that was stored when initiating the home routing operation. The request is implemented in this example as an IDP request and Connect response.

The next steps are performed in order to automatically select the subscriber telephone number to be presented to the recipient device. First, the GMSC forwards at least the

originally dialed number CdPy to the SBC of the computer system 1. that subsequently sends an invite to the SIP-AS of computer system 1 with the CgPy and CdPy telephone numbers as input. The SIP-AS sends a request with the parameters to the database 5 containing the telephone numbers of the subscriber of which one number according to the preferences of the user is selected.

The database logic returns a modified subscriber telephone number CgPy_mod that is e.g. based on the country code information in the CdPy number as was shown in FIGS. 2A and 2B. If the country code CC matches a corresponding country code of any of the CgPy numbers stored in the database for the

subscriber, the database returns this number CgPy_mod (A' in FIG. 1) . Else, the default telephone number or the primary number is returned as CgPy_mod. This number is then forwarded to the SBC in the transit layer and then the call is routed further to the PSTN and is finally delivered to the recipient device with the relevant number presentation of CgPy_mod.

The computer system 1 allows the recipient device (or any other device) to call the subscriber device on any of the telephone numbers stored in the database 5. FIG. 6B provides a call flow for MTC from the recipient device to the subscriber device.

A call from the recipient device arrives via the PSTN at the SBC in the transit layer as a result of a call to a number CdPy of the subscriber device. The user of the recipient device does not need to be a subscriber of the operator of the computer system 1 and the CgPy number is irrelevant for the process when the recipient of the recipient device is not a subscriber of the operator of the computer system 1 for MTC and MTS .

The SBC in the transit layer interacts with the SIP-AS and the SIP-AS sends a request to the database 5 to retrieve the primary telephone number under which the subscriber device is known in the HLR of the MVNO_l as described with reference to FIGS> 2A and 2B.

The transit layer SBC subsequently uses the retrieved primary telephone number to obtain a mobile station roaming number (MSRN) from the HLR. The MSRN is used in the usual manner for delivering the call to the subscriber device via the PSTN and the radio network RN. The subscriber device is

presented with the original CgPy number of the recipient device, assuming that the recipient is not a subscriber to the service from computer system 1. If the recipient of the recipient device is also a subscriber to the computer system 1, the recipient may have himself selected preferred numbers to be presented to the subscriber device.

The processes disclosed herein are not only relevant for voice communication but also to messaging, such as SMS messaging. FIGS. 6C and 6D are call flows for MOS and MTS.

The SMS message containing CgPy and CdPy telephone numbers arrives directly at the SMSpx proxy in the transit layer from the radio network via the SCCP or diameter network. The SMSPx proxy queries the database 5 in a similar manner as for MOC described with reference to FIG. 6A. The SMS message is forwarded to the SMSc in MVNO_l with the modified subscriber telephone number CgPy_mod preferred by the subscriber (e.g.

using the country code information from the CdPy telephone number) . The SMSc then delivers the SMS message in a manner known as such by querying a HLR to find out the current MSC/VLR used by the recipient device and subsequently forwards the SMS message to the found MSC to finally deliver the SMS message to the recipient device with the modified CgPy_mod telephone number of the subscriber device.

Finally, FIG. 6D is a call flow diagram for delivery of an SMS message to the subscriber device from a recipient device. The SMSPx receives a routing request message SRI4SM from the SMSC where the SMS message was received and returns a fake IMSI and fake VLR enabling the SMSC to forward the SMS message to the SMSpx proxy. The SMS message contains a telephone number CdPy stored in the database 5. The SMSPx proxy retrieves the primary telephone number from the database 5 as in a manner described with reference to FIGS. 2A and 2B. The database 5 return the primary telephone number and the SMS message to the SMSC in MV O_l . Delivery of the SMS message can now take place in the normal manner by first finding the current MSC handling the subscriber device and the forwarding the SMS message to the MSC for final delivery at the subscriber device.

FIG 7 is a block diagram illustrating exemplary data processing systems described in this disclosure, such as

computer system 1. Data processing system 70 may include at least one processor 71 coupled to memory elements 72 through a system bus 73. As such, the data processing system may store program code within memory elements 72. Further, processor 71 may execute the program code accessed from memory elements 72 via system bus 73. In one aspect, data processing system may be implemented as a computer that is suitable for storing and/or executing program code. It should be appreciated, however, that data processing system 70 may be implemented in the form of any system including a processor and memory that is capable of performing the functions described within this specification.

Memory elements 72 may include one or more physical memory devices such as, for example, local memory 74 and one or more bulk storage devices 75. Local memory may refer to random access memory or other non-persistent memory device (s) generally used during actual execution of the program code. A bulk storage device may be implemented as a hard drive or other persistent data storage device. The processing system 70 may also include one or more cache memories (not shown) that provide temporary storage of at least some program code in order to reduce the number of times program code must be retrieved from bulk storage device 75 during execution.

Input/output (I/O) devices depicted as input device 76 and output device 77 optionally can be coupled to the data processing system. Examples of input devices may include, but are not limited to, for example, a keyboard, a pointing device such as a mouse, or the like. Examples of output devices may include, but are not limited to, for example, a monitor or display, speakers, or the like. Input device and/or output device may be coupled to data processing system either directly or through intervening I/O controllers. A network adapter 78 may also be coupled to data processing system to enable it to become coupled to other systems, computer systems, remote network devices, and/or remote storage devices through intervening private or public networks. The network adapter 78 may comprise a data receiver for receiving data that is transmitted by said systems, devices and/or networks to said data and a data transmitter for transmitting data to said systems, devices and/or networks. Modems, cable modems, and Ethernet cards are examples of different types of network adapter that may be used with data processing system 70.

As pictured in FIG. 7, memory elements 72 may store an application 79. It should be appreciated that data processing system 70 may further execute an operating system (not shown) that can facilitate execution of the application. Application, being implemented in the form of executable program code, can be executed by data processing system 70, e.g., by processor 71. Responsive to executing application, data processing system may be configured to perform one or more operations to be described herein in further detail.

In one aspect, for example, data processing system 70 may represent a client data processing system, such as a

subscriber device. In that case, application 79 may represent a client application that, when executed, configures data

processing system 70 to perform the various functions described herein with reference to a "client". Examples of a client can include, but are not limited to, a personal computer, a portable computer, a mobile phone, or the like.

In another aspect, data processing system 70 may represent a server. For example, data processing system may represent an (HTTP) server in which case application 79, when executed, may configure data processing system to perform (HTTP) server operations. In another aspect, data processing system may represent a module, unit or function as referred to in this specification .

The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or

"comprising, " when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps,

operations, elements, components, and/or groups thereof. The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of

illustration and description, but is not intended to be

exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated .