Information processing device and method thereof, and computer program product
An information processing device is configured to be connected via a network to a plurality of external devices and output data through one of the external devices. The information processing device includes a characteristic information acquiring unit, a device searching unit, and a port generating unit. The characteristic information acquiring unit acquires characteristic information related to data to be output. The device searching unit searches for an external device through which the data is to be output based on the characteristic information. The port generating unit generates an output port to the external device. The data is transmitted to the external device through the output port.
Latest Ricoh Company, Ltd. Patents:
- COMMUNICATION MANAGEMENT SYSTEM, COMMUNICATION SYSTEM, COMMUNICATION MANAGEMENT DEVICE, IMAGE PROCESSING METHOD, AND NON-TRANSITORY COMPUTER-READABLE MEDIUM
- IMAGE PROCESSING DEVICE, IMAGE FORMING APPARATUS, AND EDGE DETECTION METHOD
- IMAGE FORMING APPARATUS
- IMAGE READING DEVICE, IMAGE FORMING APPARATUS, AND IMAGE READING METHOD
- PRINT MANAGEMENT SYSTEM, PRINT MANAGEMENT METHOD, AND NON-TRANSITORY COMPUTER-EXECUTABLE MEDIUM
The present document incorporates by reference the entire contents of Japanese priority document, 2006-198527 filed in Japan on Jul. 20, 2006.
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to an information processing device and method thereof, and a computer program product.
2. Description of the Related Art
Printing of locally stored image data such as those created by an application, online image data, and the like requires a printer driver that is compatible with a printer used to print the image data. Such printing also requires setting up a port using a Transmission Control Protocol/Internet Protocol (TCP/IP) for transmitting print data generated by the printer driver to the printer.
In recent years, people often carry a mobile personal computer (PC) with them for outside use. When a need for printing arises at an outside location, they are necessitated to use a printer available on the spot. It is, however, not likely that a printing environment has already been established on their mobile PC to perform printing on the outside printer.
Meanwhile, for, example, some recent printer drivers such as a BMLinkS (registered trademark) printer driver are less machine-dependent. Thus, if the outside printer is compatible with such a printer driver, printing is possible using the printer driver installed on their own mobile PC.
Additionally, Japanese Patent Application Laid-Open No. 2004-246620 discloses a technology in which a printer for a print job is selected based on a first image forming condition providable by a plurality of printers and a second image forming condition set by a user.
However, even when a mobile PC includes a printer driver corresponding to a printer at an outside location, it is still necessary to set up a port. Accordingly, a troublesome task remains for a user.
Setting up a port often requires an IP address of a printer. The IP address can be acquired by directly operating a console of the printer. However, due to increasing security concerns, many more recent printers require log-in information for operation or knowledge of a special operation for acquiring the IP address thereof.
Although such printer information may be acquired through a network available outside, a user needs to install special software in advance or preregister various information in a domain of the outside location to use the outside network.
Consequently, even for a small amount of printing, the user has to establish a printing environment for the job. This results in inconvenience to the user.
SUMMARY OF THE INVENTIONIt is an object of the present invention to at least partially solve the problems in the conventional technology.
According to an aspect of the present invention, an information processing device that is configured to be connected via a network to a plurality of external devices and output data through one of the external devices, includes an information acquiring unit that acquires characteristic information related to data to be output, a searching unit that searches for an external device through which the data is to be output based on the characteristic information, an output channel generating unit that generates an output channel to the external device, and a transmitting unit that transmit the data to the external device through the output channel.
According to another aspect of the present invention, an information processing method applied to an information processing device that is configured to be connected via a network to a plurality of external devices and output data through one of the external devices, includes acquiring characteristic information related to data to be output, searching for an external device through which the data is to be output based on the characteristic information, generating an output channel to the external device, and transmitting the data to the external device through the output channel.
According to still another aspect of the present invention, a computer program product includes a computer program that implements the above methods on a computer.
The above and other objects, features, advantages and technical and industrial significance of this invention will be better understood by reading the following detailed description of presently preferred embodiments of the invention, when considered in connection with the accompanying drawings.
Exemplary embodiments of the present invention are described in detail below with reference to the accompanying drawings.
The data generating unit 31 generates data to be transmitted to an output device. The output port generating unit 32 generates an output port as an output channel for outputting the data generated by the data generating unit 31 to the output device. At this time, the search condition DB 33 is accessed for reference.
As explained above, the characteristic information and the search condition are stored in an associated manner. Therefore, detecting characteristic information of data generated by the data generating unit 31 allows extraction of a search condition for searching for a device suitable to output data.
The output port generating unit 32 acquires characteristic information of the data generated by the data generating unit 31, and refers to the search condition DB 33 to acquire a search condition. The output port generating unit 32 specifies an output device that satisfies the search condition from the connectable output devices 40a and 40b, and generates an output port for transmitting the data to the specified output device. Then, the data generated by the data generating unit 31 is transmitted from the generated output port.
In this manner, an output port is generated according to an output device specified based on a search condition corresponding to the characteristics of generated data. As a result, data can be output to a suitable output device without setting thereof for each printing job.
The terminal device 10 can be, for example, a mobile terminal. The terminal device 10 selects one of the printers 20a, 20b, and 20c, and issues a print command to instruct the selected printer to print data as a print object. Upon receipt of the print command, the selected printer prints the data.
The OS 100 controls a computer system. The output data generating application 102, which is software run on the terminal device 10, edits and processes data containing characters and images. Examples of the output data generating application 102 include text editing software, spreadsheet software, and image editing software. The output data generating application 102 generates data to be printed by any one of the printers 20a to 20c. The output data generating application 102 sends the data and a print command to the printer driver 106 via the spooler 104.
The spooler 104 temporarily stores (spools) therein various data subjected to a print command issued to the printers 20a to 20c, and sequentially sends the data to the printer driver 106. The printer driver 106 is software that generates print data printable by the printers 20a to 20c from various data stored in the terminal device 10. Specifically, the printer driver 106 receives data and a print command from the output data generating application 102 via the spooler 104. Next, based on the received data and the print command, the printer driver 106 generates print data described in a printer language, such as Printer JOB Language (PJL), readable by the printers 20a to 20c.
The port monitor 110 monitors an output port. The output port is an output channel using TCP/IP. Specifically, the port monitor 110 selects the output port according to an output data destination, i.e., a printer where the print data is to be sent.
By way of example and without limitation, as the output port is cited above an output channel using TCP/IP. It is only necessary to be an output channel on a network.
In the example shown in
The port monitor 110 includes a virtual port processor 112. The virtual port processor 112 performs processing related to the virtual port selected based on the instruction from a user. For example, the virtual port processor 112 selects an output destination suitable for print data from a plurality of output destinations, and generates an output channel to the selected output destination as the virtual port. After the print data is transmitted from the generated virtual port, the virtual port processor 112 deletes the output port generated as the virtual one.
The characteristic information acquiring unit 200 acquires characteristic information indicating the characteristics of target data. Examples of the characteristic information include a name of the printer driver 106 that generates print data from the target data. Other than the printer driver 106, the characteristic information can be acquired from the output data generating application 102 and the OS 100.
The characteristic information can also be acquired from another device (not shown) connected via the network 2. For example, when the terminal device 10 acquires target data generated by an output data generating application installed on another device and specifies an output destination of the target data, characteristic information regarding the data is acquired from the other device.
The search-condition storage unit 202 stores therein such items as characteristic information and search condition in an associated manner. The search condition is used for searching for an output destination suitable for target data. From the search-condition storage unit 202, the search condition specifying unit 204 extracts a search condition associated with characteristic information acquired by the characteristic information acquiring unit 200. Then, the search condition specifying unit 204 specifies the extracted search condition as a search condition for an output destination of the target data. For example, having extracted a plurality of search conditions, the search condition specifying unit 204 removes “and” joining them, and specifies them as the search conditions.
The device searching unit 206 searches for an output destination that satisfies the search condition specified by the search condition specifying unit 204 via the network 2. Specifically, the device searching unit 206 searches the printers 20a to 20c connected to the network 2 using a Simple Network Management Protocol (SNMP) and a Web Service, for example.
The search-result display unit 210 displays a search result obtained by the device searching unit 206 on a display screen. The input unit 212 receives user input specifying an output destination selected by a user. The output destination specifying unit 214 specifies the output destination based on the obtained search result and the input received from the user. The port generating unit 216 generates an output port to the output destination specified by the output destination specifying unit 214, and assigns it to the virtual port. The port deleting unit 218 deletes the virtual output port generated by the port generating unit 216.
Characteristic information “Printer driver name includes a character string COLOR” corresponds to a search condition “Color printer”. Characteristic information “Japanese OS” corresponds to a search condition “Japanese fonts available”. The characteristic information acquiring unit 200 acquires OS-related characteristic information from the OS 100.
Characteristic information “No less than 50 pages” corresponds to a search condition “High-speed printing”. The characteristic information acquiring unit 200 acquires characteristic information related to a document length from the spooler 104. Characteristic information “Photo-retouching software is used” corresponds to a search condition “High-quality printing”. The characteristic information acquiring unit 200 acquires characteristic information related to application software from the output data generating application 102.
As explained above, characteristic information related to a printer language used and functional characteristics such as color or monochrome is associated with a search condition. Thus, based on the characteristic information, a search condition can be specified.
A search condition can be specified based on characteristic information related to a hardware configuration, such as the presence of a finisher. The characteristic information can be extracted from a printer driver name. To easily identify the presence of hardware from a printer driver name, for example, a driver name “ABC Duplex Printer” can be assigned to a printer driver that issues a print command to a printer with a finisher. In this manner, an acquired driver name can provide characteristic information related to a hardware configuration.
Next, from the search-condition storage unit 202, the search condition specifying unit 204 extracts and specifies a search condition corresponding to the characteristic information acquired by the characteristic information acquiring unit 200 (step S104). Then, the device searching unit 206 searches for an output destination that satisfies the search condition by an inquiry to the printers 20a to 20c (step S106).
The search-result display unit 210 also checks whether the printer has a hardware configuration that satisfies the search condition (step S204). Specifically, the search-result display unit 210 checks the presence of staple and punch functions, a paper size, and a medium type.
Referring back to
There may be a case where the search condition specifying unit 204 specifies a plurality of search conditions joined by “and”. In such case, the search-result display unit 210 determines whether there is any output destination that satisfies all the search conditions.
When a plurality of output destinations satisfies the search condition (Yes at step S110), the search-result display unit 210 displays the search results on a search result screen 300 (step S112).
When the user selects a printer on the search result screen 300, the input unit 212 receives user input specifying the printer as an output destination (Yes at step S114). From among the output destinations displayed on the search result screen 300, the output destination specifying unit 214 specifies the output destination selected through the input unit 212 as an output destination of the target data. Then, the port generating unit 216 generates an output port to the specified output destination (step S116), and notifies the user of the output destination (step S118). Specifically, the output destination is displayed on the display screen.
In this manner, without any need for the user to input information on an output destination such as an IP address, an output destination suitable for target data can be automatically detected. Moreover, an output port to the output destination selected by the user can be automatically generated. Therefore, the user does not have to perform any complicated operation as well as preregistering a port.
Based on a “WritePort” function, the target data is written to the output destination. When the target data is successfully written (Yes at step S114), the port deleting unit 218 disconnects the output destination based on an “EndDocPort” function to delete the output port generated by the port generating unit 216 (step S122). When the writing of the target data fails (No at step S120), error handling is performed (step S124).
Even if port addition is requested by an “AddPort” function, port addition is not performed. Then, the user is notified that port addition is rejected. In this manner, the embodiment employs only one virtual port, without port addition.
When user input specifying an output destination is not received within a predetermined period of time (No at step S114), the print job is cancelled (step S130).
When there is only a single output destination that satisfies the search condition (No at step S110), the output destination is not displayed on the search result screen 300. The port generating unit 216 generates an output port to the single output destination (step S116), and notifies the user of the single output destination (step S118).
In this manner, if a single output destination is detected, the single output destination can be automatically specified as a suitable output destination. Consequently, the user's selection is unnecessary, which simplifies processing operation.
If there is no output destination that satisfies the search condition (No at step S108), the search-result display unit 210 displays one or more output destinations that partially satisfy the search condition with a warning on a warning screen 304 (step S140). In this case, for example, the output destination satisfies part of a plurality of search conditions.
As explained above, a user is notified of mismatch points with respect to output destinations. Accordingly, based on those mismatch points, the user can select an output destination that can provide an acceptable print result or can determine not to select any of them. Incidentally, the warning screen 304 can display output destinations in descending order of degree to which the search condition is satisfied. This allows the user to easily grasp the degree to which each output destination satisfies the search condition.
The information processing program can be provided as being recorded on a computer-readable recording medium in an installable or executable file format. Examples of the computer-readable recording medium include a compact disc read-only memory (CD-ROM), a flexible disk (FD), and a digital versatile disc (DVD).
The information processing program is loaded from the recording medium into a main memory of the terminal device 10 to be executed. Thus, the units explained above are implemented on the main memory.
Alternatively, the information processing program can be stored in a computer connected to the terminal device 10 via a network such as the Internet, and downloaded therefrom via the network to the terminal device 10.
Incidentally, the above-described embodiment is susceptible of various modifications. For example, in the process at step S112 of
For example, in the example of
As set forth hereinabove, according to an embodiment of the present invention, target data can be transmitted to an external device suitable to process the target data without any complicated operation.
Although the invention has been described with respect to a specific embodiment for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.
Claims
1. An information processing device that is configured to be connected via a network to a plurality of external devices and output data through one of the external devices, the information processing device comprising:
- an information acquiring unit that acquires characteristic information indicating a feature of print object data;
- a searching unit that searches the network for an external device to which the object data is to be output based on the characteristic information acquired by the information acquiring unit;
- a virtual output port generating unit that generates a virtual output port that sets the external device as an external device to which the print object data is to be output based on information regarding the external device; and
- a transmitting unit that transmits the print object data to the external device through the virtual output port; and
- a virtual output port deleting unit that deletes the virtual output port after the print object data is transmitted.
2. The information processing device according to claim 1, further comprising:
- a storage unit that stores therein the characteristic information and a search condition for searching for the external device, the characteristic information being associated with search condition; and
- a search condition specifying unit that refers to the storage unit to specifying the search condition associated with the characteristic information, wherein
- the searching unit searches for an external device based on the search condition.
3. The information processing device according to claim 1, wherein the virtual output port uses a transmission control protocol/Internet protocol.
4. The information processing device according to claim 1, further comprising a display unit that displays a search-result obtained by the searching unit.
5. The information processing device according to claim 4, wherein, when the searching unit detects a plurality of external devices, the display unit displays the external devices, the information processing device further comprising:
- an input unit that receives input specifying an external device selected from the external devices displayed on the display unit, wherein
- the virtual output port generating unit generates the virtual output port to the external device selected through the input unit.
6. The information processing device according to claim 5, wherein
- the display unit displays external devices that partially satisfy the search condition when the searching unit detects no external device that fully satisfies the search condition, and
- the input unit receives input specifying an external device selected from the external devices that partially satisfies the search condition.
7. The information processing device according to claim 6, wherein the display unit displays a point of the search condition that each of the external devices does not satisfy.
8. The information processing device according to claim 5, wherein
- the display unit displays the external devices connected via the network when the searching unit detects no external device that fully satisfies the search condition, and
- the input unit receives input specifying an external device selected from the external devices connected via the network.
9. The information processing device according to claim 8, wherein the display unit displays a point of the search condition that each of the external devices does not satisfy.
10. The information processing device according to claim 1, wherein, when the searching unit detects one external device, the virtual output port generating unit generates a virtual output port to the external device detected by the searching unit.
11. The information processing device according to claim 1, wherein the information acquiring unit acquires the characteristic information related to creation of the data from an application used to create the data.
12. The information processing device according to claim 1, wherein each of the external devices is a printer, and the data is print data to be printed by the printer.
13. The information processing device according to claim 12, wherein the information acquiring unit acquires the characteristic information related to printing of the data from a printer driver corresponding to the printer.
14. The information processing device according to claim 13, wherein the information acquiring unit acquires the characteristic information related to a printer language from the printer driver.
15. The information processing device according to claim 13, wherein the information acquiring unit acquires the characteristic information related to hardware necessary for the printer from the printer driver.
16. The information processing device according to claim 1, wherein the information acquiring unit acquires the characteristic information related to a type of the data from a spooler that spools the data.
17. The information processing device according to claim 1, wherein the information acquiring unit acquires the characteristic information related to an operating system from the operating system of the information processing device.
18. An information processing method applied to an information processing device that is configured to be connected via a network to a plurality of external devices and output data through one of the external devices, the information processing method comprising:
- acquiring characteristic information indicating a feature of print object data;
- searching the network for an external device to which the print object data is to be output based on the characteristic information acquired by the information acquiring unit;
- generating a virtual output port that sets the external device as an external device to which the print object data is to be output based on the information regarding the external device; and
- transmitting the data to the external device through the virtual output port
- deleting the virtual output port after transmitting the data to the external device.
19. A non-transitory computer readable recording medium having computer readable program codes embodied in the non-transitory computer readable recording medium that, when executed, cause a computer that is configured to be connected via a network to a plurality of external devices and output data through one of the external devices to execute:
- acquiring characteristic information indicating a feature of print object data;
- searching the network for an external device to which the print object data is to be output based on the characteristic information acquired by the information acquiring unit;
- generating a virtual output port that sets the external device as an external device to which the print object data is to be output based on the information regarding the external device; and
- transmitting the data to the external device through the virtual output port
- deleting the virtual output port after transmitting the data to the external device.
5699495 | December 16, 1997 | Snipp |
6111894 | August 29, 2000 | Bender et al. |
6757647 | June 29, 2004 | Nathan et al. |
7181089 | February 20, 2007 | Esaki et al. |
7316022 | January 1, 2008 | Nishio |
7861033 | December 28, 2010 | Chang et al. |
20030231328 | December 18, 2003 | Chapin et al. |
20040120344 | June 24, 2004 | Sato et al. |
20040243683 | December 2, 2004 | Yamauchi |
20050180791 | August 18, 2005 | Kujirai |
20070192472 | August 16, 2007 | Tokunaga et al. |
20080019290 | January 24, 2008 | Suzuki |
20080104338 | May 1, 2008 | Kinoshita et al. |
1658146 | August 2005 | CN |
11-212742 | August 1999 | JP |
2000-181641 | June 2000 | JP |
2002-248831 | September 2002 | JP |
2002-259097 | September 2002 | JP |
2004-072247 | March 2004 | JP |
2004-246620 | September 2004 | JP |
2006-011666 | January 2006 | JP |
Type: Grant
Filed: Jul 6, 2007
Date of Patent: Mar 20, 2012
Patent Publication Number: 20080019290
Assignee: Ricoh Company, Ltd. (Tokyo)
Inventor: Katsunori Suzuki (Tokyo)
Primary Examiner: Robert Wilson
Attorney: Dickstein Shapiro LLP
Application Number: 11/822,567
International Classification: H04L 12/28 (20060101);