Print system, usability information generation device, usability information generation method, non-transitory computer-readable recording medium encoded with usability information generation program

An information processing apparatus transmits a print job to a server and generates print status information including user identification information and a print condition included in the print job. Each of one or more image forming apparatuses transmits a transmission request, forms an image based on the print job, and generates device information including state information indicating its operating state. The server transmits a print job that includes the same user identification information as the user identification information included in the transmission request, to the image forming apparatus that has transmitted the transmission request. One of the server, the one or more image forming apparatuses, and the portable information device generates usability information indicating usability in a case where the print job is executed in each image forming apparatus, based on the device information and the print status information. The portable information device outputs the generated usability information.

This application is based on Japanese Patent Application No. 2013-112854 filed with Japan Patent Office on May 29, 2013, the entire content of which is hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a print system, a usability information generation device, a usability information generation method, and a non-transitory computer-readable recording medium encoded with a usability information generation program. More specifically, the present invention relates to a print system in which an image for print data accumulated in a server is formed in an image forming apparatus designated by a user, a usability information generation device for use in the print system, a usability information generation method performed in the usability information generation device, and a non-transitory computer-readable recording medium encoded with a usability information generation program.

2. Description of the Related Art

In recent years, a plurality of image forming apparatuses, typically such as Multi-Functional Peripherals, are often installed in office and other environments. A pull printing system is known in which a user can select any one of the plurality of image forming apparatuses and use the selected apparatus. In the pull printing system, print data transmitted from a personal computer (hereinafter referred to as “PC”) is stored in a print server, and when the user logs in to an image forming apparatus, the image forming apparatus downloads the print data from the server and prints the data.

However, some of the image forming apparatuses may not be immediately available. Not being immediately available means, for example, a state in which the image forming apparatus is being used by another user or a state in which paper runs out and a paper refill is needed. In order to check the state of the image forming apparatus, the user has to go to the place where the image forming apparatus is actually installed.

Meanwhile, portable information devices such as smartphones and tablet terminals are being widespread, and a technique is known in which users use a portable information device to remotely operate an image forming apparatus. For example, Japanese Patent Laid-Open No. 2012-212330 describes an image recording system including an image recording device for recording an image on a recording medium and a portable terminal capable of operating the image recording device by radio communication and having a display. The image recording system includes distance detection means for detecting a distance from the portable terminal to the image recording device to be operated by the portable terminal, storage means for storing a plurality of operation screens for the image recording device corresponding to a plurality of ranges of the distance that are determined so as to be continuous, and display control means for allowing the display of the portable terminal to display the operation screen corresponding to the distance detected by the distance detection means. According to this technique, a single portable terminal can remotely operate a single image forming apparatus to allow the user to check the state of the image forming apparatus from a remote site.

However, a single portable terminal cannot remotely operate a plurality of image forming apparatuses simultaneously, so that the portable terminal has to be connected to a plurality of image forming apparatuses one by one in order to check the respective states of the image forming apparatuses. Accordingly, it is impossible to efficiently select one of the image forming apparatuses that is to be used by the user.

SUMMARY OF THE INVENTION

According to an aspect of the present invention, a print system includes a server, an information processing apparatus, one or more image forming apparatuses, and a portable information device. The information processing apparatus includes an operating user determination portion to determine an operating user, a print job transmission portion to transmit a print job including user identification information for identifying the operating user, print data to be subjected to image formation, and a condition for forming an image of the print data, to the server in response to an instruction by the operating user, and a print status information generation portion to generate print status information including the user identification information and the print condition included in the print job, in response to transmission of the print job. Each of the one or more image forming apparatuses includes an authentication portion to authenticate a user, a transmission request portion to, in response to a user being authenticated by the authentication portion, transmit a transmission request including user identification information for identifying the authenticated user, to the server, an image formation control portion to form an image of print data included in a print job received from the server, based on the print job, in response to transmission of the transmission request, and a device information generation portion to generate device information including state information indicating an operating state of the image forming apparatus itself. The server includes a print job storage portion to store the print job in response to the print job being received, and a print job transmission portion to, in response to a transmission request being received from any one of the image forming apparatuses, transmit a print job to the image forming apparatus that has transmitted the transmission request among the one or more image forming apparatuses, if a print job that includes the same user identification information as the user identification information included in the transmission request is stored. A usability information generation device that is one of the server, the one or more image forming apparatuses, and the portable information device includes a usability information generation portion to generate usability information indicating usability in a case where the print job is executed in each of the one or more image forming apparatuses, based on the device information generated by each of the one or more image forming apparatuses and the print status information generated by the information processing apparatus. The portable information device includes a usability information output portion to output the generated usability information.

According to another aspect of the present invention, a usability information generation device is for use in a print system in which a print job generated by an information processing apparatus is temporarily stored into a server and, in response to a user designating one of one or more image forming apparatuses, the designated image forming apparatus forms an image by downloading the print job from the server. The usability information generation device includes a print status information acquisition portion to acquire print status information including user identification information and a print condition included in the print job from the information processing apparatus; a device information acquisition portion to acquire, from each of the one or more image forming apparatuses, device information including state information indicating an operating state of the image forming apparatus itself; and a usability information generation portion to generate usability information indicating usability in a case where the print job is executed in each of the one or more image forming apparatuses, based on the device information acquired from each of the one or more image forming apparatuses and the print status information acquired from the information processing apparatus.

In accordance with a further aspect of the present invention, a usability information generation method is performed in a usability information generation device for use in a print system in which a print job generated by an information processing apparatus is temporarily stored into a server and, in response to a user designating one of one or more image forming apparatuses, the designated image forming apparatus forms an image by downloading the print job from the server. The method includes: a print status information acquisition step of acquiring print status information including user identification information and a print condition included in the print job from the information processing apparatus; a device information acquisition step of acquiring, from each of the one or more image forming apparatuses, device information including state information indicating an operating state of the image forming apparatus itself; and a usability information generation step of generating usability information indicating usability in a case where the print job is executed in each of the one or more image forming apparatuses, based on the device information acquired from each of the one or more image forming apparatuses and the print status information acquired from the information processing apparatus.

In accordance with yet another aspect of the present invention, a non-transitory computer-readable recording medium is encoded with a usability information generation program performed by a computer controlling a usability information generation device for use in a print system in which a print job generated by an information processing apparatus is temporarily stored into a server and, in response to a user designating one of one or more image forming apparatuses, the designated image forming apparatus forms an image by downloading the print job from the server. The program causes the computer to perform processing comprising: a print status information acquisition step of acquiring print status information including user identification information and a print condition included in the print job from the information processing apparatus; a device information acquisition step of acquiring, from each of the one or more image forming apparatuses, device information including state information indicating an operating state of the image forming apparatus itself; and a usability information generation step of generating usability information indicating usability in a case where the print job is executed in each of the one or more image forming apparatuses, based on the device information acquired from each of the one or more image forming apparatuses and the print status information acquired from the information processing apparatus.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the present invention will be described below with reference to the drawings. In the following description, the same parts are denoted with the same reference signs. Their names and functions are also the same. A detailed description thereof will not be repeated.

FIG. 1is a diagram showing an overview of a print system in an embodiment of the present invention. Referring toFIG. 1, print system1includes nine MFPs (Multi-Functional Peripherals)100,100A to100H, a portable information device200, a server300, a personal computer (hereinafter referred to as “PC”)400, and a radio station500, each being connected to a network2.

MFPs100,100A to100H are an example of image forming apparatuses. Each of MFPs100,100A to100H functions as an image forming apparatus and has a document scan function for scanning a document, an image forming function for forming an image on a recording medium such as paper based on image data, and a facsimile transmission/reception function of transmitting/receiving facsimile data. Although MFPs100,100A to100H are described in the present embodiment by way of example, MFPs100,100A to100H may be replaced by other devices that have the function of forming an image, for example, printers or facsimile machines. MFPs100,100A to100H have the same hardware and functions and therefore MFP100will be taken as an example in the following description, unless otherwise specified.

Portable information device200is a computer carried and used by a user, such as a smartphone or a PDA (Personal Digital Assistant). Here, portable information device200is a smartphone and includes a wireless LAN function and a call function. Portable information device200therefore can make a call by communicating with a mobile phone base station by radio to connect to a mobile phone network.

