U.S. patent application number 12/889691 was filed with the patent office on 2011-01-20 for electronic apparatus for identifying and utilizing external applications contained on external apparatuses.
Invention is credited to Hiroshi Baba, Satoru Sugishita, Yoko Sugiura, Masahiro Suzuki.
Application Number | 20110016474 12/889691 |
Document ID | / |
Family ID | 36075161 |
Filed Date | 2011-01-20 |
United States Patent
Application |
20110016474 |
Kind Code |
A1 |
Sugishita; Satoru ; et
al. |
January 20, 2011 |
ELECTRONIC APPARATUS FOR IDENTIFYING AND UTILIZING EXTERNAL
APPLICATIONS CONTAINED ON EXTERNAL APPARATUSES
Abstract
An electronic apparatus for performing an operation by use of an
application, which can communicate with a plurality of external
apparatuses, includes an application registering unit to register
one or more applications selected as available applications from
applications installed in the plurality of external apparatuses, an
application selecting unit to select an application to be utilized
from the one or more applications registered by the application
registering unit, and a control unit to communicate with an
external apparatus having the selected application installed
therein to perform the operation by utilizing the selected
application installed in the external apparatus.
Inventors: |
Sugishita; Satoru; (Tokyo,
JP) ; Suzuki; Masahiro; (Tokyo, JP) ; Sugiura;
Yoko; (Kanagawa, JP) ; Baba; Hiroshi;
(Kanagawa, JP) |
Correspondence
Address: |
OBLON, SPIVAK, MCCLELLAND MAIER & NEUSTADT, L.L.P.
1940 DUKE STREET
ALEXANDRIA
VA
22314
US
|
Family ID: |
36075161 |
Appl. No.: |
12/889691 |
Filed: |
September 24, 2010 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11224971 |
Sep 14, 2005 |
7831657 |
|
|
12889691 |
|
|
|
|
Current U.S.
Class: |
719/313 |
Current CPC
Class: |
G06F 9/505 20130101 |
Class at
Publication: |
719/313 |
International
Class: |
G06F 9/46 20060101
G06F009/46 |
Foreign Application Data
Date |
Code |
Application Number |
Sep 17, 2004 |
JP |
2004-272225 |
Sep 1, 2005 |
JP |
2005-253027 |
Claims
1. An electronic apparatus for performing an operation by use of an
application, which can communicate with a plurality of external
apparatuses, comprising: an application registering unit to
register one or more applications selected as available
applications from applications installed in the plurality of
external apparatuses; an application selecting unit to select an
application to be utilized from the one or more applications
registered by said application registering unit; and a control unit
to communicate with an external apparatus having said selected
application installed therein to perform the operation by utilizing
said selected application installed in said external apparatus.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application is a division of U.S. application
Ser. No. 11/224,971, filed on Sep. 14, 2005, which is based on and
claims priority to Japanese patent application Nos. 2004-272225,
filed on Sep. 17, 2004, and 2005-253027, filed on Sep. 1, 2005 in
the Japan Patent Office. The entire contents of U.S. application
Ser. No. 11/224,971 and Japanese patent application Nos.
2004-272225 and 2005-253027 are hereby incorporated herein by
reference.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention relates to electronic apparatus such
as image processing apparatus (e.g., image scanning apparatus such
as a scanner, and image forming apparatus such as digital copier
apparatus, printer, facsimile apparatus, digital multifunction
peripherals, etc.), an electronic apparatus system comprised of
such electronic apparatus and external apparatus coupled thereto
via a communication channel, a method of controlling the electronic
apparatus, a program to be executed by the computer of the
electronic apparatus, and a computer-readable record medium having
the program recorded therein.
[0004] 2. Description of the Related Art
[0005] In recent years, multifunctional image forming apparatuses
such as digital multifunction peripherals have been commonly used
by a large number of users, providing a free choice of functions
selectable from the copier function, printer function, scanner
function, facsimile function, etc. Such image forming apparatuses
are implemented by combining an image forming unit (plotter unit),
an image scanning unit (scanner unit), a facsimile communication
unit, an image processing unit (controller), etc.
[0006] Such multifunctional image forming apparatuses are generally
implemented as a copier-based apparatus. The functions of the
apparatus may be partially utilized to allow the apparatus to be
used as a printer or scanner, and a facsimile communication unit
may be added to allow the apparatus to be used as a facsimile
device.
[0007] In order to allow each function to be freely selected and
performed, these functions need to be provided with respective
application programs (hereinafter sometimes simply referred to as
"application") for implementing the functions. Conventionally, a
single image forming apparatus is provided with all the
applications (Japanese Patent Application Publication No.
2002-84383).
[0008] The term "application" refers to application software or an
application program. Such application constitutes a user interface
to implement the function to be provided to users, and include a
copy application for implementing the copy function, a printer
application for implementing the printer function, a scanner
application for implementing the scanner function, a facsimile
application for implementing the facsimile (FAX) function, etc.
[0009] The provision of all the applications for implementing
desired functions in a multifunctional image forming apparatus
results in a cost increase. Further, the larger the number of the
applications, the larger the number of maintenance works necessary
to be performed by service personnel for version updating of the
applications.
[0010] Accordingly, there is a need for a scheme for reducing costs
associated with the provision of multiple functions in an
electronic apparatus such as an image forming apparatus and for
reducing the amount of labor necessary for version updates.
SUMMARY OF THE INVENTION
[0011] It is a general object of the present invention to provide
an electronic apparatus and electronic apparatus system that
substantially obviate one or more problems caused by the
limitations and disadvantages of the related art.
[0012] Features and advantages of the present invention will be
presented in the description which follows, and in part will become
apparent from the description and the accompanying drawings, or may
be learned by practice of the invention according to the teachings
provided in the description. Objects as well as other features and
advantages of the present invention will be realized and attained
by electronic apparatus and electronic apparatus system
particularly pointed out in the specification in such full, clear,
concise, and exact terms as to enable a person having ordinary
skill in the art to practice the invention.
[0013] To achieve these and other advantages in accordance with the
purpose of the invention, the invention provides an electronic
apparatus for performing an operation by use of an application,
which can communicate with a plurality of external apparatuses. The
electronic apparatus includes an application registering unit to
register one or more applications selected as available
applications from applications installed in the plurality of
external apparatuses, an application selecting unit to select an
application to be utilized from the one or more applications
registered by the application registering unit, and a control unit
to communicate with an external apparatus having the selected
application installed therein to perform the operation by utilizing
the selected application installed in the external apparatus.
[0014] According to another aspect of the present invention, an
electronic apparatus system is provided, in which an electronic
apparatus for performing an operation by use of an application and
a plurality of external apparatuses are connected together via a
communication link, at least one of the external to apparatuses
serving as an application server, another one of the external
apparatuses serving as an application management server. The
electronic apparatus system includes an application storing unit
provided in the application server to store an application therein,
a controlling unit provided in the application server to analyze
contents of an operation instruction by use of the application
stored in the application storing unit upon receiving the operation
instruction from the electronic apparatus, and to transmit a
request for execution of a corresponding operation to the
electronic apparatus as a response to the operation instruction, an
application managing unit provided in the application management
server to manage a plurality of applications, an application
registering unit provided in the application management server to
register one or more applications installed in the external
apparatuses as available applications according to management
status of the application managing unit, an application information
transmitting unit provided in the application management server to
transmit information indicative of the one or more applications
registered by the application registering unit to the electronic
apparatus, an application registering unit provided in the
electronic apparatus to register one or more available applications
based on the information transmitted from the application
information transmitting unit of the application management server,
an application selecting unit provided in the electronic apparatus
to select an application to be utilized from the one or more
available applications registered by the application registering
unit, and a control unit provided in the electronic apparatus to
transmit an operation instruction to one of the external
apparatuses having the application selected by the application
selecting unit installed therein in response to an entry of the
operation instruction, and to perform the operation requested by a
request for execution of the operation upon receiving the request
as a response to the transmitted operation instruction.
[0015] According to another aspect of the present invention, an
electronic apparatus system is provided, in which an electronic
apparatus for performing an operation by use of an application and
a plurality of external apparatuses are connected together via a
communication link, at least one of the external apparatuses
serving as an application server, another one of the external
apparatuses serving as an application management server. The
electronic apparatus system includes an application storing unit
provided in the application server to store an application therein,
a controlling unit provided in the application server to analyze
contents of an operation instruction by use of the application
stored in the application storing unit upon receiving the operation
instruction from the electronic apparatus, and to transmit a
request for execution of a corresponding operation to the
electronic apparatus as a response to the operation instruction, an
application managing unit provided in the application management
server to manage a plurality of applications, an application
registering unit provided in the application management server to
register one or more applications installed in the external
apparatuses as available applications according to management
status of the application managing unit, an application selecting
unit provided in the application management server to select an
application to be utilized from the one or more applications
registered by the application registering unit, an application
information transmitting unit provided in the application
management server to transmit information indicative of the
utilized application selected by the application selecting unit to
the electronic apparatus, an application registering unit provided
in the electronic apparatus to register the utilized application
based on the information transmitted from the application
information transmitting unit of the application to management
server, and a control unit provided in the electronic apparatus to
transmit an operation instruction to one of the external
apparatuses having the utilized application registered by the
application registering unit installed therein in response to an
entry of the operation instruction, and to perform the operation
requested by a request for execution of the operation upon
receiving the request as a response to the transmitted operation
instruction.
[0016] According to another aspect of the present invention, a
method of controlling an electronic apparatus that performs an
operation by use of an application includes a registering step of
registering one or more applications selected as available
applications from applications installed in a plurality of external
apparatuses to which the electronic apparatus is connected through
a communication link, a selecting step of selecting an application
to be utilized from the one or more applications registered by the
registering step, and a communicating step of communicating with an
external apparatus having the selected application installed
therein to perform the operation by utilizing the selected
application installed in the external apparatus.
[0017] According to another aspect of the present invention, a
machine-readable medium having a program embodied therein for
causing a computer of an electronic apparatus to perform an
operation by use of an application is provided, wherein the
electronic apparatus communicates with a plurality of external
apparatuses. The program includes an application registering
function unit to register one or more applications selected as
available applications from applications installed in the plurality
of external apparatuses, an application selecting function unit to
select an application to be utilized from the one or more
applications registered by the application registering function
unit, and a control function unit to communicate with an external
apparatus having the selected application installed therein to
perform the operation by utilizing the selected application
installed in the external apparatus.
[0018] According to at least one embodiment of the present
invention, a plurality of electronic apparatuses can share
applications, so that each electronic apparatus can utilize a
plurality of functions at low cost. Further, this reduces the
amount of labor necessary for the version update of the
applications.
BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Other objects and further features of the present invention
will be apparent from the following detailed description when read
in conjunction with the accompanying drawings, in which:
[0020] FIG. 1 is a schematic diagram showing an example of network
connection of an image forming system;
[0021] FIG. 2 is a block diagram showing an example of the hardware
configuration of an MFP;
[0022] FIG. 3 is a drawing showing an example of the operation
unit;
[0023] FIG. 4 is a drawing showing an example of an operation
screen displayed on an LCD touch panel;
[0024] FIG. 5 is a drawing showing another example of the operation
screen displayed on the LCD touch panel;
[0025] FIG. 6 is a block diagram showing an example of the
functional configuration of the MFP;
[0026] FIG. 7 is a block diagram showing an example of the hardware
configuration of an external server;
[0027] FIG. 8 is a block diagram showing an example of the
functional configuration of the MFP and the external server;
[0028] FIG. 9 is a drawing showing a first example of the
communication sequence between external applications and the MFP at
the time of startup of the MFP;
[0029] FIG. 10 is a drawing showing a second example of the
communication sequence between the external applications and the
MFP at the time of startup of the MFP;
[0030] FIG. 11 is a drawing showing a third example of the
communication sequence between the external applications and the
MFP at the time of startup of the MFP;
[0031] FIG. 12 is a drawing showing an example of an error
screen;
[0032] FIG. 13 is a drawing showing an example of the communication
sequence performed in the MFP when the MFP determines an available
application in response to key operations on the operation
unit;
[0033] FIG. 14 is a drawing showing an example of an application
selecting screen;
[0034] FIG. 15 is an illustrative drawing for explaining a second
example of the process for determining an available application at
the MFP;
[0035] FIG. 16 is an illustrative drawing for explaining a third
example of the process for determining an available application at
the MIT;
[0036] FIG. 17 is a drawing showing a first example of the
communication sequence between the external applications and the
MFPs at the time of startup of the external applications;
[0037] FIG. 18 is a drawing showing a fourth example of the
communication sequence between the applications and the MFP at the
time of startup of the MFP;
[0038] FIG. 19 is a drawing showing a fifth example of the
communication sequence between the applications and the MFP at the
time of startup of the MFP;
[0039] FIG. 20 is a drawing showing a sixth example of the
communication sequence between the external applications and the
MFP at the time of startup of the MFP;
[0040] FIGS. 21A through 21D are illustrative drawings for
explaining the functions of external applications;
[0041] FIG. 22 is a block diagram showing an example of the
functional configuration of the MFP;
[0042] FIG. 23 is a drawing showing a seventh example of the
communication sequence between the external applications and the
MFP at the time of startup of the MFP;
[0043] FIG. 24 is a schematic diagram showing an example of network
connection of the image forming system;
[0044] FIG. 25 is a block diagram showing an example of the
functional configuration of the MFP shown in FIG. 24;
[0045] FIG. 26 is a block diagram showing an example of the
functional configuration of an application management server shown
in FIG. 24;
[0046] FIG. 27 is a drawing showing a first example of the
communication sequence between the MFP, the external applications,
and the application management server at the time of power-on or
operation instruction of the MFP;
[0047] FIG. 28 is a drawing showing a second example of the
communication sequence between the MFP, the external applications,
and the application management server at the time of power-on or
operation instruction of the MFP;
[0048] FIG. 29 is a drawing showing a first example of the
communication sequence between the MFP and the application
management server at the time of instructing to register the MFP at
the MFP;
[0049] FIG. 30 is a block diagram showing another example of the
functional configuration of the MFP and the external server shown
in FIG. 1;
[0050] FIG. 31 is a drawing showing a first example of the
communication sequence between the external applications and the
MFP at the time of startup of the MFP shown in FIG. 30; and
[0051] FIG. 32 is a drawing showing a second example of the
communication sequence between the external applications and the
MFP at the time of startup of the MFP shown in FIG. 30.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0052] In the following, embodiments of the present invention will
be described with reference to the accompanying drawings.
[0053] First, a description will be given of an image forming
system that is a first embodiment of an electronic apparatus system
according to the present invention.
[0054] FIG. 1 is a schematic diagram showing an example of network
connection of the image forming system. For the sake of convenience
of illustration, only one digital multifunction peripheral
(hereinafter sometimes referred to as "MFP") is illustrated.
[0055] In this image forming system, a plurality of MFPs 10 (may as
well be other image processing apparatuses) serving as electronic
apparatuses and a plurality of external severs 20 (20a, 20b, and so
on) serving as external apparatuses (application servers) are
connected to conduct communication with each other via a network 1
such as a LAM (local area network). It should be noted that the
MFPs 10 and the external servers 20 can communicate with each other
in one-to-many relationship via the network 1. If the MFPs 10 and
the external servers 20 are coupled via communication links such as
USB or IEEE1394, the MFPs 10 and the external servers 20 can
communicate with each other in one-to-one relationship.
[0056] In the following, an example of the hardware configuration
of the MFP 10 will be described with reference to FIG. 2.
[0057] FIG. 2 is a block diagram showing an example of the hardware
configuration of the MFP 10.
[0058] This MFP 10 is an image forming apparatus that can implement
various functions inclusive of the functions of a digital copier, a
printer, a facsimile apparatus, a scanner apparatus, i.e., the copy
function, the printer function, the facsimile function, and the
scanner function. As shown in FIG. 2, the MFP 10 includes a
controller 11, a FCU (fax control unit) 12, an engine interface
(the term "interface" may hereinafter be referred to as "I/F") 13,
an engine 14, etc. This configuration constitutes hardware
resources for performing image processing such as the scanning of a
copy image, the printing of an image (forming of an image), the
transmission of image data, etc.
[0059] The controller 11 utilizes each application which will be
later described (receives a request to perform an action in
response to an operation instruction to each application), and
performs the overall control of individual parts of the MFP 10.
Such control achieves the respective functions.
[0060] The FCU 12 controls communication with an external apparatus
via a public line. The external apparatus may be an image forming
apparatus such as a digital copier equipped with a FAX apparatus or
a modem function (FAX communication function), another MFP (digital
multifunction peripheral), or the like.
[0061] The engine I/F 13 is an interface for connecting the engine
14 to the PCI (Peripheral Component Interconnect) bus.
[0062] The engine 14 is a hardware device that may be a scanner
(image scanning means) for scanning a copy image, a plotter (image
forming means) for forming (printing) an image on a record medium
such as a paper sheet in response to image data scanned by the
scanner or data received from an external apparatus, an
auto-document feeder for feeding a copy automatically to the
position where the scanner scans an image, a finisher for
performing finishing work such as sorting, punching, and stapling
of paper sheets on which images are formed by the plotter, etc.
[0063] The controller 11 includes a CPU 101, an ASIC (Application
Specific Integrated Circuit) 102, an SDRAM 103, a ROM 104, an NVRAM
105, an HDD (hard-disk drive) 106, an operation unit 107, a modem
108, a USB (Universal Serial Bus) I/F 109, an IEEE (Institute of
Electrical and Electronic Engineers)1394 I/F 110, and MAC (Media
Access Controller) I/F 111. In reality, the operation unit 107 is
situated outside the controller 11.
[0064] The CPU 101 is a computing unit for performing data
processing (controlling each function) via the ASIC 102.
[0065] The ASIC 102 is a multifunctional device board comprised of
a CPU interface, an SDRAM interface, a local bus interface, a PCI
interface, an HDD interface, etc. The ASIC 102 serves to facilitate
the sharing of devices to be controlled by the CPU 101, thereby
assisting to improve efficiency in the development of applications
from the architecture side.
[0066] The ASIC 102 is directly connected to the operation unit 107
for receiving operation instructions directed to the engine 14, and
is also directly connected to the modem 108. Further, the ASIC 102
is coupled to the USB I/F 109, the IEEE1394 I/F 110, the MAC I/F
111, the FCU 12, and the engine I/F 13 via the PCI bus 112.
[0067] The SDRAM 103 is a main memory that serves as a program
memory for storing various programs, a work memory for use by the
CPU 101 at the time of data processing, etc. It should be noted
that a DRAM or SRAM may alternatively used in place of the SDRAM
103.
[0068] The ROM 104 is a memory that permanently stores fixed data
and programs executed by the CPU 101. The ROM 104 may be used to
store various applications (internal applications).
[0069] The NVRAM 105 is a nonvolatile memory for storing data such
as modifiable various parameters. The NVRAM 105 can retain its
stored contents even after the power is turned off. As the NVRAM
105, a nonvolatile RAM implemented as an integrated backup circuit
based on the use of a RAM and a buttery or a nonvolatile memory
such as an EEPROM or a flash memory may be used.
[0070] The HDD 106 is a storage device (record medium) for storing
and retaining data regardless of the on/off of the power. Data
stored in the SDRAM 103 or data stored in the NVRAM 105 may be
stored in the HDD 106.
[0071] The operation unit 107 includes various operation keys (also
referred to as operation switches or operation buttons) for
entering data indicative of operation instruction directed to the
engine 14 or the external servers 20, and also includes a character
displaying unit such as an LCD or CRT. FIG. 3 shows an example of
the operation unit 107.
[0072] The modem 108 is a modulation/demodulation unit, which
modulates data into a signal that can be carried over a public line
when transmitting the data to an external apparatus (not shown) via
the public line. Further, the modem 108 demodulates modulated data
when receiving the modulated data transmitted from the external
apparatus.
[0073] The USB I/F 109 and the IEEE1394 I/F 110 are interfaces
(direct interfaces) complying to the USB standard and the IEEE1394
standard, respectively. These interfaces are used to establish a
direct connection for communication with an external apparatus
(peripheral apparatus).
[0074] The MAC I/F 111 is a network interface for conducting
communication with external apparatuses such as the external
servers 20 via the network 1 such as a LAN.
[0075] It should be noted that an other direct interface in
addition to the USB I/F 109 and the IEEE1394 I/F 110 may be added
to the controller 11.
[0076] In the following, the operation unit 107 of the MFP 10 will
be described with reference to FIG. 3.
[0077] FIG. 3 is a layout diagram showing an example of the
configuration of the operation unit 107.
[0078] The operation unit 107 includes an LCD touch panel 51, a key
pad 52, a clear/stop key 53, a start key (print key) 54, a preheat
key 55, a reset key 56, an interruption key 57, an initial setting
key 58, and a function switching key 59.
[0079] The LCD touch panel 51 is provided with a touch panel on the
surface of the LCD display. The LCD touch panel 51 can display
function keys, the number of copies, a message indicative of the
status of the machine, etc.
[0080] The key pad 52 is used to enter the number of prints (the
number of copies), a value indicative of a magnification factor,
etc.
[0081] The clear/stop key 53 is used to clear the number (the
number of prints), to stop the ongoing operation (scan operation or
print operation), etc.
[0082] The MFP 10 equipped with the operation unit 107 enters an
interruption mode upon the pressing of the interruption key 57. The
interruption mode is used to interrupt a copy operation temporarily
when this copy operation (copy job) is underway or in the process
of being set after starting in response to the pressing of the
start key 54 (operation instruction).
[0083] When the interruption key 57 is pressed, the copy mode
preceding the pressing of the key or status information on the
ongoing operation if the pressing occurs halfway through a copy
operation is written to the NVRAM 105 or the HDD 106 for storage
therein. Thereafter, entry into the interruption mode is performed
to initialize the copy mode.
[0084] The start key 54 is then pressed to start an interrupting
copy operation. After this copy operation is completed, the
interruption key 57 is pressed to release the interruption mode,
followed by retrieving the copy mode or the status information on
the ongoing copy operation from the NVRAM 105 or the HDD 106, and
then reverting to the original status prior to the entry into the
interruption mode. The start key 54 is then pressed to resume the
copy operation in the copy mode that was effective prior to the
interruption.
[0085] The pressing of the initial setting key 58 allows the
initial states of the machine to be customized as desired.
[0086] For example, the size of the transfer sheets (paper sheets)
contained in the machine may be specified. The initial states that
come about in response to the pressing of the preheat key 55 (when
used as a mode clear key for clearing the copy mode) may also be
specified as desired.
[0087] Further, an application that is selected as a first choice
in response to the absence of key operation for a predetermined
time period may be specified. Also, the time period before entering
a low power consumption mode according to the international ENERGY
STAR program and the time period before entering the auto-off/sleep
mode may as well be specified.
[0088] When the preheat key 55 is pressed for more than about one
second, the machine shifts from the standby state to the preheat
state. This initiates actions such as lowering the surface
temperature (fusing temperature) of the fuser rollers provided in
the fuser unit (not shown) and turning off the display of the
operation unit 107.
[0089] The term "preheat state" refers to the low power consumption
state defined in the international ENERGY STAR program.
[0090] When it is desired to exit from the preheat state or the
turned-off/sleep state to enter the standby state, the preheat key
55 needs to be pressed again.
[0091] The function switching key 59 is used to switch between the
copy function, printer function, scanner function, and FAX
function.
[0092] The copy function serves to scan a copy image by use of the
scanner, to send the image data to the plotter, and to print (form)
a visible image on a record medium such as a paper sheet.
[0093] The printer function serves to send image data supplied from
an external apparatus to the plotter after some data processing or
without any data processing, and to perform a printer operation
that prints a visible image on a record medium.
[0094] The scanner function serves to perform a scanner operation
that scans a copy image by use of the scanner, and writes the
scanned image data to the memory (SDRAM 103, NVRAM 105, or HDD 106)
for storage therein.
[0095] After the scanner operation, the start key 54 may be pressed
to retrieve (read) the image data from the SDRAM 103 or the HDD
106. An image may then be printed on a transfer sheet based on the
image data.
[0096] The FAX function serves to perform a FAX transmission
operation that scans a copy image by use of the scanner, and
transmits the scanned image data to an external apparatus via the
FCU 12. The FAX function also serves to perform a FAX reception
operation that receives image data from an external apparatus via
the FCU 12, and supplies the image data to the plotter to form an
image on a record medium.
[0097] FIG. 4 and FIG. 5 are drawings showing other examples of the
operation screen displayed on the LCD touch panel 51.
[0098] As the operator (user) touches a function key shown on the
screen of the LCD touch panel 51, the function (mode) indicated
inside the frame of this function key is selected, resulting in the
reversal of black/white colors.
[0099] It may be desired to specify the detail of the function
(e.g., a magnification factor in the case of magnification). In
such a case, the function key may be touched to pop up a setting
operation screen for setting the detail of the function.
[0100] The LCD touch panel 51 may be implemented as a dot-based
display, which makes it possible to present information suitable to
the needs by way of graphical presentation.
[0101] FIG. 4 is a drawing showing an example of the operation
screen for setting the copy function displayed on the LCD touch
panel 51.
[0102] The controller 11 of the MFP 10 selects the copy mode in
response to the choosing of the copy function (copy application)
indicated by the function switching key 59. The controller 11 then
switches the display screen of the LCD touch panel 51 to the
operation screen for setting the copy function as shown in FIG.
4.
[0103] On the operation screen for setting the copy function, a
message area is provided around the top center portion to present a
message such as "Ready to copy", "Please wait", etc.
[0104] Around this message area, there are various function keys
(operation instruction keys) as will be described below.
[0105] Under the message area, the following keys are provided. An
automatic sheet selection key serves to enable an automatic
transfer sheet selection. A transfer sheet selection key serves to
select a transfer sheet manually. A same size key serves to select
the copy magnification factor that achieves the same size as the
original. Here, the copy magnification factor is a factor of image
magnification of an image printed by the plotter in relation to the
original image, and is sometimes referred to as a
final-printed-image magnification factor. A sheet-specified
magnification key serves to select a magnification factor for size
enlargement/reduction automatically in accordance with the size of
the selected transfer sheet. A cover-sheet/combined-sheet key
serves to specify the setting for the cover-sheet/combined-sheet
mode. An edit/print key serves to select an edit mode for
specifying an editing operation such as the setting of a margin
when binding the copies (copied sheets) after sorting, and also
serves to select a print key setting for specifying the print
setting such as a stamp, date, page, etc. A duplex/combined/divided
key serves to select a duplex mode for printing images on both the
front side and back side of a transfer sheet, a combined printing
mode for printing multiple copy images on a single transfer sheet
in a combined manner, and a divided printing mode for printing a
single copy image on multiple transfer sheets in a divided manner.
A magnification factor key serves to select a factor of size
enlargement/reduction as a copy magnification factor.
[0106] On the left-hand side of the message area are provided a
copy type key for selecting the type of the image to be copied, and
an automatic density key for automatic adjustment of image
density.
[0107] On the right-hand side of the message area are provided the
following fields. An original-sheet quantity display field
indicates the number of original sheets. A set quantity display
field serves to indicate the number of sets (printed sets). A
copied quantity display field serves to indicate the number of
copied sheets. Under these fields, the following keys are provided.
A sort key serves to select the processing that sorts each copy in
the order of pages. A stack key serves to select the processing
that separates copies into the stacks of the same pages. A staple
key serves to select the processing that staples the sorted copies
one set by one set.
[0108] FIG. 5 is a drawing showing an example of the operation
screen for the scanner function displayed on the LCD touch panel
51.
[0109] When the function switching key 59 is pressed to switch to
the scanner function, the control unit of the MFP 10 selects the
scanner mode. This results in the display screen of the LCD touch
panel 51 being switched to the operation screen shown in FIG.
5.
[0110] On the operation screen, a message area is provided around
the top center portion to present a message such as "Ready to
scan", "Please wait", etc.
[0111] Around this message area, there are various Function keys
(operation instruction keys), and a description thereof will be
omitted.
[0112] In the following, an example of the functional configuration
of the MFP 10 will be described in detail with reference to FIG.
6.
[0113] FIG. 6 is a block diagram showing an example of the
functional configuration of the MFP 10.
[0114] The controller 11 of the MFP 10 includes the functions of a
communication processing unit 121, an application selecting unit
122, an application information storing unit 123, and a control
unit 124. These functions are implemented by the CPU 101 shown in
FIG. 2 as it operates according the programs stored in the ROM 104
to utilize the SDRAM 103, NVRAM 105, HDD 106, MAC I/F 111, USB I/F
109, and IEEE1394 I/F 110 selectively according to need.
[0115] The communication processing unit 121 communicates with
applications (external applications) 231 and 232 provided in the
external servers 20 (20a, 20b, and so on) connected through the
network 1. The communication processing unit 121 also communicates
with an external device that is directly connected. The external
applications 231 and 232 may directly be connected, and
communication therewith may as well be conducted.
[0116] The application selecting unit 122 receives data such as
commands (operation requests) supplied from the external
applications including the external applications 231 and 232, and
passes the received data to the control unit 124. Further, the
application selecting unit 122 receives data such as operation
instructions from the control unit 124, and transmits the received
data to the external applications inclusive of the external
applications 231 and 232. In so doing, the destination application
is identified for each data, and each data is transmitted to the
identified destination. The application selecting unit 122 thus
serves as an application registering unit and an application
selecting unit. If applications (internal applications) are stored
in the ROM 204 or the HDD 206, the same processing as applied to
the external applications may be applied to these internal
applications.
[0117] The application information storing unit 123 stores
information in an application management table for the purpose of
managing external applications. Such information includes the
locations (IP addresses) of available external applications, i.e.,
the locations of the external servers 20 in which these external
applications are installed, and also includes the types of the
available external applications. Based on this information, it is
possible to register an available application in the MFP 10. The
application information storing unit 123 exists in the SDRAM 103,
NVRAM 105, or HDD 106 shown in FIG. 2, and is updated each time the
information is changed. The application information storing unit
123 serves as an application registering unit. If applications
(internal applications) are stored in the ROM 204 or the HDD 206,
these applications may be registered in the same manner as the
external applications are registered.
[0118] The control unit 124 performs central control of the
individual units inclusive of the communication processing unit
121, the application selecting unit 122, the operation unit 107,
the application information storing unit 123, and the engine 14.
The control unit 124 serves to perform the function of a control
unit.
[0119] The control unit 124 communicates selectively with the
external applications inclusive of the external applications 231
and 232 via the application selecting unit 122, the communication
processing unit 121, and the network 1. In this manner, the control
unit 124 utilizes the external applications selectively to provide
the respective functions.
[0120] In the following, an example of the hardware configuration
of the external server 20 will be described in detail with
reference to FIG. 7.
[0121] FIG. 7 is a block diagram showing an example of the hardware
configuration of the external server 20.
[0122] The external server 20 is an information processing
apparatus such as a PC (personal computer), and includes a CPU 201,
an ASIC 202, an SDRAM 203, a ROM 204, an NVRAM 205, an HDD 206, an
operation unit 207, a modem 208, a USB I/F 209, an IEEE1394 I/F
210, and an MAC I/F 211.
[0123] The configuration of the external server 20 is almost
identical to the configuration of the controller 11 described in
connection with FIG. 2. Only a portion that differs will be
described in the following.
[0124] The operation unit 207 includes an input device such as a
keyboard and mouse for entering data such as operation instructions
directed to the MFP 10, and also includes a display apparatus such
as an LCD display or CRT display. A touch panel may be provided on
the surface of the display apparatus.
[0125] In the following, an example of the functional configuration
of the external server 20 will be described in detail with
reference to FIG. 8.
[0126] FIG. 8 is a block diagram showing an example of the
functional configuration of the MFP 10 and the external server 20a.
For the sake of convenience of explanation, the illustration
includes, in the external application 231, various units such as an
application communication processing unit 241 and so on, which will
be later described.
[0127] The external server 20a includes the functions of an
application communication processing unit 241, an application
control unit 242, and an apparatus information storing unit 243.
These functions are implemented by the CPU 201 shown in FIG. 7 as
it operates according the external application 231 stored in the
ROM 104 to utilize the USB I/F 209. IEEE1394 I/F 210, and MAC I/F
211 selectively according to need.
[0128] The application communication processing unit 241 serves to
communicate with the MFP 10 connected through the network 1 or an
MFP that is directly connected.
[0129] The application control unit 242 serves to controls the
application communication processing unit 241 and the apparatus
information storing unit 243. The application control unit 242
serves to perform the function of a control unit.
[0130] The apparatus information storing unit 243 serves as an
application storing unit that stores information about image
processing apparatuses available to the external server 20a. Based
on this information, the external server 20a can register an
available information processing apparatus. The apparatus
information storing unit 243 exists in the SDRAM 203, NVRAM 205, or
HDD 206 shown in FIG. 7, and is updated each time the information
is changed.
[0131] The functional configuration of the external server 20b is
substantially identical to that of the external server 20a, and a
description and illustration thereof will be omitted. The processes
of the external applications inclusive of the external applications
231 and 232 provided in the external servers 20 (20a, 20b, and so
on) are implemented by the respective CPUs 201 operating according
to the external applications. For the sake of convenience of
explanation, however, a description in the following may sometimes
describe the external applications as those which perform the
processes.
[0132] The external applications serve to provide various
functions. That is, the external applications inclusive of the
external applications 231 and 232 may be the copy application for
providing the copy function, the printer application for providing
the printer function, the scanner application for providing the
scanner function, or the FAX application for providing the FAX
function so as to provide a single function, or may be used as a
combination of multiple applications. Any applications may be used.
For example, the external application 231 (External Application-1)
may serve to provide a basic (lower version) copy function and
printer function, and the external application 232 (External
Application-2) may serve to provide a basic scanner function and
FAX function. Another external application (External Application-3)
may then serve to provide a higher version copy function and
printer function, and a further external application (External
Application-4) may serve to provide a higher version scanner
function and FAX function.
[0133] In addition to the MFP 10, another image processing
apparatus such as a standalone printer, scanner, digital copier, or
FAX apparatus may be connected through the network 1, or may be
connected directly. Such image processing apparatus has a
controller having the similar configuration to that of the MFP 10
(not shown), and may perform control according to the present
invention as will later be described.
[0134] In the following, a detailed description will be given of
the control according to the present invention performed by the
first embodiment of the above-described image forming system with
reference to FIG. 9 through FIG. 21.
[0135] [First Example of Control]
[0136] With reference to FIG. 9, a description will be given first
of a first example (basic example) of the communication sequence
between external applications provided in the external servers 20
and the MFP 10 at the time of the startup of the MFP. For the sake
of convenience of explanation, the external applications include
only the external applications 231 and 232.
[0137] FIG. 9 is a drawing showing a first example of the
communication sequence between the external applications 231 and
232 and the MFP 10 at the time of startup of the MFP 10.
[0138] At the time of the startup (power-on), the application
selecting unit 122 of the MFP 10 issues a startup notice (MFP
startup notice) to the external applications 231 and 232 that are
already registered (as indicated by the information stored in the
application management table of the application information storing
unit 123 shown in FIG. 6). Namely, the communication processing
unit 121 is requested to transmit an MFP startup notice to the
external applications 231 and 232 (Application 1 and Application 2)
successively (S101 through S104). The MFP startup notice directed
to the external applications 231 and 232 includes an application
identification number indicative of the external applications 231
and 232, respectively. This application identification number is
acquired from the application information storing unit 123 shown in
FIG. 3 together with the information about the location of the site
of the application.
[0139] In the following, the application management table stored in
the application information storing unit 123 shown in FIG. 6 will
be described with reference to Table 1. In an example shown in
Table 1, four external applications are registered.
TABLE-US-00001 TABLE 1 Application Name IP Address of Application
Type of Application Application-1 XXX.XXX.XXX.XXX Copy
Application-2 YYY.YYY.YYY.YYY Copy Application-3 ZZZ.ZZZ.ZZZ.ZZZ
Printer Application-4 VVV.VVV.VVV.VVV Scanner
[0140] This application management table stores (registers) therein
an application name, application location information (IP address)
indicative of the location where the application exists, and the
type of the application, which are associated with each other,
separately for each application on the network 1, for example. In
this example, the external applications 231 and 232 (Application 1
and Application 2) are copy applications, another external
application (Application 3) being a printer application, and a
further external application (Application 4) being a scanner
application. Between the external applications 231 and 232 that are
copy applications, the external application 231 may be a higher
version (latest version).
[0141] Now turning to FIG. 9 again, if the external server 20a
having the external application 231 is running, the external
application 231 receives the MFP startup notice from the MFP 10,
and, in response to the notice, transmits an application
availability notice (Application-1 availability notice) inclusive
of its own identification information to the MFP 10 (i.e., the MFP
10 that transmitted the MFP startup notice) (S105).
[0142] If the external server 20b having the external application
232 is running, the external application 232 receives the MFP
startup notice from the MFP 10, and, in response to the notice,
transmits an application availability notice (Application-2
availability notice) inclusive of its own identification
information to the MIT 10 (5106).
[0143] The application selecting unit 122 of the MIT 10 receives
via the communication processing unit 121 the application-1
availability notice from the external application 231 and the
application-2 availability notice from the external application
232. The application selecting unit 122 determines whether the
external applications 231 and 232 are available or not based on the
application identification information attached to the notices. In
this example, the external applications 231 and 232 are both
available, so that the application management table of the
application information storing unit 123 is accessed to set the
"available/unavailable" status therein to "available" with respect
to the corresponding applications. That is, the external
applications 231 and 232 are registered as available applications
(S106, S108).
[0144] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S109), and, in
response, accesses the contents of the application management table
of the application information storing unit 123 to select
(determine) an application (the external application 231 in this
example) to be used among the available applications. The
application selecting unit 122 then stores information about the
selected application as a utilized application management table in
the application information storing unit 123. The external
application 231 (Application 1) is thus registered as a utilized
application. The application selecting unit 122 then uses the
communication processing unit 121 to transmit the received
operation instruction to the external application 231 (5110,
5111).
[0145] In the following, the utilized application management table
will be described with reference to Table 2.
TABLE-US-00002 TABLE 2 Type of Application Name of Application Copy
Application 1 Printer Application 3 Scanner Application 4
[0146] This utilized application management table stores therein
the type of an application and the name of the application in
one-to-one correspondence to each other separately for each
utilized application. The utilized application management table
shown in Table 2 shows an example in which three external
applications are registered as utilized applications.
[0147] Upon receiving the operation instruction from the MFP 10,
the external application 231 analyzes the contents of the operation
instruction (S112). The external application 231 then transmits a
request (command) for execution of a corresponding operation to the
corresponding MFP 10 (i.e., the MFP 10 that transmitted the
operation instruction) as a response to the received operation
instruction (S113). For example, if the operation instruction is a
copy instruction ordering to make two copies of the original, the
contents of the instruction are analyzed to transmit a request
(command) for execution of a copy operation for two copies to the
MFP 10 as a response to the received copy instruction.
[0148] The application selecting unit 122 of the MFP 10 receives
the response (execution request) to the operation instruction from
the external application 231 via the communication processing unit
121. In response, the application selecting unit 122 supplies the
response to the operation instruction to the control unit 124
(S114, S115).
[0149] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation requested by the response to the operation
instruction (execution request).
[0150] In the processes described above, the MFP 10 transmits the
MFP startup notices to the external applications at the time of
power-on of the MFP 10. Alternatively, these notices may be
transmitted at other timing (e.g., may be transmitted upon an
instruction entered through a key operation on the operation unit
107). Alternatively, when an external application is activated
while the power of the MFPs 10 is on, this external application may
identify an MFP 10, and may transmit its own application
availability notice to the identified MFP 10.
[0151] With reference to FIG. 10, a description will be given of a
second example of the communication sequence between external
applications provided in the external servers 20 and the MFP 10 at
the time of the startup of the MFP. For the sake of convenience of
explanation, the external applications include only the external
applications 231 and 232.
[0152] FIG. 10 is a drawing showing a second example of the
communication sequence between the external applications 231 and
232 and the MFP 10 at the time of startup of the MFP 10.
[0153] Each unit of the MFP 10 performs the processes of steps S121
through S124 (identical to the processes of steps S101 through S104
described with reference to FIG. 9), thereby transmitting MFP
startup notices to the external applications 231 and 232. In this
example, the external server 20b provided with the external
application 232 is out of service due to the power-off (or due to
another factor such as a network failure), so that no communication
with the external application 232 is possible (causing a
communication error). The external application 232 thus does not
return an application-2 availability notice.
[0154] The application selecting unit 122 of the MFP 10 receives
via the communication processing unit 121 only the application-1
availability notice from the external application 231. The
application selecting unit 122 determines that only the external
application 231 is available based on the application
identification information attached to the notice. The application
management table of the application information storing unit 123 is
accessed to set the "available/unavailable" status therein to
"available" with respect to the corresponding application. That is,
the external application 231 is registered as an available
application (S125, S126).
[0155] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S127), and, in
response, accesses the contents of the application management table
of the application information storing unit 123 to select an
application to be used among the available applications. In the
example shown in FIG. 10, only the external application 231
(Application 1) is available. The external application 231 is thus
selected, and information about the selected application is stored
as a utilized application management table in the application
information storing unit 123. The external application 231
(Application 1) is thus registered as a utilized application. The
application selecting unit 122 then uses the communication
processing unit 121 to transmit the received operation instruction
to the external application 231 (S128, S129).
[0156] The processes of subsequent steps S130 through S133 are
identical to the processes of steps S112 through S116 described
with reference to FIG. 9, and a description thereof will be
omitted.
[0157] It should be noted that other MI's in addition to the MFP 10
may perform the same processes as those described with reference to
FIG. 10.
[0158] With reference to FIG. 11, a description will be given of a
third example of the communication sequence between external
applications provided in the external servers 20 and the MFP 10 at
the time of the startup of the MFP. For the sake of convenience of
explanation, the external applications include only the external
applications 231 and 232.
[0159] FIG. 11 is a drawing showing a third example of the
communication sequence between the external applications 231 and
232 and the MFP 10 at the time of startup of the MFP 10.
[0160] Each unit of the MFP 10 performs the processes of steps S141
through S144 (identical to the processes of steps S101 through S104
described with reference to FIG. 9), thereby transmitting MFP
startup notices to the external applications 231 and 232. In this
example, the external servers 20a and 20b provided with the
respective external applications 231 and 232 are out of service due
to the power-off (or due to an other factor such as a network
failure), so that no communication with the external applications
231 and 232 is possible. Neither the external application 231 nor
the external application 232 returns an application availability
notice.
[0161] Accordingly, the application selecting unit 122 of the MFP
10 does not register any one of the external applications 231 and
232 as an available application.
[0162] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S145), and, in
response, accesses the contents of the application management table
of the application information storing unit 123. Since no available
application is registered, an error response is transmitted to the
control unit 124 as a response to the received operation
instruction (S146).
[0163] Upon receiving the error response, the control unit 124
displays an error screen (e.g., FIG. 12) on the operation unit 107
(on the LCD touch panel 51 to be exact) shown in FIG. 3. This
serves to notify the user that the function corresponding to the
operation instruction entered through the operation unit 107 cannot
be used.
[0164] In the following, a first example of the process for
determining an available application by the MFP 10 will be
described with reference to FIG. 13 and FIG. 14.
[0165] FIG. 13 is a drawing showing an example of the communication
sequence performed in the MFP 10 when the MFP 10 determines an
available application in response to key operations on the
operation unit 107.
[0166] The control unit 124 of the MFP 10 may perform the processes
described in connection with FIG. 9 to register a plurality of
external applications inclusive of the external applications 231
and 232. After this, a user operates keys on the operation unit 107
to enter a request to display an application selecting screen
(S151). In response, the control unit 124 supplies to the
application selecting unit 122 a request to acquire information
about the types of the available applications (i.e.,
available-application-type information acquisition request)
(S152).
[0167] Upon receiving the acquisition request, the application
selecting unit 122 retrieves (reads) information about the types of
the available applications from the application management table of
the application information storing unit 123 (S153). The
application selecting unit 122 then sends the retrieved information
to the control unit 124 as a response to the
available-application-type information acquisition request)
(S154).
[0168] Upon receiving the response to the
available-application-type information acquisition request from the
application selecting unit 122, the control unit 124 displays an
application selecting screen such as that shown in FIG. 14 on the
operation unit 107 in accordance with the received response
(S155).
[0169] In the following, a brief description will be given of the
application selecting screen.
[0170] The application selecting screen presents information
indicative of the characteristics of the applications available to
the user. In the illustrated example, application type and version
information are presented. In addition, the types of functions
provided in the MFP 10 may be presented in detail, thereby
providing a screen on the operation unit 107 that facilitates an
easier user selection (what is important is to present what is
available to the user).
[0171] Information about applications unavailable to the MFP 10 is
not included in the list of choices.
[0172] Some applications may be unavailable because the options are
not purchased, making the use of the application impossible, or
because the size of the memory is not sufficient for proper
operation of the application. Due to the reasons as described here,
for example, applications are not allowed to be used.
[0173] In the illustrated example, a key operation (e.g., pressing
of a button) by the user on the operation unit 107 effects the
selection of an available application. Alternatively, an
application to be utilized may be determined by selecting a default
application. Without requiring a selection through key operations
on the operation unit 107, the type of the application to be
utilized may be stored in advance in the ROM 104, the NVRAM 105, or
the HDD 106 shown in FIG. 2.
[0174] Now turning hack to FIG. 13, key operations performed by the
user on the application selecting screen determines the type of the
applications to be utilized (which are the external applications
231 and 232 (Application 1 and Application 2) in this example). In
response, the instruction to utilize these applications is supplied
to the application selecting unit 122 (S156).
[0175] Upon receiving the instruction to utilize the external
applications 231 and 232, the application selecting unit 122
identifies the external applications 231 and 232 as available
applications, and registers these again.
[0176] In the following, a second example of the process for
determining an available application by the MFP 10 will be
described with reference to FIG. 15.
[0177] FIG. 15 is an illustrative drawing for explaining a second
example of the process for determining an available application at
the MFP 10.
[0178] The application selecting unit 122 of the MFP 10 commences
the processes described in connection with FIG. 9 at the time of
power-on or at other timing (e.g., upon instruction entered through
a key operation on the operation unit 107). The application
selecting unit 122 then acquires the IP addresses of a plurality of
external applications (three external applications in this example)
including the external applications 231 and 232 that have already
been registered. As shown in FIG. 15-(a), the control unit 124
displays an application selecting screen presenting these IP
addresses on the operation unit 107. If provision is made such that
key operations on the operation unit 107 allow an application
selecting screen to be displayed on the operation unit 107, the
service personnel may need to enter a predetermined PIN number
through key operations on the operation unit 107 to enter a service
maintenance mode. Alternatively, the administrator may need to
enter a predetermined PIN number through key operations on the
operation unit 107 to enter an administrator mode to display the
application selecting screen.
[0179] After this, one or more IP addresses (possibly all the IP
addresses) are selected on the application selecting screen. Based
on the selected IP addresses, the communication processing unit 121
transmits MFP startup notices to the corresponding external
applications.
[0180] Thereafter, the external applications (multiple external
applications) to which the MFP startup notices were transmitted
send back application availability notices. Upon receiving these
notices, the application identification information attached to the
notices is checked to determine that these external applications
are available. The application management table of the application
information storing unit 123 is accessed to set the corresponding
"available/unavailable" status therein to "available", thereby
registering the available applications.
[0181] Based on the contents of the application management table of
the application information storing unit 123, an application
selecting screen, which may be one of Pattern 1 through Pattern 4
shown in FIG. 15-(b) through (e), respectively, is displayed on the
operation unit 107.
[0182] In the following, a brief description will be given of each
of these application selecting screens.
[0183] The application selecting screen "Pattern 1" shown in FIG.
15-(b) presents the types and version numbers of all the external
applications provided on the network 1, for example. Some or all of
these external applications may be determined (selected) and
registered as available applications.
[0184] The application selecting screen "Pattern 2" shown in FIG.
15-(c) presents, at first, the application of the highest version
number (i.e., of the latest version) with respect to each external
application of the same type. When a selection button is pressed
with respect to a given external application, this external
application is switched to another version. The external
applications having version numbers as currently presented on the
screen are selected and registered as available applications.
[0185] The application selecting screen "Pattern 3" shown in FIG.
15-(d) presents, at first, the application of the highest response
performance with respect to each external application of the same
type. When a selection button is pressed with respect to a given
external application, this external application is switched to
another version. The external applications having response
performance as currently presented on the screen are selected and
registered as available applications. How to measure the response
performance (response time) will later be described with reference
to the communication sequence of FIG. 23.
[0186] The application selecting screen "Pattern 4" shown in FIG.
15-(e) presents, at first, the application of the highest function
level (e.g., the largest number of functions) with respect to each
external application of the same type. When a selection button is
pressed with respect to a given external application, this external
application is switched to another version. The external
applications having the function levels as currently presented on
the screen are selected and registered as available applications.
Since an external application having a high function level may be
difficult to use due to its complicated usage, the user is given a
choice of available applications according to the user need.
[0187] Provision may be made such that the applications initially
presented on the application selecting screen "Pattern 2", "Pattern
3", or "Pattern 4" may be selected as available applications
without exception, or may be excluded from available
applications.
[0188] In the following, a third example of the process for
determining an available application by the MFP 10 will be
described with reference to FIG. 16.
[0189] FIG. 16 is an illustrative drawing for explaining a third
example of the process for determining an available application at
the MFP 10.
[0190] The application selecting unit 122 of the MFP 10 performs
the processes similarly to the manner as described with reference
to FIG. 15, thereby allowing one or more IP addresses (possibly all
the IP addresses) to be selected on the application management
screen (see FIG. 16-(a)) displayed on the operation unit 107. Based
on the selected IP addresses, the communication processing unit 121
is requested to transmit MFP startup notices to the corresponding
external applications. Thereafter, the external applications
(multiple external applications) to which the MFP startup notices
were transmitted send hack application availability notices. Upon
receiving these notices, the application identification information
attached to the notices is checked to determine that these external
applications are available. The application management table of the
application information storing unit 123 is accessed to set the
corresponding "available/unavailable" status therein to
"available", thereby registering the available applications.
[0191] Based on the contents of the application management table of
the application information storing unit 123, an application
management screen, which may be one of Pattern 1 through Pattern 4
shown in FIG. 16-(b) through (e), respectively, is displayed on the
operation unit 107. External applications to be utilized will then
be determined (automatically selected) according to predetermined
conditions.
[0192] In the following, a brief description will be given of each
of these application management screens and how to select
applications.
[0193] The application management screen "Pattern 1" shown in FIG.
16-(b) presents the application of the highest response performance
with respect to each external application of the same type. The
external applications having these presented response performance
are selected and registered as available applications.
[0194] The application management screen "Pattern 2" shown in FIG.
16-(c) presents the application of the highest function level with
respect to each external application of the same type. The external
applications having these presented function levels are selected
and registered as available applications.
[0195] The application management screen "Pattern 3" shown in FIG.
16-(d) presents the application of the lowest function level with
respect to each external application of the same type. The external
applications having these presented function levels are selected
and registered as available applications.
[0196] The application management screen "Pattern 4" shown in FIG.
16-(e) is not immediately presented. At first, a screen for
entering a login ID and password is presented. When a login ID and
password are entered to match one of the registered login IDs and
passwords, an application management screen presenting the types
and version numbers of the applications assigned in advance to the
corresponding user (e.g., USER-A), i.e., the application management
screen "Pattern 4" shown in FIG. 16-(e), is displayed on the
operation unit 107. The external applications presented on this
application management screen are selected and registered as
available applications.
[0197] An application management screen presenting the frequency of
uses with respect to each external application may be presented. In
accordance with the frequency of uses, the external applications to
be utilized may be determined (e.g., by selecting the applications
that are least frequently used).
[0198] The first example of control brings about advantages as
described in the following.
[0199] (1) The MFP 10 (image processing apparatus) communicates
with external applications, and performs its operations by
utilizing these external applications. This allows a plurality of
image processing apparatuses to share applications, thereby
allowing each image processing apparatus to provide a plurality of
functions at low cost. Further, the amount of labor necessary for
the version update of the applications can be reduced. Moreover,
internal applications may also be utilized to perform operations,
thereby providing additional latitude.
[0200] (2) The MFP 10 registers as available applications a
plurality of external applications with which communication is
possible, and selects one or more external applications to be
utilized from the registered applications. This allows an operation
to be performed by utilizing an external application even if a
server provided with another external application is out of service
for some reason. The situation in which the MFP becomes out of
service can thus be avoided.
[0201] [Second Example of Control]
[0202] With reference to FIG. 17, a description will be given of a
first example of the communication sequence between the MFPs 10 and
external applications at the time of the startup of the external
applications. For the sake of convenience of explanation, the
external applications include only the two external applications
231 and 232, and the MFPs 10 include only two MFPs. These two MFPs
are denoted as an MFP 10a (MFP1) and an MFP 10b (MFP2).
[0203] FIG. 17 is a drawing showing a first example of the
communication sequence between the external applications and the
MFPs 10 at the time of startup of the external applications. In
this example, the types of available applications are stored in the
ROM 104, NVRAM 105, or HDD 106 (see FIG. 2) of the MFPs 10a and 10b
in accordance with the model types of the respective MFPs 10.
[0204] The external application 231 (Application 1) transmits
(S161) an application availability notice (Application-1
availability notice) inclusive of its identification information to
the MFP 10a (MFP1) at the time of the startup (at the time of
power-on of the external server 20a).
[0205] The external application 232 (Application 2) transmits
(S162) an application availability notice (Application-2
availability notice) inclusive of its identification information to
the MFP 10b (MFP2) at the time of the startup (at the time of the
power-on of the external server 20b).
[0206] The application selecting unit 122 of the MFP 10a (MFP1)
receives via the communication processing unit 121 the
application-1 availability notice from the external application 231
(Application 1). In response, the application selecting unit 122
determines that the external application 231 is available based on
the application identification information attached to the notice.
The application selecting unit 122 then accesses the application
management table of the application information storing unit 123 to
set the corresponding "available/unavailable" status to
"available". That is, the external application 231 is registered as
an available application (S163).
[0207] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124, and, in
response, accesses the contents of the application management table
of the application information storing unit 123. The application
selecting unit 122 uses the communication processing unit 121 to
transmit the received operation instruction to the external
application 231 (Application 1) that is the available application
(S165).
[0208] The application selecting unit 122 of the MFP 10b (MFP2)
receives via the communication processing unit 121 the
application-2 availability notice from the external application 232
(Application 2). In response, the application selecting unit 122
determines that the external application 232 is available based on
the application identification information attached to the notice.
The application selecting unit 122 then accesses the application
management table of the application information storing unit 123 to
set the corresponding "available/unavailable" status to
"available". That is, the external application 232 is registered as
an available application (S164).
[0209] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124, and, in
response, accesses the contents of the application management table
of the application information storing unit 123. The application
selecting unit 122 uses the communication processing unit 121 to
transmit the received operation instruction to the external
application 232 (Application 2) that is the available application
(S166).
[0210] The second example of control can bring about the same
advantage as described above in (1). Further, since the external
applications are selected separately for each MFP model, optimum
operations are achieved with respect to each MFP model.
[0211] [Third Example of Control]
[0212] With reference to FIG. 18, a description will be given of a
fourth example of the communication sequence between external
applications provided in the external servers 20 and the MFP 10 at
the time of the startup of the MFP. For the sake of convenience of
explanation, the external applications include only the external
application 232 (Application 2). Further, there is an internal
application 131 (Application 3) as illustrated by dotted lines in
FIG. 6.
[0213] FIG. 18 is a drawing showing a fourth example of the
communication sequence between the applications and the MFP 10 at
the time of startup of the MFP 10.
[0214] At the time of the startup (power-on), the application
selecting unit 122 of the MFP 10 issues a startup notice (MFP
startup notice) to the internal application 131 and the external
application 232 already registered (as indicated by the information
stored in the application management table of the application
information storing unit 123 shown in FIG. 6). Namely, the
communication processing unit 121 is requested to transmit an MFP
startup notice to the external application 232 (Application 2)
(S171, S172). Further, an MFP startup notice is supplied to the
internal application 131 (Application 3) (S173).
[0215] The internal application (Application 3) 131 receives the
MFP startup notice from the application selecting unit 122, and, in
response to the notice, supplies an application availability notice
(Application-3 availability notice) inclusive of its identification
information to the application selecting unit 122 (S174).
[0216] Upon receiving the application-3 availability notice from
the internal application 131, the application selecting unit 122
determines that the internal application 131 is available based on
the application identification information attached to the notice.
The application selecting unit 122 sets the corresponding
"available/unavailable" status to "available" in the application
management table of the application information storing unit 123.
That is, the internal application 131 is registered as an available
application.
[0217] If the external server 20b having the external application
232 is running, the external application 232 receives the MFP
startup notice from the MFP 10, and, in response to the notice,
transmits an application availability notice (Application-2
availability notice) inclusive of its own identification
information to the MFP 10 (S175).
[0218] Upon receiving the application-2 availability notice from
the external application 232 via the communication processing unit
121, the application selecting unit 122 of the MFP 10 determines
that the external application 232 is available based on the
application identification information attached to the notice. The
application selecting unit 122 sets the corresponding
"available/unavailable" status to "available" in the application
management table of the application information storing unit 123.
That is, the external application 232 (Application 2) is registered
as an available application (S176).
[0219] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S177), and, in
response, accesses the contents of the application management table
of the application information storing unit 123 to select
(determine) an application (the internal application 131
(Application 3) in this example) to be used among the available
applications. The application selecting unit 122 then stores
information about the selected application as a utilized
application management table in the application information storing
unit 123. The internal application 131 (Application 3) is thus
registered as a utilized application. The application selecting
unit 122 then transmits the received operation instruction to the
internal application 131 (S178).
[0220] If more than one application is provided for choice, the
application selecting unit 122 may select an application to be
utilized according to predetermined priority. Such priority may
prescribe that internal applications are given priority, or may
prescribe that external applications are given priority.
Alternatively, priority may be assigned according to application
types. Needless to say, a selection may be made by entering an
instruction through key operations on the operation unit 107.
[0221] Upon receiving the operation instruction from the
application selecting unit 122, the internal application 131
analyzes the contents of the operation instruction (S179). The
internal application 131 then transmits a request for execution of
a corresponding operation to the application selecting unit 122 as
a response to the received operation instruction (S180).
[0222] Upon receiving the response (execution request) to the
operation instruction from the internal application 131, the
application selecting unit 122 supplies the response to the
operation instruction to the control unit 124 (S181).
[0223] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation requested by the response to the operation
instruction (execution request).
[0224] In the processes described above, the MFP 10 transmits the
MFP startup notices to the external application and the internal
application at the time of power-on of the MFP 10. Alternatively,
these notices may be transmitted at other timing (e.g., may be
transmitted upon an instruction entered through a key operation on
the operation unit 107).
[0225] The third example of control can bring about the same
advantage as that described in (1).
[0226] Further, the MFP 10 registers as available applications not
only external applications but also internal applications, and
selects one or more applications to be utilized from the registered
applications. This allows an operation to be performed by utilizing
an external application or internal application even if a server
provided with another external application is out of service for
some reason. The situation in which the MFP becomes out of service
can thus be reliably avoided.
[0227] [Fourth Example of Control'
[0228] With reference to FIG. 19, a description will be given of a
fifth example of the communication sequence between external
applications provided in the external servers 20 and the MFP 10 at
the time of the startup of the MFP. For the sake of convenience of
explanation, the external applications include only the external
application 232 (Application 2). Further, there is an internal
application 131 (Application 3) as illustrated by dotted lines in
FIG. 6.
[0229] FIG. 19 is a drawing showing a fifth example of the
communication sequence between the applications and the MFP 10 at
the time of startup of the MFP 10.
[0230] Each unit of the MFP 10 performs the processes of steps S191
through S194 (identical to the processes of steps S171 through S174
described with reference to FIG. 18), thereby transmitting MFP
startup notices to the external application 232 (Application 2) and
the internal application 131 (Application 3). In this example, the
external server 20b provided with the external application 232 is
out of service due to the power-off (or due to another factor such
as a network failure), so that no communication with the external
application 232 is possible. The external application 232 thus does
not return an application-2 availability notice.
[0231] Upon receiving the application-3 availability notice from
the internal application 131, the application selecting unit 122
determines that the internal application 131 is available based on
the application identification information attached to the notice.
The application selecting unit 122 sets the corresponding
"available/unavailable" status to "available" in the application
management table of the application information storing unit 123.
That is, the internal application 131 is registered as an available
application.
[0232] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S195), and, in
response, accesses the contents of the application management table
of the application information storing unit 123. Since only the
internal application 131 (Application 3) is available, the internal
application 131 (Application 3) is selected as a utilized
application, and information about the utilized application is
stored as a utilized application management table in the
application information storing unit 123. The internal application
131 (Application 3) is thus registered as a utilized application.
The application selecting unit 122 transmits the received operation
instruction to the internal application 131 (S196).
[0233] Upon receiving the operation instruction from the
application selecting unit 122, the internal application 131
analyzes the contents of the operation instruction (S197). The
internal application 131 then transmits a request for execution of
a corresponding operation to the application selecting unit 122 as
a response to the received operation instruction (S198).
[0234] Upon receiving the response to the operation instruction
from the internal application 131, the application selecting unit
122 supplies the response to the operation instruction to the
control unit 124 (S199).
[0235] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation requested by the response to the operation
instruction (execution request).
[0236] Thereafter, the external application 232 is activated
through the power-on of the external server 20b or the like. Upon
this, the external application 232 transmits an application
availability notice (Application-2 availability notice) inclusive
of its identification information to the MFP 10 (S200).
[0237] Upon receiving the application-2 availability notice from
the external application 232 via the communication processing unit
121, the application selecting unit 122 of the MFP 10 determines
that the external application 232 is available based on the
application identification information attached to the notice. The
application selecting unit 122 sets the corresponding
"available/unavailable" status to "available" in the application
management table of the application information storing unit 123,
thereby updating the application management table. That is, the
external application 232 (Application 2) is also registered as an
available application (S176).
[0238] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S202), and, in
response, accesses the contents of the application management table
of the application information storing unit 123 to select an
application to be used among the available applications. In this
example, priority regarding application selection is predetermined
such that the external applications are given priority. The
external application 232 (Application 2) is thus selected as an
application to be utilized. The application selecting unit 122 then
stores information about the utilized application as a utilized
application management table in the application information storing
unit 123. The external application 232 (Application 2) is thus
registered as a utilized application. The communication processing
unit 121 is then requested to transmit the received operation
instruction to the external application 232 (S203, 204).
[0239] Upon receiving the operation instruction from the MFP 10,
the external application 232 analyzes the contents of the operation
instruction (S205). The external application 232 then transmits a
request (command) for execution of a corresponding operation to the
corresponding MFP 10 as a response to the received operation
instruction (S206).
[0240] Upon receiving the response to the operation instruction
from the external application 232 via the communication processing
unit 121, the application selecting unit 122 of the MFP 10 supplies
the response to the operation instruction to the control unit 124
(S207, S208).
[0241] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation requested by the response to the operation
instruction.
[0242] In the processes described above, the MFP 10 transmits the
MFP startup notices to the external application and the internal
application at the time of power-on of the MFP 10. Alternatively,
these notices may be transmitted at other timing (e.g., may be
transmitted upon an instruction entered through a key operation on
the operation unit 107).
[0243] The fourth example of control can bring about the same
advantages as those of the first example of control.
[0244] Further, when an external application becomes additionally
available through communication, the MFP 10 registers this external
application as an additionally available application. If the
priority of use assigned to this additionally registered external
application is high, the use of the external application improves
the convenience of use for users.
[0245] [Fifth Example of Control]
[0246] With reference to FIG. 20, a description will be given of a
sixth example of the communication sequence between external
applications provided in the external servers 20 and the MFP 10 at
the time of the startup of the MFP. For the sake of convenience of
explanation, the external applications include only the two
external applications 231 and 232.
[0247] FIG. 20 is a drawing showing a sixth example of the
communication sequence between the external applications 231 and
232 and the MFP 10 at the time of startup of the MFP 10.
[0248] Each unit of the MFP 10 performs the processes of steps 5211
through S214 (identical to the processes of steps 5101 through S104
described with reference to FIG. 9), thereby transmitting MFP
startup notices to the external applications 231 and 232.
[0249] If the external server 20a provided with the external
application 231 is running, the external application 231 receives
the MFP startup notice from the MFP 10, and, in response to the
notice, transmits information indicative of installed functions
(Application-1 function notice) inclusive of its identification
information to the MFP 10 (S215).
[0250] If the external server 20b having the external application
232 is running, the external application 232 receives the MFP
startup notice from the MFP 10, and, in response to the notice,
transmits information indicative of installed (executable)
functions (Application-2 function notice) inclusive of its
identification information to the MFP 10 (S217).
[0251] The application selecting unit 122 of the MFP 10 receives
via the communication processing unit 121 the application-1
function notice from the external application 231 and the
application-2 function notice from the external application 232.
The application selecting unit 122 determines that the external
applications 231 and 232 are available based on the application
identification information attached to the notices. Further, the
application selecting unit 122 identifies the functions provided in
the external applications 231 and 232, and stores information
indicative of the functions provided by the external applications
231 and 232 in the application management table of the application
information storing unit 123. These functions are thus registered
(S216, S218).
[0252] Thereafter, a user administrator enters an administrator's
login ID and password through key operations on the operation unit
107. If one of the registered login IDs and passwords match the
entered login ID and password, the control unit 124 enters the
special mode for use by the administrator. The control unit 124
supplies a request for administrator function to the application
selecting unit 122 (S219).
[0253] Upon recording the request for administrator function from
the control unit 124, the application selecting unit 122 selects an
application having the administrator function (the external
application 231 (Application 1) in this example) as an application
to be utilized. The application selecting unit 122 stores
information about the selected application as a utilized
application management table in the application information storing
unit 123. The external application 231 (Application 1) is thus
registered as a utilized application. The application selecting
unit 122 then uses the communication processing unit 121 to
transmit the operation instruction corresponding to the
administrator function to the external application 231 (S220,
S221).
[0254] Upon receiving the operation instruction corresponding to
the administrator function from the MIT 10, the external
application 231 analyzes the contents of the operation instruction
(S222). The external application 231 then transmits a request for
execution of a corresponding operation to the corresponding MFP 10
as a response to the received operation instruction (S223).
[0255] Upon receiving the response to the operation instruction
from the external application 231 via the communication processing
unit 121, the application selecting unit 122 of the MFP 10 supplies
the response to the operation instruction to the control unit 124
(S224, S225).
[0256] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation corresponding to the administrator function
as requested by the response to the operation instruction
(execution request).
[0257] A general user enters a user's login ID and password through
key operations on the operation unit 107. If one of the registered
login IDs and passwords match the entered login ID and password,
the control unit 124 enters a standard mode for use by general
users. The control unit 124 supplies a request for general user
function to the application selecting unit 122 (S226).
[0258] Upon recording the request for general user function from
the control unit 124, the application selecting unit 122 selects an
application having the general user function (the external
application 232 (Application 2) in this example) as an application
to be utilized. The application selecting unit 122 stores
information about the selected application as a utilized
application management table in the application information storing
unit 123. The external application 232 (Application 2) is thus
registered as a utilized application. The application selecting
unit 122 then uses the communication processing unit 121 to
transmit the operation instruction corresponding to the general
user function to the external application 232 (S227, S228).
[0259] Upon receiving the operation instruction corresponding to
the general user function from the MFP 10, the external application
232 analyzes the contents of the operation instruction (S229). The
external application 232 then transmits a request for execution of
a corresponding operation to the corresponding MFP 10 as a response
to the received operation instruction (S230).
[0260] Upon receiving the response to the operation instruction
from the external application 232 via the communication processing
unit 121, the application selecting unit 122 of the MFP 10 supplies
the response to the operation instruction to the control unit 124
(S231, S232).
[0261] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation corresponding to the general user function
as requested by the response to the operation instruction
(execution request).
[0262] In the processes described above, the MFP 10 transmits the
MFP startup notices to the external applications at the time of
power-on of the MFP 10. Alternatively, these notices may be
transmitted at other timing (e.g., may be transmitted upon an
instruction entered through a key operation on the operation unit
107).
[0263] The fifth example of control can bring about the same
advantages as those described in (1).
[0264] Further, the MFP 10 registers as available applications the
external applications with which communication is possible, and
switches utilized external applications depending on whether the
current user is the administrator or a general user. This ensures
optimum operations for each of the administrator and general users,
and improves the convenience of use for the administrator as well
as the general users.
[0265] In the fifth example of control described above, the
application selecting unit 122 of the MFP 10 is notified of the
information indicative of installed functions from the external
application provided with the administrator function as shown in
FIG. 21A and the external applications provided with general user
functions (general function), and registers these functions. Each
of the external applications may be provided with the normal copy
function, the programmed copy function, and the interruption copy
function as shown in FIG. 21B. Each of the external applications
may be provided with the copy function, the printer function, the
scanner function, and the facsimile (FAX) function as shown in FIG.
21C. Each of the external applications may be provided with the
high security function, the standard security function, and the low
security function as shown to in FIG. 21D. Provision may be made
such that the external applications as described above report the
functions as listed above, so that these functions can be
registered.
[0266] [Sixth Example of Control]
[0267] With reference to FIG. 23, a description will be given of a
seventh example of the communication sequence between external
applications provided in the external servers 20 and the MFP 10 at
the time of the startup of the MFP. In this example, the MFP
operates by utilizing an application that has the highest response
performance. For the sake of convenience of explanation, the
external applications include only the two external applications
231 and 232.
[0268] FIG. 23 is a drawing showing a seventh example of the
communication sequence between the external applications 231 and
232 and the MFP 10 at the time of startup of the MFP 10. In this
example, the controller 11 of the MFP 10 includes the function of
an application-response-time measuring unit 125 as shown in FIG.
22. The application-response-time measuring unit 125 serves to
measure the time lapse from the transmission of an MFP startup
notice to each of the external applications inclusive of the
external applications 231 and 232.
[0269] At the time of the startup (power-on), the application
selecting unit 122 of the MFP 10 issues a startup notice (MFP
startup notice) to the external applications 231 and 232 that are
already registered (as indicated by the information stored in the
application management table of the application information storing
unit 123 shown in FIG. 22). Namely, the communication processing
unit 121 is requested via the application-response-time measuring
unit 125 to transmit an MFP startup notice to the external
applications 231 and 232 (Application 1 and Application 2)
successively (S251 through S256). The MFP startup notice directed
to the external applications 231 and 232 includes an application
identification number indicative of the external applications 231
and 232, respectively. This application identification number is
acquired from the application information storing unit 123 shown in
FIG. 22 together with the information about the location of the
site of the application.
[0270] When receiving the MFP startup notice directed to the
external application 231 (Application 1) from the application
selecting unit 122, the application-response-time measuring unit
125 starts measuring a response time Ta. When receiving the MFP
startup notice directed to the external application 232
(Application 2) from the application selecting unit 122, the
application-response-time measuring unit 125 starts measuring a
response time Tb.
[0271] If the external server 20a having the external application
231 is running, the external application 231 receives the MFP
startup notice from the MFP 10, and, in response to the notice,
transmits an application availability notice (Application-1
availability notice) inclusive of its identification information to
the MFP 10 (S257).
[0272] If the external server 20b having the external application
232 is running, the external application 232 receives the MIT
startup notice from the MFP 10, and, in response to the notice,
transmits an application availability notice (Application-2
availability notice) inclusive of its own identification
information to the MFP 10 (S260).
[0273] The application selecting unit 122 of the MFP 10 receives,
via the communication processing unit 121 and the
application-response-time measuring unit 125, the application-1
availability notice from the external application 231 and the
application-2 availability notice from the external application
232. The application selecting unit 122 determines whether the
external applications 231 and 232 are available or not based on the
application identification information attached to the notices. The
application selecting unit 122 sets the corresponding
"available/unavailable" statuses to "available" in the application
management table of the application information storing unit 123.
That is, the external applications 231 and 232 are registered as
available applications (S257 through S262).
[0274] The application-response-time measuring unit 125 stops
measuring the response time Ta when receiving the application-1
availability notice from the external application 231 (Application
1). Further, the application-response-time measuring unit 125 stops
measuring the response time Tb when receiving the application-2
availability notice from the external application 232 (Application
2).
[0275] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S263), and, in
response, refers to the contents of the application management
table of the application information storing unit 123 and the
response times Ta and Tb measured by the application-response-time
measuring unit 125 to select an application to be used among the
available applications. If the relationship between Ta and Tb is
found to be Tb<Ta, for example, it is ascertained that the
external application 231 (Application 1) has a better response
performance. The external application 231 (Application 1) is thus
selected as an application to be utilized.
[0276] If the internal applications 131 and 132 are provided as
shown by dotted lines in FIG. 22, a higher performance is
guaranteed by use of the internal applications, without a need to
measure any response time. In this case, the internal applications
may be selected as an application to be utilized. Further, such
selection may be combined with the selection of functions. If there
are a plurality of applications having the same function, the
application with the highest response performance (shortest
response time) may be selected as an application to be
utilized.
[0277] After selecting the external application 231 (Application 1)
as an application to be utilized, the application selecting unit
122 stores information about the selected application as a utilized
application management table in the application information storing
unit 123. The external application 231 (Application 1) is thus
registered as a utilized application. The application selecting
unit 122 then uses the communication processing unit 121 to
transmit the received operation instruction to the external
application 231 via the application-response-time measuring unit
125 (S264 through S266).
[0278] Upon receiving the operation instruction from the MFP 10,
the external application 231 analyzes the contents of the operation
instruction (S267). The external application 231 then transmits a
request (command) for execution of a corresponding operation to the
MFP 10 as a response to the received operation instruction
(S268).
[0279] The application selecting unit 122 of the MFP 10 receives
the response (execution request) to the operation instruction from
the external application 231 via the communication processing unit
121 and the application-response-time measuring unit 125. In
response, the application selecting unit 122 supplies the response
to the operation instruction to the control unit 124 (S269 through
S271).
[0280] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation requested by the response to the operation
instruction (execution request).
[0281] In the processes described above, the MFP 10 transmits the
MFP startup notices to the external applications at the time of
power-on of the MFP 10. Alternatively, these notices may be
transmitted at other timing (e.g., may be transmitted upon an
instruction entered through a key operation on the operation unit
107).
[0282] The measurement of time (i.e., the response time of an
external application) by the application-response-time measuring
unit may be performed not only at the time of power-on (at the time
of an MFP startup notice) but also at constant intervals when there
is no ongoing MFP job. It should be noted that the measurement of
time is not performed when there is an ongoing job. Alternatively
or additionally, the measurement of time may be performed at the
timing at which a new external application is added.
[0283] Further, the MFP 10 of the first embodiment may be connected
to external applications not only through the network but also
through other interfaces such as USB I/F or IEEE1394 I/F. Through
the communication established in this manner, the external
applications may be utilized.
Second Embodiment
[0284] In the following, a description will be given of an image
forming system that is a second embodiment of the electronic
apparatus system according to the present invention.
[0285] FIG. 24 is a schematic diagram showing an example of network
connection of the image forming system. In FIG. 24, the same
elements as those of FIG. 1 are referred to by the same
numerals.
[0286] This image forming system includes a plurality of MFPs 10
(10a, 10b, and so on) serving as electronic apparatuses equipped
with a communication function, a plurality of external severs 20
(20a, 20b, and so on) serving as external apparatuses (application
servers), and an application management server 30, which are
connected to conduct communication with each other via the network
1 such as a LAM (local area network). It should be noted that the
MFPs 10 and the external servers 20 can communicate with each other
in one-to-many relationship via the network 1. If the MFPs 10 and
the external servers 20 are coupled via communication links such as
USB or IEEE1394, the MFPs 10 and the external servers 20 can
communicate with each other in one-to-one relationship.
[0287] The hardware configuration of the MFPs 10 and the external
servers 20 as well as the operation screen on the operation unit of
the MFPs 10 are the same as those described with reference to FIG.
2 through FIG. 5 and FIG. 7, and a description thereof will be
omitted. The hardware configuration of the application management
server 30 is the same as the external server 20 less the operation
unit, the USB I/F, and the IEEE1394 I/F, and a description thereof
will be omitted.
[0288] FIG. 25 is a block diagram showing an example of the
functional configuration of the MFP 10 shown in FIG. 24. This
configuration is the same as that shown in FIG. 6, except that no
application information storing unit is provided, and a description
thereof will be omitted.
[0289] FIG. 26 is a block diagram showing, an example of the
functional configuration of the application management server 30
shown in FIG. 24.
[0290] The application management server 30 includes a
communication processing unit 301, an application information
storing unit 302, and a control unit 303.
[0291] The communication processing unit 301 communicates with the
external applications 231 and 232 provided in the external servers
20 (20a, 20b, and so on) and the MFP 10 connected through the
network 1. The communication processing unit 121 also communicates
with an external device that is directly connected.
[0292] The application information storing unit 302 stores
information in an application management table for the purpose of
managing external applications. Such information includes the
locations (IP addresses) of available external applications, i.e.,
the locations of the external servers 20 in which these external
applications are installed, and also includes the types of the
available external applications and information indicative of the
operations (functions) executable by the available external
applications. Based on this information, it is possible to register
an available external application in each MFP 10. The application
information storing unit 302 exists in the SDRAM, NVRAM, or HDD,
and is updated each time the information is changed. The
application information storing unit 302 serves as an application
registering unit.
[0293] If applications (internal applications) are provided in the
MFP 10, the application information storing unit 302 may also
include information for managing these internal applications in the
application management table. Such information includes the
locations (IP addresses) of the internal applications, i.e., the
locations of the MFPs 10 in which these internal applications are
installed, and also includes the types of the internal applications
and information indicative of the operations executable by the
internal applications.
[0294] The control unit 303 performs central control of the
individual units inclusive of the communication processing unit 301
and the application information storing unit 302. The control unit
303 serves to perform the function of a control unit.
[0295] The control unit 303 and the communication processing unit
301 together serve to function as an application information
transmitting unit.
[0296] In the following, a detailed description will be given of
the control (processing) according to the present invention
performed by the second embodiment of the above-described image
forming system with reference to FIG. 27 through FIG. 29.
[0297] [Second Example of Control]
[0298] With reference to FIG. 27, a description will be given first
of a first example (basic example) of the communication sequence
between the MFP 10, the external applications provided in the
external servers 20, and the application management server 30 at
the time of the power-on or operation instruction of the MFP 10.
For the sake of convenience of explanation, the external
applications include only the two external applications 231 and
232.
[0299] FIG. 27 is a drawing showing a first example of the
communication sequence between the MFP 10, the external
applications, and the application management server 30 at the time
of power-on or operation instruction of the MFP 10.
[0300] The external application 231 (Application 1) is activated
through the power-on of the external server 20a. Upon this, the
external application 231 transmits an application availability
notice (Application-1 availability notice) inclusive of its
identification information and type information to the application
management server 30 (S301).
[0301] The external application 232 (Application 1) is activated
through the power-on of the external server 20b. Upon this, the
external application 232 transmits an application availability
notice (Application-2 availability notice) inclusive of its
identification information and type information to the application
management server 30 (S302).
[0302] Upon receiving the application-1 availability notice from
the external application 231 (Application 1) via the communication
processing unit 301, the control unit 303 of the application
management server 30 determines that the external application 231
is available, and identifies the type of the external application
231 based on the application identification information and type
information attached to the notice. The control unit 303 stores the
name (application name), type, and IP address of the external
application 231 in the application management table of the
application information storing unit 302 in such a manner that the
stored items are associated with each other, thereby updating the
application management table. That is, the external application 231
is registered as an available application (S302).
[0303] Upon receiving the application-2 availability notice from
the external application 232 (Application 2) via the communication
processing unit 301, the control unit 303 of the application
management server 30 determines that the external application 232
is available, and identifies the type of the external application
232 based on the application identification information and type
information attached to the notice. The control unit 303 stores the
name, type, and IP address of the external application 232 in the
application management table of the application information storing
unit 302 in such a manner that the stored items are associated with
each other, thereby updating the application management table. That
is, the external application 232 is registered as an available
application (S304).
[0304] In the following, a description will be given of the
application management table, MFP management table, and
MFP-&-application association table stored in the application
information storing unit 302 of the application management server
30 with reference to Table 3 through Table 5.
[0305] As shown in Table 3, the application management table stores
therein information indicative of an application name, an IP
address (application location information) indicative of the
location where the application exists, and an application type
separately for each application (external applications 231, 232,
and so on) provided on the network 1. In this example, four
external applications are registered.
[0306] Application-1 (provided with the copy function, printer
function, and scanner function) corresponds to the first external
application 231. Application-2 (provided with the copy function and
printer function) corresponds to the second external application
232. Application-3 (provided with the copy function, printer
function, and scanner function) corresponds to the third external
application. Application-4 (provided with the scanner function)
corresponds to the fourth external application. These applications
may be provided with a plurality of types of functions as was
described in connection with FIG. 21.
[0307] As shown in Table 4, the MFP management table stores therein
an MFP name and an IP address (information indicative of the
location of an MFP) separately for each MFP 10 provided on the
network 1. In this example, four MFPs 10 are registered.
[0308] Table 5 shows the MFP-&-application association table.
This table shows external applications that are currently available
to each MFP 10.
[0309] Each external application may be provided with a plurality
of functions.
TABLE-US-00003 TABLE 3 Application Name Application IP address Copy
Printer Scanner Application-1 133.AAA.AAA.AAA Yes Yes Yes
Application-2 133.BBB.BBB.BBB Yes Yes No Application-3
133.CCC.CCC.CCC Yes Yes Yes Application-4 133.DDD.DDD.DDD No No
Yes
TABLE-US-00004 TABLE 4 MFP Name MFP IP address MFP-A
133.XXX.XXX.XXX MFP-B 133.YYY.YYY.YYY MFP-C 133.ZZZ.ZZZ.ZZZ MFP-D
133.VVV.VVV.VVV
TABLE-US-00005 TABLE 5 MFP Name Copy Application Printer
Application Scanner Application MFP-A Application-1 Application-3
Application-4 MFP-B Application-3 Application-2 Application-1 MFP-C
Application-2 Application-3 Application-3 MFP-D Application-1
Application-1 Application-1
[0310] Turning back to FIG. 27, the application selecting unit 122
of the MFP 10 needs to inquire of the application management server
30 about available applications at the time of power-on. To this
end, the application selecting unit 122 transmits a search request
(available application search request) to the application
management server 30 by use of the communication processing unit
121 (S305, S306).
[0311] Upon receiving the available application search request from
the MFP 10 via the communication processing unit 301, the control
unit 303 of the application management server 30 refers to the
application management table of the application information storing
unit 302. From the application management table, the control unit
303 retrieves the types of the available external applications 231
and 232 and the application location information (IP addresses)
indicative of the locations of the external applications 231 and
232 (S307). The control unit 303 then transmits the retrieved
information to the corresponding MFP 10 as a response (search
result response) to the received available application search
request (S308).
[0312] Upon receiving the search result response from the
application management server 30 via the communication processing
unit 121, the application selecting unit 122 of the MFP 10 stores
the types of the available external applications 231 and 232 and
the IP addresses indicative of their locations in a table format as
shown in Table 1, for example, based on the search result response.
Thus, the available external applications 231 and 232 are
registered (S309, S310).
[0313] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S311), and, in
response, refers to the contents of the table registered in advance
to select an application (external application 231 (Application 1)
in this example) to be utilized among the available applications.
The application selecting unit 122 then stores information about
the utilized application as a table, thereby registering the
external application 231 (Application 1) as a utilized application.
The communication processing unit 121 is then requested to transmit
the received operation instruction to the external application 231
(S312, S313).
[0314] The processes of subsequent steps S314 through S317 are
almost identical to the processes of steps S112 through S116
described with reference to FIG. 9, and a description thereof will
be omitted.
[0315] In the processes described above, an external application
transmits an application availability notice to the application
management server 30 when this external application is activated
while the power of the MFP 10 is on. Alternatively, the application
management server 30 may periodically checks on the MFPs 10 and
external servers 20 provided with applications on the network 1
after the power-on of the application management server 30, thereby
checking whether applications are available. Based on the results
of the check, the application management server 30 may update an
application management table stored in the application information
storing unit 302.
[0316] With reference to FIG. 28, a description will be given of a
second example of the communication sequence between the MFP 10,
the external applications provided in the external servers 20, and
the application management server 30 at the time of the power-on or
operation instruction of the MFP 10. For the sake of convenience of
explanation, the external applications include only the two
external applications 231 and 232.
[0317] FIG. 28 is a drawing showing a second example of the
communication sequence between the MFP 10, the external
applications, and the application management server 30 at the time
of power-on or operation instruction of the MFP 10.
[0318] The application selecting unit 122 of the MFP 10 needs to
inquire of the application management server 30 about available
applications at the time of power-on. To this end, the application
selecting unit 122 transmits a search request (available
application search request) to the application management server 30
by use of the communication processing unit 121 (S321, S322).
[0319] Upon receiving the available application search request from
the MFP 10 via the communication processing unit 301, the control
unit 303 of the application management server 30 refers to the
application management table of the application information storing
unit 302. In this case, no available external applications have yet
been registered. The control unit 303 thus transmits a notice
indicative of the nonexistence of available external applications
to the corresponding MFP 10 as a response (search result response)
to the received available application search request (S323).
[0320] Upon receiving the search result response from the
application management server 30 via the communication processing
unit 121, the application selecting unit 122 of the MFP 10 finds
that there is no available external application based on the search
result response. Thus, no registration of an available external
application is performed (S324).
[0321] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S325). Since
no available application is registered, an error response is
transmitted to the control unit 124 as a response to the received
operation instruction.
[0322] Upon receiving the error response, the control unit 124
displays an error screen on the operation unit 107 shown in FIG. 3,
thereby notifying the user that the function corresponding to the
operation instruction entered through the operation unit 107 is not
available.
[0323] In this seventh example of control, the application
selecting unit 122 of the MIT 10 may perform any one of the
processes described with reference to FIG. 13 through FIG. 16
(i.e., the processes for determining available applications).
[0324] When the processes described in FIG. 13 and FIG. 14 are to
be performed, the search result response supplied from the
application management server 30 is received through the
communication processing unit 121 for registration of available
external applications. After this, a user may enter a request to
display an application selecting screen through key operations on
the operation unit 107. In response to this, a request to acquire
information indicative of available application types (type
information) is transmitted to the application selecting unit
122.
[0325] When the processes described in FIG. 15 are to be performed,
the search result response supplied from the application management
server 30 is received through the communication processing unit 121
for registration of available external applications. After this, an
application selecting screen, which is one of Pattern 1 through
Pattern 4 shown in FIG. 15-(b) through (e), respectively, is
displayed on the operation unit 107 based on the registered
contents.
[0326] When the processes described in FIG. 16 are to be performed,
the search result response supplied from the application management
server 30 is received through the communication processing unit 121
for registration of available external applications. After this, an
application management screen, which is one of Pattern 1 through
Pattern 4 shown in FIG. 16-(b) through (c), respectively, is
displayed on the operation unit 107 based on the registered
contents.
[0327] An application-response-time measuring unit (identical to
the application-response-time measuring unit 125 shown in FIG. 22)
may be provided in each MFP 10. The application management server
30 transmits a request for acquisition of application response time
to each MFP 10, thereby requesting to perform the following
processes. As a response to this request, the application
management server 30 receives an application response time, thereby
obtaining a response performance of each external application.
[0328] The application selecting unit 122 of each MFP 10 receives a
request for acquisition of application response time via the
communication processing unit 121 from the application management
server 30. In response, the application selecting unit 122
transmits some sort of notice to the external applications via the
communication processing unit 121, and measures a time lapse from
the transmission of the notice to the reception of a response to
the notice via the communication processing unit 121. Such time
measurement is performed with respect to each application. The
measured time length obtained for each application (i.e., response
time of each application) is transmitted to the application
management server 30 as a response to the request for the
acquisition of application response time.
[0329] The seventh example of control as described above can bring
about the same advantages as those described in (1) and (2).
[0330] Further, since the application management server 30
registers all the external applications available on the network,
it is possible to perform central control of the external
applications. This makes it easier to attend to a network failure.
Also, a countermeasure can be concentrated on a single
location.
[0331] Further, the MFP 10 transmits an available application
search request to the application management server 30. Upon the
receipt of the search request, the application management server 30
transmits to the corresponding MFP 10 a response to the search
request based on the contents of the application management table
of the application information storing unit 302. The MFP 10 having
received the response to the search request registers the contents
(indicative of available applications) of the response, and selects
an external application to be utilized among the registered
applications. This provision makes it possible to perform a desired
operation by use of an external application even if a server
provided with another application is out of service for some
reason. The situation in which the MFP is out of service can thus
be avoided.
[0332] [Eighth Example of Control]
[0333] With reference to FIG. 29, a description will be given of a
first example of the communication sequence between external
applications provided in the external servers 20 and the MFP 10 at
the time of instructing to register the MFP at the MFP 10.
[0334] FIG. 29 is a drawing showing a first example of the
communication sequence between the MFP 10 and the application
management server 30 at the time of instructing to register the MFP
at the MFP 10.
[0335] In the same manner as the processes described in connection
with FIG. 27, the control unit 303 of the application management
server 30 uses the communication processing unit 301 to receive
application availability notices successively from all the external
applications inclusive of the external application 231 (Application
1) with which communication is possible through the network 1. Each
time the notice is received, the application identification
information and type information attached to the notice are used to
identify the available external application and its type. The name
(application name), type, and IP address of this external
application are stored in the application management table of the
application information storing unit 302 in such a manner that the
stored items are associated with each other, thereby updating the
application management table. All the available external
applications on the network 1 are thus registered. In so doing, the
available external applications are assigned to the MFPs 10
according to predetermined conditions such as those described in
the following (a) through (e). Namely, available external
applications are determined (selected) with respect to each MFP
10.
[0336] (a) Available applications are assigned to the MFPs 10 for
which a formal contract has been signed.
[0337] (b) Available applications are assigned according to the
frequency of use of each external application in order to spread
the load. For example, external applications that are not in use
are preferentially assigned as available applications.
[0338] (c) An external application having the highest response
performance with respect to a given MFP 10 is preferentially
assigned to this MFP 10 as an available application. In this case,
each MFP 10 may be provided with the application-response-time
measuring unit, and the application management server 30 transmits
a request for acquisition of application response time to each MFP
10. In response to the request, the application management server
30 obtains the application response time to learn the response
performance of each external application. The processes of each MFP
10 are the same as those described in connection with the seventh
example of control.
[0339] (d) An available external application is assigned according
to the type of MFP 10 (e.g., high-speed type, low-speed type). For
example, the MFP 10 of a high-speed type may be assigned with the
application having the highest functionality (high-speed
application) as an available application, and the MFP 10 of a
low-speed type may be assigned with the application having the
lowest functionality (low-speed application) as an available
application.
[0340] (e) An available external application is assigned according
to the installed memory of the MFP 10 (which is specific for each
MFP type).
[0341] It should be noted that each external application may be
provided with a plurality of functions.
[0342] The control unit 124 of any MFP 10 receives an MFP
registration instruction through the operation unit 107. In
response, the control unit 124 uses the communication processing
unit 121 to transmit the MFP registration instruction to the
application management server 30 as shown in FIG. 29, for example
(S331, S332).
[0343] The control unit 303 of the application management server 30
receives the MFP registration instruction from the MFP 10 provided
on the network 1 through the communication processing unit 301. In
order to indicate an application that is to be utilized by the MFP
10, the control unit 303 retrieves the type of the application
(e.g., the external application 231) to be utilized by the MFP 10
and the application location information (IP address) indicative of
the location of the application from the application management
table of the application information storing unit 302 (S333),
followed by transmitting the retrieved information to the
corresponding MFP 10 as a response (indication of the application
to be utilized) to the received MFP registration instruction
(S334).
[0344] Upon receiving the indication of the application to be
utilized from the application management server 30 via the
communication processing unit 121, the application selecting unit
122 of the MFP 10 stores the type of the external application to be
utilized together with the IP address indicative of its installed
location based on the indication of the application to be utilized.
Thus, the utilized external application is registered (S335,
S336).
[0345] Thereafter, an operation instruction (not shown) is entered
through the operation unit 107. The application selecting unit 122
receives the operation instruction via the control unit 124, and
uses the communication processing unit 121 to transmit the
operation instruction to the external application (to be utilized)
registered as described above.
[0346] Upon receiving the operation instruction from the MFP 10,
the external application 231 analyzes the contents of the operation
instruction. The external application 231 then transmits a request
for execution of a corresponding operation to the corresponding MFP
10 as a response to the received operation instruction.
[0347] The application selecting unit 122 of the MFP 10 receives
the response to the operation instruction from the external
application 231 via the communication processing unit 121. In
response, the application selecting unit 122 supplies the response
to the operation instruction to the control unit 124.
[0348] The control unit 124 performs the operation requested by the
response to the operation instruction supplied from the application
selecting unit 122.
[0349] The eight example of control can bring about the same
advantages as described in (1) and (2).
[0350] Further, since the application management server 30
registers all the external applications available on the network,
it is possible to perform central control of the external
applications. This makes it easier to attend to a network failure.
Also, a countermeasure can be concentrated on a single
location.
[0351] Further, the application management server 30 selects an
application to be utilized by the MFP 10 among the available
external applications, and transmits information indicative of the
selected application to the MFP 10. Upon receiving the information,
the MFP 10 registers the application to be utilized based on the
received information. This provision makes it possible to perform a
desired operation by use of an external application even if a
server provided with another application is out of service for some
reason. The situation in which the MFP is out of service can thus
be avoided.
[0352] In the second embodiment, if any of the internal
applications 131 and 132 are provided in the controller 11 of the
MFP 10 as shown by dotted lines in FIG. 25, any of the internal
applications may be selected as an application to be utilized, and
an operation instruction may be supplied to the internal
application. In this manner, the processes identical to those
applied to the external applications may also be performed with
respect to the internal applications.
Third Embodiment
[0353] In the following, a description will be given of an image
forming system that is a third embodiment of the electronic
apparatus system according to the present invention. The network
connection of this image forming system is the same as that shown
in FIG. 1.
[0354] In the following, an example of the functional configuration
of the MFP 10 and the external server 20 will first be described
with reference to FIG. 30.
[0355] FIG. 30 is a block diagram showing another example of the
functional configuration of the MFP 10 and the external server 20a
shown in FIG. 1. In FIG. 30, the same elements as those of FIG. 6
and FIG. 8 are referred to by the same numerals, and a description
thereof may partially be omitted.
[0356] The controller 11 of the MFP 10 includes the functions of
the communication processing unit 121, the application selecting
unit 122, the application information storing unit 123, the control
unit 124, and an authentication processing unit 127. These
functions are implemented by the CPU 101 shown in FIG. 2 as it
operates according the programs stored in the ROM 104 to utilize
the SDRAM 103, NVRAM 105, HDD 106, MAC I/F 111, USB I/F 109, and
IEEE1394 I/F 110 selectively according to need.
[0357] The application selecting unit 122 performs the processes
described with reference to FIG. 6, and, in addition, exchanges
authentication information with the authentication processing unit
127.
[0358] The authentication processing unit 127 performs
authentication processes as will later be described.
[0359] The external server 20a includes the functions of the
application communication processing unit 241, the application
control unit 242, the apparatus information storing unit 243, and
an application authentication unit 244. These functions are
implemented by the CPU 201 shown in FIG. 7 as it operates according
the external application 231 stored in the ROM 104 to utilize the
USB I/F 209, IEEE1394 I/F 210, and MAC I/F 211 selectively
according to need.
[0360] The application authentication unit 244 performs the
processes as will later be described.
[0361] The functional configuration of the external server 20b is
substantially identical to that of the external server 20a.
[0362] In the following, a description will be given of a control
process performed in the image forming system according to the
third embodiment of the present invention having the configuration
as described above. Namely, a description will be given of a first
example of the communication sequence between external applications
provided in the external servers 20 and the MIT 10 at the time of
the startup of the MFP with reference to FIG. 31 and FIG. 32. For
the sake of convenience of explanation, the external applications
include only the external applications 231 and 232.
[0363] FIG. 31 is a drawing showing a first example of the
communication sequence between the external applications 231 and
232 and the MFP 10 at the time of startup of the MFP 10 shown in
FIG. 30.
[0364] FIG. 32 is a drawing showing a second example of the
communication sequence between the external applications 231 and
232 and the MFP 10 at the time of startup of the MFP 10 shown in
FIG. 30.
[0365] At the time of the startup (power-on), the application
selecting unit 122 of the MFP 10 issues a startup notice (MFP
startup notice) to the external applications 231 and 232 that are
already registered (as indicated by the information stored in the
application management table of the application information storing
unit 123 shown in FIG. 30). Namely, the communication processing
unit 121 is requested to transmit an MFP startup notice to the
external applications 231 and 232 (Application 1 and Application 2)
successively (S101 through S104). The MFP startup notice directed
to the external applications 231 and 232 includes an application
identification number indicative of the external applications 231
and 232, respectively. This application identification number is
acquired from the application information storing unit 123 shown in
FIG. 30 together with the information about the location of the
site of the application.
[0366] If the external server 20a having the external application
231 is running, the external application 231 receives the MFP
startup notice from the MFP 10, and, in response to the notice,
transmits an application availability notice (Application-1
availability notice) inclusive of its identification information
and specific authentication information (e.g., key information for
use in encryption) to the corresponding MFP 10 (i.e., the MFP 10
that transmitted the MFP startup notice) (S105).
[0367] If the external server 20h having the external application
232 is running, the external application 232 receives the MFP
startup notice from the MFP 10, and, in response to the notice,
transmits an application availability notice (Application-2
availability notice) inclusive of its identification information
and specific authentication information to the MFP 10 (S107).
[0368] The application selecting unit 122 of the MFP 10 receives
via the communication processing unit 121 the application-1
availability notice from the external application 231 and the
application-2 availability notice from the external application
232. The application selecting unit 122 determines whether the
external applications 231 and 232 are available or not based on the
application identification information attached to the notices. In
this example, the external applications 231 and 232 are both
available, so that the application management table of the
application information storing unit 123 is accessed to set the
corresponding "available/unavailable" status therein to
"available". That is, the external applications 231 and 232 are
registered as available applications (S106, S108). In so doing, the
authentication information attached to the received application-1
availability notice and the received application-2 availability
notice is also stored. The authentication information together with
the identification information indicative of the external
applications 231 and 232 are transmitted to the authentication
processing unit 127 (S401, 402).
[0369] Upon receiving the authentication information together with
the identification information indicative of the external
applications 231 and 232 from the application selecting unit 122,
the authentication processing unit 127 stores the authentication
information and the identification information indicative of the
external applications 231 and 232 in such a manner that they are
associated with each other.
[0370] Thereafter, an operation instruction is entered by use of
the operation unit 107. The application selecting unit 122 receives
this operation instruction via the control unit 124 (S411), and, in
response, accesses the contents of the application management table
of the application information storing unit 123 to select
(determine) an application (the external application 231
(Application 1) in this example) to be utilized (used) among the
available applications. The application selecting unit 122 then
stores information about the selected application as a utilized
application management table in the application information storing
unit 123. The external application 231 (Application 1) is thus
registered as a utilized application. A request for acquisition of
the authentication information of the external application 231
together with the identification information indicative of the
external application 231 are then transmitted to the authentication
processing unit 127 (S412).
[0371] Upon receiving the request for acquisition of the
authentication information together with the identification
information indicative of the external application 231 from the
application selecting unit 122, the authentication processing unit
127 sends the authentication information stored in memory
associated with the received identification information to the
application selecting unit 122.
[0372] Upon receiving the authentication information from the
authentication processing unit 127, the application selecting unit
122 uses the communication processing unit 121 to transmit the
received operation instruction with the attached authentication
information (S414, S415).
[0373] Upon receiving the operation instruction from the MFP 10,
the external application 231 performs an authentication process to
check the authenticity of the operation instruction. Namely, the
application authentication unit 244 analyzes the authentication
information attached to the operation instruction to check whether
this authentication information matches the authentication
information that was sent to the MFP 10 from which the operation
instruction has been supplied. If authentication is successful,
i.e., if the authentication information attached to the received
operation instruction matches the authentication information that
was sent to the MFP 10 from which the operation instruction has
been supplied, the contents of the operation instruction are
analyzed (S416). A request (command) for execution of a
corresponding operation is then to the corresponding MFP 10 (i.e.,
the MFP 10 that transmitted the operation instruction) as a
response to the received operation instruction (S417).
[0374] The application selecting unit 122 of the MFP 10 receives
the response (execution request) to the operation instruction from
the external application 231 via the communication processing unit
121. In response, the application selecting unit 122 supplies the
response to the operation instruction to the control unit 124
(S418, S419).
[0375] Upon receiving the response to the operation instruction
from the application selecting unit 122, the control unit 124
performs the operation requested by the response to the operation
instruction (execution request).
[0376] If authentication fails, i.e., if the authentication
information attached to the received operation instruction does not
match the authentication information that was sent to the MFP 10
from which the operation instruction has been supplied, the
external application 231 refuses to analyze the contents of the
operation instruction (S416'). The external application 231 further
transmits a response indicative of operation unavailability to the
corresponding MFP 10 (i.e., the MFP 10 that transmitted the
operation instruction) (S417').
[0377] The application selecting unit 122 of the MFP 10 receives
the response indicative of operation unavailability from the
external application 231 via the communication processing unit 121.
In response, the application selecting unit 122 supplies the
response indicative of operation unavailability to the control unit
124 (S418', S419').
[0378] In the processes described above, the MFP 10 transmits the
MFP startup notices to the external applications at the time of
power-on of the MFP 10. Alternatively, these notices may be
transmitted at other timing (e.g., may be transmitted upon an
instruction entered through a key operation on the operation unit
107). Alternatively, when an external application is activated
while the power of the MFPs 10 is on, this external application may
identify an MFP 10, and may transmit its own application
availability notice to the identified MFP 10.
[0379] The authentication processes performed by the MFP 10 and the
external applications as described above may as well be performed
at the time of other communications in addition to at the time of
communications between the MFP 10 and the external applications 231
and 232 described with reference to FIG. 31 and FIG. 32.
[0380] This third embodiment can bring about the same advantages as
those of the first embodiment. Further, since the MFP 10 and the
external applications perform authentication processes at the time
of communication with each other, security can be enhanced.
[0381] These embodiments have been described with reference to the
configuration in which the present invention is applied to an image
forming system (electronic apparatus system) including the MFPs
(digital multifunction peripherals) equipped with communication
functions and the external apparatuses (external servers and
application management server) connected to each other for
communication. The present invention is not limited to such
configuration, and is equally applicable to an image processing
system in which image processing apparatuses equipped with
communication functions and external apparatuses are connected to
each other for communication, such image processing apparatuses
including image scanning apparatuses like scanners, digital
copiers, printers, facsimile apparatuses, etc. The present
invention is as well application to an electronic apparatus system
in which electronic apparatuses and external servers are connected
to each other for communication, such electronic apparatuses
including network electric household appliances equipped with
communication functions, vending machines, medical devices, power
supply devices, air-conditioning systems, meter systems for
metering gas, water, electricity, and so on, AV appliances,
entertainment apparatuses, etc.
[0382] Further, the program according to the present invention
serves to cause the computer (CPU) of an electronic apparatus such
as an image processing apparatus to implement the functions of the
application registering unit, the application selecting unit, and
the control unit. Such program is performed by the computer to
achieve the advantages as described above.
[0383] This program may be stored in the memory storage such as a
ROM or HDD that is preinstalled in the computer. Alternatively, the
program may be recorded in and provided through a record medium
such as a CD-ROM or a flexible disk or a nonvolatile record medium
(memory) such as an SRAM, an EEPROM, or a memory card. The program
recorded in such memory storage is installed to the computer for
execution by the CPU. Alternatively, the CPU loads the program from
this memory storage for execution, thereby performing the steps as
described above.
[0384] Further, such program may be downloaded from an external
apparatus having a record medium with the program recorded therein,
or may be downloaded from an external apparatus having a memory
unit in which the program is recorded.
[0385] The present invention is applicable to an electronic
apparatus system which includes electronic apparatuses such as
image processing apparatuses (image scanning apparatuses such as
scanners and image forming apparatuses to such as digital copiers,
printers, facsimile apparatuses, digital multifunction peripherals,
etc.), the computers of such electronic apparatuses, and external
applications connected to the electronic apparatuses via
communication links.
[0386] Further, the present invention is not limited to these
embodiments, but various variations and modifications may be made
without departing from the scope of the present invention.
[0387] The present application is based on Japanese priority
application No. 2004-272225 filed on Sep. 17, 2004 and Japanese
priority application No. 2005-253027 filed on Sep. 1, 2005, with
the Japanese Patent Office, the entire contents of which are hereby
incorporated by reference.
* * * * *