Facsimile system

Abstract: A server (405) for use in a client-server facsimile system for controlling the communication of facsimile data, comprising: means for receiving data defining transmission requests from clients; transmission request storage means ( 406,410) for storing the transmission requests in a transmission queue; means (406) for reading data to be transmitted from the clients in accordance with the transmission queue and the transmission request data; transmission data storage means (406,407) for storing data to be transmitted which has been read from a client; and output means (406) for outputting data in dependence upon data from the transmission data storage means (406,407) and destination information.

Description: This invention relates to server-type facsimile system. More particularly, the invention relates to a client-server facsimile system composed of a plurality of client terminals connected to a server device. In conventional facsimile transmission, there is a client-server facsimile system in which a plurality of client terminals are connected to a LAN, and in which a server device having a file storing function is connected to a wide-area network (WAN). According to this facsimile system, the server device is instructed to directly transmit files that are within a client terminal, the server device stores the files temporarily, converts them into facsimile data and then transmits the data. In this case, transmission requests from a plurality of clients are registered in a queue within the server. By virtue of this arrangement, files created at a plurality of personal computers or work stations can be transmitted by facsimile. However, with the conventional client-server facsimile system, the conversion of a file into facsimile data is performed within the server device. Consequently, when it is attempted to temporarily store the file in the server device, a transmission error will be sent back if there is not enough storage capacity for the transmitted file to be stored. Until the request for storage is accepted, the operator must perform the required operation repeatedly. "FICS-2 Facsimile Storage and Conversion Software System (STOC-201)" by Arisawa et al in Review of the Electrical Communication Laboratories, volume 33, number 1, January 1985, pages 21-30 discloses a store and forward type facsimile communication system. Traffic congestion control is provided by giving priority to delivering documents which have already been stored by restricting incoming calls or pages. "Private Facsimile Mail Trend" by Isoyama et al in NTT Review, volume 3, number 2, March 1991, pages 26-33 discloses a facsimile mail system which accumulates messages received from facsimile terminal transmissions and, in response to certain conditions, transmits them to another party. An object of the present invention is to provide a facsimile system in which the foregoing drawbacks of the prior art can be eliminated. According to the present invention, there is provided a method of controlling a server as set out in claim 1. The present invention also provides a server as set out in claim 7. The present invention also provides a computer program product comprising processor-implementable instructions as set out in claim 13. Optional features are set out in claims 2 to 6 and 8 to 12. Embodiments of the present invention will be described in conjunction with the accompanying drawings, in which like reference characters designate the same or similar parts throughout the figures thereof, and in which Fig. 1 is a block diagram showing the configuration of a client-server facsimile system according to an embodiment of the present invention; Fig. 2 is a diagram for describing standby information in the system of Figure 1; and Fig. 3 is a flowchart for describing the operation of the client-server facsimile system according to the system of Figure 1. Fig. 1 is a block diagram showing the configuration of a client-server facsimile system according to an embodiment of the present invention. Shown in Fig. 1 are client terminals 401 ~ 403, which are personal computers or work stations, a LAN 404, a server device 405, a WAN 411, and G4 facsimile terminals 412 - 414. The server device 405 includes a main controller 406 for controlling the overall device. The main controller 406 has a CPU 406a operated by a program, a ROM 406b storing a control program (which includes a program in accordance with the flowchart shown in Fig. 3) executed by the CPU 406a, and a RAM 406c used as a work area for various programs. A file storage unit 407 stores a file read in from a client terminal. This file includes various files, such as a TEXT file and TIFF (tag image file format) file. A file converter 408 converts the TEXT file or TIFF file into an MMR file or converts the MMR file into a TIFF file. A facsimile-file storage unit 409 stores an MMR file in advance. A standby-information storage unit 410 stores information from a client who has requested registration of facsimile data. A WAN [which includes a digital data network, leased line, telephone ISDN (integrated service digital network), etc.] and a LAN, etc., are connected to the server device 405 comprising the main controller 406, file storage unit 407, file converter 408, facsimile-file storage unit 409 and standby-information storage unit 410. Fig. 2 is a diagram for describing the standby information of this embodiment. The standby information is an information group stored in the standby-information storage unit 410. Shown in Fig. 2 are a LAN address 415 of a client who has requested registration of facsimile data, a transmission destination information 416, such as a telephone number which is the destination of a transmission, transmission resolution and the size of a transmitted original, a transmission-file name 417, and a flag 418 indicating whether a file has been stored in the file storage unit 407. The operation of this embodiment will now be described. Fig. 3 is a flowchart for describing the client-server facsimile operation according to this embodiment. As set forth above, the server device 405 executes processing, described below, under the control of the main controller 406 (CPU 406a). In the description that follows, a case in which the client 401 transmits a file to the server device 405 will be taken as an example. First, the client 401 attempting facsimile transmission designates the transmission file. Next, the telephone number of the destination of the transmission is designated. If necessary, various service functions are set, such as transmission resolution and the size of the transmission original. A transmission command is then issued. At step S401 of the flowchart in Fig.3 server device 405 receives a request for facsimile transmission from the client terminal 401. The request is delivered in the form of standby information comprising the LAN address, information indicative of the destination of transmission, transmission-file name and file-storage flag. If a transmission request has been made, then the standby information is stored in the standby-information storage unit 410 at step S402. The program then returns to step S401 and this processing is repeated. Even if transmission requests are made by a plurality of clients simultaneously, the requests are stored as a queue in the standby-information storage unit 410 by virtue of this processing, and therefore an error message is not sent back. If it is determined at step S401 that there has been no transmission request, then the file-storage flag 418 in the standby-information storage unit 410 is referred to at step S403 to determine whether there is data not stored in the file storage unit 407. If there is no unstored data, or if there is no standby information per se, then processing is terminated. In a case where there is data not yet read in, it is determined at step S404 whether the capacity of the file storage unit 407 is enough to read in the transmission file. If the capacity is adequate, then processing set forth below is executed with regard to the standby information data starting from the oldest transmission request or from the highest order of priority. In a case where a response is made to the transmission request from a certain client terminal, the standby information is read in at step S405, the LAN address of the client terminal which has requested the transmission is obtained, and so is name of the file to be transmitted. Then, at step S406, the designated transmission file is read in the file storage unit 407 from the client who has made the request. In a case where the file capacity is found to be inadequate at step S404, the file-storage flag 418 of the standby information is set to indicate non-storage at step S407. The file for which the flag indicative of non-storage has been set does not undergo actual transmission processing until the file capacity becomes adequate. Thereafter, the program returns to step S401 and processing is repeated. In transmission processing, the file in the file storage unit 407 is sequentially converted into a facsimile data format and is transmitted just as instructed by the standby information. As soon as transmission ends, the standby information is removed from the standby-information storage unit 410, the transmission file is removed from the file storage unit 407, and the next file in the file storage unit 407 is processed again in the same manner. In accordance with the embodiment as described above, if there are transmission requests from a plurality of clients simultaneously, a client to which a busy signal is sent back need not make the request again and again a number of times; only a single operation is required to achieve transmission. Thus, less labor is required of the operator on the client side. It should be noted that the standby-information storage unit 410 need not be provided solely in the server but can be provided also on the client side. More specifically, in a case where the client requests the server for a facsimile transmission and is sent back a busy signal, the information 416 indicative of the destination of the transmission is saved in a predetermined directory, and the LAN address 415 and transmission-file name 417 are recorded in the server. Then, at the end of one processing cycle, the server reads in the transmission document and transmission information successively from the clients which have requested transmission. By virtue of the foregoing operation, the load upon the server device is alleviated when facsimile data is transmitted. Embodiments of the present invention may comprise a system constituted by a plurality of devices or an apparatus comprising a single device. Furthermore, it goes without saying that embodiments may comprise a program for a system or apparatus.