Network2is a Local Area Network (LAN), either wired or wireless. Network2is not limited to a LAN but may be a network using a Public Switched Telephone Network. Network2is further connected to a Wide Area Network (WAN) such as the Internet. Each of MFPs100,100A to100H can transmit/receive data to/from server300, PC400, and radio station500through network2.

Radio station500is a relay device of network2and communicates with portable information device200having the wireless LAN communication function to connect portable information device200to network2. Portable information device200therefore can transmit/receive data to/from each of MFPs100,100A to100H, server300, and PC300through radio station500and network2.

PC400and server300are general computers. Server300functions as a print server and also functions as an authentication server. When functioning as an authentication server, server300performs a process of authenticating the user who uses PC400or MFPs100,100A to100H. Server300stores user data allocated to each user in advance and including user identification information for identifying the user and authentication information. When receiving the user identification information and authentication information input by a user from any one of PC400, MFPs100, and100A to100H, server300compares the received user identification information and authentication information with the user data stored in advance. If they agree, server300returns an authentication result indicating that the authentication is successful. If they do not agree, server300returns an authentication result indicating that the authentication is failed.

Although a password is used as authentication information in this example, the user's biometric information such as fingerprint, vein pattern and iris may be used for authentication. In this case, a reader for reading biometric information is connected to MFP100,100A to100H, PC400, and the user data stored in server300includes user identification information and biometric information. MFPs100,100A to100H, PC400each receive the biometric information read by the reader. MFPs100,100A to100H, PC400each transmit the biometric information received from the reader to server300to allow server300to authenticate it.

PC400and MFPs100,100A to100H each may function as an authentication server. In this case, server300does not have to function as an authentication server.

PC400is used by a user and performs a variety of processes by executing application programs. A variety of processes include a login process of authenticating a user and a print process of generating print data and allowing any one of MFPs100,100A to100H to print it.

In print system1in the present embodiment, a pull printing driver program is installed in PC400. PC400executes the pull printing driver program to allow print data to be temporarily stored in server300. Server300is registered in PC400as a transmission destination of print data when the pull printing driver program is installed. For example, server300is registered by setting the network address of server300.

PC400executes the pull printing driver program to allow any one of MFPs100,100A to100H to print the print data. Specifically, for example, in a case where a user A logs in with user identification information “taro1” and gives an instruction to print data designated by user A, the pull printing driver program transmits a print job to server300. The print job includes print data formed by converting the data designated by the user into a print format, print conditions, and the user identification information “taro1.” The print conditions include the number of copies, the size of paper, color/monochrome, and print layout. The print conditions are determined based on the values accepted by PC400from the user.

Server300receives the print job from PC400and temporarily stores the print job. Subsequently, when user A having user identification information “taro1” logs in to any one of MFPs100,100A to100H, for example, if user A logs in to MFP100, MFP100transmits an acquisition request including the user identification information “tarot” of user A to server300. Server300receiving the acquisition request transmits the print job that includes the user identification information “taro1” included in the acquisition request, among the temporarily stored print jobs, to MFP100that has transmitted the acquisition request. MFP100executes the print job received from server300and forms an image of the print data included in the print job on paper in accordance with the print conditions.

The print conditions may not be set in the print job in PC400. The print data alone may be transmitted to server300, and after the user logs in, the print conditions may be designated at the MFP which the user has logged in to, among MFPs100,100A to100H.

MFPs100,100A to100H may have the same hardware configuration or have different hardware configurations and at least has an image forming unit for forming an image on a sheet such as paper based on image data. Although the hardware configurations of MFPs100,100A to100H may not be the same in some cases, MFP100here has a configuration that at least one of the other MFPs100A to100H has.

FIG. 2is an external perspective view of an MFP.FIG. 3is a block diagram showing an overall hardware configuration of the MFP. Referring toFIG. 2andFIG. 3, MFP100includes a main circuit110, a document scanning unit130for scanning a document, an automatic document feeder120for conveying a document to document scanning unit130, an image forming unit140for forming an image on a sheet of paper or other media based on image data output by document scanning unit130scanning a document, a paper feed unit150for supplying paper to image forming unit140, a post-processing unit155for processing a sheet having an image formed thereon, and an operation panel160serving as a user interface.

Post-processing unit155executes a sorting process of sorting one or more sheets having an image formed by image forming unit140and outputting the sorted sheets, a punching process of punching holes, and a stapling process of stapling sheets.

Main circuit110includes a CPU111, a communication I/F (interface) unit112, a ROM (Read Only Memory)113, a RAM (Random Access Memory)114, an HDD (Hard Disk Drive)115serving as a mass storage device, a facsimile unit116, and an external storage device117to which a CD-ROM118is attached. CPU111is connected to automatic document feeder120, document scanning unit130, image forming unit140, paper feed unit150, post-processing unit155, and operation panel160to control the entire MFP100.

ROM113stores a program executed by CPU111or data necessary to execute the program. RAM114is used as a working area when CPU111executes a program. RAM114temporarily stores scan data (image data) successively sent from document scanning unit130.

Operation panel160is provided on the top face of MFP100and includes a display unit161and an operation unit163. Display unit161is a display device such as an LCD (Liquid Crystal Display) or an organic ELD (Electro-Luminescence Display) and displays instruction menus to the user and information about the acquired image data. Operation unit163includes a hard key unit167including a plurality of keys and accepts input of a variety of instructions and data such as characters and numerals through the user's operation corresponding to the keys. Operation unit163further includes a touch panel165provided on display unit161.

Communication I/F unit112is an interface for connecting MFP100to network2. CPU111communicates with MFPs100A to100H, PC300, server300, or portable information device200through communication I/F unit112to transmit/receive data. Communication I/F unit112can communicate with a computer connected to the Internet through network2.

Facsimile unit116is connected to a PSTN (Public Switched Telephone Network) to transmit facsimile data to the PSTN or receive facsimile data from the PSTN. Facsimile unit116stores the received facsimile data into HDD115or outputs the received facsimile data to image forming unit140. Image forming unit140prints the facsimile data received by facsimile unit116on paper. Facsimile unit116also converts data stored in HDD115into facsimile data and transmits the facsimile data to a facsimile machine connected to the PSTN.

CD-ROM (Compact Disk ROM)118is attached to external storage device117. CPU111can access CD-ROM118through external storage device117. CPU111loads a program stored in CD-ROM118attached to external storage device117into RAM114for execution. A medium for storing a program executed by CPU111is not limited to CD-ROM118but may be an optical disk (MO (Magnetic Optical Disc)/MD (Mini Disc)/DVD (Digital Versatile Disc)), an IC card, an optical card, or a semiconductor memory such as a mask ROM, an EPROM (Erasable Programmable ROM), or an EEPROM (Electrically EPROM).

The program executed by CPU111is not limited to a program stored in CD-ROM118. CPU111may load a program stored in HDD115into RAM114for execution. In this case, another computer connected to network2may overwrite the program stored in HDD115or additionally write a new program. MFP100may download a program from another computer connected to network2and store the program into HDD115. The program referred to here includes not only a program directly executable by CPU111but also a source program, a compressed program, an encrypted program, and the like.

In print system1, data is transmitted/received between MFPs100,100A to100H, portable information device200, server300, and PC400. Any protocol for transmitting/receiving data can be used as long as the sender can be specified at the receiver device. Examples of the protocol for transmitting/receiving data include HTTP (Hyper Text Transfer Protocol), FTP (File Transfer Protocol), SMPT (Simple Mail Transfer Protocol), and POP (Post Office Protocol).

FIG. 4is a block diagram showing an example of the overall hardware configuration of the portable information device in the present embodiment. Referring toFIG. 4, portable information device200in the present embodiment includes a CPU201for controlling portable information device200as a whole, a camera202, a flash memory203for storing data in a nonvolatile manner, a radio communication unit204connected to a call unit205, a display unit206for displaying information, an operation unit207for accepting user's operation, a wireless LAN I/F208, a position detection unit209, an azimuth detection unit210, and an external storage device211.

Radio communication unit204communicates by radio with a mobile phone base station connected to a telephone communication network. Radio communication unit204connects portable information device200to the telephone communication network and enables a call using call unit205. Radio communication unit204demodulates a radio signal received from the mobile phone base station, and decodes the demodulated voice signal, and outputs the decoded signal to call unit205. Radio communication unit204also encodes voice input from call unit205and transmits the encoded signal to the mobile phone base station. Call unit205includes a microphone and a speaker to output voice input from radio communication unit204from the speaker and to output voice input from the microphone to radio communication unit204. Radio communication unit204is controlled by CPU201to connect portable information device200to an email server and transmit/receive an email.

