KR20030044762A - Method and system of network image scanning - Google Patents
Method and system of network image scanning Download PDFInfo
- Publication number
- KR20030044762A KR20030044762A KR1020020031343A KR20020031343A KR20030044762A KR 20030044762 A KR20030044762 A KR 20030044762A KR 1020020031343 A KR1020020031343 A KR 1020020031343A KR 20020031343 A KR20020031343 A KR 20020031343A KR 20030044762 A KR20030044762 A KR 20030044762A
- Authority
- KR
- South Korea
- Prior art keywords
- server
- twain
- user
- scanning
- network
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00236—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
- H04N1/00241—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer using an image reading device as a local input to a computer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00236—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00962—Input arrangements for operating instructions or parameters, e.g. updating internal software
- H04N1/00973—Input arrangements for operating instructions or parameters, e.g. updating internal software from a remote device, e.g. receiving via the internet instructions input to a computer terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0008—Connection or combination of a still picture apparatus with another apparatus
- H04N2201/0015—Control of image communication with the connected apparatus, e.g. signalling capability
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Facsimiles In General (AREA)
Abstract
Description
본 발명은 이미지 스캐닝 방법 및 시스템에 관한 것으로, 더욱 상세하게는, 스캐너가 네트워크의 한 컴퓨터에 연결되어 있고 동일한 네트워크의 다른 컴퓨터가 이 장치를 액세스하는 방식으로, 컴퓨터 네트워크내에서의 이미지 스캐닝 방법에 관한 것이다.The present invention relates to an image scanning method and system, and more particularly, to a method for scanning an image within a computer network in such a way that a scanner is connected to one computer on a network and another computer on the same network accesses the device. It is about.
본 발명에서 말하는 스캐너란, 컴퓨터에 연결될 수 있으며 컴퓨터로 그래픽 이미지를 전달할 수 있는 스캐너 자체나 디지탈 카메라 또는 어느 다른 장치이다.The scanner as used in the present invention is a scanner itself, a digital camera, or any other device that can be connected to a computer and can transfer graphical images to the computer.
스캐너에는 대체로 그래픽 이미지를 재생할 수 있도록 하는 소프트웨어가 공급된다. 그러나, 공지 버전의 이러한 소프트웨어는, 하나의 컴퓨터와 그에 연결된스캐너만을 구동한다. 따라서, 네트워크 스캐닝을 가능하게 하기위해서는 여러 사용자들에 의한 스캐너 공유를 위한 설비를 갖는 컴퓨터 네트워크를 별도로 제공해야 할 필요가 있다.Scanners are usually supplied with software that enables the playback of graphical images. However, the known version of this software runs only one computer and a scanner connected thereto. Therefore, in order to enable network scanning, it is necessary to separately provide a computer network having facilities for sharing a scanner by multiple users.
스캐너나 또는 예를 들어 팩스기와 같은 다른 이미지 또는 문서 독취장치(특히 WIPO 공개 WO97/45999호 공보의 "System of Sequence Arrangement and Transmission of Facsimile Document"[1] 또는 US 공개 96/13790호 공보의 "Facsimile System for Internet"[2])의 공유와 관련된 공지의 기술적 해결책은 하술하는 문제점들을 극복하는데에 실질적으로 기여하는 바가 없다.Scanners or other image or document reading devices, such as, for example, fax machines (especially "System of Sequence Arrangement and Transmission of Facsimile Document" in WIPO Publication WO97 / 45999 [1] or "Facsimile in Publication 96/13790). The known technical solutions related to the sharing of System for Internet "[2]) do not contribute substantially to overcoming the problems described below.
네트워크 스캐닝의 근본적인 문제점 중 하나는, 스캐너 설비의 평가와 스캐닝 파라미터의 설정 및 실질적인 스캐닝을 포함하는 복잡한 다단계적 스캐닝 과정에 있다. 스캐너를 사용하는 독점적인 권한 없이는, 한 사용자가 다른 사용자에 의해 개시된 스캐닝 과정에 영향을 미치는 명령어를 입력하였을 때, 이해관계 당사자들간의 충돌은 불가피하다. 따라서, 스캐닝 전구간에 대하여 특정 사용자가 스캐너를 독점적으로 액세스할 수 있게 하는 "스캐너 점유"의 과제를 해결할 필요가 있다. 상기 참조문헌 [2]에서는, 팩스기 상태가 "대기중"인지 "통화중"인지를 결정하기 위한 회로를 포함하는 팩시밀리 인터페이스를 설명하며, 점유의 과제를 단지 부분적으로만 해결하고 있다. 스캐닝 파라미터의 원격조정에 대하여, 참조문헌 [1]은 팩스기로 전송될 예정인 페이지 수가 많은 문서에 있어서 페이지들 순서에 관한 원격제어만을 언급하고 있다.One of the fundamental problems of network scanning is the complex, multi-step scanning process that involves evaluating the scanner facility, setting the scanning parameters and real scanning. Without the exclusive right to use the scanner, conflicts between interested parties are inevitable when one user enters commands that affect the scanning process initiated by another user. Thus, there is a need to solve the problem of "scanner occupancy" which allows a particular user exclusive access to the scanner for the scanning world. In Reference [2], a facsimile interface including a circuit for determining whether a fax machine state is "waiting" or "calling" is described, and the problem of occupancy is only partially solved. Regarding the remote control of scanning parameters, reference [1] refers only to remote control regarding the order of pages in documents with a large number of pages to be sent to a fax machine.
네트워크 스캐닝의 또 다른 문제점은, 무분별하게 긴 시구간동안 스캐너가다른 사용자에 의해 통화중인(사용중인) 경우에 발생한다. 다른 사용자는 이 기간동안 상기 스캐너를 액세스할 수 없다. 따라서, 첫번째 사용자와 스캐너간의 연결을 중단시켜서 이 스캐너를 액세스하는 기회(권한)를 다른 사용자에게 양도하는 도구를 설계할 필요가 있다.Another problem with network scanning occurs when the scanner is busy (in use) by another user for an indiscriminately long time period. No other user can access the scanner during this period. Therefore, there is a need to design a tool that breaks the connection between the first user and the scanner and transfers the opportunity to access this scanner to another user.
또 다른 문제점은, 네트워크 스캐닝에서 스캐너가 사용자로부터 간격을 두고 떨어져서 위치될 수 있다는 사실과 관련이 있다. 사용자 컴퓨터로부터 스캐닝 과정을 제어시에, 사용자는 스캐너에 문서를 삽입하고 상기 컴퓨터로부터 스캐닝을 개시한 다음 스캔된 문서를 집어올리는 필요성에 직면할 수 있다. 이들 동작은 컴퓨터로부터 스캐너까지 적어도 사용자의 중복적 이동을 의미한다. 따라서, 사용자에게 스캐닝 파라미터 설정 권한을 제공하고, 사용자에게 사용자 컴퓨터로부터 스캐너 점유의 권한을 제공하며, 또 스캐너에 근접하여 위치된 서버로부터 스캐닝 과정의 차기 초기화를 갖는 과제가 있다.Another problem is related to the fact that in network scanning, the scanner can be positioned at a distance from the user. In controlling the scanning process from the user's computer, the user may face the need to insert a document into the scanner, initiate scanning from the computer and then pick up the scanned document. These operations mean at least redundant movement of the user from the computer to the scanner. Therefore, there is a problem of providing the user with the authority to set the scanning parameters, giving the user the authority to occupy the scanner from the user's computer, and having the next initialization of the scanning process from a server located in proximity to the scanner.
네트워크 스캐닝의 또 다른 문제점으로는, 대체로 스캐너가 사용자의 시계의 범위를 넘어서 위치되어 있다는 사실과 관련이 있다. 그러므로, 사용자는 스캐너 상태를 평가함에 있어서 어려움에 처한다. 이와 반대로, 전용 스캐너의 경우에는 스캐너의 상태가 가시적으로나 또는 동작 시스템이나 로컬 소프트웨어에 의해 제공된 메시지에 의해 확인될 수 있다. 따라서, 사용자에게 경보를 발하는 문제점이 해결되어야 한다.Another problem with network scanning is usually associated with the fact that the scanner is located beyond the scope of the user's field of view. Therefore, the user has difficulty in assessing the scanner condition. In contrast, in the case of a dedicated scanner, the status of the scanner can be confirmed visually or by a message provided by the operating system or local software. Therefore, the problem of alerting the user should be solved.
본 발명에서 설명한 기술적 해결책은 상술한 문제점들을 극복하는 것을 목표로 하고 있으며, 또한 이미지를 스캐닝하여 네트워크내에서 상기 스캔된 이미지를 사용자 컴퓨터로 전송하는 방법을 개선시키는 것을 목표로 한다. 본 발명은,The technical solution described in the present invention aims to overcome the above-mentioned problems, and also aims to improve a method of scanning an image and transmitting the scanned image to a user computer in a network. The present invention,
표준 명세와 호환할 수 있는 드라이버를 인스톨하라는 요구를 제외하고는 스캐너에 대하여 특별한 요구가 없고;There are no special requirements for the scanner except to install a driver that is compatible with the standard specifications;
스캐닝하는 기간동안에 사용자는 스캐너를 독점적으로 액세스하는 것이 허용되며;During the scanning period, the user is allowed to access the scanner exclusively;
현재의 사용자가 소정의 시구간동안 아무런 실행없이 스캐너와의 연결을 유지하고 있는 경우에는 스캐너와의 연결을 중단시키며, 이런 중단은 다른 사용자가 스캐너와의 연결을 설정할 수 있게 하는 것이며;If the current user maintains the connection with the scanner without any execution for a certain period of time, the connection with the scanner is interrupted, which interruption allows other users to establish a connection with the scanner;
사용자에 의한 스캐너 예비점유의 경우에는 사용자는 서버로부터 스캐닝 과정 초기화의 권한을 가지며;In the case of scanner pre-occupation by the user, the user has the authority to initialize the scanning process from the server;
스캐닝 과정에 대한 모든 진단 메시지를 네트워크내에서 액세스할 수 있다. 이들 결과는 스캐너에 연결되어 있는 서버 컴퓨터를 액세스하는 사용자 컴퓨터에서 실행되는 임의의 동작순서의 도입에 의해 달성된다. 또한, 이들 결과는 적어도 서버와 사용자 컴퓨터들과 스캐너 및 통신선로(네트워크)를 포함하는 시스템의 특정 구성에 의해 달성된다. 시스템의 정상기능을 위해서, 시스템의 구성요소와 함께, 대체로, 공급된 표준 소프트웨어의 사용이 필요하다.All diagnostic messages for the scanning process can be accessed within the network. These results are achieved by the introduction of any sequence of operations executed on the user computer accessing the server computer connected to the scanner. In addition, these results are achieved by a particular configuration of the system including at least a server and user computers, a scanner and a communication line (network). For the normal functioning of the system, together with the components of the system, it is usually necessary to use the standard software supplied.
상기 응용 프로그램과의 상호작용을 위해서 사용자 컴퓨터상에서 스캐너의 가상 드라이버(가상 TWAIN 드라이버)가 사용된다. 따라서,modus operandi응용 프로그램은 스캐너가 사용자 컴퓨터에 국부적으로 연결되어 있는지 여부나 또는 스캐너가 사용자 컴퓨터가 네트워크내에서 연결되어 있는 서버에 연결되어 있는지 여부에 의존하지 않는다.The scanner's virtual driver (virtual TWAIN driver) is used on the user's computer for interaction with the application program. Thus, the modus operandi application does not depend on whether the scanner is locally connected to the user's computer or whether the scanner is connected to a server to which the computer is connected within the network.
상기 가상 TWAIN 드라이버는 서버 컴퓨터상에 인스톨된 TWAIN 서버 프로그램과 상호작용하는 방식으로 인스톨되어 있다. 사용자 컴퓨터와 서버 컴퓨터간의 TWAIN 명령어와 진단 데이터 및 다른 데이터를 전달하기 위해서, 여기에 부가적으로 설명되어 있는 프로토콜이 사용된다.The virtual TWAIN driver is installed in a manner that interacts with a TWAIN server program installed on a server computer. In order to transfer TWAIN commands and diagnostic data and other data between the user computer and the server computer, the protocol described further herein is used.
또한, 서버 컴퓨터상의 TWAIN 서버 프로그램은 스캐너의 로컬 TWAIN 드라이버와 상호작용한다. 상기 로컬 TWAIN 드라이버와 관련하여, 상기 TWAIN 서버는 사용자 프로그램을 나타낸다.The TWAIN server program on the server computer also interacts with the scanner's local TWAIN driver. With respect to the local TWAIN driver, the TWAIN server represents a user program.
따라서, 채널이 형성되며, 상기 채널상으로 사용자 컴퓨터상에 인스톨되어 있는 응용 프로그램과 서버 컴퓨터상에 인스톨되어 있는 로컬 TWAIN 드라이버 사이에 TWAIN 명령어와 데이터가 전송된다. 이런 종류의 구성으로 인해, 서버 컴퓨터상의 로컬 TWAIN 드라이버에 의해 발생되는 에러에 관한 모든 메시지는 사용자 컴퓨터상의 응용 프로그램으로 전달된다.Thus, a channel is formed, and TWAIN commands and data are transferred between the application program installed on the user computer on the channel and the local TWAIN driver installed on the server computer. Due to this kind of configuration, all messages about errors caused by local TWAIN drivers on the server computer are forwarded to the application on the user's computer.
사용자 컴퓨터상의 가상 TWAIN 드라이버와 서버 컴퓨터상의 TWAIN 서버간의 연결 (세션) 채널은 이미지 입력 장치(Image Input Device; IID)를 개시하라는 명령어를 발생함으로써 작동된다. 상기 명령어가 상기 응용 프로그램에 의해 사용자 컴퓨터상의 가상 TWAIN 드라이버로 보내짐으로써 서버 컴퓨터상의 TWAIN 서버는 적절한 로컬 IID를 개시한다. 사용자 컴퓨터상의 가상 TWAIN 드라이버와 서버 컴퓨터상의 TWAIN 서버간의 연결 (세션) 채널은 IID 종료를 위한 명령어를 발생함으로써중지(종료)된다. 상기 명령어가 상기 응용 프로그램에 의해 사용자 컴퓨터상의 가상 TWAIN 드라이버로 보내짐으로써 상기 TWAIN 서버는 적절한 로컬 IID를 종료한다.The connection (session) channel between the virtual TWAIN driver on the user's computer and the TWAIN server on the server computer works by issuing a command to initiate an Image Input Device (IID). The command is sent by the application to the virtual TWAIN driver on the user's computer so that the TWAIN server on the server computer initiates the appropriate local IID. The connection (session) channel between the virtual TWAIN driver on the user's computer and the TWAIN server on the server computer is stopped (terminated) by issuing a command to terminate the IID. The command is sent by the application to the virtual TWAIN driver on the user's computer, thereby terminating the appropriate local IID.
사용자 컴퓨터와의 연결 (세션) 채널이 작동되는 동안, 서버 컴퓨터는 다른 사용자 컴퓨터에 의한 액세스를 거부하는 방식으로 조정된다. 대체로, 사용자 컴퓨터가 세션의 중지를 위한 명령어를 발생할 때까지 연결세션이 지속된다. 그럼에도 불구하고, 보다 합리적인 네트워크 사용 권한을 위해서, 서버 컴퓨터 조정방식은 최대 아이들(Idle) 기간(타임아웃)에 대한 파라미터 입력을 포함한다. 이 고정된 시구간(간격)동안 사용자 컴퓨터로부터 TWAIN 서버로 명령어가 가지 않는 경우, 상기 TWAIN 서버는 사용자 컴퓨터와의 연결 세션을 독립적으로 종료한 다음 적절한 로컬 IID를 종료하며, 다른 사용자들에게 이들 자신의 연결채널을 작동시키는 권한, 즉 세션을 시작할 권한을 제공함으로써 적절한 로컬 IID를 개시할 수 있다.While the connection (session) channel with the user's computer is active, the server computer is adjusted in such a way as to deny access by another user's computer. In general, the connection session continues until the user computer issues a command to terminate the session. Nevertheless, for more reasonable network usage rights, the server computer tuning scheme includes a parameter entry for the maximum idle period (timeout). If no commands are sent from the user's computer to the TWAIN server during this fixed time interval, the TWAIN server terminates the connection session with the user's computer independently and then terminates the appropriate local IID, giving them to themselves. The appropriate local IID can be initiated by providing the right to activate the connection channel of the, i.e. the right to start a session.
어느 단계에서, 사용자 컴퓨터상의 응용 프로그램이 스캐닝을 시작하라는 명령어를 가상 TWAIN 드라이버로 전송하는 경우, 상기 가상 TWAIN 드라이버는 스크린상에 "스캐닝 준비"라는 메시지를 표시하며 사용자에 의한 명령어 확인을 요청한다. 동시에, 서버 컴퓨터상의 TWAIN 서버는 스크린상에 유사한 메시지를 표시하며 사용자로부터 이 메시지의 확인을 대기한다. 이런 확인은 사용자 컴퓨터나 또는 서버 컴퓨터로부터 발생하며, 이 확인에 의해 스캐닝 과정이 시작된다.At some stage, when an application on the user's computer sends a command to the virtual TWAIN driver to start scanning, the virtual TWAIN driver displays a message "Ready to scan" on the screen and requests command confirmation by the user. At the same time, the TWAIN server on the server computer displays a similar message on the screen and waits for confirmation from the user. This confirmation may be from a user computer or a server computer, which initiates the scanning process.
사용자는 사용자 컴퓨터로부터 스캐닝에 관한 파라미터를 조정하고, 그런 다음 서버 컴퓨터에 연결된 스캐너에 원본을 위치시키며, 서버 컴퓨터로부터 스캐닝을 시작하며, 스캐닝의 종료시에 스캔된 원본을 치우는 권한을 갖는다. 따라서, 사용자에 의해 네트워크 장치와 원본을 완벽하게 제어하는 것에 관한 문제점이 해결되며, 사용자 컴퓨터로부터 스캐너로의 사용자의 반복적인 이동에 관한 문제점 또한 배제되거나 최소화된다.The user has the authority to adjust parameters relating to scanning from the user's computer, then place the original in a scanner connected to the server computer, start scanning from the server computer, and clear the scanned original at the end of scanning. Thus, the problem of completely controlling the network device and the original by the user is solved, and the problem of the repetitive movement of the user from the user computer to the scanner is also excluded or minimized.
상술한 네트워크 스캐닝 방법의 실제적인 수행을 위한 시스템 해결책은 로컬 또는 글로벌 컴퓨터 네트워크에 의해 연결되어 있는 두 개 이상의 컴퓨터들을 포함하는 것을 조건으로 한다. 이들 컴퓨터들 중 몇 개는 하나 또는 여러 개의 IDD(스캐너들, 디지탈 카메라 등)에 연결되어 있다. 이런 컴퓨터들이 다른 컴퓨터들과 이들 이미지 입력 장치들을 공유하는 경우, 이런 컴퓨터들은 서버의 기능을 이행한다. 서버에 연결된 이미지 입력 장치를 사용하며 컴퓨터 네트워크를 통하여 서버에 연결될 수 있는 상기 다른 컴퓨터를 "사용자 컴퓨터" 또는 "사용자"라 한다. 사용자 컴퓨터는 또한 IID에 접속할 수 있으나, 서버와는 달리, 이런 이미지 입력 장치들을 단지 이들 서버 컴퓨터들을 통해서만 액세스할 수 있다.The system solution for the practical implementation of the network scanning method described above is subject to the inclusion of two or more computers connected by a local or global computer network. Some of these computers are connected to one or several IDDs (scanners, digital cameras, etc.). If these computers share these image input devices with other computers, they perform the function of a server. The other computer, which uses an image input device connected to the server and can be connected to the server via a computer network, is referred to as "user computer" or "user". The user computer can also access the IID, but unlike the server, these image input devices can only be accessed through these server computers.
상술한 시스템은 네트워크내에 무한한 개수의 사용자 컴퓨터와 서버 컴퓨터의 존재를 허락한다. 그리고, 동일한 컴퓨터는 사용자 컴퓨터일 수 있으며 동시에 서버 컴퓨터일 수 있다. 따라서, 사용자 컴퓨터는 다른 서버의 IID를 사용할 수 있으며, 또 서버로서 동작할 때는 다른 사용자 컴퓨터들이 자신의 스캐너를 액세스할 수 있도록 한다. 어느 컴퓨터가 어느 서버의 사용자 컴퓨터가 되는지를 나타내는 이들 컴퓨터들간의 상호작용은 시스템의 구성에 의해 결정되며, 시스템에 포함되는 각각의 개개의 컴퓨터상에서 조정된다. 상술한 시스템의 주요한 구별이 되는 특징은 하드웨어 레벨과 소프트웨어 레벨에서 어느 서버 컴퓨터에 의해 제어되는 IID와 사용자 컴퓨터간의 직접적인 연결의 확립이다. 네트워크 스캐닝 시스템의 동작구성의 예가 도2에 재현되어 있다.The system described above allows the presence of an infinite number of user and server computers in a network. And, the same computer can be a user computer and at the same time a server computer. Thus, a user's computer may use the IID of another server, and when operating as a server, allow other user's computers to access their scanners. The interaction between these computers, indicating which computer becomes the user computer of which server, is determined by the configuration of the system and coordinated on each individual computer included in the system. The main distinguishing feature of the system described above is the establishment of a direct connection between the user computer and the IID controlled by any server computer at the hardware and software levels. An example of the operation configuration of the network scanning system is reproduced in FIG.
도1은 시스템이 사용자 컴퓨터와 서버 컴퓨터로 이루어져 있는 네트워크 스캐닝 시스템 구성의 개략도.1 is a schematic diagram of a network scanning system configuration in which the system consists of a user computer and a server computer;
도2는 네트워크 스캐닝 시스템의 가능한 구성예를 보여주는 도해도.2 is a diagram showing a possible configuration example of a network scanning system.
도3은 시스템에 사용된 프로그램 모듈의 상호작용을 도시한 도해도.3 is a diagram illustrating the interaction of program modules used in the system.
도4는 사용자와 서버간의 상호작용을 보여주는 블럭다이어그램.4 is a block diagram showing interaction between a user and a server.
도5는 사용자 컴퓨터상에 표시된 데이터 교환상 정보를 보여주는 도면.Fig. 5 shows information on data exchange displayed on a user computer.
도6은 사용자 컴퓨터상에 표시된 스캐닝 준비상 정보를 보여주는 도면.Fig. 6 is a diagram showing scanning preparation information displayed on a user computer.
도7은 서버 컴퓨터상에 표시된 스캐닝 준비상 정보를 보여주는 도면.Fig. 7 shows scanning preparation information displayed on a server computer.
도8은 사용자 컴퓨터상에 표시된 스캐닝 상태에 관한 정보를 보여주는 도면.8 shows information about a scanning state displayed on a user computer.
(도면의 주요 부분에 대한 부호의 설명)(Explanation of symbols for the main parts of the drawing)
1: 사용자 2: 서버1: user 2: server
3: 스캐너4: 디지털 카메라3: scanner 4: digital camera
5: 사용자 #16: 사용자 #25: user # 16: user # 2
7: 사용자 #38: 서버 #17: User # 38: Server # 1
9: 서버 #210: 서버-사용자9: server # 210: server-user
11: 로컬 스캐너12: 스캐너 #111: local scanner 12: scanner # 1
13: 스캐너 #314: 스캐너 #313: Scanner # 314: Scanner # 3
선 "A": 서버 #1과 #2가 사용자 #1에 의해 사용됨Line "A": Servers # 1 and # 2 are used by user # 1
선 "B": 로컬 스캐너와 서버 #2가 사용자 #2에 의해 사용됨Line "B": Local scanner and server # 2 used by user # 2
선 "C": "서버-사용자"는 서버 #1을 사용하며 또 사용자 #3과 로컬 스캐너를 공유함Line "C": "Server-User" uses Server # 1 and shares local scanner with User # 3
15: 스캐닝 소프트웨어16: IID 제어모듈15: Scanning Software 16: IID Control Module
17: 구성모듈18: 가상 TWAIN 드라이버17: Configuration Module 18: Virtual TWAIN Driver
19: 전송모듈20: 스캐너19: transfer module 20: scanner
21: 로컬 TWAIN 드라이버22: IID 제어모듈21: Local TWAIN Driver 22: IID Control Module
23: 구성 모듈24: TWAIN 서버23: Configuration Module 24: TWAIN Server
25: 전송모듈26: 명령어 수신25: transmission module 26: command reception
27: 모든 데이터가 유효한가?27: Are all data valid?
28: 응답(OK)준비29: 복귀28: Ready OK 29: Return
30: 연결됨?31: 연결고정30: Connected? 31: Secure connection
32: 연결승인?33: 메시지 표시32: Connection approval? 33: Message display
34: 응답(에러)준비35: 복귀34: Prepare for a response (error) 35: Return
36: 명령어 데이터의 패키지(배치) 준비36: Package (batch) preparation of command data
37: 명령어 데이터의 패키지(배치) 전송37: Package (batch) transfer of command data
38: 응답 수신 예정39: 응답수신?38: Will receive response 39: Will receive response?
40: 응답(에러)준비41: 복귀40: prepare for response (error) 41: return
42: 응답해독43: 에러코드 기억42: Decode response 43: Remember error code
44: 응답준비45: 복귀44: response ready 45: return
46: 스캐너가 대기상태인가?46: Is the scanner in standby?
47: 다른 사용자와의 접속에 대한 아이들 기간(타임아웃) 초과?47: Idle timeout (timeout) for connecting with other users?
48: 응답(에러)준비49: 다른 사용자의 연결을 끊음48: Ready for response (error) 49: Disconnect from other users
50: 파라미터 구조 발생51: 로컬 TWAIN 드라이버 접촉50: Generate parameter structure 51: Contact local TWAIN driver
52: 접속확립?53: 응답(OK)준비52: Establishment of Connection? 53: OK
54: 에러코드 요구55: 응답(에러)준비54: Error code request 55: Response (error) preparation
본 발명은 로컬 컴퓨터 네트워크(Local Computer Network) 또는 글로벌 컴퓨터 네트워크(Global Computer Network)에 의하여 연결되어 있으며 사용자 컴퓨터 및/또는 서버의 기능을 수행하는 여러 대의 컴퓨터 (최소 2대)로 이루어진 시스템에서 실현된다. (도2 참조) 본 실시예에서는, 예를 들어, 스캐너 12, 13, 14 및/또는 디지탈 카메라와 같은 이미지 입력 장치(Image Input Device; IID)가 서버 컴퓨터 8, 9, 10에 각각 연결된다. (카메라는 도2에 도시되지 않았음) 사용자 6은 IID(로컬 스캐너 11)에 연결된다. 그러나, 서버와는 달리, 이런 IID는 단지 사용자 6과 통신하며, 단지 그 컴퓨터에 의해서만 액세스될 수 있다.The invention is realized in a system consisting of several computers (at least two) connected by a local computer network or a global computer network and performing the functions of a user computer and / or a server. . (See FIG. 2) In this embodiment, for example, an image input device (IID) such as a scanner 12, 13, 14 and / or a digital camera is connected to the server computers 8, 9, and 10, respectively. (Camera is not shown in FIG. 2) User 6 is connected to an IID (local scanner 11). However, unlike a server, this IID only communicates with user 6 and can only be accessed by that computer.
도2에 나타낸 바와 같이, 다이어그램은 네트워크내에 무한한 개수의 사용자 컴퓨터와 서버 컴퓨터의 존재를 허용한다. 컴퓨터 10은 사용자 컴퓨터와 서버 컴퓨터 모두로서 동시에 작동할 수 있다. 게다가, 사용자 컴퓨터로서 작동하는 컴퓨터 10은 다른 서버의 IID를 사용할 수 있으며, 동시에 서버로서 작동하는 컴퓨터 10은 다른 사용자 컴퓨터에 의한 사용을 위하여 그의 IID를 제공한다. 어느 컴퓨터들이 사용자 컴퓨터들이며 또 어느 컴퓨터들이 서버 컴퓨터들인지를 나타내는 이들 컴퓨터들간의 상호관계는, 시스템내의 각각의 개개의 컴퓨터상에서 조정될 수 있는 시스템 구성에 의해 결정된다. 네트워크 스캐닝 시스템의 실질적인 구성의 예가 도2에 도시되어 있다. 보통의 네트워크(이경우, 로컬)를 벗어나서, 사용자 컴퓨터 5, 6, 7은 일시적으로 작동된 통신 (연결) 채널들 A와 B를 통하여 서버 8, 9, 10에 연결되어 있는 어느 스캐너에게 명령어을 전달하며, 또 스캐너 12, 13, 14로부터 정보(진단 데이터 및 다른 데이터)를 수신할 수 있다.As shown in Figure 2, the diagram allows for the presence of an infinite number of user and server computers in the network. Computer 10 can operate simultaneously as both a user computer and a server computer. In addition, computer 10 acting as a user computer can use the IID of another server, while computer 10 acting as a server provides its IID for use by another user computer. The interrelationship between these computers indicating which computers are user computers and which computers are server computers is determined by the system configuration that can be coordinated on each individual computer in the system. An example of a practical configuration of the network scanning system is shown in FIG. Outside the normal network (in this case, local), user computers 5, 6, and 7 send commands to any scanner connected to servers 8, 9, and 10 via temporarily activated communication (connection) channels A and B. In addition, information (diagnosis data and other data) can be received from the scanners 12, 13, and 14.
시스템에 사용된 프로그램 모듈의 상호작용을 나타내는 다이어그램이 도3에 도시되어 있다. 이 다이어그램은 서버상에 인스톨(Install)된 소프트웨어를 보여주고 있으며, IID TWAIN 드라이버 (TWAIN 소스) 21, IID 제어모듈(TWAIN 소스 관리 프로그램) 22, 서버 스캐닝 응용 프로그램(TWAIN 서버) 24, 전송모듈(Transport Module) 25 및 서버 구성 프로그램(모듈 23)으로 이루어져 있다.A diagram illustrating the interaction of program modules used in the system is shown in FIG. This diagram shows the software installed on the server, the IID TWAIN driver (TWAIN source) 21, the IID control module (TWAIN source manager) 22, the server scanning application (TWAIN server) 24, the transfer module ( Transport Module 25) and Server Configuration Program (Module 23).
사용자 컴퓨터상에 인스톨된 소프트웨어는, 가상 TWAIN 드라이버 (가상 TWAIN 소스) 18, IID 제어모듈 16, 전송모듈 19 및 사용자 구성 프로그램 (모듈 17) 및 또한 어느 스캐닝 응용 프로그램 15를 포함한다.The software installed on the user computer includes a virtual TWAIN driver (virtual TWAIN source) 18, an IID control module 16, a transfer module 19 and a user configuration program (module 17) and also any scanning application 15.
상기 IID TWAIN 드라이버 21은 통상 하드웨어 제조업자에 의해 설계되며, 대체로 스캐너에게 공급된다. 이 모듈은 TWAIN 명령어를 IID 제어 (관리) 명령어로 변형한 후, 이들 명령어를 IID 20에 전달한 후, IID로부터 데이터를 수신하여 상기 수신된 데이터를 요구모듈(Requesting Module)에 전달하려는 목적으로 쓰여진다.The IID TWAIN driver 21 is usually designed by a hardware manufacturer and is usually supplied to a scanner. This module is used for transforming TWAIN commands into IID control (management) commands, passing these commands to IID 20, receiving data from the IID, and delivering the received data to a requesting module.
상기 IID 제어모듈은 동작 시스템의 일부이다. 이 구성요소는 스캐닝 응용 프로그램과 TWAIN 드라이버간의 상호작용에 책임이 있다. 본 발명에서, 이 모듈은 TWAIN 서버와 IID TWAIN 드라이버간의 연결을 위하여 서버상에서 사용되며, 또한 스캐닝 응용프로그램과 가상 TWAIN 드라이버간의 연결을 위하여 사용자 컴퓨터상에서도 사용된다.The IID control module is part of the operating system. This component is responsible for the interaction between the scanning application and the TWAIN driver. In the present invention, this module is used on the server for the connection between the TWAIN server and the IID TWAIN driver, and also on the user's computer for the connection between the scanning application and the virtual TWAIN driver.
서버 스캐닝 응용 프로그램(TWAIN 서버)은 사용자 요구에 따라서 TWAIN 명령어의 형성과 실행을 목적으로 사용되며 또 결과를 사용자에게 전달할 목적으로도 사용된다. 이외에도, 상기 TWAIN 서버는 특히, 그래픽 인터페이스의 가시화와 스캐닝 과정의 중단을 위하여 다른 사용자 요구의 수행을 제공한다. 상기 TWAIN 서버는 소정의 시구간(타임아웃)내에 서버로 어드레스되지 않는 사용자들의 연결을 끊기 위하여 접속되어 있는 모든 사용자들을 감독하는 책임이 있다. 이후에, 이런 사용자들에 의해 이전에 사용된 IID는 다른 사용자에 의해 액세스 가능하다.The server scanning application (TWAIN server) is used to form and execute TWAIN commands according to user needs, and to deliver results to users. In addition, the TWAIN server provides for fulfilling other user requests, in particular for the visualization of the graphical interface and for interrupting the scanning process. The TWAIN server is responsible for overseeing all connected users in order to disconnect users who are not addressed to the server within a predetermined timeout. Thereafter, the IID previously used by these users is accessible by other users.
상기 서버 구성 프로그램은 사용자가 컴퓨터에 연결되어 있는 모든 IID를 사용할 수 있게 하거나 또는 이런 사용을 금지할 수 있게 함으로써, 사용자 컴퓨터내에서 서버를 변형할 수 있게 한다. 게다가, 이 프로그램은 권한이 주어진 IID 사용자 등록의 추가, 삭제 및 편집을 목적으로 쓰여진다. 이에 의해 권한이 주어지지 않은 사용자에 의한 IID 액세스는 거부된다.The server configuration program allows the user to modify all servers within the user's computer by enabling or prohibiting all IIDs connected to the computer. In addition, this program is written for the purpose of adding, deleting and editing authorized IID user registrations. This denies IID access by unauthorized users.
사용자 구성 프로그램은 시스템내에 가상 TWAIN 드라이버의 생성을 목적으로 쓰여진다. 각각의 사용자 구성 프로그램은 서버들 중 어느 하나상에 연결된 개개의 IID와 연결되어 있다. 상기 프로그램은 로컬 컴퓨터 네트워크에서 자동적으로 검색되는 서버 리스트로부터 서버의 자유선택을 제공하며, 또 글로벌 네트워크에서 서버의 명령(지시)을 제공한다. 게다가, 상기 프로그램은 상기 지시되거나 또는 선택된 서버에 연결되어 있는 이미지 입력 장치 리스트로부터 IID의 자유선택을 제공한다. 이외에도, 상기 프로그램은 사용자에 의해 서버 IID를 액세스하는 것을 허락하는 신원확인정보의 입력을 요구한다. 이 프로그램은 또한 디폴트(Default)에 의해 이네이블된 IID를 선택할 수 있게도 한다. 대부분의 외부 (표준) 스캐닝 프로그램은 디폴트에 의해 IID를 사용한다.User configuration programs are used to create virtual TWAIN drivers in the system. Each user configuration program is associated with an individual IID connected to either of the servers. The program provides a free choice of servers from a list of servers that are automatically retrieved from the local computer network, and provides a command of the server in the global network. In addition, the program provides free selection of IIDs from the list of image input devices that are directed or connected to the selected server. In addition, the program requires entry of identification information that allows the user to access the server IID. The program also allows you to select the IID that is enabled by default. Most external (standard) scanning programs use IID by default.
상기 가상 TWAIN 드라이버는 TWAIN 명령어에 따라서 호출 프로그램에 의해 요구되는 질의(Inquiry)의 형성 및 상기 질의를 서버로 전달하는 것을 목적으로 사용되며, 또한 이들 명령어들의 수행결과를 서버로부터 수신하고 호출 프로그램내에 이들 결과들을 포함시키는 것을 목적으로 사용된다. 게다가, 상기 가상 TWAIN 드라이버는 스캐닝 과정의 초기화 및 중단을 처리하는 그래픽 인터페이스를 제공하며 또한 적절한 요구들(명령어들)을 형성하고 이들을 서버로 전달하는 것을 제공한다.The virtual TWAIN driver is used for the purpose of forming an Inquiry required by the calling program and passing the query to the server according to the TWAIN command, and also receiving the results of the execution of these commands from the server and in the calling program. It is used for the purpose of including the results. In addition, the virtual TWAIN driver provides a graphical interface for handling the initialization and interruption of the scanning process and also provides for forming appropriate requests (commands) and passing them to the server.
상술한 구성에서 사용된 전송모듈은 컴퓨터 네트워크내에서 사용자와 서버간의 데이터 패키지(배치(Batches))의 전송수단이다. 이 구성요소는 이들 패키지의 내용을 분석하지 않고서도 사용자의 신원확인을 제공하며 또 임의의 길이를 갖는 데이터 패키지들을 확실하게 전달한다. 상기 전송모듈은 서버(TWAIN 서버)상에서도 사용되며 또한 사용자 컴퓨터(가상 TWAIN 드라이버)상에서도 사용된다.The transmission module used in the above-described configuration is a transmission means of a data package (batches) between a user and a server in a computer network. This component provides user identification and reliably delivers data packages of arbitrary length without analyzing the contents of these packages. The transfer module is used on a server (TWAIN server) and also on a user's computer (virtual TWAIN driver).
상기 가상 TWAIN 드라이버의 사용에 의해, TWAIN 명세(Specification)와 호환성이 있으면서 스캐닝 모드의 선택시에 사용자 그래픽 인터페이스의 표현(Presentation)을 위하여 TWAIN 드라이버의 관여 없이도 이미지를 스캐닝할 수 있는 외부 응용 프로그램을 갖는 본 발명의 실현을 위한 기회가 제공되어 있다.By using the virtual TWAIN driver, having an external application that is compatible with the TWAIN specification and can scan an image without the involvement of the TWAIN driver for presentation of the user graphic interface at the time of selection of the scanning mode. An opportunity is provided for the realization of the present invention.
시스템내의 사용자/서버 상호작용에 대한 블록다이어그램이 도4에 나타나 있다.A block diagram for user / server interaction in the system is shown in FIG.
작업시작 이전에, 소프트웨어는 표준 구성 모듈에 의해 조정된다. 서버상에서 작동(이네이블(Enable))한다. 연결된 IID를 액세스하는 권한을 사용자에게 제공하는 모드는 서버상에서 이네이블된다. 게다가, 스캐너를 사용하도록 권한이 주어진 사용자들에 대한 등록 레코드를 생성할 필요가 있다. 상기 레코드는 신원확인정보(이름 및 암호)를 포함한다. 이렇게 등록된 각각의 사용자는 서버에 연결된 임의의 IID를 사용할 권한을 갖는다.Before starting work, the software is controlled by standard configuration modules. Enable (enable) on the server. The mode of providing the user with access to the connected IID is enabled on the server. In addition, you need to create a registration record for users authorized to use the scanner. The record contains identification information (name and password). Each registered user has the right to use any IID connected to the server.
사용자 컴퓨터의 구성과정에서, 서버에 연결된 IID 중 어느 하나에 접속된 신규한 가상 TWAIN 드라이버가 생성되어야 한다. 게다가, 현재 액세스 가능한 모든 서버들이 이들에 연결된 이미지 입력 장치에 관한 정보를 사용자에게 전송하는 것에 응답하여, 일반적인 분포 질의가 로컬 컴퓨터 네트워크내에서 순환된다. 상술한 대화는 질의 동시전송(브로드캐스팅)과, 사용자와 서버간의 연결 및 데이터의 전송을 제공하는 전송모듈에 의해 수행된다.During the configuration of your computer, a new virtual TWAIN driver must be created that is attached to any of the IIDs connected to the server. In addition, a general distribution query is circulated within the local computer network in response to all currently accessible servers transmitting information about the image input device connected thereto. The above-mentioned conversation is performed by a transmission module that provides simultaneous query transmission (broadcasting), connection between the user and the server, and transmission of data.
그런 다음, 사용자는 리스트로부터 서버와 이미지 입력 장치를 선택할 수 있다. 이런 서버 어드레스(어드레스 TCP/IP, DNS 이름 또는 다른 정보 권한 연결)의 직접입력은 로컬 컴퓨터 네트워크 이외에 서버에 연결되어 있는 스캐너의 사용을 위해 제공된다. 또는, 다른 경우, 일반적인 질의에 의해 서버검색에 실패한 경우에 제공된다. 이런 경우, 질의는 단지 서버로만 어드레스된다. 응답의 수신시에, 사용자는 또한 리스트로부터 이미지 입력 장치를 선택할 수 있다. 조정과정의 말에, 사용자는 서버상에 그의 명백한 신원확인을 보장하는 그의 개인 데이터(이름 및 암호)를 입력한다. 주지하는 바와 같이, 사용자의 실제권한은 작업세션 이전에 항상발생한다. 이 정보는 동작 시스템내에서 서버상에 접속된 IID와의 상호작용을 위해서 후에 사용될 예정인 신규한 가상 TWAIN 드라이버의 생성과 등록에 사용된다.The user can then select the server and image input device from the list. Direct entry of this server address (address TCP / IP, DNS name or other information rights connection) is provided for use with a scanner connected to a server other than the local computer network. Otherwise, it is provided when the server search fails due to a general query. In this case, the query is only addressed to the server. Upon receipt of the response, the user may also select an image input device from the list. At the end of the reconciliation process, the user enters his personal data (name and password) on the server to ensure his clear identity. As will be appreciated, the user's actual rights always occur before the work session. This information is used to create and register a new virtual TWAIN driver that will later be used to interact with the IID connected on the server in the operating system.
스캐닝 응용 프로그램은 서버상의 IID 중 하나에 접속된 가상 TWAIN 드라이버와 상호작용하며, 또 로컬장치의 TWAIN 드라이버와도 상호작용한다. 이것은 IID 제어모듈의 기능으로 어드레스함으로써 수행된다.The scanning application interacts with the virtual TWAIN driver attached to one of the IIDs on the server, and also with the TWAIN driver on the local device. This is done by addressing the functions of the IID control module.
또한, 상기 IID 제어모듈은 모든 호(이 모듈에 직접 어드레스된 것은 제외)를 상기 가상 TWAIN 드라이버로 전송한다. IID 제어모듈의 관점에서 보면(또한 스캐닝 응용 프로그램의 관점에서 보면), 원격 스캐너들도 로컬 스캐너와 동일하게 동작시킬 수 있다.The IID control module also sends all calls (except directly addressed to this module) to the virtual TWAIN driver. From the point of view of the IID control module (and from the point of view of the scanning application), remote scanners can operate in the same way as the local scanner.
매우 드문 경우(예를 들어, DG_CONTROL/DAT_IDENTITY/MSG_GET 또는 DG_CONTROL/DAT_STATUS/MSG_GET)로, 가상 TWAIN 드라이버가 서버로의 어드레스 없이 명령어를 독립적으로 수행하는 것이다. 이것은 사용자 컴퓨터를 구성하는 과정에서나 또는 이전의 명령어를 수행하는 과정에서, 모든 필요한 데이터가 서버로부터 미리 수신되었다는 사실로 인해 가능하다. 다른 경우, 가상 TWAIN 드라이버는 통상, DG_CONTROL/DAT_IDENTITY/MSG_OPENDS 처리에서 서버와의 접속을 확립하거나 또는 명령어 전달을 위해서 이미 확립된 접속을 사용한다. 접속을 확립하는 과정은 또한 사용자 권한부여를 포함하는데, 이 단계는 전송모듈에 의해 수행된다. 서버 액세스 불가 또는 사용자 액세스 거부로 인해 접속이 불가능할 때마다, 가상 TWAIN 드라이버는 에러코드를 발생하면서 적절한 메시지를 표출하며 호출 응용프로그램에 대한 제어 (관리) 기능을 복귀한다. 접속의 성공적인 확립시에나 접속이 이미 확립된 경우에도, 상기 드라이버는 전송모듈에 의해 명령어 데이터 패키지를 서버로 전송한다.In very rare cases (for example, DG_CONTROL / DAT_IDENTITY / MSG_GET or DG_CONTROL / DAT_STATUS / MSG_GET), the virtual TWAIN driver executes the commands independently without addressing the server. This is possible due to the fact that during the configuration of the user's computer or during the execution of the previous commands all the necessary data has already been received from the server. In other cases, the virtual TWAIN driver typically establishes a connection with the server in DG_CONTROL / DAT_IDENTITY / MSG_OPENDS processing or uses an already established connection for command delivery. The process of establishing a connection also includes user authorization, which is performed by the transport module. Whenever the connection is not possible due to server inaccessibility or user access denied, the virtual TWAIN driver generates an error code and displays the appropriate message and returns control (management) functions to the calling application. Even when the connection is established successfully or when the connection has already been established, the driver transmits the command data package to the server by the transfer module.
상기 데이터 패키지는 트리플렛(Triplet) 명령어를 포함하며, 또한 데이터 파라미터 구조의 모든 중요한 필드를 포함하는데, 이것은 상기 TWAIN 명세가 이것을 규정하는 경우에 그러하다. 그리고, 스캐너로부터 정보를 수신하는 것을 목적으로 사용되는 빈 파일(Empty Files) 대신에, 이들에 대한 참조정보(파일 사이즈)만이 전달된다. 이것은 전달된 정보의 용량을 최소화하는 것을 돕는다. 데이터 패키지가 전송된 이후에, 가상 TWAIN 드라이버는 소정의 시구간동안 서버로부터 피드백을 대기하고, 이것의 종료시에, 응답이 수신되지 않는 경우, 에러코드와 함께 적절한 메시지를 표시하고 호출 응용 프로그램에 대한 제어 (관리)를 복귀한다.The data package includes a triplet instruction and also contains all the important fields of the data parameter structure, if the TWAIN specification specifies it. And instead of empty files used for the purpose of receiving information from the scanner, only reference information (file size) to them is passed. This helps to minimize the amount of information conveyed. After the data package has been sent, the virtual TWAIN driver waits for feedback from the server for a predetermined period of time, and at the end of it, if no response is received, displays an appropriate message with an error code and indicates to the calling application. Return control (management).
사용자 전송모듈 19는 변형되지 않은 데이터 패키지를 서버에 전달한다. 차례로, 데이터의 수신을 완료한 서버 전송모듈 25는 이들을 서버 스캐닝 응용 프로그램(TWAIN 서버)에 전달한다. 전용 전송모듈의 존재는 장차 본 발명의 다른 구성요소를 변경하지 않고서도 전송된 데이터의 추가적인 부호화(Coding) 및/또는 압축을 도입하는 것을 허락한다.The user transfer module 19 delivers the unmodified data package to the server. In turn, the server transmission module 25 having completed the reception of the data transfers them to the server scanning application program (TWAIN server). The presence of a dedicated transmission module allows the introduction of additional coding and / or compression of the transmitted data without altering other components of the present invention in the future.
입출력 장치들 중 하나로 어드레스된 명령어의 수신을 완료한 이후에, 서버 스캐닝 응용 프로그램(TWAIN 서버)은 다른 사용자(사용자 2)에 의한 적절한 장치의 사용이 종료되었는지를 확인한다. 만일 그렇지 않으면, 상기 TWAIN 서버는 사용자 2에 의해 개시된 이전의 명령어 시점으로부터 스캐너까지 종료된 시구간을 분석한다. 소정의 시구간(타임아웃)이 초과된 경우에는 상기 TWAIN 소스가 종료되고 사용자 2와의 접속은 강제적으로 디세이블(disable)될 것이다. 상기 타임아웃이 초과되지 않는 경우에는 IID 제어모듈로의 어드레스 없이도 상기 TWAIN은 "응답오류"를 발생할 것이다. 이 메카니즘은 TWAIN 하부조직과 관련하여 상부레벨상의 충돌을 처리하는 간단한 방법이다. 만일 상기 장치가 사용자에 의해 사용되고 있지 않는 경우, 상기 TWAIN 서버 24는 명령어를 형성하고 수신된 데이터 패키지로부터 이것의 파라미터의 구조를 명확하게 재구성한다. 그리고, 만일 몇몇 필드가 빈 파일에 대한 참조정보를 포함하는 경우, 이들 파일들이 생성될 것이다. 이것은 서버상에서 사용자 드라이버로 어드레스된 구조와 동일한 파라미터 구조의 재생을 초래한다. 이들 파라미터 및 명령어 트리플렛은 IID 제어모듈로 어드레스하기 위하여 TWAIN 서버에 의해 사용된다. IID 제어모듈(TWAIN 소스 관리 프로그램)로 어드레스함에 있어서, TWAIN 서버는 TWAIN 명세를 따른다. 그러므로, 사용자에 의해 입력되는 명령어도 다른 스캐닝 응용 프로그램으로부터의 유사한 명령어와 동일한 방식으로 처리된다.After completing the reception of an address addressed to one of the input / output devices, the server scanning application (TWAIN server) checks whether the use of the appropriate device by another user (user 2) has ended. If not, the TWAIN server analyzes the time period that ended from the previous command point initiated by user 2 to the scanner. If the predetermined time period (timeout) has been exceeded, the TWAIN source will be terminated and the connection with user 2 will be forcibly disabled. If the timeout is not exceeded, the TWAIN will generate a "response error" even without an address to the IID control module. This mechanism is a simple way to handle collisions on the upper level with respect to the TWAIN subsystem. If the device is not in use by the user, the TWAIN server 24 forms a command and explicitly reconstructs the structure of its parameters from the received data package. And, if some fields contain reference to an empty file, these files will be created. This results in reproduction of the same parameter structure as the structure addressed to the user driver on the server. These parameter and command triplets are used by the TWAIN server to address the IID control module. In addressing to the IID control module (TWAIN source management program), the TWAIN server follows the TWAIN specification. Therefore, instructions entered by the user are processed in the same manner as similar instructions from other scanning applications.
필요에 따라 IID와 협력하는 어느 적절한 장치의 TWAIN 드라이버로 명령어가 전달된다. 상기 명령어 수행의 완료시에, 상기 결과는 서버 스캐닝 응용 프로그램으로 되돌아간다. 이 단계에서, 명령어 유형에 의존하여, 파라미터로서 전송된 데이터 구조의 내용은 보정될 수 있는데, 여기에 속하는 경우는 상기 파일이 기록되거나 또는 새롭게 생성된 데이터 구조를 처리하는 인덱스(Index)가 개시되는 것 등이 있다.If necessary, commands are passed to the TWAIN driver on any suitable device that cooperates with the IID. Upon completion of the command execution, the result returns to the server scanning application. In this step, depending on the instruction type, the content of the data structure transmitted as a parameter can be corrected, in which case the index is started in which the file is written or the newly created data structure is processed. Things.
상기 서버 스캐닝 응용 프로그램은 명령어 수행결과(피드백 값)와 데이터 구조(단, 이 데이터 구조가 명령어 수행의 결과로서 변경이 완료된 경우에만 그러하다)를 모두 포함하는 응답 데이터 패키지를 형성한다. 게다가, 상기 TWAIN 서버는 상기 피드백 값을 분석하며, 에러시에, 이 에러코드를 얻기 위해서 제어모듈로 어드레스한다. 상기 에러코드는 또한 데이터 패키지에 포함된다. 이것은 사용자 컴퓨터상의 외부 스캐닝 응용 프로그램이 이 코드를 요구하는 경우에 서버로의 반복적인 어드레스를 방지할 수 있다. 상기 응답 데이터 패키지는 서버상에서 전송모듈에 의해 전송된다. 응답을 수신완료한 이후에, 가상 TWAIN 드라이버는 수신된 정보를 갖는 파라미터 데이터 구조를 채우며, 명령어 수행에 관한 수신된 코드에 따라 제어기능을 복귀한다. 차후에 일어날 수 있는 사용을 위해서 상기 에러코드는 저장된다. 만일 성공적으로 수행된 명령어가 명령어 DG_CONTROL/DAT_IDENTITY/MSG_CLOSEDS이라면, 가상 TWAIN 드라이버는 서버와의 접속을 중단한다. 상기로부터 판단하면, 명령어 DG_CONTROL/DAT_IDENTITY/MSG_OPENDS의 수행이 개시되는 순간으로부터 처리종료까지, 즉, 명령어 DG_CONTROL/DAT_IDENTITY/MSG_CLOSEDS까지 사용자는 서버에 통상 접속되는 것이 된다.The server scanning application forms a response data package that includes both a command execution result (feedback value) and a data structure (only if the data structure has been changed as a result of command execution). In addition, the TWAIN server analyzes the feedback value and, upon error, addresses the control module to obtain this error code. The error code is also included in the data package. This can prevent repetitive addressing to the server if an external scanning application on the user's computer requires this code. The response data package is transmitted by the transmission module on the server. After receiving the response, the virtual TWAIN driver populates the parameter data structure with the received information, and returns control to the received code for executing the command. The error code is stored for future use. If the command executed successfully is the command DG_CONTROL / DAT_IDENTITY / MSG_CLOSEDS, the virtual TWAIN driver will close the connection to the server. Judging from the above, the user is normally connected to the server from the moment when the instruction DG_CONTROL / DAT_IDENTITY / MSG_OPENDS is started to the end of processing, that is, the instruction DG_CONTROL / DAT_IDENTITY / MSG_CLOSEDS.
명령어 처리를 위한 상술한 구성은 일반적인 특징을 가지며, 사용자로부터 서버로 전송된 데이터의 양과 서버로부터 사용자로 전송된 데이터의 양을 제외하고 명령어 유형에 의존하지 않는다. 그러나, 스캐닝의 용이한 감시와 사용상 편의를 위해서, 가상 TWAIN 드라이버와 서버 스캐닝 응용프로그램은 이 단계중에 필수적인 사용자 인터페이스를 제공한다.The above configuration for command processing has a general feature and does not depend on the type of command except for the amount of data sent from the user to the server and the amount of data sent from the server to the user. However, for easy monitoring and ease of use of scanning, the virtual TWAIN driver and server scanning application provide an essential user interface during this step.
따라서, 가상 TWAIN 드라이버는 서버와의 접속의 순간으로부터 이 접속의 종료시까지 작업 처리상의 정보를 표시한다. (도5 참조) 그리고, 스캐닝을 시작하라는 명령어(DG_CONTROL/DAT_USERINTERFACE/MSG_ENABLEDS)의 수신시에, 사용자는 스캐닝을 개시하는 권한을 갖거나 또는 이 단계로부터 멈춘다. (도6 참조) 사용자 승인이 수신된 이후에만, "스캐닝 시작" 명령어가 서버로 전달된다. 스캐닝 중지는 서버로의 어드레스 없이도 에러코드를 수반하며 피드백 메시지의 수신을 초래한다.Therefore, the virtual TWAIN driver displays information on the work process from the moment of connection with the server until the end of this connection. Then, upon receipt of a command to start scanning (DG_CONTROL / DAT_USERINTERFACE / MSG_ENABLEDS), the user has the authority to start scanning or stops from this step. Only after the user acknowledgment is received, the "Start Scanning" command is sent to the server. Stopping scanning involves an error code without an address to the server and results in the receipt of a feedback message.
서버상에도 선택을 위하여 동일한 옵션을 갖는 "스캐닝 시작"이라는 유사한 정보가 표시된다. (도7 참조) 이것은 "스캐닝의 시작을 윈도우에 나타내라"는 서비스 명령어를 서버에 전송하는 것에 의해 이루어진다. 이후에, 상기 가상 TWAIN 드라이버는 "사용자 선택"이라는 서비스 명령어를 통하여 서버에게 주기적으로 질의하면서, 사용자 컴퓨터상이나 또는 서버 컴퓨터상에 사용자 입력을 대기한다. 사용자가 서버상에서 그의 선택을 완료하자마자 서버상의 정보 윈도우가 닫혀지고, 사용자는 적절한 응답을 수신하며 작업을 시작할 수 있는데, 즉 상기 절차는 사용자 컴퓨터상에서의 선택과 동일하다. 만일 상기 선택이 사용자 컴퓨터에서 발생하는 경우, 서비스 명령어 "CLOSE START SCANNING WINDOW"가 서버로 전송된다.Similar information is displayed on the server as "Start Scanning" with the same options for selection. This is done by sending a service command to the server, "indicate the start of scanning in the window." Thereafter, the virtual TWAIN driver periodically queries the server through a service command of "user selection", waiting for user input on the user computer or on the server computer. As soon as the user completes his selection on the server, the information window on the server is closed and the user can start working with the appropriate response, ie the procedure is the same as the selection on the user's computer. If the selection occurs at the user's computer, the service command "CLOSE START SCANNING WINDOW" is sent to the server.
스캐닝중에(명령어 DG_CONTROL/DAT_USERINTERFACE/MSG_DISABLEDS까지), 상기 가상 TWAIN 드라이버는 스캐닝 과정을 중지할 수 있는 권한을 사용자에게 제공한다. (도8 참조) 이 경우, 서비스 명령어 "INTERRUPT SCANNING"는 스캐너에게 어드레스되며, 이것이 처리되자마자 서버는 IID 제어모듈에게 적절한 메시지를 전송한다.During scanning (up to command DG_CONTROL / DAT_USERINTERFACE / MSG_DISABLEDS), the virtual TWAIN driver gives the user the right to stop the scanning process. In this case, the service command "INTERRUPT SCANNING" is addressed to the scanner, and as soon as it is processed, the server sends an appropriate message to the IID control module.
사용자 컴퓨터와 서버는 다른 서비스 명령어나 적절한 응답을 교환함으로써 본 명세서에서 설명하지 않은 기능을 수행할 수도 있다.The user computer and server may perform functions not described herein by exchanging other service commands or appropriate responses.
본 발명은 로컬 또는 글로벌 컴퓨터 네트워크에서 동작하는 컴퓨터들에 연결되어 있는 이미지 입력 장치들로부터 이미지 입력을 위해 수행될 수 있다. 본 발명의 실시에 의해 무한한 개수의 원격 사용자가 네트워크내에서 컴퓨터에 국부적으로 연결되어 있는 이미지 입력 장치를 액세스할 수 있다. 단, 상기 이미지 입력 장치는 단독 사용자에 의해 단번에 사용된다. 따라서, 이 이미지 입력 장치의 사용상에 있어서 이미지 입력 장치의 이용효율과 편리함의 효율이 증대된다.The invention can be performed for image input from image input devices connected to computers operating in a local or global computer network. Implementation of the present invention allows an infinite number of remote users to access an image input device that is locally connected to a computer within the network. However, the image input device is used at once by a single user. Therefore, the use efficiency and convenience of the image input device are increased in use of the image input device.
Claims (27)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2001132215 | 2001-11-29 | ||
RU2001132215/09A RU2001132215A (en) | 2001-11-29 | 2001-11-29 | Method and system for network image scanning |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030044762A true KR20030044762A (en) | 2003-06-09 |
Family
ID=20254514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020020031343A KR20030044762A (en) | 2001-11-29 | 2002-06-04 | Method and system of network image scanning |
Country Status (6)
Country | Link |
---|---|
US (1) | US20030101289A1 (en) |
EP (1) | EP1317126A3 (en) |
JP (1) | JP2003198780A (en) |
KR (1) | KR20030044762A (en) |
CN (1) | CN1421773A (en) |
RU (1) | RU2001132215A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101034757B1 (en) * | 2009-07-09 | 2011-05-17 | 남윤구 | The sprinkling water hose for vinyl house and its manufacturing method |
KR20130042402A (en) * | 2011-10-18 | 2013-04-26 | 삼성전자주식회사 | User terminal device and server device for performing scan job, scan system comprising them, and methods thereof |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3811085B2 (en) * | 2002-03-18 | 2006-08-16 | 株式会社Pfu | Scanner system |
US7680758B2 (en) * | 2004-09-30 | 2010-03-16 | Citrix Systems, Inc. | Method and apparatus for isolating execution of software applications |
JP4942142B2 (en) * | 2005-12-06 | 2012-05-30 | キヤノン株式会社 | Image processing apparatus, control method therefor, and program |
US8107469B2 (en) | 2007-03-15 | 2012-01-31 | Microsoft Corporation | Enabling routing of data on a network based on a portion of data accessed from a non-network enabled device |
US20080225828A1 (en) * | 2007-03-15 | 2008-09-18 | Microsoft Corporation | Enabling routing of data on a network |
KR101161344B1 (en) * | 2007-07-11 | 2012-06-29 | 삼성전자주식회사 | Scanning method and system using TWAIN diriver |
US9613049B2 (en) | 2008-09-09 | 2017-04-04 | Applied Systems, Inc. | Document integration and distribution system, method and device |
US8688744B2 (en) * | 2008-09-09 | 2014-04-01 | Applied Systems, Inc. | Method, system, and apparatus for scanning and importing documents |
JP5473755B2 (en) * | 2010-04-27 | 2014-04-16 | キヤノン株式会社 | Information processing apparatus, control method thereof, and program |
US20110304740A1 (en) * | 2010-06-10 | 2011-12-15 | Apteryx, Inc. | Universal image capture manager |
CN102340513A (en) * | 2010-07-15 | 2012-02-01 | 江苏国光信息产业股份有限公司 | WinCE system-based method for realizing scanning in remote desktop mode |
CN102857528A (en) * | 2011-06-29 | 2013-01-02 | 鸿富锦精密工业(深圳)有限公司 | Network file scanning device and network file scanning method |
CN102752281B (en) * | 2012-05-28 | 2015-06-17 | 福建升腾资讯有限公司 | Remote redirection method and system of TWAIN protocol |
CN105700864A (en) * | 2014-11-28 | 2016-06-22 | 华为技术有限公司 | TWAIN protocol remote redirection method, apparatus and system |
CN108964844B (en) * | 2018-06-29 | 2021-08-31 | 东软医疗系统股份有限公司 | Data transmission method and device, electronic equipment and CT (computed tomography) rack |
CN110933245B (en) * | 2019-11-21 | 2021-11-19 | 深信服科技股份有限公司 | Virtual machine, data transmission method, system, equipment and computer medium |
CN111490910A (en) * | 2020-03-27 | 2020-08-04 | 深圳融安网络科技有限公司 | Device information scanning method, terminal device and computer readable storage medium |
US11778466B2 (en) | 2020-09-21 | 2023-10-03 | Bank Of America Corporation | System for secure resource allocation communication with a network |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5911044A (en) * | 1996-11-08 | 1999-06-08 | Ricoh Company, Ltd. | Network image scanning system which transmits image information from a scanner over a network to a client computer |
US6233237B1 (en) * | 1998-02-02 | 2001-05-15 | 3Com Corporation | Method and protocol for connecting data calls using R2 signaling |
US6167462A (en) * | 1998-12-11 | 2000-12-26 | Hewlett-Packard Company | Remote scanning through a computer system network |
JP2002077274A (en) * | 2000-08-31 | 2002-03-15 | Toshiba Corp | Home gateway device, access server and communication method |
US20020067224A1 (en) * | 2000-12-06 | 2002-06-06 | Mustek Systems Inc. | System and method for scanner executing scanning |
US7043757B2 (en) * | 2001-05-22 | 2006-05-09 | Mci, Llc | System and method for malicious code detection |
US6980332B2 (en) * | 2001-06-26 | 2005-12-27 | Hewlett-Packard Development Company, L.P. | System and method of automated scan workflow assignment |
-
2001
- 2001-11-29 RU RU2001132215/09A patent/RU2001132215A/en not_active Application Discontinuation
-
2002
- 2002-04-23 US US10/127,682 patent/US20030101289A1/en not_active Abandoned
- 2002-06-04 KR KR1020020031343A patent/KR20030044762A/en not_active Application Discontinuation
- 2002-06-28 CN CN02125128A patent/CN1421773A/en active Pending
- 2002-11-13 EP EP02257845A patent/EP1317126A3/en not_active Withdrawn
- 2002-11-27 JP JP2002344606A patent/JP2003198780A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101034757B1 (en) * | 2009-07-09 | 2011-05-17 | 남윤구 | The sprinkling water hose for vinyl house and its manufacturing method |
KR20130042402A (en) * | 2011-10-18 | 2013-04-26 | 삼성전자주식회사 | User terminal device and server device for performing scan job, scan system comprising them, and methods thereof |
Also Published As
Publication number | Publication date |
---|---|
RU2001132215A (en) | 2003-07-20 |
JP2003198780A (en) | 2003-07-11 |
EP1317126A3 (en) | 2005-08-17 |
US20030101289A1 (en) | 2003-05-29 |
EP1317126A2 (en) | 2003-06-04 |
CN1421773A (en) | 2003-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20030044762A (en) | Method and system of network image scanning | |
US8928908B2 (en) | Multifunction peripheral (MFP) and a method for restricting use thereof | |
US5911044A (en) | Network image scanning system which transmits image information from a scanner over a network to a client computer | |
US6457040B1 (en) | Method and system for a distributed network computing system for providing application services | |
US6349336B1 (en) | Agent/proxy connection control across a firewall | |
US7624439B2 (en) | Authenticating resource requests in a computer system | |
JP2006209504A (en) | Network compatible image forming system | |
US9710676B2 (en) | Data processing apparatus, information processing apparatus, and storage medium | |
JPH10164072A (en) | Device and method for processing data | |
CN110996059A (en) | Data transmission method and system | |
JP4730604B2 (en) | Image forming apparatus | |
US20020051187A1 (en) | Web server and facsimile machine having web server function | |
US6934374B2 (en) | System and method for data communication | |
JP6032906B2 (en) | Image processing system, image processing apparatus, control method for image processing apparatus, and program | |
JP2001024840A (en) | Facsimile modem device | |
JP3598459B2 (en) | Facsimile apparatus and control method thereof | |
US11350009B2 (en) | Sever for sending facsimile request information to function execution device by using server-push communication | |
JP3642458B2 (en) | Control method for network facsimile communication system and network facsimile apparatus | |
JP3642459B2 (en) | Network facsimile communication system control method, network facsimile apparatus, and workstation apparatus | |
JP2622558B2 (en) | Facsimile communication device | |
JP2011135300A (en) | Facsimile device, and facsimile program | |
JPH04223673A (en) | Transmitting device | |
KR20030056620A (en) | Real time fax transmitting limit method using dual lines function | |
JPH10341305A (en) | Control method for network facsimile equipment | |
JP2000244700A (en) | Method for controlling network facsimile communication system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |