FIELD OF INVENTION

The present invention relates to a system and method for communicating across multiple network types. The system and method are particularly relevant, but not limited to facilitate the multiple networks communication.

BACKGROUND ART

The following discussion of the background to the invention is intended to facilitate an understanding of the present invention only. It should be appreciated that the discussion is not an acknowledgement or admission that any of the material referred to was published, known or part of the common general knowledge of the person skilled in the art in any jurisdiction as at the priority date of the invention.

The mobile technology has changed the world we live in as well as the communication method for users. Recent advancements in the mobile technology mean that mobile phones have moved well past just calling and messaging via circuit switched (CS) network such as global system for mobile communications (GSM), code division multiple access (CDMA), etc.—now users are able to call and message via internet protocol (IP) networks. For various reasons, the communication service via the IP network costs less than equivalent service via the CS network.

Accordingly, there are many calling and messaging applications using the IP network in the market today. Most of those applications allow users, who include subscribers and non-subscribers to the network, to call and message with each other, and many of the available applications also allow the users to call and message other subscribers in legacy CS communications networks such as GSM, CDMA, etc.

One of the existing applications provides its subscriber a virtual phone number that exists within a telecommunication company's numbering space. This allows the subscriber of the application to call and message with other subscribers in the legacy network using that virtual phone number.

For example, the application allows its subscriber to own a virtual phone number of the telecommunications company A (hereafter referred to as Telco A) so that the subscriber's family and friends using Telco A are able to call and message the subscriber using the subscriber's virtual phone number at local rates even though the subscriber had an original phone number assigned from another telecommunications company (e.g. Telco B).

These types of applications work well for off-net subscribers wishing to obtain service in another telco network. There is another scenario, wherein a subscriber of Telco A, wishes to use such an application in order to communicate with other subscribers of Telco A, where those subscribers may or may not have the application. However, one prevalent problem of those applications is their inability to use the subscriber's original phone number assigned from the original telecommunications company (e.g. Telco A) as primary means to contact to other subscribers. In those applications, the new virtual phone number is normally assigned to the subscriber after registering for the applications. In this scenario, the subscriber would actually have two phone numbers, the original phone number as well as a virtual phone number.

Specifically, from the point of view of an on-net subscriber, the virtual phone number may be sub-optimal because the on-net subscriber already has the original phone number assigned from the current/original telecommunications company (e.g. Telco A) and may be strongly associated with the original phone number. As the on-net subscriber is assigned the new virtual phone number, other subscribers such as his/her friends or family would need to remember and recognize the on-net subscriber's new virtual phone number, in addition to the original phone number.

From the point of view of an off-net subscriber who already has the original phone number assigned from the different/original telecommunications company, the off-net subscriber may require the virtual phone number assigned from the telecommunications company related to those applications (hereafter referred to as current telecommunications company) in order to communicate with other subscribers in the current communication network at a possibly lower rate. However, even in this case, other subscribers such as his/her friends or family would need to remember and recognize the off-net subscriber's new virtual phone number.

Meanwhile, another prevalent problem of those applications is inability to select dynamically the best transport network, i.e. whether the IP network or the CS network, for each and every call/message.

For reference, one of the existing VoIP servers allows the subscriber chooses whether his/her call/message service would be delivered over the IP network or the CS network, but not both. Once the choice is made, the service is only delivered in chosen type of transport network even though the quality of the chosen type is not good enough or non-existent. Therefore, the result provides poor user experience such as lost or dropped calls, bad voice quality, and delayed messaging, etc.

Therefore, there exists a need for a solution that does not necessitate learning a new phone number, but to further allow to select the best transport network, i.e. whether the IP network or the CS network for each and every call/message when using multiple network types.

SUMMARY OF THE INVENTION

Throughout the specification, unless the context requires otherwise, the word “comprise” or variations such as “comprises” or “comprising”, will be understood to imply the inclusion of a stated integer or group of integers but not the exclusion of any other integer or group of integers.

Furthermore, throughout the specification, unless the context requires otherwise, the word “include” or variations such as “includes” or “including”, will be understood to imply the inclusion of a stated integer or group of integers but not the exclusion of any other integer or group of integers.

