This invention discloses a method of automatically determining and setting up the best possible communication session on a mobile computing device.
One hundred years ago, there were very limited options for communicating with another person who was not available for face-to-face contact. The normal letter post was the preferred medium, and although telegrams were widely available, they were only practical for short and urgent messages. The telephone system was still in its infancy and only gradually became a mass market product over the next few decades. As recently as twenty-five years ago, letter post, telegrams and the telephone were the only predominate means of communication for most people. Electronic mail was largely confined to those few institutions connected to ARPANET (the forerunner of today's Internet) and the majority of businesses used the international telex network for short electronic communications.
However since about 1980, the growth of both the protocols and the hardware that make up consumer computing technology has brought more and more methods of electronic communication within the reach of ordinary consumers.
In the context of the present invention, each instance of the physical media and physical interfaces together with the software protocols and software interfaces used to define these various methods are referred to as a communication channel. This invention is concerned with choosing the most suitable of these channels for any individual communication session. It should be noted that the above list of communication methods is intended to illustrate the scope of this invention only and not limit it in any way.
Modern computing devices able to make use of some or all of these communication channels include, without being limited to, desktop and laptop computers, Personal Digital Assistants (PDAs), mobile telephones, smartphones, set-top boxes and games consoles, together with converged devices incorporating the functionality of one or more of the classes of device already mentioned, as well as many other industrial and domestic electronic appliances such as digital cameras and digital music players. The most versatile computing devices, such as high-end smartphones, can use almost any communication channel conceivable.
However, the decision as to the most appropriate of the available channels for the owner or user of a computing device (the originator) to use when initiating communications with another party (the recipient) in any particular situation depends on a number of factors, including but not limited to the following:
Please note that the example cases given above are intended to be illustrative rather than exhaustive. Unfortunately, there is currently no easy way for the user or owner of a computing devices seeking to originate a communication to select and then set up the most appropriate of these channels for any individual recipient with whom they wish to communicate.
It is known that there are some solutions which can partially address this problem:
It is therefore an object of the present invention to provide an improved way of selecting a communications channel in a computing device.
According to a first aspect of the present invention there is provided a method of operating a computing device by which initiation of a communications session between an originator computing device and a recipient computing device causes one or more of a plurality of available communications channels to be automatically selected.
According to a second aspect of the present invention there is provided a) computing device arranged to operate in accordance with a method of the first aspect.
According to a third aspect of the present invention there is provided an operating system for causing a computing device to operate in accordance with a method of the first aspect.
Embodiments of the present invention will now be described, by way of further example only, with reference to the accompanying drawing, in which:
The present invention makes it possible for much of the effort involved in selecting the most appropriate communications channel to be automated. This increases the utility of a computing device incorporating the invention, by saving time, by saving money and by helping to avoid the risk of misdirected or inappropriate attempts to communicate.
The first step in this invention is for the originator to select the intended recipient or recipients for a communication, typically from the address book or contacts application on their computing device.
The second step in this invention is for all possible information about the potential recipient or recipients to be gathered.
Some of this data may already be present on the originator's computing device; for example, their contacts database is quite likely to include information regarding a number of possible channels, together with the recipient's geographical location. More data could be accessible via the use of presence mechanisms, particularly where the recipient is using a communications device which has implemented the disclosures of patent application GB0313385.7 entitled “Automatic behaviour modifications in Symbian OS” or patent application GB0510794.1 entitled “Location Based Push Presence and Profile on a Wireless Communications Device”; these two disclosures enhance presence information and make it more accurate and comprehensive. It is possible that still more data could be gathered via various out-of-band communication mechanisms; for example, public location servers or communications networks.
The recipient information gathered can include any or all of:
Note that in the case where there are multiple potential recipients, this information would be automatically gathered for each one.
The third step in this invention is for the originator's specific preferences for the potential communication session to be gathered.
A list of some of the factors the might affect the choice of the most appropriate channels of communication for the originator have already been described.
Some of this information will be known immediately, because it is already present on the device as part of the device state, the originator's calendar or agenda information, or their published presence information.
Other information may be ascertained from the current device profile; these are becoming well-known on computing devices, especially on advanced mobile phones, where a number of different profiles are commonly provided. These profiles group together the way the phone behaves e.g. in respect of user alerts, which include items such as ring tones and vibration alerts. Profiles commonly have names such as ‘Meeting’ ‘Outdoor’ ‘Silent’ and of course ‘Normal’, and they tailor the device to ensure that it behaves in socially appropriate ways when in specific sets of situations. While they are commonly used to modify audible user alerts they could of course be extended to define any type of ‘situation appropriate’ behaviour for a device; for instance, key clicks can be as irritating in some situations as rings, while visible prompts can be disruptive in certain situations, such as photographic darkrooms.
Other information may be automatically obtained via methods such as those disclosed in previously referred to patent application GB0313385.7. Still more information may be obtained by a method such as those disclosed in patent application GB0510794.1, referred to above.
However, by its nature, some information may (optionally) need to be gathered on a per-session basis; this data might include:
Note that it is very likely that suitable defaults (possibly linked to device profiles using techniques similar to those disclosed in the previously described patent application GB0313385.7) can be set up for this type of information, thereby considerably easing the burden on the originator; with careful research and design of the user interface, it is anticipated that such defaults will prove appropriate for most communications.
The fourth step in this invention is for the information gathered in the first three steps to be reconciled. In the majority of cases, this procedure will be both simple and automatic and invisible to the user.
In some cases, however, the user might be prompted to make a decision at this point. If, for example, an interactive communication involving multiple recipients (such as a conference call) was being set up, and one of the recipients was unavailable for an interactive session, the user might reasonably be asked:
As described in the previous step, suitable defaults might make such interaction redundant.
The fifth step in this invention is for the originator to initiate the session; normally, this would require one single action (e.g. pressing the call button of the phone or selecting a menu entry). At this point, the innovation:
The originator is then able to communicate (e.g. to talk, text, whiteboard, or game) with the called parties, using the selected channels.
If any of the recipients are unavailable (perhaps their presence information was incorrect) the originator can be given the same options as in the fourth step above.
A sample implementation of an architecture suitable for the present invention is illustrated in
A ConnManager object 10 (in the management plane 2) is responsible for managing connections and gathering the information outlined in the first, second and third steps above, and using that information to define the policy to be used during the communication session. The ConnManager object 10 can be provided as a plug-in via ConnManager Provider of the system. Primarily, it is where much of the functionality of the invention is implemented. A Connection object 12 (in the control plane 4) is responsible for managing a connection to a communication service, while a SubConnection object 14 (also in the control plane 4) is responsible for choosing the best channel available within the chosen service. The Connection object 12 and SubConnection object 14 can also be provided as plug-ins, as depicted in
This architecture allows a communication session policy to be defined based on the various inputs disclosed above. Note that a prerequisite for defining such a policy is that all external policy-defining information has been or can be gathered by the computing device, and provided to the ConnManager object 10 on demand, where the various constraints are reconciled and a decision as to the most appropriate channel is made.
For simplicity,
An example of such a use case would be where an originator requests that a telephone conversation is established with a recipient, with an urgency constraint that it is to occur some time in the next 4 hours (a time constraint that is appropriate for both parties), and a cost constraint that the call should be made in the most economical way. The ConnManager object 10 in this case gathers availability information of both the originator and the recipient in the next 4 hours (for example, by consulting the calendar of the originator and the presence data of the recipient). The ConnManager object then determines the most economical way of connecting the two users (based on location information for both and the devices available to each). The ConnManager object then schedules the call as appropriate using whatever facilities are available in the computing device for setting timed events, triggers or alarms.
Another use case may be where an originator requests a communication with multiple recipients. In this case, the ConnManager object 10 gathers the necessary information for all users and determines the best way of connecting to them at the appropriate time. As described above, this could involve using multiple connection services for different users, in which case the ConnManager object would need to set up more than one connection for the request.
It can be realised from the above disclosure that several advantages accrue from the present invention. In essence, the present invention discloses how to combine the various constraints, possibly gathered from disparate sources, of both originators and recipients of communications. This enables single or multi recipient communications sessions to be automatically and efficiently set up with the most appropriate channels of communication. While the utility is especially advantageous when multiple recipients are involved, there are also considerable efficiency gains to be made with single recipients; all the originator has to do is select the recipient rather than their specific address or channel.
While this invention is especially applicable to mobile telephones because they tend to have the largest range of possible channels, it can be applied to any computing device able to communication over a choice of communication channels.
Although the present invention has been described with reference to particular embodiments, it will be appreciated that modifications may be effected whilst remaining within the scope of the present invention as defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
0526050.0 | Dec 2005 | GB | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/GB2006/004618 | 12/11/2006 | WO | 00 | 10/27/2008 |