U.S. patent application number 11/404925 was filed with the patent office on 2006-08-24 for system, computer program product and method for scanning and managing documents.
Invention is credited to Hiroshi Kitada, Akio Kizawa.
Application Number | 20060190622 11/404925 |
Document ID | / |
Family ID | 46204581 |
Filed Date | 2006-08-24 |
United States Patent
Application |
20060190622 |
Kind Code |
A1 |
Kitada; Hiroshi ; et
al. |
August 24, 2006 |
System, computer program product and method for scanning and
managing documents
Abstract
A system, method and computer program product for scanning and
managing documents. The system includes a scanning device, a scan
server connected to the scanning device via a network, and a
directory server connected to the scan server. The system allows a
user of the scanning device to search the directory server for
e-mail addresses, fax numbers, or other destination information
stored at the directory server, and to e-mail, fax, or otherwise
electronically deliver scanned documents from the scanning device.
The scan server transmits the e-mail addresses, fax numbers, or
other destination information to the scanning device from the
directory server. The user of the scanning device can select one or
more destinations (e.g., e-mail addresses or fax numbers) received
from the scan server. The scanning device transmits the scanned
document with the selected destination to the scan server. The scan
server transmits the scanned document to the appropriate server,
such as an e-mail or fax server. The document is routed, for
example by the e-mail or fax server, to the selected
destination.
Inventors: |
Kitada; Hiroshi; (Tuckahoe,
NY) ; Kizawa; Akio; (Ridgewood, NJ) |
Correspondence
Address: |
OBLON, SPIVAK, MCCLELLAND, MAIER & NEUSTADT, P.C.
1940 DUKE STREET
ALEXANDRIA
VA
22314
US
|
Family ID: |
46204581 |
Appl. No.: |
11/404925 |
Filed: |
April 17, 2006 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10243645 |
Sep 16, 2002 |
|
|
|
11404925 |
Apr 17, 2006 |
|
|
|
60374811 |
Apr 24, 2002 |
|
|
|
Current U.S.
Class: |
709/245 |
Current CPC
Class: |
G06F 8/65 20130101 |
Class at
Publication: |
709/245 |
International
Class: |
G06F 15/16 20060101
G06F015/16 |
Claims
1. (canceled)
2. A method of obtaining directory information from an external
server via network, comprising the steps of: transmitting a
lightweight directory address protocol (LDAP) search query from an
image processing device to a first computer remote from the image
processing device; retrieving, by the first computer, a result of
the LDAP search query; transmitting the result to the image
processing device; displaying the result on a display of the image
processing device; generating, at the image processing device,
image data corresponding to an image processing operation at the
image processing device; and transmitting the image data from the
image processing device to at least one destination selected from
the result of the LDAP search query.
3. The method of claim 2, wherein: the at least one destination
comprises at least one of an email address and a facsimile
number.
4. The method of claim 2, further comprising the steps of:
receiving the image data and information indicating the at least
one destination at a second computer remote from the image
processing device; and routing, at the second computer, the image
data to the at least one destination.
5. The method of claim 2, further comprising the step of:
transmitting user identification information from the image
processing device to the first computer.
6. The method of claim 5, further comprising the step of
retrieving, by the first computer, menu information corresponding
to the user identification information.
7. The method of claim 6, further comprising the step of:
displaying the menu information on the display of the image
processing device.
8. The method of claim 7, wherein: the menu information indicates
that an LDAP search query function is available to the user of the
image processing device.
9. A system for obtaining directory information from an external
server via network, comprising: a first network interface, at an
image processing device, configured to transmit an LDAP search
query from the image processing device to a first computer remote
from the image processing device; a first module, at the first
computer, configured to retrieve a result of the LDAP search query;
a second network interface, at the first computer, configured to
transmit the result to the image processing device; a display, at
the image processing device, configured to display the result of
the LDAP search query; a processor, at the image processing device,
configured to generate image data corresponding to an image
processing operation at the image processing device; and the first
network interface configured to transmit the image data from the
image processing device to at least one destination selected from
the result of the LDAP search query.
10. The system of claim 9, wherein: the at least one destination
comprises at least one of an email address and a facsimile
number.
11. The system of claim 9, further comprising: a third network
interface, at a second computer remote from the image processing
device, configured to receive the image data and information
indicating the at least one destination from the image processing
device; and a second module, at the second computer, configured to
route the image data to the at least one destination.
12. The system of claim 9, wherein: the first network interface is
configured to transmit user identification information from the
image processing device to a second computer remote from the image
processing device.
13. The system of claim 12, further comprising: a first module, at
the second computer, configured to retrieve menu information
corresponding to the user identification information.
14. The system of claim 13, wherein: the display, at the image
processing device, is configured to display the menu information on
the display screen of the image processing device.
15. The system of claim 14, wherein: the menu information indicates
that an LDAP search query function is available to a user of the
image processing device.
16. A system for obtaining directory information from an external
server via network, comprising: means for transmitting a
lightweight directory address protocol (LDAP) search query from an
image processing device to a first computer remote from the image
processing device; means for retrieving, at the first computer, a
result of the LDAP search query; means for transmitting the result
to the image processing device; means for displaying the result on
a display of the image processing device; means for generating, at
the image processing device, image data corresponding to an image
processing operation at the image processing device; and means for
transmitting the image data from the image processing device to at
least one destination selected from the result of the LDAP search
query.
17. A method of obtaining network authentication of a user of an
image processing device, comprising the steps of: transmitting user
authentication information from the image processing device to a
network domain controller remote from the image processing device;
verifying the user authentication information at the network domain
controller; receiving, at the image processing device, the result
of the verification step performed at the network domain
controller; and controlling at least on function of the image
processing device based on the result of the verifying step.
18. A system of obtaining network authentication of a user of an
image processing device, comprising: a first network interface, at
the image processing device, configured to transmit user
authentication information from the image processing device to a
network domain controller remote from the image processing device;
a first module, at the network domain controller, configured to
verify the received user authentication information; the first
network interface, at the image processing device, configured to
receive the result of the verification performed at the network
domain controller; and a second module, at the image processing
device, configured to control at least on function of the image
processing device based on the result of the verification.
19. A system of obtaining network authentication of a user of an
image processing device, comprising: means for transmitting user
authentication information from the image processing device to a
network domain controller remote from the image processing device;
means for verifying the user authentication information at the
network domain controller; means for receiving, at the image
processing device, the result of means for verifying performed at
the network domain controller; and means for controlling at least
on function of the image processing device based on the received
result of the means for verifying.
20. A method of obtaining network authentication of a user of an
image processing device, comprising the steps of: transmitting user
authentication information from the image processing device to a
first computer remote from the image processing device;
transmitting the user authentication information from the first
computer to a second computer remote from the image processing
device and the first computer; verifying the user authentication
information at the second computer; receiving a result of the
verifying step at the first computer; and controlling access of the
information processing apparatus to one of a plurality of
applications based on the result of the verification step, the
plurality of applications connected to the first computer via a
network.
21. A computer program product comprising a computer storage medium
storing a computer program code mechanism which when executed by a
computer, causes the computer to perform a method of obtaining
network authentication of a user of an image processing device,
comprising the steps of: transmitting user authentication
information from the image processing device to a first computer
remote from the image processing device; transmitting the user
authentication information from the first computer to a second
computer remote from the image processing device and the first
computer; verifying the user authentication information at the
second computer; receiving a result of the verifying step at the
first computer; and controlling access of the information
processing apparatus to one of a plurality of applications based on
the result of the verification step, the plurality of applications
connected to the first computer via a network.
22. A system for obtaining network authentication of a user of an
image processing device, comprising the steps of: means for
transmitting user authentication information from the image
processing device to a first computer remote from the image
processing device; means for transmitting the user authentication
information from the first computer to a second computer remote
from the image processing device and the first computer; means for
verifying the user authentication information at the second
computer; means for receiving a result of the verifying step at the
first computer; and means for controlling access of the information
processing apparatus to one of a plurality of applications based on
the result of the verification step, the plurality of applications
connected to the first computer via a network.
23. A system for obtaining network authentication of a user of an
image processing device, comprising: a first network interface, at
the image processing device configured to tramsmit user
authentication information from the image processing device to a
first computer remote from the image processing device; a second
network interface configured to transmit the user authentication
information from the first computer to a second computer remote
from the image processing device and the first computer; a module,
at the secomd computer, configures to verify the user
authentication information at the second computer; the second
network interface configured to receive a result of the verifying
step at the first computer; and a module, at the first computer,
configured to control access of the information processing
apparatus to one of a plurality of applications based on the result
of the verification step, the plurality of applications connected
to the first computervia a network.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application is a divisional application of Ser.
No. 10/243,645 filed Sep. 16, 2002 and claims priority to
Provisional Application Ser. No. 60/374,811 filed Apr. 24, 2002,
the entire contents of which are hereby incorporated by
reference.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention is directed to methods, computer-based
systems and computer program products for scanning and managing
documents or files. More particularly, the present invention allows
a user of a scanning device to scan a document and to e-mail and/or
fax the scanned document from the scanning device.
[0004] 2. Discussion of the Background
[0005] A system for e-mailing a scanned document from a scanning
device is already known. For example, Ricoh's ScanRouter.TM.
Professional enables the capture and delivery of scanned documents
from a scanning device. In this conventional system, the scanning
device stores a directory of addresses used to deliver the scanned
document. The ScanRouter Professional system suits the needs of
small and medium companies well.
[0006] This conventional system, however, has a number of
drawbacks, especially if considered within the environment of a
relatively large company. Because the address directory is stored
at the scanning device, the size of the address directory is
limited and may not hold all of the addresses of a large company's
directory. For example, the address book stored on Ricoh's
ScanRouter Professional is limited to a maximum of 200 addresses.
In addition, because the address directory is stored at the
scanning device, each address book needs to be updated each time
the company's global address book needs to be updated. For example,
the company's global address book is updated each time an employee
leaves the company, each time the company hires a new employee, and
each time an employee changes position or department within the
company. It is estimated that in large companies, the global
address book can be updated 1000 times each week. The task of
updating each local address book stored at the scanning devices
creates a burden on the administrator of the system, and severely
increases the traffic over the company's network. This increase in
traffic, caused by the need to keep the local address books stored
at the scanning devices synchronized with the company's global
address book, can slow down the company's entire network. As
another drawback, the information contained within the company's
directory is exposed to security breaches because the local address
books stored in the scanning devices are more easily accessible
than the global directory, which can be stored in a secured
area.
SUMMARY OF THE INVENTION
[0007] The present inventors have determined that there is a need
for a system that allows a user to scan a document and to e-mail,
fax or otherwise electronically deliver the scanned document from
the scanning device, and that can conveniently and efficiently
update the addresses, numbers, and other information available to
the user. The present invention provides such a system. One object
of the present invention is to provide a method, a system and a
computer program product that allows a user of a scanning device to
scan a document and to e-mail, fax, or otherwise electronically
deliver the scanned document from the scanning device, wherein the
document is routed to an e-mail address, a fax number, or a
destination stored in a directory. In a preferred embodiment, the
system includes a global directory server connected to a scan
server. The global directory server stores the e-mail addresses,
fax numbers, destinations and/or other information accessed by the
user. In another embodiment, the system includes the global
directory server and, in addition, a local directory that stores
the e-mail addresses, fax numbers, destinations and/or other
information in the scanning device.
[0008] The scan server passes the information stored at the global
directory server to the scanning device. The user of the scanning
device, who desires to search the global directory for e-mail
addresses, fax number and/or destinations, can search the global
directory by sending queries to the scan server, which passes the
queries to the directory server. Alternatively, the user can
directly e-mail or fax a document without accessing the global
directory server by accessing the local directory or by otherwise
entering the addresses and/or fax numbers using the scanning device
user interface.
[0009] Advantageously, the system can be used within a company so
that various employees can access the company's global directory,
or address book. The global directory need not be copied or stored
at the scanning device. Instead, the global directory can be
maintained in a secure, central location. The company's
administrator can update the global directory without having to
update any local directory or address book that would be stored at
the scanning devices.
[0010] The user of the scanning device may be prompted to log in
the system by entering a login name and a password. This login
information is transmitted to the scan server. The scan server can
confirm a domain authentication with a domain controller to ensure
that the user is authorized to use the system. The scan server can
also process directory authentication to control access by the user
of the global directory. The scan server also processes documents
or files received from the scanning device. The scan server routes
the documents to the appropriate server, for example an e-mail
server or a fax server, as requested by the user of the scanning
device.
[0011] Advantageously, several scanning devices can be connected
via a network to the scan server. Within a company, several
scanning devices may be located on different floors, in different
rooms, or different buildings. The employees can access the global
directory from any of the scanning devices. The administrator can
maintain one global directory so that the information available to
the users throughout the company is efficiently updated.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] A more complete appreciation of the invention and many of
the attendant advantages thereof will be readily obtained as the
same becomes better understood by reference to the following
detailed description when considered in connection with the
accompanying drawings, wherein:
[0013] FIG. 1 is a block diagram showing an overall system
configuration according to one embodiment of the present
invention;
[0014] FIG. 2 is a block diagram illustrating a browser for the
scanning device according to one embodiment of the present
invention;
[0015] FIGS. 3-6 show examples of menus displayed on a display
screen of the scanning device according to one embodiment of the
present invention;
[0016] FIGS. 7-8 show flowcharts of a method of managing documents
from the scanning device according to one embodiment of the present
invention;
[0017] FIG. 9 is a block diagram illustrating a scanning device
according to one embodiment of the present invention;
[0018] FIG. 10 is a schematic representation of a scanning device
according to one embodiment of the present invention;
[0019] FIG. 11 is a block diagram illustrating a scan server
according to one embodiment of the present invention;
[0020] FIG. 12 is a schematic representation of a scan server
according to one embodiment of the present invention; and
[0021] FIGS. 13-14 show flowcharts of a method of managing
documents with an MFD browser according to one embodiment of the
present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0022] Referring now to the drawings, wherein like reference
numerals designate identical or corresponding parts throughout the
several views, FIG. 1 is a block diagram of a system 5 for scanning
and managing documents according to the present invention, and in
particular to allow a user to scan a document and to e-mail and/or
fax the scanned document from the scanning device. The system 5
includes a network 100 that interconnects at least one, but
preferably a plurality of scanning devices 10-30, to a scan server
40. The network 100 preferably uses TCP/IP (Transmission Control
Protocol/Internet Protocol) because this protocol is commonly used,
but other protocols are possible. The network 100 can be a local
area network, a wide area network, any type of network such as an
intranet, an extranet, or a combination thereof. Other
communications links for the network 100, such as a virtual private
network, or a wireless link, may be used as well.
[0023] As shown in FIG. 1, the scanning devices 10-30 can be
multi-function devices, or "MFDs." An MFD can incorporate a
scanner, a copy machine, a printer, a fax machine, a digital
camera, other office devices, and combinations thereof. Various
types of MFDs are commonly known in the art and share common
features and hardware with the MFDs of the present invention. In
one embodiment of the present invention, the MFD is a portable
device, such as a digital camera, connectable to the Internet via
wireless connection. Such an MFD combines digital imaging with the
power of the Internet so that one can capture still, sounds or
videos and share them wirelessly from various locations. The MFD
can create web pages, send and receive e-mails with attachments,
edit images, FTP files, surf the Internet, and send a fax. In
another embodiment, the MFD is a multiple scanner, photocopier and
printer, as described in more detail below with corresponding FIGS.
9-10.
[0024] As shown in FIG. 1, the scan server 40 is connected to a
directory server 60 (or "address book server" or "global
directory"). The directory server 60 can include information such
as the names, addresses, e-mail addresses, phone/fax numbers, other
types of destination information, and authorization of individuals.
Other information can be included in the directory server 60.
Examples of directory servers 60 compatible with the present
invention include, but are not limited to, Lotus Notes.TM.,
Microsoft Exchange.TM., and LDAP ("Lightweight Directory-Access
Protocol") enabled directory servers. LDAP is a software protocol
that enables a user to locate organizations, individuals, files,
devices in a network. The scan server 40 can also be connected to a
network domain controller 50 that controls authentication of the
MFD users.
[0025] The system 5 provides access to the users of the MFDs 10-30
of the information stored at the directory server 60 via the scan
server 40. Accordingly, a user can scan a document at the MFD 20,
and request a search of the company's global directory stored at
the directory server 60. The scan server 40 can pass the search
request to the directory server 60 and can receive the search
results (e.g., e-mail addresses and/or fax numbers) from the
directory server 60. The scan server 40 can pass the search results
to the MFD 20, which can temporarily store and display them. In a
preferred embodiment, the stored search results are erased
automatically from the MFD after the job of the MFD is completed,
or after a time period (e.g., two minutes) that can be set by the
administrator of the system. The user can select e-mail addresses
and fax numbers from the displayed search results and request that
the scanned document be e-mailed and/or faxed to the selected
addresses. Alternatively, the user can enter the addresses and
numbers, or can select addresses and numbers from a local directory
stored in the scanning devices 10-30. The local directory can be
updated automatically or periodically after the directory server 60
is updated.
[0026] The scan server 40 receives the scanned document and the
selected addresses/numbers from the MFD 20 and routes the scanned
document to the appropriate server. For example, if the user
requests the scanned document to be e-mailed, the, scan server 40
routes the scanned document to an e-mail server 70. If the user
requests the scanned document to be faxed, the scan server 40
routes the scanned document to a fax server 80. The scan server 40
can also route the scanned document to other applications 90, which
may, for example, convert a document from one format (e.g., TIFF,
"Tag Image File Format") to another (PDF, "Portable Document
Format").
[0027] In the present embodiment, the Scan Server 40 can be
configured to act as an intermediate agent between a plurality of
computerized services (e.g., provided by devices 50, 60, 70, 80,
and 90) so that the MFDs can perform a plurality of functions in a
same scanning job. The Scan Server 40 can be configured to display
the plurality of services based on a request from the browser 25.
The MFD can display screens prompting the entry of a plurality of
parameters such as e-mail addresses, fax numbers and billing codes,
on the LCD panel based on the communication between the Browser 25
and the Scan Server 40. An MFD can then transmit the scanned
document to a plurality of servers, e.g., servers 70, 80, and
90.
[0028] In a preferred embodiment, the MFDs 10-30 and the scan
server 40 exchange data using the protocol HTTP ("Hypertext
Transfer Protocol") or HTTPS (HTTP over Secure Socket Layer) over
the network 100. Other protocols can equivalently be used with the
present invention. Preferably, the MFDs 10-30 and the scan server
40 exchange data using the format XML ("Extensible Markup
Language"). Other formats, such as HTML, can equivalently be used
with the present invention. In a preferred embodiment, the e-mail
server 70 is incorporated into the scan server 40. E-mail server 70
can include, but is not limited to, Lotus Notes.TM. e-mail server,
Microsoft Exchange.TM. e-mail server, and SMTP ("Simple Mail
Transfer Protocol") e-mail servers. In a preferred embodiment, the
fax server 80 is the Captaris' RightFax.TM. server.
[0029] The system 5 provides three levels of user authentication.
At a first authentication level, no user authentication is
performed. Under this first level, any user can use the MFDs 10-30
to scan, copy, print, access the global directory server 60 to
e-mail and fax documents.
[0030] At the second authentication level, the user is domain
authenticated by the network domain controller 50. Under this
second level, the user enters login information, such as a login
name and a password. This login information is transmitted to the
scan server 40 via the network 100. The scan server 40 passes the
login information to the network domain controller that confirms
(or not) the user's domain authentication. The confirmation is
passed to the MFDs 10-30 via the scan server 40. If the user is
domain authenticated, the user can use the MFD and its functions.
In one embodiment, the system 5 can be configured so that certain
functions of the MFDs 10-30, such as copying and direct e-mail and
faxing (without access to the global directory server 60), be
accessible to a user who is not domain authenticated. Under this
embodiment, however, the system bars the non-authenticated user
from using other functions, including access to the global
directory server 60. Under another embodiment, the system bars the
non-authenticated user from using all functions provided by the
MFDs 10-30.
[0031] At the third authentication level, the user is authenticated
by the directory server 60. Under this third level, the directory
server 60 can control what portions (if any) of the directory, to
which the user can have access. For example, employees of a
particular division of the company (e.g., human resources, legal,
etc . . . ) may have access to the portion of the directory that
corresponds to that division only. More sensitive information can
thus be protected and accessible only by certain individuals within
the company. This third authentication level can be, but need not
be, in addition to the second level.
[0032] Under the second and third authentication levels, the system
can create a user profile such that upon authentication, the system
provides access to the user only for certain functions that
correspond to the user profile. Under this embodiment, different
authenticated users can have different user profiles and thus have
access to different functions. The administrator can control the
user profiles.
[0033] In a preferred embodiment, the scan server 40 can include an
MFD profiler that sets a specific profile for a specific MFD. The
administrator of the system 5 can create, change and maintain
profiles via a profile screen on the scan server 40. The profile
can include an identification for the MFD, such as a serial number,
and various parameters (computer network-name, machine location,
etc . . . ) used to configure the exchange of information between
the scan server 40 and the MFDs 10-30. These parameters can relate
to the authentication scheme used for each MFD, to the data
format/protocols used, to the e-mail server 70, to the fax server
80, and/or to the directory server 60. The profile can also include
the time period during which the search results from the directory
server are stored at the scanning device before being erased.
[0034] FIG. 2 illustrates an MFD 20's browser 25 configured to
exchange information between the MFD 20 and the scan server 40
according to one embodiment of the present invention. FIG. 2 shows
the software components in the MFD-server system; the hardware
elements are not shown in FIG. 2. The scan server 40 shown in FIG.
2 includes an authentication device 260 configured to perform the
authentication functions discussed above. The scan server 40 also
includes an administration device 265 which allows the system
administrator to administer the system 5. For example, the
administrator of the system can access the profiler 280 via the
administration device 265 to set user profiles and/or MFD profiles
for the MFDs 10-30 connected to the scan server 40. The scan server
40 also includes a directory gateway 270 configured to communicate
with the directory server 60. The scan server 40 also includes a
document router 275 configured to route the documents received from
the MFDs to the appropriate server 70, 80 or 90.
[0035] As shown in FIG. 2, the MFD 20 includes an engine control
service (ECS) 200 that controls for example the scanning engine of
the MFD 20. A memory control service (MCS) 205 controls access to
the memory of the MFD 20. An operation panel control service (OCS)
215 generates displays for the LCD of the MFD 20. For example, the
OCS 215 can generate conventional menus for MFD operation and the
menus shown in FIGS. 3-6. A system control service (SCS) 225
controls and/or monitors sensors within the MFD 20. For example,
the SCS 225 controls the touch screen sensors, paper jam sensors
and scanning operation sensors. Accordingly, the SCS 225 can manage
the status of the MFD 20 based on the information from the sensors.
A network control service (NCS) 220 controls communication between
the browser 25 and the scan server 40. Optionally, a secure socket
layer (SSL) 230 provides added security for communications between
the NCS 220 and the browser 25. A command input service (CIS) 240
processes input information, e.g., from the LCD touch panel and a
key pad of the MFD 20. A user of the MFD can enter information and
commands using the LCD touch panel and the key pad. The CIS 240 can
process such information and commands entered by a user (e.g.,
forwarded to the CIS 240 by the SCS 225). The CIS 240 can generate
a command (e.g., a display command) based on such processing and
transmit the command to other components of the MFD (e.g., to the
OCS 215 to display a graphic on the LCD). The CIS 240 can also
exchange information and commands with the NCS 220 for processing
with the browser 25 in connection with the server 40.
[0036] Conventional MFDs include ECSs, MCSs, OCSs, NCSs, SCSs, and
CISs which are firmware for implementing and controlling each
hardware component of the MFD. In the present invention, however,
the NCS 220 is configured to communicate with the browser 25. For
instance, the NCS 220 has additional capabilities for communicating
using the HTTP protocol. The NCS 220 is also configured to
communicate with the server 40 so that the NCS 220 exchanges data
between the browser 25 and the server 40. For example, The NCS 220
can transmit to the server 40 a request for an e-mail address and
can receive from the server 40 a selected e-mail address, or the
NCS 220 can transmit to the server 40 login information and can
receive a user authentication confirmation from the server 40 (and
from the directory server 60) during an authentication process.
[0037] The browser 25 includes an HTTP command processor 235 that
communicates with the network control service (NCS) 220 of the MFD
20. For example, a request for an e-mail address entered by the
user via the MFD key pad, or a request for displaying information
on the LCD, such as FIGS. 3-6, can be passed from the NCS 220 to
the browser 25 by the HTTP command processor 235. The HTTP command
processor 235 can exchange data in the HTML format with the
browser's HTML parser 250, and can exchange data in the XML format
with the XML parser 255. The parsers 250 and 255 can check the data
from the HTTP command processor 235 for syntax, process the data
for HTTP command processor 235. The present invention can include
conventional parsers, which are usually part of a compiler.
[0038] The HTTP command processor 235 can be provided with a
program code for implementing a specific application, such as, user
authentication processing which can be implemented with the
directory service of the server 40. The HTTP command processor 235
can process information based on definitions of the specific
application. For example, the HTTP command processor 235 can
process information provided by the user, such as User Name or
Password, and generate an HTTP request based on this processing for
the server 40. The HTTP command processor 235 can transmit this
HTTP request to the NCS 220 to be transmitted to the server 40.
[0039] The HTTP command processor 235 can also process information
received from the server 40 (via the NCS 220). For example, the
HTTP command processor 235 can receive an HTTP response generated
by the server 40 which includes parameters for operating the MFD.
The parameters can be stored for example in the profiler 280 of the
server 40. The parameters can include a specific user ID as a
result of the user authentication processing. Furthermore, the
parameters can include scanning job parameters for the specific
user ID, such as default size of papers, scanning resolution
setting, condition of the document feeder, or department code for
billing the scanning operation. The HTTP command processor 235 can
process this information and generate commands to control the MFD
in accordance with the information, e.g., can request the MFD to
scan according to the scanning job parameters for the specific user
ID. As another example, the HTTP command processor 235 can generate
a graphic drawing command for the LCD panel. The HTTP command
processor 235 can transmit the commands to the appropriate MFD
firmware (e.g., the OCS 215) so as to be executed. For example, the
OCS 215 can receive the graphic drawing command and execute it by
displaying a graphic (e.g., FIGS. 3-6) on the LCD panel.
[0040] FIGS. 13 and 14 show flowcharts of a method of managing
documents with the MFD browser 25. More specifically, FIG. 13 shows
an HTTP request handling process flow, and FIG. 14 shows an HTTP
response handling process flow. Turning to FIG. 13, at step 3100 a
user operates the MFD panel, for example selects a button on the
MFD's LCD touch panel. At step 3150, the SCS 225 detects the panel
operation, e.g. a location of the selected button, and transmits
panel operation information to the CIS 240. At step 3200, the CIS
240 interprets the panel operation information and generates a
command. This interpretation and generating of the command can be
based on a definition described in a predetermined program code.
The predetermined program code can be provided for implementing the
specific application executed by the MFD 20 and the server 40. For
example, the specific application may include a user authentication
using the directory server 60, or scan-to-eMail services with MFD
20 and server 40. The predetermined program code for the specific
application can be provided in an IC Card, or other medium, for the
MFD.
[0041] At step 3250, the CIS 240 transmits the command to the HTTP
command processor 235. At step 3300, the HTTP command processor 235
generates an HTTP requests composed in the HTML language and/or the
XML language based on the command. At step 3350, the HTTP command
processor 235 transmits the HTTP request to the NCS 220.
Optionally, the HTTP command processor 235 transmits the HTTP
request to the SSL 230, i.e., the HTTP request is sent using HTTPS
protocol or Secure Sockets Layer over HTTP, based on the definition
of the predetermined program code for the specific application. At
step 3400, the NCS 220 transmits the HTTP request to the scan
server 40.
[0042] Turning to FIG. 14, at step 4100, the scan server 40
generates an HTTP response based on the processing defined by the
specific application. For example, the authentication result
information can be included in the HTTP response. The scan server
40 transmits this HTTP response to the NCS 220. In this process,
the HTTP response can be sent using HTTPS protocol depending on the
definition of the predetermined program code for the specific
application. At step 4150, the NCS 220 receives the HTTP response
and transmits it to the HTTP command processor 235. At step 4200,
the HTTP command processor 235 receives the HTTP response from the
NCS 220 and transmits it to the HTML parser 250 and/or to the XML
parser 255. At step 4300, the XML parser 255 processes the HTTP
response for the HTTP command processor 235. At step 4400, the HTML
parser processes the HTTP response for the HTTP command processor
235. At step 4450 the HTTP command processor 235 generates a
command based on this processing, and transmits the command to one
of the MFD components, e.g. the CIS 240. At step 4500, the CIS 240
generates a display request based on the command and transmits the
display request to the OCS 215. At step 4600, the OCS 215 processes
the display request. For example, at step 4700, the LCD panel
displays graphics, such as the menus shown in FIGS. 3-6.
[0043] In a preferred embodiment, the MFDs 10-30 provide
interactive menus based on information inputted by the operator of
the MFD, so as to allow the operator to conveniently take advantage
of the services provided by the system 5. Examples of menus
displayed on touch sensitive LCDs of the MFDs are shown in FIGS.
3-6. FIG. 3 illustrates a screen 300 that introduces the present
invention to the user and that provides touch sensitive buttons,
for example buttons 305-325. Upon touching the button 305, the MFD
displays a screen (not shown) that prompts the user to enter login
information. Upon touching the button 310, the MFD displays a
screen (such as screen 500 shown in FIG. 5) that permits the user
to fax a document. Upon touching the button 315, the MFD displays a
screen (such as screen 600 shown in FIG. 6) that permits the user
to e-mail a document. Upon touching the button 320, the MFD
displays a screen (such as screen 400 shown in FIG. 4) that prompts
the user to enter settings for scanning a document. Upon touching
the button 325, the MFD displays a screen (not shown) that displays
a job log, which keeps track of previous jobs performed by the MFD.
The screen 300 includes a system display portion 330 that displays
system messages, such as the time and date, error messages, or
instructions to the user. The screen 300 includes a main display
portion 335 that displays information for the user. Screen 300 can
include other display portions. The screen 300 also includes
buttons 340, which permit the user to scroll through the display
shown in the main display portion 335.
[0044] FIG. 4 illustrates a screen 400 with touch sensitive buttons
used to set the scanning parameters. The screen 400 can include a
default button 405 to request the MFD to scan the document using
its default scanning parameters (e.g., 200 dpi). The default
parameters may be displayed below the button 405. Upon being
touched, a "Fine Scan" button 410 requests the MFD to scan the
document using finer scanning parameters (e.g., 300 dpi) than the
default parameters. These finer scanning parameters can be
displayed below the button 410. Upon being touched, a "Super Scan"
button 415 requests the MFD to scan the document using even finer
scanning parameters (e.g., 400 dpi) than the fine parameters. These
even finer scanning parameters can be displayed below the button
415.
[0045] The screen 400 can also include a "Create PDF" button 430
that requests, upon touching, the document to be converted to the
PDF format. This conversion can take place at the MFD, at the scan
server, or at a conversion server 90. In a preferred embodiment,
the document is sent from the MFD to the scan server 40 in the TIFF
format along with the request to convert to the PDF format. The
scan server 40 then sends the document to the conversion server 90
to be converted into the PDF format.
[0046] If the user does not want the document converted to the PDF
format, the user can touch a "Keep TIFF" button 435 to request that
the document be kept in the TIFF format. The user can also touch
the "Scan Size" button 440 to set the size of the document to be
scanned. The user can also select a single sided scan by touching
the "Single-Sided" button 420, or select a double sided scan by
touching the "Double-Sided" button 425. Once the user has selected
all the scanning parameters, the user can save his selection by
touching the "Save" button 445. Alternatively, if the user wants to
return to the previous screen 300, the user can touch the "Exit"
button 450.
[0047] FIGS. 5 and 6 illustrate screens 500 and 600 used to request
faxing and e-mailing documents, respectively. Text (e.g., for a fax
note or an e-mail message) can be entered via the LCD using a touch
sensitive keyboard (not shown) displayed on the LCD. Upon touching
the "Enter Fax Note" button 510, the MFD displays a screen that
permits the user to enter a fax note along with the document to be
faxed. The fax note can be displayed in portion 555 of the screen
500. Upon touching the "Enter Fax Number" button 520, the MFD
displays a screen that permits the user to enter the fax number to
which the document is to be faxed. The user can manually enter the
fax number if the user already knows the fax number. If the user
does not already know the fax number, the user can look it up in
the global directory, as discussed next.
[0048] Upon touching the "Lookup Fax Number" button 525, the MFD
displays a screen that prompts the user to enter the name(s) of a
recipient(s), or the name of a group of recipients (e.g.,
"marketing," "management," "security," "legal department," "blue
division," "softball team," etc . . . ). Search criteria other than
names can be used. The MFD can send the names or other search
criteria to the scan server 40, which passes the information to the
directory server 60. The directory server 60 then returns the fax
numbers for the names entered by the user to the scan server 40,
which passes the fax numbers to the MFD for displaying on the
portion 545 of the screen 500. The display portions 550 can be
touched to select (e.g. by highlighting) fax numbers listed on the
portion 545. The selected fax numbers can be removed from the
recipients' list by touching the "Remove Fax Number" button 530.
Upon touching the "OK" button 535, the information received via the
screen 500 can be processed by the MFD to fax the document. The
user can return to the previous screen by touching the "Cancel"
button 540. Upon touching the "Billing Code" button 515, the MFD
displays a bill management screen (not shown) to receive billing
information. For example, the bill management screen would prompt
the user to enter department code representing the department to
which the user belongs. With this feature, the MFD can either
locally process the billing information and/or transmit the billing
information to the server 40 for centralized processing.
[0049] Turning to the screen 600 illustrated in FIG. 6, upon
touching the "Enter Subject" button 605, the MFD displays a screen
that permits the user to enter a subject for the document to be
e-mailed. This subject can be displayed in portion 655 of the
screen 600. Upon touching the "Enter E-mail Message" button 610,
the MFD displays a screen that permits the user to enter an e-mail
message along with the document to be e-mailed. Upon touching the
"Document Name" button 615, the MFD displays a screen that permits
the user to enter the name of the document to be e-mailed. Upon
touching the "Enter E-mail Address" button 620, the MFD displays a
screen that permits the user to enter the e-mail address to which
the document is to be e-mailed. The user can manually enter the
e-mail address if the user already knows the e-mail address. If the
user does not already know the e-mail address, the user can look it
up in the global directory, as discussed next.
[0050] Upon touching the "Lookup E-mail Address" button 625, the
MFD displays a screen that prompts the user to enter the name(s) of
a recipient(s), or the name of a group of recipients (e.g.,
"marketing," "management," "security," "legal department," "blue
division," "softball team," etc . . . ). Search criteria other than
names can be used. The MFD can send the names or other search
criteria to the scan server 40, which passes the information to the
directory server 60. The directory server 60 then returns the
e-mail addresses for the names entered by the user to the scan
server 40, which passes the e-mail addresses to the MFD for
displaying on the portion 645 of the screen 600. The display
portions 650 can be touched to select (e.g. by highlighting) the
e-mail addresses listed on the portion 645. The selected e-mail
addresses can be removed from the recipients' list by touching the
"Remove E-mail Address" button 630. Upon touching the "OK" button
635, the information received via the screen 600 can be processed
by the MFD to e-mail the document. The user can return to the
previous screen by touching the "Cancel" button 640.
[0051] FIG. 7 illustrates a method of authenticating a user
according to one embodiment of the present invention as performed
by the MFDs 10-30. At step 705, the MFD inquires whether a command
is received from the user to display a login screen. For example,
the user can press a login button on the LCD of the MFD 20, such as
the "Log in" button 305 of screen 300 shown in FIG. 3. At step 710,
the MFD 20 displays the login screen if the command is received. At
step 715, the MFD 20 inquires whether the login information is
received from the user. For example, the MFD 20 can inquire whether
the user entered a user name, a password, and a domain name. Once
the login information is received, the MFD 20 sends the login
information to the scan server 40 at step 720. The scan server 40
then sends the login information to the network domain controller
50. The domain controller 50 verifies the login information and
sends a authentication confirmation to the scan server 40 that
forwards the confirmation to the MFD 20. At step 725, the MFD 20
inquires whether the authentication confirmation is received from
the scan server 40. Once the MFD 20 receives the user
authentication, the MFD 20 downloads from the scan server 40 a
user's home page for display at step 730. For example, the user's
home page can include a start page, such as the one shown in FIG.
3. The user home page can be a kind of default (portal) page
initially displayed after authentication. In the present invention,
this home page can be generated based on the result of user
authentication. In a preferred embodiment, the user home page can
be provided with a "Help" button, and/or a "About" button to
provide instruction and information for using system of the present
invention.
[0052] FIG. 8 illustrates a method of accessing the global
directory according to one embodiment of the present invention, as
performed by the MFD 20. The global directory can be accessed for
the purpose of performing a search, such as a fax number search
and/or an e-mail address search. At step 805, the MFD 20 inquires
whether the user requested to search the global directory. For
example, the user can request such a search by pressing the lookup
buttons 525 and 625 shown in FIGS. 5-6. If such a search is
requested, the MFD 20 displays a screen at step 810 that prompts
the user to enter a search string, for example a string of at least
two characters. At step 815, the MFD 20 inquires whether the search
string has been entered. Once the search string is entered, the MFD
20 sends the search string to the scan server 40 at step 820. The
scan server 40 forwards the search string to the directory server
60, which performs the search and transmits the search results to
the scan server 40. The scan server 40 transmits the search results
to the MFD 20. At step 825, the MFD 20 inquires whether the search
results have been received from the scan server 40. Once the search
results are received, the MFD displays the search results on its
display at step 830.
[0053] FIGS. 9-10 illustrate an example of the MFD 20, which
includes a central processing unit (CPU) 931, and various elements
connected to the CPU 931 by an internal bus 932. The CPU 931
services multiple tasks while monitoring the state of the MFD 20.
The elements connected to the CPU 931 include a read only memory
(ROM) 933, a random access memory (RAM) 934, a hard disk drive
(HDD) 935, a floppy disk drive (FDD) 936 capable of receiving a
floppy disk 907, a communication interface (I/F) 938, and a modem
unit 939. In addition, a control panel 937, a scanner unit 940, a
printer unit 941, and an image processing device 942 can be
connected to the CPU 931 by the bus 932. Both the I/F 938 and the
modem unit 939 are connected to a communication network 100.
[0054] In a preferred embodiment, the program code instructions for
the MED 20 are stored on the HDD 935 via an IC card. Alternatively,
the program code instructions can be stored on the floppy 907 so
that the program code instructions may be read by the FDD 936,
transferred to the RAM 934 and executed by the CPU 931 to carry out
the instructions. These instructions can be the instructions to
perform the MFD's functions described above. These instructions
permit the MFD 20 to interact with the scan server 40 via browser
25 and to control the control panel 937 and the image processing
units of the MFD 20.
[0055] During a start-up of the MFD 20, the program code
instructions may be read by the CPU 931, transferred to the RAM and
executed by the CPU 931. Alternatively, the program code
instructions may be loaded to the ROM 933. It is therefore
understood that in the present invention any of the floppy disk
907, the HHD 935, the RAM 934, and the ROM 933 correspond to a
computer readable storage medium capable of storing program code
instructions. Other devices and medium that can store the
instructions according to the present invention include for example
magnetic disks, optical disks including DVDs, magneto-optical disks
such as MOS, and semiconductor memory cards such as PC cards.
[0056] In a preferred embodiment, the control panel 937 includes a
display screen that displays information allowing the user of the
MFD 20 to interact with the scan server 40, such as screens 300-600
shown in FIGS. 3-6. The display screen can be a liquid crystal
display (LCD), a plasma display device, or a cathode ray tube (CRT)
display. The display screen does not have to be integral with, or
embedded in, the control panel 937, but may simply be coupled to
the control panel 937 by either a wire or a wireless connection.
The control panel 937 may include keys for inputting information or
requesting various operations. Alternatively, the control panel 937
and the display screen may be operated by a keyboard, a mouse, a
remote control, touching the display screen, voice recognition, or
eye-movement tracking, or a combination thereof.
[0057] FIG. 11 is a block diagram of the server 40 according to one
embodiment of the present invention. FIG. 12 is a schematic
representation of the server 40. The server 40 includes a central
processing unit 1000 (CPU) that communicates with a number of other
devices by way of a system bus 1500. The server 40 includes a
random access memory (RAM) 1900 that hosts temporary storage values
used in implementing the authenticating, routing and managing
functions of scanned documents.
[0058] A conventional personal computer or computer workstation
with sufficient memory and processing capability may also be
configured to operate as the server 40. The central processing unit
1000 is configured for high volume data transmission and performing
a significant number of mathematical calculations in processing
communications and database searches. A Pentium III microprocessor
such as the 1 GHz Pentium III manufactured by Intel Inc. may be
used for the CPU 1000. This processor employs a 32 bit
architecture. Other suitable processors include the Motorola 500
MHZ PowerPC G4 processor and the Advanced Micro Devices 1 GHz AMD
Athlon processor. Multiple processors or workstations may be used
as well.
[0059] The ROM 1800 is preferably included in a semiconductor form
although other read-only memory forms including optical media may
be used to host application software and temporary results. The ROM
1800 connects to the system bus 1500 for use by the CPU 1000. The
ROM 1800 includes computer readable instructions that, when
executed by the CPU 1000, can perform the different authenticating,
routing and managing functions discussed above associated with
scanned documents from MFDs. An input controller 1600 connects to
the system bus 1500 and provides an interface with various
peripheral equipment including a keyboard 1610 and a pointing
device such as a mouse 1620. The input controller 1600 may include
different ports such as a mouse port in the form of a PS2 port or,
for example, a universal serial bus (USB) port. The keyboard port
for the input controller 1600 is in the form of a mini-DIN port
although other connectors may be used as well. The input controller
1600 provides sound card connections so that external jacks on the
sound card allow users to attach microphone speakers or an external
sound source. The input controller 1600 also may include serial
ports or parallel ports as well.
[0060] A disk controller 1400 is in the form of an IDE controller
and connects via ribbon cables to a floppy disk drive 1410 as well
as a hard disk drive 1420, a CD-ROM drive 1180 and a compact disk
1190 (FIG. 12). In addition, a PCI expansion slot is provided on
the disk controller 1400 or mother board that hosts the CPU 1000.
An enhanced graphic port expansion slot is provided and provides
3-D graphics with fast access to the main memory. The hard disk
1210 may also include a CD-ROM that may be readable as well as
writeable. A communication controller 1300 provides a connection,
for example by way of an Ethernet connection to a network 1310,
which can be the network 100. In one embodiment, the network 1310
and the connection to the communication controller 1300 are made by
way of a plurality of connections including a cable-modem
connection, DSL connection, dial-up modem connection, and the like
that connect to the communication controller 1300.
[0061] An input/output controller 1200 also provides connections to
external components such as an external hard disk 1210, printer
1220, which can be MFD 10-30, for example, by way of an RS 232
port, a SCSI bus, an Ethernet or other network connection which
supports any desired network protocol such as, but not limited to
TCP/IP, IPX, IPX/SPX, or NetBEUI.
[0062] A display controller 1100 interconnects the system bus 1500
to a display device, such as a cathode ray tube (CRT) 1110. While a
CRT is shown, a variety of other display devices may be used such
as an LCD (liquid crystal display), or plasma display device.
[0063] The mechanisms and processes set forth in the present
description may be implemented using a conventional general purpose
microprocessor(s) programmed according to the teachings of the
present specification, as will be appreciated to those skilled in
the relevant arts. Appropriate software coding can readily be
prepared by skilled programmers based on the teachings of the
present disclosure, as will also be apparent to those skilled in
the software art. In particular, the computer program product for
authenticating, routing, and managing scanned documents according
to the present invention can be written in a number of computer
languages including but not limited to C, C++, Fortran, and Basic,
as would be recognized by those of ordinary skill in the art. The
invention may also be implemented by the preparation of
applications specific integrated circuits or by interconnecting an
appropriate network of conventional component circuits, as will be
readily apparent to those skilled in the art.
[0064] The present invention thus also includes a computer-based
product that may be hosted on a storage medium and include
instructions that can be used to program a computer to perform a
process in accordance with the present invention. This storage
medium can include, but is not limited to, any type of disk
including floppy disks, optical disks, CD-ROM, magneto-optical
disks, ROMs, RAMs, EPROMs, EEPROMs, Flash Memory, Magnetic or
Optical Cards, or any type of media suitable for storing electronic
instructions.
Additional Benefits of the Present Invention
[0065] Historically, business applications ran on mainframe
computers and users executed operations from terminal consoles by
sending instruction commands. The terminal consoles had no
computing power other than displaying data stream sent back from
the mainframe computer which ran the actual applications. As LAN
(Local Area Network) became available, the Client--Server
architecture was introduced. The Client--Server architecture
utilizes the client computer's computing power to offload the
mainframe from data processing, resulting in a more efficient use
of the resources and better overall performance.
[0066] This Client--Server technology introduced a new problem
however. Each and every computer needs to have an application
program installed. Installation, upgrades, and maintenance of the
client require a lot of time and human support, which increase
operation cost. Furthermore, this approach lacks flexibility
because different versions of applications on clients and servers
should match.
[0067] Once introduced, the web browser was well accepted because
it not only solves the problems of the Client--Server architecture
but it also allows the user to maintain the benefit of distributed
computing. Specifically, the web browser eliminates the need for
client program maintenance because application programs and/or web
pages are loaded dynamically at the time the user accesses the web
site. The user is guaranteed to have the latest version of the
application. As a result, PCs no longer need to have application
programs installed manually and permanently on their local hard
disk. This is why a PC web browser is sometimes referred to as
"thin client technology;" it is free from relatively bulky
application programs.
[0068] The MFD browser according to the present invention provides
the benefits of thin client technology to MFDs because it does not
need manual program installation or program upgrade but still
guarantees the latest and/or only appropriate software loaded from
a web site. Once the MFD browser is incorporated in the MFD, a web
server can identify the capabilities of the MFD and dynamically
download and run selected programs by a pre-defined criterion. This
criterion can be used to run different types of applications by
department, e.g. a patent search and a print program for a legal
department or a resume management application for a human resources
department. Advantageously, the present invention can be
incorporated into the system and method for managing documents
disclosed in co-pending Ser. No. 09/795,438, the entire content of
which is hereby incorporated by reference.
[0069] Obviously, numerous additional modifications and variations
of the present invention are possible in light of the above
teachings. It is therefore to be understood that within the scope
of the appended claims the present invention may be practiced
otherwise than as specifically described herein.
* * * * *