Camera202includes a lens and a photoelectric transducer, images light collected by the lens on the photoelectric transducer, and outputs image data to CPU201. Examples of the photoelectric transducer include a CMOS (Complementary Metal Oxide Semiconductor) sensor and a CCD (Charge Coupled Device) sensor.

Display unit206is a display device such as a liquid crystal display (LCD) or an organic ELD and displays instruction menus to the user and information about the acquired image data. Operation unit207includes a plurality of keys and accepts inputs of various instructions and data such as characters and numerals through the user's operation corresponding to keys.

Wireless LAN I/F208is an interface communicating with radio station500to connect portable information device200to network2. The IP (Internet Protocol) addresses of server300, MFPs100,100A to100H, PC400are registered in portable information device200, so that portable information device200can communicate with server300, MFPs100,100A to100H, PC400and transmit/receive data. In the present embodiment, portable information device200communicates with server300, MFPs100,100A to100H, PC400using wireless LAN I/F208, by way of example. However, another communication method can be used. Specifically, in a case where portable information device200, server300, MFPs100,100A to100H, PC400are equipped with devices for near field communication, for example, such as Bluetooth (registered trademark), portable information device200may perform one-to-one communicate with any one of server300, MFPs100,100A to100H, PC400. Alternatively, portable information device200may be connected with any one of server300, MFPs100,100A to100H, PC400by wire such as a USB (Universal Serial Bus) cable, so that portable information device200performs one-to-one communicate with any one of server300, MFPs100,100A to100H, PC400.

Flash memory203stores a program executed by CPU201or data necessary for executing the program. CPU201loads the program stored in flash memory203into the RAM of CPU201for execution.

Position detection unit209detects the current position of portable information device200. Specifically, position detection unit209is a Global Positioning System (GPS) receiver and receives radio waves from GPS satellites thereby measuring the current position. Position detection unit209outputs a value indicating the measured current position, for example, latitude and longitude, to CPU201.

Azimuth detection unit210detects the azimuth of the direction in which camera202of portable information device200is pointed. Specifically, azimuth detection unit210is a geomagnetic sensor for measuring geomagnetism. Azimuth detection unit210outputs the detected azimuth to CPU201. Azimuth detection unit210is installed in portable information device200so as to be able to detect the direction in which camera202captures an image, in other words, the direction in which the optical axis of the lens of camera202is oriented. Azimuth detection unit210is not limited to a geomagnetic sensor but may be a gyro sensor.

External storage device211is removable from portable information device200. A CD-ROM211A storing a remote operation program can be attached thereto. CPU201can access. CD-ROM211A through external storage device211. CPU201can load the remote operation program stored in CD-ROM211A attached to external storage device211into the RAM of CPU201for execution.

The program executed by CPU201is stored in flash memory203or CD-ROM211A in the foregoing description. However, another computer connected to network2may overwrite the program stored in flash memory203or additionally write a new program. Portable information device200may download a program from another computer connected to network2. The program referred to here includes not only a program directly executable by CPU201but also a source program, a compressed program, an encrypted program, and the like.

The medium for storing a program executed by CPU201is not limited to CD-ROM211A but may be an optical disk (MO/MD/DVD), an IC card, an optical card, or a semiconductor memory such as a mask ROM, an EPROM, and an EEPROM.

FIG. 5is a block diagram showing an example of the overall hardware configuration of the PC in the present embodiment. Referring toFIG. 5, PC400includes a CPU401for controlling PC400as a whole, a ROM402for storing a program to be executed by CPU401, a RAM403used as a working area for CPU401, an HDD404for storing data in a nonvolatile manner, a communication unit405for connecting CPU401to network2, a display unit406for displaying information, an operation unit407for accepting input of the user's operation, and an external storage device408to which a CD-ROM408A can be attached.

FIG. 6is a block diagram showing an example of the overall hardware configuration of the server in the present embodiment. Referring toFIG. 6, server300includes a CPU301for controlling server300as a whole, a ROM302for storing a program to be executed by CPU301, a RAM303used as a working area for CPU301, an HDD304for storing data in a nonvolatile manner, a communication unit305for connecting CPU301to network2, a display unit306for displaying information, and an operation unit307for accepting input of the user's operation.

FIG. 7is a block diagram showing an example of functions of the CPU of the PC. The functions of CPU401of PC400shown inFIG. 7are formed in CPU401by CPU401executing the pull printing driver program stored in ROM402, HDD404, or CD-ROM408A. Referring toFIG. 7, CPU401includes an operating user determination portion451for determining an operating user, an operation accepting portion453for accepting an operation by a user, a print job generation portion455for generating a print job, a print job transmission portion457for transmitting a print job to server300, a print status information generation portion459for generating print status information, and a print status information transmission portion461for transmitting print status information to portable information device200.

Operating user determination portion451determines an operating user who operates operation unit407. Specifically, an authentication screen for inputting user identification information and authentication information appears on display unit406, and the user identification information and authentication information input by the operating user to operation unit407is accepted. Operating user determination unit451transmits the user identification information and authentication information to server300and, if the authentication result returned from server300indicates that the authentication is successful, authenticates the operating user. When the operating user is authenticated, operating user determination unit451determines that the operating user is the user identified by the user identification information. When the operating user is determined, operating user determination unit451outputs the user identification information of the operating user to print job generation portion455and print status information generation portion459.

Operation accepting portion453accepts an operation input by the operating user to operation unit407. The operation includes an operation of inputting print conditions and an operation of designating data to be subjected to image formation. The data to be subjected to image formation includes, for example, application data stored in HDD404. The print conditions include the number of copies, the size of paper, color/monochrome, and print layout. When print conditions are accepted, operation accepting portion453outputs the print conditions to print job generation portion455and print status information generation portion459. When data to be subjected to image formation is accepted, operation accepting portion453outputs the data to print job generation portion455.

Print job generation portion455generates a print job, based on the user identification information of the operating user that is input from operating user determination portion451and the data to be subjected to image formation and the print conditions that are input from operation accepting portion453. Specifically, print job generation portion455generates print data by converting the data to be subjected to image formation into a print format and generates a print job including the user identification information of the operating user, the print conditions, and the print data. Print job generation portion455outputs the generated print job to print job transmission portion457and outputs job identification information for identifying the print job to print status information generation portion459.

Print job transmission portion457transmits the print job to server300through communication unit405. The print job is transmitted through communication unit405to the network address of server300that is stored in HDD404at a time when the pull printing driver program is installed.

Print status information generation portion459generates print status information including the user identification information of the operating user that is input from operating user determination portion451, the job identification information input from print job generation portion455, and the print conditions input from operation accepting portion453, and outputs the generated print status information to print status information transmission portion461.

Print status information transmission portion461transmits the print status information to portable information device200through communication unit405. PC400stores user data in advance in which the user identification information is associated with the device identification information for identifying portable information device200allocated to the user. Portable information device200allocated to the operating user determined by operating user determination portion451is specified based on the user data. The user data may be stored in server300, and the device identification information of the device allocated to the operating user may be received together with the authentication result from server300when operating user determination portion451determines the operating user.

FIG. 8is a block diagram showing an example of functions of the CPU of the server. The functions of CPU301of server300shown inFIG. 8are formed in CPU301by CPU301executing a print data transmission program stored in ROM302or HDD304.

Referring toFIG. 8, CPU301of server300includes a print job reception portion351receiving a print job from the outside, a print job storage portion353temporarily storing a print job, a transmission request reception portion355receiving a transmission request, a print job transmission portion357extracting a print job based on a transmission request and transmitting the print job to a device that has transmitted the transmission request, a Completion Confirmation signal reception portion359, and a confirmation portion361.

Print job reception portion351controls communication unit305to receive a print job from PC400. Print job reception portion351receives a print job and outputs the received print job to print job storage portion353.

Print job storage portion353receives the print job from print job reception portion351and stores the print job into HDD304. The print job is thus stored into HDD304. The print job includes print data, print conditions, and user identification information, in which the user giving an instruction to print, the print data, and the print conditions are associated with each other.

Transmission request reception portion355controls communication unit305to receive a transmission request from any of MFPs100,100A to100H. The operation of transmitting a transmission request is the same among MFPs100,100A to100H, and, here, MFP100will be taken as an example. When the user operating MFP100logs in and is successfully authenticated, MFP100transmits a transmission request including the user identification information of the user who has logged in, to server300. The transmission request received by transmission request reception portion255from MFP100includes the user identification information of the user who is operating MFP100.

