IP Library Granted Patent US 8,055,758
Granted Patent B2
US 8,055,758 · App. 11/503,638 · Granted Nov 8, 2011

Reporting the state of an apparatus to a remote computer

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,055,758
App. No.
11/503,638
Granted
Nov 8, 2011
Kind
B2
Abstract

The state of an apparatus is reported to a remote computer using an embedded device in the apparatus. The embedded device detects the state, generates a message that reports the state using a self-describing computer language, and sends the message to the remote computer. The remote computer receives the message and extracts the state of the embedded device from the message.

Claims (49)

1. A method performed by a device embedded in an apparatus to report a state of the apparatus to a remote computer, the method comprising:

detecting the state of the apparatus;

generating a message that reports the state of the apparatus to the remote computer, the message comprising a HyperText Transfer Protocol (HTTP) command, the message using eXtensible Markup Language (XML) to report the state, and the message containing a code that is unique to the device or apparatus, wherein generating is performed periodically or in response to a deviation in the state; and

sending the message comprising the HTTP command to the remote computer, the HTTP command comprising a command that is configured to report the state of the apparatus using XML;

wherein the device is on an internal network and the remote computer is on an external network that is separate from the internal network, and wherein, as a result, the remote computer cannot communicate to the device to obtain the state of the apparatus; and

wherein the state of the apparatus comprises values of two or more variables associated with the apparatus, one or more of the variables being flagged if one or more of the variables corresponds to an error condition associated with the apparatus.

2. The method of claim 1 , wherein detecting the state comprises reading variables periodically from storage locations associated with the apparatus.

3. The method of claim 2 , wherein the storage locations comprise register locations corresponding to hardware associated with the apparatus.

4. The method of claim 1 , further comprising determining the deviation in the state.

5. The method of claim 4 , wherein determining comprises comparing the state to a previous state of the apparatus.

6. The method of claim 1 , wherein XML code in the message is generated by inserting one or more variables into a predefined template.

7. The method of claim 1 , wherein the message includes past states of the apparatus.

8. The method of claim 1 , wherein the HTTP command comprises a POST command.

9. The method of claim 1 , wherein the message comprises one or more of the following: data identifying a type of the device, a common name for the device, a manufacturer of the device, a model name of the device, a model number of the device, a serial number of the device, and a universal unique identifier for the device.

10. The method of claim 1 , wherein the state comprises both an error condition and a measurement associated with the apparatus that is not an error condition.

11. The method of claim 1 , wherein the message comprises an error condition history, the error condition history indicating error conditions in the apparatus over time.

12. The method of claim 1 , further comprising queuing the message in the device prior to sending the message, the message being sent following a failure condition in a system comprising the device and/or the apparatus.

13. One or more machine-readable media comprising instructions for execution by a device embedded in an apparatus to report a state of the apparatus to a remote computer, the instructions for causing the device to:

detect the state of the apparatus;

generate a message that reports the state of the apparatus to the remote computer, the message comprising a HyperText Transfer Protocol (HTTP) command, the message using eXtensible Markup Language (XML) to report the state, the message containing a code that is unique to the device or apparatus, wherein generating is performed periodically or in response to a deviation in the state; and

send the message comprising the HTTP command to the remote computer, the HTTP command comprising a command that is configured to report the state of the apparatus using XML;

wherein the device is on an internal network and the remote computer is on an external network that is separate from the internal network, and wherein, as a result, the remote computer cannot communicate to the device to obtain the state of the apparatus; and

wherein the state of the apparatus comprises values of two or more variables associated with the apparatus, one or more of the variables being flagged if one or more of the variables corresponds to an error condition associated with the apparatus.

14. The one or more Non-transitory machine-readable media of claim 13 , wherein detecting the state comprises reading variables periodically from storage locations associated with the apparatus.

15. The one or more Non-transitory machine-readable media of claim 14 , wherein the storage locations comprise register locations corresponding to hardware associated with the apparatus.

16. The one or more Non-transitory machine-readable media of claim 13 , further comprising instructions that cause the device to:

determine the deviation in the state.

17. The one or more Non-transitory machine-readable media of claim 16 , wherein determining comprises comparing the state to a previous state of the apparatus.

18. The one or more Non-transitory machine-readable media of claim 13 , wherein XML code in the message is generated by inserting one or more variables into a predefined template.