Claims: A method of controlling a server in a client-server system to control the communication of facsimile data, comprising: receiving facsimile transmission requests from a plurality of client devices and creating a transmission request queue therefrom; and executing the transmission requests in accordance with the queue; characterised in that the execution of each transmission request comprises: a retrieving step of retrieving a transmission file from the client which sent the transmission request being executed; a transmission file storing step of storing the transmission file retrieved in the retrieving step; and a transmitting step of transmitting the transmission file stored in the transmission file storing step in accordance with destination information. The method according to claim 1, wherein the transmission request received from each client includes the address of the client on a network, and wherein the address is stored by the server and used in the retrieving step to retrieve the transmission file from the client. The method according to claim 1 or claim 2, wherein the transmission request received from each client includes a file name of the transmission file to be transmitted by the client, and wherein the file name is stored by the server and used in the retrieving step to retrieve the transmission file from the client. The method according to any preceding claim, wherein the transmission request received from each client includes the destination information for the facsimile transmission, and wherein the server stores the destination information from the transmission request and, in the transmitting step, transmits the transmission file in accordance with the stored destination information. The method according to any preceding claim, wherein the transmission request received from each client defines the size of the transmission file to be transmitted, and wherein the server stores the size information and, when executing each transmission request, further performs a capacity determining step, preceding the retrieving step, of determining, according to the stored size information, whether there is sufficient storage capacity to store the transmission file and, if insufficient capacity exists, delaying the retrieving step in respect of the transmission file until sufficient capacity does exist. The method of any preceding claim, wherein the transmitting step includes the steps of converting the transmission file into a facsimile data format and transmitting the converted file. A server (405) for use in a client-server system for controlling the communication of facsimile data, comprising: means for receiving data defining facsimile transmission requests from a plurality of client devices and for creating and storing a transmission request queue; and means for executing each transmission request in accordance with its position in the queue; characterised in that the means for executing the transmissions requests comprises: retrieving means (406) for retrieving data to be transmitted from the client which sent the transmission request being executed; transmission data storage means (406, 407) for storing data to be transmitted which has been retrieved from the client; and output means (406) for outputting data in dependence upon data from the transmission data storage means (406, 407) and destination information. The server according to claim 7, wherein: the transmission request received from each client includes the address of the client on a network; the server includes means for storing the address; and the retrieving means is arranged to use the stored address to retrieve the transmission data. The server according to claim 7 or claim 8, wherein: the transmission request received from each client includes transmission data information defining the transmission data to be transmitted by the client; the server includes means for storing the transmission data information; and the retrieving means is arranged to use the stored transmission data information to retrieve the transmission data. The server according to any of claims 7 to 9, wherein: the transmission request received from each client includes the destination information for the facsimile transmission; the server includes means for storing the destination information from each transmission request; and the output means (406) is arranged to transmit the transmission data in accordance with the stored destination information for the transmission request being executed. The server according to any of claims 7 to 10, wherein: the transmission request received from each client defines the quantity of transmission data to be transmitted; the server includes means for storing the quantity information; and the means for executing the transmission requests further comprises means (406) for determining, in accordance with the stored quantity information, whether there is sufficient storage capacity in the transmission data storage means (407) to store the data defined by the request to be transmitted, and, if it is determined that insufficient capacity exists, for delaying the retrieval of the data to be transmitted from the client until sufficient capacity does exist. The server according to any of claims 7 to 11, wherein the output means (406) includes means (408) for converting the data read from a client into facsimile-format data, and for outputting the converted data. A computer program product comprising processor-implementable instructions for causing a programmable processing apparatus to become configured as an apparatus as set out in at least one of claims 7 to 12.

Inventors: IIMOTO KEIICHI, KITAGAWA EIICHIRO, KURODA KEN, IIMOTO, KEIICHI, KITAGAWA, EIICHIRO, KURODA, KEN
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1992
Main classification: H04N1
IPC codes: H04N1, H04Q11