IP Library Granted Patent US 8,108,543
Granted Patent B2
US 8,108,543 · App. 10/124,181 · Granted Jan 31, 2012

Retrieving data from a server

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 8,108,543
App. No.
10/124,181
Granted
Jan 31, 2012
Kind
B2
Abstract

A system includes a server and a controller embedded in a device. Both the server and the embedded controller are capable of communicating over a computer network. The embedded controller sends a command to the server over the computer network that identifies an instance of the device. In response, the server identifies the instance of the device based on the command, retrieves data that is specific to the instance of the device, and sends the data to the embedded controller over the computer network.

Claims (54)

1. A method performed by a controller associated with an instance of a device for retrieving data from a server, comprising:

polling the server by sending a message to the server periodically, the message containing information that distinguishes the instance of the device from all other instances of the device for which the server stores data, the information comprising non-address information; and

receiving, from the server and in response to the message, data that is specific to the instance of the device, the data that is specific to the instance of the device comprising eXtensible Markup Language (XML) script containing plural Simple Object Access Protocol (SOAP) commands, the XML script defining a process to be executed by the controller, the process defining timing and sequence of execution of the plural SOAP commands and handling passage of variables among the plural SOAP commands.

2. The method of claim 1 , wherein the message includes an operational parameter for the device and the data that is specific to the instance of the device comprises an updated value for the operational parameter.

3. The method of claim 2 , wherein the message includes plural operational parameters for the device and the data that is specific to the instance of the device comprises updated values that differ from current values of the operational parameters.

4. The method of claim 1 , wherein the data that is specific to the instance of the device comprises a configuration file for the device.

5. The method of claim 1 , wherein the message identifies the instance of the device by a device type and/or one or more of a serial number and a universal unique identifier.

6. The method of claim 1 , wherein the data that is specific to the instance of the device is received at the device via the Hypertext Transfer Protocol.

7. The method of claim 1 , wherein the message includes a first operational parameter for the device and the data that is specific to the instance of the device includes a second operational parameter that is unrelated to the first operational parameter.

8. The method of claim 1 , wherein:

the data that is specific to the instance of the device is encrypted; and

the method further comprises decrypting the data that is specific to the instance of the device.

9. The method of claim 1 , wherein:

the data that is specific to the instance of the device contains a digital signature; and

the method further comprises authenticating the digital signature.

10. A system comprising:

a controller associated with an instance of a device, the controller being capable of communicating over a computer network; and

a server that is capable of communicating over the computer network;

wherein the controller is configured to send a message to the server over the computer network that identifies the instance of the device, the message containing information that distinguishes the instance of the device from all other instances of the device for which the server stores data, the information comprising non-address information; and

wherein the server is configured to (i) identify the instance of the device based on the message, (ii) retrieve data that is specific to the instance of the device, the data that is specific to the instance of the device comprising eXtensible Markup Language (XML) script containing plural Simple Object Access Protocol (SOAP) commands, the XML script defining a process to be executed by the controller, the process defining timing and sequence of execution of the plural SOAP commands and handling passage of variables among the plural SOAP commands, and (iii) send the data that is specific to the instance of the device to the controller over the computer network.

11. The system of claim 10 , wherein the controller is not remotely-addressable from the computer network.

12. The system of claim 10 , wherein the computer network comprises the Internet.

13. One or more non-transitory machine-readable media storing a computer program, the computer program being executable by a controller associated with a device to retrieve data from a server, the computer program comprising instructions that cause the controller to:

poll the server by sending a message to the server periodically, the message containing information that distinguishes the instance of the device from all other instances of the device for which the server stores data, the information comprising non-address information; and

receive, from the server and in response to the message, data that is specific to the instance of the device, the data that is specific to the instance of the device comprising eXtensible Markup Language (XML) script containing plural Simple Object Access Protocol (SOAP) commands, the XML script defining a process to be executed by the controller, the process defining timing and sequence of execution of the plural SOAP commands and handling passage of variables among the plural SOAP commands.

14. The one or more non-transitory machine-readable media of claim 13 , wherein the message includes an operational parameter for the device and the data that is specific to the instance of the device comprises an updated value for the operational parameter.

15. The one or more non-transitory machine-readable media of claim 14 , wherein the message includes plural operational parameters for the device and the data that is specific to the instance of the device comprises updated values that differ from current values of the operational parameters.

16. The one or more non-transitory machine-readable media of claim 13 , wherein the data that is specific to the instance of the device comprises a configuration file for the device.

17. The one or more non-transitory machine-readable media of claim 13 , wherein the message identifies the instance of the device by a device type and/or one or more of a serial number and a universal unique identifier.

18. The one or more non-transitory machine-readable media of claim 13 , wherein the data is received at the device via the Hypertext Transfer Protocol.

19. The one or more non-transitory machine-readable media of claim 13 , wherein the message includes a first operational parameter for the device and the data includes a second operational parameter that is unrelated to the first operational parameter.

20. The one or more non-transitory machine-readable media of claim 13 , wherein:

the data that is specific to the instance of the device is encrypted; and

the computer program further comprises instructions that cause the controller to decrypt the data that is specific to the instance of the device.

21. The one or more non-transitory machine-readable media of claim 13 , wherein:

the data that is specific to the instance of the device contains a digital signature; and