19. The one or more Non-transitory machine-readable media of claim 13 , wherein the HTTP command comprises a POST command.

20. The one or more Non-transitory machine-readable media of claim 13 , wherein the message comprises one or more of the following: data identifying a type of the device, a common name for the device, a manufacturer of the device, a model name of the device, a model number of the device, a serial number of the device, and a universal unique identifier for the device.

21. The one or more Non-transitory machine-readable media of claim 13 , wherein the state comprises both an error condition and a measurement associated with the apparatus that is not an error condition.

22. The one or more machine-readable media of claim 13 , wherein the message comprises an error condition history, the error condition history indicating error conditions in the apparatus over time.

23. The one or more machine-readable media of claim 13 , further comprising instructions for causing the device to queue the message in the device prior to sending the message, the message being sent following a failure condition in a system comprising the device and/or the apparatus.

24. A device embedded in an apparatus for reporting a state of the apparatus to a remote computer, the device comprising circuitry configured to:

detect the state of the apparatus;

generate a message that reports the state of the apparatus to the remote computer, the message comprising a HyperText Transfer Protocol (HTTP) command, the message using eXtensible Markup Language (XML) to report the state, and the message containing a code that is unique to the device or apparatus, wherein generating is performed periodically or in response to a deviation in the state; and

send the message comprising the HTTP command to the remote computer, the HTTP command comprising a command that is configured to report the state of the apparatus using XML;

wherein the device is on an internal network and the remote computer is on an external network that is separate from the internal network, and wherein, as a result, the remote computer cannot communicate to the device to obtain the state of the apparatus; and

wherein the state of the apparatus comprises values of two or more variables associated with the apparatus, one or more of the variables being flagged if one or more of the variables corresponds to an error condition associated with the apparatus.

25. The device of claim 24 , wherein detecting the state comprises reading variables periodically from storage locations associated with the apparatus;

wherein the circuitry is configured to determine if the state of the apparatus has changed;

wherein determining if the state of the apparatus has changed comprises comparing the state to a previous state of the apparatus.

26. The device of claim 24 , wherein XML code in the message is generated by inserting one or more variables into a predefined template;

wherein the circuitry comprises (i) memory which stores executable instructions and one or more processing devices configured to execute the instructions, or one or more of an application-specific integrated circuit and a programmable gate array.

27. The device of claim 24 , wherein the HTTP command comprises a POST command; and

wherein the message comprises one or more of the following: data identifying a type of the device, a common name for the device, a manufacturer of the device, a model name of the device, a model number of the device, a serial number of the device, and a universal unique identifier for the device.

28. The device of claim 24 , wherein the message comprises an error condition history, the error condition history indicating error conditions in the apparatus over time.

29. The device of claim 24 , further comprising queuing the message in the device prior to sending the message, the message being sent following a failure condition in a system comprising the device and/or the apparatus.

Assignments (13)
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE CITY PREVIOUSLY RECORDED AT REEL: 035736 FRAME: 0594. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Sep 30, 2015
From: AXEDA CORPORATION
To: PTC INC.
Reel/Frame 036724/0547 →
MERGER Recorded May 28, 2015
From: AXEDA CORPORATION
To: PTC INC.
Reel/Frame 035736/0594 →
RELEASE OF SECURITY INTEREST Recorded Aug 25, 2014
From: COMERICA BANK
To: AXEDA CORPORATION
Reel/Frame 033608/0704 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2014
From: AXEDA SYSTEMS OPERATING COMPANY INC.
To: AXEDA CORPORATION
Reel/Frame 032361/0253 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2014
From: HANSEN, JAMES R.
To: EMATION, INC.
Reel/Frame 032361/0167 →
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 →
NUNC PRO TUNC ASSIGNMENT Recorded Jul 8, 2010
From: EMATION, INC.
To: AXEDA SYSTEMS OPERATING COMPANY, INC.
Reel/Frame 024679/0181 →
SECURITY AGREEMENT Recorded Oct 12, 2009
From: AXEDA CORPORATION
To: MMV FINANCE INC.
Reel/Frame 023355/0619 →
SECURITY AGREEMENT Recorded Jan 24, 2008
From: AXEDA CORPORATION
To: SILICON VALLEY BANK
Reel/Frame 020403/0728 →