Transmission request reception portion355receives a transmission request and outputs to print job transmission portion357a set of the user identification information included in the transmission request and the device identification information for identifying the device that has transmitted the transmission request, among MFPs100,100A to100H.

In response to input of a set of the user identification information and the device identification information from transmission request reception portion355, print job transmission portion357extracts the print job that includes the same user identification information as the user identification information input from transmission request reception portion355, from print jobs stored in HDD305. Specifically, print job transmission portion357extracts the print job that includes the user identification information input from transmission request reception portion355, from print jobs stored in HDD305. In a case where a plurality of print jobs that include the user identification information input from transmission request reception portion355are stored in HDD305, print job transmission portion357extracts all the print jobs.

Print job transmission portion357transmits the print job extracted based on the transmission request to the device that has transmitted the transmission request among MFPs100,100A to100H. Specifically, print job transmission portion357transmits one or more extracted print jobs to the device specified by the device identification information input from transmission request reception portion355, among MFPs100,100A to100H, through communication unit305. When a print job is transmitted, print job transmission portion357outputs a transmission signal including the job identification information of the transmitted print job to confirmation portion361and deletes the transmitted print job from HDD305.

Completion Confirmation signal reception portion359controls communication unit305to receive a Completion Confirmation signal from portable information device200. The Completion Confirmation signal, which will be detailed later, is a signal transmitted by portable information device200to server300and includes job identification information. Completion Confirmation signal reception portion359receives the Completion Confirmation signal and outputs the received Completion Confirmation signal to confirmation portion361.

Confirmation portion361receives the Completion Confirmation signal and determines whether the print job specified by the job identification information included in the Completion Confirmation signal has been transmitted to any one of MFPs100,100A to100H. If the same job identification information as the job identification information included in the Completion Confirmation signal has been input from print job transmission portion353, print job transmission portion357determines that the print job specified by the job identification information has been transmitted to any one of MFPs100,100A to100H. If it is determined that the print job specified by the job identification information has been transmitted, confirmation portion361controls communication unit305to transmit a Transmission Completion signal to portable information device200that has transmitted the Completion Confirmation signal. If it is not determined that the print job specified by the job identification information has been transmitted, confirmation portion361controls communication unit305to transmit an Unsent signal to portable information device200that has transmitted the Completion Confirmation signal.

FIG. 9is a block diagram showing an overview of functions of the CPU of the MFP in the present embodiment. The functions shown inFIG. 9are formed in CPU111by CPU111of each of MFPs100,100A to100H in the present embodiment executing a program stored in ROM113, HDD115, or CD-ROM118. Here, the functions of the CPU of MFP100will be described by way of example. Referring toFIG. 9, CPU111of MFP100includes an authentication portion51for authenticating the user who operates MFP100, a transmission request portion53for requesting server300to transmit a print job, a print job reception portion55receiving a print job, an image formation control portion57controlling image forming unit140, a device information generation portion59generating device information, and a device information transmission portion61transmitting the device information.

Authentication portion51authenticates the user who operates MFP100. Specifically, authentication portion51displays a log-in screen on display unit161. The log-in screen includes an area for inputting user identification information and an area for inputting a password. When the user inputs user identification information and a password to operation unit163, authentication portion51accepts the user identification information and password from operation unit163and transmits authentication information including the accepted user identification information and password to server300through communication I/F112to allow server300to perform authentication. Specifically, the device identification information of server300is preset in MFP100by the user and stored in HDD115.

When communication I/F unit112receives the authentication result from server300, authentication portion51accepts the authentication result. If the authentication result indicates that the authentication is successful, authentication portion51outputs the user identification information of the log-in user to transmission request portion53. If the authentication result indicates that the authentication is failed, authentication portion51displays an error message on display unit161. If the authentication result indicates that the authentication is successful, authentication portion51accepts the operation input to operation unit161as an operation by the operating user authenticated and permitted to log in, until a log-out instruction is input later.

Transmission request portion53requests server300to transmit a print job related to the user authenticated by authentication portion51. Specifically, in response to input of user identification information from authentication portion51, transmission request portion53transmits a transmission request including the user identification information to server300and outputs the transmission request to print job reception portion55. As described above, server300receiving the transmission request specifies one or more print jobs that include the user identification information included in the transmission request and returns the specified one or more print jobs.

Print job reception portion55controls communication I/F unit112to receive the print job returned from server300after the transmission request is input from transmission request portion53. Print job reception portion55outputs the received print job to image formation control portion57.

Image formation control portion57receives the print job from print job reception portion55and forms an image of print data included in the print job on a sheet of paper, in accordance with the print conditions. Specifically, the print data and the print conditions are output to image forming unit140so that image forming unit140forms an image of the print data on a sheet of paper in accordance with the print conditions.

Device information generation portion59generates device information. The device information includes the image forming ability of MFP100and state information indicating the current state of MFP100. The image forming ability includes the speed of forming an image. The image forming ability may include print conditions that can be set. The print conditions include monochrome/color, whether post-processing of processing paper after image formation, such as sorting and punching, is executable, and the size of paper on which MFP100can form an image. The state information includes the scheduled completion time at which the accumulated print job is to be finished, and the number of sheets left at the time when the accumulated print job is finished. The state information further includes trouble identification information for identifying a trouble such as paper jam, if any. The state information further includes information indicating that operation panel160is being operated by a user, if applicable. Device information generation portion59outputs the generated device information to device information transmission portion61.

Device information transmission portion61receives the device information from device information transmission portion61and, when receiving a device information request for requesting transmission of the device information from the outside, transmits the device information to the device that has transmitted the device information request, through communication I/F unit112. In the present embodiment, portable information device200described later transmits a device information transmission request to MFPs100,100A to100H. Device information transmission portion61then transmits the device information input from device information generation portion59to portable information device200through communication I/F unit112, in response to communication I/F unit112receiving the device information request from portable information device200.

FIG. 10is a block diagram showing an overview of functions of the CPU of the portable information device in the present embodiment. The functions shown inFIG. 10are functions formed in CPU201by CPU201of portable information device200executing a remote control program stored in flash memory203or CD-ROM211A. Referring toFIG. 10, CPU201includes a print status information reception portion251, a device position detection portion257, a usability information generation portion253, and a usability information output portion255.

Print status information reception portion251controls wireless LAN I/F unit208to receive print status information transmitted by PC400. Print status information reception portion251outputs the print status information to usability information generation portion253in response to the print status information received from PC400.

Device position detection portion257allows position detection unit209to measure the current position and acquires the current position output by position detection unit209. Device position detection portion257outputs position information indicating the acquired current position to usability information generation portion253.

Usability information generation portion253generates usability information for allowing at least one of MFPs100,100A to100H to execute the print job identification information included in the print status information. The details of usability information generation portion253will be described later. Usability information generation portion253outputs the generated usability information to usability information output portion255.

In response to input of an output instruction from usability information generation portion253, usability information output portion255outputs the usability information input from usability information generation portion253at the timing when it is input from usability information generation portion253. Specifically, the usability information appears on display unit206, and the speaker of portable information device200produces an alarm sound.

FIG. 11is a block diagram showing an example of detailed functions of usability information generation portion253. Referring toFIG. 11, usability information generation portion253includes device position acquisition portion261acquiring position information indicating the position of portable information device200, a moving direction detection portion263detecting the direction in which the user moves, a candidate device decision portion265deciding one or more candidate devices from among MFPs100,100A to100H, a device information acquisition portion267for acquiring the device information from the candidate device, a print status information acquisition portion269for acquiring print status information, a timing decision portion277, a completion time prediction portion271, a trouble prediction portion273, a level decision portion275, a device-specific information generation portion281for generating usability information for each of one or more candidate devices, and a completion confirmation portion279.

Print status information acquisition portion269controls wireless LAN I/F208to receive the print status information transmitted by PC400. Print status information acquisition portion269outputs the received print status information to timing decision portion277, completion time prediction portion271, trouble prediction portion273, timing decision portion277, and completion confirmation portion279.

Device position acquisition portion261acquires the position information of portable information device200input from device position detection portion257and outputs the acquired position information of portable information device200to moving direction detection portion263, candidate device decision portion265, level decision portion275, and timing decision portion277.

