Source: https://patents.google.com/patent/US10063693B2/en
Timestamp: 2019-05-22 19:09:15
Document Index: 625118894

Matched Legal Cases: ['Application No. 61', 'Application No. 2014233351', 'Application No. 2', 'Application No. 2', 'Application No. 201480028553', 'Application No. 10', 'Application No. 10', 'Application No. 10']

US10063693B2 - System and method for geo-location based media recording for a contact center - Google Patents
System and method for geo-location based media recording for a contact center Download PDF
US10063693B2
US10063693B2 US15/723,019 US201715723019A US10063693B2 US 10063693 B2 US10063693 B2 US 10063693B2 US 201715723019 A US201715723019 A US 201715723019A US 10063693 B2 US10063693 B2 US 10063693B2
US15/723,019
US20180048758A1 (en
2013-08-30 Priority to US14/015,974 priority patent/US9781253B2/en
2017-10-02 Application filed by Genesys Telecommunications Laboratories Inc filed Critical Genesys Telecommunications Laboratories Inc
2017-10-02 Priority to US15/723,019 priority patent/US10063693B2/en
2017-11-28 Assigned to GENESYS TELECOMMUNICATIONS LABORATORIES, INC. reassignment GENESYS TELECOMMUNICATIONS LABORATORIES, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CICCHITTO, Angelo, BLANDER, Daniel, CULBERT, Jeffrey, FILONOV, Vladimir, LUM, HENRY, SUBRAMANIAM, Somasundaram, GVILDYS, Paul
2018-02-15 Publication of US20180048758A1 publication Critical patent/US20180048758A1/en
2018-08-28 Publication of US10063693B2 publication Critical patent/US10063693B2/en
A system and method for recording media for a contact center includes establishing via a processor in a first geographic location, a communication session between first and second communication devices. The processor determines that media exchanged during the media session is to be recorded. The processor identifies a second geographic location associated with a resource involved in the media session, and identifies a media controller associated with the second geographic location. The media controller bridges the media path between the first and second communication devices, and the media exchanged during the media session is recorded.
This application is a continuation of U.S. patent application Ser. No. 14/015,974, filed on Aug. 30, 2013, now U.S. Pat. No. 9,781,253, which claims the benefit of U.S. Provisional Application No. 61/801,267, filed on Mar. 15, 2013, the content of all of which are incorporated herein by reference.
This application is also related to U.S. patent application Ser. No. 14/015,983, filed on Aug. 30, 2013, entitled “System and Method for Encrypting and Recording Media for a Contact Center”, U.S. patent application Ser. No. 14/015,836, filed on Aug. 30, 2013, entitled “Network Recording and Speech Analytics System and Method”, U.S. patent application Ser. No. 14/015,960, filed on Aug. 30, 2013, entitled “System and Method for Handling Call Recording Failures for a Contact Center”, and U.S. patent application Ser. No. 14/015,649, filed on Aug. 30, 2013, entitled “Call Event Tagging and Call Recording Stitching for Contact Center Call Recordings”, all of which are filed on even date herewith.
Embodiments of the present invention are directed to a method and system for recording media for a contact center. The system includes a processor in a first geographic location and a memory. The memory has stored thereon instructions that, when executed by the processor, cause the processor to: establish a communication session between first and second communication devices; determine that media exchanged during the media session is to be recorded; identify a second geographic location associated with a resource involved in the media session; and identify a media controller associated with the second geographic location, wherein a media path between the first and second communication devices is bridged by the media controller.
According to one embodiment, the resource is selected from a group consisting of the second communication device, route point, and trunk transporting an inbound call from the first communication device. The may be identified, for example, via a directory number.
According to one embodiment, the program instructions that cause the processor to identify the second geographic location further causes the processor to identify the directory number of the resource; determine whether the directory number is tagged with a geographic location; and retrieve the geographic location tagged to the directory number.
According to one embodiment, the communication session is an Internet telephony session, and the media is voice media.
According to one embodiment, the program instructions that cause the processor to determine that the media exchanged during the media session is to be recorded are based on a directory number involved in the media session.
According to one embodiment, a plurality of resources are involved in the media session, wherein the program instructions that cause the processor to identify the second geographic location further cause the processor to select a geographic location associated to one of the plurality of resources based on an order of preference preset for the plurality of resources.
According to one embodiment, the media controller is configured to bridge a media path between the first and second communication devices; replicate the media exchanged in the media path; encrypt the media via a first encryption key for storing the encrypted media in a data storage device; and encrypt the first encryption key via a second encryption key for storing the encrypted first encryption key as metadata for the encrypted media.
According to one embodiment, the communication session is for conducting a telephony call, wherein the instructions further cause the processor to: identify the media controller currently assigned to the telephony call between the first and second communication devices, the media controller bridging a first media path between the first and second communication devices and recording, into a storage device, media exchanged in the first media path during the telephony call; detect failure of the media controller during the telephony call, wherein the failure of the media controller tears down the first media path; in response to detecting the failure, bridge a second media path between the first and second communication devices until a second media controller is identified; and in response to the second media controller being identified, signal the second media controller to bridge and record media exchanged during the telephony call.
According to one embodiment, the media session is for conducting a telephony call, the system further comprising: a second processor configured to: receive call metadata for the telephony call, the call metadata including a link to a recording of media exchanged during the telephony call; receive a call event associated with the telephony call, the call event including a timestamp of when the event occurred during the telephony call; store the call metadata and the call event in a database record; retrieve the database record for displaying the call event on a display device; receive a user command identifying the call event in response to the display on the display device; and retrieve a portion of the recording associated with the call event in response to the user command for providing an audible rendering of the retrieved portion of the recording.
FIG. 12 is a schematic block diagram of a system for contact center call recording and recording posting according to one embodiment of the invention;
FIG. 22 is a schematic block diagram of a hybrid operations environment for providing media services according to another embodiment of the invention; and
FIG. 23 is a schematic block diagram of a hybrid operations environment for providing media services according to another embodiment of the invention.
In providing contact center services to customers of an enterprise, the software and hardware resources of the contact center servicing the enterprise are invoked to engage in interactions with the customers. The services may vary depending on the type of contact center, and may range from customer service to help desk, emergency response, telemarketing, order taking, and the like. The interactions that may ensue in order to render the services may include, for example, voice calls, emails, text messages, social media interactions, and the like.
According to one embodiment, the remote operations environment 16 includes an edge device 20 configured to control signaling and media streams involved in setting up, conducting, and tearing down voice conversations and other media communications between, for example, a customer and a contact center agent. According to one embodiment, the edge device 20 is a session border controller controlling the signaling and media exchanged during a media session (also referred to as a “call” or “communication session”) between the customer and the agent. According to one embodiment, the signaling exchanged during a media session includes SIP, H.323, Media Gateway Control Protocol (MGCP), and/or any other voice-over IP (VoIP) call signaling protocols conventional in the art. The media exchanged during a media session includes media streams which carry the call's audio, video, or other data along with information of call statistics and quality.
According to one embodiment, the edge device 20 operates according to a standard SIP back-to-back user agent (B2BUA) configuration. In this regard, the edge device 20 is inserted in the signaling and media paths established between a calling and called parties in a VoIP call.
The voice platform 58 may host, for example, a SIP server 56, resource manager 50, speech servers 54, and a media control platform 52. The resource manager 50 and media control platform 52 may collectively be referred to as a media controller. According to one embodiment, the SIP server 56 acts as a SIP B2UBA, and controls the flow of SIP requests and responses between SIP endpoints. Any other controller configured to set up and tear down VoIP communication session may be contemplated in addition or in lieu to the SIP server as will be apparent to a person of skill in the art. The SIP server 56 may be a separate logical component or combined with the resource manager 50. In some embodiments, the SIP server may be hosted at the contact center premise 12, and/or in the remote operations environment.
FIG. 6 is a schematic block diagram of a system for call recording in a hybrid operations environment according to one embodiment of the invention. This embodiment is similar to the embodiments of FIGS. 4 and 5 in that the resource manager 50 and media control platform 52 are hosted by the remote platform 14 in the remote operations environment 16. In addition to the resource manager and media control platform, the remote platform further hosts a recording server 400 configured for recording media exchanged during a media session. Although the recording server 400 is depicted as a separate component, a person of skill in the art should recognize that functionality of the recording server may be incorporated into the media control platform 52.
According to one embodiment, the media control platform 52 is configured for active recording. Unlike passive recording where VoIP recording is done by connecting a passive recording system to a switch to monitor all network traffic and pick out only the VoIP traffic to record, active recording allows a recording device to be an active participant in the call for recording purposes. In this regard, the media control platform 52 is in the media path established between two communicating parties in order to actively record the media traversing the media path.
According to one embodiment, the recording server 400 is configured to receive metadata of the call recordings from the SIP server 402 over a data link 410. The metadata may be stored in association with the corresponding call recordings in the same or separate data storage device as the actual call recordings.
FIG. 22 is a schematic block diagram of a hybrid operations environment for providing media services according to another embodiment of the invention. According to this embodiment, a SIP server 2202 is at the contact center premise 12 and media is provided via the resource manager 52 and media control platform 50 in the remote operations environment 16. The SIP server 2202 may be similar to the SIP server 56 of FIG. 2. In the illustrated embodiment, a call from the end user device 18 arrives at a media gateway 2200 at the contact center premise 12 and the SIP server 2202 is invoked for routing the call. When media service is to be provided for the call, the SIP server identifies the resource manager 52 in the remote operations environment 16 (e.g. via the directory number configured at the SIP server for the particular media service), and transmits a signaling message for providing the media service to the resource manager 52. The resource manager forwards the request to the media control platform 50 selected to handle the service, and a media path 2204 is established between the end user device and the media control platform 50.
FIG. 12 is a schematic block diagram of a system for contact center call recording and recording posting according to one embodiment of the invention. The system includes a remote operations environment 600 with an edge device 604 for routing calls between customers utilizing various telephony service providers 606, and contact center resources in a contact center premise 602. The edge device 604, remote operations environment 600, and contact center premise 602 may be similar to respectively the edge device 20, remote operations environment 16, and contact center premise 12 of FIG. 6.
In the embodiment illustrated in FIG. 12, the remote operations environment 600 hosts a resource manager 610, media control platform 608, and recording server 616 (which may be incorporated into the media control platform 608), which may be similar to respectively the resource manager 50, media control platform 52, and recording server 400 of FIG. 6.
The system of FIG. 12 further includes a mass storage device 624 configured to store recordings transmitted by the recording server 616. The mass storage device may be, for example, an online storage in a public cloud computing environment offered, for example, by Amazon Web Services (e.g. Amazon S3 online storage web service). According to one embodiment, the recording is encrypted by the media control platform 608 prior to posting into a bucket associated with the tenant for which recordings are being stored. The encryption of the audio recording may be via an encryption key stored in the IVR profile of the tenant. An authorization key for posting in the mass storage device may also be obtained, as necessary, from the tenant's IVR profile.
The contact center premise 602 may host a server providing an interaction concentrator (ICON) application 630 coupled to an ICON database 632. According to one embodiment, the ICON application receives call and other interaction event details from the SIP server 612 and stores the details in the ICON database 632. The web server 614 is configured to access the ICON database 632 and retrieve event details associated with the call metadata received from the media control platform 616, and store the event details and associated call metadata in a call record maintained in a call database 634.
In step 662, the web server 614 performs a query of the ICON database 632 for pulling additional call events from the database in step 664. In step 666, the web server stores the call metadata and events in the call database 634. The web server may also cache and batch-update the call records at a later time.
The failure of the media control platform 608 results in a break of the media path between party A 650 and party B. Accordingly, in steps which are referenced generally via reference 710, the SIP server 612 re-establishes the disconnected media path via standard SIP messages so that the communication session continues. A media channel is established in step 712, and party A 650 continues to communicate with party B 652.
According to one embodiment, the media control platform 608 uses a random symmetric session key to encrypt the audio. The session key is further encrypted using, for example, a public key provisioned for the tenant, and the encrypted session key 904 is also written to the disk at time 900 when the recording begins. According to one embodiment, the encryption of the session key is according to any one of various public key cryptography mechanisms known in the art, such as, for example, public-key cryptography. The media control platform 608 does not have access to the symmetric key to decrypt the audio file as the key is protected by public key encryption.
At a later time 904, the media control platform 608 restarts, According to one embodiment, upon restarting, the media control platform 608 checks the local disk and detects recordings in the disk. The media control platform 608 packages the audio blocks 908 a, 908 b into a partial encrypted audio file 910, and posts the file to the mass storage device 624. In addition, the media control platform 608 submits the recording metadata and the encrypted session key to the call recording API of the web server 614. Once the media control platform 608 submits the encrypted audio and full metadata to the call recording API of the web server 614, the temporary files are removed from disk. According to one embodiment, the audio in the partial audio file is associated with a timestamp so that, upon retrieval, the partial audio file may be played in the correct order relative to other audio recordings that may have been written to the mass storage device by other media control platforms (e.g. the second media platform 800 that takes over after failure of the media control platform 608), for the same call.
According to another embodiment, the second media control platform 800 is active at the same time as media control platform 608. Both media control platforms 608, 800, receive media data exchanged between parties A and B 650, 652, and both write the media data into their local disks as temporary data until the data is posted to the corresponding storage devices 624, 634. The media control platform 608, however, acts as a primary source of control. According to one embodiment, the primary media control platform 608 is responsible for posting the data temporarily stored in its local disk, to the corresponding storage devices 624, 634. The primary media control platform 608 (or another component, such as, for example, the web server 614) transmits a message to the second media control platform 800 after the posting is complete, to prompt the second media control platform to remove the no longer needed temporary files, from disk. According to this embodiment, if the primary media control platform 608 fails, the second media control platform may be selected by the resource manager to continue the recording for a particular call. Because the temporary files resident in the primary media control platform also reside in the second media control platform, there may be no need to execute the process discussed with respect to FIG. 15, for recovering a recording portion from a failed media control platform, after the media control platform is restored.
As discussed above, certain tenants (e.g. contact centers providing banking services) may want call recordings to be encrypted. As discussed above, one or more session key(s) may be used to encrypt the audio recordings for a tenant. The session keys may be protected via any public key cryptography mechanism known in the art. According to one embodiment, a public-key cryptography system (PKCS), e.g. PKCS#7, is utilized. Other types of public key infrastructure (PKI) may also be used, such as for example PGP (pretty good privacy) mechanism.
According to one embodiment, the key management server 629 (FIG. 12) deployed by a tenant provides manages public key certificates for the tenant for binding a public key with the tenant. In this regard, the tenant administrator accesses the user interface provided by the key management server for uploading public encryption keys for each certificate. Multiple certificates may be maintained for each tenant.
According to one embodiment, the key management system provides the tenant's public key certificate to the web server 614 for storing in the IVR profile for the tenant. When the resource manager 610 forwards a recording request to the media control platform 608, the resource manager provides a database identifier of the IVR profile for the tenant for whom the request is provided, and the media control platform 608 retrieves the public encryption key from the IVR profile for performing the encryption of the session key. According to one embodiment, if the tenant does not require encryption, the certificate is not configured in the IVR profile. The media control platform does not encrypt an audio recording if the certificate is not configured for a tenant.
According to one embodiment, the key management server 629 is configured for public key rotation for a particular tenant. In this regard, when the web server 614 receives the encrypted symmetric session key from the media control platform 608, the key management system 629 may update the public key that was used for the encrypting with a new public encryption key. The newly encrypted session key may then be stored in the call record for the call recording. The rotation of the public encryption key may be done in batch for a plurality of call recordings. The updating of the public key without updating the session key avoids having to re-encrypt the audio data hosted in the mass storage device 624, avoiding costs associated with fetching the data from the mass storage device, re-encrypting the data, and then posting back to the mass storage device.
According to one embodiment, the key management system 629 provides a user interface for decryption and playback of encrypted audio files by an authorized user. In this regard, the user interface is invoked to select a particular audio recording, and the URI of the selected audio recording is passed to the web server 614 for fetching the encryption session key and the encrypted audio data, and packaging the two components as, for example, a single PKCS#7 component that is transmitted to the key management system 629. The key management system is configured to decrypt the content and return the audio to the user via, for example HTTPS (Hypertext Transfer Protocol), or other secure communication protocol.
The call metadata further includes an “events” structure 1104 with an array of events 1106 a-1106 c. With respect to one exemplary event 1106 a, the event includes a timestamp 1108 in which the event occurred for identifying the portion of the voice recording associated with the event. The event data in the example further identifies a DN 1110 of the agent involved in the event, and an event descriptor 1112 indicating that a connection was made with the DN. Other events may include, for example, a party joining the call, a party being disconnected to the call, and the like.
FIG. 18 is a conceptual layout diagram of a call record 1800 displayed by a client playback application executed, for example, by a user interface in the key management server 629 according to one embodiment of the invention. According to one embodiment, the call record 1800 displays the array of events 1106 a-1106 c stored in the events structure 1104 of FIG. 17.
According to one embodiment, tags may be stored as part of the call recording metadata as an event parameter, and displayed under a “call tags” field 1802 when the call record 1800 is displayed. The tags may be used to navigate to a specific point in the recording, much like a timestamp 1108 associated with an event. In this manner, a supervisor may fast forward to the interesting part of the recorded conversation, such as, for example when the conversation switched from credit card to checking account and agent tagged the call as PERSONAL_CHECKING. The tags may be generated based on manual input from the contact center agent. For example, the agent device may provide various tag icons that the agent may select depending on a particular subject that was discussed at a particular point in time, customer sentiment (e.g. angry customer which generates an ANGRY_CUSTOMER tag), and any other information about the conversation. The tags may also be generated automatically, for example, based on analysis of customer tone of voice, and the like. In another example, identification of a particular department to which a call is transferred may cause the automatic generating of a call tag.
According to one embodiment, selection of an event marked by a particular call tag causes navigating to the portion of the audio associated with the timestamp of the call tag for playing the audio. The event may be highlighted as the recording plays.
According to one embodiment, a call may be transferred from one SIP server which may be located in one location, to another SIP server which may be located in another location, such as, for example, when a call is transferred from one department to another. According to one embodiment, each SIP server 612 is configured to store call event data in a separate ICON database 630. It is desirable to query from the multiple ICON databases in order to track call events associated with a particular call across multiple SIP servers.
According to one embodiment, a call uuid generated by each SIP server for the segment of the call handled by the server is associated with a separate call recording metadata. According to one embodiment, the call recording metadata may be linked to other call recording metadata via, for example, “next” and “previous” properties. The “next” property may be a link (e.g. URI) to a next call metadata record generated when the call is transferred by a current SIP server to a next SIP server, while the “previous” property may be a link to a previous call metadata record generated by a previous SIP server before the call is transferred to the current SIP server.
The call recording metadata 2000 for the first segment of the call includes a “next” link 2014 including the call uuid of the next segment of the call. The “next” link thus allows the retrieval of the call recording metadata 2002 generated for the second segment of the call. Similarly, the call recording metadata 2002 includes a “previous” link 2016 including the call uuid of the previous segment of the call. The “previous” link thus allows the retrieval of the call recording metadata 2000 generated for the first segment of the call. A playback application may thus follow the links in the call metadata records for tracking call events associated with multiple call segments handled by different SIP servers.
establishing, via a processor, in a first geographic location, a communication session between first and second communication devices;
determining, by the processor, that media exchanged during the media session is to be recorded;
identifying, by the processor, a second geographic location associated with a resource involved in the media session, wherein the resource is selected from a group consisting of the second communication device, route point, a media gateway, and a trunk transporting an inbound call from the first communication device;
identifying, by the processor, a media controller associated with the second geographic location, wherein a media path between the first and second communication devices is bridged by the media controller;
initiating, by the processor during the communication session, replication of the media exchanged during the communication session at the second geographic location to generate replicated media; and
initiating, by the processor, transmission of the replicated media from the media controller at the second geographic location to a recording server located remotely with respect to the media controller.
2. The method of claim 1, wherein the second geographic location is selected from one of multiple sites based on a configured order of preference of selecting the one of multiple sites for recording media of the communication session between the first and second communication devices.
3. The method of claim 1, wherein the resource is identified via a directory number.
4. The method of claim 3, wherein the identifying of the second geographic location includes:
identifying the directory number of the resource;
determining whether the directory number is tagged with a geographic location; and
retrieving the geographic location tagged to the directory number.
5. The method of claim 1, wherein the communication session is an Internet telephony session, and the media is voice media.
6. The method of claim 1, wherein the determining that the media exchanged during the media session is to be recorded is based on a directory number involved in the media session.
7. The method of claim 1, wherein a plurality of resources are involved in the media session, wherein the identifying the second geographic location includes selecting a geographic location associated to one of the plurality of resources based on an order of preference preset for the plurality of resources.
transmitting by the media controller over a second media path from the media controller to a recording server, a copy of the media exchanged during the media session.
9. The method of claim 8, wherein the recording server is located in the first geographic location or second geographic location.
10. The method of claim 1, wherein the first communication device is located in the second geographic region, wherein a portion of the media path between the media controller and the first communication device traverses a local network, and a portion of the media path between the media controller and the second communication device traverses a wide area network.
11. A system for recording media for a contact center comprising:
a processor in a first geographic location; and
establish a communication session between first and second communication devices;
determine that media exchanged during the media session is to be recorded;
identify a second geographic location associated with a resource involved in the media session, wherein the resource is selected from a group consisting of the second communication device, route point, a media gateway, and a trunk transporting an inbound call from the first communication device;
identify a media controller associated with the second geographic location, wherein a media path between the first and second communication devices is bridged by the media controller;
initiate, during the communication session, replication of the media exchanged during the communication session at the second geographic location to generate replicated media; and
initiate transmission of the replicated media from the media controller at the second geographic location to a recording server located remotely with respect to the media controller.
12. The system of claim 11, wherein the second geographic location is selected from one of multiple sites based on a configured order of preference of selecting the one of multiple sites for recording media of the communication session between the first and second communication devices.
13. The system of claim 11, wherein the resource is identified via a directory number.
14. The system of claim 13, wherein the program instructions that cause the processor to identify the second geographic location further causes the processor to:
identify the directory number of the resource;
determine whether the directory number is tagged with a geographic location; and
retrieve the geographic location tagged to the directory number.
15. The system of claim 11, wherein the communication session is an Internet telephony session, and the media is voice media.
16. The system of claim 11, wherein the program instructions that cause the processor to determine that the media exchanged during the media session is to be recorded are based on a directory number involved in the media session.
17. The system of claim 11, wherein a plurality of resources are involved in the media session, wherein the program instructions that cause the processor to identify the second geographic location further cause the processor to select a geographic location associated to one of the plurality of resources based on an order of preference preset for the plurality of resources.
18. The system of claim 11, wherein the media controller is configured to:
bridge a media path between the first and second communication devices;
replicate the media exchanged in the media path;
encrypt the media via a first encryption key for storing the encrypted media in a data storage device; and
encrypt the first encryption key via a second encryption key for storing the encrypted first encryption key as metadata for the encrypted media.
19. The system of claim 11, wherein the communication session is for conducting a telephony call, wherein the instructions further cause the processor to:
identify the media controller currently assigned to the telephony call between the first and second communication devices, the media controller bridging a first media path between the first and second communication devices and recording, into a storage device, media exchanged in the first media path during the telephony call;
detect failure of the media controller during the telephony call, wherein the failure of the media controller tears down the first media path;
in response to detecting the failure, bridge a second media path between the first and second communication devices until a second media controller is identified; and
20. The system of claim 11, wherein the media session is for conducting a telephony call, the system further comprising:
US15/723,019 2013-03-15 2017-10-02 System and method for geo-location based media recording for a contact center Active US10063693B2 (en)
US14/015,974 US9781253B2 (en) 2013-03-15 2013-08-30 System and method for geo-location based media recording for a contact center
US15/723,019 US10063693B2 (en) 2013-03-15 2017-10-02 System and method for geo-location based media recording for a contact center
US14/015,974 Continuation US9781253B2 (en) 2013-03-15 2013-08-30 System and method for geo-location based media recording for a contact center
US20180048758A1 US20180048758A1 (en) 2018-02-15
US10063693B2 true US10063693B2 (en) 2018-08-28
KR20040048352A (en) 2002-11-29 2004-06-09 가부시끼가이샤 도시바 Content management method, recording and/or reproducing apparatus, and recording medium
KR20070112115A (en) 2005-01-28 2007-11-22 가부시키가이샤 오크 죠호 시스템 File encryption/decryption method, device, program, and computer-readable recording medium containing the program
US20090010277A1 (en) 2007-07-03 2009-01-08 Eran Halbraich Method and system for selecting a recording route in a multi-media recording environment
US20170251104A9 (en) 2013-03-15 2017-08-31 Genesys Telecommunications Laboratories, Inc. Network recording and speech analytics system and method
Australian Government Examination Report No. 2 for Application No. 2014233351, dated May 5, 2017, 4 pages.
Canadian Intellectual Property Office Action for Application No. 2,917,293, dated Jan. 11, 2018, 4 pages.
Canadian Office Action and Examination Search Report for Application No. 2,917,293, dated Jan. 18, 2017, 3 pages.
Chinese Patent Office action with English Translation for Application No. 201480028553.6, dated Apr. 6, 2017, 15 pages.
International Preliminary Report on Patentability and Written Opinion of the International Searching Authority for PCT/US2014/029857, dated Sep. 24, 2015, 33 pages.
International Search Report for PCT/US2014/029857, dated Oct. 10, 2014, 4 pages.
Korean Intellectual Property Office Action with English Translation for Application No. 10-2015-7029895, dated Feb. 20, 2017, 12 pages.
Korean Notice of Allowance for Application No. 10-2015-7029895, dated Nov. 7, 2017, 6 pages.
Korean Patent Office Action with English Translation for Application No. 10-2018-7003029, dated Apr. 16, 2018, 11 pages.
CN1852127B (en) 2010-06-23 System and method for providing hotline and preemption features using presence and preference information
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LUM, HENRY;FILONOV, VLADIMIR;CULBERT, JEFFREY;AND OTHERS;SIGNING DATES FROM 20141125 TO 20141223;REEL/FRAME:044512/0494