Server and a method for communicating event messages from the server connected to a peripheral device and a client computer
First Claim
Patent Images
1. A method for communicating an event message from a server operably connected to at least one peripheral device and to at least one client via a network, the method comprising the steps of:
- the server sending a message to any available peripheral device;
the server receiving an event message from at least one peripheral device;
the server sending an error message to at least one peripheral device if a pending-acknowledgment queue is full;
the server locating a port number and a network address in a “
NETADDR=addr”
parameter contained within the event message string if a pending-acknowledgment queue is not full;
the server responding to an acknowledgment message from at least one client; and
, the server responding to an expired timeout.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for communicating an event message from a server connected to at least one peripheral device and at least one client via a network between a peripheral device and at least one client operably connected via a network. The method includes the server sending a message to any available peripheral device, responding to an event message from at least one peripheral device, responding to an acknowledgment message from at least one client, and responding to an expired timeout.
32 Citations
10 Claims
-
1. A method for communicating an event message from a server operably connected to at least one peripheral device and to at least one client via a network, the method comprising the steps of:
-
the server sending a message to any available peripheral device;
the server receiving an event message from at least one peripheral device;
the server sending an error message to at least one peripheral device if a pending-acknowledgment queue is full;
the server locating a port number and a network address in a “
NETADDR=addr”
parameter contained within the event message string if a pending-acknowledgment queue is not full;
the server responding to an acknowledgment message from at least one client; and
,the server responding to an expired timeout. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
the server enabling the client to send an add-event message to the peripheral devices via the network;
the client registering to receive event messages;
the client creating a network event message receiver;
the client adding a network address where event messages should be sent in a “
NETADDR=addr”
parameter contained within a request add event message; and
,the client sending a request add event message to at least one peripheral device.
-
-
3. The method according to claim 1 wherein said step of the server sending a message to any available at least one peripheral device further comprising the steps of:
-
the server sending an event notification support message for verification of at least one peripheral device supporting an event notification message;
the server sending a request to enable event notification messages if the peripheral device accepts the event notification support message; and
the server ignoring the available peripheral device if the peripheral device does not accept the event notification support message.
-
-
4. The method according to claim 1 wherein said step of locating a port number and a network address in a “
- NETADDR=addr”
parameter contained within the event message string further comprises the steps of;adding the port number for the specified at least one peripheral device in a “
JDEXPORT=num”
parameter contained within the event message string for uniquely identifying each peripheral if the network address is valid; and
,sending an error message to at least one peripheral device if the network address is invalid.
- NETADDR=addr”
-
5. The method according to claim 4 wherein said step of adding the port number further comprises the steps of:
-
adding a sequence number that is incremented for each event message in a “
SEQNUM=num”
parameter contained within the event message string for uniquely identifying each event message;
incrementing the sequence number variable for a next event message;
setting a retransmission count for the event message;
adding the event message to the pending-acknowledgment queue;
starting a timeout;
identifying the type of network address in the “
NETADDR=addr”
parameter contained within the event message string if the server supports multiple transport protocols;
sending the event message with the augmented string to the designated at least one client according to the network address in the “
NETADDR=addr”
parameter contained within the event message string using the transport protocols identified; and
,the client responding to an event message from the server.
-
-
6. The method according to claim 5 further comprising the steps of:
-
locating a sequence number in the “
SEQNUM=num”
parameter contained within the event message string;
sending a acknowledgement message with the located sequence number back to the server;
updating a last sequence number when the sequence number in the “
SEQNUM=num”
parameter contained within the event message string is greater than the last sequence number received; and
,ignoring the event message when the sequence number in the “
SEQNUM=num”
parameter contained within the event message string is not greater than the last sequence number received.
-
-
7. The method according to claim 6 wherein said step of updating a last sequence number further includes the steps of:
-
saving the network address of the server that sent the message and the port number specified in the “
JDEXPORT=num”
parameter contained within the event message string; and
,initiating the peripheral-specific event handling procedure using the network address and the port number.
-
-
8. The method according to claim 1 wherein said step of the server responding to an acknowledgment message further comprises the steps of:
-
locating the sequence number in a “
SEQNUM=num”
parameter contained within the acknowledgment message string; and
,removing all events in the pending-acknowledgment queue with the located sequence number.
-
-
9. The method according to claim 1, wherein said step of the server responding to an expired timeout further comprises the steps of:
-
resending all event messages in the pending-acknowledgment queue;
decrementing the resend count for all event messages in the pending-acknowledgment queue; and
,removing all event messages with the resend count equal zero from the pending acknowledgment queue.
-
-
10. A server for communicating event messages to at least one peripheral device and to at least one client via a network, said server comprising:
-
means for sending a message to any available peripheral device;
means for receiving an event message from at least one peripheral device;
means for sending an error message to at least one peripheral device if a pending-acknowledgment queue is full;
means for locating a port number and a network address in the “
NETADDR=addr”
parameter contained within the event message string if a pending-acknowledgment queue is not full;
means for responding to an acknowledgment message from at least one client; and
,means for responding to an expired timeout.
-
Specification