Moving direction detection portion263detects the moving direction of portable information device200using a plurality of position information input at different times from device position acquisition portion261. Specifically, moving direction detection portion263decides the direction from the position specified by the position information input at the previous time to the position specified by the position information input at the subsequent time, as the moving direction. The moving direction is preferably an azimuth as the absolute value. Moving direction detection portion263outputs the detected moving direction to candidate device decision portion265.

Candidate device decision portion265receives the moving direction of portable information device200from moving direction detection portion263and receives the position information of portable information device200from device position acquisition portion261. Candidate device decision portion265decides one or more registered devices that satisfy a predetermined condition, as the candidate device. The registered devices are image forming apparatuses registered in advance by candidate device decision portion265and here MFPs100,100A to100H. Candidate device decision portion265stores the device identification information of the registered devices in advance.

Specifically, candidate device decision portion265calculates the relative positional relationship between portable information device200and each of the registered devices, namely, MFPs100,100A to100H. The relative positional relationship includes the distance between portable information device200and each of MFPs100,100A to100H and the direction from portable information device200to each of MFPs100,100A to100H. Candidate device decision portion265thus acquires the position information indicating the absolute position of each of MFPs100,100A to100H. For example, the position information is represented by latitude and longitude. In a case where the position information of each of MFPs100,100A to100H is stored in flash memory203, the position information of each of MFPs100,100A to100H is read from flash memory203. Alternatively, an inquiry signal for asking the position information may be broadcasted via wireless LAN I/F208, and the position information may be received from a device that responds to the inquiry signal, among MFPs100,100A to100H.

Candidate device decision portion265decides a candidate device that satisfies a predetermined condition from among MFPs100,100A to100H, based on the relative position information between portable information device200and each of MFPs100,100A to100H and the moving direction of portable information device200. The predetermined condition is that the device is present at the place to which portable information device200moves. Candidate device decision portion265decides the device present in the moving direction of portable information device200, as the candidate device, among MFPs100,100A to100H. Specifically, an area defined by the direction within a predetermined range from the moving direction is calculated with reference to the position of portable information device200, based on the position information of portable information device200that is input from device position acquisition portion261and the moving direction of portable information device200that is input from moving direction detection portion263. Candidate device decision portion265decides the device whose absolute position defined by the device information is present within the calculated area, as the candidate device, among MFPs100,100A to100H. Candidate device decision portion265outputs the device identification information of the decided candidate device to device information acquisition portion267and outputs a set of the device identification information of the candidate device and the position information of the candidate device to level decision portion275and timing decision portion277.

Device information acquisition portion267receives the device identification information of the candidate device from candidate device decision portion265and acquires the device information of the candidate device. In response to input of the device identification information of the candidate device from candidate device decision portion265, device information acquisition portion267controls wireless LAN I/F208to output a device information request for requesting transmission of the device information to the candidate device. When wireless LAN I/F208receives the device information from the candidate device receiving the device information request, device information acquisition portion267outputs the device information received from the candidate device to completion time prediction portion271and trouble prediction portion273. In other words, device information acquisition portion267outputs the device information corresponding to each candidate device to completion time prediction portion271and trouble prediction portion273.

Timing decision portion277receives the position information of portable information device200from device position acquisition portion261and receives a set of the device identification information of the candidate device and the position information of the candidate device from device information acquisition portion267to decide the timing for outputting usability information.

Timing decision portion277decides the point of time when the number of candidate devices reaches a predetermined number, as a first output timing. The number of candidate devices decreases as portable information device200moves. Timing decision portion277decides the number of candidate devices by counting the number of sets input from device information acquisition portion267.

Timing decision portion277decides the time when operation unit107accepts a predetermined operation by the user, as a second output timing.

Timing decision portion277decides the time when the user has moved a predetermined distance since the user transmitted a print job to server300, as a third output timing. Specifically, the time when print status information acquisition portion269acquires print status information is determined as the time when the user transmits a print job to server300. The moving distance is calculated using the position information of portable information device200input from device position acquisition portion261. After the print status information is acquired by print status information acquisition portion269, the moving distance is calculated using the position information of portable information device200that is input from device position acquisition portion261, and the time when the calculated moving distance reaches a predetermined distance is decided as the third output timing.

Timing decision portion277decides any one of the first to third output timings and outputs an output instruction to device-specific information generation portion281.

Completion time prediction portion271receives the print status information from print status information acquisition portion269and receives the device information of the candidate device from device information acquisition portion267. When a print job specified by the print information is executed in the candidate device, completion time prediction portion271predicts the time when the print job will be completed and outputs a set of the state information including the predicted time and the device identification information of the candidate device to device-specific information generation portion281. Specifically, the time spent for executing the print job in the candidate device is predicted as a job execution time, using the print speed of the image forming ability included in the device information of the candidate device and the number of sheets required for image formation that is included in the print conditions included in the print information. Completion time prediction portion271then calculates the time when execution of the print job will be completed from the scheduled completion time of the state information included in the device information of the candidate device and the calculated job execution time, and sets the calculated time as the completion time. Completion time prediction portion271outputs a set of the device identification information of the candidate device and the completion time to device-specific information generation portion281.

Trouble prediction portion273receives the print status information from print status information acquisition portion269and receives the device information of the candidate device from device information acquisition portion267, predicts a trouble that may occur in the candidate device, and outputs trouble information to device-specific information generation portion281. The trouble includes paper out. Trouble prediction portion273determines whether paper out will occur, using the remaining number of sheets that is included in the device information and the number of sheets required for image formation that is included in the print conditions included in the print status information. If paper out occurs, a set of the device identification information of the candidate device and the number of sheets printable is output to device-specific information generation portion281.

Level decision portion275receives a set of the device identification information of the candidate device and the position information of the candidate device from candidate device decision portion265and receives the position information of the portable information device from device position acquisition portion261. Level decision portion275decides a level of usability information for each candidate device. The level of usability information is defined by the distance between portable information device200and the candidate device. The shorter is the distance between portable information device200and the candidate device, the higher is the level. A table is stored in which the relationship between the level of usability information and the distance is set in advance. Here, the levels of usability information include a first level in which the distance between portable information device200and the candidate device is equal to or less than a threshold TL1, and a second level in which the distance is greater than threshold TL1, by way of example. Threshold TL1 is, for example 10 m. Level decision portion275calculates the distance between the position specified by the position information of the candidate device and the position specified by the position information of the portable information device, and decides the level of usability information corresponding to the calculated distance by referring to the table. Level decision portion275outputs a set of the device identification information of the candidate device, the level of usability information, and the distance to the candidate device, to device-specific information generation portion281.

Device-specific information generation portion281receives the output instruction from timing decision portion277, receives a set of the device identification information of the candidate device and the completion time from completion time prediction portion271, receives a set of the device identification information of the candidate device and the trouble information from trouble prediction portion273and receives a set of the device identification information of the candidate device, the level of usability information and the distance to the candidate device from level decision portion275. Device-specific information generation portion281generates usability information corresponding to the level of usage information for each candidate device until a stop instruction is input from completion confirmation portion279. The higher is the level of usability information, the greater is the amount of information.

Device-specific information generation portion281generates usability information for each candidate device every time the output instruction is input from timing decision portion277, and outputs the generated usability information to usability information output portion255. First, device-specific information generation portion281specifies the level of usability information, the completion time, the trouble information, and the distance to the candidate device for the candidate device for which usability information is to be generated. Device-specific information generation portion281then generates usability information at least including the device identification information for identifying the candidate device, the distance to the candidate device, and the completion time, as usability information corresponding to the candidate device with the first level of usability information.

Device-specific information generation portion281generates usability information at least including the distance to the candidate device, as usability information corresponding to the candidate device with the second level of usability information. In other words, the usability information of the second level includes information indicating the presence of a candidate device. Specifically, device-specific information generation portion281sorts the candidate devices with the second level of usability information, by distance ranges. The distance range is determined by the relative distance from portable information device200. Here, the candidate device with the second level of usability information is a device whose relative distance from portable information device200is greater than threshold TL1, 10 m. The distance range is set such that the relative distance from portable information device200is equal to or greater than 10 m and at 10 m intervals. More specifically, when the relative distance of a candidate device from portable information device200is 50 m, which is the largest, the distance ranges include a first distance range in which the relative distance is greater than 10 m and equal to or less than 20 m, a second distance range greater than 20 m and equal to or less than 30 m, a third distance range greater than 30 m and equal to less than 40 m, and a fourth distance range greater than 40 m and equal to or less than 50 m. Device-specific information generation portion281thus sorts the candidate devices with the second level of usability information into a first group in which the relative distance from portable information device200is in the first distance range, a second group in the second distance range, a third group in the third distance range, and a fourth group in the fourth distance range.

