Detailed Action
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Status of the Application and Claims
This action is in reply to the application filed on 7/17/2024.
This communication is the first action on the merits.
Claims 1-20 is/are currently pending and have been examined.
Claim Rejections – 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 is/are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
Claim 1 (similarly 9) recite, “A …adapted to automatically identify wait times for a subject matter expert, the … comprising:
…, to perform operations which comprise:
over a first period of time, with the presence aggregator …:
receiving the presence data associated with the SME …;
storing the presence data in the …; and
with the stored presence data, training a …;
receiving an input from the agent … requesting contact with the SME…;
soliciting a status from the SME…;
if the status is not “Available”, then with the presence prediction …:
using the trained …, predicting a wait time after which the status will be “Available” and reporting the predicted wait time to the agent …; or
if the status is “Available”, then establishing a communication link between the agent … and the SME … and transmitting a query to the SME …”
Claim 17 recite, “A … method, comprising:
over a first period of time:
receiving presence data associated with a subject matter expert (SME) via an SME …;
storing the presence data in a …; and
with the stored presence data, training …;
receiving an input from an agent, via the …, requesting contact with the SME …;
soliciting a status from the SME …;
if the status is not “Available”, then:
using the …, predicting a wait time after which the status will be “Available” and reporting the predicted wait time to the agent via the agent …; or
if the status is “Available”, then establishing a communication link between the agent … and the SME … and transmitting a query to the SME via the SME ….”
Analyzing under Step 2A, Prong 1:
The limitations regarding, …to automatically identify wait times for a subject matter expert…to perform operations which comprise: over a first period of time, with the presence aggregator…: receiving the presence data associated with the SME…; storing the presence data in the …; and with the stored presence data, training a …; receiving an input from the agent … requesting contact with the SME…; soliciting a status from the SME…; if the status is not “Available”, then with the presence prediction …: using the trained …, predicting a wait time after which the status will be “Available” and reporting the predicted wait time to the agent …; or if the status is “Available”, then establishing a communication link between the agent … and the SME … and transmitting a query to the SME …over a first period of time: receiving presence data associated with a subject matter expert (SME) via an SME …; storing the presence data in a …; and with the stored presence data, training …; receiving an input from an agent, via the …, requesting contact with the SME …; soliciting a status from the SME …; if the status is not “Available”, then: using the …, predicting a wait time after which the status will be “Available” and reporting the predicted wait time to the agent via the agent …; or if the status is “Available”, then establishing a communication link between the agent … and the SME … and transmitting a query to the SME via the SME…, under the broadest reasonable interpretation, can include a human using their mind and using pen and paper to perform the above identified limitations, therefore, the claims are directed to a mental process.
Further, … to automatically identify wait times for a subject matter expert …to perform operations which comprise: over a first period of time, with the presence aggregator …: receiving the presence data associated with the SME …; storing the presence data in the …; and with the stored presence data, training a …; receiving an input from the agent … requesting contact with the SME…; soliciting a status from the SME…; if the status is not “Available”, then with the presence prediction…: using the trained …, predicting a wait time after which the status will be “Available” and reporting the predicted wait time to the agent …; or if the status is “Available”, then establishing a communication link between the agent … and the SME … and transmitting a query to the SME …over a first period of time: receiving presence data associated with a subject matter expert (SME) via an SME …; storing the presence data in a …; and with the stored presence data, training …; receiving an input from an agent, via the …, requesting contact with the SME …; soliciting a status from the SME …; if the status is not “Available”, then: using the …, predicting a wait time after which the status will be “Available” and reporting the predicted wait time to the agent via the agent …; or if the status is “Available”, then establishing a communication link between the agent … and the SME … and transmitting a query to the SME via the SME…, are managing communications between human agents and human subject matter experts and human patrons, which are managing interactions between people, therefore the claims, are directed to certain methods of organizing human activities.
Accordingly, the claims are directed to a mental process, certain methods of organizing human activities, and thus, the claims are directed to an abstract idea under the first prong of Step 2A.
Analyzing under Step 2A, Prong 2:
This judicial exception is not integrated into a practical application under the second prong of Step 2A.
In particular, the claims recite the additional elements beyond the recited abstract idea identified under Step 2A, Prong 1, such as:
Claim 1, 9, 17: system, a cloud server having at least one processor and a non-transitory computer readable medium operably coupled thereto, the cloud server being in electronic communication with an agent computing device and a subject matter expert (SME) computing device, the processor comprising a presence aggregator module and a presence prediction system, the server being in electronic communication with a database for storing presence data associated with the SME computing device, the computer readable medium comprising a plurality of instructions stored in association therewith that are accessible to, and executable by, the processor, with a cloud server having at least one processor and a non-transitory computer readable medium operably coupled thereto, the cloud server being in electronic communication with an agent computing device and a subject matter expert (SME) computing device, the processor comprising a presence aggregator module and a presence prediction system, the server being in electronic communication with a database for storing presence data associated with the SME computing device: over a first period of time, with the presence aggregator module: custom machine learning network, computer-implemented, computing device
Claim 2, 10: Long Short-Term Memory (LSTM) Recurrent Neural Network (RNN)
, and pursuant to the broadest reasonable interpretation, as an ordered combination, each of the additional elements are computing elements recited at high level of generality implementing the abstract idea, and thus, are no more than applying the abstract idea with generic computer components.
Further, these additional elements generally link the abstract idea to a technical environment, namely the environment of a computer.
Additionally, with respect to, “…receiving…”, “…storing…”, “…soliciting…”, “…reporting…”, “…establishing a communication link…”, “…transmitting…”, “…displaying…”, these elements do not add a meaningful limitations to integrate the abstract idea into a practical application because they are extra-solution activity, pre and post solution activity - i.e. data gathering – “…receiving…”, “…storing…”, “…soliciting…”, “…transmitting…”, data output – “…reporting…”, “…establishing a communication link…”, “…transmitting…”, “…displaying…”
Analyzing under Step 2B:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception under Step 2B.
As noted above, the aforementioned additional elements beyond the recited abstract idea are not sufficient to amount to significantly more than the recited abstract idea because, as an order combination, the additional elements are no more than mere instructions to implement the idea using generic computer components (i.e. apply it).
Additionally, as an order combination, the additional elements append the recited abstract idea to well-understood, routine, and conventional activities in the field as individually evinced by the applicant’s own disclosure, as required by the Berkheimer Memo, in at least:
[0039]Figure 1 is a schematic, diagrammatic representation, in block diagram form, of an example presence prediction system 100, in accordance with at least one embodiment of the present disclosure. In the example shown in Figure 1, a unified communications (UC) client computing device or SME computing device 110 is in contact with one or more UCaaS systems 101. In an example, the UC client computing device 110 is a laptop operated by a subject matter expert, and the UCaaS system 101 is at least one of Microsoft Teams, Ring Central, Cisco WebEx, or Zoom. The availability status of the UC client computing device 110 (e.g., the availability of the SME operating the client computing device) is tracked by a presence aggregator 104, which logs every time the UC client computing device or SME computing device 110 changes status. Examples of UC client computing device status include, but are not limited to, ?available?, ?busy?, ?in call?, ?unavailable?, ?away?, ?do not disturb?, ?offline?, ?meeting?, or ?out of office?. These status changes, along with their associated times, are stored in a historic presence state database 102, and read by a presence prediction engine 105, which determines aggregate presence information 103 for the UC client computing device or SME computing device 110 (e.g., presence of the SME operating the computing device 110). The presence prediction engine 105 also determines a presence prediction 106, detailing when the UC client computing device or SME computing device is next expected to be available. This information is passed through the contact center?s CCaSS system 107 and displayed on the agent computing device 108 (e.g., a computing device operated by an agent of the contact center).
[0040]In an example, the UCaaS system 101 sends an event for the presence of a subscribed user (e.g., an SME). This presence information is stored in the time-series based data store 103 by the presence aggregator 104. The presence prediction engine 105 runs methods explained below, to predict the presence state of the user (e.g., the SME). The information is stored in the data store 103 with various attributes like previous state, current state, SME identity etc. The representation 106 of the presence prediction data set for the user (e.g., the SME) can predict the presence of the SME and the duration in which the presence state can change. CCaaS systems 107 derive the SME state and the estimated change in presence from the presence prediction engine 105 and feed it to the agent computing device 108 whenever the agent searches for a backend user (e.g., an SME) using an address book or roster.
[0041]Block diagrams are provided herein for exemplary purposes; a person of ordinary skill in the art will recognize myriad variations that nonetheless fall within the scope of the present disclosure. For example, any of the blocks described herein may optionally include an output to a user of information relevant to the step, and may thus represent an improvement in the user interface over existing art by providing information not otherwise available.
[0081]Thus, if for example the user?s state is ?In-Call?, then the learning module 530 will check the average time taken by user in a call. Based on that, the learning module can predict the estimated duration of the current call. The writer module 555 will keep averaging the time and keep the learning module 530 updated. This method will keep running in the background and the learning module will thus further mature with every state change, to increase its accuracy with respect to the prediction. Depending on the implementation, the learning module may be or include a custom machine learning model such as a Long Short-Term Memory (LSTM) Recurrent Neural Network (RNN).
[0086]Figure 8 is a schematic, diagrammatic representation, in block diagram form, of an example presence prediction system 800, in accordance with at least one embodiment of the present disclosure. In the example shown in Figure 8, a patron 805 is in communication with an agent 830. The patron 805 communicates via a session border controller (SBC) 810, which is in communication with a media server 820, running on a core virtual personal computer (VPC) 815 running on a web services account 899. The core virtual PC 815 also runs a virtual cluster/media resource controller (VC/MRC) or word routing engine application 825 that forms the network boundary for the application.
[0087]The agent 830 communicates through a demilitarized zone (DMZ) virtual personal computer (VPC) running an automatic call distributor (ACD) application program interface (API). The core VPC 815 and the DMZ VPC 835 can communicate via a message conveyor or message bus 850 (e.g., Kinesis or Kafka) with availability zones 865, 870 running on an elastic Kubernetes service (EKS) 860, which runs on a shared EKS VPC 855 within the web services account 899. Presence sync prediction 864 occurs on the EKS VPC 855, which communicates with the UCaaS presence server 860.
[0088]The EKS service 860 communicates with a second core VPC 875, which executes a storage layer 880, which includes a cache 885 and a user database 890.
[0089]In an example, the user database 890 is an Amazon AuroraDB table containing back-office agent details pulled from partner system, UCaaS partners (e.g., via the UCaaS presence server 860) are the domain to which back-office agents may be connected, Presence Sync Prediction 864 is a microservice hosted in AWS managed Kubernetes EKS, and the SBC 810 is the session border controller through which the patron connects to the CCaaS infrastructure for a voice call. The architecture shown in Figure 8 is exemplary; a person of ordinary skill in the art will appreciate that other architectures may be used instead or in addition, to embody the system and perform the methods described herein.
[0099]Figure 12 is a schematic diagram of a processor circuit 1250, according to embodiments of the present disclosure. The processor circuit 1250 may be implemented in the system 100, the system 600, or other devices or workstations (e.g., third-party workstations, network routers, etc.), or on a cloud processor or other remote processing unit, as necessary to implement the method. As shown, the processor circuit 1250 may include a processor 1260, a memory 1264, and a communication module 1268. These elements may be in direct or indirect communication with each other, for example via one or more buses.
[00100]The processor 1260 may include a central processing unit (CPU), a digital signal processor (DSP), an ASIC, a controller, or any combination of general-purpose computing devices, reduced instruction set computing (RISC) devices, application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or other related logic devices, including mechanical and quantum computers. The processor 1260 may also comprise another hardware device, a firmware device, or any combination thereof configured to perform the operations described herein. The processor 1260 may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
[00104]As will be readily appreciated by those having ordinary skill in the art after becoming familiar with the teachings herein, the presence prediction system advantageously provides a practical benefit to UCaaS agents by permitting them to see when SMEs will next be available for consultation. Accordingly, it can be seen that the presence prediction system fills a long-standing need in the art, by enabling a agents to pick which SME(s) to wait for and which to ignore.
[00105]A number of variations are possible on the examples and embodiments described above. For example, an SME?s status could include other values than those described herein. Depending on the implementation, the presence prediction engine could rely on custom machine learning models or on custom unweighted classical mathematical models. Other UCaaS and CCaaS applications and other hardware/system architectures may be employed than those described herein, while performing the same or similar functions. Tools such as Webhook, Kinesis, and Amazon Web Services are described herein for exemplary purposes only; equivalent or similar tools and services may be used instead or in addition. The technology described herein may be employed in any field where a first user needs to consult with a second user whose availability is inconstant but generally predictable.
[00106]Accordingly, the logical operations making up the embodiments of the technology described herein are referred to variously as operations, steps, objects, elements, components, or modules. Furthermore, it should be understood that these may occur, or be performed or arranged, in any order, unless explicitly claimed otherwise or a specific order is inherently necessitated by the claim language.
[00108]The above specification, examples and data provide a complete description of the structure and use of exemplary embodiments of the presence prediction system as defined in the claims. Although various embodiments of the claimed subject matter have been described above with a certain degree of particularity, or with reference to one or more individual embodiments, those skilled in the art could make numerous alterations to the disclosed embodiments without departing from the spirit or scope of the claimed subject matter.
[00109]Still other embodiments are contemplated. It is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative only of particular embodiments and not limiting. Changes in detail or structure may be made without departing from the basic elements of the subject matter as defined in the following claims.
Furthermore, as an ordered combination, these elements amount to generic computer components receiving or transmitting data over a network, performing repetitive calculations, electronic record keeping, and storing and retrieving information in memory, which, as held by the courts, are well-understood, routine, and conventional. See MPEP 2106.05(d).
Moreover, the remaining elements of dependent claims do not transform the recited abstract idea into a patent eligible invention because these remaining elements merely recite further abstract limitations that provide nothing more than simply a narrowing of the abstract idea recited in the independent claims.
Looking at these limitations as an ordered combination adds nothing additional that is sufficient to amount to significantly more than the recited abstract idea because they simply provide instructions to use a generic arrangement of generic computer components to “apply” the recited abstract idea, perform insignificant extra-solution activity, and generally link the abstract idea to a technical environment. Thus, the elements of the claims, considered both individually and as an ordered combination, are not sufficient to ensure that the claim as a whole amounts to significantly more than the abstract idea itself. Since there are no limitations in these claims that transform the exception into a patent eligible application such that these claims amount to significantly more than the exception itself, claims 1-20 are rejected under 35 U.S.C. 101 as being directed to non-statutory subject matter.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claim(s) 1, 3-7, 9, 11-15, 17-20 is/are rejected under 35 U.S.C. 102 as being unpatentable by US Patent Publication to US20070071209A1 to Horvitz et al., (hereinafter referred to as “Horvitz”).
As per Claim 1, Horvitz teaches: A system adapted to automatically identify wait times for a subject matter expert, the system comprising:
a cloud server having at least one processor and a non-transitory computer readable medium operably coupled thereto, the cloud server being in electronic communication with an agent computing device and a subject matter expert (SME) computing device, the processor comprising a presence aggregator module and a presence prediction system, the server being in electronic communication with a database for storing presence data associated with the SME computing device, the computer readable medium comprising a plurality of instructions stored in association therewith that are accessible to, and executable by, the processor, to perform operations which comprise: ([0046][0048][0067][0209]-[0217])
over a first period of time, with the presence aggregator module: ([0068])
receiving the presence data associated with the SME computing device; (in at least [0068] This component 210 detects computer usage activity 214, calendar information 220, time information, video, acoustical, position information from 802.11 wireless signal strength and/or GPS data when these channels are available (can also include input from substantially any electronic source). The data-acquisition component 210 includes a signal-processing layer that enables users to configure and define parameters of audio and video sources utilized to define user(s) presence. This information can be cached locally and sent to a Coordinate data-coalescence component 224 (also referred to as Event Log or Event database) running on a central Coordinate server 230. This component 224 is responsible for combining data from the user's multiple machines and storing it in an XML-encoded event database (can include other type encoding). [0069] multiple dimensions of a user's activities across multiple devices, and appointment status, as encoded in a calendar, are stored in a relational database. Start and stop times of interactions of different interactions and appointment status are encoded as distinct dimensions in a database.)
storing the presence data in the database; and (in at least [0071] to reasoning with information from such a presence database, the present invention can learn Bayesian networks dynamically by acquiring a set of appropriate matching cases for a situation from the database, via appropriate querying of the database, and then employing a statistical analysis of the cases (e.g., employing a Bayesian-network learning procedure that employs model structure search to compose the best predictive model conditioned on the cases), and then using this model, in conjunction with a specific query at hand to make target inferences.)
with the stored presence data, training a custom machine learning network; (in at least [0071] a real-time learning approach, rather than attempting to build a large static predictive model for all possible queries, the method focuses analysis by constructing a set of cases 240 from the event database 224 that is consistent with a query 244 at hand. This approach allows custom-tailoring of the formulation and discretization of variables representing specific temporal relationships among such landmarks as transitions between periods of absence and presence and appointment start and end times, as defined by the query 244. These cases 240 are fed to a learning and inference subsystem 250, which constructs a Bayesian network that is tailored for a target prediction 254. The Bayesian network is used to build a cumulative distribution over events of interest. In one aspect, the present invention employs a learning tool to perform structure search over a space of dependency models, guided by a Bayesian model score to identify graphical models with the greatest ability to predict the data.)
receiving an input from the agent computing device requesting contact with the SME computing device; (in at least [0131] The communication 2810 may be carried over a variety of channels including, but not limited to, telephone channels, computer channels, fax channels, paging channels and personal channels. The telephone channels include, but are not limited to POTS telephony, cellular telephony, satellite telephony and Internet telephony. The computer channels can include, but are not limited to email, collaborative editing, instant messaging, network meetings, calendaring and devices employed in home processing and/or networking. The personal channels include, but are not limited to videoconferencing, messengering and face-to-face meeting. Data concerning a current channel (e.g., a phone that is busy) can be analyzed, as can data concerning the likelihood that the channel may become available (e.g., phone will no longer be busy). [0150] communication 2810 between one contactor 2820 and one contactee 2830 is illustrated, it is to be appreciated that a greater number of communications between a similar or greater number of contactors 2810 and/or contactees 2820 can be identified by the present invention. By way of illustration, communications 2810 to facilitate group meetings can be identified by the system 2800, as can multiple communications 2810 between two communicating parties (e.g., duplicate messages sent simultaneously by email and pager).)
soliciting a status from the SME computing device; (in at least [0012] determining the time until a user will review different kinds of information, based on review histories, and the time until the user will be in one or more types of settings, each associated with one or more types of feasible communications. Such information can be transmitted to a message sender regarding the user's ability or likelihood to engage in communications, or respond within a given timeframe. [0081] Beyond time of day, and day of week, meeting properties considered at training and prediction time include the meeting date and time, meeting duration, subject, location, organizer, number and nature of the invitees, role of the user (user was the organizer versus a required or optional invitee), response status of the user (responded yes, responded as tentative, did not respond, or no response request was made), whether the meeting is recurrent or not, and whether the time is marked as busy or free on the user's calendar. [0084] in FIG. 10, the main influencing variables for predicting the interruptability of meetings is whether a user is invited via an alias versus a person, whether the user responded to the appointment, the number of attendees, whether direct reports are invited, and the subject of the meeting.)
if the status is not “Available”, then with the presence prediction system: (in at least [0076])
using the trained custom machine learning network, predicting a wait time after which the status will be “Available” and reporting the predicted wait time to the agent computing device; or (in at least [0076] to FIG. 4, an interface 400 illustrates exemplary forecasting predictions in accordance with an aspect of the present invention. Similar to the interface 300 above, the interface 400 can be employed with the systems previously described with respect to FIGS. 1 and 2. In this aspect, a presence pallet is provided in the interface 400, wherein various predictions can be displayed relating to time until a user is available to communicate according to various forms of communications or capabilities. At 410, a user is selected for the respective predictions (e.g., Eric Horvitz). At 414, a probability threshold adjustment is provided to enable users to adjust the amount of certainty associated with the various predictions. At 420, one or more prediction categories can be provided such as user online, email review, telephone, office presence, online at home, videoconference capable, and so forth. At 430, associated prediction times are displayed for the prediction categories at 420. This can include graphical and/or numerical results depicting the predicted amount of time until a user is able to communicate via a given communications medium. For example, at 434, a graphical display and numeric display indicate the user selected at 410 will likely be in the office in about 149 minutes with a 90% probability. In addition, other information offering presence clues can be displayed in the interface 400 such as “Last observed at Bldg 113, 3:11 pm 2/21/2003.”)
if the status is “Available”, then establishing a communication link between the agent computing device and the SME computing device and transmitting a query to the SME computing device. (in at least [0048] The query 114 and returned states 120 are generated and received by one or more automated applications and/or authorized people 130, however, it is to be appreciated that the state information 120 can be generated without receiving the query 114 (e.g., a scheduling system that automatically sends manpower availability reports to managers at a predetermined interval). In general, the query 114 is originated by the applications, the authorized people 130, or other entities in order to obtain answers regarding the presence, availability, location, communications capability, device availability and so forth of the identified user or users. It is noted however, that complementary information may also be queried and answered respectively such as instead of presence information, the forecasting service 110 can provide how long a person is expected to be absent, or instead of availability information, how long a person may be unavailable, for example. [0076] to FIG. 4, an interface 400 illustrates exemplary forecasting predictions in accordance with an aspect of the present invention. Similar to the interface 300 above, the interface 400 can be employed with the systems previously described with respect to FIGS. 1 and 2. In this aspect, a presence pallet is provided in the interface 400, wherein various predictions can be displayed relating to time until a user is available to communicate according to various forms of communications or capabilities. At 410, a user is selected for the respective predictions (e.g., Eric Horvitz). At 414, a probability threshold adjustment is provided to enable users to adjust the amount of certainty associated with the various predictions. At 420, one or more prediction categories can be provided such as user online, email review, telephone, office presence, online at home, videoconference capable, and so forth. At 430, associated prediction times are displayed for the prediction categories at 420. This can include graphical and/or numerical results depicting the predicted amount of time until a user is able to communicate via a given communications medium. For example, at 434, a graphical display and numeric display indicate the user selected at 410 will likely be in the office in about 149 minutes with a 90% probability. In addition, other information offering presence clues can be displayed in the interface 400 such as “Last observed at Bldg 113, 3:11 pm 2/21/2003.” [0090] FIG. 12 depicts a diagram 1200 that relays the influence of the integration of the likelihood of attending meetings on the forecast of a user's availability. A query has been at 1:20 pm on a weekday about when a user is expected to return to their desktop machine when they have already been absent for 15 minutes. The uppermost curve shows the cumulative distribution of a user returning for the no-meeting situation. The lower curve shows the result of folding in a consideration of active meetings, considering the likelihood that the user will attend a respective meeting. In this case, three meetings were under consideration, including meeting from 1-2 pm, 2:30-3:30 pm, and 4-5 pm. [0125] At 2722, a query is received that requests presence or availability information for a user. As noted above, the query can also be directed to obtain complementary information such as a lack of presence or availability. [0169] The channel manager 2802 can also include a communication establisher 2878. Once the ideal communication actions A* have been identified, the communication establisher 2878 undertakes processing to connect the contactor 2820 and the contactee 2830 through the identified optimal communication channel. Such connection can be based, at least in part, on the resolved preference data, the analyzed context data and the communication channel data. For example, if the optimal communication 2810 is identified as being email, then the communication establisher can initiate an email composing process for the contactor 2820 (e.g., email screen on computer, voice to email converter on cell phone, email composer on two-way digital pager), and forward the composed email to the most appropriate email application for the contactee 2830 based on the identified optimal communication 2810. [0173] The profile parameters may be stored as a user profile that can be edited by the user. Beyond relying on sets of predefined profiles or dynamic inference, the notification architecture can enable users to specify in real-time his or her state, such as the user not being available except for important notifications for the next “x” hours, or until a given time)
As per Claim 3, Horvitz teaches: The system of claim 1, wherein the operations further comprise,
with the agent computing device, displaying the predicted time to an agent. (in at least [0076] to FIG. 4, an interface 400 illustrates exemplary forecasting predictions in accordance with an aspect of the present invention. Similar to the interface 300 above, the interface 400 can be employed with the systems previously described with respect to FIGS. 1 and 2. In this aspect, a presence pallet is provided in the interface 400, wherein various predictions can be displayed relating to time until a user is available to communicate according to various forms of communications or capabilities. At 410, a user is selected for the respective predictions (e.g., Eric Horvitz). At 414, a probability threshold adjustment is provided to enable users to adjust the amount of certainty associated with the various predictions. At 420, one or more prediction categories can be provided such as user online, email review, telephone, office presence, online at home, videoconference capable, and so forth. At 430, associated prediction times are displayed for the prediction categories at 420. This can include graphical and/or numerical results depicting the predicted amount of time until a user is able to communicate via a given communications medium. For example, at 434, a graphical display and numeric display indicate the user selected at 410 will likely be in the office in about 149 minutes with a 90% probability. In addition, other information offering presence clues can be displayed in the interface 400 such as “Last observed at Bldg 113, 3:11 pm 2/21/2003.)
As per Claim 4, Horvitz teaches: The system of claim 1,
wherein if the status is not “Available”, then the status is one of “Busy”, “In Call”, “Unavailable”, “Away”, “Do Not Disturb”, or “Offline”. (in at least [0083] Decision trees 900 and 1000 for predicting meeting attendance and interruptibility are displayed in FIGS. 9 and 10, respectively. As displayed in FIG. 9, key influencing variables for predicting meeting attendance include whether the meeting was organized via an alias or an individual, the duration of the meeting, the response status, whether the meeting is recurrent or not, the number of attendees, whether direct reports have been invited, the information included in the location field, and whether the meeting is marked as busy time or not.)
As per Claim 5, Horvitz teaches: The system of claim 1, wherein the operations further comprise:
soliciting a calendar associated with the SME computing device; and (in at least [0077] to FIG. 5, an interface 500 for predicting presence is illustrated in accordance with an aspect of the present invention. The interface 500 displays a Coordinate interface that provides means for selecting query classes and formulating queries for real-time situations or in offline analyses. In the case illustrated, a query has been entered about the likelihood that a user will return to the office for a period of at least 15 minutes, given that he or she has been absent for 25 minutes at 10:15 am on a weekday. A set of relevant data is gleaned from an event database (described above) and a Bayesian network is constructed. The network is used to generate the displayed cumulative probability distribution about when the user will return. For these samples, the system also shares a text summary forecast illustrated at 510 based on a 0.80 confidence threshold (e.g., Status: User has been absent for 30 minutes, Estimated Cost of Interruption: $0.10, Prediction: User is expected to return). Similar analyses can be performed for other events of interest such as illustrated in FIGS. 6 and 7 for an office presence analysis and an email review analysis, respectively. As will be described in more detail below, methods are provided for folding in consideration of meetings and the construction of models that provide forecasts of a user's availability. The following describes the construction of models of meeting attendance, interruptability, and location.)
based on the calendar, refining the predicted time. (in at least [0077] to FIG. 5, an interface 500 for predicting presence is illustrated in accordance with an aspect of the present invention. The interface 500 displays a Coordinate interface that provides means for selecting query classes and formulating queries for real-time situations or in offline analyses. In the case illustrated, a query has been entered about the likelihood that a user will return to the office for a period of at least 15 minutes, given that he or she has been absent for 25 minutes at 10:15 am on a weekday. A set of relevant data is gleaned from an event database (described above) and a Bayesian network is constructed. The network is used to generate the displayed cumulative probability distribution about when the user will return. For these samples, the system also shares a text summary forecast illustrated at 510 based on a 0.80 confidence threshold (e.g., Status: User has been absent for 30 minutes, Estimated Cost of Interruption: $0.10, Prediction: User is expected to return). Similar analyses can be performed for other events of interest such as illustrated in FIGS. 6 and 7 for an office presence analysis and an email review analysis, respectively. As will be described in more detail below, methods are provided for folding in consideration of meetings and the construction of models that provide forecasts of a user's availability. The following describes the construction of models of meeting attendance, interruptability, and location.)
As per Claim 6, Horvitz teaches: The system of claim 5,
wherein the calendar contains, for each time in the calendar, a calendar status of “Available”, “Busy”, “Meeting”, or “Out Of Office”. (in at least [0077] to FIG. 5, an interface 500 for predicting presence is illustrated in accordance with an aspect of the present invention. The interface 500 displays a Coordinate interface that provides means for selecting query classes and formulating queries for real-time situations or in offline analyses. In the case illustrated, a query has been entered about the likelihood that a user will return to the office for a period of at least 15 minutes, given that he or she has been absent for 25 minutes at 10:15 am on a weekday. A set of relevant data is gleaned from an event database (described above) and a Bayesian network is constructed. The network is used to generate the displayed cumulative probability distribution about when the user will return. For these samples, the system also shares a text summary forecast illustrated at 510 based on a 0.80 confidence threshold (e.g., Status: User has been absent for 30 minutes, Estimated Cost of Interruption: $0.10, Prediction: User is expected to return). Similar analyses can be performed for other events of interest such as illustrated in FIGS. 6 and 7 for an office presence analysis and an email review analysis, respectively. As will be described in more detail below, methods are provided for folding in consideration of meetings and the construction of models that provide forecasts of a user's availability. The following describes the construction of models of meeting attendance, interruptability, and location. [0218] FIG. 36 illustrates use of predictions about time away from the office in an application (e.g., electronic calendar) that shares predictions about time away with others at 3600. FIG. 37 illustrates a rescheduling application employing forecasting in accordance with the present invention. At 3700, an interface is provided giving a caller an option to reschedule a call for a user who is currently away. At 3710, via employment of time away forecasting, a suggested time for re-scheduling the call is provided.)
As per Claim 7, Horvitz teaches: The system of claim 1,
wherein the presence data comprises statuses of “Available”, “Busy”, “In Call”, “Unavailable”, “Away”, “Do Not Disturb”, or “Offline”, and one or more times associated therewith. (in at least [0077] to FIG. 5, an interface 500 for predicting presence is illustrated in accordance with an aspect of the present invention. The interface 500 displays a Coordinate interface that provides means for selecting query classes and formulating queries for real-time situations or in offline analyses. In the case illustrated, a query has been entered about the likelihood that a user will return to the office for a period of at least 15 minutes, given that he or she has been absent for 25 minutes at 10:15 am on a weekday. A set of relevant data is gleaned from an event database (described above) and a Bayesian network is constructed. The network is used to generate the displayed cumulative probability distribution about when the user will return. For these samples, the system also shares a text summary forecast illustrated at 510 based on a 0.80 confidence threshold (e.g., Status: User has been absent for 30 minutes, Estimated Cost of Interruption: $0.10, Prediction: User is expected to return). Similar analyses can be performed for other events of interest such as illustrated in FIGS. 6 and 7 for an office presence analysis and an email review analysis, respectively. As will be described in more detail below, methods are provided for folding in consideration of meetings and the construction of models that provide forecasts of a user's availability. The following describes the construction of models of meeting attendance, interruptability, and location.)
As per Claim 9, 11-15 for a method (see at least Horvitz [0065]), substantially recite the subject matter of Claim 1, 3-7, and are rejected based on the same reasoning and rationale.
As per Claim 17-20 for a method (see at least Horvitz [0065]), substantially recite the subject matter of Claim 1, 4-6 and are rejected based on the same reasoning and rationale.
Claim Rejections – 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
Determining the scope and contents of the prior art.
Ascertaining the differences between the prior art and the claims at issue.
Resolving the level of ordinary skill in the pertinent art.
Considering objective evidence present in the application indicating obviousness or nonobviousness.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 2, 10 is/are rejected under 35 U.S.C. 103 as being unpatentable by US Patent Publication to US20070071209A1 to Horvitz et al., (hereinafter referred to as “Horvitz”) in view of US Patent Publication to US20240193549A1 to Noon, (hereinafter referred to as “Noon”)
As per Claim 2, Horvitz teaches: The system of claim 1,
wherein the custom machine learning network is a …. (in at least [0057] In order to generate the state information 120, the forecasting service 110 employs a learning component 134 that can include one or more learning models for reasoning about the user states 120. Such models can include substantially any type of system such as statistical/mathematical models and processes that include the use of Bayesian learning, which can generate Bayesian dependency models, such as Bayesian networks, naive Bayesian classifiers, and/or Support Vector Machines (SVMs), for example. Other type models or systems can include neural networks and Hidden Markov Models, for example. Although elaborate reasoning models can be employed in accordance with the present invention, it is to be appreciated that other approaches can also utilized. For example, rather than a more thorough probabilistic approach, deterministic assumptions can also be employed (e.g., no desktop activity for X amount of time may imply by rule that user is not at work). Thus, in addition to reasoning under uncertainty as is described in more detail below, logical decisions can also be made regarding the status, location, context, focus, and so forth of users and/or associated devices.)
Although implied, Horvitz does not expressly disclose the following limitations, which however, are taught by Noon,
wherein the custom machine learning network is a Long Short-Term Memory (LSTM) Recurrent Neural Network (RNN). (in at least [0046] the term “machine learning model” refers to a computer algorithm or a collection of computer algorithms that automatically improve for a particular task through iterative outputs or predictions based on use of data. For example, a machine learning model can utilize one or more learning techniques to improve accuracy and/or effectiveness. Example machine learning models include various types of neural networks, decision trees, support vector machines, linear regression models, and Bayesian networks. As described in further detail below, the chronotype scheduling system utilizes a “chronotype machine learning model” that can include, for example, one or more neural networks, to determine or predict the chronotype of each user. In addition, the chronotype scheduling system utilizes a “machine learning model” such as a neural network to determine or predict the likelihood of an individual user having a certain chronotype. [0047] the term “neural network” refers to a machine learning model that can be trained and/or tuned based on inputs to determine classifications, scores, or approximate unknown functions. For example, a neural network includes a model of interconnected artificial neurons (e.g., organized in layers) that communicate and learn to approximate complex functions and generate outputs (e.g., generated recommendation scores) based on a plurality of inputs provided to the neural network. In some cases, a neural network refers to an algorithm (or set of algorithms) that implements deep learning techniques to model high-level abstractions in data. A neural network can include various layers such as an input layer, one or more hidden layers, and an output layer that each perform tasks for processing data. For example, a neural network can include a deep neural network, a convolutional neural network, a recurrent neural network (e.g., an LSTM), a graph neural network, or a generative adversarial neural network. Upon training as described below, such a neural network may become a content attribute neural network or a dynamic facet neural network.)
At the time the invention was filed, it would have been obvious for one of ordinary skill in the art to have modified the teachings of Horvitz, as taught by Noon above, with a reasonable expectation of success if arriving at the claimed invention. One of ordinary skill in the art would have been motivated to make this modification to the teachings of Horvitz with the motivation of, … chronotype scheduling system can improve efficiency….to improving upon efficiency, the content visualization system also improves upon accuracy. For example, the chronotype scheduling system generates calendar events for a subset of users from the set of users based on time zones and chronotypes. As such, the chronotype scheduling system avoids the aforementioned issues of creating calendar invitations during inconvenient times of the day or during a time outside of a working schedule. By basing calendar events on time zones and chronotypes, the chronotype scheduling system optimizes scheduling and increases the accuracy of scheduling other users, not only from the perspective of an available time, but also from the perspective of scheduling a task type within a time period that is compatible with user's chronotypes. Accordingly, the chronotype scheduling system improves upon accuracy concerns within existing scheduling systems…a machine learning model can utilize one or more learning techniques to improve accuracy and/or effectiveness...to improve predictions for subsequent iterations…to identify an available person subject to the client device designations., as recited in Noon.
As per Claim 10 for a method (see at least Horvitz [0065]), substantially recite the subject matter of Claim 2 and are rejected based on the same reasoning and rationale.
Claims 8, 16 is/are rejected under 35 U.S.C. 103 as being unpatentable by US Patent Publication to US20070071209A1 to Horvitz et al., (hereinafter referred to as “Horvitz”) in view of US Patent to US7787609B1 to Flockhart et al., (hereinafter referred to as “Flockhart”)
As per Claim 8, Horvitz teaches: The system of claim 1, further comprising
a communication link between the agent computing device and a … computing device. (in at least [0076] to FIG. 4, an interface 400 illustrates exemplary forecasting predictions in accordance with an aspect of the present invention. Similar to the interface 300 above, the interface 400 can be employed with the systems previously described with respect to FIGS. 1 and 2. In this aspect, a presence pallet is provided in the interface 400, wherein various predictions can be displayed relating to time until a user is available to communicate according to various forms of communications or capabilities. At 410, a user is selected for the respective predictions (e.g., Eric Horvitz). At 414, a probability threshold adjustment is provided to enable users to adjust the amount of certainty associated with the various predictions. At 420, one or more prediction categories can be provided such as user online, email review, telephone, office presence, online at home, videoconference capable, and so forth. At 430, associated prediction times are displayed for the prediction categories at 420. This can include graphical and/or numerical results depicting the predicted amount of time until a user is able to communicate via a given communications medium. For example, at 434, a graphical display and numeric display indicate the user selected at 410 will likely be in the office in about 149 minutes with a 90% probability. In addition, other information offering presence clues can be displayed in the interface 400 such as “Last observed at Bldg 113, 3:11 pm 2/21/2003.” [0169] The channel manager 2802 can also include a communication establisher 2878. Once the ideal communication actions A* have been identified, the communication establisher 2878 undertakes processing to connect the contactor 2820 and the contactee 2830 through the identified optimal communication channel. Such connection can be based, at least in part, on the resolved preference data, the analyzed context data and the communication channel data. For example, if the optimal communication 2810 is identified as being email, then the communication establisher can initiate an email composing process for the contactor 2820 (e.g., email screen on computer, voice to email converter on cell phone, email composer on two-way digital pager), and forward the composed email to the most appropriate email application for the contactee 2830 based on the identified optimal communication 2810. [0173] The profile parameters may be stored as a user profile that can be edited by the user. Beyond relying on sets of predefined profiles or dynamic inference, the notification architecture can enable users to specify in real-time his or her state, such as the user not being available except for important notifications for the next “x” hours, or until a given time)
Although implied, Horvitz does not expressly disclose the following limitations, which however, are taught by Flockhart,
a communication link between the agent computing device and a patron computing device. (in at least [col7 ln60-col8 ln35] FIG. 2, one possible configuration of the server 110 is depicted. The server 110 is in communication with a plurality of customer communication lines (not shown) (which can be one or more trunks, phone lines, etc.) and agent and expert communication lines (not shown) (which can be a voice-and-data transmission line such as LAN 142 and/or a circuit switched voice line). [col11 ln35-65] individual experts are invited in step 320 to service the work item. Here, embodiments of the present invention utilize a call to the subject matter expert, a pop up screen on the subject matter expert's computer, a page, a call to the subject matter expert's cellphone, or any other similar way to contact the expert to invite them to assist the agents. In decision diamond 324, the invited expert(s) may accept, decline, or accept with a condition. if the invited expert(s) accept unconditionally or conditionally with an acceptable condition, the other requests or invitations for assistance to all other subject matter experts are cancelled or retracted in step 328, and the contact is routed to the accepting expert in step 332. If the invited expert(s) decline or conditionally accept with unacceptable conditions, the selector 228 proceeds to decision diamond 336 and searches for other available experts 240. if no further experts can be identified, the selector 228 proceeds to decision diamond 312. If one or more further experts are identified, the selector 228 proceeds to and repeats step 320. One skilled in the art will appreciate that a parallel approach may be used where many experts are invited at one time as described above. In one configuration, if no experts are available in decision diamond 336, the work item is directed to the appropriate agent queue. [col12 ln1-25] the identified expert is invited in step 416 to service the work item. As noted, the expert in decision diamond 420 may accept conditionally or unconditionally or decline. If the expert accepts unconditionally or with an acceptable condition, the work item is routed to the expert in step 440. If the expert declines or accepts conditionally with an unacceptable condition, the selector 228 proceeds to decision diamond 436. If the condition is a wait time before the expert is available to service the contact, the selector 228 proceeds to decision diamond 432. In decision diamond 432, the customer is queried whether she would like to wait for the expert to be available to service her contact. If so, the work item, in step 433 is parked, held, or placed in a queue or a conference is scheduled with the expert. If however, the customer does not wish to wait to talk to the expert, if the contact is not to be intercepted in decision diamond 412, or if the expert declines to service the contact in decision diamond 436, the contact, in step 433, is queued in a contact queue to await servicing by an agent.)
At the time the invention was filed, it would have been obvious for one of ordinary skill in the art to have modified the teachings of Horvitz, as taught by Flockhart above, with a reasonable expectation of success if arriving at the claimed invention. One of ordinary skill in the art would have been motivated to make this modification to the teachings of Horvitz with the motivation of, …aggregate the totality of resources and skills available outside of the service center in a structured and dynamic manner…to maximize contact center performance and profitability. That may involve minimizing cost, maximizing contact throughput, and/or maximizing revenue, among others. Skills-based routing, which allows each agent to be slotted into a number of agent groups based on the agent's skill types and levels, is an attempt to maximize contact center performance and profitability. Skills-based routing systems have been further modified by introducing, as criterion in assigning work items to available agents, the service level associated with each work item…to maintain and exceed customer service expectations, not only for wait time but also for responding effectively and efficiently to customer questions…to staff a correct number of resources to serve increasingly complex customer requests…to provide improved contact processing.…improving performance, achieving ease and\or reducing cost of implementation….provide the subject matter expert a time estimate of how long it will take to rectify the complex work item…This duration information will help the subject matter expert decide whether to accept or decline the request for assistance…Customers requiring escalated service could be provided with an audio or HTML message that would inform them of the estimated (predicted) waiting time to locate and connect the best or optimal resource for their call. Customers unwilling to wait could indicate their availability for an “on-demand” conference when the best resource becomes available and would be linked to a mechanism aggregating the cumulative availability of resources that can serve the customer if more than one resource responds with “I am not interruptible now but will be available in X minutes from now”. If the requests extended to the “on-demand” resources do not result in a satisfactory level of real-time or anticipated service…, as recited in Flockhart.
As per Claim 16, Horvitz teaches: The method of claim 9, further comprising
establishing a communication link between the agent computing device and a … computing device and transmitting a second query to the SME computing device. (in at least [0048] The query 114 and returned states 120 are generated and received by one or more automated applications and/or authorized people 130, however, it is to be appreciated that the state information 120 can be generated without receiving the query 114 (e.g., a scheduling system that automatically sends manpower availability reports to managers at a predetermined interval). In general, the query 114 is originated by the applications, the authorized people 130, or other entities in order to obtain answers regarding the presence, availability, location, communications capability, device availability and so forth of the identified user or users. It is noted however, that complementary information may also be queried and answered respectively such as instead of presence information, the forecasting service 110 can provide how long a person is expected to be absent, or instead of availability information, how long a person may be unavailable, for example. [0076] to FIG. 4, an interface 400 illustrates exemplary forecasting predictions in accordance with an aspect of the present invention. Similar to the interface 300 above, the interface 400 can be employed with the systems previously described with respect to FIGS. 1 and 2. In this aspect, a presence pallet is provided in the interface 400, wherein various predictions can be displayed relating to time until a user is available to communicate according to various forms of communications or capabilities. At 410, a user is selected for the respective predictions (e.g., Eric Horvitz). At 414, a probability threshold adjustment is provided to enable users to adjust the amount of certainty associated with the various predictions. At 420, one or more prediction categories can be provided such as user online, email review, telephone, office presence, online at home, videoconference capable, and so forth. At 430, associated prediction times are displayed for the prediction categories at 420. This can include graphical and/or numerical results depicting the predicted amount of time until a user is able to communicate via a given communications medium. For example, at 434, a graphical display and numeric display indicate the user selected at 410 will likely be in the office in about 149 minutes with a 90% probability. In addition, other information offering presence clues can be displayed in the interface 400 such as “Last observed at Bldg 113, 3:11 pm 2/21/2003.” [0090] FIG. 12 depicts a diagram 1200 that relays the influence of the integration of the likelihood of attending meetings on the forecast of a user's availability. A query has been at 1:20 pm on a weekday about when a user is expected to return to their desktop machine when they have already been absent for 15 minutes. The uppermost curve shows the cumulative distribution of a user returning for the no-meeting situation. The lower curve shows the result of folding in a consideration of active meetings, considering the likelihood that the user will attend a respective meeting. In this case, three meetings were under consideration, including meeting from 1-2 pm, 2:30-3:30 pm, and 4-5 pm. [0076] to FIG. 4, an interface 400 illustrates exemplary forecasting predictions in accordance with an aspect of the present invention. Similar to the interface 300 above, the interface 400 can be employed with the systems previously described with respect to FIGS. 1 and 2. In this aspect, a presence pallet is provided in the interface 400, wherein various predictions can be displayed relating to time until a user is available to communicate according to various forms of communications or capabilities. At 410, a user is selected for the respective predictions (e.g., Eric Horvitz). At 414, a probability threshold adjustment is provided to enable users to adjust the amount of certainty associated with the various predictions. At 420, one or more prediction categories can be provided such as user online, email review, telephone, office presence, online at home, videoconference capable, and so forth. At 430, associated prediction times are displayed for the prediction categories at 420. This can include graphical and/or numerical results depicting the predicted amount of time until a user is able to communicate via a given communications medium. For example, at 434, a graphical display and numeric display indicate the user selected at 410 will likely be in the office in about 149 minutes with a 90% probability. In addition, other information offering presence clues can be displayed in the interface 400 such as “Last observed at Bldg 113, 3:11 pm 2/21/2003.” [0125] At 2722, a query is received that requests presence or availability information for a user. As noted above, the query can also be directed to obtain complementary information such as a lack of presence or availability. [0169] The channel manager 2802 can also include a communication establisher 2878. Once the ideal communication actions A* have been identified, the communication establisher 2878 undertakes processing to connect the contactor 2820 and the contactee 2830 through the identified optimal communication channel. Such connection can be based, at least in part, on the resolved preference data, the analyzed context data and the communication channel data. For example, if the optimal communication 2810 is identified as being email, then the communication establisher can initiate an email composing process for the contactor 2820 (e.g., email screen on computer, voice to email converter on cell phone, email composer on two-way digital pager), and forward the composed email to the most appropriate email application for the contactee 2830 based on the identified optimal communication 2810. [0169] The channel manager 2802 can also include a communication establisher 2878. Once the ideal communication actions A* have been identified, the communication establisher 2878 undertakes processing to connect the contactor 2820 and the contactee 2830 through the identified optimal communication channel. Such connection can be based, at least in part, on the resolved preference data, the analyzed context data and the communication channel data. For example, if the optimal communication 2810 is identified as being email, then the communication establisher can initiate an email composing process for the contactor 2820 (e.g., email screen on computer, voice to email converter on cell phone, email composer on two-way digital pager), and forward the composed email to the most appropriate email application for the contactee 2830 based on the identified optimal communication 2810. [0173] The profile parameters may be stored as a user profile that can be edited by the user. Beyond relying on sets of predefined profiles or dynamic inference, the notification architecture can enable users to specify in real-time his or her state, such as the user not being available except for important notifications for the next “x” hours, or until a given time)
Although implied, Horvitz does not expressly disclose the following limitations, which however, are taught by Flockhart,
establishing a communication link between the agent computing device and a patron computing device and transmitting a second query to the SME computing device. (in at least [col7 ln60-col8 ln35] FIG. 2, one possible configuration of the server 110 is depicted. The server 110 is in communication with a plurality of customer communication lines (not shown) (which can be one or more trunks, phone lines, etc.) and agent and expert communication lines (not shown) (which can be a voice-and-data transmission line such as LAN 142 and/or a circuit switched voice line). [col11 ln35-65] individual experts are invited in step 320 to service the work item. Here, embodiments of the present invention utilize a call to the subject matter expert, a pop up screen on the subject matter expert's computer, a page, a call to the subject matter expert's cellphone, or any other similar way to contact the expert to invite them to assist the agents. In decision diamond 324, the invited expert(s) may accept, decline, or accept with a condition. if the invited expert(s) accept unconditionally or conditionally with an acceptable condition, the other requests or invitations for assistance to all other subject matter experts are cancelled or retracted in step 328, and the contact is routed to the accepting expert in step 332. If the invited expert(s) decline or conditionally accept with unacceptable conditions, the selector 228 proceeds to decision diamond 336 and searches for other available experts 240. if no further experts can be identified, the selector 228 proceeds to decision diamond 312. If one or more further experts are identified, the selector 228 proceeds to and repeats step 320. One skilled in the art will appreciate that a parallel approach may be used where many experts are invited at one time as described above. In one configuration, if no experts are available in decision diamond 336, the work item is directed to the appropriate agent queue. [col12 ln1-25] the identified expert is invited in step 416 to service the work item. As noted, the expert in decision diamond 420 may accept conditionally or unconditionally or decline. If the expert accepts unconditionally or with an acceptable condition, the work item is routed to the expert in step 440. If the expert declines or accepts conditionally with an unacceptable condition, the selector 228 proceeds to decision diamond 436. If the condition is a wait time before the expert is available to service the contact, the selector 228 proceeds to decision diamond 432. In decision diamond 432, the customer is queried whether she would like to wait for the expert to be available to service her contact. If so, the work item, in step 433 is parked, held, or placed in a queue or a conference is scheduled with the expert. If however, the customer does not wish to wait to talk to the expert, if the contact is not to be intercepted in decision diamond 412, or if the expert declines to service the contact in decision diamond 436, the contact, in step 433, is queued in a contact queue to await servicing by an agent.)
The reason and rationale to combine Horvitz and Flockhart is the same as recited above.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PO HAN (Max) LEE whose telephone number is (571) 272-3821. The examiner can normally be reached on Monday - Thursday, 9 AM-6:30 PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Rutao Wu can be reached on (571) 272-6045. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/PO HAN LEE/Primary Examiner, Art Unit 3623