The present invention seeks to provide a service in that when sender requests a call/message, the recipient would only see a single phone number of the sender, even though the sender may in reality represent different phone numbers regarding each of circuit switched network and internet protocol network.

The present invention further seeks to provide a technical solution to select a suitable transport network for delivering calls/messages based on a set of rules.

In accordance with first aspect of the present invention there is a system for communicating across multiple networks comprising: an application provider operable to assign an identifier to a first device, wherein the first device is associated with a first identifier and is assigned a second identifier from the application provider; the first device operable to initiate a communication and select at least one first communication network among a plurality of first communication networks for establishing connection between the first device and a server so that the first device sends the communication to the server via the selected first communication network using the second identifier as a sender identifier; the server operable to replace the second identifier with the first identifier after receiving the communication from the first device, select at least one second communication network among a plurality of second communication networks connected between a second device and the server, and send the communication to the second device via the selected second communication network using the first identifier as the sender identifier; and the second device operable to receive the communication with the first identifier as the sender identifier from the server.

Preferably, the first device checks first communication network state among the plurality of first communication networks connected between the first device and the server, and the server checks second communication network state among the plurality of second communication networks connected between the second device and the server.

Preferably, the plurality of first and second communication networks include circuit switched (CS) network and internet protocol (IP) network.

Preferably, the first device checks IP network quality as the first communication network state and selects at least one of the IP network and the CS network depending on the checked IP network quality; and the server checks IP network quality as the second communication network state and selects at least one of the IP network and the CS network depending on the checked IP network quality.

Preferably, the server determines whether using the second identifier as the sender identifier depending on the selected first communication network.

Preferably, if the selected first communication network is the IP network, the first device sends the communication to the server via the IP network, and if the selected first communication network is the CS network, the first device sends the communication to the server via the CS network using the second identifier as the sender identifier.

Preferably, the first device requests to send a rich message, if the selected first communication network is the IP network, the first device sends the rich message to the server via the IP network, and if the selected first communication network is the CS network, the first device sends a simplified message corresponding to the rich message to the server via the CS network.

Preferably, if the selected second communication network is the IP network, the server sends the rich message to the second device via the IP network, and if the selected second communication network is the CS network, the server sends the simplified message corresponding to the rich message to the second device via the CS network.

Preferably, the server rechecks the second communication network state, and if reselected second communication network is the IP network, the server synchronizes to the second device to replace the simplified message with the rich message in the second device.

Preferably, the second device displays the first identifier as the sender identifier on a display.

Preferably, when the second device requests another communication, the second device selects the at least one second communication network among the plurality of second communication networks connected between the second device and the server, and the second device sends the another communication to the server via the selected second communication network using the first identifier as a recipient identifier.

Preferably, the server selects the at least one first communication network among the plurality of first communication networks connected between the first device and the server, and sends the another communication to the first device via the selected first communication network using the second identifier as the recipient identifier.

Preferably, the server determines whether using the second identifier as the recipient identifier depending on the selected first communication network.

Preferably, if the selected first communication network is the IP network, the server sends the another communication to the first device via the IP network, and if the selected first communication network is the CS network, the server sends the another communication to the first device via the CS network using the second identifier as the recipient identifier.

Preferably, the second device requests to send a rich message, if the selected second communication network is the IP network, the second device sends the rich message to the server via the IP network, and if the selected second communication network is the CS network, the second device sends a simplified message corresponding to the rich message to the server via the CS network.

Preferably, if the selected first communication network is the IP network, the server sends the rich message to the first device via the IP network, and if the selected first communication network is the CS network, the server sends the simplified message corresponding to the rich message to the first device via the CS network.

Preferably, the server rechecks the first communication network state, and if reselected first communication network is the IP network, the server synchronizes to the first device to replace the simplified message with the rich message in the first device.

Preferably, the first identifier is stored in connection with an international mobile subscriber identity (IMSI) of the first device in a home location register (HLR), and when the first device signs up to an application, the application provider assigns the second identifier and update the HLR so that the second identifier is stored in connection with the IMSI.

Preferably, the first identifier is a public number of the first device and the second identifier is a private number of the first device.

Preferably, the communication includes at least one of call and message.