Device-specific information generation portion281counts the number of candidate devices sorted into each of the first to fourth groups and adds the information indicating the distance range of the group and the number of devices to the usability information. The information indicating the distance range of the group is “20 m” for the first group, “30 m” for the second group, “40 m” for the third group, and “50 m” for the fourth group.

In a case where trouble information is specified corresponding to the candidate device, device-specific information generation portion281generates usability information including the trouble information as usability information corresponding to that candidate device, irrespective of the level of the usability information. Since the trouble information includes a paper-out event, the usability information includes a message to give a notice that a paper-out event will occur. The message says, for example, “Paper is running out. Prepare a refill.”

Completion confirmation portion279receives the print status information from print status information acquisition portion269. Completion confirmation portion279determines whether the print job specified by the job identification information included in the print status information has been executed in any one of MFPs100,100A to100H. Specifically, a Completion Confirmation signal including the same job identification information as the job identification information included in the print status information is transmitted to server300through wireless LAN I/F208. If the print job specified by the job identification information included in the Completion Confirmation signal has been transmitted to any one of MFPs100,100A to100H, server300returns a Transmission Completion signal. If not transmitted, server300returns an Unsent signal.

If wireless LAN I/F208receives the Transmission Completion signal from server300, completion confirmation portion279determines that the print job specified by the job identification information included in the print status information has been executed in any one of MFPs100,100A to100H. If it is confirmed that the print job specified by the job identification information included in the print status information has been executed in any one of MFPs100,100A to100H, completion confirmation portion279outputs a stop instruction to device-specific information generation portion281.

FIG. 12is a flowchart showing an example of the procedure of a print assistance process. The print assistance process is a process executed by CPU201by CPU201of portable information device200executing a usability information generation program stored in flash memory203or CD-ROM211A. Here, the user having portable information device200operates PC400to input a print instruction, by way of example. In this case, PC400transmits a print job to server300and, when the user operates PC400to transmit a print job to server300, PC400transmits print status information to portable information device200allocated to the user200in advance.

Referring toFIG. 12, CPU201determines whether print status information is received (step S01). The process waits until print status information is received (NO in S01). If print status information is received (YES in S01), the process proceeds to step S02. In other words, the print assistance process is a process executed on condition that print status information is received.

In step S02, a device position is detected. The position of portable information device200detected by position detection portion209is detected. The moving distance ML is then calculated (step S03), and the moving direction is detected (step S04). The moving distance ML and the moving direction are detected based on the positions detected at different times in step S02. The moving distance ML is the distance of movement from the position at the time when print status information is received in step S01.

In the next step S05, a candidate device decision process is executed, and the process proceeds to step S06. The candidate device decision process, which will be detailed later, is a process of deciding a device that satisfies a predetermined condition among MFPs100,100A to100H capable of executing a print job, as a candidate device. Here, all of MFPs100,100A to100H are decided as candidate devices, by way of example.

In step S06, one of a process target is selected from among the candidate devices. The device information is then acquired from the candidate device selected as a process target (step S07). Wireless LAN I/F208is controlled to request the candidate device to transmit the device information. When wireless LAN I/F208receives the device information from the candidate device requested to transmit the device information, the device information received from the candidate device is acquired.

In the next step S08, the completion time is predicted. In a case where the print job specified by the print status information received in step S01is executed in the candidate device, the time when the print job will be completed is predicted. Specifically, the time spent for executing the print job in the candidate device is predicted as a job execution time, using the print speed of the image forming ability included in the device information acquired from the candidate device when the candidate device is decided in step S05, and the number of sheets required for image formation that is included in the print conditions included in the print information. In addition, the time when execution of the print job will be completed is calculated from the scheduled completion time of the state information included in the device information acquired from the candidate device and the predicted job execution time. The calculated time is then set as a completion time.

In the next step S09, a trouble of the candidate device is predicted. The trouble includes paper out. Trouble prediction portion273determines whether paper out will occur, using the remaining number of sheets that is included in the device information acquired from the candidate device when the candidate device is decided in step S05, and the number of sheets required for image formation that is included in the print conditions included in the print status information received in step S01. If it is determined that paper out will occur, it is predicted that a trouble will occur.

In the next step S10, a relative distance RL is calculated. Relative distance RL is the distance between portable information device200and the candidate device. Relative distance RL is calculated based on the position of portable information device200that is detected in step S02and the position of the candidate device that is stored in advance. Relative distance RL is then compared with threshold TL1 (step S11). Threshold TL1 is a predetermined value for defining the level of usability information and can be set as desired. Here, threshold TL1 is 10 m. If relative distance RL is equal to or less than threshold TL1, the process proceeds to step S12. If not, the process proceeds to step S13. In step S12, the level of usability information corresponding to the candidate device is decided as the first level, and the process proceeds to step S14. In step S13, the level of usability information corresponding to the candidate device is decided as the second level lower than the first level. The process then proceeds to step S14.

In step S14, it is determined whether a candidate device not selected as a process target exists. If a candidate device not processed exists, the process returns to step S06. If not, the process proceeds to step S15. In step S15, a usability information generation process is executed, and the process proceeds to step S16. The usability information generation process, which will be detailed later, is a process of generating usability information for each candidate device.

In step S16, the number of candidate devices is compared with a threshold TC. Threshold TC is a predetermined value for deciding the first output timing and can be set as desired. Here, threshold TC is two. The number of MFPs decided as candidate devices in step S05decreases as portable information device200moves. At a point of time when the number of candidate devices reaches threshold TC or less, the process proceeds to step S19. If not, the process proceeds to step S17. Since the number of candidate devices decreases with movement of portable information device200, a plurality of initial candidate devices are narrowed down to a device on which the user will execute a print job. The usability information for the candidate device that is likely to be a device on which the user will execute a print job is thus provided.

In step S17, it is determined whether a display instruction is accepted. A display instruction is accepted when the user designates a key included in operation unit207and to which a display instruction is allocated. If a display instruction is accepted, the process proceeds to step S19. If not, the process proceeds to step S18. This is to provide the usability information at the second timing designated by the user.

In step S18, moving distance ML is compared with a threshold TL2. Moving distance ML is a distance of movement from the position of portable information device200at the time when print status information is received in step S01. The position of portable information device200at the time when print status information is received in step S01is the position detected at the time when step S02is executed initially, and the current position is the position detected at the time when step S02is executed lastly. If moving distance ML is equal to or greater than threshold TL2, the process proceeds to step S19. If not, the process returns to step S02. Threshold TL2 is a predetermined value for deciding the third output timing and can be set as desired. Here, threshold value TL2 is 10 m.

In step S19, the usability information generated in step S15is displayed on display unit206. The process then proceeds to step S20. In step S20, an alarm sound is produced from the speaker of portable information device200. The process then proceeds to step S21. This is to notify the user that the usability information is displayed. The user views the usability information to know that which of MFPs100,100A to100H should execute the print job to shorten the wait time.

In step S21, it is determined whether print completion is confirmed. A Completion Confirmation signal including the print job identification information included in the print status information received in step S01is transmitted to server300, and if a Transmission Completion signal is received from server300, print completion is confirmed. When server300receives a Completion Confirmation signal from portable information device200, if the print job included in the Completion Confirmation signal has been transmitted to any one of MFPs100,100A to100H, server300returns a Transmission Completion signal. If the print job has not been transmitted, server300returns an Unsent signal. If print completion is confirmed, the process ends. If not, the process returns to step S02.

FIG. 13is a diagram showing an example of the procedure of the candidate device decision process. The candidate device decision process is a process executed in step S05in the print assistance process shown inFIG. 12. Referring toFIG. 13, CPU201selects one of the registered devices as a target device (step S31). The registered devices are MFPs100,100A to100H in the present embodiment. The position information indicating the absolute positions of MFPs100,100A to100H as the registered devices is stored in flash memory203in advance. An inquiry signal for asking the position information may be broadcasted via wireless LAN I/F208, and a device that returns the absolute position in response to the inquiry signal, among MFPs100,100A to100H, may be set as a registered device.