the computer program further comprises instructions that cause the controller to authenticate the digital signature.

22. An apparatus, associated with an instance of a device, for retrieving data from a server, comprising:

memory which stores executable instructions; and

a controller which executes the instructions to:

poll the server by sending a message to the server periodically, the message containing information that distinguishes the instance of the device from all other instances of the device for which the server stores data, the information comprising non-address information; and

receive, from the server and in response to the message, data that is specific to the instance of the device, the data that is specific to the instance of the device comprising eXtensible Markup Language (XML) script containing plural Simple Object Access Protocol (SOAP) commands, the XML script defining a process to be executed by the controller, the process defining timing and sequence of execution of the plural SOAP commands and handling passage of variables among the plural SOAP commands.

23. The apparatus of claim 22 , wherein the message includes an operational parameter for the device and the data that is specific to the instance of the device comprises an updated value for the operational parameter.

24. The apparatus of claim 23 , wherein the message includes plural operational parameters for the device and the data that is specific to the instance of the device comprises updated values that differ from current values of the operational parameters.

25. The apparatus of claim 22 , wherein the data that is specific to the instance of the device comprises a configuration file for the device.

26. The apparatus of claim 22 , wherein the message identifies the instance of the device by a device type and/or one or more of a serial number and a universal unique identifier.

27. The apparatus of claim 22 , wherein the data is received at the apparatus via the Hypertext Transfer Protocol.

28. The apparatus of claim 22 , wherein the message includes a first operational parameter for the device and the data that is specific to the instance of the device includes a second operational parameter that is unrelated to the first operational parameter.

29. The apparatus of claim 22 , wherein:

the data that is specific to the instance of the device is encrypted; and

the controller executes instructions to decrypt the data that is specific to the instance of the device.

30. The apparatus of claim 22 , wherein:

the data that is specific to the instance of the device contains a digital signature; and

the controller executes instructions to authenticate the digital signature.

Assignments (17)
SECURITY INTEREST Recorded Sep 13, 2018
From: PTC INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 047480/0888 →
SECURITY INTEREST Recorded Nov 4, 2015
From: PTC INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 037046/0930 →
MERGER Recorded Sep 2, 2015
From: AXEDA CORPORATION
To: PTC INC.
Reel/Frame 036478/0694 →
RELEASE OF SECURITY INTEREST Recorded Aug 25, 2014
From: COMERICA BANK
To: AXEDA CORPORATION
Reel/Frame 033608/0704 →
SECURITY AGREEMENT Recorded Jul 24, 2012
From: AXEDA CORPORATION
To: COMERICA BANK
Reel/Frame 028629/0538 →
RELEASE OF SECURITY INTEREST Recorded Jul 17, 2012
From: MMV CAPITAL PARTNERS INC.
To: AXEDA CORPORATION
Reel/Frame 028563/0446 →
RELEASE OF SECURITY INTEREST Recorded Jul 16, 2012
From: SILICON VALLEY BANK
To: AXEDA CORPORATION
Reel/Frame 028558/0744 →
SECURITY AGREEMENT Recorded Oct 12, 2009
From: AXEDA CORPORATION
To: MMV FINANCE INC.
Reel/Frame 023355/0619 →
SECURITY AGREEMENT Recorded Oct 24, 2006
From: AXEDA CORPORATION
To: SILICON VALLEY BANK
Reel/Frame 018420/0790 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2005
From: AXEDA SYSTEMS OPERATING COMPANY, INC.
To: AXEDA CORPORATION
Reel/Frame 016875/0827 →
RELEASE OF SECURITY INTEREST IN TRADEMARKS AND PATENTS Recorded Dec 8, 2005
From: LAURUS MATER FUND, LTD.
To: AXEDA SYSTEMS OPERATING COMPANY, INC.; AXEDA IP, INC.; AXEDA SYSTEMS INC.
Reel/Frame 016871/0043 →
SECURITY AGREEMENT Recorded Sep 19, 2005
From: AXEDA SYSTEMS OPERATING COMPANY, INC.
To: LAURUS MASTER FUND, LTD.
Reel/Frame 016551/0813 →
GRANT OF SECURITY INTEREST IN PATENTS AND TRADEMARKS Recorded Jul 19, 2005
From: AXEDA SYSTEMS, INC.; AXEDA SYSTEMS OPERATING COMPANY, INC.; AXEDA IP, INC.
To: JMI EQUITY FUND V, L.P.; JMI EQUITY FUND V (AI), L.P.
Reel/Frame 016274/0846 →
CHANGE OF NAME Recorded Jan 28, 2005
From: EMATION, INC.
To: AXEDA SYSTEMS OPERATING COMPANY, INC.
Reel/Frame 015634/0411 →
RELEASE OF SECURITY INTEREST Recorded Oct 25, 2004
From: SILICON VALLEY BANK
To: AXEDA SYSTEMS OPERATING COMPANY
Reel/Frame 015916/0045 →
SECURITY INTEREST Recorded Jul 22, 2003
From: AXEDA SYSTEMS OPERATING COMPANY
To: SILICON VALLEY BANK
Reel/Frame 014300/0164 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2002
From: HANSEN, JAMES R.
To: AXEDA SYSTEMS OPERATING COMPANY, INC.
Reel/Frame 012825/0065 →