1. Field of the Invention
The present invention relates to an image processing apparatus, a control method of an image processing apparatus, and a storage medium.
2. Description of the Related Art
Japanese Patent Application Laid-Open No. 2006-127503 discusses conventional art in which an information processing apparatus such as a personal computer (PC) is connected to a web server on a network and an operation screen provided by the web server is displayed on a web browser provided in the information processing apparatus.
According to Japanese Patent Application Laid-Open No. 2006-127503, the web server presents the operation screen for inputting an instruction to use functions provided in a multifunction peripheral (MFP). More specifically, a user of the MFP inputs an instruction to the MFP via the operation screen displayed on the web browser. The input instruction is notified to the web server by the web browser of the MFP. The web server that receives the notification requests the MFP to execute various processing in response to instruction contents input from the user. The MFP that receives the request executes the requested processing. Thus, all menu data for operating the MFP does not need to be stored in the MFP, and the menu data can be easily changed on the web server. According to Japanese Patent Application Laid-Open No. 2006-127503, the server uniformly presents screen information to display a menu screen for operating the MFP. Therefore, it is possible to display a menu screen common to all MFPs.
However, with the method according to Japanese Patent Application Laid-Open No. 2006-127503, it is not possible to display on the menu screen information about application individually installed on the MFP that is not grasped by the web server.
The present invention is directed to provide an image processing apparatus to enable proper display of information about application individually installed on the image processing apparatus on an operation screen of the image processing apparatus provided from an external device such as a server.
According to an aspect of the present invention, an image processing apparatus includes a storage unit configured to store information about application installed on the image processing apparatus, a generation unit configured to generate, when the image processing apparatus receives first screen information for operating the image processing apparatus and a display instruction for displaying the information about the application on an operation screen of the image processing apparatus from an external device, second screen information by using the first screen information and the information stored in the storage unit, and a display unit configured to display the operation screen based on the second screen information.
Further features and aspects of the present invention will become apparent from the following detailed description of exemplary embodiments with reference to the attached drawings.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate exemplary embodiments, features, and aspects of the invention and, together with the description, serve to explain the principles of the invention.
Various exemplary embodiments, features, and aspects of the invention will be described in detail below with reference to the drawings.
The exemplary embodiments do not limit the present invention according to claims. All combinations of features according to the exemplary embodiments may not be necessarily required to solve a problem concerning the present invention.
The first exemplary embodiment of the present invention is described below. According to the first exemplary embodiment of the present invention, a multifunction peripheral (MFP) requests screen information to be displayed on an operation screen of the MFP to a web server on a network. The web server generates the requested screen information, and transmits the screen information to the MFP. The MFP that receives the screen information changes the received screen information according to the installed situation of the application thereof, and displays the changed screen information as the operation screen.
Further, the control unit 201 is connected to a function unit 202 to control operations of an operation section 206, a scanner section 207, and a printer section 208.
The operation section 206 includes a liquid crystal display having a keyboard or a touch panel function. Further, the operation section 206 includes a web browser function. The web browser of the MFP 101 analyzes a hyper-text markup language (HTML) file received from the web server 103, and displays an operation screen based on a description of the analyzed HTML file on the operation section 206.
The scanner section 207 reads a document, generates image data, and inputs the generated image data to the control unit 201. The printer section 208 prints print target image data input from the control unit 201 on a recording medium, such as a sheet.
The interface unit 209 connects the control unit 201 to the LAN 104 to receive image data for printing from the web server 103 and screen data on the operation screen displayed on the operation section 206.
A hard disk drive (HDD) 210 stores a control program for executing processing of flowcharts or an application management table 600, which will be described below.
Referring to
The web browser 401 requests screen information to be displayed on the operation section 206 to the web server 103. The web browser 401 communicates with the web server 103 via the interface 104 and the network I/F 306. The web browser 401 is communicates with the web server 103 via the proxy unit 403. Specifically, the web browser 401 requests the operation screen of the MFP 101 to be displayed on the operation section 206 to the proxy unit 403, or sends a notification to the proxy unit 403 as an instruction from a user input via the operation screen of the MFP 101 displayed on the operation section 206.
The service provider 402 opens a function in the MFP 101 to the web server 103 on the network. The opened function contains, e.g., a function (send function) for sending electronic data obtained by scanning the document with the scanner control unit 406 to another information processing apparatus.
The proxy unit 403 receives a reply from the web server 103 in response to the request to the web server 103, changes contents if necessary, and transmits the changed contents to the web browser 401 or the service provider 402.
The application management unit 404 manages the application installed on the MFP 101. Specifically, the application management unit 404 sends a notification of the installed situation of the application or executes the application designated by the proxy unit 403 in response to the request from the proxy unit 403.
The printer control unit 405 and the scanner control unit 406 control a printer function and a scanner function provided in the MFP 101.
The web server 103 includes web application 407. The web application 407 also includes various web applications provided in the web server 103, and is executed if necessary.
According to the present exemplary embodiment, the MFP 101 can install the application.
In step S501, the MFP 101 installs expansion application for expanding the function of the MFP 101. Instep S502, the application management unit 404 determines whether individual icon information is set to the installed expansion application. The icon information is image information used for generating a button for executing the expansion application when the operation section 206 displays the button. If the individual icon information is set to the installed expansion application, in step S503, the application management unit 404 obtains the icon information. If not so, in step S504, the application management unit 404 obtains default icon information stored in advance in the HDD 210 as the icon information about the installed expansion application.
According to the present exemplary embodiment, the application management unit 404 determines whether the icon information is set to the installed expansion application. However, proper icon information may be displayed for all expansion applications without the determination.
After obtaining the icon information, in step S505, the application management unit 404 adds information about the installed expansion application to an application management table 600, which will be described below. Then, the processing in the present flowchart ends.
Next, the application management table 600 is described with reference to
The application management table 600 has four attributes of an application ID 601, an application name 602, icon information 603, and a path 604. The application ID 601 indicates a value for identifying the installed expansion application. The application management unit 404 sets a proper value for identifying the installed expansion application when installing the expansion application. The application name 602 is a name of the expansion application. According to the present exemplary embodiment, the operation section 206 displays the application name 602.
The icon information 603 indicates the icon information obtained in step S503 or S504 in
The path 604 indicates an address for storing an execution file for executing the expansion application stored in the application management table 600.
In step S701, the MFP 101 requests the screen information used for display on the operation section 206 to the web server 103. The screen information is requested when the MFP 101 starts or the screen is shifted to another one by the user operation, and is transmitted to the web server 103 via the LAN 104 via the interface unit 209.
In step S702, the web server 103 receives the request of the screen information transmitted from the MFP 101. In step S703, the web server 103 generates the screen information.
The screen information generated in step S703 is specifically described with reference to
An <application> tag is described in the screen information 810 in addition to the screen information 800. An underlined <application> tag is an original tag provided to realize the present exemplary embodiment. When displaying the button for executing the expansion application provided in the MFP 101 on the screen information to be transmitted to the MFP 101, the <application> tag is described as a display instruction of the expansion application. If the screen information includes the <application> tag, it is required to prearrange a rule for displaying the button for executing the expansion application provided in the MFP 101, between the MFP 101 and the web server 103.
Referring back to the flowchart, in step S704, the web server 103 transmits the screen information generated in step S703 to the MFP 101.
In step S705, the CPU 203 determines whether the MFP 101 has received the screen information via the interface unit 209. When the CPU 203 determines that the MFP 101 has received the screen information (YES in step S705), the processing proceeds to step S706. When the CPU 203 determines that the MFP 101 has not received the screen information (NO in step S705), the CPU 203 waits until receiving the screen information.
In step S706, the CPU 203 determines whether the received screen information includes an instruction for displaying the expansion application. According to the present exemplary embodiment, the <application> tag is used as the instruction for displaying the expansion application. Therefore, the CPU 203 determines whether the <application> tag is present or absent. The instruction for displaying the expansion application is not limited to the <application> tag. A script may be embedded as an execution command in a hypertext markup language (HTML) file, or the execution command may be received as another file.
When the CPU 203 determines that the screen information does not include the <application> tag, in other words, the screen information 800 is received (NO in step S706), in step S710, the operation section 206 displays the operation screen based on the screen information 800.
An operation screen 900 in
On the other hand, when the CPU 203 determines that the screen information includes the <application> tag, in other words, the screen information 810 is received (YES in step S706), in step S707, the application management unit 404 determines whether the expansion application is installed on the MFP 101. Since the user arbitrarily installs the expansion application, the expansion application may not be installed depending on the MFP 101. The processing in step 707 is performed in consideration of this determination.
When the CPU 203 determines that the expansion application is not installed on the MFP 101 (NO in step S707), the processing advances to step S710 and the operation section 206 displays an operation screen 900 based on the screen information 810. At this time, the proxy unit 403 may erase the <application> tag of the screen information 810 or may be displayed as it is if there is no influence on the operation screen 900. On the other hand, when the CPU 203 determines that the expansion application is installed on the MFP 101 (YES in step S707), the processing advances to step S708 and the proxy unit 403 generates screen information for display.
The screen information for display generated in step S708 will be specifically described using screen information 820 for display in
Referring back to the flowchart, when the screen information 820 for display is generated (YES in step S708), in step S709, the operation section 206 displays the operation screen based on the screen information 820 for display.
According to the present exemplary embodiment, the <application> tag is used as a display instruction of the expansion application. Further, if a rule is set in advance between the MFP 101 and the web server 103, another tag may be used. As a method for displaying the expansion application at the time of rule setting, the expansion application may be sorted and displayed by an application name or installed date and time.
In step S1001, when the web browser 401 detects that the user selects the button 911 or 912, a value of an id attribute of an <input> tag of the screen information 820 for display is notified to the proxy unit 403.
In step S1002, the proxy unit 403 gives notification to the application management unit 404 to execute the expansion application corresponding to the notified id attribute, and the application management unit 404 executes the corresponding expansion application.
According to the present exemplary embodiment, the screen information presented from the web server 103 is rewritten and information for displaying the button for executing the expansion application individually installed on the MFP 101 is added. Thus, the expansion application individually installed on the MFP 101 is properly displayed on the screen presented from the web server 103.
According to the first exemplary embodiment, as illustrated in the flowchart in
In step S1101, the web browser 401 detects that the user selects the button 911 or 912. Then, the web browser 401 notifies the proxy unit 403 of a value of the id attribute of the <input> tag of the screen information 820 for display.
In step S1102, the proxy unit 403 notifies the web server 103 of the fact that the user has selected the expansion application having the notified id attribute. In step S1103, the web server 103 receives the notification. In step S1104, the web server 103 generates an execution instruction for executing the notified expansion application corresponding to the id attribute, and transmits the instruction to the MFP 101.
In step S1105, the CPU 203 determines whether the MFP 101 has received the execution instruction transmitted from the web server 103 via the interface unit 209. When the CPU 203 determines that the MFP 101 has received the execution instruction (YES in step S1105), the processing advances to step S1106. When the CPU 203 determines that the MFP 101 has not received the execution instruction (NO in step S1105), the CPU 203 waits until receiving the execution instruction.
In step S1106, the proxy unit 403 analyzes the received execution instruction, and the application management unit 404 executes the corresponding expansion application.
According to the present exemplary embodiment, it is notified to the web server 103 that the user selects the button 911 or 912, in other words, the user selects the expansion application provided in the MFP 101. As a consequence, the web server 103 grasps a state of the MFP 101 (transition situation of the screen or installed situation of the expansion application), and performs proper processing if necessary.
According to the first and second exemplary embodiments, the expansion application individually installed on the MFP 101 is displayed on the screen presented from the web server 103. Since the type of the expansion application displayed at this time is not limited, all the expansion applications installed on the MFP 101 are displayed. However, the type of the expansion application can be limited by a system administrator depending on a case, such as where only necessary expansion application should be displayed. According to the third exemplary embodiment, in consideration of this point, when the type of the displayed expansion application is designated, the expansion application can be properly displayed.
According to the present exemplary embodiment, the MFP 101 requests the screen information to the web server 103.
An example is described in which the MFP 101 receives the screen information from the web server 103 in step S705 by using screen information 1300 in
The expansion application 1 and the expansion application 3 are described in the screen information 1300. It shows that even if another expansion application is installed on the MFP 101, it is not displayed. With a description of an underlined and hatched portion in the screen information 1300, it is possible to designate a display method of the expansion application 1 and the expansion application 3.
The underlined portion indicates processing corresponding to the install situation of the expansion application 3 of the MFP 101. A status attribute, a backcolor attribute, and onmousedown attribute are segmented by a vertical bar ‘|’. If the expansion application 3 is installed on the MFP 101, a value on the left of the vertical bar ‘|’ is used. If the expansion application 3 is not installed on the MFP 101, a value on the right of the vertical bar ‘|’ is used. As a consequence, even if the expansion application 1 is not installed on the MFP 101, proper display is possible.
In the hatched portion, two values of app1 and app10 are described as the id attribute. The description aims to check whether to install the expansion application having the id attribute described from the left in order and display the expansion application that is confirmed to be first installed. Thus, even if different expansion application having a similar function is installed, it can be displayed to enable the user to recognize the expansion application as having the similar function.
According to the present exemplary embodiment, a description segmented by the vertical bar ‘|’ or a plurality of values of the id attribute is a display instruction of the expansion application.
In step S1201, the proxy unit 403 generates the screen information for display in response to the instruction to display the expansion application included in the screen information received from the web server 103. Screen information 1310 for display in
According to the application management table 600, the expansion application 3 is not installed on the MFP 101. Therefore, a value on the right of the vertical bar ‘|’ is used in the screen information 1300. As a consequence, the underlined description of the screen information 1310 for display is used. Further, according to the application management table 600, the expansion application 1 is installed on the MFP 101. Therefore, the hatched description of the screen information 1310 for display is used.
In step S1201, the screen information 1310 for display is generated. In step S1202, the operation section 206 displays the operation screen based on the screen information for display.
According to the present exemplary embodiment, even when the type of the displayed expansion application is designated, the expansion application is properly displayed. The present exemplary embodiment is only an example, and a script may be embedded as a display instruction in a hypertext markup language (HTML) file, or a display instruction may be received as another file. Various display methods can be designated, e.g., the “Display surely the designated expansion application on the upper left on the screen”.
According to the first to third exemplary embodiments, the screen information received by the MFP 101 from the web server 103 includes information for displaying the web application provided in the web server 103. However, the present invention is not limited to this. When the web server 103 transmits web contents as a display screen to the MFP 101, if the expansion application provided in the MFP 101 should be displayed on the display screen, the present invention can be applied.
Aspects of the present invention can also be realized by a computer of a system or apparatus (or devices such as a CPU, a micro-processing unit (MPU), and/or the like) that reads out and executes a program recorded on a memory device to perform the functions of the above-described embodiment(s), and by a method, the steps of which are performed by a computer of a system or apparatus by, for example, reading out and executing a program recorded on a memory device to perform the functions of the above-described embodiment(s). For this purpose, the program is provided to the computer for example via a network or from a recording medium of various types serving as the memory device (e.g., a computer-readable medium).
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all modifications, equivalent structures, and functions.
This application claims priority from Japanese Patent Application No. 2010-177316 filed Aug. 6, 2010, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2010-177316 | Aug 2010 | JP | national |