The present invention relates to a server, a program, and a transmission processing method for transmitting output data to an output apparatus in accordance with a request from a client.
Such a technique is known from JP-A-2012-159915. JP-A-2012-159915 discloses a print control server configured to transmit an electronic message to an electronic-mail address associated with a printer in accordance with a request from a guest terminal.
In JP-A-2012-159915, the print control server provides the guest terminal with a web page for specifying a print object and for performing a print setting operation. However, the web page is configured such that a user gives a print instruction by selecting a print object from a drop-down list. Therefore, the user has to locate the print object from a large number of candidates, which is time-consuming.
An advantage of some aspects of the invention is to provide a server, a program, and a transmission processing method for receiving a process object and transmitting the process object to an output apparatus by a simple operation.
A server according to an aspect of the invention includes: a provision unit configured to provide a web page including a drop area; a process object receiving unit configured to receive a process object uploaded via the web page, where uploading of the process object is triggered by dragging-and-dropping the process object onto the drop area; and a transmission processing unit configured to transmit the process object, which has been received, to an output apparatus.
A program according to a further aspect of the invention causes a server to function as a provision unit configured to provide a web page including a drop area; a process object receiving unit configured to receive a process object uploaded via the web page, where uploading of the process object is triggered by dragging-and-dropping the process object onto the drop area; and a transmission processing unit configured to transmit the process object, which has been received, to an output apparatus.
A transmission processing method according to a still further aspect of the invention includes: providing a web page including a drop area; receiving a process object uploaded via the web page, where uploading of the process object is triggered by dragging-and-dropping the process object onto the drop area; and transmitting the process object, which has been received, to an output apparatus, wherein the providing of the web page, the receiving of the process object, and the transmitting of the process object are performed by a server.
With the configuration according to the aspects of the invention, a user can use an output service by a simple operation of dragging and dropping the process object onto the drop area included in the web page. Moreover, the use of the web page as a user interface requires only installation of a web browser in a terminal to which an operation is to be given and does not depend on an environment such as an Operating System (OS).
Note that the output apparatus refers to an apparatus such as a printing apparatus, a display apparatus (including a projector apparatus), a communication apparatus, or an acoustic apparatus configured to output any information to the outside.
In the server, an output setting of the output apparatus is preferably associated with the drop area, and the transmission processing unit preferably converts the process object dropped onto the drop area in accordance with the output setting associated with the drop area and then outputs the process object to the output apparatus.
With this configuration, since the drop area is associated with the output setting, a user can omit a process of specifying the output setting.
In the server, the web page preferably includes a plurality of the drop areas each having different output settings associated therewith, and in each of the drop areas, information denoting the output setting associated with the corresponding one of the drop areas is displayed.
With this configuration, a user refers to the information denoting the output setting displayed in each drop area to specify a desired output setting from a plurality of output setting options.
In the server, the web page preferably includes: an output destination specifying area for specifying an output apparatus which will serve as an output destination; and the drop area, and the transmission processing unit preferably transmits the process object dropped onto the drop area to the output destination specified in the output destination specifying area.
With this configuration, since the web page includes the output destination specifying area, a user can easily specify the output destination (transmission destination of the process object).
In the server, the output apparatus, which is specified as the output destination among one or more output apparatuses associated with a logged-in user, is preferably associated with the web page, and the transmission processing unit preferably transmits the process object to an output destination corresponding to the web page including the drop area onto which the process object is dropped.
With this configuration, a user can specify the output destination from output apparatuses registered in advance. Moreover, in the web page, a print instruction operation (drag-and-drop operation) is given with the output apparatus being identified, and therefore, it is possible to reduce erroneous operations (specifying an output apparatus which is not intended to be the output destination).
In the server, the process object receiving unit preferably notifies the web page of an upload destination when the process object is dropped onto the drop area, and the process object receiving unit preferably receives the process object uploaded to the upload destination via the web page.
With this configuration, it is required only that the upload destination is secured when the process object is dropped onto the drop area, and therefore, it is not needed to prepare the upload destination in advance.
In the server, a program for detecting the drag-and-drop operation is preferably incorporated into the web page, the program preferably performs a registration request of the process object when the program detects that the process object is dropped onto the drop area, and the process object receiving unit preferably performs a notification of the upload destination in response to the registration request of the process object.
With this configuration, since the program incorporated into the web page detects the drag-and-drop operation and performs the registration request of the process object to the server, a separate program is not required.
Note that the server of the invention may be physically realized by one apparatus or by cooperation of a plurality of apparatuses. Moreover, the function of each of components in the description of the invention is not limited to that realized by each of hardware resources physically independent from each other, but a plurality of functions may be realized by one hardware resource, or one function may be realized by a plurality of hardware resources.
The invention will be described with reference to the accompanying drawings, wherein like numbers reference like elements.
With reference to the attached drawings, an embodiment of a server, a program, and a transmission processing method of the invention will be described below. In the present embodiment, a print server 2 is illustrated as an example of the server, and a web application 62 is illustrated as an example of a program for operating the server. Moreover, a printer 3 is illustrated as an example of an output apparatus.
As illustrated in
In
The PC 1 realizes various types of functions performed via a web page (a user page) provided by the print server 2. The web page is used for, for example, registering a printer, giving a print object print instruction, checking the status of a printer, and checking the job history of a printer.
Of these functions (hereinafter denoted as “web page functions”) realized by the web page, “registering a printer” refers to associating information (printer name, email address, serial number, and the like) of the printer 3 with a user account in the print service. Registering a printer enables the printer 3 to establish a continuous connection based on a predetermined real-time communication protocol (for example, Extensible Messaging and Presence Protocol (XMPP)) with the print server 2 and to perform real-time communication.
Moreover, the web page function of giving a print object print instruction refers to an operation of dragging and dropping an icon 70 (see, for example,
The printer 3 is registered in the print service via the web page function of registering a printer and is connected to the print server 2 by a print service connection function being enabled.
Next, with reference to
The CPU 11 inputs and outputs signals to and from each of the components in the PC 1 to perform various types of arithmetic processing. The ROM 12 is a non-volatile memory medium and stores various types of control programs and various types of control data. The RAM 13 is a volatile memory medium and is used as a work area of the CPU 11. The HDD 14 is an auxiliary memory apparatus and stores a web browser 61 and the like for displaying the web page.
The communication I/F 15 communicates with the print server 2 via an Internet-based communication network (the first network NW1). The communication is performed mainly to communicate with the web page and to upload the print object. The display 16 displays various types of information such as the web page displayed by the web browser 61. The keyboard 17 and the mouse 18 are used by a user to input information.
The CPU 21 inputs and outputs signals to and from each of the components in the print server 2 to perform various types of arithmetic processing. The ROM 22 stores various types of control programs and various types of control data. The RAM 23 is used as a work area of the CPU 21. The communication I/F 24 communicates with the PC 1 and the print server 3 via Internet-based communication networks (the networks NW1 and NW2). Note that when the networks NW1 and NW2 are different networks, the print server 2 includes individual interfaces corresponding to communication protocols of the networks NW1 and NW2.
The HDD 25 stores the web application 62. The print server 2 uses the function of this web application 62 to realize, for example, provision of the web page and a transmission process of the print data. The HDD 25 further includes a user management database (hereinafter denoted as “user management DB”) 63, a device management database (hereinafter denoted as “device management DB”) 64, and storage 65.
The user management DB 63 stores a user account (a user ID and a password) including personal information for each user. The device management DB 64 stores information (the printer name, email address, serial number, print setting, and the like) of the printer 3. The storage 65 stores the print object uploaded via the web page (the PC 1 which displays the web page), information denoting the print setting of the print object, and the like.
Note that in
The CPU 31 inputs and outputs signals to and from each of the components in the printer 3 to perform various types of arithmetic processing. The ROM 32 stores firmware and the like of the printer 3. The RAM 33 is used as a work area of the CPU 31.
The communication I/F 34 communicates with the print server 2 via an Internet-based communication network (the second network NW2). The printing mechanism 35 performs printing in accordance with the print data transmitted from the print server 2. The print data transmitted from the print server 2 includes image data (a bitmapped image) in the Portable Network Graphics (PNG) format and a control command based on the ESC/P-R protocol. Note that the printing mechanism 35 includes a plurality of paper feeder (paper cassettes), and it is assumed that different types of paper are loaded. Moreover, the printing mechanism 35 enables color/monochrome printing, double-sided/single-sided printing, and layout printing. The term “layout printing” denotes a function of printing a plurality of pages laid out on one sheet of print paper.
Next, with reference to
The provision unit 210 provides the PC 1 with the web page including the drop area E (provision step). The PC 1 displays the web page, which has been provided, on the display 16 by using the web browser 61. A user uses the web page, which has been displayed, as a user interface to perform various types of operations such as giving a print instruction.
The reception unit 220 includes an instruction information receiving unit 221 and a process object receiving unit 222. The instruction information receiving unit 221 receives instruction information generated in accordance with an operation result of the web page. In the present embodiment, the instruction information receiving unit 221 receives, as the instruction information, information denoting the print setting of the printer 3 (hereinafter denoted as “print setting information”) and a job registration request which requests the print server 2 to register (upload) the print object. Note that the print setting is an example of an output setting, and the job registration request is an example of a registration request of a process object.
The process object receiving unit 222 receives the print object uploaded via the web page (process object reception step). The web page uploads the print object, where uploading of the print object is triggered by dragging-and-dropping the icon 70 of the print object onto the drop area E. That is, when the web page detects that the icon 70 is dropped onto the drop area E, the web page uploads the print object (a file) corresponding to the icon 70 to the print server 2 without requiring a print execution operation to be performed.
The transmission processing unit 230 includes a conversion processing unit 231 and a transmission unit 232. The conversion processing unit 231 converts the print object received via the web page into print data (image data and a control command). The print setting information is reflected in the image data and the control command included in the print data. In the present embodiment, the image data and the control command of the print setting information are generated as the print data. A color/monochrome setting is reflected in the image data. A paper setting (including a paper type setting and a paper size setting), a single-sided/double-sided setting, and a layout setting are reflected in the control command. The print data generated by the conversion processing unit 231 is registered as a job in a predetermined storage area (a job queue of a specified printer 3) in the storage 65.
The transmission unit 232 transmits the print data which is generated by the conversion processing unit 231 (and which is obtained by converting the print object) to the specified printer 3 (transmission process step). Note that a user specifies a transmission destination of the print data among one or more printers 3 associated with the logged-in user. After the print data is generated by the conversion processing unit 231 and is registered as a job, the transmission unit 232 receives a print start instruction via the web page and then performs a job notification to cause the specified printer 3 to acquire the print data and to execute printing. The job notification is a push notification in XMPP message format to notify the printer 3 of the presence of print data to be printed and an address (URL) denoting where in the print server 2 the data is stored. When the printer 3 accesses the notified URL via Hypertext Transfer Protocol Secure (HTTPS), the transmission unit 232 transmits the print data via HTTPS to the printer 3.
Next, with reference to
As illustrated in
When any one printer 3 from the printer list 68 is specified, a printer screen corresponding to the specified printer 3 is displayed. The print log screen shown in a screen D2 of
When “print log” is selected in the item selection area 73 of the printer status screen, the print log screen shown in the screen D2 of
Moreover, the lower area 72 of the printer screen includes the item selection area 73 and a main area 74. The main area 74 of the print log screen is a print log area. In the item selection area 73, items for displaying the printer status screen, the print log screen, and the like of the specified printer 3 are displayed.
The main area 74 (the print log area) displays a screen title 80, a refresh button 81, the log list 82, and a drop area E0. When the refresh button 81 is selected, information which is newest is reflected in the log list 82. The log list 82 displays the print history of the specified printer 3 in rows. The log list 82 contains a reception date and time field, a service field, a file name field, a total file number field, and a state field as rows. The reception date and time field displays the date and time at which the print data was received by the print server 2. Moreover, the service field displays the type of service in which a print job is registered to the printer 3. Examples of the service include a print service for causing the printer 3 to perform printing via the print server 2 from a print application installed on a smartphone and a print service for causing the printer 3 to perform printing via the print server 2 from an application such as a printer driver installed on the PC 1, and additionally, a service for causing the printer 3 to perform printing by uploading a print object via the web page to the print server 2. In the example shown in
The drop area E0 displays a message for prompting a drag-and-drop operation and displays a printable file format in text. The printable file format is displayed by being classified as a document file or an image file.
Here, when a user drops the icon 70 visible on the user interface (for example, a file manager, a desktop area, etc.) of the PC 1 onto the drop area E0 by the drag-and-drop operation, an event handler set to the drop area E0 performs a job registration request to the print server 2. Note that the event handler is an example of a program for detecting the drag-and-drop operation. When receiving the job registration request, the print server 2 creates print job information for the printer 3. Then, the print server 2 notifies the event handler of the upload destination of the print object associated with the print job information. The event handler uploads the print object to the notified upload destination.
Moreover, when the event handler starts uploading the print object, the web browser 61 displays an upload dialog screen shown in a screen d1 of
When the cancel button 87 is selected, the upload dialog screen is hidden. Alternatively, when the print start button 88 is selected, the print server 2 performs the job notification to the printer 3. The print setting 89 shows set values set in the specified printer 3. The set values may be default values prescribed for each of the printers 3 or may be the most recently set values for each of the printers 3. The example in
However, when the change button 90 is selected, a print setting dialog screen shown in a screen d2 in
When the “cancel” button 97 is selected, the print setting dialog screen is hidden, and the upload dialog screen shown in the screen d1 in
Next, with reference to the sequence diagram in
When receiving the job registration request from the PC 1 (web page), the print server 2 starts job registration, secures an upload destination of the file (S04), and notifies the PC 1 (web page) of the upload destination (S05). The PC 1 (web page) uploads a file corresponding to the icon 70 dropped onto the drop area E to the notified upload destination (S06).
The print server 2 checks the uploaded file for a virus and determines whether or not the uploaded file is in a printable format. When no problem is found, the print server 2 converts the uploaded file into print data. Moreover, the print server 2 stores the print data after the conversion in a job queue for the specified printer 3 and deletes the original file which is the conversion source of the print data (S07). Thereafter, the print server 2 notifies the PC 1 (web page) of a status code indicating that the job is normally registered as a job registration completion notification (S08).
The PC 1 (web page) receives the notification of S08 and displays that the uploading has been successfully performed (S09). This display corresponds to the message denoted by reference symbol 84 in the upload dialog screen (see
Note that when the print setting is changed in the print setting dialog screen (see
When the printer 3 receives the job notification from the print server 2, the printer 3 is triggered by the reception of the job notification to access a storage address (job queue) of the print data via HTTPS so as to acquire the print data from the print server 2 (S12). Alternatively, the printer 3 may request the print server 2 to transmit the print data. In this way, the print server 2 transmits the print data to the printer 3 (provides the printer 3 with the print data) in any way (S13). When acquiring the print data, the printer 3 performs required processes therein and then performs printing (S14). The printer 3 notifies the print server 2 of the status of processes in accordance with stages of the processes (S15), and the print server 2 refreshes the state of the job in accordance with the notification (S16). Moreover, when completing the printing, the printer 3 notifies the print server 2 of the status of print completion (S17), and the print server 2 refreshes the state of the job and deletes the print data from the storage address (S18).
As described above, the printing system SY of the present embodiment enables a user to give a print instruction to the print server 2 by a simple operation of dragging and dropping the icon 70 of a print object onto the drop area E set in the web page. Moreover, the web page is used as a user interface, and therefore, the PC 1 for performing the operation requires only that the web browser 61 is installed, and the printing system SY does not depend on the environment such as the OS.
Moreover, the printer 3 which is to be the output destination is associated with the web page (the print log screen, see
Moreover, since the upload dialog screen (see
Next, with reference to
A printer 3 of the present embodiment includes two paper feeders, and in one of the two paper feeders, 210 mm×297 mm regular paper sheets are loaded, and in the other of the two paper feeders, 89 mm×127 mm photographic paper sheets are loaded. Moreover, a transmission processing unit 230 of the present embodiment converts a print object in accordance with a print setting associated with a drop area E (conversion processing unit 231) to obtain print data after the conversion and transmits the print data to the printer 3 (transmission unit 232).
A screen D3 shown in
When the new button 101 is selected, a print setting creation dialog screen shown in a screen d3 in
Each of the drop areas E1 to E3 displays an “edit” button 102 and a “delete” button 103, and additionally, a setting name 104 and print setting values 105 in text. When the “edit” button 102 is selected, a print setting creation dialog screen in which an existing print setting (the print setting values 105 displayed in the corresponding drop area E) is reflected is displayed. Alternatively, when the “delete” button 103 is selected, the corresponding drop area E is hidden.
In the state shown in
Note that as in the drop area E3, when “photographic paper” is selected as the paper type, the printer 3 can perform neither double-sided printing nor layout printing, and therefore, the print setting values 105 for a single-sided/double-sided setting and a layout setting are grayed out.
The screen d3 in
A user uses the radio buttons 110 to select for which one of a document file and an image file a print setting is performed. In the example shown in
When the “cancel” button 115 is selected, a setting in the print setting creation dialog screen is canceled, and the print setting creation dialog screen is hidden. In contrast, when the “OK” button 116 is selected, the setting in the print setting creation dialog screen is reflected in the drop print screen (see
As described above, in the print system SY of the present embodiment, the print setting is associated with the drop area E, and therefore, a user can omit a process of specifying the print setting. Moreover, the plurality of drop areas E corresponding to different print settings are displayed, and therefore, a user can rapidly specify a desired output setting.
Moreover, the present embodiment requires no print setting after uploading the print object, and a print start instruction operation (see S10 in
Next, with reference to
A screen D4 shown in
The drag-and-drop print screen displays a screen title 66, a refresh button 67, a printer list 68 and further displays the drop area E4 and a “cancel” button 120. The printer list 68 displayed in the drag-and-drop print screen has a selection field including checkboxes each corresponding to an associated one of printers 3, and a user can specify each output destination by checking an associated one of the checkboxes. Here, the number of the output destinations specified is not limited to one, but a plurality of printers may be specified. Note that the printer list 68 of the drag-and-drop print screen is an example of an output destination specifying area.
Moreover, the drop area E4 displays a message which prompts specifying a printer 3 and performing a drag-and-drop operation, the number of printers specified, and a printable file format in text. The printable file format is displayed by being classified as a document file or an image file.
In the state shown in
Note that although not particularly shown in the figure, when the icon 70 is dropped onto the drop area E4, the PC 1 (web page) displays the upload dialog screen (see
As described above, in the print system SY of the present embodiment, the drag-and-drop print screen includes a printer list 68 for specifying the output destination, and therefore, a user can easily specify the output destination. Moreover, in the printer list 68, a plurality of output destinations can be specified, which provides convenience when the plurality of printers 3 are to be caused to print the same content.
While three embodiments have been described above, these embodiments are not intended to be limiting, but the following variations can be used.
In the first embodiment, the print setting is changed (see the upload dialog screen d1 in
The print log screen according to the first variation is different from the print log screen (see
The print setting dialog screen displays a screen title 124, a document file setting field 108, an image file setting field 109, a “cancel” button 126, and an “OK” button 127. The display item of the document file setting field 108 is similar to the print setting creation dialog screen (see
Note that similarly to the second embodiment, the present variation requires no print setting after uploading of the print object, which enables the print server 2 to perform a job notification to the printer 3 in accordance with the completion of the uploading of the print object. That is, without waiting for a print start instruction via the web page, the process may proceed from S07 of
In the third embodiment, the print setting is performed for each of the printers 3 after the print object is uploaded. However, the same print setting may be reflected in all the output destinations specified by the printer list 68. In this case, as in the first variation, specifying of the print object (a drag-and-drop operation of the icon 70) may be performed after the print setting is performed.
In the third embodiment, the printer list 68 is used to specify the output destination, but the plurality of drop areas E corresponding to different output destinations may be provided on the web page so as to enable identification of the output destination in accordance with a drop area in which the icon 70 is dropped. Moreover, a combination with the second embodiment may be made to provide a plurality of drop areas E which are different from each other in terms of the print setting and the output destination so as to enable identification of the output destination and the print setting in accordance with the drop area in which the icon 70 is dropped.
In the first to third embodiments and the first variation, a case where one file is dragged and dropped is taken as an example (see
In the first to third embodiments, the print data is generated in accordance with the print setting information included in the instruction information received by the instruction information receiving unit 221, but the reception of the instruction information may be omitted. That is, the print data may be generated in accordance with a prescribed print setting or print setting information acquired regardless of an operation of specifying the print object.
In the first to third embodiments, the PC 1 is illustrated as an example of a terminal for operating the web page, but the web page may be operated by using an information processing terminal such as a tablet terminal other than the PC 1.
In the first to third embodiments, the printer 3 is illustrated as an example of the output apparatus, but the present embodiment may be applied to other output apparatuses. Examples of other output apparatuses include a display apparatus (including a projector apparatus), a communication apparatus, and an acoustic apparatus. In this case, as the output settings of the display apparatus, the communication apparatus, and the acoustic apparatus, a display setting, a communication setting, and an acoustic setting can respectively be instructed.
Each component (each function) in the apparatuses in the printing system SY shown in each of the embodiment and the variations described above may be provided as a program. Moreover, the program may be provided as various types of recording media (CD-ROM, flash memory, etc.) storing the program. That is, a program for causing the computer to function as each of the components (each of the functions) in a corresponding one of the apparatuses in the printing system SY and a computer-readable recoding medium in which the program is stored are also within a scope of the invention. Other modifications may be made accordingly without deviating from the scope of the invention.
The entire disclosure of Japanese Patent Application No. 2017-34003, filed Feb. 24, 2017 is expressly incorporated by reference herein.
Number | Date | Country | Kind |
---|---|---|---|
2017-034003 | Feb 2017 | JP | national |