In some networks, a facsimile server may be employed as part of a LAN to transmit facsimiles to receiving facsimile machines. In particular, a facsimile originates, for example, in a scanner device and is provided to the facsimile server that proceeds to initiate a facsimile transfer to the receiving facsimile over a telecommunications network by placing a telephone call to the receiving facsimile. Unfortunately, the cost of such a telephone call may be significant if it is a long distance call. This is especially the case if the telephone call is an international call.
The invention can be understood with reference to the following drawings. The components in the drawings are not necessarily to scale. Also, in the drawings, like reference numerals designate corresponding parts throughout the several views.
The facsimile transmission network 100 advantageously facilitates the transmission of facsimile jobs from an origination facsimile device to a destination facsimile device while employing a least cost routing due to the use of a network as will be described.
With reference to
Coupled to the LAN 109, for example, are a number of clients 123, at least one scanner client 126, and a central maintenance client 129. In addition, a LAN facsimile server 133 is coupled to the LAN 109 as well. A central maintenance client 129 is located in one of the network sites 106 as shown.
Each of the clients 123 may be, for example, computer systems, work stations, or other devices typically coupled to a LAN 109 within a given enterprise such as a business, non-profit organization, and the like. Each of the scanner clients 126 may be, for example, a computer system with an accompanying scanner, or a multi-function peripheral that may include various functionality such as scanning, copying, emailing, faxing, and the like as can be appreciated. The central maintenance client 129 may comprise, for example, a computer system or work station that facilitates maintenance of various components within the facsimile transmission network 100 as will be described.
The LAN facsimile server 133 may comprise, for example, a computer system, server, or other like device that facilitates a link between the LAN 109 and a public switched telephone network (PSTN) 136. The LAN facsimile server 133 provides facsimile capability to each of the clients 123, the scanner client 126, and the central maintenance client 129 on the LAN 109. In this respect, the LAN facsimile server 133 receives a facsimile job from any one of the components on the LAN 109 and places an appropriate telephone call to the respective destination facsimile device 139 by way of the public switched telephone network 136. Thus, each LAN facsimile server 133 provides centralized facsimile capability on the LANs 109. In this regard, the PSTN 136 is a telecommunications network that facilitates telecommunications between any two telecommunications devices such as facsimile machines, telephones, or other devices as can be appreciated.
In order to transmit a facsimile job to a respective destination facsimile device 139, any one of the devices coupled to the LAN 109 may place the respective facsimile job into an input folder 143 associated with the LAN facsimile server 133. The input folder 143 may be located within the LAN facsimile server 133 or within some other device located on the LAN 109. In addition, there may be multiple input folders 143 associated with a single LAN facsimile server 133 as will be described. In such a case, each input folder 143 may be associated, for example, with a respective geographical region 103.
In addition, within each of the scanner clients 126 is a facsimile server look-up table (LUT) 146. The facsimile server LUT 146 is employed in the scanner client 126 to route respective facsimile jobs into appropriate input folders 143 of a respective one of the LAN facsimile servers 133 as will be described.
In addition, the central maintenance client 129 includes a browser 156 that is employed to access, for example, each of the facsimile server LUTs 146 in the respective scanner clients 126 in order to alter, add, or delete entries therein as will be described. In this respect, each of the scanner clients 126 include, for example, a web server or other server that facilitates access to the facsimile server LUTs 146 using the browser 156. Each of the LANs 109 is coupled to a data communications network 153. In this respect, the data communications network 153 may be, for example, a wide area network (WAN), the Internet, or other suitable network. In this respect, each of the LANs 109 and the data communications network 153 may be hardwired or wireless, or a combination of hardwire and wireless components, etc.
Next, an explanation of the operation of the facsimile transmission network 100 in transmitting facsimile jobs is described. To begin, a user approaches one of the scanner clients 126 with the intent of scanning in a document, for example, that is to be the subject of a facsimile job that is to be faxed to an appropriate one of the destination facsimile devices 139. Alternatively, one of the clients 123 may include facsimile capability that is manipulated by a particular user to create and send a facsimile job. The device used to create and send a facsimile job is defined herein as a “origination facsimile device”. A facsimile job includes, for example, a document and facsimile telephone number of the destination facsimile device. Alternatively, the facsimile job may also include an address of the origination facsimile device in the facsimile transmission network 100 and other pertinent information.
To provide one specific example, assume that a scanner client 126 is employed by the user in a first one of the geographical regions 103 for this purpose. Also assume, for example, that the desired destination facsimile device 139 is located in a second one of the geographical regions 103. In this respect, were the user to employ a facsimile machine located in the first geographical region 103 to fax the facsimile job to the destination facsimile device 139, then it may entail a long distance telephone call due to the fact that the respective geographical regions 103 may be located a significant distance from each other. Such a long distance telephone call would be made at greater expense due to the long distance. The facsimile transmission network 100 provides a distinct advantage in that it reduces any potential expensive long distance telephone call to a local telephone call within a given geographical region 103 as will be described.
In addition, it may be the case that the document that is the subject of the facsimile job is not scanned using the scanner client 126, but may be stored in an appropriate memory of one of the clients 123 or the scanner client 126, etc. Regardless of how the document that is the subject of the facsimile job is generated or obtained, assume that the user wishes to transmit the document to the appropriate one of the destination facsimile devices 139. In this respect, the user may interface with facsimile control logic in the scanner client 126 that determines which one of the LAN facsimile servers 133 is within the same geographical region 103 as the destination facsimile device 139. Within each geographical region 103, it is assumed that the LAN facsimile server 133 can reach any one of the destination facsimile devices 139 in the region 103 with a local telephone call or a telephone call of lesser expense. Once the respective LAN facsimile server 133 within the geographical region 103 of the desired destination facsimile device 139 is known, then the scanner client 126 places the facsimile job in the respective input folder 143 of the specific LAN facsimile server 133. Once the facsimile job is placed in the respective input folder 143, the corresponding LAN facsimile server 133 proceeds to transmit the document that is the subject of the facsimile job to the destination facsimile device 139 by way of a local or low cost telephone call.
Alternatively, the selected LAN facsimile server 133 may include multiple input folders 109, each input folder being associated with one of the geographical regions 103. In this situation, the scanner client 126 sends the facsimile job to be placed in the respective input folder 133 associated with the LAN facsimile server 133 that is associated with the geographical region 103 within which the scanner client 126 is located.
Thus, by placing a facsimile job into the input folder 143 of a LAN facsimile server 133 that is local to the destination facsimile device 139, a long distance telephone call may be avoided to communicate the facsimile job. Thus, the scanner client 126 includes the functionality that determines which of the LAN facsimile servers 133 is in the same geographical region 103 as the destination facsimile device 139. Thereafter, the facsimile job is sent by way of the various networks including the respective ones of the LANs 109 and the data communications network 153, and is placed in the respective folder 143 of the LAN facsimile server 133 that is in the same geographical region 103 as the destination facsimile device 139.
Thereafter, the LAN facsimile server 133 that receives the facsimile job in its respective input folder 143 proceeds to determine the telephone number or other identification information associated with the destination facsimile device 139 that was associated with the facsimile job. The LAN facsimile server 133 then places a telephone call over the public switched telephone network 136 to the respective destination facsimile device 139. Thereafter, the LAN facsimile server 133 transmits the document that is the subject of the facsimile job to the respective destination facsimile device 139 over the telecommunications network such as the PSTN 136 using standard facsimile protocols as can be appreciated with ordinary skill in the art.
Once the transmission of the document that is the subject of the facsimile job is complete, then the LAN facsimile server 133 writes a facsimile disposition message back to its respective input folder 143. The facsimile disposition message describes the disposition status of the facsimile job. For example, the facsimile job may have been successfully transmitted, or the transmission may have been interrupted and as a consequence, was unsuccessful. The original scanner client 126 or other device that transmitted the facsimile job to the respective LAN facsimile server 133 then checks the input folder 143 to determine whether the facsimile disposition message associated with the facsimile job is stored therein. In this respect, the scanner client 126 is thus informed as to the ultimate disposition of the facsimile job.
Alternatively, the LAN facsimile server 133 may look up information within the facsimile job to obtain a network address of the originating facsimile device such as, for example, one of the scanner clients 126 on the facsimile transmission network 100. In such case, the LAN facsimile server 133 may transmit the facsimile disposition message directly to the respective origination facsimile device to inform the origination facsimile device as to the ultimate disposition of the facsimile job. By receiving the facsimile disposition message, the respective origination facsimile device is informed as to the disposition of the facsimile job.
If the origination facsimile device is one of the scanner clients 126 that may be employed by multiple users, the scanner client 126 may generate and transmit a message that describes the disposition of the facsimile job to a client 123 associated with the particular user. In this respect, the user may enter the network address such as an email address or other network address of their associated client 123 on a respective one of the LANs 109 into the scanner client 126 when they initiate the transmission of the facsimile job. This network address may then be used by the scanner client 126 in transmitting a message to the user's client 123.
With reference to
Stored in the memory 166 and executable by the processor 163 are several software components including, for example, an operating system 173, a scanner client control system 176, and an LUT access agent 179. The scanner client control system 176 includes all control logic that directs the operations of the scanner client 126 such as, for example, those functions and operations that are performed if the scanner client 126 were a multifunction peripheral or other appropriate device. Such functions may comprise, for example, scanning functions, copying functions, printing functions, facsimile functions, and other functionality. In order to implement the facsimile functions, the scanner client control system 176 includes a facsimile control system 183. The facsimile control system 183 is a component of the scanner client control system 176 that controls operations with respect to the generation and transmission of facsimile jobs. In this respect, the facsimile control system 183 includes facsimile routing logic 186 and the facsimile server LUT 146. The LUT access agent 179 provides for the ability to alter, add to, and delete various entries in the facsimile server LUT 146. In this respect, the LUT access agent 179 may comprise, for example, a web server or other such server that facilitates access and manipulation of the facsimile server LUT 146 using the browser 156.
With reference to
The LAN facsimile server 133 includes a number of components such as, for example, an operating system 203 and a LAN facsimile system 206. The LAN facsimile system 206 comprises logic that is executed by the processor 193 to control all the functions of the LAN facsimile server 133 in transmitting facsimiles to respective ones of the destination devices 139 that are obtained from various components on the respective network 109 to which the LAN facsimile server 133 is coupled. The LAN facsimile system 206 includes, for example, facsimile confirmation logic 209, and one or more facsimile folders 143 as was described above. The facsimile confirmation logic 209 facilitates the generation of facsimile disposition messages that report the disposition status of a respective facsimile job. In this respect, the facsimile disposition messages indicate whether a facsimile job was successfully transmitted.
Each of the memories 166 and 196 are defined herein as both volatile and nonvolatile memory and data storage components. Volatile components are those that do not retain data values upon loss of power. Nonvolatile components are those that retain data upon a loss of power. Thus, each of the memories 166 and 196 may comprise, for example, random access memory (RAM), read-only memory (ROM), hard disk drives, floppy disks accessed via an associated floppy disk drive, compact discs accessed via a compact disc drive, magnetic tapes accessed via an appropriate tape drive, and/or other memory components, or a combination of any two or more of these memory components. In addition, the RAM may comprise, for example, static random access memory (SRAM), dynamic random access memory (DRAM), or magnetic random access memory (MRAM) and other such devices. The ROM may comprise, for example, a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other like memory device.
Also, each of the processors 163 and 193 may represent multiple processors and each of the memories 166 and 196 may represent multiple memories that operate in parallel processing circuits, respectively. In such a case, each of the local interfaces 169 and 199 may be an appropriate network that facilitates communication between any two of the multiple processors, between any processor and any of the memories, or between any two of the memories, etc. The processors 163 and 193 may be of electrical, optical, or molecular construction, or of some other construction as can be appreciated by those with ordinary skill in the art.
The operating systems 173 and 203 are executed to control the allocation and usage of hardware resources such as the memory, processing time and peripheral devices in the scanner client 126 and the LAN facsimile server 133. In this manner, the operating systems 173 and 203 serve as the foundation on which applications depend as is generally known by those with ordinary skill in the art.
With reference to
In one embodiment, the portion of the facsimile telephone number of the destination facsimile device 139 that is associated with a respective LAN facsimile server 133 is an area code or country code of the telephone number or a combination or both. In this respect, one or more area or country codes comprise region identifiers that are generally associated with the geographical regions 103 may, in turn, be associated with the respective LAN facsimile server 133. In some situations, the area codes may actually be city codes, etc. In order to look up the respective LAN facsimile server 133 to which a respective facsimile job is to be sent for transmission to the respective destination facsimile device 139, the origination facsimile device such as a scanner client 126 identifies a LAN facsimile server 133 from those listed in the facsimile server LUT 146 based, for example, upon the area code or other portion of the facsimile telephone number associated with the destination facsimile device 139 entered by the user as described above. Alternatively, other identification information associated with the destination facsimile device 139 may be employed as region identifiers that are associated with the respective LAN facsimile servers 133 in the facsimile server LUT 146.
Thus, the facsimile routing logic 186 identifies an area code as the region identifier within the facsimile telephone number associated with the destination facsimile device 139. Alternatively, the facsimile routing logic 186 may identify other information that may be associated with a particular LAN facsimile server 133 in the facsimile server LUT 146 from the facsimile job as entered by a user. It may also be possible that multiple area codes are associated with a single one of the geographical regions 103.
With reference to
Specifically, the browser 156 provides buttons 223 such as an “Add” button and a “Modify” button, and a “Remove” button. In order to add a new entry in the facsimile server LUT 146, the user may click on or otherwise manipulate the Add button. Similarly, to remove or modify an entry already existing in the facsimile server LUT 146, the user may click on or otherwise manipulate the Modify and Remove buttons, respectively. In this respect, the LUT access agent 179 may provide further graphical user interfaces that facilitate the addition, modification, or removal of various entries in the facsimile server LUT 146 in response to the manipulation of the respective buttons 223. In this manner, the maintenance of the various facsimile server LUTs 146 is centralized at a specific point so that as a particular enterprise grows and creates new geographical regions 103 with LANs 109, any new LAN facsimile servers 133 included therein may be included in all of the facsimile server LUTs 146 in the existing facsimile transmission network 100. This is particularly important when each of the local sites 106 within which the LANs 109 are located are maintained and controlled by one entity, such as a large corporation with multiple work sites as can be appreciated. In such case, such a corporation or other entity may assign one individual the responsibility of maintaining the facsimile server LUTs 146 to provide for lowest cost facsimile routing by reducing the number of long distance calls that may be necessary to communicate various facsimiles from location of the major corporation to another.
In an alternative embodiment, a single facsimile server LUT 146 may be stored in a device on the facsimile transmission network 100 (
Referring next to
Beginning with box 253, the user of the scanner client 126 manipulates the facsimile routing logic 186 to input various information associated with the facsimile job such as, for example, a “FROM” designation, the destination designation such as the destination facsimile device facsimile telephone number, and other information relating to the facsimile job. Other information may be, for example, the network address such as an email address of the user for receipt of a facsimile disposition message, the total number of pages, and other information. Such information may be entered into the scanner client 126 (
Alternatively, a user may enter authentication information such as a username and a password for authentication purposes. In such case, access may be granted in order to transmit a facsimile job using an appropriate authentication protocol such as Lightweight Directory Access Protocol (LDAP) that facilitates access to a director server on a respective LAN 109 (
Assuming that all of the information associated with a particular facsimile job is input in box 253, then in box 256 the facsimile routing logic 186 packages the particular facsimile job for transmission to the identified LAN facsimile server 133 over the respective LANs 109 and the data communications network 153 (
Thereafter, in box 259, the facsimile routing logic 186 determines the particular LAN facsimile server 133 to which the facsimile job is to be routed. In particular, the input folder 143 of the respective LAN facsimile server 133 is identified in which the facsimile job is to be stored for transmission over the PSTN 136 as described above. Where multiple input folders 143 are associated with a particular LAN facsimile server 133, then the particular one of the multiple folders is identified. This may be the case, for example, where each of the multiple folders is associated with a particular one of the geographical regions 103. In such case, the facsimile routing logic 186 may place the facsimile job in the folder associated with the geographical region 103 within which the scanner client 126 is located.
Next, in box 263, the facsimile job is sent to the LAN facsimile server 133 for transmission to the respective destination facsimile device 139. Specifically, the facsimile job is stored in the appropriate input folder 143 of the LAN facsimile server 133. Thereafter, in box 266, the facsimile routing logic 186 determines whether a facsimile disposition has been determined with respect to the facsimile job. In this respect, the facsimile routing logic 186 may examine the input folder 143 to determine whether a facsimile disposition message has been generated by the respective LAN facsimile server 133 that describes the disposition status of the facsimile job. Alternatively, the facsimile routing logic 186 may wait to receive a facsimile disposition message from the respective LAN facsimile server 133 by way of the LANs 109 and the data communications network 153, respectively. Assuming that the disposition of the facsimile job is determined in box 266 then the facsimile routing logic jumps to box 273.
If no facsimile disposition is determined in box 266, then the facsimile routing logic 186 proceeds to box 269 in which it is determined whether a time out has occurred such that the facsimile routing logic 186 has waited an inordinate amount of time to determine the disposition of the facsimile. Assuming that the time out has occurred, then the facsimile routing logic 186 assumes that the facsimile job was not successfully transmitted to the destination facsimile device 139 and proceeds to box 273. Otherwise, the facsimile routing logic 186 reverts back to box 266.
Thus, in boxes 266 and 269, after the facsimile job is placed in the respective input folder 143, the facsimile routing logic 186 waits for a predefined period of time to obtain a disposition as to the status of the facsimile job. If no disposition is forthcoming, then it is assumed that an error condition exists and that the facsimile job was not successfully transmitted. Otherwise assuming that a disposition is received then in box 273, a report is transmitted to the sender of the facsimile job as to the disposition status of the facsimile job.
In this respect, the report may be transmitted to the user email address or other network address entered in box 253 to inform the sender of the facsimile job as to the ultimate result. Assuming that the facsimile job was not successfully transmitted, then the sender may take such steps as to resend that facsimile job. Alternatively, the function of box 273 may be omitted where a respective scanner client 126 is not configured to transmit a facsimile disposition message to a separate client 123 associated with a particular user. Thereafter, the facsimile routing logic 186 ends as shown.
Although the facsimile routing logic 186 is embodied in software or code executed by general purpose hardware as discussed above, as an alternative it may also be embodied in dedicated hardware or a combination of software/general purpose hardware and dedicated hardware. If embodied in dedicated hardware, the facsimile routing logic 186 can be implemented as a circuit or state machine that employs any one of or a combination of a number of technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions upon an application of one or more data signals, application specific integrated circuits having appropriate logic gates, programmable gate arrays (PGA), field programmable gate arrays (FPGA), or other components, etc. Such technologies are generally well known by those skilled in the art and, consequently, are not described in detail herein.
The flow chart of
Although the flow chart of
Also, where the facsimile routing logic 186 comprises software or code, it can be embodied in any computer-readable medium for use by or in connection with an instruction execution system such as, for example, a processor in a computer system or other system. In this sense, the logic may comprise, for example, statements including instructions and declarations that can be fetched from the computer-readable medium and executed by the instruction execution system. In the context of the present invention, a “computer-readable medium” can be any medium that can contain, store, or maintain the facsimile routing logic 186 for use by or in connection with the instruction execution system. The computer readable medium can comprise any one of many physical media such as, for example, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor media. More specific examples of a suitable computer-readable medium would include, but are not limited to, magnetic tapes, magnetic floppy diskettes, magnetic hard drives, or compact discs. Also, the computer-readable medium may be a random access memory (RAM) including, for example, static random access memory (SRAM) and dynamic random access memory (DRAM), or magnetic random access memory (MRAM). In addition, the computer-readable medium may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other type of memory device.
Although the invention is shown and described with respect to certain embodiments, it is obvious that equivalents and modifications will occur to others skilled in the art upon the reading and understanding of the specification. The present invention includes all such equivalents and modifications, and is limited only by the scope of the claims.