|
Description  |
|
|
FIELD OF THE INVENTION
The present invention relates generally to computerized or data processing
systems, and more particularly, to computerized facsimile routing and
logging systems and methods.
BACKGROUND OF THE INVENTION
Thus use of facsimile (Fax) transmissions is becoming increasingly popular
as companies and business expands to nation-wide and global-wide markets.
The need to communicate with remote locations is an increasingly important
function. In the past, Fax machines have been used to receive Fax
transmissions from a phone line and print the Fax transmission to paper.
The paper was then hand routed by a human user to a proper destination.
In many cases, the Fax could be lost in the recipient's in-basket,
mis-routed, or routed long after the Fax was sent. In some cases, Faxes
need to be logged on paper or in a database for future reference which
takes a considerable amount of man hours. In addition, the Fax document,
which are received in a paper format, cannot be electronically modified or
changed by a recipient in a time efficient and easy manner. In addition,
some Faxes are sent simply to pass information which need not be
permanently fixed on paper. Due to the above complications, a more
automated Fax logging and routing system is needed.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates, in a block diagram, a fax data processing system in
accordance with the present invention; and
FIG. 2 illustrates, in a flowchart, a method for performing computerized
routing and tracking of fax documents in accordance with the present
invention.
It will be appreciated that for simplicity and clarity of illustration,
elements illustrated in the FIGURES have not necessarily been drawn to
scale. For example, the dimensions of some of the elements are exaggerated
relative to other elements for clarity. Further, where considered
appropriate, reference numerals have been repeated among the FIGURES to
indicate corresponding or analogous elements.
DESCRIPTION OF A PREFERRED EMBODIMENT
FIG. 1 illustrates a system used to automate facsimile ("fax") logging and
routing via a computerized system. FIG. 1 illustrates a modem 10. Modem 10
(a serial communication device) has an input, which is illustrated in FIG.
1 as being an analog phone line. In general, any compatible
telecommunication or communication protocol may be used as input to the
modem 10. The modem 10 can be any serial communication device which can
interface data from a phone line, communication line, and/or network to a
computer. The modem 10 can operate an any speed, from 300 baud to 28.8
baud or above. The modem 10 is coupled to a computer 12 via a serial
computer interface. Any serial computer interface which is either parallel
or serial in nature can be used for the serial computer interface in FIG.
1. Typically, the serial computer interface in FIG. 1 contains a plurality
of conductors to either transmit a plurality of data bits, a plurality of
control signals, and/or handshaking signals.
FIG. 1 illustrates a computer 12. Computer 12 is also referred to as a
control computer and is any device which either manipulates, stores,
routes, or transmits data in any manner. In one form, computer 12 can be
any computer which comprises one or more of a display screen, a keyboard,
a mouse, or a CPU/Memory unit. In other forms, the computer 12 may be a
microcontroller, a DSP, a microcontrolling unit, a plurality of
microprocessors, a mainframe, a supercomputer, or any like computer
device. The computer has either external to it or internal to it access to
a memory 13, illustrated in FIG. 1. Memory 13 is comprised of one or more
of disk storage, tape storage, magnetic media, non-volatile memory, EPROM
memory, EEPROM memory, FLASH memory, DRAM memory, SRAM memory, ROM, CD
memory, computer memory, and/or any like memory system or device.
Within memory 13 is a fax receipt software program 14. Program 14 is
generally used to receive data from the serial computer interface and
store it into a pict fax file 15. The pict fax file 15 stores information
received which is received through the modem 10 and processed by program
14. The information in fax file 15 is typically one or more fax
transmissions or fax documents received through modem 10 via the serial
computer interface. In general, the fax receipt software 14 allows the
computer 12 to simulate or "look like" a fax machine to another fax
machine coupled to the modem 10 via the phone line. The fax software 14 is
designed to primarily receive fax transmissions of the CCITT group III
type. Other transmission forms and protocols may also be supported and
recognized by fax receipt software 14. Fax software 14 also recognizes
various fax and coding schemes, such as Huffman encoding, and can be used
to communicate at any standard telecommunication speed such as 14.4 kBaud,
12 kBaud, 9.6 kBaud, 7.2 kBaud, 4.8 kBaud, 2.4 kBaud, etc. Also, the fax
receipt software 14 is coded to dynamically and automatically match the
transmission speed of the data coming in through the modem 10. The fax
receipt software program 14 has the primary purpose of receiving one or
more fax transmissions through the modem 10 and processing that fax
transmission into a data format stored in the pict fax file 15, which can
be subsequently processed.
In some cases, many faxed transmissions will be received in a short period
of time and multiple pict fax files 15 will be created. A control code
portion 22 is typically used to monitor the fax receipt software program
14 to insure data is not lost and that proper management of multiple files
is carried out by the computer 12. The pict fax files 15 may either be
prioritized by time or by a fax transmitting urgency or a like priority.
Once one or more pict fax files 15 have been formed via program 14,
optical character recognition (OCR) 16 is used to process the pict fax
file 15. If more than one fax file 15 exists within memory 13 at one point
in time, control code 22 determines via the priority scheme discussed
above, which pict fax file 15 is processed in which order by the software
16. The primary purpose of the OCR software 16 is to scan one or more pict
fax files 15 and translate those pict fax files 15 from a non-text format
to a text format. The text format, which is stored in text fax file 17,
may be represented in one of many manners such as ASCII, binary, BCD,
and/or the like. In one form, the OCR software 16 converts only a portion
of the pict fax file 15 to text, and in another form the OCR software 16
will convert the entire pict fax file 15 to text fax file 17. In either
case, the OCR software 16 is converting the pict fax file 15 to a text fax
file for at least one primary purpose. This primary purpose is to
determine from the faxed data any information which is needed to
electronically log or track the fax transmission and determines where to
properly route the fax transmission (i.e., a fax destination).
All fax documents contain a cover sheet, or a like sheet, which
communicates to a human user: (1) who the fax is from; and (2) where the
fax is to be sent, along with other optional information. For example, a
fax from Company A may have Company B's name on the cover sheet as a
recipient. A fax sent from a John Smith to a Bill Johnson would have John
Smith as the sender on the cover sheet and a Bill Johnson as the recipient
on the cover sheet. In addition, the cover sheet may contain additional
information such as a legal clause of legal confidentiality, a number of
pages transmitted, phone numbers in which to contact individuals, and like
information. In some cases, a fax document will contain high resolution or
low resolution graphics which may be drawings, figures, company logos, or
the like. Typically, these drawings within the pict fax file are not
converted to text by the OCR software 16, but remain in a graphics format.
The OCR software 16 is typically looking for one or more pieces of
information from this "cover sheet".
Once the OCR software 16 has generated the text fax file 17, the control
code 22 initiates custom pattern recognition via custom pattern
recognition code 18. Custom pattern recognition code 18 contains a
plurality of predetermined or preselected text or text strings. These text
strings contain names which identify a destination of all potential faxes
that can be received by computer 12. For example, if four people can
receive faxes from the link establishes via computer 12 and the office
network, four names will be stored in the custom pattern recognition code
18 to determine which of the four recipients should receive the fax. In
many cases, one person or one destination will be the recipient of a fax,
but in certain circumstances custom pattern recognition code 18 may find
that several or multiple destinations are needed in order to route the fax
properly.
In many cases, when writing a cover sheet for a fax, or when generating a
fax cover sheet via computer, mistakes are made. For example, typos may
occur, names may be misspelled, or the OCR software may not have properly
recognized the name on the coversheet. In this case, the custom pattern
recognition 18 either contains multiple strings which identify a
particular user (i.e., "David Johnson", "Dave", "johnson", "Dave Johnson",
"Johnson", "dave", "david", "jonson", "Jonson" etc.) or employs a pattern
recognition scheme which is used in spelling checkers to identify
misspelled words in a "error minimization" manner. This error scheme which
is used in spelling checker matches misspelled or mis-recognized words to
a list of valid words and determines which valid word in the list of valid
words either closely matches or significantly matches the misspelled word
read from file 17. This error correction system is typically performed by
a numerical weight factor which is generated on a character-by-character
comparison basis between strings stored via code 18 and strings parsed in
the text fax file 17. For example, the parsed string from the text fax
file 17 may be, for example, "Riek". In the database accessed by code 18,
no "Reik" exists. Instead, the code 18 identifies a "Rick", "Rich",
"Rieker", etc. The code 18 uses a numerical error weight scheme to
determine which, if any, string from "Rick", "Rich", "Rieker", etc. is
closest to the parsed term "Reik" from the file 17.
Once the code 18 recognizes one or more destinations of the fax received
via the modem 10, the fax is routed via an electronic mail program 20 to
the proper destination. The proper destination may be identified by the
E-mail program 20 via an address, a user name, a numerical value, a
network identifier, or any like identification means which can be found or
identified via one or more of code 18 and E-mail program 20. E-mail
program 20 can communicate across either telecommunication lines, local
area networks, token passing networks, serial computer interfaces,
parallel computer interfaces, buses, or any like computer communication
means to transmit the faxes received by modem 10 to the destinations
identified by the customer pattern recognition code 18.
In FIG. 1, six possible destinations are illustrated via six computers 26.
In a preferred form, more than one destination is attached to the office
network through the E-mail program 20. It is important to note that any
number N of destinations, computers, or users can be coupled to the e-mail
code 20 via the office network wherein N is a finite positive integer. In
addition, the end user may not always be a computer 26, but a specific
folder, directory, or disk area on a computer, a default computer, a disk
drive/tape drive, a computer screen, a printer, or the like.
The control code 22 will interact with one or more of software 14, software
16, pattern recognition code 18, and E-mail program 20 to coordinate the
execution of these software programs and to record information regarding
the processes performed by computer 12. For example, control code 22 can
prioritize, memory manage, and garage collect pict fax files 15 as they
are processed by software 14 and software 16. In addition, the control
code can communicate with the pattern recognition code 18 and the E-mail
program 20 to store fax receipt times, processing errors, information
regarding destination identification, and time of transmission along the
office network.
Since the control code 22 functions as a coordinator for the entire system
illustrated in computer 12, the control code contains valuable information
as to the receipt and transmission of faxed documents. This information
can be stored in a log file 19 for subsequent reference and future use.
The log file 19 is generated by the control code 22 and has optional or
required (depending upon a system set-up) entries for each fax received by
the modem 10 and processed by the computer 12. It is important to note
that some fax receipts may be intended for logging, while other fax
receipts or transmissions may be indicated as transmissions which should
not be logged in another form. In most cases, the fax transmission will be
logged so that the receipt and routing of the fax can be determined at a
later date. The log file 19 will contain, per fax, information such as the
time and date of receipt by the program 14, the time of the generation of
file 15, any complications or information regarding the OCR software 16,
the time the text fax file 17 was generated, the destinations determined
by the code 18, the time and destinations transmitted by the e-mail
program 20, user information from computers 26 when logging onto or
accessing the computer 12, number of pages received per faxed
transmission, the sender of the fax, phone numbers, addresses, and any
other information which could be regarded as useful to a facsimile user or
sender.
In some cases, either the OCR software 16 will not properly convert the
pict faxed file 15, or the custom pattern recognition 18 will either not
notice a user connected via the office network or not be able to determine
a user within the proper error tolerances (see above). In these cases, the
fax will either be stored by the control code in a default storage
location for access at a subsequent time or will be transmitted via the
office network to a default computer which can be accessed by a system
administrator or secretary who is then responsible for the hand-routing of
the faxes which are not properly handled by computer 12. In another form,
the fax can simply be printed via a hardware printer 24 and routed by hand
via human personnel or stored to a default disk space for access by all
users of computers 26.
The system illustrated in FIG. 1 has several advantages. One advantage is
that the system of FIG. 1 may be used as a scanner. The scanner function
of FIG. 1 is discussed as follows. If a fax machine is coupled to the fax
transmission phone line of FIG. 1, then a user can fax a paper document to
himself/herself. This faxed paper document is received by the modem 10
from the fax machine and processed by computer 12 to a text fax file 17.
This file 17 is subsequently mailed to the user identified on the cover
sheet of the faxed transmission (in this case, the user is the person who
sent the fax in the first place). Therefore, if one were to fax himself a
document through the computer 12, that document would be sent to his/her
computer 26 as a text file and not a paper file or pict file. Therefore,
fax or paper documents can be converted by computer 12 to text computer
formats which can be edited and changed by a user coupled via a computer
26 to the computer 12.
In addition, the man hours required to keep track of one or more fax
machines by secretaries and/or support staff is very time consuming. By
using the system illustrated in FIG. 1, man hours required to log and
route faxes are significantly reduced compared to the prior art. Prior art
fax machines operate by printing out a document received on a phone line
and leaving the document for a human user to pick up and distribute. This
technique is not secure, due to the fact that any user can grab the
printed copy off of the fax machine and mis-route, steal, or illegally
access the material transmitted. The system of FIG. 1 ensures a higher
level of security since only those destined to receive the fax are those
with access to the fax since there exists computer security measures to
prevent others from logging into computers 26 if not authorized to do so.
In addition, the computer 12 may contain a large amount to security
software to avoid viruses and unauthorized access.
When a fax is printed on paper in a prior art fax, the faxes need to be
routed by human personnel and may be lost, routed late, or routed
incorrectly. Once lost, routed incorrectly, or routed late, the fax can
usually not be regained and resubmitted to its final destination. The
system of FIG. 1 prevents this loss by storing the received fax
permanently on disk or a like media and ensures that the fax will be
routed to an end user in a timely, efficient, and secure manner. In
addition, the system of FIG. 1 ensures extensive and proper logging of the
receipt and communication of fax files without extensive human
interaction. In many cases, faxes are transmitted to communicate routine
information between offices and is not required to be on printed paper for
storage. Therefore, the system of FIG. 1 is environmentally sound in that
it saves paper when a fax need not be recorded on paper and only viewed by
a user on a computer screen.
It is important to note that the E-mail program 20 can route one or more of
either the text fax file 17 or the pict fax file 15 depending upon
conditions set within the computer 12. In some cases, a sender will want
the end user coupled to computer 26 not to have textural access to his
file so that the file cannot be changed or edited in a easy manner. In
another form, the sender may wish to have the end user change the
facsimile or edit the facsimile, in which case the text fax file 17 is
communicated by the E-mail program 20. In many cases, the text fax file
can be E-mail transmitted in a much faster time than any pict file. It is
also important to note that the OCR software 16 can use one of any known
techniques to recognize not only computer-generated cover sheets
comprising senders and destinations, but senders and destinations written
by hand on a cover sheet of a facsimile document. In addition, translation
software which translates a document from one language to another (e.g.
Japanese to English or vice versa) may be incorporated into the OCR
software 16 or may be added as a new module in FIG. 1. The OCR software 16
can then recognize and translate facsimile senders, destinations, and text
from foreign languages to English (and vice versa) so that a recipient and
sender need not speak the same language.
It is important to note that the software 14, software 16, pattern
recognition 18, and E-mail program 20 may be "pipelined" in order to
achieve greater throughput of faxes through the computer 12. For example,
a first fax may be in the process of being received by software 14 or may
be in the process of being written to a fax file 15, while a second fax is
being OCR converted via the software 16 to a file 17, while a third fax is
being pattern recognized via code 18, while a fourth fax is being routed
via the E-mail program 20. This technique will also ensure that one slow
software portion within computer 12 does not entirely slow the entire fax
receiving process. For example, if the fax receipt software 14 can receive
faxes faster than the OCR software can convert faxes, then the fax receipt
software 14 can stack or queue pict fax files 15 and not slow receipt of
faxes through the fax transmission phone line in the modem 10. In another
form, if a "bottle-neck" is found wherein one of the software 14, 16, 18,
or 20 is slowing the process, this slower program may be augmented by
adding similar processing capability in parallel to the slow program to
improve throughput (i.e. parallel software processing).
FIG. 2 illustrates a flow chart which describes the operation of the system
illustrated in FIG. 1. In FIG. 2, a step 100 is used to determine if a fax
is incoming from modem 10 into the computer 12. If a fax is not currently
being received by computer 12, the fax receipt software 14 may continue to
poll the modem or watch the serial computer interface line for incoming
information, or the computer 12 can selectively disable and enable the fax
software in a periodic manner to enable time multiplexing of the processor
within computer 12 so that other tasks may be performed other than waiting
for a fax to come in along the serial computer interface. Once a fax
transmission is identified as being received via the serial computer
interface, a step 102 receives the fax via software 14. The fax is then
saved either after receipt or during receipt to a pict fax file 15 in a
step 104. Once the file 15 in FIG. 1 is formed, a step 106 uses the
software 16 to convert the file 15 to a file 17, wherein file 17 is a text
format. Once step 106 is performed, a step 108 checks the text fax file 17
or FIG. 1 to determine if a valid recipient or destination or a plurality
of valid recipients/destinations are found from documentation within the
fax received by the serial computer interface. If the pattern recognition
code 18 cannot find a valid destination via step 108, then the fax is
routed to a default computer, printed to a printer, and/or stored at a
default disk storage area. Optionally, this situation wherein a fax
destination is not properly identified can be flagged to a network
operator, secretary or user so that the unrecognizable destination may be
fixed in the future.
Once a destination is recognized, a step 112 is used to electronically send
the fax to the destination via electronic media or an E-mail protocol. The
information sent may either be the text file 17 and/or the pict file 15.
In some cases, it may suffice to send notice to a user that the fax was
received with information regarding where to go on a network to obtain the
fax information. During the steps 100-112 or after the steps of 100-112
have been executed, a step 114 logs in a log file 19 various information
discussed herein which relates to the fax transmission. After the fax is
processed via step 114, step 100 is re-executed in order to process
another fax received via the serial computer interface.
While the present invention has been illustrated and described with
reference to specific embodiments, further modification and improvements
will occur to those skilled in the art. For example, "code", as used
herein, or "program", as used herein, is any plurality of binary values or
any executable, interpreted or compiled code which can be used by a
computer or execution device to perform a task. This code or program can
be written in any one of several known computer languages. A "computer",
as used herein, can mean any device which stores, processes, routes,
manipulates, or performs like operation on data. A "modem" is any serial
communication device which can be used for taking fax information and
inputting the fax information into a computer. A "text file" or "textural
format", as used herein, may be any data format for efficiently storing
alphanumerical data. In general, a text file or text format is any data
structure which identifies individual alphanumeric characters letters, or
language characters from any faxed transmission. A "string", as used
herein, is one or more alpha numeric or textural characters which are
identified as being part of a group (such as a human name). The computers
26 herein may be any type of computer or destination which may not
necessarily require display devices, user input devices, or memory. For
example, an end-user or destination 26 may simply be a disk drive. It is
to be understood, therefore, that this invention is not limited to the
particular forms illustrated and that it is intended in the appended
claims to cover all modifications that do not depart from the spirit and
scope of this invention.
* * * * *
|
|
| |