Method and system for receiving and demultiplexing multi-modal document content
First Claim
1. A computer program product for receiving and demultiplexing multi-modal document content, said computer program product embodied on a computer-readable medium readable by a computing device in a computing environment and comprising:
- computer-readable program code means for generating a document request from a first client;
computer-readable program code means for sending said document request over an external network to a document server;
computer-readable program code means for receiving, at a demultiplexing (demux) component that is physically distinct from said first client and said document server a response document returned by said document server in response to said sent document request;
computer-readable program code means for locating, by said demux component, one or more content types in said received response document;
computer-readable program code means for accessing, by said demux component, a stored registry of content type-to-content renderer mappings, using each of said located content types, thereby identifying a content renderer which is capable of rendering said located content type, wherein said stored registry identifies a plurality of content renderers that are each operable on one or more of a plurality of devices coupled to said demux component via a network; and
computer-readable program code means for distributing by said demux component, for each of said located content types, document content associated therewith to a particular one of said devices on which said identified content renderer is operable, wherein at least one of said particular devices is distinct from that one of said plurality of devices upon which said first client is operating.
4 Assignments
0 Petitions
Accused Products
Abstract
A method, system, and computer-readable code for receiving and demultiplexing multi-modal document content. A demultiplexing component receives HTTP (HyperText Transfer Protocol) or WSP (Wireless Service Protocol) response messages containing multipart documents from a document server. Each content type of the multipart document is located by this component and used to locate an appropriate content renderer. A content registry, which stores mappings between content types and renderers capable of processing that content type, may be consulted to locate an appropriate renderer. Or, a dynamic query message may be issued on a network to detect any available renderers. The document content corresponding to the content type is then distributed to the located renderer, which renders it to the user.
-
Citations
33 Claims
-
1. A computer program product for receiving and demultiplexing multi-modal document content, said computer program product embodied on a computer-readable medium readable by a computing device in a computing environment and comprising:
-
computer-readable program code means for generating a document request from a first client;
computer-readable program code means for sending said document request over an external network to a document server;
computer-readable program code means for receiving, at a demultiplexing (demux) component that is physically distinct from said first client and said document server a response document returned by said document server in response to said sent document request;
computer-readable program code means for locating, by said demux component, one or more content types in said received response document;
computer-readable program code means for accessing, by said demux component, a stored registry of content type-to-content renderer mappings, using each of said located content types, thereby identifying a content renderer which is capable of rendering said located content type, wherein said stored registry identifies a plurality of content renderers that are each operable on one or more of a plurality of devices coupled to said demux component via a network; and
computer-readable program code means for distributing by said demux component, for each of said located content types, document content associated therewith to a particular one of said devices on which said identified content renderer is operable, wherein at least one of said particular devices is distinct from that one of said plurality of devices upon which said first client is operating. - View Dependent Claims (2, 3, 4, 6, 7, 8, 9, 10, 11)
computer-readable program code means for receiving said distributed document content at at least one of said particular devices to which said document content is distributed; and
computer-readable program code means for rendering, at each receiving device, said received document content using said identified content renderer that is operable on said receiving device.
-
-
3. The computer program product according to claim 1, wherein said generated document request is generated as a HyperText Transport Protocol (HTTP) message.
-
4. The computer program product according to claim 1, wherein said generated document request is generated as a Wireless Session Protocol (WSP) message.
-
6. The computer program product according to claim 1, further comprising:
-
computer-readable program code means for initiating a HyperText Transfer Protocol (HTTP) request from at least one of said plurality of devices to said demux component; and
computer-readable program code means for receiving each of said HTTP requests at said demux component, thereby establishing an outstanding request from each of said at least one initiating devices; and
wherein, for at least one of said located content types, said particular one of said devices to which document content is distributed is one of said initiating devices, and wherein said computer-readable program code means for distributing said document content further comprises computer-readable program code means for distributing said document content to said initiating device using an open connection associated with said outstanding request from said initiating device.
-
-
7. The computer program product according to claim 1, further comprising:
-
computer-readable program code means for initiating a Wireless Session Protocol (WSP) request from at least one of said plurality of devices to said demux component; and
computer-readable program code means for receiving each of said WSP requests at said demux component, thereby establishing an outstanding request from each of said at least one initiating devices; and
wherein, for at least one of said located content types, said particular one of said devices to which document content is distributed is one of said initiating devices, and wherein said computer-readable program code means for distributing said document content further comprises computer-readable program code means for distributing said document content to said initiating device using an open connection associated with said outstanding request from said initiating device.
-
-
8. The computer program product according to claim 1, wherein said computer-readable program code means for distributing said document content further comprises computer-readable program code means for issuing, for each of said located content types, a HyperText Transfer Protocol (HTTP) POST message to said particular one of said devices, wherein said HTTP POST message carries said document content being distributed.
-
9. The computer program product according to claim 1, further comprising computer-readable program code means for dynamically updating said stored registry, responsive to receiving content registration messages sent from said devices on which said content renderers are operable, each of said messages indicating a particular content type which said device is capable of rendering and an identifier of said device, and wherein said computer-readable program code means for dynamically updating, uses said particular content type and said device identifier from each of said received registration messages to create or update a corresponding entry in said registry.
-
10. The computer program product according to claim 9, wherein said registration messages conform to a Universal Plug and Play protocol.
-
11. The computer program product according to claim 9, wherein said registration messages conform to a Jini protocol.
-
5. A computer program product for receiving and demultiplexing multi-modal document content, said computer program product embodied on a computer-readable medium readable by a computing device in a computing environment and comprising:
-
computer-readable program code means for generating a document request from a first client;
computer-readable program code means for sending said document request over an external network to a document server;
computer-readable program code means for receiving, at a demultiplexing (demux) component that is physically distinct from said first client and said document, server a response document returned by said document server in response to said sent document request;
computer-readable program code mean for locating, by said demux component, one or more content types in said received response document;
computer-readable program code means for issuing from said demux component, for each of said located content types, a network query that specifies said located content type;
computer-readable program code means, operable on one or more devices, for;
receiving at least one of said issued network queries; and
making a determination of whether to respond to each received query, wherein said determination is based on whether a content renderer that is capable of rendering said content type specified in said received query is operable on said receiving device, and sending a response thereto if so, said response identifying said receiving device;
computer-readable program code means for receiving said responses at said demux component; and
computer-readable program means for distributing by said demux component, for each of said located content types, document content associated therewith to said device which is identified in a selected one of said received responses to said network query that specified said located content type.
-
-
12. A system for receiving and demultiplexing multi-modal document content in a computing environment, comprising:
-
a first client;
a demultiplexing (demux) component that is physically distinct from said first client and a document server;
a plurality of content renderers that are each operable on one or more of a plurality of devices coupled to said demux component via a network;
means for generating a document request from said first client;
means for sending said document request over an external network to said document server;
means for receiving, at said demux component, a response document returned by said document server in response to said sent document request;
means for locating, by said demux component one or more content types in said received response document;
means for accessing, by said demux component, a stored registry of content type-to-content renderer mappings, using each of said located content types, thereby identifying a content renderer which is capable of rendering said located content type, wherein entries in said stored registry identify selected ones of said plurality of content renderers; and
means for distributing by said demux component for each of said located content types, document content associated therewith to a particular one of said devices on which said identified content renderer is operable, wherein at least one of said particular devices is distinct from that one of said plurality of devices upon which said first client is operating. - View Dependent Claims (13, 14, 15, 17, 18, 19, 20, 21, 22)
means for receiving said distributed document content at at least one of said particular devices to which said document content is distributed; and
means for rendering said received document content, at each receiving device, using said identified content renderer that is operable on said receiving device.
-
-
14. The system according to claim 12, wherein said generated document request is generated as a HyperText Transport Protocol (HTTP) message.
-
15. The system according to claim 12, wherein said generated document request is generated as a Wireless Session Protocol (WSP) message.
-
17. The system according to claim 12, further comprising:
-
means for initiating a HyperText Transfer Protocol (HTTP) request from at least one of said plurality of devices to said demux component; and
means for receiving each of said HTTP requests at said demux component, thereby establishing an outstanding request from each of said at least one initiating devices; and
wherein, for at least one of said located content types, said particular one of said devices to which said document content is distributed is one of said initiating devices, and wherein said means for distributing said document content further comprises means for distributing said document content to said initiating device using an open connection associated with said outstanding request from said initiating device.
-
-
18. The system according to claim 12, further comprising:
-
means for initiating a Wireless Session Protocol (WSP) request from at least one of said plurality of devices to said demux component; and
means for receiving each of said WSP requests at said demux component, thereby establishing an outstanding request from each of said at least one initiating devices; and
wherein, for at least one of said located content types, said particular one of said devices to which said document content is distributed is one of said initiating devices, and wherein said means for distributing said document content further comprises means for distributing said document content to said initiating device using an open connection associated with said outstanding request from said initiating device.
-
-
19. The system according to claim 12, wherein said means for distributing said document content further comprises means for issuing, for each of said located content types, a HyperText Transfer Protocol (HTTP) POST message to said particular one of said devices, wherein said HTTP POST message carries said document content being distributed.
-
20. The system according to claim 12, further comprising means for dynamically updating said stored registry, responsive to receiving content registration messages sent from said devices on which said content renderers are operable, each of said messages indicating a particular content type which said device is capable of rendering and an identifier of said device, and wherein said means for dynamically updatin, uses said particular content type and said device identifier from each of said received registration messages to create or update a corresponding one of said entries in said registry.
-
21. The system according to claim 20, wherein said registration messages conform to a Universal Plug and Play protocol.
-
22. The system according to claim 20, wherein said registration messages conform to a Jini protocol.
-
16. A system for receiving and demultiplexing multi-modal document content in a computing environment comprising:
-
a first client;
a demultiplexing (demux) component that is physically distinct from said first client and a document server;
a plurality of content renderers that are each operable on one or more of a plurality of devices coupled to said demux component via a network;
means for generating a document request from said first client;
mean for sending said document request over an external network to said document server;
means for receiving, at said demux component a response document returned by said document server in response to said sent document request;
means for locating, by said demux component, one or more content types in said received response document;
means for issuing from said demux component, for each of said located content types, a network query that specifies said located content type;
means, operable on one or more devices on which said content renderers are operable, for;
receiving at least one of said issued network queries; and
making a determination of whether to respond to each received query, wherein said determination is based on whether one of said content renderers that is capable of rendering said content type specified in said received query is operable on said receiving device, and sending a response thereto if so, said response identifying said receiving device;
means for receiving said responses at said demux component; and
means for distributing by sad demux component, for each of said located content types, document content associated therewith to said device which is identified in a selected one of said received responses to said network query that specified said located content type.
-
-
23. A method for receiving and demultiplexing multi-modal document content in a computing environment, comprising the steps of:
-
providing a demultiplexing (demux) component;
providing a plurality of content renderers that are each operable on one or more of a plurality of devices coupled to said demux component via a network;
generating a document request from a first client, wherein said first client is physically distinct from said demux component;
sending said document request over an external network to a document server wherein said document server is physically distinct from said demux component;
receiving, at said demux component, a response document returned by said document server in response to said sent document request;
locating, by said demux component one or more content types in said received response document;
accessing by said demux component, a stored registry of content type-to-content renderer mappings, using each of said located content types, thereby identifying a content renderer which is capable of rendering said located content type, wherein entries in said stored registry identify selected ones of said plurality of content renderers; and
distributing by said demux component, for each of said located content types, document content associated therewith to a particular one of said devices on which said identified content renderer is operable, wherein at least one of said particular devices is distinct from that one of said plurality of devices upon which said first client is operating. - View Dependent Claims (24, 25, 26, 28, 29, 30, 31, 32, 33)
receiving said distributed document content at at least one of said particular devices to which said document content is distributed; and
rendering said received document content, at each receiving device, using said identified content renderer that is operable on said receiving device.
-
-
25. The method according to claim 23, wherein said generated document request is generated as a HyperText Transport Protocol (HTTP) message.
-
26. The method according to claim 23, wherein said generated document request is generated as a Wireless Session Protocol (WSP) message.
-
28. The method according to claim 23, further comprising the steps of:
-
initiating a HyperText Transfer Protocol (HTTP) request from at least one of said plurality of devices to said demux component; and
receiving each of said HTTP requests at said demux component, thereby establishing an outstanding request from each of said at least one initiating devices; and
wherein, for at least one of said located content types, said particular one of said devices to which said document content is distributed is one of said initiating devices, and wherein said step of distributing said document content further comprises the step of distributing said document content to said initiating device using an open connection associated with said outstanding request from said initiating device.
-
-
29. The method according to claim 23, further comprising the steps of:
-
initiating a Wireless Session Protocol (WSP) request from at least one of said plurality of devices to said demux component; and
receiving each of said WSP requests at said demux component, thereby establishing an outstanding request from each of said at least one initiating devices; and
wherein, for at least one of said located content types, said particular one of said devices to which said document content is distributed is one of said initiating devices, and wherein said step of distributing said document content further comprises the step of distributing said document content to said initiating device using an open connection associated with said outstanding request from said initiating device.
-
-
30. The method according to claim 23, wherein said step of distributing said document content firer comprises the step of issuing, for each of said located content types, a HyperText Transfer Protocol (HTTP) POST message to said particular one of said devices, wherein said HTTP POST message carries said document content being distributed.
-
31. The method according to claim 23, further comprising the step of:
dynamically updating said stored registry, responsive to receiving content registration messages sent from said devices on which said content renderers are operable, each of said messages indicating a particular content type which said device is capable of rendering and an identifier of said device, and wherein said dynamically updating step uses, said particular content type and said device identifier from each of said received registration messages to create or update a corresponding one of said entries in said registry.
-
32. The method according to claim 31, wherein said registration messages conform to a Universal Plug and Play protocol.
-
33. The method according to claim 31, wherein said registration messages conform to a Jini protocol.
-
27. A method of receiving and demultiplexing multi-modal document content comprising the steps of:
-
providing a demultiplexing (demux) component;
providing a plurality of content renderers that are each operable on one or more of a plurality of devices coupled to said demux component via a network;
generating a document request from a first client, wherein said first client is physically distinct from said demux component;
sending said document request over an external network to a document server wherein said document server is physically distinct from said demux component;
receiving, at said demux component, a response document returned by said document server in response to said sent document request;
locating by said demux component, one or more content types in said received response document;
issuing from said demux component, for each of said located content types, a network query that specifies said located content type;
performing, by at least one of said devices on which said content renderers are operable, the steps of;
receiving at least one of said issued network queries; and
making a determination of whether to respond to each received query, wherein said determination is based on whether one of said content renderers that is capable of rendering said content type specified in said received query is operable on said receiving device, and sending a response thereto if so, said response identifying said receiving device;
receiving said responses at said demux component; and
distributing by said demux component, for each of said located content types, document content associated therewith to said device which is identified in a selected one of said received responses to said network query that specified said located content type.
-
Specification