IP Library Granted Patent US 10,348,811
Granted Patent B2
US 10,348,811 · App. 15/816,847 · Granted Jul 9, 2019

Service to invoke companion applications

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,348,811
App. No.
15/816,847
Granted
Jul 9, 2019
Kind
B2
Abstract

A service to invoke a companion application or service is disclosed. In various embodiments, an indication to invoke a companion application is received in the context of a display page of a calling application. A service a call comprising a filtered set of data values derived from the display page is sent to an external service. A request associated with the companion application is received from the external service and used to invoke the companion application.

Claims (37)

1. A method, comprising:

receiving in a context of a display page of a calling application an indication to invoke a companion application;

determining based on the calling application a filtered set of data values to be sent to a remote service, wherein the filtered set of data values includes a filtered set of hypertext markup language (HTML) tags and corresponding data values, and configuration data associated with a uniform resource locator (URL) of the display page, wherein the corresponding data values include a state of the display page, wherein the filtered set of HTML tags are filtered from a set of HTML tags comprising the display page;

sending to the remote service a call comprising the filtered set of data values, wherein the remote service is configured to use the filtered set of data values to generate a request, wherein the request comprises a URL associated with the companion application;

receiving from the remote service the request with content useable by the calling application to invoke the companion application; and

invoking the companion application.

2. The method of claim 1 , wherein the indication comprises selection of a control displayed in connection with the display page.

3. The method of claim 2 , wherein the display page is displayed using a browser and the control is associated with a browser plug-in.

4. The method of claim 3 , wherein the browser plug-in is configured to send the call to the remote service in response to the indication.

5. The method of claim 3 , wherein the browser plug-in is configured to generate the filtered set of data values.

6. The method of claim 1 , wherein the display page is displayed by a browser and comprises HTML code.

7. The method of claim 6 , wherein the filtered set of HTML tags includes one or more tags associated with visibly displayed page elements and for each the corresponding data value comprises a visibly displayed data value associated with that tag.

8. The method of claim 1 , further comprising generating the filtered set of data values.

9. The method of claim 8 , wherein generating the filtered set of data values includes populating an array or other data structure with said data values.

10. The method of claim 8 , wherein generating the filtered set of data values comprises generating a string comprising said data values.

11. The method of claim 1 , wherein the remote service uses the filtered set of data values to determine one or more request parameters to be embodied in the request.

12. The method of claim 1 , wherein the request comprises a fully formatted hypertext transfer protocol (HTTP) request.

13. The method of claim 1 , wherein using the received request to invoke the companion application comprises using the request to open in a new window or tab a companion application display page of the companion application.

14. The method of claim 1 , wherein the filtered set of data values comprises a subset of display page tags of the display page and further comprising determining which display page tags are to be included in the subset.

15. The method of claim 1 , wherein the companion application comprises an application or service at a remote server.

16. A system, comprising:

a processor configured to:

receive in a context of a display page of a calling application an indication to invoke a companion application;

determine based on the calling application a filtered set of data values to be sent to a remote service, wherein the filtered set of data values includes a filtered set of hypertext markup language (HTML) tags and corresponding data values, and configuration data associated with a uniform resource locator (URL) of the display page, wherein the corresponding data values include a state of the display page, wherein the filtered set of HTML tags are filtered from a set of HTML tags comprising the display page;

send to the remote service a call comprising the filtered set of data values, wherein the remote service is configured to use the filtered set of data values to generate a request, wherein the request comprises a URL associated with the companion application;

receive from the remote service the request with content useable by the calling application to invoke the companion application; and

invoke the companion application; and

a memory coupled to the processor and configured to provide the processor with instructions.

17. The system of claim 16 , wherein the indication comprises selection of a control displayed in connection with the display page.

18. The system of claim 16 , wherein the display page is displayed by a browser and comprises HTML code.

19. The system of claim 16 , wherein the filtered set of HTML tags includes one or more tags associated with visibly displayed page elements and for each the corresponding data value comprises a visibly displayed data value associated with that tag.

20. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving in a context of a display page of a calling application an indication to invoke a companion application;

determining based on the calling application a filtered set of data values to be sent to a remote service, wherein the filtered set of data values includes a filtered set of hypertext markup language (HTML) tags and corresponding data values, and configuration data associated with a uniform resource locator (URL) of the display page, wherein the corresponding data values include a state of the display page, wherein the filtered set of HTML tags are filtered from a set of HTML tags comprising the display page;

sending to the remote service a call comprising the filtered set of data values, wherein the remote service is configured to use the filtered set of data values to generate a request, wherein the request comprises a URL associated with the companion application;

receiving from the remote service the request with content useable by the calling application to invoke the companion application; and

invoking the companion application.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045482/0131) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 061749/0924 →
RELEASE OF SECURITY INTEREST AT REEL 045482 FRAME 0395 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058298/0314 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 045482/0131 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Mar 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 045482/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2018
From: SMERALD, PETER D.; HASHEMIAN, GILDA R.; BOBLETT, HOWARD A.; HARDWICK, BENJAMIN W.; BRANUM, BRIAN H.; ODOM, JAMES R., JR.; DANG, PHI; SOMALINGAM, DINESH RAMVEL
To: EMC CORPORATION
Reel/Frame 044994/0949 →