In accordance with second aspect of the present invention there is a method for communicating across multiple networks comprising: initiating, by a first device, a communication, wherein the first device is associated with a first identifier and is assigned a second identifier from an application provider; selecting, by the first device, at least one first communication network among a plurality of first communication networks connected between the first device and a server; sending the communication from the first device to the server via the selected first communication network using the second identifier as a sender identifier; replacing, by the server, the second identifier with the first identifier; selecting, by the server, at least one second communication network among a plurality of second communication networks connected between a second device and the server; sending the communication from the server to the second device via the selected second communication network using the first identifier as the sender identifier; and receiving, by the second device, the communication with the first identifier as the sender identifier from the server.

Preferably, the first device checks first communication network state among the plurality of first communication networks connected between the first device and the server, and the server checks second communication network state among the plurality of second communication networks connected between the second device and the server.

Preferably, the plurality of first and second communication networks include circuit switched (CS) network and Internet protocol (IP) network.

Preferably, the first device checks IP network quality as the first communication network state, and selects at least one of the IP network and the CS network depending on the checked IP network quality; and the server checks IP network quality as the second communication network state and selects at least one of the IP network and the CS network depending on the checked IP network quality.

Preferably, the server determines whether using the second identifier as the sender identifier depending on the selected first communication network.

Preferably, if the selected first communication network is the IP network, the first device sends the communication to the server via the IP network, and if the selected first communication network is the CS network, the first device sends the communication to the server via the CS network using the second identifier as the sender identifier.

Preferably, the first device requests to send a rich message, if the selected first communication network is the IP network, the first device sends the rich message to the server via the IP network, and if the selected first communication network is the CS network, the first device sends a simplified message corresponding to the rich message to the server via the CS network.

Preferably, if the selected second communication network is the IP network, the server sends the rich message to the second device via the IP network, and if the selected second communication network is the CS network, the server sends the simplified message corresponding to the rich message to the second device via the CS network.

Preferably, the server rechecks the second communication network state, and if reselected second communication network is the IP network, the server synchronizes to the second device to replace the simplified message with the rich message in the second device.

Preferably, the second device displays the first identifier as the sender identifier on a display.

Preferably, when the second device requests another communication, the second device selects the at least one second communication network among the plurality of second communication networks connected between the second device and the server, and the second device sends the another communication to the server via the selected second communication network using the first identifier as a recipient identifier.

Preferably, the server selects the at least one first communication network among the plurality of first communication networks connected between the first device and the server, and sends the another communication to the first device via the selected first communication network using the second identifier as the recipient identifier.

Preferably, the server determines whether using the second identifier as the recipient identifier depending on the selected first communication network.

Preferably, if the selected first communication network is the IP network, the server sends the another communication to the first device via the IP network, and if the selected first communication network is the CS network, the server sends the another communication to the first device via the CS network using the second identifier as the recipient identifier.

Preferably, the second device requests to send a rich message, if the selected second communication network is the IP network, the second device sends the rich message to the server via the IP network, and if the selected second communication network is the CS network, the second device sends a simplified message corresponding to the rich message to the server via the CS network.

Preferably, if the selected first communication network is the IP network, the server sends the rich message to the first device via the IP network, and if the selected first communication network is the CS network, the server sends the simplified message corresponding to the rich message to the first device via the CS network.

Preferably, the server rechecks the first communication network state, and if reselected first communication network is the IP network, the server synchronizes to the first device to replace the simplified message with the rich message in the first device.

Preferably, the first identifier is stored in connection with an IMSI of the first device in a HLR, and when the first device signs up to an application, the application provider assigns the second identifier and update the HLR so that the second identifier is stored in connection with the IMSI.

Preferably, the first identifier is a public number of the first device and the second identifier is a private number of the first device.

Preferably, the communication includes at least one of call and message.

In accordance with third aspect of the present invention there is a communication facilitator for facilitating communication between parties across multiple networks, comprising: receiving a communication from a first device associated with a first identifier via a selected first communication network using a second identifier as a sender identifier, wherein the first device is assigned the second identifier from an application provider, and the selected first communication network is selected among a plurality of first communication networks connected between the first device and the communication facilitator by the first device; replacing the second identifier with the first identifier; selecting at least one second communication network among a plurality of second communication networks connected between a second device and the communication facilitator; and sending the communication to the second device via the selected second communication network using the first identifier as the sender identifier.