The relative direction is then calculated (step S32). The direction from portable information device200toward the target device is calculated as the relative direction, based on the absolute position of portable information device200that is detected in step S02in the print assistance process and the absolute position of the target device. In the next step S33, it is determined whether the target device is present within a predetermined range from the moving direction of portable information device200. The moving direction of portable information device200is the direction detected in step S04in the print assistance process. A predetermined range is, for example, a range±5° from the moving direction. If the target device falls within the predetermined range from the moving direction of portable information device200, the process proceeds to step S34. If not, the process proceeds to step S35.

In step S34, the target device is set as a candidate device. The process then proceeds to step S35. In step S35, it is determined whether a device not selected as a target device exists among the registered devices. If a registered device not selected exists, the process returns to step S31. If not, the process returns to the print assistance process.

FIG. 14is a flowchart showing an example of the procedure of the usability information generation process. The usability information generation process is a process executed in step S15in the print assistance process shown inFIG. 12. Referring toFIG. 14, CPU201selects one of the candidate devices as a process target (step S41). In the next step S42, it is determined whether the level of usability information of the candidate device selected as a process target is the first level. If it is the first level, the process proceeds to step S43. If not, the process proceeds to step S46. In step S43, the relative distance of the candidate device selected as a process target and the completion time are added to the usability information. The relative distance calculated in step S10in the print assistance process can be used as the relative distance of the candidate device, and the completion time predicted in step S08in the print assistance process can be used as the completion time.

In step S44, it is determined whether trouble information exists for the candidate device selected as a process target. If trouble information has been generated in step S09in the print assistance process for the candidate device selected as a process target, it is determined that trouble information exists. If trouble information exists, the process proceeds to step S45. If not, the process proceeds to step S46. In step S45, the device name of the candidate device selected as a process target and the trouble information are added to the usability information. The process then proceeds to step S46.

In step S46, it is determined whether a candidate device not selected as a process target in step S41exists. If a candidate device not processed exists, the process returns to step S41. If not, the process proceeds to step S47.

In step S47, the candidate device with the second level of usability information is extracted from the candidate devices (step S48). The extracted candidate devices are sorted by distance ranges (step S48). The distance range of the candidate device is defined by the relative distance from portable information device200. Here, the candidate device with the second level of usability information is a device whose relative distance from portable information device200is equal to or greater than threshold TL1, 10 m. The distance range is set such that the relative distance from portable information device200is equal to or greater than 10 m and at 10 m intervals. For example, when the relative distance of a candidate device from portable information device200is 50 m, which is the largest, the distance ranges include a first distance range in which the relative distance is greater than 10 m and equal to or less than 20 m, a second distance range greater than 20 m and equal to or less than 30 m, a third distance range greater than 30 m and equal to or less than 40 m, and a fourth distance range greater than 40 m and equal to or less than 50 m. The candidate devices with the second level of usability information are thus sorted into a first group in which the relative distance from portable information device200is in the first distance range, a second group in the second distance range, a third group in the third distance range, and a fourth group in the fourth distance range.

In the next step S49, a group is selected. One of the first to fourth groups is selected. The number of candidate devices sorted into the selected group is then counted (step S50). In the next step S51, the distance range and the number of devices are added to the usability information. The information indicating the distance range of the group selected in step S49and the number of devices counted in step S50are added to the usability information. If the first group is selected, the information “20 m” indicating the distance range of the first group and the number of candidate devices in the first group are added to the usability information. If the second group is selected, the information “30 m” indicating the distance range of the second group and the number of candidate devices in the second group are added to the usability information. If the third group is selected, the information “40 m” indicating the distance range of the third group and the number of candidate devices in the third group are added to the usability information. If the fourth group is selected, the information “50 m” indicating the distance range of the fourth group and the number of candidate devices in the fourth group are added to the usability information. For the group in which the number of devices is “0,” usability information may not be added.

In the next step S52, it is determined whether trouble information exists for any of the candidate devices sorted into the group selected in step S49. If trouble information has been generated in step S09in the print assistance process for any of the candidate devices sorted into the group, it is determined that trouble information exists. If trouble information exists, the process proceeds to step S53. If not, the process proceeds to step S54. In step S53, the device name of the candidate device and the trouble information are added to the usability information. The process then proceeds to step S54. In step S54, it is determined whether a group not processed exists. If a group not selected as a process target exists in step S49, the process returns to step S49. If a group not selected does not exist, the process returns to the print assistance process.

The provision of usability information will now be described specifically.FIG. 15is a first diagram showing an example of the positional relationship between candidate devices and a user at a first time.FIG. 15shows the positional relationship between the candidate devices and the user at the first time while the user is moving in the arrow direction in the figure. Referring toFIG. 15, all of the nine MFPs100,100A to100H included in print system1are present within a predetermined range from the user's moving direction. Accordingly, the nine MFPs100,100A to100H are candidate devices.

MFP100is present at a distance of 1 m from the current position of the user. Three MFPs100A,100B,100C are present at a distance of 10 m from the current position of the user. Five MFPs100D,100E,100F,100G,100H are present at a distance of 50 m from the current position of the user.

FIG. 16is a diagram showing an example of usability information at the first time. The usability information shown inFIG. 16appears on display unit206of portable information device200carried by the user at the first time. Referring toFIG. 16, the usability information includes the usability information for MFP100located 1 m away from the user, “Authenticate with MFPA 1 m ahead and printing will be completed after 10 minutes.” The usability information for MFP100is the first level and includes the completion time. “MFPA” is the name given to MFP100.

The usability information includes the usability information for MFPs100A,100B,100C located 10 m away from the user, “Three MFPs 10 m ahead are ready for printing.” The usability information for MFPs100A,100B,100C is the second level.

The usability information includes the usability information for MFP100C, “MFPB will run out of paper after 50 sheets. Prepare a refill.” “MFPB” is the name given to MFP100C. The usability information “MFPB will run out of paper after 50 sheets. Prepare a refill.” is trouble information for MFP100C and is a message to give a notice that a paper-out event will occur.

The usability information includes the usability information for MFPs100D to100H located 50 m away from the user, “Five MFPs are available 50 m ahead.” The usability information for MFPs100D to100H is the second level.

FIG. 17is a diagram showing an example of the positional relationship between candidate devices and a user at a second time.FIG. 17shows the relationship between the candidate devices and the user at the second time while the user is moving in the arrow direction in the figure. The second time is the time when the user has moved 10 m in the moving direction since the first time. Referring toFIG. 17, MFPs100C,100E,100F,100G,100H out of nine MFPs100,100A to100H included in print system1are present within a predetermined range from the user's moving direction. Accordingly, the five MFPs100C,100E,100F,100G,100H are the candidate devices.

MFP100C is present at a distance of 1 m from the current position of the user. Four MFPs100E,100F,100G,100H are present at a distance of 40 m from the current position of the user.

FIG. 18is a diagram showing an example of usability information at the second time. The usability information shown inFIG. 18appears on display unit206of portable information device200carried by the user at the second time. Referring toFIG. 18, the usability information includes the usability information for MFP100C located 1 m away from the user, “MFPB 1 m ahead takes 5 minutes to complete a print job.” “MFPB” is the name given to MFP100C. The usability information for MFP100C is the first level and includes the completion time.

The usability information also includes the usability information for MFP100C, “Paper will run out after 50 sheets. Prepare a refill.” “MFPB” is the name given to MFP100C. The usability information “Paper will run out after 50 sheets. Prepare a refill.” is trouble information for MFP100C and is a message to give a notice that a paper-out event will occur.

The usability information further includes the usability information for MFPs100E to100H located 50 m away from the user, “Four MFPs are available 50 m ahead.” The usability information for MFPs100E to100H is the second level.

FIG. 19is a diagram showing an example of the positional relationship between candidate devices and a user at a third time.FIG. 19shows the positional relationship between the candidate devices and the user at the third time while the user is moving in the arrow direction in the figure. The third time is the time when the user has moved 20 m in the moving direction since the second time. Referring toFIG. 19, MFPs100F,100G,100H out of the nine MFPs100,100A to100H included in print system1are present in a predetermined range from the moving direction of the user. Accordingly, three MFPs100F,100G,100H are candidate devices. MFPs100F,100G,100H are present at a distance of 20 m from the current position of the user.

