# US 9,436,414 B2 · Managing a printing device behind a firewall

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,436,414 B2
- Document ID: US9436414B2
- Status: Granted
- Kind: B2
- Application number: 12/776,372
- Filed: 2010-05-08
- Published: 2011-11-10
- Granted: 2016-09-06
- Earliest claimed: 2010-05-08
- Assignees: Hewlett-Packard Development Company, L.P.
- Applicants: Harish B Kamath; Hean Koon Koay; Pai K Atul
- Inventors: Harish B Kamath; Hean Koon Koay; Pai K Atul
- Web page: https://patentgrep.com/patent/US9436414B2

## CPC

- G06F 3/1203: {Improving or facilitating administration, e.g. print management}
- G06F 3/1231: {Device related settings, e.g. IP address, Name, Identification}
- G06F 3/1287: {via internet}
- G06F 21/608: {Secure printing}
- H04L 63/029: {Firewall traversal, e.g. tunnelling or, creating pinholes}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

One embodiment is method that receives, at a computer, a request to manage a printing device located behind a firewall that blocks the request. The request is executed with an agent authorized to communicate through the firewall and with the computer and the printing device.

## Claims

### Claim 1

A method executed by a computer in a network, comprising:
receiving, at the computer and over the network, a request to manage a parameter of a printing device registered with the network and located behind a firewall that blocks the request; and
executing the request to manage the parameter with an agent outside the firewall authorized to communicate with the computer, and authorized to communicate through the firewall with the printing device.

### Claim 2 (depends on 1)

The method of claim 1 further comprising, communicating with the agent using REST API (representational state transfer application program interface) calls.

### Claim 3 (depends on 1)

The method of claim 1 further comprising:
storing the request at a virtual device located in the network and outside of the firewall;
retrieving, with the agent, the request at the virtual device.

### Claim 4 (depends on 1)

The method of claim 1 further comprising, periodically polling, by the agent, the computer for the request.

### Claim 5 (depends on 1)

The method of claim 1 further comprising:
receiving the request that is a change to a default value for the printing device;
storing the change to the default value as being uncommitted in a logical device within the computer;
reporting the change to the default value to the printing device over a response channel using REST API (representational state transfer application program interface);
committing the change to the default value to the logical device after executing the change to the default value at the printing device.

### Claim 6 (depends on 1)

The method of claim 1 further comprising:
receiving the request over an internet from a remote handheld electronic device in communication with the computer;
notifying the remote handheld electronic device after executing the parameter at the printing device.

### Claim 7 (depends on 1)

The method of claim 1 further comprising, assigning component state values to the printing device from a remote portable electronic device located outside of the firewall.

### Claim 8

A tangible non-transitory computer readable storage medium having instructions for causing a server in a network to execute a method, comprising:
receiving, from an agent of a printing device, a post providing information about a status of the printing device that is registered with the network and located behind a firewall outside of the network;
storing the information in a virtual device located in the server; and
transmitting, over an internet, the information to an electronic device outside of the network and authorized to print to the printing device, the transmitting performed in response to the electronic device logging into the network.

### Claim 9 (depends on 8)

The tangible computer readable storage medium of claim 8 further comprising, communicating with the printing device over a response channel using REST API (representational state transfer application program interface).

### Claim 10 (depends on 8)

The tangible computer readable storage medium of claim 8, wherein the information is printing device defaults of the printing device and is received at the server in bitmap format.

### Claim 11 (depends on 8)

The tangible computer readable storage medium of claim 8 further comprising,
receiving, from the electronic device, a GET request requesting a status of a print job of the printing device;
providing the GET request to a GET agent when the GET agent communicates with the network.

### Claim 12

A computer, comprising:
a memory storing an algorithm; and
a processor connected to the memory to execute the algorithm that:
receives, from an agent outside a firewall that prevents communication from the computer to the printing device, a post providing information about a printing device that is located behind the firewall, the agent authorized to communicate with the printing device through the firewall; and
transmits, over a network, the information to an electronic device authorized to print to the printing device.

### Claim 13 (depends on 12)

The computer of claim 12, wherein communication with the printing device occurs through the agent with REST API (representational state transfer application program interface) calls.

### Claim 14 (depends on 12)

The computer of claim 12 further comprising, a virtual device that stores the information while the printing device is offline from the computer.

### Claim 15 (depends on 12)

The computer of claim 12, wherein the agent is a POST agent that retrieves a state of the printing device and automatically posts the state to the computer.

### Claim 16 (depends on 12)

The computer of claim 12, wherein the processor further executes the algorithm that reports the information to the electronic device when the electronic device logs in to the network.

### Claim 17 (depends on 12)

The computer of claim 12, wherein the computer communicates with the printing device with both a GET agent and a POST agent.

### Claim 18 (depends on 12)

The computer of claim 12 wherein the processor further executes the algorithm that:
receives, from the electronic device, a request to change a default printing parameter of the printing device;
provides the request to a GET agent when the GET agent initiates communication with the computer.

### Claim 19 (depends on 12)

The computer of claim 12, wherein the firewall blocks transmissions originating from the computer and the electronic device, and the agent is authorized to communicate through the firewall and with the computer.

### Claim 20 (depends on 3)

The method of claim 3, wherein the virtual device is a separate network element from the computer.