Preferably, the first device checks first communication network state among the plurality of first communication networks connected between the first device and the communication facilitator, and the communication facilitator checks second communication network state among the plurality of second communication networks connected between the second device and the communication facilitator.

Preferably, the plurality of first and second communication networks include CS network and IP network.

Preferably, the first device checks IP network quality as the first communication network state and determines at least one of the IP network and the CS network depending on the checked IP network quality; and the communication facilitator checks IP network quality as the second communication network state and determines at least one of the IP network and the CS network depending on the checked IP network quality.

Preferably, the communication facilitator determines whether using the second identifier as the sender identifier depending on the selected first communication network.

Preferably, if the selected first communication network is the IP network, the communication facilitator receives the communication from the first device via the IP network, and if the selected first communication network is the CS network, the communication facilitator receives the communication from the first device via the CS network using the second identifier as the sender identifier.

Preferably, the communication facilitator receives a request for sending a rich message, if the selected first communication network is the P network, the communication facilitator receives the rich message from the first device via the IP network, and if the selected first communication network is the CS network, the communication facilitator receives a simplified message corresponding to the rich message from the first device via the CS network.

Preferably, if the selected second communication network is the IP network, the communication facilitator sends the rich message to the second device via the IP network, and if the selected second communication network is the CS network, the communication facilitator sends the simplified message corresponding to the rich message to the second device via the CS network.

Preferably, the communication facilitator rechecks the second communication network state, and if reselected second communication network is the IP network, the communication facilitator synchronizes to the second device to replace the simplified message with the rich message in the second device.

Preferably, when the communication facilitator receives a request for an another communication from the second device, the second device selects the at least one second communication network among the plurality of the second communication networks connected between the second device and the communication facilitator, and the communication facilitator receives the another communication from the second device via the selected second communication network using the first identifier as a recipient identifier.

Preferably, the communication facilitator selects the at least one first communication network among the plurality of the first communication networks connected between the first device and the communication facilitator, and sends the another communication to the first device via the selected first communication network using the second identifier as the recipient identifier.

Preferably, the communication facilitator determines whether using the second identifier as the recipient identifier depending on the selected first communication network.

Preferably, if the selected first communication network is the IP network, the communication facilitator sends the another communication to the first device via the IP network, and if the selected first communication network is the CS network, the communication facilitator sends the another communication to the first device via the CS network using the second identifier as the recipient identifier.

Preferably, the communication facilitator receives a request for sending a rich message from the second device, if the selected second communication network is the IP network, the communication facilitator receives the rich message from the second device via the IP network, and if the selected second communication network is the CS network, the communication facilitator receives a simplified message corresponding to the rich message from the second device via the CS network.

Preferably, if the selected first communication network is the IP network, the communication facilitator sends the rich message to the first device via the IP network, and if the selected first communication network is the CS network, the communication facilitator sends the simplified message corresponding to the rich message to the first device via the CS network.

Preferably, the communication facilitator rechecks the first communication network state, and if reselected first communication network is the IP network, the communication facilitator synchronizes to the first device to replace the simplified message with the rich message in the first device.

Preferably, the first identifier is stored in connection with an IMSI of the first device in a HLR, and when the first device signs up to an application, the application provider assigns the second identifier and update the HLR so that the second identifier is stored in connection with the IMSI.

Preferably, the first identifier is a public number of the first device and the second identifier is a private number of the first device.

Preferably, the communication includes at least one of call and message.

In accordance with fourth aspect of the present invention there is a non-transitory computer readable medium containing executable software instructions thereon wherein when installed and executed on a mobile device of a user for facilitating communication between parties in multi-network, performs a method comprising the steps of: initiating a communication, wherein the mobile device is associated with a first identifier and is assigned a second identifier from an application provider; selecting at least one first communication network among a plurality of first communication networks connected between the mobile device and a server; sending the communication from the mobile device to the server via the selected first communication network using the second identifier as a sender identifier; sending an instruction to the server to replace the second identifier with the first identifier; sending an instruction to the server to select at least one second communication network among a plurality of second communication networks connected between a second device and the server; and sending an instruction to the server to send the communication from the server to the second device via the selected second communication network using the first identifier as the sender identifier.

Other aspects of the invention will become apparent to those of ordinary skill in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying figures or by combining the various aspects of invention as described above.