FIG. 20is a diagram showing an example of usability information at the third time. The usability information shown inFIG. 20appears on display unit206of portable information device200carried by the user at the third time. Referring toFIG. 20, the usability information includes the usability information for MFPs100F,100G,100H located 20 m away from the user, “Three MFPs are available 20 m ahead.” The usability information for MFPs100F to100H is the second level.

First Modification

In print system1in the foregoing embodiment, usability information is generated in portable information device200and displayed. A print system1A in a first modification differs in that usability information is generated in server300. For print system1A in the first modification, the difference from the forgoing print system1will be mainly described below.

In the first modification, PC400transmits print status information to server300. More specifically, in the first modification, the functions of CPU401of PC400differ from the functions shown inFIG. 7in print status information transmission portion461. Print status information transmission portion461of CPU401of PC400in the first modification transmits a set of the user identification information of the authenticated user and the print status information to server300through communication unit405.

FIG. 21is a block diagram showing an example of functions of the CPU of the server in the first modification. Referring toFIG. 21, the functions of CPU301A of server300in the first modification differs from the functions of CPU301of server300shown inFIG. 8in that a print status information reception portion371, a portable information device specifying portion373, a usability information generation portion253A, and a usability information transmission portion375are added. The other functions are the same as the functions of CPU301of server300shown inFIG. 8. A description therefore will not be repeated here.

Referring toFIG. 21, print status information reception portion371controls communication unit305to receive a set of the user identification information and the print status information transmitted by PC400. In response to a set of the user identification information and the print status information being received from PC400, print status information reception portion371outputs the print status information to usability information generation portion253A and outputs the user identification information to portable information device specifying portion373.

In response to input of the user identification information from print status information reception portion371, portable information device specifying portion373specifies portable information device200allocated to the user specified by the user identification information. Server300stores user data in advance in which the user identification information is associated with the device identification information for identifying portable information device200allocated to that user. Portable information device200is specified based on the user data. Portable information device specifying portion373outputs the device identification information to usability information generation portion253A.

The user data may be stored in PC400, so that the portable information device allocated to the user specified by the user identification information may be specified in PC400. A set of the device identification information for identifying portable information device200and the print status information may be received from PC400.

Usability information generation portion253A has the same functions as the usability information generation portion253shown inFIG. 11, excluding the device position acquisition portion261. Device position acquisition portion261of usability information generation portion253in the first modification acquires, from portable information device200, the position information of portable information device200specified by the device identification information input from portable information device specifying portion373. The position information of portable information device200is acquired by requesting portable information device200to transmit the position information and receiving the position information sent back from portable information device200.

Usability information transmission portion375transmits the usability information generated by usability information generation portion253A to portable information device200specified by portable information device specifying portion373, through communication unit305.

FIG. 22is a block diagram showing an example of functions of the CPU of the portable information device in the first modification. Referring toFIG. 22, the functions of CPU201A of portable information device200in the first modification differs from the functions of CPU201of portable information device200shown inFIG. 10in that print status information reception portion251and usability information generation portion253are deleted and in that a usability information reception portion291and a device position transmission portion293are added. The other functions are the same as the functions shown inFIG. 10and therefore a description will not be repeated here.

Usability information reception portion291controls wireless LAN I/F208to receive usability information transmitted by server300. In response to the usability information being received from server300, usability information reception portion291outputs the usability information to usability information output portion255.

When wireless LAN I/F208receives a signal for requesting transmission of the position information from server300, device position transmission portion293transmits the position information to server300to indicate the position detected by device position detection portion257.

Second Modification

In the foregoing print system1, usability information is generated in portable information device200and displayed. A print system1B in a second modification differs in that usability information is generated in any one of MFPs100,100A to100H. Here, MFP100generates usability information, by way of example. For print system1B in the second modification, the difference from the foregoing print system1will be mainly described.

In the second modification, PC400transmits print status information to MFP100. More specifically, in the second modification, the functions of CPU401of PC400differ from the functions shown inFIG. 7in print status information transmission portion461. Print status information transmission portion461of CPU401of PC400in the second modification transmits a set of the user identification information of the authenticated user and the print status information to MFP100through communication unit405.

FIG. 23is a block diagram showing an example of functions of the CPU of the MFP in the second modification. Referring toFIG. 23, the functions of CPU111A of MFP100in the second modification differ from the functions of CPU111of MFP100shown inFIG. 9in that a print status information reception portion63, a portable information device specifying portion65, a usability information generation portion253B, and a usability information transmission portion67are added. The other functions are the same as the functions of CPU111of MFP100shown inFIG. 9. A description therefore will not be repeated here.

Referring toFIG. 23, print status information reception portion63controls communication I/F unit112to receive a set of the user identification information and the print status information transmitted by PC400. In response to a set of the user identification information and the print status information being received from PC400, print status information reception portion63outputs the print status information to usability information generation portion253B and outputs the user identification information to portable information device specifying portion65.

In response to input of the user identification information from print status information reception portion63, portable information device specifying portion65specifies portable information device200allocated to the user specified by the user identification information. MFP100stores user data in advance in which the user identification information is associated with the device identification information for identifying portable information device200allocated to that user. Portable information device200is specified based on the user data. Portable information device specifying portion65outputs the device identification information to usability information generation portion253B.

The user data may be stored in PC400, so that the potable information device allocated to the user specified by the user identification information is specified in PC400. A set of the device identification information for identifying portable information device200and the print status information may be received from PC400.

Usability information generation portion253B has the same functions as usability information generation portion253shown inFIG. 11, excluding device position acquisition portion261. Device position acquisition portion261of usability information generation portion253B in the second modification acquires, from portable information device200, the position information of portable information device200specified by the device identification information input from portable information device specifying portion65. The position information of portable information device200is acquired by requesting portable information device200to transmit the position information and receiving the position information sent back from portable information device200.

Usability information transmission portion67transmits the usability information generated by usability information generation portion253B to portable information device200specified by portable information device specifying portion65through communication I/F unit112.

The functions of the CPU of the potable information device in the second modification differ from the functions shown inFIG. 22only in usability information reception portion291and device position transmission portion293, and the other functions are the same. Specifically, usability information reception portion291controls wireless LAN I/F208to receive the usability information transmitted by MFP100. In response to the usability information being received from MFP100, usability information reception portion291outputs the usability information to usability information output portion255.

When wireless LAN I/F208receives a signal for requesting transmission of the position information from MFP100, device position transmission portion293transmits the position information to MFP100to indicate the position detected by device position detection portion257.

As described above, in print system1in the present embodiment, any one of portable information device200, server300, MFPs100,100A to100H functions as a usability information generation device. The usability information generation device then generates usability information indicating a state in which a print job is to be executed in each of MFPs100,100A to100H, based on the device information generated by each of MFPs100,100A to100H and the print status information generated by PC400. Portable information device200outputs the generated usability information. When a print job is specified in PC400, usability information is generated to indicate a state in which the print job is to be executed in each of MFPs100,100A to100H. The usability information is output by portable information device200, so that the user can easily select the device to execute the print job, from among MFPs100,100A to100H.

The time when execution of the print job will be finished is output as the usability information. The user is thereby notified of which of MFPs100,100A to100H will finish the job earlier.

The usability information also includes trouble information. The user is thereby notified of which of MFPs100,100A to100H will have a trouble such as paper out.

One or more candidate devices are decided from among MFPs100,100A to100H, based on the position where each of MFPs100,100A to100H is arranged and the position of portable information device200. The usability information is generated corresponding to each of the one or more candidate devices. Accordingly, candidate devices are decided based on the relative position between the user and MFPs100,100A to100H, so that the usability information of only the device that is likely to be used by the user is output.

A device present in a predetermined range from the moving direction of portable information device200is decided as a candidate device from among MFPs100,100A to100H, so that the usability information of only the device that is likely to be used by the user is output.

The usability information in different levels is generated depending on the distances between portable information device200and the candidate devices, so that the information provided can be varied depending on the distances from the user.

The timing for outputting the usability information is decided as the first output timing, the second output timing, or the third output timing, so that the usability information can be output efficiently. The first output timing, the second output timing, and the third output timing may be used alone or in combination of two or more.

Although print system1has been described in the embodiment above, it is needless to say that the present invention can be understood as a usability information generation method for allowing any one of portable information device200, server300, MFPs100,100A to100H to execute the print assistance process shown inFIG. 19, and a usability information generation program for allowing the CPU of any one of portable information device200, server300, MFPs100,100A to100H to execute the usability information generation method.