INSTANT ACCESS TO REMOTE RESOURCES AND SERVICES
Priority Claim
This application claims the priority of US patent application serial no. 60/349172, filed January 16, 2002.
Technical Field
The present invention relates to communications and to communication center operations, and more particularly to instantly providing a user with information about, and access to, contacts, preferred services, and preferred service providers.
Background of the Invention
Today, many telephones have memories which store the names and associated telephone numbers of contacts or preferred service providers previously input by their users. To place a telephone call to a desired contact or preferred service provider, a user of a telephone, generally, selects the name of the desired contact or preferred service provider and presses a button on the telephone or speaks the name of the desired contact into the telephone. Often, however, the contact or preferred service provider is unavailable when the telephone call is placed and the user must repeat the process, perhaps many times, in order to eventually talk to the desired contact or preferred service provider. In certain situations, the delay associated with such repeated attempts may have serious adverse effects or consequences. Further, the user may be charged for the calls even if the calls are not answered.
Many governmental authorities provide emergency medical services via ambulances or emergency vehicles that are, typically, staffed with one or more paramedics or emergency medical technicians, collectively referred to herein as paramedics. Upon arrival at the scene of an emergency, a paramedic may evaluate and treat the medical condition of person requiring minor medical assistance. However, when the person requires more than minor medical care, the paramedic may require the assistance of a doctor or may need to transport the person to a hospital and, hence, must identify a hospital having an emergency room that is currently accepting new patients and not deferring new patients to other hospitals. In order to obtain such assistance or identify such a hospital, the paramedic may utilize a cellular or
mobile telephone which is pre-programmed with the names and associated telephone numbers of doctors and/or hospitals, but may have to place, as described above, repeated telephone calls or even a series of telephone calls in order to talk to a doctor or to identify a hospital that is receiving new emergency room patients. Unfortunately, while the paramedic places the repeated or sequential telephone calls, the patient's condition may worsen.
One problem to be solved is to avoid the unnecessary placing of calls to desired contacts, preferred services, or preferred service providers that are unavailable.
Another problem to be solved is to avoid the need to place a call just to determine whether a desired contact, service, or preferred service provider is available.
Summary of the Invention
The present invention provides for the user to determine by a glance, without taking any other action, whether or not a particular service or service provider is immediately available to assist the user. The present invention also provides for the user to determine, by a single action, whether or not a particular person, service or service provider is immediately available to assist the user.
The present invention also provides for the user, by a single action, to use a particular service or contact a particular person or particular service provider known to be immediately available to assist the user.
The present invention also provides for the user to select preferred services and/or preferred service providers with whom the user wishes to conduct business.
The present invention also provides for the user to select a desired method and/or frequency by which status information for service providers is updated. Generally, the present invention allows the user of a user communications device
(UCD) and, more particularly, a wireless communication device to select frequently-used or desired services (or the service providers which provide such services). The UCD is then automatically, or on demand, provided with status update information to indicate whether or not those desired services are immediately available. The user can then simply look at the UCD and see if the desired service is available, or even have the UCD announce the availability of the desired service via a built-in speaker, buzzer, vibrator, flasher, or other means. If the desired service is available then the user can take a simple action, such as
simply pressing and holding the status indicator for that service, and be immediately connected to the service provider which provides that service: information at a glance, and instant connection - no waiting. Some examples of common UCDs used today are mobile telephones, personal digital assistant (PDA) devices and laptop computers with wireless telephone and/or data capabilities. Although the preferred environment of the present invention is with respect to communications devices as mentioned above, it should be noted that the present invention is not limited to such devices, or even to wireless communications devices. Rather, the present invention can also be used with "wired" devices, such as conventional (non-cellular) telephones, personal computers connected to a telephone line, a network, a digital subscriber line (DSL), a cable modem connection, etc.
If the desired service is not available the user can select an alternative service provider which is available, or the user can still choose to be connected to the service provider, even though the user may then have to wait until an agent (service representative) at that preferred service provider is available to assist the user. However, the user at least has the information as to whether a call for a service will be immediately connected or will be delayed, even before calling for the service, so that the user can make an informed decision whether or not to call for this specific service or to select yet another available service or service provider.
The user may have few service providers or many service providers, as desired, and as may be changed from time to time, as the user desires. If the user only has a few service providers, preferably but not necessarily pre-programmed into the UCD, the indicators for those service providers may all be visible at once. If the user has too many service providers to fit on the display of the user communication device, the user can scroll through the list of service providers until the user finds the desired service provider, which will then be displayed, or at least one of the service providers displayed. The order of the service providers may be in any convenient or desired manner, such as alphabetical, or first selected-first appearing, in the specific order selected by the user, etc. These may also be announced via the speaker if the viewer prefers not to view the display, is not able to view the display, or prefers to also have an audible announcement. The present invention provides for great flexibility in the time and manner of updating the status information for the services. The present invention provides that the status information is updated according to status information update methods. There are two
basic types of such methods: manual, that is, in response to a specific request by the user; and automatic, that is, other than in response to a specific request by the user.
In the manual method, the status can be updated on demand by the user taking a simple action, such as by the user briefly pressing the status indication for that service. This causes the UCD to request the current status for at least that service. The user may be able to use the manual update method for all services, for some services, or for no services, depending upon the functional capabilities and desires of the communication centers and service providers.
If the user is permitted to do so, the user can send a request to the communication center or the service provider to automatically update status information according to a requested communication center (CC) status information update method in accordance with the parameters mentioned above and the information interchange protocols available from the service providers. Also, if the user is permitted to do so, the user can program the UCD to automatically request updated status information for one or more services in accordance with the appropriate parameters mentioned above. Thus, in an automatic method, the status information can be updated in accordance with specified parameters. Also, updating of the status information in accordance with a demand and support availability by a communication center or a service provider is considered to be an automatic method.
A service provider may cause the status information to be updated without a specific request from the user, or a communication center servicing one or more service providers may cause the status information to be updated without a specific request from the user. The status information may also be sent in accordance with specified parameters, such as at predetermined time intervals, or predetermined times, or at a predetermined time since the last request for an update, or whenever the user turns on the UCD, or whenever a change in the status of a service occurs, or whenever a predetermined time has passed since the last notification of a change in status, or some other criteria, by any available method that the user selects on the UCD, or any combination thereof. These parameters may or may not be different for different services, as desired. Further, the user may be able to select the parameters for all services, for some services, or for no services, depending upon the desires of the communication centers and service providers. For those services for which the user is not permitted to or does not specify parameters, the communication center or the service provider may set the parameters, or default parameters may be used. The term parameters
includes, for example, the satisfaction of, or the failure to satisfy, predetermined criteria, and the occurrence, or non-occurrence, of a predetermined event. In addition, the parameters may be stored at, and acted upon by, a communication center or a service provider, in which case the UCD receives the status information without sending a specific request therefor. The parameters may also be stored at, and acted upon by, the UCD, in which case the UCD will, in accordance with the parameters, request and then receive status information from the communication center or service provider. Further, some parameters for some services may be stored at, and acted upon by, the UCD while the same parameters, or other parameters, for the same services, or for other services, are stored at, and acted upon by, the communication center and/or the service provider. Thus, automatic updating of status information may be initiated from different sources, which may be using the same or different parameters for the same or different services. Further, if the UCD does not, for some reason, receive an identification of a status information update method to be employed with respect to a particular service provider, the UCD will operate in a default mode with respect to that preferred service provider. Hence, the present invention provides for great flexibility in the manner in which status information is updated.
The request for status information, parameters for updating status information, and the status information, are preferably communicated, at least in part, over a control or data channel of a wireless or other communication network which links the UCD to the service providers and others. Alternatively, this information can be communicated, at least in part, over a voice channel of the wireless or other communication network, or by any other available wireless or other communication channel or link. In one embodiment, the requests, parameters and status information are communicated, preferably in their entirety but at least in part, in the form of short messages that are communicated, preferably in their entirety but at least in part, via the remote message service (RMS) feature of the wireless communication network.
The present invention provides for the presentation, in visual form, voice form, or other user-perceptible form, to the user of status information pertaining to a service or service provider that is received by the UCD so that the user can determine the status of the service and decide what action to take. Such status information is, generally, presented in association with information identifying the service or the service provider to which the status information pertains. The status information may be presented in any manner useful
to the user, such as visibly on the display of the UCD, audibly by a sound, sounds, tones, sequences thereof, or speech generated by the device, or by a tactile technique, such as by raising and lowering elements to represent symbols in Braille. If presented visibly, the status information may be presented by placing a symbol adjacent to the information identifying the corresponding service provider when the status information indicates that the service provider is available to provide services and by not placing such a symbol when the status information indicates that the service provider is unavailable to provide services. The status information for an available service provider may also be presented visibly by modifying the information regarding the service provider, such as by flashing the corresponding information identifying the service provider when the service provider is available to provide services, and by not flashing the corresponding information when the status information indicates that the service provider is unavailable to provide services. The status information for an available service provider may also be presented visibly by displaying the corresponding information identifying the service provider in a first color, and in a second different color if the service provider is not available to provide services. In addition, the status information may be presented by combining two or more of the above techniques or reversing a technique. Other techniques are and will be available, and the selection thereof is generally limited more by cost or other considerations than by limitations in technology.
Thus, the present invention solves the problem, of a user not knowing whether or not a desired service provider is available to provide a desired service.
The present invention further solves the problem of a user having to actually place a call in order to determine whether or not a desired service provider is available.
The present invention provides a method of operating a communication device by establishing communication with a communication center, receiving status information regarding a selection from the commumcation center without attempting to call the selection, the status information indicating the availability of the selection, and presenting the status information to a user of the communication device. The status information maybe presented in the form of an indicator. The step of receiving status information includes receiving a communication from the communication center over a control channel in a telecommunications network, and/or receiving a communication from the communication center over a control channel in a telecommunications network using the short message service of the telecommunications network. The communication device may be a wireless
communication device and the step of establishing communication includes establishing communication using a telecommunications network. The selection may be a service, a service provider, and/or an individual.
The present invention also provides a method of operating a communication device by, in response to a request from a user of the communication device, requesting status information from a communication center regarding a selection without attempting to call the selection, the status information indicating the availability of the selection, receiving status information regarding the selection from the communication center, and presenting the status information to the user of the communication device. The status information may be presented in the form of an indicator. The step of receiving status information includes receiving a communication from the commumcation center over a control channel in a telecommunications network and/or receiving a communication from the communication center over a control channel in a telecommunications network using the short message service of the telecommunications network. Prior to the step of requesting status information, an indicator representing the selection may be presented, and/or the request from the user may be commumcated by the user selecting the indicator. If the communication device is a wireless communication device the step of requesting status information includes establishing communication using a telecommunications network. The selection may be a service, a service provider, and/or an individual. The present invention also provides a method of operating a communication device by receiving a selection, receiving a designation of a status update method, requesting status information for the selection in accordance with the designated status update method, receiving status information for the selection, and presenting the status information to a user of the wireless device. The selected status update method may include requesting the status information at predetermined intervals, requesting the status information at predetermined times, requesting the status information in response to a user request for updated status information, and/or requesting the status information when a predetermined time has elapsed since the last time that status information was provided. The status information may be presented in the form of an indicator. The step of receiving status information may include receiving a communication over a control channel in a telecommunications network and/or receiving a communication over a control channel in a telecommunications network using the short message service of the telecommunications network. The step of receiving a
selection may include receiving user input regarding the selection and/or receiving the selection from a communication center. The step of receiving a designation of a status update method may include receiving user input regarding the status update method, receiving the designation of the status update method for the selection from a communication center. Further, if the communication device is a wireless communication device, the step of requesting status information may include establishing communication using a telecommunications network. The selection may be a service, a service provide, and/or an individual.
The present invention also provides a method of operating a communication device by receiving a selection, receiving a designation of a status update method, sending at least an indication of the designated status update method to a communication center, receiving status information for the selection from the communication center, and presenting the status information to a user of the wireless communication device. The indication of the designated status update method may specify that status information should be provided at predetermined intervals, that status information should be provided at predetermined times, and/or that status information should be provided when a predetermined time has elapsed since the last time that status information was provided. The status information may be presented in the form of an indicator. The step of receiving status information may include receiving a communication from the communication center over a control channel in a telecommunications network, and/or receiving a communication from the communication center over a control channel in a telecommunications network using the short message service of the telecommunications network. The step of receiving a selection may include receiving user input regarding the selection. The step of receiving a designation of a status update method for the selection may include receiving user input regarding the status update method. If the communication device is a wireless communication device and wherein the step of receiving status information may include establishing communication using a telecommunications network. The selection may be a service, a service provider, and/or an individual.
The present invention also provides a wireless communication device which has a transmitter and a receiver for establishing communication with a communication center, a controller functionally connected to the receiver for receiving status information regarding a selection from the communication center without attempting to call the selection, the status
information indicating the availability of the selection, and for providing a status information signal, and a user output interface functionally connected to the controller and responsive to the status information signal for presenting the status information to a user of the wireless communication device. The user output interface may be a visual display for presenting the status information, and/or a visual display for presenting an indicator which displays the status information. The receiver may have a voice channel and a control channel and be operative to receive the status information over the control channel and/or operative to receive the status information over the control channel using a short message system protocol. The transmitter may have a voice channel and a control channel and be operative to transmit a request for the status information over the control channel, and the controller be operative to generate the request and send the request to the transmitter, and/or the transmitter has H voice channel and a control channel and be operative to transmit a request for the status information over the control channel using a short message service protocol, and the controller be operative to generate the request and send the request to the transmitter. The transmitter may be operative to transmit a request for the status information, and the controller may be operative to generate the request in accordance with a status information update method and send the request to the transmitter, and/or the transmitter may be operative to transmit a request for the status information, and the controller may be operative to generate the request at predetermined times and send the request to the transmitter. The transmitter may be operative to transmit a request for the status information, and the controller may be operative to generate the request at predetermined time intervals and send the request to the transmitter. There may be a user input interface functionally connected to the controller, wherein the transmitter is operative to transmit a request for the status information, and the controller is operative to generate the request in response to user input via the user input interface. Further, there may be a user input interface functionally connected to the controller for allowing a user to designate a status information update method, wherein the controller is responsive to the user designation of the status information update method for generating a request for status information according to the designated status information update method and sending the request to the transmitter, and the transmitter is operative to transmit the request. There may be a user input interface functionally connected to the controller for allowing a user to designate a status information update method, wherein the controller is responsive to the
user designation of the status information update method for generating a request to implement the designated status information update method and sending the request to the transmitter, and the transmitter is operative to transmit the request. There may be a memory for storing the status information, and/or a memory for storing at least an indication of a status information update method. The selection may be a service, a service provider, or an individual, and the controller may be functionally operative to receive status information regarding the service from the communication center without attempting to call the service, service provider, or individual.
The present invention provides a method of operating a communications center by receiving status information regarding a selection, the status information indicating the availability of the selection, and sending the status information to a wireless communication device without the wireless communication device having called the selection. The step of sending the status information may include sending a communication to the wireless communication device over a control channel in a telecommunications network, and/or sending a communication to the wireless communication device over a control channel in a telecommunications network using the short message service of the telecommunications network. The selection may be a service, a service provider, or an individual, and wherein the step of receiving status information regarding a selection may include receiving status information regarding the service, service provider, or individual. The selection may also be a service provider and the step of receiving status information regarding a selection may include receiving status information regarding a service provided by the service provider and/or status information regarding an agent associated with the service provider. The selection may a communication center and the step of receiving status information regarding a selection may include receiving status information regarding an agent associated with the communication center. The selection may be a service, a service provider, and/or an individual.
The present invention provides method of operating a communications center by receiving a request for status information regarding a selection from a wireless communication device without the wireless communication device attempting to call the selection, the status information indicating the availability of the selection, obtaining the status information, and sending the status information to the wireless communication device. The step of sending the status information may include sending a communication to
the wireless communication device over a control channel in a telecommunications network, and/or sending a commumcation to the wireless communication device over a control channel in a telecommunications network using the short message service of the telecommunications network. The step of a receiving a request for the status information may include receiving a communication from the wireless communication device over a control channel in a telecommumcations network, and/or receiving a communication from the wireless communication device over a control channel in a telecommunications network using the short message service of the telecommunications network. The selection may be a service, a service provider, and/or an individual. The present invention also provides a method of operating a communications center by receiving at least an indication of a designated status update method for a selection, determining status information of the selection in accordance with the designated status update method, the status information indicating the availability of the selection, and sending the status information for the selection to a wireless communication device. The step of receiving at least an indication of a designated status update method may include receiving input from an operator at the communication center regarding the status update method, and/or receiving the designation of the status update method for the selection from the wireless communication device. The indication of the designated status update method may specify that status information should be provided at predetermined intervals, at predetermined times, and/or when a predetermined time has elapsed since the last time that status information was provided. The step of sending the status information may include sending a communication to the wireless communication device over a control channel in a telecommunications network, and/or sending a communication to the wireless communication device over a control channel in a telecommunications network using the short message service of the telecommunications network. The step of a receiving at least an indication of a designated status update method may include receiving a communication from the wireless communication device over a control channel in a telecommunications network, and/or receiving a communication from the wireless communication device over a control channel in a telecommunications network using the short message service of the telecommunications network. The step of determining status information of the selection may include requesting the status information from the selection, and/or retrieving the status
information from memory. The selection may be a service, a service provider, and/or an individual.
Brief Description of the Drawings Figure 1 illustrates the preferred environment of the present invention.
Figure 2 illustrates a method of operating a communication center to provide status information.
Figure 3 illustrates a method of operating a user communication device to receive status information. Figure 4A is an illustration of an exemplary user communication device.
Figure 4B is a block diagram of an exemplary user communication device.
Figure 4C is a block diagram of another exemplary user communications device.
Figure 5 is a block diagram of an exemplary communication center.
Detailed Description
Figure 1 illustrates the preferred environment of the present invention and shows the various components which communicate and perform various functions according to the methods and steps of the present invention. The system 100 comprises a user communication device (UCD) 102, a communication network 104, a communication center 108, at least one service provider 112, and at least one agent communication device (ACD) 114. UCD 102 and communication network 104 are linked via a communications link 106. The communication network 104 and the communication center 108 are linked by communications link 110. The communication center 108 and a service providers 112 are linked by a communications link 111. Finally, the service provider 112 and the ACD 114 are linked by a communications link 113. Communications links 110, 111, and 113 can be any desired type of communications links which are adequate for the transfer of voice and data as described herein. Preferably, but not necessarily, the user communication device 102, the communication network 104, and the communications link 106 are wireless.
A communication center, such as communication center 108, may be called by many different names, call center, contact center, customer service center, service center, application service provider, etc. There are preferably a plurality of service providers 112 associated with each communication center. Each service provider 112 has at least one ACD
114 and preferably a plurality of ACDs 114, each ACD 114 preferably being staffed or operated by a human individual (not shown separately), and each ACD 114 preferably having means to allow the human individual to communicate with the user (not shown) at the UCD 102 and to input information into and receive information from a server computer of the service provider 112. Examples of ACDs are agent workstations, which are well known in the art. The ACD 114 is connected to the service provider 112 via a communications link 113. In one embodiment the ACD 114 is remotely located from the service provider 112. In another embodiment the ACD 114 is located with, or is part of, the service provider 112. The ACD 114 is sometimes also referred to herein as a service provider ACD 114. Although the preferred use of an ACD is with a human agent, the present invention is not limited thereto. The present invention contemplates, and includes, automated devices 114 which may perform some services, such as providing an account balance, airline flight schedule information, the status of an order or refund, processing an order to refill prescription medication, etc. Although the communication center 108 is preferably distinct from the service providers 112, and is therefore connected to one or more service providers 112 via one or more corresponding communications links 111, the communication center 108 may include a service provider 112 or perform the function of a service provider 112, as illustrated by the dashed line 108 A. Thus, one or more of the communication centers 108, the service providers 112, and the ACDs 114 may be separate entities, devices or offices physically located remotely from one or more of the others, or they may all be operated as a single facility.
A service provider 112, as referred to herein, is a business enterprise having one or more persons who provide a service to a user of a UCD 102 upon request by that user. Such persons are typically referred to as agents and are, essentially, "on-call" during their working hours. These agents may be stationed at a communication center 108, at a service provider 112, at home, or at any location where a communication link may be established with them (i.e., via wired and/or wireless communications facilities). Further, an agent need not be stationed at a fixed location, but, instead, may be transient or mobile between locations as long as the agent is still accessible through wireless communications facilities such as network 104, and therefore accessible and available for communications and the provision of services. This is true regardless of whether the agent works for a service provider 112 or a
communication center 108 or 108 A, and regardless of whether the agent is an employee or an independent contractor.
A communication center or a service provider may, according to the present invention, provide a single service or multiple services to the user of the UCD 102. The services may vary widely and may include services such as, for example and not of limitation, language translation services, hospital or other emergency services, legal services, brokerage services, transportation and lodging reservation services, and many other services available now or in the future. A service provider may allow any user to use the services and then bill the user therefor, or a service provider may require advance subscription to and/or payment for its services. The business relationship may also exist between a user and a communication center 108, wherein the communication center 108 has one or more service providers 112 or business relationships therewith.
The user can independently select his or her service provider(s) from a list of desirable and/or acceptable contracting service providers. The service providers may offer identical, similar or even differing services so that the user will have an alternate service provider to select in the event that the primary service provider is unavailable. The service provider(s) selected by the user are sometimes referred to herein as the user's "preferred service provider(s)". The user may also contract with a plurality of communication centers 108 to obtain identical, similar or different services or service providers from each communication center.
For simplicity of illustration, Figure 1 displays only one UCD 102, one communication center 108, one service provider 112, one ACD 114, and one each of associated communication links 106, 110, 113, and 111. However, the preferred embodiment includes systems 100 having a plurality of UCDs 102, a plurality of service providers 112, a plurality of ACDs 114, and a plurality of communications links 110, 111, 113. In addition, the preferred embodiment also includes systems 100 which have a plurality of communication centers 108, which may be competitive and/or which may be servicing disparate areas.
The UCD 102 is, generally, owned, made available to, or possessed by a user who has subscribed to, or is the beneficiary of a subscription to, a wireless communication service provider for the use of wireless communication services via the wireless communication network 104. Typically, such services include wireless telephone services,
but may also include wireless communication services which communicate data, video, and other information. In one implementation the user of the UCD 102 also typically subscribes to, or has established a business relationship or contract with one or more entities operating commumcation centers 108 and/or service providers 112, which are capable of providing certain services to the user via the user's UCD 102 and the wireless communication network 104.
Ideally, whenever a user needs a particular service, the user's preferred service provider is always available. However, at any given point in time, one or more of the user's preferred service providers may not be available to provide service to the user when needed by the user. Under existing technology, the user has to actually call the service provider to see if the service is available. If the service provider is busy and cannot provide the desired service at that time, the user has expended effort, time and money without the desired result. Further, under the existing technology, some of the available voice bandwidth of the wireless communication network 104 is used without any beneficial result. To aid the user in avoiding unnecessary attempts at establishing communications for the receipt of service(s) from a preferred service provider who is unavailable, and in avoiding unnecessary delays therefrom, the UCD 102 receives status information (also sometimes referred to herein as "status data") pertaining to the availability of each of the user's preferred service providers to provide service(s) and presents the status information to the user. If the UCD provides a visual presentation, the user can simply glance at an indicator for that service or service provider on the UCD to determine the availability of the service or service provider. If the service is available the user can simply press, or press and hold, the indicator indicating the availability of the service or service provider, and the user will then be instantly connected to an agent (service representative) of the service provider - because the readiness and availability of the agent has already been determined and validated. Any desired indicator for a service provider and/or status may be used. However, icons are preferred. Thus, the term "indicator" should be understood to include icons and other visual representations. Although the preferred implementation is to indicate that an agent, service, or service provider is available only if and when that is actually the case, another implementation provides for using predictive availability, similar to predictive dialing and call handling, to estimate a time when an agent, service, or service provider will be available. Algorithms for predicting when an agent will become available are well known
and the availability of an agent herein may be based upon any such desired algorithm or any other suitable algorithm. An agent, service, or service provider may then be indicated as available if the estimated time is less than some predetermined value. If predictive availability is used, the status information may contain an indication of this estimated or predicted time remaining before availability, and the UCD may present this information to the user by altering the presentation. For example, flashing at one rate if the agent, service, or service provider is available now, another rate if agent, service, or service provider is predicted to be available within some predetermined time, and still another rate or even not flashing if agent, service, or service provider is not predicted to be available within the predetermined time. Also, in the event that the user so desires, the user may press, or press and hold, the indicator, even if the service provider is indicated to not be immediately available, so that the user can be connected to the service provider, even if the user is then placed "on-hold". Some users prefer this because it at least gets them in the queue to be answered. In order for the UCD 102 to request status information, it must be configured. The user, or someone on the user's behalf, such as the communication center or the service provider or the wireless communications service provider, configures the UCD 102 by providing the UCD 102 with the name or other information uniquely identifying the preferred service provider, for each of the user's preferred service providers, such as a telephone number, email address, web site address, SMS cell number, etc., associated with the preferred service provider or, with the communication center 108 which provides commumcation center services to or for the preferred service provider, and a "status information update method indicator" which identifies the "status information update method" employed to obtain, or receive, status information for the preferred service provider. Therefore, the UCD 102 can receive and store such configuration information for each preferred service provider. The UCD 102 can also perform according to the UCD status information update method identified by the status information update method indicator. Thus, the UCD 102 can obtain and receive status information for each preferred service provider. In some cases, the user may not have the option of configuring the UCD 102, or the user may prefer not to personally undertake the task of configuring the UCD. In this case, the user can specify the desired options to the communication center or service provider.
The communication center or service provider can then create a configuration package and push that configuration package to the UCD 102. A configuration package can be a default configuration package which is automatically pushed to the UCD 102 when the user signs up for the service. This default package would then remain in place until a new configuration is selected by the user or pushed to the UCD by the communication center or service provider. Of course, security features, such as passwords, encryption, etc., can be used to keep an unauthorized communication center or service provider from changing the configuration.
Status information is, preferably, communicated to the UCD 102 according to at least one method of a group of UCD status information update methods, at least one of a group of communication center status information update methods, or both. Of course, other methods or groups of methods may certainly be employed or envisioned now or in the future, and are considered to be within the scope of the present invention. A status information update method is selected and/or identified when a preferred service provider is identified, so a different method may be employed for each preferred service provider. Also, preferably, the status information update method for any service provider may be changed at any desired time. Note also that while the group of UCD status information update methods includes many different methods, each method of the UCD status information update methods shares the commonality that status information is received by the UCD 102 in response to a request for status information sent to the communication center 108 by the UCD 102 or via an automatic status update method. The individual methods of the group of UCD status information update methods differ in the parameters which trigger the generation and communication of a request for status information.
Some, but not all, examples of different methods of the group of UCD status information update methods include the following: (i) manually - the UCD 102 generates and communicates a request for status information pertaining to an identified preferred service provider in response to user input instructing the UCD 102 to obtain such status information, such as by touching the indicator for that service or service provider or via a spoken command; (ii) automatically by the UCD where the UCD 102 automatically and periodically generates and communicates a request for status information pertaining to an identified preferred service provider in response to the specified parameters for that service or service provider. Exemplary parameters are at predetermined time intervals, or at
predeterrnined times, or at a predetermined time since the last request for an update, or whenever the user turns on the UCD, or whenever a change in the status of a service occurs, or whenever a predetermined time has passed since the last notification of a change in status, the crossing of a predetermined threshold number or percentage of other preferred service providers having status information indicating that they are available or unavailable to provide service(s), or some other criteria, or any combination thereof. The foregoing examples are not exclusive and the group of UCD status information update methods may include other, or different, methods known now or in the future.
User input may be provided, for example and not by limitation, by the entry of one or more keystrokes, or the touching of a display or indicator, by the speaking of a word, phrase, or sound, or by any desirable method.
Therefore, the UCD 102 determines whether a user request is present or whether the predetermined triggering parameters have been met; generates and communicates a request for status information to the communication center 108; receives and parses a response from the corrirnunication center containing status information; stores the received status information in association with the preferred service provider; and presents the name of the preferred service provider and associated status information to the user. The UCD 102 preferably communicates the request in the form of one or more short messages. The messages may be communicated via any desired or convenient protocol, language, and/or commumcation technique. These protocols, languages, and communication techniques are collectively referred herein as a Remote Message Service (RMS).
There are many, many cellular, satellite, Internet, and other protocols, languages, and commumcation techniques in use throughout the world. Some, but certainly not all, examples of such protocols, languages, and communication techniques include short message service (SMS), multi-media services (MMS), PSPDN (Packet Switched Public Data Network), CSPDN (Circuit Switched Public Data Network), Internet Protocols, TCP/IP (Transmission Control Protocol / Internet Protocol), voice over IP (VoIP), HTML (Hyper Text Markup Language), Wireless Application Protocol (WAP/WML/HDML), cHTML, HTTP, SSL, Java, GPRS (General Packet Radio Service), digital radio telephone network, ISDN (Integrated Services Digital Network), B-ISDN (Broadband ISDN), DSL, AMPS, N-AMPS, TAGS, ESMR, GPRS, EDGE, second generation (2G) cellular system technologies such as CDMA, TDMA, GSM, and TDEN, third generation (3G) cellular
system technologies such as CDMA2000 and WCDMA. Thus, it will be appreciated that the present invention is not dependent upon any particular protocols, languages, or communication techniques.
In addition to sending status information in response to a request from the UCD 102, the communication center 108 may also provide, or "push", status information for preferred service providers to the UCD 102 in accordance with parameters at the communication center, that is, without a corresponding status information update request from the UCD 102. Those parameters may have been generated at the UCD 102 and sent to the communication center as a request for status information in accordance with those parameters, and/or may have been directly input at the communication center by, for example, an operator or an agent, and/or may be default parameters, and/or may be provided to the communication center by any other method.
The UCD 102 may, preferably, generate and send the status information update method parameters to the communication center or the service provider as a request using the RMS. The request preferably includes a pre-defined code identifying the short message as a request to the communication center 108 to implement a communication center status information update method, a status information update method indicator, which identifies a method belonging to the group of communication center status information update methods, the name or other information uniquely identifying the preferred service provider for which status information is desired by the user, information uniquely identifying the UCD 102, and any appropriate parameters. Therefore, the UCD 102 may, optionally, identify or receive from the user an identification of a status information update method indicator, the service provider to which it pertains, any appropriate parameters, and then form and communicate a corresponding status information request to the communication center 108. To determine whether status information for a preferred service provider is to be communicated to the UCD 102 using a method of the group of communication center status information update methods (as contrasted to a request from the UCD 102 using a method of the group of UCD status information update methods), the communication center 108 determines whether the predetermined triggering parameter of a status information update method has been met. If a status information update is appropriate, the communication center 108 communicates the status information to the UCD 102 as a status message in the form of one or more short message using the remote message service (RMS). The status
message, as previously stated, preferably includes information uniquely identifying the UCD 102 and the name or other information uniquely identifying the preferred service provider for which status information is being provided, and status information for the preferred service provider named or identified in the instruction. This uniquely identifying information may be obtained from the information supplied in an instruction or communication to the communication center 108 during configuration of the UCD 102. The format and order of the information in the status message above are preferably the same as that of the information in a status message generated in response to a request. However, they maybe different, if desired. The communication center 108 pushes status information for the preferred service provider to the UCD 102 based, at least in part, upon the status information, and the particular communication center status information update method selected.
Similar to the methods of the group of UCD status information update methods, a communication center status information update method is selected and/or identified when a preferred service provider is identified, or input, to the UCD 102, a different method may be employed for each preferred service provider, and the status information update method may be changed at any desired time. The group of communication center status information update methods includes many different methods, but each method of the group of communication center (CC) status information update methods shares the commonality that status information for a preferred service provider is automatically transmitted by the communication center 108 to the UCD 102 without a particular corresponding request from the UCD 102. The individual methods of the group of communication center status information update methods differ, however, in the predetermined parameters which trigger the generation and communication of status information. In addition to one, some, or all of the UCD status information update method parameters mentioned above, the communication center preferably also uses one or more of the following parameters: a request by a user for specific service; at a time based upon the receipt of status information; a determination by the communication center 108 which indicates a change in the availability of the preferred service provider to provide service(s); and upon the receipt of directions from the preferred service provider. The times, time intervals, and other parameters may be predetermined by the user during configuration of the UCD 102, by the preferred service provider, by default settings, or by the operator of the
communication center 108, and may vary from service provider to service provider. Communication center status information update methods may also be based upon other specified parameters. The communication center can also restrict a user, preferably on a user-by-user basis, as to what services or service providers may be selected by the user, what UCD status information update methods and parameters are available for a service or service provider, and what communication center status information update methods and parameters are available for a service or service provider. For example, the user may only be able to select the service provider, and the communication center or the service provider selects the status information update method and parameters to be used for that service provider. Further, if there are different classes of users, the times, time intervals, and other parameters may vary from user to user. For example, standard users may get updated information at specified intervals, and premium users may get updated information at more frequent intervals.
The communication center 108 may also push status information to the UCD 102 in response to an instruction or request, such as from a service provider 112, directing the communication center 108 to push status information associated with that same service provider, or even a different service provider, to the UCD 102.
An instruction or request, from the UCD 102 to the communication center 108 to implement a particular status information update method preferably includes a status information update method indicator, the appropriate parameters, the name or other information identifying a service provider of the status information, and information uniquely identifying the UCD 102. In response to receipt of such an instruction or request, the communication center 108 pushes status information to the UCD 102 by the formation and communication of a response similar to a status request from the UCD 102. The communication center 108 of Figure 1 may be operated by a single service provider and provide communication center services only for that service provider. Alternatively, the communication center 108 may be operated by an entity which provides communication center services to a number of service providers, generally, on a contractual or other basis. Regardless of who operates the communication center 108, the communication center 108 is, preferably, operative to receive and store the name or other uniquely identifying information, status information, and other information for, or associated with, at least one service provider. If the service provider is an entity that utilizes
one or more agents to provide service(s), the communication center 108 may also be configured to: (i) receive and store the name or other information uniquely identifying each agent, status information regarding the availability or non-availability of each agent or group of agents, and other information, such as the skills, for each agent or group of agents; and, (ii) evaluate the status information for the agent or agents and determine status information and/or service capabilities for the service provider as an entity. For example, if the status information for the agent or agents indicates that at least one agent is available to provide a requested service or requested services, then the service provider is considered, and determined, to be available to provide such service or services to the user of the UCD 102; or, if the status information indicates that no agent is available to provide a requested service, then the service provider is considered, and determined, to be not available to provide such service or services to the user of the UCD 102. The other information referred to above may include, for example, one or more telephone numbers for or associated with a service provider 112 or an ACD 114. Generally, the communication center 108 receives, from a service provider 112, the name, status information, and other information of, or associated with, the service provider, and/or agent thereof and stores the same. Preferably, but not necessarily, the name and other information are provided to the communication center 108 when they are associated with a new service provider or agent thereof, or when a change is necessary thereto. Status information, on the other hand, is provided to the communication center 108 more frequently in accordance with predetermined parameters. For instance, status information may be provided to the communication center 108 only when the availability status of a service provider, or agent thereof, if any, changes from available to non-available, or vice versa. Alternatively, status information may be provided to the communication center for a service provider, or agent thereof, at periodic intervals of time whether or not a change has occurred in their availability status.
Status information may be received by the communication center 108 from a service provider in a variety of manners. For example, the communication center 108 may receive status information for a service provider's agents individually in separate communications, may receive status information for all of a service provider's agents together in a single communication, may receive status information for the service provider as a whole, if appropriate, or may receive status information for separate sections of, or groups of agents
in, the service provider. The communication center 108 preferably receives the name, status information, and other information pertaining to a service provider by an electronic data transfer from the service provider. The data transfer may be by any convenient method, including a directly transferring data between the service provider and the communication center; posting information to and retrieving mformation from an Internet web site; sending and receiving e-mail, providing access to a database containing such information, etc. This information transfer may be initiated automatically in accordance with specified parameters, or may be initiated manually or under the direct control of an operator. The communication center 108 also may, instead of or in addition to the electronic data transfer, receive such information by input from a communication center operator who has been made aware of such information through voice communications or other methods, or a service provider operator who has been granted the authority or permission to enter status data at the communication center. Further, such information can reside at the communication center, with agents working from the center and/or any other desired or designated location, such as home, another office, or even a vacation resort. In that case such information need not be transferred between the communication center and the service provider. Thus, the communication center 108 may receive such information at a variety of different times and by a variety of different methods, with the actual timing and method being primarily determined by the desires or capabilities of the service provider or the communication center.
In the preferred embodiment, the service provider provides status updates on each agent directly into the data base resident at the communication center as agent status changes. This eliminates the need for the communication center to request status updates from the service provider. Also, in the preferred embodiment, agents may work directly at the communication center or may work remotely, being connected via both voice and data links, such as VoIP, NPN (virtual private network with additional phone line dialed and connected to the communication center voice server), WAN (Wide Area Network), DSL/ADSL data connection and additional telephone dial-up connection for voice, etc. However, as mentioned, the agents may also work at a service provider, and the service provider provides the status information to the communication center. Also, a communication center may work with a combination of agents and service providers. Further, a communication center may update the status information by communicating with
the appropriate application software and/or servers of the service provider. It should be appreciated that status updates which are too infrequent can cause customer frustration when old data indicate that an agent is available, but the agent actually is not available, and so the customer's call is refused or the customer is placed on hold for an unacceptable period of time. Status updates which are too frequent cause use excessive communications link bandwidth and computer processing time. Therefore, in the preferred embodiment, if the communication center depends upon the service provider for status information, then the service provider provides status updates to the communication center as the availability state changes for each agent and/or at intervals of approximately one minute. However, this time interval is a tradeoff between current information and bandwidth usage, and is not critical. Therefore, other time intervals may be used. Also, different time intervals may be used for different services and/or service providers so as to accommodate the particular characteristics of a type of service. Different time intervals may also be used to accommodate the situation where the service provider is an individual person providing services rather than a person who is one of several or many persons associated with a corporate service provider.
The service provider preferably also provides status updates to the communication center upon demand from the communication center. Thus, even if the normal status update frequency is low, the communication center may request more frequent updates when desired, such as when requests for a particular service provider or service area are heavier than normal and there is concern that the status information may be too old to be valid or useful.
Regardless of the timing or manner in which such information is updated, received by, provided to, or input to the communication center 108, receipt of the information enables the communication center 108 to identify, at any time during operation, whether a qualified agent is available or is not available to provide the user-requested service(s) from the preferred service provider or from any service provider. The scope of the present invention includes all timings and methods, available now or in the future, by which the communication center 108 receives such information. In order for the communication center 108 to push status information to the UCD
102 the communication center 108, or some associated device or system, must be operative to manage, control, and perform actions necessary to support the appropriate status
information update method and associated parameters, to parse, interpret, identify, and recognize requests from the UCD 102, and elements of a received short message, and to form and communicate a status information message, such as described above.
For example, if the status information update method indicator indicates that updated status information for an identified service provider is to be provided to the UCD 102 whenever the communication center 108 receives or determines changed status information, as the case may be, the communication center 108 must be capable of detecting a change in the received or determined status information and of communicating the new, or revised, status information to the UCD 102. As another example, if the status information update method indicator indicates that status information for an identified service provider is to be updated at periodic time intervals, the communication center 108 must be capable of monitoring time and communicating the current status information for the identified service provider to the UCD 102 upon the occurrence of the passage of the appropriate time interval. Thus, the communication center 108 can preferably provide status information to the
UCD in response to a request from the UCD 102, a request from a service provider 112, in accordance with specified parameters, or a combination of the above. Likewise, a service provider 112 can provide updated status information to the communication center 108 in response to a request from the communication center 108, or in accordance with specified, or both. In addition, in one embodiment, the service provider 112 is responsive to a request for status information from a UCD 102 communicated directly to, or passed to, the service provider. Further, the UCD 102 can request updated status information in response to a user command, in accordance with specified parameters, or both.
As a result of the above, the user can instantly know, via a single glance at the UCD 102, whether or not a preferred service provider is immediately available.
Because the user of the UCD 102 may desire service(s) from one of the user's preferred service providers that is available to provide service(s), the communication center 108 is additionally and preferably configured to cause a communication connection to be established between and/or communicatively connect the UCD 102 and the ACD 114 of the preferred service provider for voice communication therebetween. If the user is allowed access to a database which has, for example, status information, then the communication center 108 is also configured to cause a communication connection to be established
between and/or communicatively connect the UCD 102 and the database, wherever located, so that the user has instant and current status information. Such a database may be located at the communication center, at a service provider, or at some other location, such as a secure independent contractor facility. The establishment of such a voice communication connection, preferably, utilizes the voice channels of wireless communication link 106, wireless communication network 104, communication links 110, 111, commumcations circuitry of the UCD 102 and communication center 108, and the appropriate facilities of any communication network necessary. The establishment of such a voice communication connection may also utilize the telephone number(s) or other identification, such as in the case of an out-of-public network transmission, of the service provider or agent(s) thereof, as the case may be, which were previously provided to and stored at the communication center 108 as described herein. Further description of the communication center capabFlities necessary to establish voice and data communication connections is not deemed necessary since such capabilities are well-known in the communication center and telecommunications arts.
Thus, if the user sees that the service or service provider is immediately available the user can then be directly and immediately connected to that service or service provider.
In order to provide the functionality and capabilities described herein, the communication center 108, preferably, comprises a facility having appropriate communication network interface circuitry (i.e., for establishing voice and/or data communications, as necessary) and at least one server computer configured with appropriate operator input and output interface devices (e.g., keyboard, mouse, display, printer, and other similar devices), processing circuitry, memory, and communications circuitry. The memory, preferably, includes random access memory (RAM), read only memory (ROM), and hard disk media for storing: software program instructions which, when executed by the processing circuitry, enable and/or cause operation of the communication center 108 at least as described herein; data such as the names, information records, instructions, multi-media content, or other uniquely identifying information, etc., and status information associated with service providers; data uniquely identifying the UCD 102; data uniquely identifying agents; data uniquely identifying user and account history - if any; and a list including the name(s) or other information uniquely identifying the user's preferred service providers); and, for each, the corresponding status information update method indicator identifying the
method (and, hence, the predetermined criteria) to be employed in updating status information at the user's UCD 102. The memory may also include programmable read only memory (PROM), electrically programmable read only memory (EPROM), electrically erasable and programmable read only memory (EEPROM), magnetic disk, optical disk, magneto-optical disk, and other storage devices for storing and retrieving the above- described software program instructions and data. The communications circuitry of the server computer, preferably, enables interaction between the server computer and the communication network interface circuitry to establish, or cause to be established, voice and/or data commumcations, as necessary, for: (i) the communication of data signals representing the various requests and status information updates, as described herein, with a user's UCD 102 via the wireless and/or wired communication network 104 and respective data channels of communication links 106, 110; (ii) the establishment of voice communications or other voice communication infrastructure between a user's UCD 102 and an agent's ACD 114 of a service provider via the wired and/or wireless communication network 104 and respective voice channels of communication links 106, 110, 111; and, (iii) the receipt of status information from service providers) (or agents thereof, as the case may be) in the form of data representative of such status information (i.e., via agent's computer- to-server update, or computer-to-computer transfer), or in the form of voice communications. Exemplary communication centers 108 include, but are not limited to, network or service provider facilities which, generally, receive and route telephone calls to ACDs or other voice communication infrastructures of service providers, or agents thereof, with or without human intervention. A communication center 108 may receive a telephone call and route a telephone call to the ACD 114 of a particular, uniquely identified available service provider or of a non-uniquely identified, available agent of many possible available agents.
The system 100 of Figure 1 further includes an ACD 114, as an example of a voice communication structure, which is utilized by a service provider, and/or the communication center,, and/or agent thereof, to provide service(s) to the user of the UCD 102. The ACD
114 is thus capable of voice communications and being part of voice communication connection caused to be established, or established, by the communication center 108 upon receipt of a telephone call from the UCD 102 for such service(s). Although the preferred form of an ACD 114 is an agent workstation, it should be understood that the ACD 114 may
be, for example and not as a limitation, a voice-enabled personal digital assistant (PDA) and/or other device or devices which may be available now or in the future to permit interaction between the user and the agent.
The ACD 114, preferably, communicatively connects to the communication center 108 through its associated service provider 112 and communication links 111 and 113 when necessary and/or appropriate. However, depending upon how a telephone call from a user of the UCD 102 is routed to and/or upon how a voice communication connection is established with the ACD 114 (i.e., procedures which are not described herein as they are well known in the communication center and telecommunication arts), communication link 111 may or may not actually connect to communication center 108. Instead, communication link 111 may actually connect, for example and not limitation, to the wireless communication network 104 or to the public switched telecommunication network (not shown). Nonetheless, communication link 111 is operative to communicate voice signals during a telephone call between the ACD 114 and UCD 102 and may include, alone or in combination, wired or wireless communication links having voice and data channels, and may also include, alone or in combination, appropriate components, or elements, of the infrastructure of various wired or wireless communication networks. A communication link 111, acceptable alone or in combination according to the preferred embodiment, includes for example and not limitation: the voice and/or data channels of analog cellular, digital cellular, or PCS telecommunication facilities; the voice and/or data channels of ISDN telecommunication facilities; the voice and/or data channels of satellite telecommunication facilities; the voice and/or data channels of cable television facilities; the dedicated or non- dedicated voice and/or data channels of public switched telecommunication network (PSTN) facilities; the dedicated or non-dedicated voice and/or data channels of private switched telecommunication network facilities; the voice and/or data channels of fiber optic telecommunication facilities; DSL links, and other voice and/or data channels available now or in the future. Therefore, it should be understood that the scope of the present invention includes all communication links 111 having the capability of communicating, or aiding in the communication of, voice and/or data signals between the ACD 114 and the UCD 102. While the system 100 and methods are described herein, generally, in relation to a single user, to that user's UCD 102, to a single communication center 108, and to a single ACD 114, the preferred embodiment includes systems and methods which perform the same
or substantially similar steps for a plurality of users, a plurality of UCDs 102 of those users, a plurality of communication centers 108, and a plurality of preferred service providers 112 with each, possibly, having one or more ACD(s) 114.
The various requests from the UCD 102, and the status information provided to the UCD 102, are preferably communicated using one or more short message types, the RMS and the short message service. However, the present invention is not so limited and contemplates and includes all other methods, available now or in the future, of communicating with a UCD 102, including using voice channels. In addition, in the preferred embodiment, the various requests from the UCD 102, and the status information provided to the UCD 102, preferably contain a pre-defined code, tag, header, or other indicia, indicating the type of short message being communicated. However, the determination as to the type of short message being communicated may also be made by inspecting the format or code contained therein.
The present invention enables the user of a UCD 102 to receive a wide variety of services from many different preferred and alternative service providers via voice and/or data communications without requiring the user to make unnecessary attempts at establishing such communications with preferred service providers which are, at that particular time, unavailable to provide services. To illustrate the importance of this feature of the present invention, some exemplary uses of the present invention have been included below, but it should be understood that use of the present invention is not limited to the exemplary uses.
In one exemplary use of the present invention, an international traveler carries a UCD 102 on a trip to one or more foreign countries where the spoken languages are different and unfamiliar to the traveler. Preferably, but not necessarily, prior to the traveler's arrival in the foreign country, the traveler establishes or has established business relationships with a number of preferred service providers of language translation services or a communication center representing or including service providers which provide the desired services. The translation service providers, generally, employ a plurality of agents, or individuals, who understand and speak the languages for which translation services are being offered. The agents may work and be stationed at a communication center 108, the service provider 112, at home, or at any location where at least a voice communication link may be established with their ACDs 114. The agents are, essentially, "on-call" and provide
translation services, when requested, to users who have previously established a business relationship with their respective employers. Note, however, that while this example is directed to agents which are employed by a translation service provider and communicatively accessible via a communication center 108, an agent may also be a self- employed translation service provider and may similarly provide translation services to the agent's own customers through use or non-use of an intermediate commumcation center 108.
Also, preferably, but not necessarily, prior to the traveler's arrival in the foreign country, the server computers of the communication centers 108 receive and store service provider information. The service provider information for translation service providers may include: (i) the names of the translation service providers, or other information which uniquely identifies the translation service providers; (ii) the respective telephone number(s) associated with the translation service providers; (iii) the names and skills of the agents of the translation service providers, or other information which uniquely identifies the agents; and, (iv) one or more telephone numbers associated with voice-enabled ACDs 114 of the agents. In actuality, the received and stored information will depend upon a variety of factors including, for instance, whether a particular translation service provider does or does not utilize a communication center 108 to provide translation services, and if so, how the communication center 108 operates with respect to the translation service provider and its agents. The service provider or the communication center may directly employ the agents who provide these services, or those agents may be independent contractors.
Also, preferably, but not necessarily, prior to arrival in the foreign country, the UCD 102 is configured by the traveler or by someone on the traveler's behalf, by the input of information associated with the translation service providers and, if available, preferred status update method indicators and associated parameters. The UCD 102 stores this information. The information preferably includes at least an identification of the services and the communication center or service providers therefor, and a number and/or information, such as an access address, which allows the UCD 102 to communicate with the communication center or service providers. The information also preferably, but necessarily, includes identifications of the status information update methods associated with each respective translation service provider, parameters for each status information update method, and the respective telephone numbers and/or information associated with the
communication center 108 or the preferred translation service providers that will enable, and/or assist in, the establishment of voice communication links, when necessary, between the traveler's UCD 102 and the ACDs 114 of the service providers.
The server computer of the communication center 108 receives and stores information from the translation service providers 112 pertaining to the availability of the service providers 112 to provide translation services, and then sends, at the appropriate time or times, status information to the UCD 102. The traveler's UCD 102 receives the status information from the server computer of the communication center 108, stores this status information, and presents the status information to the traveler in any desired and convenient manner. Also, as mentioned above, the communication center or service provider may communicate directly with the traveler's UCD 102, if the situation warrants such action or implementation.
Thus, for instance, when the traveler gets into a taxi cab and must communicate with the cab's driver who speaks only the native language of the foreign country, the traveler turns on the UCD 102, scrolls or pages as necessary to the desired translation language service, for example, Japanese, Korean, Chinese (Mandarin), Tibetan, Mongolian, etc. The traveler is then immediately presented with status information on the availability of the traveler's preferred translation service providers. The traveler can then select an available preferred translation service provider by a method appropriate for the traveler's UCD 102, such as by pressing and holding the status indicator for that service provider. The traveler's UCD 102 receives the selection and, after retrieving the telephone number or other contact information previously stored in the device's memory for the communication center 108 of the selected preferred translation service provider, the UCD 102 uses the telephone number or other contact/access information to establish an immediate voice communication connection with the communication center 108 and, subsequently, through appropriate routing, with a translation agent at an ACD 114 of the preferred translation service provider 112.
Once connected to a translation agent, the traveler may receive translation services from the translation agent. For instance, the traveler may speak words or phrases for translation into the microphone of the traveler's UCD 102 and receive from the translation agent, via the device's speaker, corresponding words or phrases in the language of the foreign country in which the traveler is present. Thus, the traveler might speak instructions
intended for the taxi cab driver into the device's microphone and then hold the UCD 102 so that the taxi cab driver can hear the translation agent's voice speaking the instructions in the language understood by the taxi cab driver. Such use is further enhanced if the UCD 102 has "speakerphone" capability so that a three-way conversation can occur among the three parties: the taxi driver, the translating agent, and the traveler/user of UCD 102. Additionally, and if desired, the agent may 'push' visual information, such as a map or maps, written directions, a picture of the destination, etc., to the UCD 102 for display. Such information can then be viewed and used to fulfill the task at hand, such as by the taxi driver and/or traveler to get the traveler to the desired destination, quickly, conveniently, and with little or no frustration caused by language differences.
After the traveler has received the desired franslation services, the fraveler instructs the UCD 102 to terminate the voice communication link and the UCD 102 does so. Because the fraveler's UCD 102 received and presented status information indicating which of the traveler's preferred translation service providers had an available agent, the traveler was able to instantly, and with little effort, obtain translation services. The traveler therefore did not have to suffer the delays, wasted time, expense and frustration of making of one or more telephone calls to translation services which did not have an available agent.
This display feature is also useful where the user or traveler wishes information for his or her own benefit, such as a map where the traveler is doing the driving, or is walking, or where the traveler wishes to check the schedules and availability of a service, such as a commuter train, or where the user wishes to see information that the service provider has prepared which is unique to the user, such as tax information, sales information, profit/loss information, exemplary or preferred sentences, clauses, or paragraphs in a document, such as a contract, etc. In another exemplary use of the present invention, a person, such as a paramedic, a person who is ill or requires emergency treatment or hospitalization, or even the caretaker of that person, has a UCD 102 to enable the paramedic to verbally communicate a patient's condition and systems to, and receive medical treatment advice from, doctors at hospitals that provide emergency room services. Preferably, each hospital has, or is associated with, at least one communication center 108 which has received and stored the names and telephone numbers used by doctors or nurses that work in emergency rooms and routinely provide such medical treatment advice to paramedics. Each hospital may thus be considered to be a
service provider, and the doctors considered to be agents. Alternatively, each hospital may be considered to be a communication center with an imbedded service provider and agents. For purposes of this example, the hospitals will be treated as communication centers 108. A hospital communication center 108 has the ability to push resource status information on the availability of its emergency rooms, medical staff on hand, medical skills available, number of patients awaiting treatment, etc., to the paramedic's or prospective patient's UCD 102. Some examples of such status information are an indication whether or not any emergency room is available to accept a new patient, or a specified number of new patients, whether any doctors with the required skills are available to provide medical freatment advice to paramedics, the number of patients awaiting treatment, and other pertinent or desired information.
The paramedic's UCD 102 has preferably been previously configured, by the paramedic or on the paramedic's behalf, with the names of the hospitals and with the telephone numbers and/or electronic address information associated the hospital's communication centers 108. Upon the completion of the configuration of the UCD 102, the paramedic's UCD 102 communicates information to the hospitals' communication centers 108 instructing the server computers of the communication centers 108 to push their resource status information to the UCD 102 when appropriate. The UCD 102 of a patient or caretaker may be similarly configured, especially in cases where such emergency freatment is anticipated, such as in the case of a person with a chronic heart condition.
The server computers of the hospitals' commumcation centers 108 receive status information on the availability of their emergency rooms and/or doctors, number of persons awaiting treatment, etc., as such information changes, or otherwise becomes available. The server computers evaluate the received status information (i.e., determine if any emergency rooms and/or doctors are currently available) and generate appropriate resource status information. Then, using the identifying information for the paramedic's UCD 102 previously provided to the hospitals' communication centers 108, the server computers automatically send updated resource status information to the paramedic's UCD 102. Preferably, the server computers push resource status information to the paramedic's UCD 102 as soon as possible upon any change in the availability status of the hospitals' facilities or doctors.
The paramedic's UCD 102, upon receiving pushed resource status information from the server computers, stores the resource status information in association with the names of the hospitals from which the information has been received, and presents the names of the hospitals and an indication of their resource availability based upon the received resource status information. The paramedic may need to locate an available emergency room, or may need to talk first with a doctor. Therefore, in this example, each hospital would have three status indicators: one to indicate whether an emergency room is available, another to indicate whether a properly skilled doctor is available for consultation, and yet another to indicate the number of patients already waiting to be treated. When the paramedic is at the site of an emergency case, the paramedic may quickly determine which hospital has the fewest patients already awaiting treatment, the resources that are best suited and/or available to assist with medical treatment advice and/or available emergency rooms for the care of a new patient by simply looking at the status information displays on the UCD. The paramedic can then select a hospital having available resources, or the hospital that is closest, and instruct the UCD 102 to establish voice communications with the selected hospital, either to talk with a doctor or to advise emergency room personnel that a new patient is on the way.
Because the paramedic's UCD 102 received and presented status information indicating which of the hospitals had an available doctor and/or emergency room, the paramedic was able to instantly, and with little effort, obtain potentially life-saving resources for the patient. The paramedic, and the patient, therefore avoided the wasted time, expense, potentially life-threatening complications, and frustration of the paramedic having to make one or more telephone calls to hospitals which did not have an available doctor or emergency room. Further, the paramedic avoided the loss of time that would occur through going to the hospital that was not able to assist the patient in timely matter. Through such avoidance, and through the selection of the assistance most suited to the case at hand, the paramedic may quickly obtain medical treatment advice or locate a hospital having an available emergency room. These may contribute to saving the life of a critically-injured or critically-ill patient. An emergency treatment facility, such as a hospital, may deteimine the availability of skilled personnel and appropriate resources through any desired manner. For example, new patients are registered for treatment, are assigned to certain doctors, and/or are assigned
to certain resources, the hospital computer system keeps track of such information, compares such information with the scheduled and/or actual doctors or staff on duty, compares such information with the scheduled and/or actual resources usable, and determines the number and type of doctors, staff, and resources which are being used, or which are not being used, so as to determine and project what personnel and resources are available.
Although the preferred implementation is a wireless communication device using the SMS service of the cellular telephone company, the present invention is not so limited. The communications can be via the SMS or any other desired communication link. Also, the user's communication device may be wired or fixed, in which case the communications link may be via dial-up or DSL access to an Internet Service Provider or other communications service. However, the present invention still provides the user with instant information regarding availability of desired services. For example, even though the user is at home, using a fixed personal computer, the user may want to call someone for a service. For example, the hospital may need translation services to accommodate patients incoming to the emergency room. The emergency room personnel can quickly determine, even using a fixed ("wired") telephone system, which translation service providers are currently available for particular language or group of languages. Thus, the present invention provides for instant access to services, regardless of whether the user is fixed or mobile. In another embodiment, the user can "reserve" an agent. For example, assume that the user wishes to access a translator for a particular language but the indicator shows that there are no agents currently available for that language. If the user is trying to access the translator at a peak time, then by the time that the user thinks to check the indicator again an agent may have become free and then occupied again. Thus, the user thinks that the service is constantly busy. However, in this embodiment, if the indicator shows that there are no agents currently available the user can press, or press and hold, the indicator anyway. This sends a request to the communication center and service provider to reserve the next available agent. When an agent becomes available, or is predicted to become available very shortly, the agent is "reserved" and a call is placed to the user. When the user answers, the user is then connected to the agent. Of course, for efficiency, the user may only be allotted a certain amount of time to answer the call before the agent is released to service another call.
Figure 2 illustrates a method 200 of operating a server computer of a commumcation center 108 to receive status information on the availability of a service provider, to provide the received status information to the user of the UCD 102, as appropriate, and if desired by the user, to communicatively connect, or cause a communicative connection to be established between, the UCD 102 and an ACD 114 of a preferred service provider for voice communication, and data communication if needed, therebetween. The process starts at step 202 where various initialization routines are executed by the server computer to make the communication center 108 ready for further operation. Then, at step 204, the server computer may receive information, or data, from a service provider that receives communication center services from the communication center 108, and that the user may desire to contact for the receipt of service(s) and with which the user may, or may not, have previously established a business relationship for the provision of such service(s). Preferably, the information identifies the service provider and may include other relevant or important information about the service provider. The information received from the service provider is sometimes collectively refeπed to herein as "service provider information" or "service provider data". Exemplary service provider information includes the service provider's name (or other information uniquely identifying the service provider) and other information associated with the service provider, including, a telephone number or other voice and/or data communication link addressing information, corresponding to a voice- enabled and/or data-enabled ACD 114 of the service provider. If, however, the service provider is an entity that utilizes one or more agents to provide service(s), the exemplary service provider information includes the name(s) of or other information uniquely identifying each agent(s) and other information associated with each agent(s), including, one or more telephone numbers corresponding to a voice-enabled and/or data-enabled ACD 114 of the agent(s). The server computer then stores the received service provider information in memory. Note that, as described above, service provider information may be received by the server computer of the communication center 108 at a plurality of different times and by a plurality of different manners. The communication center 108 may also edit or modify the service provider information, such as eliminating certain information, averaging the received status information, consolidating or selecting information available for several related service centers, etc.
For example, if the service is a language translation service, the user may have a preferred service provider. However, instead of, or in addition to, displaying only the information regarding that preferred service provider, the communication center may provide status information regarding a prefeπed alternative service provider, or an available alternative service provider, or the least expensive alternative service provider, or an alternative service provider which has a particular business relationship with the communication center, etc., especially if the user's preferred service provider is not immediately available.
At step 206 of method 200, the server computer of the communication center 108 receives status information from a service provider regarding the service provider's availability to provide service(s). The server computer may receive the status information from a service provider by any of the methods mentioned above. Further, the server computer may receive the status information from a service provider at a variety of different times in response to the particular method of updating selected, which may be different for different service providers. Thus, for example and not limitation, the server computer may receive status information for one service provider at periodic predetermined time intervals, may receive status information for a service provider only when a second service provider's availability status changes, and may receive status information for a third service provider only when status information is requested by the UCD. The server computer stores the received status information for subsequent retrieval and use.
Typically, a service provider will be an entity having a plurality of agents to provide one or more services to the user of the UCD 102. In such a case the server computer of the communication center 108 may receive status information directly from ACDs 114 of the agents. If so, at step 208, the server computer also evaluates the status information received from the ACDs 114 and determines if any of the agents with the desired or required skills are available to provide the requested service(s). The server computer then generates status information indicating that the service provider is available, or is predicted to be available within a certain, which time may be preset if desired, to provide service(s) to the UCD 102 if at least one of the agents is available or is predicted to be available, or that the service provider is unavailable to provide such service(s) if none of the agents are available or are predicted to be available. Thus, the server computer has performed a task that could be
performed by the service provider. The server computer then stores the generated status information.
At step 208, the server computer of the communication center 108 receives information, or data, which: uniquely identifies a prefeπed service provider for which the user of the UCD 102 desires to receive status information from the communication center 108; is either a request for status information or is a designation of the status information update method to be employed by the server computer in automatically providing status information for the identified prefeπed service provider; and, uniquely identifies the UCD 102 and enables the communication center 108 to establish communications, and communicate, with the UCD 102 via a control channel of the wireless communication network 104, wireless communication link 106, and communication link 110. As described above, this information may be programmed by an operator of the communication center, the service provider, default parameters, or may be communicated to the server computer of the communication center 108 as an instruction in the form of one or more short messages using the remote message service (RMS), wireless communication network 104, wireless communication link 106, and communication link 110. The short message, as also described above, may also include, for example: a pre-defined code identifying the short message as an instruction to the communication center 108 directing it to automatically push status information to the identified UCD 102 for the subsequently identified service provider; the name or other information uniquely identifying a service provider for which the UCD 102 desires to receive pushed status information, a status information update method indicator that identifies the method of the group of communication center status information update methods to be employed in doing so, any appropriate parameters, and information uniquely identifying the UCD 102. A request for status information is also preferably communicated in the form of a short message, but having a different pre-defined code to identify the short message as a request for status information, rather than as an instruction to implement a status information update method. However, in practice, the communication center 108 preferably always has the option of refusing a request or an instruction, such as where the user of the UCD 102 has not paid for the service, or is delinquent in paying, or is requesting information for a service provider which does not have a business relationship with the communication center. Therefore, the difference between a request and an instruction may
be minimal or non-existent, and the same code may be used for both, if desired. An instruction may also simply be viewed as a request that the communication center act or provide status information in a defined manner.
Upon receiving a request (instruction) from the UCD 102, the server computer of the communication center 108 parses and examines the code from the received request, and determines the action requested by the UCD. The server computer parses the name or other information from the short message and appropriately stores the information in memory for subsequent retrieval and use. If the communication center 108 does not allow the UCD 102 to specify status information update methods to the communication center then the request is ignored and the information may or may not be saved, according to the desires of the operator of the commumcation center. For example, the communication center operator may wish to save such information to determine whether adding an unrequested push capability is justified by user demand. The information received at step 206 may be received or updated at any time during operation but, preferably but not necessarily, some information must be received before the communication center 108 may push status information on the availability of a service provider to the UCD 102. "Preferably" because the communication center 108 would generally not want to push undesired information to the user; "not necessarily" because the communication center 108 may wish to push some standard or custom information until the user has selected the preferred service providers, and/or because pushing unrequested information for a particular service provider to the user may provide additional revenues to the communication center from that service provider.
Steps 204-208 are shown broken out, and are in the order shown, purely for convenience of illustration as these steps maybe performed simultaneously or in any desired order. At step 210, the server computer of the communication center 108 provides status information associated with a service provider to the UCD 102. Generally, the server computer does so by retrieving previously stored (i.e., at step 206) status information for a service provider from memory, encoding the status information in a response in the form of a short message, and sending the short message to the UCD 102, via the short message service, over some type of a control or data channel of the wireless communication network 104 and communication links 106, 110. The server computer retrieves the status information or requests a current status from the service provider in response to a request for status
information from the UCD 102, automatically based upon the specified status information update method, or based upon some other request, instruction, criteria, or event, such as a request from the service provider.
Once the status information has been retrieved or obtained, the server computer generates a message, which may be a response, which includes the information umquely identifying the UCD 102 and the name or other information uniquely identifying the service provider and the status information for the service provider.
In response to a request or an instruction the server computer parses and stores the therein. Therefore, the server computer already has, in memory or in any other convenient form of storage, the name or other information uniquely identifying a service provider for which status information is to be provided to the UCD 102, a status information update method indicator identifying a method of the group of communication center status information update methods to be employed in providing status information to the identified service provider, and information uniquely identifying the UCD 102. Thus, in response to a status information update method, whether requested by the
UCD 102 or otherwise provided, the server computer continually monitors the parameter or parameters which are the basis of the predetermined criteria of the stored status information update method. If the server computer determines that the parameter has been met or the parameters have been met, the server computer retrieves or obtains the appropriate status information and generates and sends a status information update message.
After status information has been communicated to the UCD 102, the user may wish to be connected to a service provider, such as by a telephone call or by any other desired or available form of communication. Further, even if status information has not yet been communicated to the UCD 102, the user may wish to be connected to a service provider. Therefore, although step 212 is shown as following steps 204-210, which is the normal situation, step 212 may be performed before any of those steps, even immediately after step 202. This may occur, for example, when the user determines a need for a service provider, activates the UCD 102, and immediately requests a service provider, without noticing or caring what the current status information may be. However, for simplicity of illustration, step 212 is shown as following steps 204-210.
At step 212, if the server computer of the communication center 108 receives a communication, such as a telephone call, from the UCD 102 requesting a service or services
from a preferred service provider, the server computer will cause the communication to be routed, via a communication link, such as communication link 111, to the service provider 112. The service provider will then route the communication to an ACD 114 of an agent. hi an alternative embodiment, the communication need not be routed through the communication center but may be routed from the UCD 102 directly to the service provider or ACD. In still another alternative embodiment, the communication is preferably routed to the communication center but is rerouted directly to the service provider or ACD if the communication center has no available communications lines. In still another alternative embodiment, there may be an electronic data connection only, where information and communications are transfeπed entirely via a data channel. For example, information and communications may be via chat, instant messaging, collaboration, etc. In still another alternative embodiment, both voice and data communications take place simultaneously between the ACD and the customer who requested the service. Thus, it should be understood that voice communications, data communications, or both, may be the communication used to provide the desired services.
When the agent of the service provider answers the telephone call, a voice communication connection is established between the user's UCD 102 and the ACD 114 of that agent. The service provider, or agent thereof, then provides service(s) to the user of the UCD 102. Although communications links 106, 110, 112, and 113 are shown for establishing communications, the present invention contemplates that any facilities and methods can be used which provide for a routing or establishing voice and/or data communications connection between the UCD 102 and the ACD 114 of the agent.
As mentioned herein, one benefit provided is that the availability of an agent or service is determined and presented so that the user will not receive a busy signal or be placed on hold, and so that the user will not be denied or delayed in access to other types of online services, as mentioned above, for example, chat and collaborative interaction, etc. However, it will be appreciated that, at times, there may be a large influx of telephone calls which occurs after the status information has last been updated but immediately before the user places the call. In this event, an agent may not be available by the time that the user places the call. However, this should rarely occur, and can be largely prevented by immediately updating the status information about a service provider in the event that no agents are available for providing voice communications. This can also be reduced and/or
prevented by providing for the online services mentioned herein so that a single agent may interact electronically with multiple users, essentially simultaneously.
Upon completing operation according to step 212, if necessary, the server computer of the communication center 108 continues operation in accordance with method 200 at step "204 where the server computer again may receive information, or data, from a service provider that receives communication center services from the communication center 108. The server computer, preferably, performs the steps of method 200 repeatedly and as appropriate in order to receive and provide updated status information to the UCD 102. Although the process of Figure 2 is shown as a sequential process for simplicity of illustration, it will be appreciated that the several tasks may be, and typically would be, executed essentially simultaneously, so that the communication center 108 might be receiving a request or instruction from one UCD 102 while it is obtaining updated status information regarding one service provider, providing status information to another UCD 102, and causing another UCD 102 to be connected to an ACD 114. Figure 3 illustrates a method 300 of operating a user communication device 102 to enable a user of the UCD to select a service provider and to enable the UCD to send requests and instructions to a communication center, and receive status information for a service provider from a communication center. This operation is complimentary to the method 200 of operating a server computer of a communication center 108 described above. The UCD 102 requests, receives and displays status information on the availability of a prefeπed service provider and allows the user to contact the prefeπed service provider. This enables the user thereof to avoid attempts at establishing voice and/or data communications with the preferred service provider when the service provider is not available or has no agents available for the particular service desired. The process starts at step 302 where various initialization tasks are executed by the UCD 102 to make the UCD 102 ready for further operation.
At step 304, the UCD 102 receives information from the user (i.e., user input) via an appropriate user hardware and software interface, such as, but not limited to, a keypad, a touch sensitive screen, or an audio input device such as a microphone (assuming that voice recognition is provided for). This information includes (i) the name or other information, or a selection thereof, uniquely identifying a preferred service provider of the user; (ii) identification of a status information update method indicator that identifies a particular
method of the first or group of communication center status information update methods to be employed in updating status information for the preferred service provider; (iii) other information relevant to the particular method (i.e., for example and not limitation, a non- default period of time which should be allowed to pass between updates of the status information); and, (iv) a telephone number, and/or Internet Protocol address or data interchange method, associated, as appropriate, with a prefeπed service provider 112 or an ACD 114 thereof. After receiving the information or selections from the user, the UCD 102 stores the information, or data. This step also allows the user to view, edit, modify or delete previously stored information pertaining to a prefeπed service provider. This information may also be input by someone else on the user's behalf, or may be pushed to the UCD by the communication center or service provider or service providers, as the case may be. Preferably, but not necessarily, user private information, prefeπed service providers, and other user-specified selections, are stored on a server in or associated with the communications center for updating and restoring information in the UCD 102 in the event that the UCD 102 is lost, destroyed, repaired, or replaced.
At step 306, if the communication center 108 associated with the preferred service provider will accept an instruction from the UCD to automatically push status information for the preferred service provider to the UCD 102, and if the user has indicated a desire or willingness to automatically receive status information from the communication center 108 (or if the user does not have the option of refusing to automatically receive status information from the communication center), then the UCD 102 generates a request, for each selected (prefeπed) service provider, the information identifying the preferred service provider, the selected status information update method indicator, if appropriate, and any appropriate parameters, and information uniquely identifying the UCD 102. The UCD 102 then sends this request to the server computer of the communication center 108, preferably via the remote message service (RMS) and over the control channels of wireless communication network 104 and communication links 106, 108.
Next, at step 308, the UCD 102 receives status information for the preferred service provider from the server computer of communication center 108. The status information is received as a response, preferably, in the form of a short message communicated from the server computer via the remote message service (RMS) and over the control channels of wireless communication network 104 and communication links 106, 108. Preferably, the
short message includes: (i) information uniquely identifying a UCD 102; (ii) the name or other information uniquely identifying the prefeπed service provider; and, (iii) the status information pertaining to the prefeπed service provider. Upon receipt of the short message, the UCD 102 parses the short message to extract information uniquely identifying a UCD 102 from the short message and compares it to the UCD's own unique identification information. If the information matches, the UCD 102 then parses the remainder of the information present in the received short message, or response, including the name or other information uniquely identifying the service provider and the status information pertaining thereto. The UCD 102 subsequently stores the received status information in association with the information previously input and stored for the service provider at step 304, which may or may not be a prefeπed service provider.
If the status information update method identified for the preferred service provider at step 304 is a method of the group of UCD status information update methods, the status information is received at step 308 in response to the request for status information generated by the UCD 102.
If, alternatively, the status information update method identified for the prefeπed service provider at step 304 is a method of the group of communication center status information update methods, and if the communication center 108 associated with the preferred service provider is responsive to a UCD selection of same or is responsive to selection of same by another source, then the creation and sending of a request for status information to the communication center 108 by the UCD is not necessary as the status information will be automatically sent by the communication center 108 to the UCD 102 as described above. However, both methods may be used by the communication center, if desired. Nonetheless, the status information in the received status information update message is the same, regardless of how or why generated.
Proceeding at step 310 of method 300, the UCD 102 retrieves the received status information for the preferred service provider from its memory and presents the status information to the user thereof. The presentation of the status information may be performed using a variety of methods. Preferably, the UCD 102 displays, on its display, information identifying the preferred service provider (e.g., the name of, the initials of, or some symbol
or indicator identifying the prefeπed service provider) and an indication of the availability of the service provider, such as described herein.
For example, a symbol may be displayed adjacent to the information identifying the prefeπed service provider if the service provider is available. Alternatively, the UCD 102 may display the information identifying the preferred service provider in a flashing manner if the status information indicates that the prefeπed service provider is available to provide service(s) and in a non-flashing manner if the status information indicates that the preferred service provider is not available to provide service(s), or vice versa. Alternatively, if the display of the UCD 102 is capable of presenting different colors, the information identifying the prefeπed service provider may be displayed in a first color or a second color, respectively, depending upon whether the status information indicates that the preferred service provider is, or is not, available to provide service(s). Alternatively, the UCD 102 may produce a unique sound through its speaker upon selection, or identification, of the prefeπed service provider if the status information indicates that the preferred service provider is, or is not, available to provide service(s).
If the presented status information informs the user that the preferred service provider is not available to provide service(s), the user may avoid what would likely be an unsuccessful and, hence, an unnecessary attempt at obtaining services from the prefeπed service provider by not instructing the UCD 102 to place a telephone call or create an online data connection to the prefeπed service provider. If, however, the presented status information informs the user that the prefeπed service provider is available to provide service(s), the user may optionally instruct the UCD 102 to establish, or cause to be established, voice and/or data communications with the preferred service provider by selecting, or identifying, the prefeπed service provider via a keystroke input through the device's keypad. Other methods may also be utilized, in accordance with the present invention, to so instruct the UCD 102. Such methods include, for example and not limitation, the speaking of audible instructions into the device's microphone.
If the user desires for the UCD 102 to establish, or cause to be established, voice and/or data communications with the prefeπed service provider, the UCD 102 receives, at step 312, a selection, or identification, of the preferred service provider from the user as described above. Then, at step 314, the UCD 102 retrieves the telephone number associated with a communication center 108 that provides communication center services to the
preferred service provider or with an ACD 114 of the prefeπed service provider which was previously stored at step 304. Next, using the retrieved telephone number and/or data access address, the UCD 102 establishes, or causes to be established, through use of its communication circuitry and the wireless communication network 104, a voice and/or data communication link with the ACD 114 of the preferred service provider. More particularly, the UCD 102 preferably initiates a voice telephone call using the retrieved telephone number and/or establishes a data connection using the data access address, but the communication, whether voice or data, may, actually, be received by a communication center 108 and then be routed by the communication center 108 to the ACD 114 of the prefeπed service provider or of the agent(s) thereof.
At step 316, in response to the user indicating that the communication has been completed, or by a signal from the communications link 104 that the communication has been terminated, the UCD 102 terminates the communication link. Voice communications and data communications may be initiated and terminated independently of each other. The operation of the UCD 102 loops back to step 304 of method 300 to once again receive information from the user pertaining to a prefeπed service provider.
As indicated above for communication center operation, the steps of the UCD operation are shown sequentially for convenience only, and may be performed in a different order, and many of the steps may be performed essentially simultaneously. For example, the UCD could be receiving status information for one service provider while the user is initiating a call or other communication to, or is in communication with, an agent at an ACD of another service provider.
Figure 4A is an illustration of an exemplary user commumcation device 102. The exemplary UCD 102 shown is a standard mobile telephone, preferably a digital cellular telephone with programmable communication features and functions, such as programmable phone numbers, a display screen, preferably using the SMS feature, and preferably also including a speaker phone option as shown in more detail in Figure 4C. Further, digital cellular telephones have a processor and various types of memory included therein. It is anticipated that digital cellular telephones will be programmable in a variety of different languages and scripts. Such is possible now, but cost, size and battery life considerations generally limit how much memory and processing power can be installed in a commercially competitive digital cellular telephone. However, as advances in processor and memory
speed and power consumption, and battery capacity continue to occur, these considerations will cease to be an obstacle. Further, as mentioned above, other types of UCDs may be used. For example, a UCD could be, but is not limited to, a voice-enabled personal digital assistant having a data display and being Internet web enabled for data exchange. The illustration shows a UCD 102 which has a user input interface 410, such as a dial pad, a user output interface 405, such as a display, and an antenna 415. In the example shown, the user or the corrnnunication center has selected two service providers which provide Japanese translation services, two service providers which provide Korean translation services, at least two service providers which provide Chinese franslation services, and possibly other service providers as well. The presence of other service providers (or other UCD features is indicated in the example by the "MORE" indication, which indicates that the user should scroll down to see other service providers (or other UCD features). The user may scroll down (or up, when appropriate) by using the user input interface 410. The illustration shows an indicator 407A which indicates that the primary Japanese franslation service provider has at least one agent available, whereas the indicator 407B for the alternate or secondary Japanese translation service provider does not have an agent available. The illustration also shows that both the primary and the alternate or secondary Korean translation service providers have at least one agent available. Finally, the illustration shows that the primary Chinese translation service provider does not have an agent available, but the alternate or secondary Chinese translation service provider has at least one agent available. Thus, the user knows, at a glance, that translation services are immediately available for the Japanese, Korean, and Chinese languages. Further, the user can determine, by simply scrolling down, whether or not translation services are immediately available for any other desired languages, or whether or not other selected services are immediately available. Although a large black dot is used to indicate availability in the illustration, other indicators, icons, symbols, imagery and techniques may be used, as desired. Also, the user can be immediately connected with a desired language translation service provider by simply pressing and holding the indicator for that desired language franslation service provider, for example, by pressing and holding "JAPANESE 1". Other methods of indicating that a particular service provider should be called can also be used, as desired.
Figure 4B is a block diagram of an exemplary user communication device 102. The UCD 102 has: a transmitter circuit 420 which can preferably transmit both on voice
channels and control or data channels, such as the control channel used for RMS, including such circuitry as oscillators, frequency synthesizers, modulators, amplifiers, etc.; a receiver circuit 425 which can preferably receive both on voice channels and control or data channels, such as the control channel used for RMS, including such circuitry as oscillators, frequency synthesizers, demodulators, amplifiers, etc.; an antenna 415 for sending and receiving signals, including voice signals and data signals; a user input interface device 410 as mentioned above; a user output interface device 405 as mentioned above; a control circuit 430 which controls the operation of the UCD 102; and a memory circuit 435 which contains operating instructions, stored information, UCD 102 identification information, service provider information, status update method indicators and any appropriate parameters, temporary data, etc. The control circuit 430 includes, for example, a microprocessor and some or all of the memory circuit 435 may be included in the control circuit 430. Also, although component 410 is designated as a user input interface and component 415 is designated as a user output interface it will be appreciated that this line of distinction is not hard and fixed but is blurred. For example, the user output interface 415 of the exemplary UCD comprises a touch-sensitive screen, and therefore also functions as a user input interface. With the exception of the programming and features implemented as a result of the present invention, the construction and operation of the UCD is conventional. Other examples of UCDs are personal digital assistant (PDA) devices, hybrid digital cellular telephone or personal digital assistant devices, and various other similar devices. Additional data, such as maps, written instructions, video, informational presentations, and other content in the desired language(s) may be displayed on the user's UCD even while voice communications are in progress. This information is preferably pushed by the agent who is assisting in providing the desired service, and but may also be provided in response to a user request for such additional data.
Figure 4C is a block diagram of another exemplary user communications device. There are two independent audio paths: audio path 475 for the user, and audio path 465 for a third party, such as the taxi driver. Audio path 475 preferably terminates in a microphone 470 A and an earpiece 470B. This allows the user to speak and hear clearly, and also allows the user some privacy in communicating with the agent. Microphone/earpiece accessories are well-known in the field of cellular telephones. Audio path 465 terminates in a speaker 455 and a microphone 460. If the UCD is a cellular telephone, for example, then speaker
455 and microphone 460 may be, but are not required to be, the speaker and microphone typically provided as part of a cellular telephone. The speaker and microphone, in this embodiment, can function as a speakerphone so that a third party, for example, the taxi driver, can easily communicate with the agent without the user having to hand over the UCD to the third party. Switches 450A and 450B confrol whether microphone 470A and earpiece 470B are active, whether microphone 460 and speaker 455 are active, or whether all or some combination of these devices are active.
For example, components 470A and 470B could be active while the user is talking with the agent, and components 460 and 455 could be active while the taxi driver is talking with the agent. Or, components 470A and 470B could be active at all times, so that the user can talk with the agent and monitor the conversation between the taxi driver and the agent.
The control circuit 430 controls the switches 450A and 450B. In the prefeπed embodiment, the control circuit 430 is responsive to a user command entered via the user input interface 410. The user command may be by pressing a switch, or an indicator, or any other desired means. When the user enters the command, such as by pressing a switch, the speaker 455 and microphone 460 become active, so the taxi driver can communicate with the agent. When the user releases the switch these devices are muted, and the user can communicate more privately with the agent.
Further, instead of, or in addition to commands from the user input interface 410, the control circuit 430 may be responsive to device control commands sent by the agent, so that the user does not have to repeatedly press and release a switch. In this case, when the agent wishes to talk only to the user, the agent will send a command which causes the control circuit 430 to mute the microphone 460 and speaker 455 and, when the agent wishes to talk to the taxi driver, the agent will send a command which causes the control circuit 430 to activate the microphone 460 and speaker 455, with or without muting the user's devices 470A and 470B.
Further, instead of, or in addition to the above, the control circuit 430 may be connected to the microphone 460 and the user device 470A, monitor the signal levels from the microphone 460 and the user device 470A, and select the microphone 460 or 470A (and associated speaker 455 or 470B, respectively) which has the highest signal level, thus automatically switching depending upon which person (user, taxi driver) is doing the talking. Preferably, the agent and/or the user can override the automatic switching function
when desired by simply providing an appropriate command. The command to override the automatic switching function may be in effect until automatic switching is re-activated by the agent and/or the user, until the end of the present commumcation, for a predetermined period of time, until a signal level exceeds some predetermined value, etc. Thus, when the devices 455 and 460 are muted, the communications between the user and the agent are essentially private, and the user and the agent can communicate in one language and then, when the agent needs to communicate with the taxi driver, devices 455 and 460 are activated so that the taxi driver can easily and conveniently communicate with the agent in another language via the speakerphone capability provided by the devices 455 and 460.
Although for clarity of illustration and description the above discussion describes the use of the communication device, such as a cellular telephone, by a user to allow the user to communication with a taxi driver and a service provider, the present invention is not so limited. The user communication device may be a conventional speakerphone, with one or more jacks for headsets, so that several persons may be connected together. In this case, the privilege of being able to hear the conversation, or the privilege of being able to speak during the conversation, may be controlled by a primary user, or an agent, or both. As a result, some persons may be able to hear and speak but other persons may only be able to hear, and this can ability can be modified or changed on a person-by-person basis at any time as the communication progresses.
Likewise, although Figures 4A through 4C show a wireless device as the user communication device, the present invention is not limited. Figures 4A through 4C also depict wired devices, with the simple understanding that the component 415 is not an antenna but represents, for example, a telephone line, and the fransmitter and receiver are the components necessary to place signals on, and receive signals from, the telephone line, for example, a diplexer or modem. Thus, the methods of the present invention are also be applicable to communication devices of users that do not utilize wireless cornmunications. In such implementations, the communication of requests, instructions, and/or responses pertaining to status information between the user communication devices and the server computers of commumcation centers may utilize the control or data channels of appropriate wired communication networks and wired communication links. For example and not limitation, the control channel of an ISDN communication link, or a DSL link, may be
employed, in conjunction with appropriate network facilities, for the communication of requests, instructions, and/or responses.
Figure 5 is a block diagram of an exemplary communication center 108. The communication center 108 has a control circuit 505 which controls the operation of the communication center 108; a memory circuit 510 which contains operating instructions, stored information, service provider information, status update method indicators and any appropriate parameters, UCD 102 identification information, temporary data, etc.; and an interface circuit 515. The control circuit 505 includes, for example, one or more microprocessors, processors, computers, niini-computers, and/or mainframe computers, and some or all of the memory circuit 510 may be included in the control circuit 505. The interface circuit 515 includes any circuitry and logic necessary to send, receive, or otherwise communicate with, or over, the UCD 102, the wireless communication network 104, the service provider 112, and the ACDs 114. The construction of a service provider 112 is similar or identical to that of a communication center 108. Also, although the preferred use of the present invention is providing information regarding the availability of services, the present invention may be used to provide the user with information regarding the availability of any person, party, or business. For example, the ACD 114 may be the user's home telephone, and the communication center 108 and service provider 112 may be the telephone company central office. In this aπangement, the user may wish to call home to see if the user should stop on the way home to pick up the laundry, to get an item from the grocery store, to pick up the user's child at the daycare center, etc. Without the present invention, the user must dial the home telephone number, just to hear a busy signal. With the present invention the user knows, by a single glance, whether the home telephone is busy. It should also be noted that the UCD 102 need not be capable of receiving user input regarding the selection of a service provider or service, or of a status information update method. The UCD 102 may, instead, simply present information received from the communication center 108. Further, the UCD 102 need not be capable of storing contact information, such as the telephone number, of a service provider. The UCD 102 may, instead, simply contain contact information for the communication center 108 and provide an indication, to the communication center 108, of the service provider that the user desires to establish contact with.
As mentioned above, the information, preferences, and selections of a user may be stored in the UCD 102, or may be stored on a server associated with a communication center, a server associated with a service provider, or any combination thereof. Synchronization maybe provided continuously, at specified times, on demand by the user or the communication center, upon a change of the information, preferences, and selections, or upon the occurrence of any other desired parameter or event, and in any desired manner. Further, the UCD 102 may, if desired, be a device which does not store the information, preferences and selections but merely presents the data which is provided by the server. Thus, if the UCD 102 is stolen, or switched off, all of the data is erased. In addition, the information, preferences and selections may be stored on a single server or may be stored on multiple servers, throughout the world, so that the data is always immediately available.
Although the description above focuses on an embodiment wherein a service provider is selected to provide a particular service, the present invention is not so limited. The selection may be a service, for example, without a specific service provider being chosen, or may be a service provider, for example, without a specific service being chosen, or may even be an individual, for example, an individual agent, or even a family member or friend. Thus, a selection may include a service, a service provider, an individual, or any desired combination thereof.
The present invention also contemplates that a single agent or single service provider may not be able to provide the desired service and, in such a case, a multi-party communication may be established, including multi-party voice communications and data commumcations, so that enough resources are connected to provide the desired service to the user. For example, it may be necessary to connect both a technical support person and a translator in order for the user to be able to resolve a contract issue during negotiations. In addition, based upon past requirements, a communications center may project an increased need for agents, certain types of agents, or certain resources. For example, a communications center may project an increased need for translators during certain hours, such as around the time that flights carrying business persons are scheduled to arrive or depart. Or the communications center may determine that most or all of the agents with a certain skill set are busy. In this case, the communications center may establish communications with other agents who not on duty at that time, or agents who are on-call at that time, or bring on-line other resources, so as to meet actual or predicted needs for those
agents. Those agents and resources are then placed on hold until needed, or until the predicted need has abated. In addition, communications centers may provide for sharing of specified agents and/or resources, generally, at certain times, or under certain conditions. Thus, it should rarely be the occasion that a commumcations center will not have the desired agent or resources available on demand by the user.
Thus, the present invention enables a user to avoid unnecessary and possibly repeated attempts to establish communications with a service provider which is, at that time, unavailable. The present invention provides for instant availability information for services which may be critical or often-needed. Only some of the services possible under the present invention have been described herein. However, from a reading the services and capabilities described herein, other services and features will surely become apparent and developed or created, and these services and capabilities are available worldwide, thus providing assistance to users any time and anywhere. The user is conveniently and effortlessly provided with the current availability status of the selected or desired service provider and can, with minimal effort, be immediately connected with an available service provider. In addition, a communication center monitors the availability of several different service providers and provides that information to a user so that the user is aware of the immediate availability of the service providers. Variations of the present invention may occur to those reading this disclosure without departing from the spirit of the present invention. Accordingly, the scope of the present invention is to be limited only by the claims.