IP Library Granted Patent US 10,958,535
Granted Patent B2
US 10,958,535 · App. 16/722,305 · Granted Mar 23, 2021

Methods and apparatus for interfacing with a phone system in an on-demand service environment

Inventors: Marco S. Casalaina (San Francisco, CA); Gautam Vasudev (San Francisco, CA); Rahul Kaw (Pleasanton, CA); Rachel Wang (Foster City, CA); Jason Aaron Ellis (Geneva, IL)
Assignee: salesforce.com, inc.
H04L41/22H04L51/36H04M7/0057H04L67/02H04L67/10H04L67/42H04M3/42323H04M7/0024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,958,535
App. No.
16/722,305
Granted
Mar 23, 2021
Kind
B2
Abstract

Disclosed are systems, apparatus, methods, and computer readable media for interfacing with a phone system in an on-demand service environment. In one embodiment, a client machine is in communication with a data provider and the phone system. The phone system is operated by a phone provider separate from the data provider. A message is received at the client machine from the phone system. The message includes information regarding a phone event in relation to a phone call. The phone event information is provided in a first part of a user interface in a web browser on the client machine. A second part of the user interface is capable of displaying information received at the client machine from the data provider. The first part of the user interface and the second part of the user interface are adapted to communicate with one another. For example, the first part of the user interface is adapted to send a message including the phone event information to the second part of the user interface.

Claims (41)

1. A non-transitory computer-readable medium for using application programming interfaces (APIs) to enable computer telephony integration (CTI), the non-transitory computer-readable medium storing computer-readable program code capable of being executed by one or more processors, the program code comprising instructions configurable to cause:

providing a first part and a second part of a user interface (UI) on a display device, the first part of the UI configured to provide interaction with media, the second part of the UI configured to provide engagement with one or more cloud services;

providing one or more APIs to allow communication between the first part of the UI and the second part of the UI;

exchanging between the first part of the UI and the second part of the UI, using the one or more APIs, items in response to inbound and/or outbound interaction requests, the items comprising configuration information, events, and data; and

presenting in the UI, based on the exchange of items using the one or more APIs, one or more pages configurable to provide performance of one or more of: creating an account, creating a contact, creating a lead, or creating an opportunity.

2. The non-transitory computer-readable medium of claim 1 , wherein an interaction request is performed using an event listener registered to listen for one or more triggered events.

3. The non-transitory computer-readable medium of claim 1 , wherein an interaction request is performed using a method with a callback function parameter.

4. The non-transitory computer-readable medium of claim 1 , further comprising:

providing a listener for a data update in the second part of the UI configured to provide the engagement with the one or more cloud services.

5. The non-transitory computer-readable medium of claim 4 , wherein the listener is configured to facilitate sending notifications about updates of contact information.

6. The non-transitory computer-readable medium of claim 4 , wherein the listener is configured to facilitate notifying the first part of the UI that actions have been completed.

7. The non-transitory computer-readable medium of claim 1 , wherein:

the first part of the UI is associated with a phone system having a first network domain, and

the second part of the UI is associated with a data system having a second network domain.

8. The non-transitory computer-readable medium of claim 1 , wherein the UI is implemented as a web browser.

9. An apparatus comprising:

a display; and

a processor configurable to cause:

providing a first part and a second part of a user interface (UI) on a display device, the first part of the UI configured to provide interaction with media, the second part of the UI configured to provide engagement with one or more cloud services,

providing one or more application programming interfaces (APIs) to allow communication between the first part of the UI and the second part of the UI,

exchanging between the first part of the UI and the second part of the UI, using the one or more APIs, items in response to inbound and/or outbound interaction requests, the items comprising configuration information, events, and data, and

presenting in the UI, based on the exchange of items using the one or more APIs, one or more pages configurable to provide performance of one or more of: creating an account, creating a contact, creating a lead, or creating an opportunity.

10. The apparatus of claim 9 , wherein an interaction request is performed using an event listener registered to listen for one or more triggered events.

11. The apparatus of claim 9 , wherein an interaction request is performed using a method with a callback function parameter.

12. The apparatus of claim 9 , the processor further configurable to cause:

providing a listener for a data update in the second part of the UI configured to provide the engagement with the one or more cloud services.

13. The apparatus of claim 12 , wherein the listener is configured to facilitate sending notifications about updates of contact information.

14. The apparatus of claim 12 , wherein the listener is configured to facilitate notifying the first part of the UI that actions have been completed.

15. The apparatus of claim 9 , wherein:

the first part of the UI is associated with a phone system having a first network domain, and

the second part of the UI is associated with a data system having a second network domain.

16. A method comprising:

providing a first part and a second part of a user interface (UI) on a display device, the first part of the UI configured to provide interaction with media, the second part of the UI configured to provide engagement with one or more cloud services;

providing one or more application programming interfaces (APIs) to allow communication between the first part of the UI and the second part of the UI;

exchanging between the first part of the UI and the second part of the UI, using the one or more APIs, items in response to inbound and/or outbound interaction requests, the items comprising configuration information, events, and data; and

presenting in the UI, based on the exchange of items using the one or more APIs, one or more pages configurable to provide performance of one or more of: creating an account, creating a contact, creating a lead, or creating an opportunity.

17. The method of claim 16 , wherein an interaction request is performed using an event listener registered to listen for one or more triggered events.

18. The method of claim 16 , further comprising:

providing a listener for a data update in the second part of the UI configured to provide the engagement with the one or more cloud services.

19. The method of claim 18 , wherein the listener is configured to facilitate sending notifications about updates of contact information.

20. The method of claim 18 , wherein the listener is configured to facilitate notifying the first part of the UI that actions have been completed.

Assignments (1)
CHANGE OF NAME Recorded Jan 27, 2025
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 070014/0841 →
Continuity (6)
Continuation 15213608 · Jul 19, 2016
Continuation 14216378 · Mar 17, 2014
Continuation 12878283 · Sep 9, 2010
Provisional Application 61346592 · May 20, 2010
Provisional Application 61332659 · May 7, 2010
Related Publication 20200236007A1 · Jul 23, 2020