종래의 인쇄 환경에서, LAN(local area network) 등의 폐쇄형 컴퓨터 네트워크를 통해 상호 접속되는 컴퓨터를 조작하는 이용자는 제공되어질 그들의 컴퓨터 상에서 실행중인 어플리케이션에 의해 생성된 문서를, 프린터, 플로터 등과 같이 네트워크에 접속된 출력 장치 상에 제공할 수도 있다. 현재의 급진적인 모바일 비즈니스 환경에서, 이러한 제한된 인쇄 해결책은 더 이상 충분하지 않다. 종래의 인쇄 기술은 고해상도, 향상된 품질 및 칼라를 갖고 보다 신속하게 문서를 출력하기 위해 진보해 온 것은 분명하지만, 현재의 모바일 역량(workforce)을 만족시키는 인쇄 기술을 개발하기 위한 노력은 거의 없었다.In a conventional printing environment, a user operating a computer that is interconnected through a closed computer network such as a local area network (LAN) may use a network, such as a printer or plotter, to generate documents generated by an application running on their computer to be provided. It can also be provided on an output device connected to. In today's radical mobile business environment, this limited printing solution is no longer sufficient. While conventional printing techniques have evolved to print documents faster with higher resolution, improved quality and color, little effort has been made to develop printing techniques that meet current mobile workforce.
현재의 모바일 비즈니스 환경에서, 종래의 인쇄 환경의 개발자에 의해 고려되지 않거나 어드레스되지 않는 많은 인쇄 시나리오가 발생한다. 예컨대, 다음의 상황이 고려된다. 파트너의 사무실에서 사업 계획을 논의하기 위한 준비를 하면서, 비즈니스 개발자가 그 회사의 홈 네트워크 상에 저장된 필요한 계약서를 파트너 네트워크의 프린터로 제공할 수 있는가? 이동 외판원이 근처의 프린터로 그녀의 프리젠테이션 슬라이드를, 그녀가 프리젠테이션 슬라이더를 가지고 있지 않은 경우에도 보다 쉽게 인쇄할 수 있는가?In the current mobile business environment, many printing scenarios arise that are not considered or addressed by developers of conventional printing environments. For example, the following situation is considered. As the partner's office prepares to discuss the business plan, can the business developer provide the necessary contracts stored on the company's home network to the printers in the partner network? Is it easier for a traveling salesman to print her presentation slides to a nearby printer, even if she doesn't have a presentation slider?
블루투스 핸드세트 이용자가 실내로 들어가고, 블루투스 가능한 프린터의 유무를 탐색하고, 프린터가 블루투스형이 아닌 경우에도 근방의 프린터를 이용하여 인쇄할 수 있는가? 인스턴트 메시지 사용자가 친구의 프린터 목록으로 문서를 드래그 앤 드롭(drag and drop)하여 문서를 인쇄할 수 있는가? 공항의 벤처 사업가(venture capitalist)가 그의 셀룰러 폰을 이용하여 그의 사무실에서 필요한 문서를 인쇄할 수 있는가? 이러한 각각의 상황에 대해 인쇄 해결책을 제공하는 것이 바람직하고, 이는 다른 비슷한 시나리오에 대해서도 마찬가지이다.Can a Bluetooth handset user enter the room, search for the presence of a Bluetooth enabled printer, and print using a nearby printer even if the printer is not Bluetooth? Can an instant message user print a document by dragging and dropping it onto a friend's printer list? Can a venture capitalist at an airport use his cellular phone to print the necessary documents in his office? It is desirable to provide a printing solution for each of these situations, as is the case for other similar scenarios.
본 발명은 네트워크 접속 인쇄 환경(networked printing environment)에 관한 것으로, 보다 상세하게는 네트워크 접속 인쇄 환경 및 출력 요구의 관리에 관한 것이지만, 이에 한정되지는 않는다.FIELD OF THE INVENTION The present invention relates to networked printing environments, and more particularly to, but not limited to, management of networked printing environments and output requests.
도1은 메시지 센터(MC)에 의해 수행되는 각종 태스크(task)를 나타내는 개략적인 블록도.1 is a schematic block diagram illustrating various tasks performed by a message center MC.
도2는 인쇄 서비스(PS)에 의해 수행되는 각종 태스크를 나타내는 개략적인 블록도.2 is a schematic block diagram illustrating various tasks performed by a print service (PS).
도3은 원격 데스크탑 클라이언트(RDC:Remote Desktop Client)에 의해 수행되는 각종 태스크를 나타내는 개략적인 블록도.3 is a schematic block diagram illustrating various tasks performed by a Remote Desktop Client (RDC).
도4는 무선 데이터 액세스 포인트(WDAP:Wireless Data Access Point)에 의해 수행되는 각종 태스크를 나타내는 개략적인 블록도.4 is a schematic block diagram illustrating various tasks performed by a wireless data access point (WDAP).
도5는 간단한 출력 관리 시스템 구현을 나타내는 개략도.5 is a schematic diagram illustrating a simple output management system implementation.
도6은 보다 복잡한 출력 관리 시스템 구현을 나타내는 개략도.6 is a schematic diagram illustrating a more complex output management system implementation.
도7은 루트 메시지 센터와 사설 네트워크에 접속된 메시지 센서 사이의 인터액션(interaction)의 개략도.7 is a schematic diagram of an interaction between a root message center and a message sensor connected to a private network.
도8은 P2P(peer-to-peer) 메시지 센터 접속을 설정하기 위해 이용되는 셋업 동작을 나타내는 개략도.8 is a schematic diagram illustrating a setup operation used to establish a peer-to-peer message center connection.
도9는 RDC와 RDC 클라이언트 등록 요구(Client Registration Request)와 일치하는 메시지 센터 사이의 인터액션을 나타내는 흐름도.9 is a flow diagram illustrating interaction between an RDC and a message center that matches an RDC Client Registration Request.
도10은 RDC 프린터 등록 요구에 대응하는 흐름도.Fig. 10 is a flowchart corresponding to an RDC printer registration request.
도11은 장치 리소스 정의(Device Resource Definition)를 메시지 센터에 제공하는 RDC에 대응하는 흐름도.FIG. 11 is a flowchart corresponding to an RDC providing a device resource definition to a message center; FIG.
도12는 홈 메시지 센터를 거쳐 루트 메세지 센터로의 공중 장치 질의(public device query)의 흐름도.12 is a flow diagram of a public device query via a home message center to a root message center.
도13은 홈 도메인 내의 인쇄 서비스에 직접 접속된 출력 장치로의, 홈 도메인 내의 이용자에 의해 발행된 리퍼런스에 의한 인쇄(PBR:Print By Referece) 작업 요구에 대응하는 흐름도.Figure 13 is a flowchart corresponding to a Print By Referece (PBR) job request issued by a user in the home domain to an output device directly connected to a print service in the home domain.
도14는 도13의 PBR 작업 요구에 대응하는 구성요소 인터액션 도면.FIG. 14 is a diagram of component interaction corresponding to the PBR job request of FIG.
도15는 홈 도메인 내의 인쇄 서비스에 직접 접속되는 출력 장치로의, 홈 도메인 내의 이용자에 의해 발행된 비-PBR(non-PBR) 작업 요구에 대응하는 흐름도.Fig. 15 is a flowchart corresponding to a non-PBR job request issued by a user in a home domain to an output device directly connected to a print service in the home domain.
도16은 홈 도메인 내의 원격 데스크탑 클라이언트(Remote Desktop Client)에 접속되는 로컬 프린터로의, 홈 도메인 내의 이용자에 의해 제공된 PBR 작업 요구에 대응하는 흐름도.Figure 16 is a flowchart corresponding to a PBR job request provided by a user in a home domain to a local printer connected to a Remote Desktop Client in a home domain.
도17은 도16의 PBR 작업 요구에 대응하는 구성요소 인터액션 도면.FIG. 17 is a diagram of component interaction corresponding to the PBR job request of FIG. 16; FIG.
도18은 루트 메시지 센터 공중 출력 장치(D1)상으로 인쇄될 홈 도메인(예컨대, 구역1) 내의 이용자에 의해 제공되는 PBR 작업 요구에 대응하는 흐름도.Figure 18 is a flowchart corresponding to a PBR job request provided by a user in a home domain (e.g., Zone 1) to be printed onto the root message center public output device D1.
도19는 도18의 PBR 작업 요구에 대응하는 구성요소 인터액션 도면.FIG. 19 is a diagram of component interaction corresponding to the PBR job request of FIG. 18; FIG.
도20은 시스템에서의 메시지 센터와 인터액션하기 위한 3가지 우선 액세스 메커니즘(three primary access mechanism)을 나타내는 개략도.FIG. 20 is a schematic diagram illustrating three primary access mechanisms for interacting with a message center in a system. FIG.
도21은 이용자가 SDAP를 통해 작업 요구를 제공했을 때, 동적 디폴트 프린터(dynamic default printer)를 결정하기 위해 이용되는 동작을 나타내는 개략도.Figure 21 is a schematic diagram illustrating an operation used to determine a dynamic default printer when a user provides a job request via SDAP.
도22a 및 도22b는 블루투스-인에이블 방식의 발신 장치의 이용자가 블루투스 장치 에뮬레이터(emulator)를 포함하는 WDAP를 통해 작업 요구를 제공했을 때, 동적 디폴트 프린터를 결정하기 위해 이용되는 동작을 나타내는 개략도.22A and 22B are schematic diagrams illustrating operations used to determine a dynamic default printer when a user of a Bluetooth-enabled originating device provides a work request via WDAP including a Bluetooth device emulator.
도23은 출력 관리 시스템의 전형적인 구현 동안 부딪칠 수도 있는 각종 접속 경로 및 접속 형태를 나타내는 일반적인 시스템 접속 토폴리지 도면.Figure 23 is a general system connection topology diagram illustrating various connection paths and connection types that may be encountered during a typical implementation of an output management system.
도24는 내부 구역 메시지 센터(Inter-Zone Message Center) 및 공중 RDC를 통해 통제되는 작업 요구의 프로세싱 동안 수행되는 동작을 나타내는 흐름도.FIG. 24 is a flow diagram illustrating operations performed during processing of a work request controlled through an Inter-Zone Message Center and a public RDC. FIG.
도25는 본 발명의 일실시예에 따른 4-계층 아키텍처(4-tier architecture)에 대응하는 개략적인 블록도.Figure 25 is a schematic block diagram corresponding to a 4-tier architecture in accordance with an embodiment of the present invention.
도26은 메시지 센터에 의해 제공되는 동작을 구현하기 위해 이용되는 것에 대응하는 각종 소프트웨어 모듈 및 데이터베이스를 나타내는 개략적인 블록도.Figure 26 is a schematic block diagram illustrating various software modules and databases corresponding to those used to implement the operations provided by the message center.
도27은 인쇄 서비스에 의해 구현되는 각종 소프트웨어 구성요소를 나타내는 개략적인 블록도.Figure 27 is a schematic block diagram illustrating various software components implemented by a print service.
도28은 인쇄 서비스에 의해 이용되는 각종 CGI 스크립트를 나타내는 개략적인 블록도.Fig. 28 is a schematic block diagram showing various CGI scripts used by the print service.
도29는 드라이버 인쇄 서버에 의해 구현되는 각종 소프트웨어 구성요소를 나타내는 개략적인 블록도.Fig. 29 is a schematic block diagram showing various software components implemented by the driver print server.
도30은 인쇄 서비스에 제공된 인쇄 요구에 대응하는 전형적인 데이터 플로우 프로세스를 나타내는 개략도.30 is a schematic diagram illustrating an exemplary data flow process corresponding to a print request provided to a print service.
도31은 인쇄 서비스의 무-드라이버(driverless) 프린터 서버에 의해 제공되는 동작 및 로직을 나타내는 개략도와 흐름도의 조합적인 도면.FIG. 31 is a combination of schematic diagrams and flow diagrams illustrating the operation and logic provided by a driverless printer server for print services. FIG.
도32는 인쇄 작업을 프로세스할 때 런치될 수도 있는 각종 다이얼로그 및 메시지 박스를 통제하기 위해 통제 윈도우 구성요소에 의해 채용되는 동작 및 로직을 나타내는 흐름도 및 개략도.Figure 32 is a flow diagram and schematic diagram illustrating the operations and logic employed by the control window component to control various dialogs and message boxes that may be launched when processing a print job.
도33은 출력 관리 시스템을 통해 이용자가 파일 서버 액세스를 셋업할 수 있게 하는 웹-기반 이용자 인터페이스를 나타내는 도면.Figure 33 illustrates a web-based user interface that allows a user to set up file server access via an output management system.
도34는 다수의 파일 서버가 액세스를 위해 셋업된 후의 도33의 웹-기반(Web-based) UI를 나타내는 도면.FIG. 34 illustrates the Web-based UI of FIG. 33 after multiple file servers have been set up for access. FIG.
도35는 이용자가 주요 프린터의 리스트를 셋업할 수 있게 해주는 웹-기반 UI를 나타내는 도면.35 illustrates a web-based UI that allows a user to set up a list of major printers.
도36은 이용자가 시스템 관리자에 의해 사전에 구성된 프린터를 검색할 수 있게 해주는 웹-기반 UI를 나타내는 도면.FIG. 36 illustrates a web-based UI that allows a user to search for a printer preconfigured by a system administrator. FIG.
도37은 다수의 프린터가 주요 프린터의 리스트에 추가된 후의 도35의 웹-기반 UI를 나타내는 도면.Figure 37 illustrates the web-based UI of Figure 35 after a number of printers have been added to the list of major printers.
도38은 도39 내지 도52에서의 WAP-기반 이용자 인터페이스 항목에 대응하는 범례(legend)를 나타내는 도면.FIG. 38 illustrates a legend corresponding to the WAP-based user interface item in FIGS. 39-52. FIG.
도39는 가입자 로그인 프로세스에 대응하는 WAP UI 흐름도의 제1 부분을 나타내는 도면.FIG. 39 illustrates a first portion of a WAP UI flowchart corresponding to a subscriber login process; FIG.
도40는 가입자 로그인 프로세스에 대응하는 WAP UI 흐름도의 제2 부분을 나타내는 도면.40 illustrates a second portion of a WAP UI flow chart corresponding to a subscriber login process.
도41은 subOutputlndex.pl CGI 스크립트에 대응하는 WAP UI 흐름도.Fig. 41 is a WAP UI flowchart corresponding to the subOutputlndex.pl CGI script.
도42는 출력할 문서를 검색하기 위해 네트워크의 네비게이션을 가능하게 하는 카드 세트에 대응하는 WAP UI 흐름도.Figure 42 is a WAP UI flow chart corresponding to a set of cards enabling navigation of the network to retrieve documents for output.
도43은 네트워크 사이트, 팩스 머신, 이메일 어드레스의 추가에 대응하는 WAP UI 흐름도.Fig. 43 is a WAP UI flowchart corresponding to the addition of a network site, a fax machine, and an email address.
도44는 네트워크 사이트가 이용자의 네트워크 사이트 리스트에 추가되어진 것을 이용자에게 알리기 위해 이용되는 WAP UI 도면.Figure 44 is a WAP UI diagram used to inform a user that a network site has been added to a user's network site list.
도45는 주요 프린터의 리스트로의 새로운 프린터의 추가에 대응하는 WAP UI 흐름도.45 is a WAP UI flow chart corresponding to the addition of a new printer to the list of main printers.
도46은 팩스 머신이 이용자의 팩스 리스트에 추가되어진 것을 이용자에게 알리기 위해 이용되는 WAP UI 도면.Figure 46 is a WAP UI diagram used to inform a user that a fax machine has been added to a user's fax list.
도47은 이메일 이름이 이용자의 콘택 리스트에 추가되어진 것을 이용자에게 알기이 위해 이용되는 WAP UI 도면.Fig. 47 is a WAP UI diagram used to inform a user that an e-mail name has been added to the user's contact list.
도48은 선택된 문서 및 출력 장치의 확인에 대응하는 WAP UI 흐름도.48 is a WAP UI flow chart corresponding to confirmation of the selected document and output device.
도49는 새로운 팩스를 이용자의 주요 팩스 리스트에 추가하는 것에 대응하는 WAP UI 흐름도.Figure 49 is a WAP UI flow diagram corresponding to adding a new fax to the user's main fax list.
도50은 새로운 이메일 콘택을 이용자의 콘택 리스트에 추가하는 것에 대응하는 WAP UI 흐름도.50 is a WAP UI flow diagram corresponding to adding a new email contact to a user's contact list.
도51은 작업 큐로의 인쇄, 팩싱, 및 이메일 작업을 삽입하는 것에 대응하는 WAP UI 흐름도.Figure 51 is a WAP UI flow chart corresponding to inserting a print, fax, and email job into a job queue.
도52는 이용자 요구에 응답하여 PIN이 이메일을 통해 이용자에게 성공적으로 송신되었는지의 여부를 가리키는 WAP UI 흐름도.Fig. 52 is a WAP UI flow diagram indicating whether a PIN was successfully sent to a user via e-mail in response to a user request.
도53은 저해상도 스크린을 갖는 장치 상에서의 문서 미리보기를 위해 최초의 문서 이미지가 각종 크기의 인쇄견본(thumbnail)으로 어떻게 변환되는지를 나타내는 도면.Figure 53 illustrates how the original document image is converted into thumbnails of various sizes for document preview on a device with a low resolution screen.
도54는 문서가 선택된 출력 장치 상에서 출력될 때, 문서가 어떻게 나타날지를 미리보기 위해, 어떻게 이용자가 문자-기반(text-based) 문서의 부분들을 통해 네비게이트할 수 있는지를 나타내는 개략도.54 is a schematic diagram showing how a user can navigate through portions of a text-based document to preview how the document will appear when the document is output on the selected output device.
도55는 문서가 선택된 출력 장치 상에 출력될 때, 문서가 어떻게 나타날지를 미리보기 위해, 어떻게 이용자가 스프레드시트 문서의 부분들을 통해 네비게이트할 수 있는지를 나타내는 개략도.Figure 55 is a schematic diagram illustrating how a user can navigate through portions of a spreadsheet document to preview how the document will appear when the document is output on the selected output device.
도56은 어떻게 출력 관리 시스템 아키텍처의 이론이 인스턴트 메시지 서비스를 통해 공유하는 리소스를 지원하기 위해 연장될 수 있는지를 나타내는 개략도.56 is a schematic diagram illustrating how the theory of an output management system architecture can be extended to support resources sharing via an instant message service.
도57은 멀티미디어 메시지-인에이블 방식의 장치를 통해 어떻게 이 시스템이 이용될 수 있는지를 나타내는 개략도.Fig. 57 is a schematic diagram showing how this system can be used through a multimedia message-enabled device.
도58은 시스템에 의해 이용되는 리소스를 포함하는 사설 네트워크의 보안성을 향상시키기 위해 어떻게 CGI VPN 프록시가 구현되는지를 나타내는 개략도.58 is a schematic diagram illustrating how a CGI VPN proxy is implemented to improve the security of a private network including resources used by the system.
도59a는 메시지 센터를 포함하지 않는 사설 네트워크 상에 위치된 출력 장치로의 액세스를 가능하게 하기 위한 제1 구성을 나타내는 개략도.59A is a schematic diagram illustrating a first configuration for enabling access to an output device located on a private network not including a message center.
도59b는 메시지 센터를 포함하지 않는 사설 네트워크 상에 위치된 출력 장치로의 액세스를 가능하게 하기 위한 제2 구성을 나타내는 개략도.59B is a schematic diagram illustrating a second configuration for enabling access to an output device located on a private network that does not include a message center.
도60은 메시지 센터 및 사설 서비스를 포함하는, 시스템의 호스트 각종 구성요소에 이용될 수도 있는 컴퓨터 서버의 개략도.60 is a schematic diagram of a computer server that may be used for host various components of a system, including message center and private services.
본 발명의 양태에 의하면, 각종 타입의 컴퓨터 네트워크를 통해 인쇄, 팩스전송, 이메일 등의 출력을 관리하기 위한 시스템 및 방법을 제공한다. 일양태에 있어서, 이 방법은 무선 장치를 통한 인쇄를 제공한다. 이 시스템은 렌더링 가능한 데이터를 무선 장치에 제공하고, 그에 따라 이용자 인터페이스(UI)는 렌더링될 수도 있다. UI는 이용자가 소스 데이터 및 소스 데이터가 인쇄될 출력 장치를 선택할수 있게 해준다. 이어서, 소스 데이터는 로컬 또는 원격 스토어로부터 검색되고, 선택된 소스 데이터 및 출력 장치에 대응하는 출력 이미지 데이터를 렌더링하는 인쇄 서비스로 포워딩된다. 이어서, 출력 이미지 데이터는 물리적으로 렌더링되어지는 출력장치로 제공된다. 이용자 인터페이스는 무선 및 유선 장치가 이 시스템을 액세스할 수 있게 해준다. 이 시스템은 문서가 리퍼런스에 의해 인쇄될 수 있게 해주고, 방화벽 뒤의 리소스로의 액세스를 가능하게 해준다.According to an aspect of the present invention, there is provided a system and method for managing output of printing, faxing, e-mail and the like through various types of computer networks. In one aspect, the method provides printing via a wireless device. The system provides renderable data to the wireless device so that the user interface (UI) may be rendered. The UI allows the user to select the source data and the output device on which the source data will be printed. The source data is then retrieved from a local or remote store and forwarded to a print service that renders the output image data corresponding to the selected source data and output device. The output image data is then provided to an output device that is physically rendered. The user interface allows wireless and wired devices to access the system. This system allows documents to be printed by reference and allows access to resources behind the firewall.
모바일 이용자 및 지상-유선 이용자에게 인쇄 해결책을 제공하는 출력 관리 시스템 및 방법의 실시예를 이하에 설명한다. 다음의 설명에서, 본 발명의 실시예의 이해를 돕기 위해 아키텍처 구현 등과 같은 다수의 특정 항목을 설명한다. 그러나, 당업자는 본 발명이 하나 또는 그 이상의 특정 항목, 구성요소, 재료 없이, 또는 기타 방법으로 실시될 수 있다는 것을 알아야한다. 즉, 통상적인 구조, 재료, 또는 동작은 본 발명을 모호하게 하는 것을 회피하기 위해 도시되지 않거나 상세하게 설명되지 않는다.Embodiments of an output management system and method for providing printing solutions to mobile users and land-wired users are described below. In the following description, numerous specific items are described, such as architecture implementations, etc., to facilitate understanding of embodiments of the present invention. However, one of ordinary skill in the art appreciates that the present invention may be practiced without one or more specific items, components, materials, or in other ways. That is, conventional structures, materials, or operations are not shown or described in detail in order to avoid obscuring the present invention.
"하나의 실시예(one embodiment)" 또는 "실시예(a embodiment)"는 실시예와연관되어 설명되는 특정 특성, 구조, 또는 특징이 본 발명의 적어도 하나의 실시예에 포함되는 것을 의미한다. 따라서, 본 명세서에서 다양하게 표현되는 "하나의 실시예에서(in one embodiment)" 또는 "실시예에 있어서(in a embodiment)"라는 구문은 동일한 실시예를 모두 참조할 필요는 없다. 게다가, 특정 특성, 구조, 또는 특징은 하나 또는 그 이상의 실시예와 적당한 방식으로 조합될 수 있다."One embodiment" or "a embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the phrases “in one embodiment” or “in a embodiment”, as variously expressed herein, need not refer to the same embodiment all. In addition, certain features, structures, or features may be combined with one or more embodiments in a suitable manner.
이하의 용어 및 그 정의는 이하의 설명에 자주 이용된다.The following terms and their definitions are frequently used in the following description.
소스 데이터(Source Data): 소스 데이터는 검색되어 장치로 출력될 수 있는 임의의 문서 또는 미디어를 나타낸다. 지원되는 입력 데이터 포맷은 대부분의 문서 프로세서 지원 형태(예컨대 PDF, PostScript, MicrosoftWord, ASCII text 등), 웹 URL 링크, 이메일, 및 이메일 첨부물을 포함하지만 이에 한정되지는 않는다.Source Data : Source data represents any document or media that can be retrieved and output to the device. Supported input data formats include, but are not limited to, most document processor support forms (eg, PDF, PostScript, Microsoft Word, ASCII text, etc.), web URL links, emails, and email attachments.
원격 스토어(Remote Store): 원격 스토어는 소스 데이터가 저장되는 LAN 또는 인터넷 상의 원격 위치(remote location)를 포함한다. 원격 스토어는 FTP 컨텐츠 서버, NFS 파일 서버, PCNFS 파일 서버, 및 웹 서버를 포함하지만 이에 한정되지는 않는다.Remote Store : The remote store includes a remote location on the LAN or the Internet where the source data is stored. Remote stores include, but are not limited to, FTP content servers, NFS file servers, PCNFS file servers, and web servers.
로컬 소스(Local Source): 로컬 소스는 인쇄 요구가 발행되는 동일한 이용자 장치 상에 저장되는 소스 데이터를 포함한다. 따라서, 로컬 소스로부터 인쇄되면, 소스 데이터는 프로세싱을 위해 이용자 장치로부터 출력 관리 시스템 상으로 업로드되어야 한다.Local Source : The local source includes source data stored on the same user device where the print request is issued. Thus, once printed from a local source, the source data must be uploaded from the user device onto the output management system for processing.
원격 소스(Remote Source): 원격 스토어 상에 저장되는 소스 데이터를 포함한다.Remote Source : Contains source data stored on the remote store.
발신 장치(Originating Device): 이용자가 작업 요구를 발신하는 무선 또는 유선 장치.Originating Device : A wireless or wired device from which a user sends a work request.
출력 장치(Output Device): 출력장치는 시스템으로부터 이미지 데이터를 추출하고, 이들을 열람(viewing) 또는 기록할 목적으로 특정한 형태로 전환한다. 지원되는 출력 장치는 프린터, 팩스 머신, 원격 문서 리포지토리(repository), 및 이메일 목적지를 포함하지만 이에 한정되지는 않는다. 이들 출력 장치는 LAN에 놓여질 수도 있고, 또는 인터넷과 같은 공중 액세스 가능한 네트워크 및 사설 네트워크를 포함하는 외부 네트워크 상에 존재할 수도 있다.Output Device : The output device extracts image data from the system and converts it into a specific form for viewing or recording them. Supported output devices include, but are not limited to, printers, fax machines, remote document repositories, and email destinations. These output devices may be placed in a LAN or may reside on an external network, including publicly accessible networks and private networks such as the Internet.
작업 요구(Job Request): 작업 요구는 처리 및 출력 장치로 송신되어질, 이용자가 시스템에 제공하는 요구를 나타낸다.Job Request : A job request represents a request that a user provides to the system to be sent to a processing and output device.
요구 상태(Job Status): 요구 상태는 요구 프로세싱의 현재 진도를 나타내는 작업 요구의 상태를 나타낸다. 이는 이용자가 그들의 작업 요구의 상태의 이해를 돕고, 관리자가 이들을 관리하는 것을 돕기 위한 메커니즘을 나타낸다.Job Status : The request status indicates the status of the job request indicating the current progress of request processing. This represents a mechanism to help users understand the status of their work needs and to help managers manage them.
지연 인쇄(Deferred Print): 지연 인쇄는 예정된 출력 장치가 현재 사용불가능이기 때문에, 작업 프로세싱의 마지막 단계에서, 프로세스된 작업 요구의 출력을 지연하는 것을 나타낸다.Deferred Print :Deferred Print refers to delaying the output of a processed job request, at the end of job processing, because the intended output device is currently unavailable.
이용자 데이터베이스(User Database): 이용자 데이터베이스는 각 이용자의 시스템 구성 설정을 추적하기 위해 이용되는 시스템 데이터베이스를 나타낸다.User Database : A user database represents a system database that is used to track the system configuration settings of each user.
서버(Sever): 네트워크 상에서 액세스 가능한 컴퓨터 실행 소프트웨어를 나타낸다.Server :Represents computer running software that is accessible on the network.
웹 서버(Web Server): 하이퍼텍스트 전송 프로토콜(HTTP: HyperText Transmission Protocol) 또는 HTML(HyperText Markup language) 파일을 전송하기 위한 보안 HTTP, CGI(Common Gateway Interface) 데이터, 및 클라이언트와 서버 컴퓨터 사이의 데이터 파일을 이용하여 클라이언트 컴퓨터와 통신하는, 컴퓨터 또는 서버상에서 실행되는 컴퓨터 프로그램을 나타낸다.Web Server : Secure HTTP, Common Gateway Interface (CGI) data for transferring HyperText Transmission Protocol (HTTP) or HyperText Markup language (HTML) files, and data files between client and server computers. Represents a computer program running on a computer or server that communicates with a client computer using.
윈도우 프린터(Window Printer): 마이크로소프트 윈도우 운영 체제에서, '프린터'는 프린터 드라이버, 인쇄 프로세서, 랭귀지 모니터(language monitor), 및 포트 모니터의 이름으로 정의된다.Window Printer : In the Microsoft Windows operating system, a 'printer' is defined by the name of a printer driver, print processor, language monitor, and port monitor.
스풀 파일(Spool File): MS 윈도우 프린터 드라이버에 의해 생성되는 프린터 랭귀지 파일. 이 파일의 컨텐츠는 인쇄를 위해 프린터로 직접적으로 송신될 수도 있다.Spool File : A printer language file created by the MS Windows printer driver. The contents of this file may be sent directly to the printer for printing.
인터넷 인쇄 프로토콜(IPP): 스풀 파일을 네트워크 프린터로 송신하고, 네트워크 프린터로부터 인쇄 작업을 획득하기 위한 HTTP와 유사한 프로토콜.Internet Printing Protocol (IPP) : An HTTP-like protocol for sending spooled files to a network printer and obtaining print jobs from the network printer.
라인 프린터 원격(LPR): 스풀 데이터를 네트워크 프린터로 제공하기 위한 프로토콜.Line Printer Remote (LPR) : A protocol for providing spool data to a network printer.
구역(Zone): 자율 출력 관리 시스템을 둘러싸는 네트워크. 일반적으로 구역은 네트워크 도메인의 논리적인 표현을 포함한다.Zone : A network surrounding an autonomous output management system. In general, a zone contains a logical representation of the network domain.
본 명세서에 기재된 본 발명의 각종 실시예는 무선 또는 유선 이용자가 로컬및 원격 소스로부터 소스 데이터를 검색하는 것을 가능하게 하고, 소스 데이터가 선택된 출력 장치상에 출력되게 요구하는 것을 가능하게 한다. 여기서 선택된 출력장치는 예정된 출력 장치 또는 목적지 출력 장치라고 언급되기도 한다. 일반적으로, 출력 장치는 발신 장치(예컨대, 출력 요구가 발행되는 장치)로서 동일한 네트워크 상에 위치될 수도 있고, 또는 이보다는 빈번하게, 발신 장치로 액세스할 수 없는 네트워크를 포함하는 분리 네트워크(separate network) 상에 위치될 수도 있다.Various embodiments of the present invention described herein enable wireless or wired users to retrieve source data from local and remote sources, and require source data to be output on a selected output device. The output device selected here may be referred to as a intended output device or a destination output device. In general, the output device may be located on the same network as the originating device (eg, the device from which the output request is issued) or, more often, a separate network comprising a network that is inaccessible to the originating device. It may be located on).
최상위 레벨(top level)에서, 본 명세서에 기재된 본 발명의 출력 관리 시스템의 실시예의 동작 및 기능성(functionality)은 4개의 주요 구성요소, 즉 메시지 센터(MC), 인쇄 서비스(PS), 원격 데스크탑 클라이언트(RDC: Remote Desktop Clients), 및 무선 데이터 액세스 포인트(WDAP:Wireless Data Access Points)를 통해 가능하게 된다. 실제 구현에 있어서, 구현의 특정 요구에 따라, 이들 구성요소의 각종 조합이 일반적으로 이용된다.At the top level, the operation and functionality of the embodiments of the output management system of the present invention described herein are divided into four main components: message center (MC), print service (PS), and remote desktop client. (RDC: Remote Desktop Clients), and Wireless Data Access Points (WDAP). In actual implementation, various combinations of these components are generally used, depending on the specific needs of the implementation.
메시지 센터는 이 시스템의 핵심이다. 이는 전체 시스템이 바람직하게 기능하는 것을 보장하기 위해 이 시스템에서의 나머지 구성요소와 조화한다. 도1에 나타낸 바와 같이, 일 실시예에서, 메시지 센터(MCn)는 구성요소 등록 및 등록해제(unregistration)(10), 작업 요구 접수, 작업 요구 프로세싱(14), 작업 출력 스케줄링 및 쿼링(16), 작업 출력 상태 모니터링(18), 동등 메시지 센터 인터액션(20), 루트 레벨 메시지 센터 인터액션(22), 원격 데스트탑 클라이언트 관리(24), 인쇄 서비스 관리(26), 무선 데이터 액세스 포인트 관리(28), 이용자 프로파일 관리(30) 및 이용자 인터페이스 관리(32)를 포함하는 12개의 주요 태스크를 수행한다.The message center is the heart of this system. This is in harmony with the rest of the components in this system to ensure that the entire system is functioning preferably. As shown in FIG. 1, in one embodiment, the message center MCn is configured to register and unregistrate components 10, receive job requests, job request processing 14, job output scheduling and queuing 16. FIG. Job output status monitoring (18), peer message center interactions (20), root level message center interactions (22), remote desktop client management (24), print service management (26), and wireless data access point management (28) 12 major tasks are performed, including user profile management 30 and user interface management 32.
인쇄 서비스 구성요소는 작업 요구의 렌더링 및 인쇄를 통제한다. 도2에 나타낸 바와 같이, 일 실시예에서, 인쇄 서비스(PSn)는 렌더링 출력 이미지(34), 리포지토리로의 출력 이미지 적재(Deposit)(36), 로컬 장치로의 출력 이미지 송신(38), 메시지 센터(40)로의 작업 출력 상태 송신(40), 및 로컬 출력 장치 관리(42)를 포함하는 인쇄 서비스 태스크를 수행한다.The print service component controls the rendering and printing of job requests. As shown in FIG. 2, in one embodiment, the print service PSn is a rendering output image 34, an output image deposit 36 to a repository, an output image transmission 38 to a local device, a message. A print service task is performed that includes a job output status transmission 40 to a center 40, and local output device management 42.
무선 데이터 액세스 포인트 구성요소는 무선 이용자가 블루투스, IEEE 802.11 등의 표준 무선 프로토콜을 이용하여 시스템으로 접속하는 것을 돕는다. 또한, 무선 액세스를 위해 메시지 센터가 리소스 매핑을 관리하는 것을 도와준다. 도4에 나타낸 바와 같이, 일 실시예에서, WDAPn은 구성요소 등록 및 등록해제(50), 수신 장치 접속 요구(52), 이용자의 무선 장치(54)로부터의 중계 요구(relay request), 이용자의 무선 장치에 대한 중계 시스템 응답(56), 및 기록 출력 장치 지리학적 관계(58)를 포함하는 5개의 주요 태스크를 실행한다.The wireless data access point component helps wireless users connect to the system using standard wireless protocols such as Bluetooth, IEEE 802.11, and the like. It also helps the message center manage resource mapping for wireless access. As shown in Fig. 4, in one embodiment, WDAPn is a component registration and deregistration 50, a receiving device connection request 52, a relay request from a user's wireless device 54, and a user's request. It performs five main tasks, including relay system response 56 for the wireless device, and record output device geographic relationship 58.
종합적으로, 본 명세서에 기재된 출력 관리 시스템의 실시예의 특성은 이하의 동작, 즉 1) 장치 리소스 관리, 2) 장치 리소스 발견, 3) 작업 요구 관리, 4) 작업 요구 스케줄링, 5) 작업 요구 모니터링, 6) 이용자 프로파일 관리, 및 7) 이용자 모바일 서명(sign-in)을 포함한다. 이하의 설명은 각 양태의 간단한 미리보기를 기재하고, 그 다음에 시스템 실시예를 통해 보다 상세히 설명한다.Overall, the characteristics of the embodiments of the output management system described herein include the following operations: 1) device resource management, 2) device resource discovery, 3) work request management, 4) work request scheduling, 5) work request monitoring, 6) user profile management, and 7) user mobile sign-in. The following description describes a brief preview of each aspect, and then is described in more detail through system embodiments.
장치 리소스 관리Device Resource Management
시스템은 쉽고 빠른 출력 장치 위치를 위해 장치 리소스를 관리한다. 일 실시예에서, 이들 장치는 물리적 및 논리적 출력 장치로 나뉜다. 물리적 출력 장치는 프린터, 팩스 머신, 카피 머신을 포함하지만 이에 한정되지는 않는다. 논리적 출력 장치는 파일 서버, 인쇄 서버, FTP 리포지토리, 및 이메일 목적지를 포함한다. 다음은 연관된 동작의 리스트이다.The system manages device resources for quick and easy output device location. In one embodiment, these devices are divided into physical and logical output devices. Physical output devices include, but are not limited to, printers, fax machines, copy machines. Logical output devices include file servers, print servers, FTP repositories, and email destinations. The following is a list of associated actions.
계층적 루트 관리 센터의 이용, 용이한 리소스 관리 및 공유를 위한 공중 및 사설 장치 분류: 시스템은 각 메시지 센터의 관계를 기록하기 위해 데이터베이스를 이용한다. 루트 메시지센터는 0과 동일한 메시지 센터 Id(MCID)를 갖는다. 다른 모든 메시지 센터는 0이 아닌 양수 MCID 값을 갖는다. 루트 메시지 센터 테이블은 구역 및 다른 메시지 센터의 네트워크 어드레스를 식별하는 정보를 포함한다. 로컬 메시지 센터는 루트 메시지 센터에 등록되어야 하고, 리소스 공유를 위해 그들의 공중 리소스 정보를 알린다. 모든 비공표(non-published) 장치 리소스는 사설인 것으로 간주하고, 그들이 존재하는 구역의 외측으로는 공유되지 않는다.Public and private device classification for use of hierarchical route management centers, easy resource management and sharing : The system uses a database to record the relationship of each message center. The root message center has a message center Id (MCID) equal to zero. All other message centers have a positive non-zero MCID value. The root message center table contains information identifying network addresses of zones and other message centers. Local message centers must be registered with the root message center and announce their public resource information for resource sharing. All non-published device resources are considered private and are not shared outside of the area in which they exist.
로컬 및 원격 클라이언트 등록 메커니즘을 이용한 장치 관리: 관련 인쇄 서비스는 그들의 접속 출력 장치를 메시지 센터에 등록하고, 마찬가지로 관련 원격 데스크탑 클라이언트는 그들이 직접적으로 접속된 출력 장치를 메시지 센터에 등록한다. 이어서, 이들 출력 장치는 대응하는 인쇄 서비스 또는 원격 데스크탑 클라이언트를 통해 참조될 수도 있다. 구현의 특정 보안 요구에 따라, 시스템 내의 인쇄서비스 및 원격 데스크탑 클라이언트 상에 암호를 이용하여, 필요한 경우 데이터 보안성 및 무결성을 보장하는 것이 바람직할 수도 있다.Device management using local and remote client registration mechanisms : The associated print service registers their contact output devices with the message center, and likewise the associated remote desktop client registers the output devices with which they are directly connected to the message center. These output devices may then be referenced through corresponding print services or remote desktop clients. Depending on the specific security needs of the implementation, it may be desirable to use passwords on print services and remote desktop clients in the system to ensure data security and integrity if necessary.
월드 와이드 웹(WWW: World Wide Web) 및 모바일 장치 인터페이스를 이용한 장치 관리: 시스템은 장치 관리 목적의 간단한 모바일 관리 인터페이스와 함께 완전한 관리 인터페이스를 제공한다.Device management using the World Wide Web (WWW) and mobile device interfaces : The system provides a complete management interface with a simple mobile management interface for device management purposes.
중앙식 드라이버 스토어(Centralized Driver Store)를 이용하는 원격 장치 설치: 출력 장치의 등록에 따라, 대응하는 드라이버가 출력 장치와 연관된 인쇄 서비스상에 인스톨되어야 한다. 메시지 센터는 그 드라이버 스토어에서 공동으로 이용되는 드라이버 어레이를 제공하여 드라이버를 인쇄 서비스 구성요소로 전송하는 장치의 필요성을 제거한다. 그러나, 이 드라이버가 MC 드라이버 스토어로부터 현재 이용가능하지 않으면, 장치 스토어로 전송되고, 이어서 프리트 서비스 상에 설치될 수도 있다.Remote Device Installation Using Centralized Driver Store : According to the registration of the output device, the corresponding driver must be installed on the print service associated with the output device. The message center provides a driver array that is commonly used in the driver store, eliminating the need for a device to send the driver to the print service component. However, if this driver is not currently available from the MC driver store, it may be sent to the device store and then installed on the frit service.
장치 리소스 발견(Device Resource Discovery)Device Resource Discovery
이 시스템은 이용자가 출력 장치를 모바일 계산 환경(mobile computing environment)에 위치시킬 수 있게 해준다. 이하에 상세히 설명되는 바와 같이, 일실시예에서, 장치 발견을 위해 블루투스 및 IEEE 802.11 기술을 이용한다. 이는 또한 비-블루투스식 장치가 그 블루투스 장치 에뮬레이터를 통해 이들이 블루투스 장치로서 동작하는 것을 가능하게 해준다. 다음은 관련된 동작의 리스트이다.The system allows the user to place the output device in a mobile computing environment. As described in detail below, in one embodiment, Bluetooth and IEEE 802.11 technologies are used for device discovery. It also allows non-Bluetooth devices to operate as Bluetooth devices through their Bluetooth device emulator. The following is a list of related actions.
출력 장치 발견 및 블루투스 접속을 통한 메시지 센터로의 등록: 이는 출력 장치 정보를 취득하기 위해 무선 데이터 액세스 포인트(WDAP) 상의 에이전트를 메시지 센터와의 인터페이스에 실행함으로써 얻어진다. 또한, 에이전트는 메시지 센터와 협력하여 WDAP상에서 동작하는 그 출력 장치 정보 데이터베이스를 유지시킨다.Output device discovery and registration with the message center via Bluetooth connection : This is obtained by running an agent on the wireless data access point (WDAP) at the interface with the message center to obtain output device information. The agent also cooperates with the message center to maintain its output device information database operating on WDAP.
블루투스 게이트웨이를 통해 블루투스 클라이언트로의 로컬 총칭 출력 장치 유효성 공표(Local Generic Output Device Availability Announcement): 선택적인 블루투스 게이트웨이는 메시지 센터가 WDAP를 통해 수신되는 정보를 관리하는 것을 돕기 위해 배치될 수 있다. 출력 장치 유효성을 포함하는 이 정보는 무선 이용자가 등록된 WDAP를 통해 네트워크로 접속할 때 무선 이용자에게 알려진다. 모바일 이용자의 경우, 이 정보는 이용자가 네트워크를 통해 이동하여 다른 WDAP로 접속됨에 따라 시스템에 의해 새로 고쳐진다.Local Generic Output Device Availability Announcement to Bluetooth Clients via a Bluetooth Gateway: An optional Bluetooth gateway may be deployed to help the message center manage the information received via WDAP. This information, including the output device validity, is known to the wireless user when the wireless user connects to the network through the registered WDAP. For mobile users, this information is refreshed by the system as the user moves through the network and connects to another WDAP.
802.11 게이트웨이를 통한 출력 장치 발견 및 등록: 이는 무선 데이터 액세스 포인트(WDAP) 상의 에이전트를 메시지 센터와의 인터페이스에 실행시킴으로써얻어지고, 블루투스 접속에 이용되는 유사한 방법으로 출력 장치 정보가 얻어진다.Output device discovery and registration via an 802.11 gateway : This is obtained by running an agent on a wireless data access point (WDAP) at the interface with the message center, and the output device information is obtained in a similar manner used for a Bluetooth connection.
IP 브로드캐스트를 통한 출력 장치 유효성 공표: 선택적인 802.11 게이트웨이는 메시지 센터가 WDAP를 통해 수신하는 정보를 관리하는 것을 돕기 위해 시스템에 배치될 수 있다. 출력 장치 유효성을 포함하는 이 정보는 802.11의 인증된 이용자가 등록된 WDAP를 통해 네트워크로 진입할 때 이용자에게 알려질 것이다. 이 정보는 이용자가 네트워크를 통해 이동하여 다른 WDAP로 접속됨에 따라 시스템에 의해 새로 고쳐진다.Output device validity announcement via IP broadcast : An optional 802.11 gateway can be deployed in the system to help the message center manage the information it receives via WDAP. This information, including the output device validity, will be known to the user when the 802.11 authenticated user enters the network via the registered WDAP. This information is refreshed by the system as the user moves through the network and connects to another WDAP.
인스턴트 메시징 인터페이스를 통한 로컬 출력 장치 유효성 공표: 원격 데스크탑 클라이언트는 인스턴트 메시지(IM) 프로토콜(예컨대, AOL 인스턴트 메시징, 야후 메시징, MSN 메시징, ICQ 등)을 통해 장치 관리를 지원하도록 확장될 수 있다. 이 개념은 이용자의 출력 리소스가 다른 메신저 이용자(예컨대, 친구 등)에게 표시가능하고 공유 가능하게 하는 것이다. 예컨대, 이러한 능력은 IM 이용자가 파일을 출력 장치의 친구 리스트상의 공유 장치에 드래그 앤 드롭할 수 있게 하고, 따라서 파일에 대응하는 출력이 친구가 쉽게 액세스할 수 있는 장치상으로 출력되게 해준다.Local output device validation via instant messaging interface : The remote desktop client can be extended to support device management via instant messaging (IM) protocols (eg, AOL instant messaging, yahoo messaging, MSN messaging, ICQ, etc.). The concept is that the user's output resources are displayable and shareable to other messenger users (eg friends). For example, this capability allows an IM user to drag and drop a file to a shared device on a friend's list of output devices, so that the output corresponding to the file is output onto a device that a friend can easily access.
출력 리소스 발견에 기반한 디폴트 출력 장치 할당: 디폴트 출력 장치에는 2가지의 형태가 존재한다. 하나는 정적인 디폴트 출력 장치이고, 다른 하나는 동적인 디폴트 출력 장치이다. 정적 디폴트 출력 장치를 변경하기 위해, 이용자는 그 프로파일 설정을 그래픽 이용자 인터페이스(GUI)를 통해 변경할 수 있다. 그러나, 이용자가 모바일 장치를 시스템을 액세스하기 위해 이용할 때에는 시스템만이 동적디폴트 출력 장치를 업데이트한다. 또한, 이용자는 이용자의 프로파일 설정을 변경함으로써 동적인 겹쳐 쓰기를 오프할 수도 있고, 출력 장치 목적지를 언제나 특정할 수도 있다.Default output device allocation based on output resource discovery : There are two types of default output devices. One is a static default output device and the other is a dynamic default output device. To change the static default output device, the user can change the profile settings via a graphical user interface (GUI). However, when a user uses a mobile device to access the system, only the system updates the dynamic default output device. In addition, the user may turn off dynamic overwriting by changing the user's profile setting, and may always specify the output device destination.
작업 요구 관리Work demand management
이 시스템은 작업 요구를 관리하기 위해 요구 큐(request queue)를 구현한다. 이하는 관련된 동작의 리스트이다.The system implements a request queue to manage work requests. Below is a list of related actions.
출력 장치에 대한 작업 요구를 관리하기 위해 원격 데스크탑 클라이언트의 사용: 예정된 출력 장치로의 작업 요구는 원격 데스크탑 클라이언트(RDC)를 통해 채널된다. 이 RDC는 출력 장치가 출력 데이터를 검색하고, 메시지 센터로 상태를 송신하는 것을 돕는다. 동일한 RDC는 메시지 센터와 RDC 사이에서 교체되는 출력 데이터를 보호화기 위해 암호화를 구현할 수도 있다.Use of Remote Desktop Client to Manage Work Requests to Output Devices: Work requests to scheduled output devices are channeled through the Remote Desktop Client (RDC). This RDC helps the output device retrieve the output data and send status to the message center. The same RDC may implement encryption to protect the output data being exchanged between the message center and the RDC.
인스턴트 메시징 인터페이스를 통한 작업 제공: 원격 데스크탑 클라이언트는 인스턴트 메시징 프로토콜(예컨대, AOL 인스턴트 메시징, 야후 메시징, MSN 메시징, ICQ 등)을 통한 작업 제공을 지원하기 위해 변경될 수 있다. 이 메커니즘은 이용자가 파일을 그 친구의 공유 출력 장치 리스트 상의 장치로 드래그 앤 드롭할 수 있게 해준다. 이어서, 친구는 장치로부터 출력 데이터를 수신한다. 변경된 RDC는 메신저 센터(예컨대, AOL 소유, 야후 소유, 법인 소유, 또는 루트 MC)에 등록되어야 한다. 성공함에 따라, 인스턴트 메시징 UI 상의 출력 관리 인터페이스가 보여질 것이다. 이용자의 리소스 정보는, 이용자의 친구가 인스턴트 메시징 툴에 맞춰진RDC 를 실행하면 인스턴트 메시징 프로토콜을 통해 접속된 친구에게 전달된다. 이어서 문서는 이용자 친구의 공유 출력 장치로 드래그 앤드 드롭될 수 있다.Job delivery via instant messaging interface : The remote desktop client can be modified to support job delivery via instant messaging protocols (eg, AOL instant messaging, Yahoo messaging, MSN messaging, ICQ, etc.). This mechanism allows the user to drag and drop files to a device on the friend's shared output device list. The friend then receives the output data from the device. The modified RDC must be registered at a messenger center (eg, owned by AOL, owned by Yahoo, owned by corporation, or root MC). Upon success, the output management interface on the instant messaging UI will be shown. The user's resource information is delivered to a friend connected via an instant messaging protocol when the user's friend runs an RDC tailored to the instant messaging tool. The document can then be dragged and dropped onto the user's shared output device.
인스턴트 메시징 인터페이스를 통한 작업 인쇄 요구 수신: 원격 데스크탑 클라이언트는 인스턴트 메시징 프로토콜을 통한 작업 수신을 지원하기 위해 변경될 수 있다. 발신자가 출력 데이터를 수신자의 공유 출력 장치 리스트상의 장치로 드래그 앤드 드롭하면, 인쇄를 위해 작업 요구가 수신자의 RDC 로 송신된다. 변경된 RDC는 사전에 메시지 센터에 등록되어야 한다. 인스턴트 메시징 UI 상의 출력 관리 인터페이스가 보여질 것이다. 이용자의 리소스 정보는, 이용자의 친구가 인스턴트 메시징 툴에 맞춰진 RDC를 실행하면 인스턴트 메시징 프로토콜을 통해 접속된 친구에게 전달된다.Receive job print requests via instant messaging interface: The remote desktop client can be modified to support the receipt of jobs via the instant messaging protocol. When the sender drags and drops the output data to a device on the recipient's shared output device list, a job request is sent to the recipient's RDC for printing. The changed RDC must be registered in the message center in advance. The output management interface on the instant messaging UI will be shown. The user's resource information is delivered to a friend connected via an instant messaging protocol when the user's friend runs an RDC tailored to the instant messaging tool.
멀티미디어 메시징 시스템과의 인터페이스: 메시지 센터는 대부분의 멀티미디어 메시징 시스템과의 인터페이스로의 내향(inbound) 및 외향(outbound) 게이트웨이를 배치할 수 있다. 이러한 배치는 총칭 멀티미디어 클라이언트가 출력 관리 시스템 지배 클라이언트(output management system powered client)와 통신할 수 있게 하여, 정보를 교환하거나 또는 공유 장치 및 목적지로의 출력을 요구할 수 있게 해준다.Interface with a Multimedia Messaging System : The message center may deploy inbound and outbound gateways to interfaces with most multimedia messaging systems. This arrangement allows a generic multimedia client to communicate with an output management system powered client, exchanging information or requiring output to shared devices and destinations.
블루투스 접속을 통한 총칭 출력 장치로의 작업 제공: 블루투스 장치 에뮬레이터를 포함하는 WDAP는 이용자가 블루투스 접속을 통해 시스템 제공 인터페이스를 액세스할 수 있게 해준다. 요구에 따라, 블루투스 및 총칭 출력 장치를 포함하는 출력 장치 유효성은 이용자에게 회답된다. 이어서, 이용자는 블루투스 접속을 통해선택된 목적지 출력 장치로 출력을 송신할 수도 있다.Providing work with generic output devices via a Bluetooth connection : WDAP, including a Bluetooth device emulator, allows users to access system-provided interfaces via a Bluetooth connection. Upon request, output device validity, including Bluetooth and generic output devices, is returned to the user. The user may then send the output to the selected destination output device via a Bluetooth connection.
전용 서버(Dedicated Sever)를 통한 작업 요구 렌더링: 시스템은 전용 작업-렌더링 서버로서 인쇄 서비스를 이용한다. 이는 클라이언트 서버상의 불필요한 장치 드라이버의 설치를 감소시킨다. 원격 데스크탑 클라이언트에 의해, 수천 마일 떨어진 출력 장치로 출력될 수 있고, 역의 경우에 대해서도 마찬가지이다.Job request rendering through dedicated servers : The system uses a print service as a dedicated job-rendering server. This reduces the installation of unnecessary device drivers on the client server. It can be output by the remote desktop client to an output device thousands of miles away, and vice versa.
개인 및 비지니스 작업 요구 분류: 현재의 공동 인쇄 환경은 개인적인 인쇄 작업 요구와 비지니스 요구를 구별하지 않는다. 대조적으로, 이 시스템은 작업 요구를 분류하고, 데이터베이스에 이들을 태그하고, 계산을 위해 이들 정보를 유지한다. 계산 부분은 작업 요구에 의해 정의된 작업 특성에 기초하여 부분(department)이나 임플로이(empolyee)를 적당하게 변경할 수 있다.Personal and Business Job Needs Classification : The current co-printing environment does not distinguish between personal print job needs and business needs. In contrast, the system categorizes work requests, tags them in a database, and maintains this information for calculation. The calculation part can change parts or embodies as appropriate based on the job characteristics defined by the job request.
게스트 인쇄 지원: 이 시스템은 게스트 인쇄를 지원하도록 구성될 수 있다. 이는 메시지 센터상에 호스트된 게스트 작업 제공 인터페이스을 통해 획득된다. 이 인터페이스는 이용자 프로파일 검증을 실시하지 않지만, 공동 출력 리소스로의 제한된 액세스만을 허용한다. 관리자는 게스트 인쇄에 대하여 동적 디폴트 프린터까지 지원하도록 메시지 센터를 구성할 수 있다.Guest Printing Support : The system can be configured to support guest printing. This is obtained through a guest work providing interface hosted on the message center. This interface does not perform user profile verification, but only allows limited access to common output resources. Administrators can configure the message center to support dynamic default printers for guest printing.
이메일 작업 요구 지원: 이 시스템은 첨부가 있거나 없는 이메일을 일반적인 작업 요구로서 수용한다. 시스템은 다중 출력 채널에 대한 첨부가 있거나 없는 이들 요구를 프로세스할 수 있다.Email task request support : The system accepts email with or without attachments as a general task request. The system can process these requests with or without attachments to multiple output channels.
문서 미리보기: 이 시스템은 최종 출력 요구가 발행되기 전에 이용자에게 가시적인 확인(예컨대 문서의 올바른 버전)을 제공하기 위해 문서 미리보기를 지원한다. 이 문서 미리보기 특성은 이용자가 불완전한 견본으로 이미지를 볼 수 있게 하고, 페이지 번호가 유지된 평문 포맷으로 다른 파일을 볼 수 있게 하는 신속한 방법이다. 스프레드시트의 경우, 수직 및 수평의 양 방향으로의 네비게이션이 제공된다. 게다가, 문서 미리보기에서, 원본 문서의 페이지 관계가 유지되기 때문에, 이용자가 문서를 미리보기 위해 랜덤한 액세스를 할 수 있게 해준다.Document Preview : The system supports document previews to provide a visual confirmation (eg the correct version of a document) to the user before the final output request is issued. This document preview feature is a quick way to allow users to view images with incomplete samples and to view other files in plain text format with page numbers maintained. In the case of spreadsheets, navigation in both vertical and horizontal directions is provided. In addition, in document preview, since the page relationship of the original document is maintained, it allows the user to have random access to preview the document.
작업 요구 스케줄링Job request scheduling
이 시스템은 작업 요구를 관리하기 위해 요구 큐를 구현한다.The system implements a request queue to manage work requests.
전용 작업 스케줄링: 작업 요구가 메시지 센터로 진입하면, 작업 프로세싱 목적을 위해 충분한 정보를 유지하기 위해, 작업 큐 엔트리가 메시지 센터 데이터베이스로 삽입된다. 예정된 출력 장치가 이용가능하지 않다면, 시스템은 큐내의 엔트리를 유지하고, 출력 장치가 활용 가능하게 되면 제공되도록 이후 시간을 재스캐줄링한다.Dedicated Job Scheduling : When a work request enters the message center, work queue entries are inserted into the message center database to maintain sufficient information for work processing purposes. If the scheduled output device is not available, the system maintains an entry in the queue and reschedules the time later to be provided when the output device becomes available.
작업 스풀링 팩토리 내의 파일 리퍼런스를 이용하는 출력: 이 시스템은 출력 이미지를 렌더링하기 위해 인쇄 서비스를 이용한다. 인쇄 서비스 및 메시지 센터는 동일한 호스트 머신에 함께 위치하지 않는 것이 일반적이기 때문에, 최종 단계 프로세싱을 위해 렌더링된 데이터는 인쇄 서비스로부터 메시지 센터로 전송되어야 한다. 능률을 고려하면, 인쇄 서비스는 렌더링된 이미지를 공유된 스풀링 팩토리(예컨대, 리포지토리)에 저장하고, 이미지의 리퍼런스를 메시지 센터로 회답한다. 이어서, 메시지 센터는 리퍼런스를 이용하여 데이터를 목적지로 출력한다.Output using file references in a job spooling factory : The system uses a print service to render the output image. Since the print service and message center are generally not co-located on the same host machine, the rendered data must be transferred from the print service to the message center for final stage processing. In view of efficiency, the print service stores the rendered image in a shared spooling factory (eg, repository) and returns the reference of the image to the message center. The message center then outputs the data to the destination using the reference.
방화벽을 통한 보안 출력: 시스템의 모듈 설계는 각 구성요소의 개별화된 구성을 허용한다. 관리자는 시스템을 보호하기 위해 방화벽을 설치할 수도 있다. 원격 데스크탑 클라이언트는, 방화벽이 바람직하게 구성될 때, 메시지센터와의 인터페이스를 위해 자격을 갖는다. 이는 이용자에게 방화벽을 통해 문서를 인쇄하는 자격을 부여한다.Secure output through a firewall : The modular design of the system allows for the individualized configuration of each component. Administrators can also install firewalls to protect the system. The remote desktop client is entitled to interface with the message center when the firewall is preferably configured. This entitles the user to print the document through the firewall.
작업 요구 모니터링Job demand monitoring
이 시스템은 작업 큐 로그 추적을 통해 작업 상태 모니터링을 구현한다. 이하는 관련된 동작의 리스트이다.The system implements job status monitoring through job queue log tracking. Below is a list of related actions.
데이터베이스 업데이트를 이용하는 지속적인 상태 추적을 통한 작업 상태 모니터링: 메시지 센터는 각각의 작업 요구에 대하여 지속적인 상태를 유지한다. 작업 출력 요구가 송출되면, 테이블 업데이트 핸들러(Table Update Handler)는 작업 상태를 모니터링하고, 작업 요구가 종료되었는지를 결정한다. 그런 경우, 데이터베이스를 업데이트하고 이용자에게 상태를 회답한다.Job status monitoring with continuous status tracking using database updates. The message center maintains a constant status for each job request. When a job output request is sent, the Table Update Handler monitors the job status and determines if the job request has ended. If so, update the database and return the status to the user.
WAP 푸시(WAP PUSH)를 통한 작업 출력 상태 기록: 작업 요구가 종료될 때, 데이터베이스 내의 작업 상태는 업데이트된다. 이어서, 메시지 센터는 작업 발신자가 WAP 클라이언트라면 WAP 푸시를 통해 그 종료를 이용자에게 알린다.Job output status recording via WAP PUSH : When the job request is terminated, the job status in the database is updated. The message center then informs the user of the end via WAP push if the job originator is a WAP client.
HTTP 브라우저 리프레시를 통한 작업 출력 상태 기록: 작업 요구가 종료될 때, 데이터베이스 내의 작업 상태는 업데이트된다. 이어서, 메시지 센터는 그 종료를 이용자에게 알린다. HTTP 작업 제공 클라이언트인 경우, 작업 상태는 자동 브라우저 리프레시에 의해 상태가 종료로 마크될 때까지 업데이트된다.Record job output status via HTTP browser refresh : When the job request is closed, the job status in the database is updated. The message center then notifies the user of the end. In the case of an HTTP job serving client, the job status is updated until the status is marked as terminated by automatic browser refresh.
출력 생성Generate output
이 시스템은 출력 생성을 위한 인쇄 서비스를 구현한다. 이하는 인쇄 서비스에 의해 수행되는 관련 동작의 리스트이다.This system implements a print service for generating output. The following is a list of related operations performed by the print service.
입력 파일 포맷에 기반한 출력 렌더링 어플리케이션의 동적 선택 및 구성가능한 시스템 설정: 출력 파일 이미지를 렌더링하기 위해 이용된 어플리케이션은 입력 파일의 포맷에 기반하여 우선순위가 결정될 수 있다. 우선순위는 시스템 구성 설정의 변경을 통해 조정될 수 있다.Dynamic Selection and Configurable System Settings of an Output Rendering Application Based on Input File Format : Applications used to render output file images may be prioritized based on the format of the input file. The priority can be adjusted by changing the system configuration settings.
출력 파일 이미지 렌더링을 위한 제3자 어플리케이션의 이용: 이 시스템은 출력 이미지를 렌더링하기 위해 제2자 어플리케이션 역시 이용할 수 있다.Use of Third Party Applications for Rendering Output File Images : The system can also use third party applications to render output images.
다중 출력 렌더링 알고리즘 지원: 이 시스템은 입력 문서의 특정 특징에 따라 상이한 방법을 이용한다. 이는 인쇄 툴 및 프린터 드라이버를 갖는 백그라운드 서비스(background service), 어플리케이션 제어 핸들러를 갖는 포그라운드 키스트로크 시뮬레이션(foreground keystroke simulation), 또는 렌더링을 위한 변환기(translator)를 이용할 수도 있다.Multiple output rendering algorithm support : The system uses different methods depending on the specific characteristics of the input document. It may use a background service with a print tool and a printer driver, a foreground keystroke simulation with an application control handler, or a translator for rendering.
다중 출력 채널 지원: 이 시스템은 프린터 채널로의 인쇄, 팩스 수신자로의 팩스 송신, 발신 장치 상의 출력 이미지 미리보기, 및 이메일 목적지로의 출력 송신을 포함하는(이에 한정되는 것은 아님) 다중 출력 채널을 지원한다. 이메일 목적지 출력 채널이 선택되면, 문서는 이메일 몸체에 포함될 수 있고, 또는 첨부로서송신될 수도 있다.Multiple Output Channel Support : The systemsupports multiple output channels , including but not limited to printing to a printer channel, sending a fax to a fax recipient, previewing an output image on the sending device, and sending an output to an email destination. Support. If an email destination output channel is selected, the document can be included in the email body or sent as an attachment.
총 시스템 신뢰도를 향상시키기 위한 윈도우 핸들러: 이 시스템은 포그라운드 출력 렌더링 옵션이 이용될 때 발생될 수도 있는 각종 팝업 다이얼로그 박스를 처리하기 위해 윈도우 핸들러를 이용한다. 이는 시스템이 장시간 동안 완전 무인으로 동작하는 것을 허용한다.Window handlers to improve total system reliability : The system uses window handlers to handle various popup dialog boxes that may be generated when the foreground output rendering option is used. This allows the system to operate completely unattended for a long time.
이용자 프로파일 관리User Profile Management
이 시스템은 웹 또는 모바일 장치 인터페이스를 이용하여 이용자가 그들의 개인적인 프로파일을 관리하도록 해준다. 이하는 관련된 동작의 리스트이다.The system allows users to manage their personal profiles using web or mobile device interfaces. Below is a list of related actions.
웹 및 모바일 장치 인터페이스를 통한 이용자 프로파일 관리 및 동적 업데이트: 서브스크립션 정보를 저장하는데 이용되는 메시지 센터에 의해 이용자 프로파일이 생성되고 유지된다. 이용자는 필요시 WEB(HTML) 또는 WAP(WML) 인터페이스를 이용하여 그들의 구성 설정을 변경할 수 있다. 또한, 이용자가 이용자의 홈 네트워크 내의 시스템을 액세스하기 위해 모바일 장치를 현재 이용중이라면, 시스템은 이용자의 동적 디폴트 프린터를 자동으로 업데이트한다.User profile management and dynamic update via web and mobile device interfaces : User profiles are created and maintained by the message center used to store subscription information. The user can change their configuration settings using the WEB (HTML) or WAP (WML) interface as needed. In addition, if the user is currently using a mobile device to access a system in the user's home network, the system automatically updates the user's dynamic default printer.
이용자 프로파일 다중 과금 기록 지원: 이용자 프로파일은 상이한 종류의 과금을 부가하기 위해 시스템에 대해 다중 과금 ID를 포함한다. 즉, 이용자는 개인적인 인쇄 계좌 및 비지니스 인쇄 계좌를 모두 가질 수도 있다. 이는 조직이 출력 관리 시스템을 용이한 그들의 과금 시스템으로 통합하는것을 도울 수 있다.User Profile Multiple Billing Record Support: The user profile includes multiple billing IDs for the system to add different kinds of billing. That is, the user may have both a personal print account and a business print account. This can help organizations integrate the output management system into their billing system with ease.
이용자 모바일 서명(User Mobile Sign-in)User Mobile Sign-in
이 시스템은 이용자가 무선 데이터 액세스 포인트(WDAP)를 통해 로컬 네트워크 상으로 서명하는 것을 가능하게 한다. 이어서, 로컬 공유 리소스는 이용자에게 사용 가능하게 될 것이다. 이하는 관련된 동작의 리스트이다.This system allows a user to sign onto a local network via a wireless data access point (WDAP). The local shared resource will then be made available to the user. Below is a list of related actions.
모바일 장치로부터의 질의 결과의 검증을 통한 이용자 인증: 이 시스템은 이용자 프로파일을 확인하기 위해 쿼리 결과의 고유 식별자를 검색한다. 이어서, 이용자 식별자에 기반하여 개별화된 인사를 송출할 수 있다.User authentication through verification of query results from the mobile device : The system retrieves the unique identifier of the query results to verify the user profile. The personalized greeting can then be sent out based on the user identifier.
모바일 이용자가 시스템 리소스를 액세스하는 것을 가능하게 함: 무선데이터 액세스 포인트 구성요소는 무선 이용자가 무선 접속(예컨대, 블루투스, 802.11)을 통해 네트워크로 액세스하는 것을 가능하게 한다. WDAP는 동적 디폴트 프린터 관리도 지원한다.Enabling Mobile Users to Access System Resources : The wireless data access point component enables wireless users to access a network via a wireless connection (eg, Bluetooth, 802.11). WDAP also supports dynamic default printer management.
시스템 구성System configuration
간단한 시스템 구성(59)의 예를 도5에 나타낸다. 이 예에서, 시스템은 두개의 구역, 즉 인터넷(60)을 통해 통신이 링크되어 있는 구역(0)과 구역(1)에 배치된다. 구역(0)은 모든 공유된 공동 출력 리소스를 관리하는 루트 메시지 센터(MC0)를 포함한다. 구역(0)은 선택적인 방화벽(61)을 포함할 수도 있다. 구역(10)은 두개의 메시지 센터(MC1,MC2)를 포함한다. 메시지 센터(MC1)는 내부 방화벽(62)의 뒤에 위치하고, 사설 센터이다. 메시지 센터(2)는 방화벽(63,64) 사이의 네트워크(DMZ: demilitarized zone)에 위치된다. 프린터 서비스(PS1)도 원격 데스크탑클라이언트(RDC1)와 같은 공중이다. 출력 장치(D1,D2)도 모두 공중이다.An example of a simple system configuration 59 is shown in FIG. In this example, the system is arranged in two zones, zone 0 and zone 1, to which communication is linked via the Internet 60. Zone 0 includes a root message center MC0 that manages all shared common output resources. Zone 0 may include an optional firewall 61. Zone 10 includes two message centers MC1 and MC2. The message center MC1 is located behind the internal firewall 62 and is a private center. The message center 2 is located in a network (DMZ: demilitarized zone) between the firewalls 63 and 64. The printer service PS1 is also public like the remote desktop client RDC1. The output devices D1 and D2 are also airborne.
도5 및 이하의 시스템 구성 도면에서, 실선은 접속 엔티니 사이에 직접 링크가 있다는 것을 나타내는 반면, 점선은 엔티티의 접속이 직접 링크 보다는 로지컬한 관계(예컨대, 등록을 통함)인 접속을 나타낸다. 예컨대, 출력 장치(D1)는 직접 링크(66)를 통해 인쇄 서비스(PS1)에 직접적으로 링크되는 반면, 출력 장치(D2)는 로지컬한 결합(68)으로 나타나듯이, 원격 데스크탑 클라이언트(RDC1)와 로지컬하게 결합된다.5 and the following system configuration diagrams, the solid lines indicate that there is a direct link between the connecting entities, while the dashed lines represent connections where the entity's connection is a logical relationship (eg, via registration) rather than a direct link. For example, output device D1 is directly linked to print service PS1 via direct link 66, while output device D2 is represented as a logical bond 68, with remote desktop client RDC1. Logically coupled.
일부 구성에서, 이용자가 메시지 센터(MC2)를 액세스할 수 있게 하고, 메시지 센터(MC2)가 인쇄 서비스(PS1), 원격 데스크탑 클라이언트(RDC1), 및 출력 장치(D1,D2)를 액세스하는 것을 허용하게 하기 위해, 방화벽은 포트(80)(예컨대 CGI 콜을 서비스하는 아파치 웹 서비스(Apache Web Service))를 개방할 수도 있다. SSL(Secure Socket Layer)이 필요하다면, 방화벽은 포트(443)를 개방할 수도 있다. 내부 네트워크로부터 외부 무선 이용자를 차단하기 위한 보안의 이유로, 무선 데이터 액세스 포인트(WDAP1)는 내부 방화벽(60) 뒤에 위치된다. 더욱 복합한 시스템 구성(70)을 도6에 나타낸다. 이 예에서, 시스템은 구역(0), 구역(1), 구역(2)의 3개의 구역에 거쳐 배치된다. 구역(0)은 모든 공유된 공중 출력 리소스를 관리하는 루트 메시지 센터(MC0)를 포함한다. 구역(1) 및 구역(2)은 공중 및 사설 리소스 모두를 포함할 수도 있는 사설 구역이다. 구역(1)은 공중 메시지 센터(Mc1), 2개의 사설 인쇄 서비스(PS1,PS2), 2개의 사설 WDAP(WDAP1,WDAP2), 하나의 공중 원격 데스크탑 클라이언트(RDC2), 2개의 사설 출력 장치(D2,D3), 및 하나의 공중 출력 장치(D4)를 포함한다. 구역(2)은 2개의 공중 메시지 센터(MC2,MC3), 2개의 사설 인쇄 서비스(PS3,PS4), 2개의 사설 WDAP(WDAP1,WDAP2), 하나의 사설 원격 데스크탑 클라이언트(RDC5), 3개의 공중 원격 데스크탑 클라이언트(RDC3,RDC4, RDC6), 3개의 사설 출력 장치(D6,D8,D9), 및 3개의 공중 출력 장치(D5,D7,D10)를 포함한다. 구역(0)은 3개의 메시지 센터(MC1,MC2,MC3)가 등록되어진 메시지 센터(MC0)를 포함한다. 원격 데스크탑 클라이언트(RDC1)도 등록되어 있다. 각 구역 내의 사설 리소스(예컨대, 출력 장치(D2,D3,D8) 및 원격 데스크탑 클라이언트(RDC5))는 구역의 외부와는 공유되지 않는다. 공중 리소스를 관리하는 메시지 센터는 루트 메시지 센터(MC0)에 등록되어, 공중 요구를 통해 액세스될 수도 있다.In some configurations, allows the user to access the message center MC2, and allows the message center MC2 to access the print service PS1, the remote desktop client RDC1, and the output devices D1, D2. To do so, the firewall may open port 80 (eg, an Apache Web Service that services CGI calls). If Secure Socket Layer (SSL) is required, the firewall may open port 443. For security reasons to block external wireless users from the internal network, the wireless data access point WDAP1 is located behind the internal firewall 60. A more complex system configuration 70 is shown in FIG. In this example, the system is deployed over three zones: zone (0), zone (1), zone (2). Zone 0 includes a root message center MC0 that manages all shared public output resources. Zone 1 and Zone 2 are private zones, which may include both public and private resources. Zone 1 includes a public message center (Mc1), two private print services (PS1, PS2), two private WDAPs (WDAP1, WDAP2), one public remote desktop client (RDC2), and two private output devices (D2). , D3), and one aerial output device D4. Zone (2) has two public message centers (MC2, MC3), two private print services (PS3, PS4), two private WDAPs (WDAP1, WDAP2), one private remote desktop client (RDC5), and three public Remote desktop clients RDC3, RDC4, RDC6, three private output devices D6, D8, D9, and three public output devices D5, D7, D10. Zone 0 includes a message center MC0 in which three message centers MC1, MC2 and MC3 are registered. The remote desktop client RDC1 is also registered. Private resources within each zone (eg, output devices D2, D3, D8 and remote desktop client RDC5) are not shared with the outside of the zone. The message center managing public resources may be registered with the root message center MC0 and accessed via public requests.
메시지 센터(MC0)는 등록된 공중 메시지 센터에 대한 리퍼런스를 포함하는 루트 레벨 메시지 센터이다. 시스템의 설치에 따라, 법인 소유의 메시지 센터(MC1,MC2)는 루트 메시지 센터에 그들 자신을 등록해야만 한다. 많은 수의 공중 리소스가 관리되어야 하는 경우, 구성은 복수 루트 메시지 센터를 포함할 수도 있다. 이러한 경우, 일실시예에서, 루트 MC는 계층적 트리로 떨어질 것이다. 일반적으로, 그러한 구현에 있어서의 루트 관리 센터의 구성은 매우 가요적이다. 한가지 분류 가능성을 도시하기 위해 지리 위치를 이용하면, 트리 계층의 하부 레벨은 특정 영역(예컨대, 캘리포니아주, 미네소타주, 타이완시, 광동시)으로 대응할 수 있고, 제2 하부 레벨은 더 큰 지역 MC(예컨대, 미국 MC, 중국 MC)로 일부 지역 MC의 그룹일 수 있고, 계층에서 그 다음 큰 레벨은 더 큰 지역 MC(예컨대, 아메리카, 아시아, 유럽)로 제2 하부 레벨에서의 일부 MC의 그룹일 수 있고, 끝으로 계층은전체 도메인을 나타내는 마스터 MC로 될 것이다. 유사한 접근법이 법인, 개인, 및 정부의 용어로 메시지 센터 계층을 셋업하기 위해 적용될 수도 있다.Message center MC0 is a root level message center that contains references to registered public message centers. Depending on the installation of the system, corporate-owned message centers MC1 and MC2 must register themselves with the root message center. If a large number of public resources are to be managed, the configuration may include multiple root message centers. In this case, in one embodiment, the root MC will fall into a hierarchical tree. In general, the configuration of the root management center in such an implementation is very flexible. Using geographic locations to illustrate one sortability, the lower levels of the tree hierarchy can correspond to specific regions (eg, California, Minnesota, Taiwan, Guangdong), and the second lower level is a larger regional MC. (Eg, US MC, Chinese MC), may be a group of some regional MCs, and the next largest level in the hierarchy is a group of some MCs at a second lower level to a larger regional MC (eg, America, Asia, Europe) Finally, the layer will be the master MC representing the entire domain. Similar approaches may be applied to set up a message center hierarchy in corporate, individual, and government terms.
등록된 메시지 센터는 공중 출력 리소스에 대해 루트 메시지 센터에 질의할 수 있다. 일실시예에서, 탐색은 다음의 RDC 파라미터, 즉 클라이언트의 이름, 클라이언트의 짚 코드, 또는 클라이언트의 상태 등에 기반할 수도 있다. 탐색은 구역 설명자 또는 구역 형태에 기반할 수도 있다. 게다가, 장치 리소스 탐색은 장치 리소스 이름 또는 장치 리소스 설명에 기반할 수도 있다. 구역(0) 루트 레벨 메시지 센터가 탐색 요구를 수신하면, 그 데이터베이스에서 발견된 리록의 식별자를 회답한다. 이어서 다음의 탐색은 더욱 상세한 정보를 회답하기 위해 조건(qualification)으로서 이들 식별자를 이용한다.The registered message center may query the root message center for public output resources. In one embodiment, the search may be based on the following RDC parameters: the client's name, the client's straw code, or the client's status, and the like. The search may be based on zone descriptors or zone types. In addition, device resource discovery may be based on the device resource name or the device resource description. When the zone (0) root level message center receives a search request, it returns an identifier of the lock found in that database. Subsequent searches then use these identifiers as qualifications to return more detailed information.
도1을 참조하여 메시지 센터를 더욱 상세하게 설명한다. 원격 데스크탑 클라이언트 및 인쇄 서비스는 그들의 출력 리소스를, 구성요소 등록 및 등록해제 구성요소(10)를 통해 이들 서비스로의 액세스를 제공하는 메시지 센터에 등록한다. 등록 프로세스 동안, 출력 리소스 형태(예컨대, 프린터, 플로터등)가 대응하는 형태의 판정 데이터에 의해 판정된다. 메시지 센터는 이들 출력 리소스를 수집하고, 루트 레벨메시지 센터에 공중인 것을 등록한다. 루트 레벨 센터는 충분한 정보를 갖는 각각의 등록된 공중 출력 장치에 대한 기록을 생성하고, 다른 메시지 센터는 리소스를 원격으로 액세스하기 위해 대응하는 리퍼런스로서 이 기록에 포함된 데이터를 이용할 수도 있다.The message center will be described in more detail with reference to FIG. Remote desktop clients and print services register their output resources with a message center that provides access to these services through component registration and deregistration component 10. During the registration process, the output resource type (e.g. printer, plotter, etc.) is determined by the determination data of the corresponding type. The message center collects these output resources and registers them as public with the route level message center. The root level center generates a record for each registered public output device with sufficient information, and other message centers may use the data contained in this record as the corresponding reference to remotely access the resource.
출력 장치가 메시지 센터로부터 그 자신을 분리하기를 원할 때, 메시지 센터로 등록 해제 요구를 송신한다. 따라서, 메시지센터는 루트 메시지 센터로부터 출력 장치를 등록해제한다. 출력 장치가 공중 리소스라면, 루트 메시지 센터 데이터베이스 내의 대응하는 공유 기록도 제거된다. 작업 요구 접수 태스크(12)는 메시지 센터가 작업 요구를 수신하는 것을 가능하게 한다. 일실시예에서, 메시지 센터는 작업 요구 제공을 실시할 수 있는 CGI 스크립트의 세트를 실행하는 아파치 웹 서버(Apache Web Server)를 채용한다. CGI 스크립트는 인쇄 작업을 메시지 센터 내의 시스템 작업 큐에 추가한다. 작업 큐 엔트리가 일단 생성되면, 작업 제공은 완료된 것으로 고려된다.When the output device wants to detach itself from the message center, it sends a deregistration request to the message center. Thus, the message center deregisters the output device from the root message center. If the output device is a public resource, the corresponding shared record in the root message center database is also removed. The work request accepting task 12 enables the message center to receive the work request. In one embodiment, the message center employs an Apache Web Server that executes a set of CGI scripts capable of providing work requests. CGI scripts add print jobs to the system job queue within the message center. Once the job queue entry is created, the job offer is considered complete.
작업 요구가 제공되고 나면, 요구의 제어는 작업 요구 프로세스 태스크(14)에 의해 수행된다. 작업 요구가 시스템에 진입되면, 메시지 센터는 원격 스토어 상의 원격 소스의 참조하여 소스 데이터를 수집하거나, 제공기는 로컬 소스를 메시지 센터로 전송할 것이다. 이어서, 메시지 센터는 인쇄 서비스를 위치시켜 소스 데이터에 대응하는 출력 이미지 파일을 예정된 출력 장치로 렌더링 한다.Once the work request is provided, control of the request is performed by the work request process task 14. When a work request enters the system, the message center may collect source data by reference of the remote source on the remote store, or the provider may send a local source to the message center. The message center then locates the print service to render the output image file corresponding to the source data to the intended output device.
출력 이미지 파일이 생성된 후, 인쇄 서비스는 파일 리퍼런스를 메시지 센터로 회답하고, 이어서 메시지 센터는 렌더링된 이미지를 출력 장치로 송신하기 위해 대응하는 RDC를 호출한다. RDC 또는 예정된 장치가 사용가능하지 않다면, 인쇄 요구는 연기된다. 이어서 시스템은 구성가능한 재시도 기간에 의해 정의된 바와 같이 인쇄 요구를 RDC로 재송신 하기 위해 시도한다. 이들 동작은 작업 출력 스케줄링 및 큐링(Qeueing) 태스크(16)에 의해 조정된다.After the output image file is created, the print service returns a file reference to the message center, which then calls the corresponding RDC to send the rendered image to the output device. If no RDC or scheduled device is available, the print request is postponed. The system then attempts to resend the print request to the RDC as defined by the configurable retry period. These operations are coordinated by job output scheduling and queuing tasks 16.
작업 출력 요구가 출력 장치로 송신된 후, 작업 상태는 작업 출력 상태 모니터링 태스크(18)를 통해 메시지 센터로 회답된다. 이어서, 메시지 센터는 그 상태를 업데이트하고, 현재의 작업 출력 상태의 이용자에게 알려준다. 하나의 현재 구현에 있어서, 시스템은 다음의 작업 상태, 즉 DOCUMENT_DONE, INPUT_PENDING, RESOURCE_WAIT, IN_PROGRESS, COMPLETE, CANCEL_BY_USER, 및 ERROR를 지원한다.After the job output request is sent to the output device, the job status is returned to the message center via the job output status monitoring task 18. The message center then updates its status and informs the user of the current job output status. In one current implementation, the system supports the following working states: DOCUMENT_DONE, INPUT_PENDING, RESOURCE_WAIT, IN_PROGRESS, COMPLETE, CANCEL_BY_USER, and ERROR.
피어(peer) 메시지 센터 태스크(20)에 따라, 시스템 아키텍처는 각종 동작에 대한 P2P 메시지 센터 통신을 허용한다. 피어 메시지 센터 사이의 인터액션은 구역(0) 룩업 질의, 문서 라우팅 요구, 문서 인쇄 요구, 및 상태 복원 응답(status back replies)을 포함한다.In accordance with the peer message center task 20, the system architecture allows P2P message center communication for various operations. Interactions between peer message centers include zone (0) lookup queries, document routing requests, document print requests, and status back replies.
2개의 메시지 센터 인터액션의 예를 도7 및 도8에 나타낸다. 도7에서의 예는 공중 장치로 임의의 일련의 요구를 준비하기 위해 공중 장치를 그의 홈 메시지 센터로 접속하기 위해 이용자가 어떻게 요구하는지를 나타낸다. 질의 순서는 아래와 같이 진행된다.Examples of two message center interactions are shown in FIGS. 7 and 8. The example in FIG. 7 shows how a user requires to connect a public device to its home message center to prepare any series of requests to the public device. The query sequence is as follows.
1. 이용자(U1)는 공중 장치 접속 요구를 이용자의 홈 메시지 센터(MC1)에 제공한다. 이 공중 장치(D2)는 루트 메시지 센터 접속 장치일 수도 있다.1. The user U1 provides a public device connection request to the user's home message center MC1. This public device D2 may be a root message center connection device.
2. 이용자의 홈 메시지 센터(MC10)는 출력 장치로의 액세스를 위해 루트 메시지 센터(MC0)에 질의한다.2. The user's home message center MC10 queries the root message center MC0 for access to the output device.
3. 루트 메시지 센터(MC0)는 특정 출력 장치로의 경로를 위치시키고, 그 원격 데스크탑 클라이언트(RDC1)에 접속 요구를 송신한다.3. The root message center MC0 locates a path to a specific output device and sends a connection request to the remote desktop client RDC1.
4. 원격 데스크탑 클라이언트(RDC1)는 이용자의 홈 MC(MC1)에 접속하고, 따라서 접속이 이루어진다.4. The remote desktop client RDC1 connects to the user's home MC MC1, thus making a connection.
도8에 나타낸 예는 P2P 메시지 센터 요구에 대응한다. 순서는 다음과 같다.The example shown in Figure 8 corresponds to a P2P message center request. The order is as follows:
1. 이용자(U1)는 공중 장치 접속 요구를 이용자의 홈 메시지 센터(MC1)에 제공한다. 이 공중 장치(D2)는 다른 피어 메시지 센터(MC2)에 등록될 수도 있다.1. The user U1 provides a public device connection request to the user's home message center MC1. This public device D2 may be registered with another peer message center MC2.
2. 이용자 홈 메시지 센터(MC1)가 루트 MC(MC0)에 질의한다.2. The user home message center MC1 queries the root MC MC0.
3. 루트 메시지 센터(MC0)는 루트 메시지 센터(MC0)로부터 조회를 수신하고, 루트 메시지 센터(MC0)로 응답을 송신한다.3. The root message center MC0 receives the inquiry from the root message center MC0 and sends a response to the root message center MC0.
5. 루트 메시지 센터(MC0)는 "OK" 응답을 수신하면, 이용자 홈 메시지 센터(MC1)로 경로 정보를 송신한다.5. When the root message center MC0 receives the "OK" response, it transmits the route information to the user home message center MC1.
6. 예정된 메시지 센터(MC2)가 이용자의 홈 MC(MC1)에 접속되고, 따라서 접속이 이루어진다.6. The scheduled message center MC2 is connected to the user's home MC MC1, and thus a connection is made.
루트 레벨 메시지 센터 대화형 태스크(22)에 따르면, 루트 레벨 메시지 센터의 개념은 공중 출력 리소스 공유를 촉진한다. 장점으로서, 루트 레벨 메시지 센터는 신속한 공중 리소스 룩업을 위해 중심 위치를 제공한다. 이러한 메커니즘을 지원하기 위해, 비-루트 레벨 메시지 센터는 필요시 다른 공중 리소스에 대해 질의하고, 또한 그들의 공중 리소스를 알리기 위해 루트 레벨 메시지 센터와 인터액션 해야만 한다.According to the root level message center interactive task 22, the concept of root level message center facilitates sharing of public output resources. Advantageously, the root level message center provides a central location for quick aerial resource lookups. To support this mechanism, non-root level message centers must query other public resources as needed and also interact with the root level message center to advertise their public resources.
원격 데스크탑 클라이언트는 메시지 센터가 출력 장치로 작업 요구를 송신하는 것을 돕는다. 보안 위험을 감소시키는 방식으로 총 시스템을 구성하는데 이용될 수도 있다. 즉, 보안 출력 장치에 대한 내부 RDC를 셋업하고, 공중 출력 장치에 대한 외부 RDC를 셋업한다. 이들 동작은 원격 데스크탑 클라이언트 관리 태스크(24)에 의해 제어된다.The remote desktop client helps the message center send work requests to output devices. It can also be used to configure total systems in a way that reduces security risks. That is, set up an internal RDC for the secure output device and set up an external RDC for the public output device. These operations are controlled by the remote desktop client management task 24.
메시지 센터는 다중 인쇄 서비스로 접속될 수 있다. 이러한 아이디어는 출력 장치를 보다 효율적으로 관리하기 위해 하나의 인쇄 서비스를 대신하여 인쇄 서비스 세트를 이용하는 것이다. 메시지 센터는 이들이 출력 이미지를 생성하는 핵심적인 구성요소이기 때문에 이들 인쇄 서비스와 밀접한 관계를 유지한다. 이들 인터액션은 인쇄 서비스 관리 태스크(26)에 의해 제어된다.The message center can be connected to multiple print services. The idea is to use a set of print services instead of one print service to manage the output device more efficiently. Message centers are closely related to these print services because they are the key components for generating output images. These interactions are controlled by the print service management task 26.
블루투스 및 802.11-인에이블 방식의 장치 등의 무선 장치를 지원하기 위해, 이 시스템은 하나 또는 그 이상의 무선 데이터 액세스 포인트를 배치한다. 각각의 WDAP는 관리를 위해 대응하는 메시지 센터를 필요로 하는 설명 및 정보의 세트를 갖는다. 즉, 각각의 무선 데이터 액세스 포인트의 동적 디폴트 출력 장치는 MC에 대응하는 WDAP에 의해 유지된다. 이들 오퍼레인션은 무선 데이터 액세스 포인트 관리 태스크(28)에 의해 제어된다.To support wireless devices, such as Bluetooth and 802.11-enabled devices, the system deploys one or more wireless data access points. Each WDAP has a set of descriptions and information that require a corresponding message center for management. That is, the dynamic default output device of each wireless data access point is maintained by the WDAP corresponding to the MC. These operations are controlled by the wireless data access point management task 28.
메시지 센터는 이용자 프로파일 관리 태스크(30)에 의해 묘사되는 바와 같이, 로그인 인증을 위한 이용자 프로파일 및 약간의 디폴트 서비스 설정을 유지한다. 즉, 각 이용자에 대한 정적 디폴트 프린터 및 동적 디폴트 프린터는 이용자 프로파일에서 정의된다. 이용자는 표준 웹 인터페이스 또는 장치 인터페이스를 통해 그들의 프로파일을 변경할 수 있다.The message center maintains a user profile and some default service settings for login authentication, as depicted by the user profile management task 30. That is, static default printers and dynamic default printers for each user are defined in the user profile. Users can change their profile through a standard web interface or device interface.
이용자 인터페이스 관리 태스크(32)는 시스템에 의해 제공되는 각종 이용자 인터페이스를 제어한다. "소비자" 이용자 인터페이스는 서비스 요구를 실시하기 위해서, 또한 그들의 계정을 관리하기 위해 이용자에게 이용된다. 일실시예에서, 소비자 인터페이스는 홈 이용자에 대해 하나의 세그먼트를 가지며, 게스트 이용자에 대해 다른 세그먼트를 갖는다. 게스트 이용자 인터페이스는 보안 이유로 인하여 특정 조건하에서 시스템 리소스에 대해 제한된 액세스를 제공한다. 이 시스템은 또한 디버깅 및 유지보수의 목적으로, 또한 각종 시스템 구성요소와 파라미터를 셋업하기 위해 관리 이용자 인터페이스를 갖는다.The user interface management task 32 controls various user interfaces provided by the system. The "consumer" user interface is used by the user to fulfill service requests and also to manage their accounts. In one embodiment, the consumer interface has one segment for the home user and another segment for the guest user. The guest user interface provides limited access to system resources under certain conditions for security reasons. The system also has an administrative user interface for debugging and maintenance purposes, and also for setting up various system components and parameters.
인쇄 서비스는 도2에 나타낸 5개의 주요 태스크를 수행한다. 렌더링 출력 이미지 태스크(34)에 따르면, 인쇄 서비스가 작업-렌더링 요구를 수신하면, 무-드라이버(driverless) 인쇄(DP) 서버라고 불리는 내부 구성요소가 소스 데이터를 수집하고, 이 데이터를 그 DP 서버 큐에 배치시킨다. 이어서, DP 서버는 적당한 드라이버를 위치시키기 위해 DPS 인쇄 모듈을 호출하고, 출력 이미지를 생성한다. DPS 인쇄 모듈은 내부 출력 큐로 출력 이미지를 보내고, 제어를 DP 서버로 되돌린다. 이들 동작을 이하에 더욱 상세히 설명한다.The print service performs the five main tasks shown in FIG. According to the render output image task 34, when a print service receives a job-rendering request, an internal component called a driverless print (DP) server collects source data and sends this data to the DP server. Place it in a queue. The DP server then calls the DPS print module to locate the appropriate driver and generates an output image. The DPS print module sends the output image to an internal output queue and returns control to the DP server. These operations are described in more detail below.
DPS 인쇄 모듈이 DP 서버로 제어를 되돌리면, DP 서버는 상태 모니터 모듈을 호출한다. 목적지 장치가 인쇄 서비스에 지역적으로 접속되지 않으면, 태스크(36)에 따라 상태 모니터는 출력 이미지를 공유 리포지토리에 기록한다. 이어서, DPS 인쇄 모듈은 제어를 DP 서버로 되돌린다. 목적지 장치 지역적으로 접속된 장치라면, 이어서 상태 모니터는 태스크(38)에 따라 출력 이미지를 장치로 송신한다. 이어서, DPS 인쇄 모듈이 제어를 DP 서버로 되돌린다. 태스크(40)에 따라 상태 모니터가 작업 상태를 DP 서버로 되돌리면, 작업 상태는 다시 메시지 센터로 포워딩된다. 로컬 출력 장치 관리 태스크(42)는 인쇄 서비스가 지역적으로 접속된 출력 장치를 지원하도록 해준다. 이는 메시지 센터로/메시지 센터로부터 장치 등록 및 등록해제를 제어한다.When the DPS print module returns control to the DP server, the DP server calls the status monitor module. If the destination device is not locally connected to the print service, according to task 36, the status monitor writes the output image to the shared repository. The DPS printing module then returns control to the DP server. Destination Device If it is a locally connected device, the status monitor then sends an output image to the device in accordance with task 38. The DPS printing module then returns control to the DP server. According to task 40, when the status monitor returns the work status to the DP server, the work status is forwarded back to the message center. The local output device management task 42 allows the print service to support locally connected output devices. This controls device registration and deregistration to / from the message center.
도3을 참조하면, 원격 데스크탑 클라이언트는 장치 등록 및 등록해제 태스크(44)를 통해 장치를 메시지 센터로 접속하는 관리를 돕는다. 등록을 위해, 원격 데스크탑 클라이언트는 장치 등록 요구를 송신하여 메시지 센터와의 결합(association)을 설정한다. 등록해제를 위해, 원격 데스크탑 클라이언트는 장치 등록해제 요구를 송신하여 메시지 센터로부터의 결합을 제거한다.Referring to Figure 3, the remote desktop client assists in managing the connection of the device to the message center via the device registration and deregistration task 44. For registration, the remote desktop client sends a device registration request to establish an association with the message center. For deregistration, the remote desktop client sends a device deregistration request to remove the association from the message center.
원격 데스크탑 클라이언트는 태스크(46)에 따라 출력 이미지 파일에 대한 리퍼런스를 갖는 메시지 센터로부터 작업 출력 요구를 수신한다. 원격 데스크탑 클라이언트는 출력 이미지 파일을 검색하고, 이들을 예정된 출력 장치로 송신한다. 리퍼런스가 이용되지 않으면, 메시지 센터는 출력 데이터를 원격 데스크탑 클라이언트로 직접 전송한다. 작업 출력이 종료되면, 원격 데스크탑 클라이언트는 작업 출력 상태를 업데이트할 것을 메시지 센터에 통보하고, 태스크(48)에 따라 이용자에게 알린다.The remote desktop client receives a job output request from the message center having a reference to the output image file in accordance with task 46. The remote desktop client retrieves the output image files and sends them to the intended output device. If reference is not used, the message center sends the output data directly to the remote desktop client. When the job output is finished, the remote desktop client notifies the message center to update the job output status and informs the user according to task 48.
도4를 참조하면, 각각의 무선 데이터 액세스 포인트는 다음의 주요 태스크를 수행한다. 무선 데이터 액세스 포인트는 시스템에 링크되기 위해서 그 자신을, 구성요소 등록 및 등록해제 태스크(50)를 통해 제어되는 메시지 센터에 등록해야만 한다. WDAP 등록의 목적은 WDAP 디폴트 출력 장치(예컨대, 가까운 출력 장치)의 메시지 센터에 알리기 위함이다. 이는 메시지 센터가 모바일 이용자의 동적 디폴트 프린터를 결정하는 것을 돕는다. 결합을 해제하기 위해, 태스크(50)는 등록해제 요구를 동일한 메시지 센터로 송신한다.4, each wireless data access point performs the following main tasks. The wireless data access point must register itself with the message center controlled via component registration and deregistration task 50 to be linked to the system. The purpose of the WDAP registration is to inform the message center of the WDAP default output device (e.g., the nearest output device). This helps the message center determine the dynamic default printer of the mobile user. To unbind, task 50 sends a deregistration request to the same message center.
무선 장치가 유선 네트워크를 액세스하기 위해서는, 요구를 수신하고, 요구를 무선 패킷으로부터 유선 패킷으로 변환하기 위한 액세스 포인트가 있어야만 한다. WDAP 서브는 시스템에 대한 데이터 액세스 포인트이다. 비-셀룰러 장치 무선 요구는 태스크(52)에 따라 무선 데이터 액세스 포인트를 통해 시스템으로 들어간다.In order for a wireless device to access a wired network, there must be an access point for receiving the request and converting the request from a wireless packet to a wired packet. The WDAP sub is the data access point for the system. The non-cellular device radio request enters the system via the wireless data access point in accordance with task 52.
무선 데이터 액세스 포인트가 접속 요구를 수신하면, 무선 데이터 액세스 포인트는 이 요구를 IP 패킷으로 변환하고, 이어서 태스크(54)에 따라, IP 패킷을 요구에 의해 정의된 목적지로 송신한다. 그 대신, 시스템 응답은 태스크(56)에 의해 제어된다. 이용자가 제1 WDAP에 근접한 제1 위치로부터 제2 WDAP에 근접한 제2 위치로 이동하면, 시스템은 제2 WDAP를 통해 상이한 장치 정보 세트를 이용자에게 회답한다. 따라서, WDAP의 키 응답(responsibility) 중 하나가 그 디폴트 출력 장치를 표시하고, 장치 정보가 동적으로 생성될 수 있도록 기록 출력 장치 지리적 관련 태스크(58)에 따라 메시지 센터와 통신한다.When the wireless data access point receives the connection request, the wireless data access point converts the request into an IP packet and then transmits the IP packet to the destination defined by the request, in accordance with task 54. Instead, system response is controlled by task 56. When the user moves from a first location close to the first WDAP to a second location close to the second WDAP, the system returns a different set of device information to the user via the second WDAP. Thus, one of the WDAP's key responses indicates its default output device and communicates with the message center according to the recording output device geographic task 58 so that device information can be dynamically generated.
상술한 바와 같이, 시스템은 비-블루투스식 장치(이들은 블루투스-인에이블 방식의 장치임)가 이 시스템과 작업할 수 있게 하기 위해 필요에 따라 블루투스 게이트웨이 및 블루투스 장치 에뮬레이션을 이용할 수도 있다. 원하다면, 블루투스 게이트웨이 기능은 하드웨어 비용을 절감하기 위해 아래에 기술되는 바와 같이 무선 데이터 액세스 포인트에 내장될 수도 있다.As mentioned above, the system may use Bluetooth gateway and Bluetooth device emulation as needed to enable non-Bluetooth devices (these are Bluetooth-enabled devices) to work with the system. If desired, the Bluetooth gateway function may be embedded in a wireless data access point as described below to reduce hardware costs.
동작의 이론Theory of operation
이 섹션은 시스템의 공동 동작 뿐만 아니라 요구 데이터 흐름을 설명한다. 다음은 이 시스템의 주요 특징 및 필수사항을 나타낸다.This section describes the required data flow as well as the joint operation of the system. The following shows the main features and requirements of this system.
1. 모든 이용자는 홈 메시지 센터와 연결된다.1. All users are connected to the home message center.
2. 이 시스템은 두개의 메시지 센터 사이, 메시지 센터와 인쇄 서비스 사이, 그리고 메시지 센터와 RDC 사이에 보안을 실시할 수도 있다.2. The system may secure between two message centers, between a message center and a print service, and between a message center and an RDC.
3. 메시지 센터는 리소스의 정규 이용자 및 게스트(방문자) 이용자 액세스 제어를 제공한다.3. The message center provides regular user and guest (visitor) user access control of the resource.
4. 각각의 WDAP는 이와 결합되는 구성가능한 디폴트 프린터를 갖는다.4. Each WDAP has a configurable default printer associated with it.
5. WDAP를 통해 시스템을 액세스할 때, 이용자가 그 프로파일 내의 이용자 항목이 동적 시스템 겹쳐 쓰기를 허용하면, 이용자의 디폴트 프린터는 이용자가 현재 접속되어있는 WDPA에 기반하여 변경될 것이다.5. When accessing the system via WDAP, if the user allows the user entry in the profile to overwrite the dynamic system, the user's default printer will change based on the WDPA the user is currently connected to.
6. 게스트 이용자 인터페이스는 그 구역 내의 방문객 인쇄를 지원하는 메시지 센터 상에 구현될 수도 있다. 이러한 인터페이스는 이용자가 등록할 필요가 없고, 프로파일을 생성할 필요도 없다. 따라서, 이는 정적 디폴트 프린터 인쇄를 지원하지 않는다. 그러나, 이 시스템은 방문객 동적 디폴트 프린터 인쇄는 지원한다. 필요에 따라, 이용자는 목적지 프린터를 특정할 수 있다.6. The guest user interface may be implemented on a message center that supports visitor printing within that zone. This interface does not need to be registered by the user or create a profile. Thus, it does not support static default printer printing. However, the system supports visitor dynamic default printer printing. If necessary, the user can specify a destination printer.
이 시스템의 모듈러 아키텍처 설계 및 연장 가능한 데이터베이스 개요(schema)는 복합한 보안성 개요가 구현될 수 있게 한다. 먼저, 이용자 인증에 있어서, 가입자(subscriber) 데이터베이스는 지원되는 액세스 장치를 통해 시스템으로 진입한 이용자 로그인 데이터를 확인하기 위해 이용되는 이용자 프로파일을 포함한다. 확인이 실패하면, 추후 리퍼런스 또는 조사(investigation)를 위해 시스템상으로 기록이 로그되고, 로그 요구가 거절된다. 게다가, 메시지 센터는 높은 레벨의 클라이언트 및 서버 인증을 위해 공중 키 기반구조 지원을 구현할 수 있다. 두 번째로, 데이터 암호화 지원에 있어서, 각각의 모듈은 컨텐츠 데이터를 보호하기 위해 암호화를 구현할 수 있다. 암호화는 메시지 센터 대 파일 스토어, 인쇄 서비스 대 메시지 센터, 출력 리포지토리 대 인쇄 서비스, 및 RDC 대 출력 리포지토리 사이에 실시될 수 있다. 세 번째로, 부인 방지(non-repudiation) 구현 하에서, 시스템은 각각의 가입자에 고유한 ID를 할당한다. 이용자가 시스템에 요구를 제공하면, 요구는 이용자 ID 와 시각소인(timestamp)을 즉각 태그한다. 이것이 작업 제공 요구라면, 중복 카피가 시스템에 생성되고, 로그되어, 추후 리퍼런스 및 과금 목적을 위해 획득되어 진다.The system's modular architecture design and extensible database schema enable multiple security overviews to be implemented. First, in user authentication, the subscriber database includes a user profile used to verify user login data entering the system via a supported access device. If the verification fails, the record is logged onto the system for later reference or investigation and the log request is rejected. In addition, the message center can implement public key infrastructure support for high levels of client and server authentication. Second, in supporting data encryption, each module may implement encryption to protect content data. Encryption may be performed between the message center to file store, print service to message center, output repository to print service, and RDC to output repository. Third, under a non-repudiation implementation, the system assigns a unique ID to each subscriber. When the user provides a request to the system, the request immediately tags the user ID and timestamp. If this is a job offer request, duplicate copies are created in the system, logged and acquired for later reference and billing purposes.
전술한 보안 구현에 더하여, 모듈러 및 이산 구조의 다른 이점은, 관리자가 각 조직에 대한 특정 요구에 기반하여 보안 설정을 개별화할 수 있다는 점이다. 예컨대, 가상 사설 네트워크(VPN)는 공유 파일 서버를 메시지 센터에 링크하기 위해 이용될 수도 있다. 마찬가지로, VPN은 메시지 센터와 원격 데스크탑 클라이언트 사이에 구현될 수 있다. 이 시스템 아키텍처는 소프트웨어 및 하드웨어 VPN 구성을 모두 지원한다. 전체 시스템은 인증 및 인증화를 제공하고, 데이터 무결성 및 데이터 프라이버시를 보호하며, 부인 방지 요구사항을 만족시킬 뿐만 아니라 공중 키 인프라를 지원하도록 구성될 수 있다.In addition to the security implementations described above, another benefit of the modular and discrete architecture is that administrators can personalize security settings based on the specific needs of each organization. For example, a virtual private network (VPN) may be used to link the shared file server to the message center. Similarly, a VPN can be implemented between the message center and the remote desktop client. This system architecture supports both software and hardware VPN configurations. The entire system can be configured to provide authentication and authentication, protect data integrity and data privacy, meet non-repudiation requirements, as well as support public key infrastructure.
RDC 클라이언트 등록 요구에 따라 RDC와 메시지 센터 사이의 인터액션을 도시하는 흐름도를 도9에 나타낸다. RDC는 세션 패킷을 메시지 센터로 전송하여 클라이언트 등록 프로세스를 개시한다. 일실시예에서, 세션 패킷은 클라이언트 설명자 문자열, 클라이언트 타입, 파일 이름, 중간 이름, 끝 이름, 어드레스1, 어드레스2, 도시, 주, 우편번호, 이용자ID, 보호된 패스워드, 및 이메일 값을 포함하는, 메시지 센터 상의 클라이언트를 정의하기 위해 각종 파라미터를 포함한다. 성공시, 클라이언트 식별자(CID)는 RDC로 되돌려진다.9 is a flowchart showing the interaction between the RDC and the message center in accordance with the RDC client registration request. The RDC initiates a client registration process by sending a session packet to the message center. In one embodiment, the session packet includes a client descriptor string, client type, file name, middle name, end name, address 1, address 2, city, state, zip code, user ID, protected password, and email value. It contains various parameters to define the client on the message center. On success, the client identifier (CID) is returned to the RDC.
RDC 프린터 등록 요구에 대응하는 흐름도를 도10에 나타낸다. 전술한 프로세스에서와 같이, RDC는 세션 패킷을 메시지 센터로 송신하여 프린터 등록 프로세스를 개시한다. 이 패킷은 메시지 센터 상의 클라이언트를 식별하는 데이터를 포함하고, 등록 요구된 리소스(예컨대, 출력장치)의 상태를 제공한다. 성공시, 프린터 리소스 식별자(PID)가 RDC로 되돌려진다.10 is a flowchart corresponding to the RDC printer registration request. As in the process described above, the RDC sends a session packet to the message center to initiate the printer registration process. This packet contains data identifying the client on the message center and provides the status of the resource (eg, output device) requested to be registered. On success, the printer resource identifier (PID) is returned to the RDC.
원격 데스크탑 클라이언트는 다른 공중 리소스를 액세스하고, 그 자원을 이용 가능하게 하기 위해 MC에 등록되어야 한다. 장치 리소스 정의를 메시지 센터로 제공하는 RDC에 대응하는 흐름도를 도11에 나타낸다. RDC는 메시지 센터에 정의된 장치 리소스를 갖기 위해 장치 리소스 정의 패킷을 메시지 센터로 송신한다. 일반적으로, 이 정보는 장치 이름, 장치 타입, 장치 설명자, 및 장치 상태를 포함한다.The remote desktop client must register with the MC to access other public resources and make them available. 11 is a flowchart corresponding to an RDC providing a device resource definition to a message center. The RDC sends a device resource definition packet to the message center to have the device resource defined in the message center. In general, this information includes the device name, device type, device descriptor, and device status.
클라이언트가 원격 공중 장치를 액세스하기를 원하면, 먼저 공중 장치 질의를 통해 장치를 위치시켜야 한다. 이 동작은, 도12의 흐름도에서 나타낸 바와 같이, 루트 메시지 센터에게 이용 가능한 공중 장치의 리스트에 대해 질의하기 위해홈 메시지 센터를 필요로 한다. 이어서, 메시지 센터는 그러한 공중장치가 구역 내에서 지원되는 지를 판정한다. 이는 홈 메시지 센터가 그러한 공중 장치를 지원하는 등록된 인쇄 서비스를 위치시킬 필요가 있다는 것을 의미한다. 질의에 응답하여, 이용 가능한 공중 장치의 리스트가 요구자에게 회답된다. 공중 장치를 지원하는 등록 인쇄 서비스가 발견되지 않으면, 지원되지 않는 공중 장치는 그 리스트에 포함되지 않는다.If a client wants to access a remote public device, it must first locate the device via a public device query. This operation requires a home message center to query the root message center for a list of available public devices, as shown in the flow chart of FIG. The message center then determines whether such airborne devices are supported within the zone. This means that the home message center needs to locate registered print services that support such public devices. In response to the query, a list of available public devices is returned to the requester. If a registration print service that supports a public device is not found, then the unsupported public device is not included in the list.
도13 및 도14는, 홈 도메인 내의 인쇄 서비스에 직접 접속되는(예컨대, 도6에서 U1 -> D2 또는 U1 -> D3) 출력 장치로 그 홈 도메인 내의 이용자에 의해 발행된 리퍼런스에 의한 인쇄(PBR: Print By Reference) 작업 요구에 대응하는 프로세스 흐름도 및 구성요소 인터액션 도면을 각각 나타낸다. PBR 작업 요구에서, 이용자는 타겟 목적지 프린터에서 인쇄되는 원격 스토어(74)상에 저장된 문서(72)(원격 소스)를 가질 수 있고, 여기서 원격 배치되어 저장된 무서 및 목적지 프린터는 이용자 인터페이스(76)를 통해 선택될 수도 있다.Figures 13 and 14 illustrate printing by reference issued by a user in the home domain to an output device that is directly connected to a print service in the home domain (e.g. U1-> D2 or U1-> D3 in Figure 6). : Print By Reference) shows a process flow diagram and a component interaction diagram respectively corresponding to a work request. In a PBR job request, a user may have a document 72 (remote source) stored on a remote store 74 that is printed at a target destination printer, where the remotely stored and stored printer and destination printer may display the user interface 76. May be selected.
비-PBR 작업 요구에 대응하는 프로세스 흐름도를 도15에 나타낸다. 이 예에서, 모든 동작은 원격 소스를 검색하기 보다 소스 데이터가 이용자 장치로부터 메시지 센터로 업로드되는 것을 제외하면 PBR 작업 요구와 동일하다.A process flow diagram corresponding to a non-PBR job request is shown in FIG. In this example, all operations are the same as PBR work requests except that source data is uploaded from the user device to the message center rather than searching for a remote source.
도16 및 도17은 홈 도메인 내의 원격 데스크탑 클라이언트에 접속되는(예컨대, 도6에서 U1 -> D4) 로컬 프린터로 그 홈 도메인 내의 이용자에 의해 제공된 PBR 작업 요구에 대응하는 프로세스 흐름도 및 구성요소 작호작용 도면을 각각 나타낸다. 이 경우, 출력 이미지는 인쇄 서비스에 의해 렌더링되고, 출력 이미지 파일(80)로서 출력 리포지토리(78)에 저장된다. 이어서, 인쇄 요구는 적절한 RDC(예컨대, RDC2)로 송신되고, 이어서 리포지토리로부터 출력 이미지 파일을 검색하고, 동일한 것을 출력 장치(예컨대, D4)로 제공하여 물리적으로 렌더링 한다. 종료됨에 따라, 인쇄 종료 통보가 메시지 센터를 통해 다시 이용자에게 송신되고, 이용자 인터페이스(76) 상에 표시된다.16 and 17 illustrate process flow diagrams and component interactions corresponding to PBR job requests provided by a user in that home domain to a local printer connected to a remote desktop client in the home domain (eg, U1-> D4 in FIG. 6). Each figure is shown. In this case, the output image is rendered by the print service and stored in the output repository 78 as the output image file 80. The print request is then sent to the appropriate RDC (eg RDC2), which then retrieves the output image file from the repository and provides the same to the output device (eg D4) to render physically. As it ends, a print end notification is sent back to the user via the message center and displayed on the user interface 76.
도18 및 도19는 루트 메시지 센터 공중 출력 장치(D1) 상으로 인쇄되어질, 그 홈 도메인(예컨대, 구역1) 내의 이용자에 의해 제공되는 PBR 작업 요구에 대응하는 프로세스 흐름도 및 구성요소 인터액션 도면을 각각 나타낸다. 프로세스는 공중 장치 질의를 수행하기 위해 UI 활성 이용자 인터페이스(76)를 이용하여 개시된다. 본질적으로, 질의는 이용 가능한 공중 장치의 리스트를 회답하기 위한 것이다. 필요에 따라, 이용자는 알려진 공중 장치를 선택할 수도 있고, 질의는 장치가 공중 액세스에 대해 이용가능한지를 확인하는 태스크를 수행한다. 이용자는 그 홈 메시지 센터(MC1)로 질의를 제공하고, MC는 이 질의를 루트 MC로 포워딩한다. 이어서, 루트 MC는 그 데이터베이스를 검사하여, (질의와 함께 송신된 이용자 인증 정보 및 이용자 주요 프린터의 사전 구성 리스트를 기반하여)이용자에 대해 모든 프린터가 이용가능한지를 판정한다. 로컬 인쇄 서비스는 홈 메시지 센터로의 출력 장치 경로와 함께 식별된다. 이어서, 공중 장치 정보는 다시 이용자에게 송신되고, 이용자는 공중 출력 장치를 선택하여, 홈 MC로 인쇄 작업 요구를 제공할 수 있다.18 and 19 show process flow diagrams and component interaction diagrams corresponding to PBR job requests provided by users in their home domain (eg, Zone 1) to be printed onto the root message center public output device D1, respectively. Indicates. The process is initiated using the UI active user interface 76 to perform a public device query. In essence, the query is to return a list of available public devices. If desired, the user may select a known public device and the query performs a task to verify that the device is available for public access. The user provides a query to the home message center MC1, which the MC forwards the query to the root MC. The root MC then examines the database to determine if all printers are available to the user (based on the user authentication information sent with the query and the preconfigured list of user principal printers). The local print service is identified along with the output device path to the home message center. The public device information is then sent back to the user, who can select the public output device and provide the print job request to the home MC.
인쇄 작업 요구를 수신하면, 홈 MC는 인쇄될 문서를 검색하고(이 경우, 문서는 로컬 소스이므로, 이는 발신 장치로부터 MC로 송신됨), 렌더링 요구와 함께 문서를 예정된 인쇄 서비스(PS1)로 송신한다. 이어서, 인쇄 서비스는 문서의 출력 이미지를 렌더링하고, 출력 리포지토리(78)에 이를 저장한다. 이어서, 렌더링이 종료되었음을 알리는 통보가 PS로부터 다시 홈 MC로 송신됨에 따라, 홈 MC는 출력 리포지토리로부터 렌더링된 데이터(예컨대 출력 이미지 파일(80))를 검색하고, 출력 이미지 데이터와 함께 인쇄 요구를 예정된 원격 데스크탑 클라이언트(RDC1)로 송신한다. 이어서, RDC는 출력 이미지 데이터를 예정된 출력 장치(D1)로 송신함에 따라, 하드-카피 출력이 렌더링되고, 인쇄 종료 통보가 RDC로 회신된다. 이어서, 인쇄 종료 통보는 루트 및 홈 MC를 통해 다시 이용자에게 포워딩된다.Upon receiving a print job request, the home MC retrieves the document to be printed (in this case, the document is a local source, so it is sent from the originating device to the MC) and sends the document along with the rendering request to the scheduled print service PS1. do. The print service then renders the output image of the document and stores it in the output repository 78. Then, as a notification is sent back from the PS to the home MC informing that the rendering is finished, the home MC retrieves the rendered data (eg, the output image file 80) from the output repository, and schedules a print request with the output image data. Send to remote desktop client (RDC1). Then, as the RDC transmits the output image data to the intended output device D1, the hard-copy output is rendered, and the print end notification is returned to the RDC. The print end notification is then forwarded back to the user via the root and home MC.
메시지 센터 액세스 메커니즘Message center access mechanism
일반적으로, 홈 메시지 센터를 액세스하기 위한 3가지 메커니즘이 있다. 이들은 유선 네트워크 접속, 무선 네트워크 접속, 및 무선 웹 셀룰러 접속을 포함한다. (본 발명에 이용된 바와 같이, 셀룰러 접속은 셀-기반 인프라를 통해 구현된 셀룰러 및 SC 네트워크를 포함하는 모든 무선 접속을 포함한다.) 예컨대, 셀룰러 폰(100), PDA(102), 및 대화형 페이저(104)를 포함하는 무선 웹-인에이블 방식의 장치의 이용자는 복수의 셀룰러 타워(106) 및 셀룰러 서비스 프로바이더 네트워크 동작 센터(108)를 포함하는 셀룰러 네트워크를 통해 메시지 센터(MCn)를 액세스할 수 있다.In general, there are three mechanisms for accessing a home message center. These include wired network connections, wireless network connections, and wireless web cellular connections. (As used in the present invention, a cellular connection includes all wireless connections including cellular and SC networks implemented through a cell-based infrastructure.) For example, cellular phone 100, PDA 102, and conversations. A user of a wireless web-enabled device that includes a typed pager 104 may access a message center MCn via a cellular network that includes a plurality of cellular towers 106 and a cellular service provider network operation center 108. Can be accessed.
미국에서, 무선 인터넷(예컨대, 무선-웹) 액세스는 일반적으로 WAP-인에이블 방식의 장치와 함께 동작하는 무선 어플리케이션 프로토콜(WAP: WirelessApplication Protocol)을 이용하여 제공된다. 아시아에서, 무선 인터넷 액세스는 일반적으로 i-모드 프로토콜을 이용하여 제공된다. i-모드 프로토콜을 이용하여 데이터를 액세스하기 위해서, 무선 장치는 i-모드 장치이어만 하고, 또는 i-모드 및 WAP 연결성(connectivity)을 모두 제공해야 한다. 기타 적게 이용되는 프로토콜 역시 세계의 각 지역에서 이용될 수도 있다. 도20에 나타낸 실시예에서, 이러한 무선-웹 접속은 WAP 게이트웨이 서버(112)에 의해 호스트되는 WAP 게이트웨이(110)를 통해 더 사용될 수 있다. 필요에 따라, i-모두 게이트웨이와 같은 다른 타입의 무선-웹 게이트웨이가 무선 서비스 프로바이더에 의해 제공되는 설비에 따라 이용될 수도 있다.In the United States, wireless Internet (eg, wireless-web) access is generally provided using a Wireless Application Protocol (WAP) that operates in conjunction with a WAP-enabled device. In Asia, wireless internet access is generally provided using an i-mode protocol. In order to access data using an i-mode protocol, the wireless device must be an i-mode device or provide both i-mode and WAP connectivity. Other less commonly used protocols may also be used in different parts of the world. In the embodiment shown in FIG. 20, this wireless-web connection may be further used through the WAP gateway 110 hosted by the WAP gateway server 112. If desired, other types of wireless-web gateways, such as i-all gateways, may be used depending on the facilities provided by the wireless service provider.
WAP-인에이블 방식의 장치는 이러한 장치에 의해 이용되도록 설계되는 컨텐츠를 제공하는 각종 인터넷 사이트로부터 데이터를 액세스할 수 있다. 이하에 더 상세히 설명되는 바와 같이, 이 데이터는 일반적으로 무선 마크업 랭귀지(WML:Wireless Markup Language) 데이터로서 장치로 전달된다. WML은 저해상도 디스플레이를 고려하여 제한된 브라우징 능력 및 무선 핸드폰, PDA, 및 포켓 PC 와 같은 현재의 핸드헬드(handheld) 장치 상에서 이용 가능한 제한된 네비게이션 능력을 돕도록 설계되는 특정 마크업 랭귀지를 포함한다. WML은 HDML(Handheld Device Markup Language)를 포함하고, 그 루트를 XML(extensible Markup Language)로 추적할 수 있다. 이는 이용자 정의 확장을 지원하는 메타-랭귀지(meta-language)를 더 포함한다.WAP-enabled devices can access data from various Internet sites that provide content that is designed to be used by such devices. As will be described in more detail below, this data is generally conveyed to the device as Wireless Markup Language (WML) data. WML includes specific markup languages designed to aid limited browsing capabilities in view of low resolution displays and limited navigation capabilities available on current handheld devices such as wireless cellular phones, PDAs, and pocket PCs. WML includes the Handheld Device Markup Language (HDML) and can trace its root in extensible markup language (XML). It further includes meta-language that supports user-defined extensions.
WAP-인에이블 방식의 장치는 WAP 게이트웨이(WAP 게이트웨이(110))를 통해무선 인터넷 컨텐츠를 제공하는 각종 웹 사이트를 액세스하도록 제공되고, 하나 또는 그 이상의 WAP 게이트웨이 서버(112)를 이용하여 구현된다. 일반적으로, 서비스 프로바이더가 WAP 게이트웨이 설비를 고유할 수도 있지만, 각각의 WAP 게이트웨이는 무선 인터넷 액세스를 지원하는 영역 내의 각종 서비스 프로바이더에 의해 동작된다. 즉, WAP 게이트웨이 서버는, 무선 웹 사이트로부터 HTTP(Hypertext Transport Markup Language)를 통해 검색된 HTML(HyperText Markup Language)로 변환하는 것(이는 WML 내의 무선 웹 컨텐츠를 직접적으로 인코딩하지 않음)을 포함하는, WAP-인에이블 방식의 장치와의 인터액션을 돕는 기능을 제공하는 각종 소프트웨어 모듈 및/또는 어플리케이션을 수행한다. 이들 기능은 WAP 인코더 스크립트 컴파일러, HTML 데이터를 WML로 변환하는 프로토콜 어댑터를 포함한다.The WAP-enabled device is provided to access various web sites that provide wireless Internet content through a WAP gateway (WAP gateway 110) and is implemented using one or more WAP gateway servers 112. In general, although a service provider may be unique to a WAP gateway facility, each WAP gateway is operated by various service providers within the area that support wireless Internet access. That is, the WAP gateway server includes WAP, which includes converting from a wireless web site to HyperText Markup Language (HTML) retrieved via HTTP (Hypertext Transport Markup Language) (which does not directly encode wireless web content in WML). Perform various software modules and / or applications that provide functionality to facilitate interaction with an enabled device. These features include the WAP Encoder Script Compiler, a protocol adapter that converts HTML data into WML.
무선 인터넷 컨텐츠를 생성하기 위해, 웹 사이트는 일반적으로 그 사이트 상의 페이지의 일부분 또는 모든 부분의 특정 텍스트-전용(text-only) 또는 낮은 그래픽 버전을 생성해야만 한다. 현재, 인터넷 웹 사이트의 일부분만이 무선 인터넷 컨텐츠를 제공하지만, 이들 사이트의 수는 더욱 많은 사람들이 WAP-인에이블 방식의 장치를 필요로 할 수록 급진적으로 증가될 것으로 기대된다. 텍스트 전용 또는 낮은 그래픽 컨텐츠에 대한 중대한 이유는, WAP-인에이블 방식의 장치는 일반적으로 매우 작은 저해상도 스크린을 제공하고, 통상의 무선 데이터 전송 속도가 지상-기반 네트워크를 통해 가능한 데이터 전송 속도 보다 매우 낮기 때문이다. 현재 무선 인터넷 컨텐츠의 일부분은 WAP 게이트웨이에서 WML로 변환되어야만 하는 HTML을 포함하지만, 이미 WML로 직접 인코딩된 데이터를 WAP 게이트웨이로 제공하는 웹 사이트가 많다는 것을 유념해야 한다.In order to generate wireless Internet content, a web site generally must create a specific text-only or low graphical version of some or all of the pages on the site. Currently, only a fraction of Internet web sites provide wireless Internet content, but the number of these sites is expected to increase dramatically as more people need WAP-enabled devices. A significant reason for text-only or low graphics content is that WAP-enabled devices typically provide very small, low-resolution screens, and typical wireless data transfer rates are much lower than those available over land-based networks. Because. While some of the current wireless Internet content includes HTML that must be converted to WML at the WAP gateway, it should be noted that many Web sites already provide WML gateway with data directly encoded in WML.
도20을 참조하면, 통상의 WAP 세션은 아래와 같이 작동한다. PDA(102)와 같은 WAP-인에이블 방식의 장치를 조작하는 이용자는 "미니-브라우저"(세션에 대한 WAP 클라이언트)를 오픈하고, 이어서 WAP 서비스를 탐색하기 위해 PDA(102)의 무선 모뎀을 통해 라디오 신호(114)를 송출한다. 따라서, 이용자가 근방의 셀룰러 타워(106)를 통해 무선 인터넷 액세스 가입자 서비스를 갖는 서비스 프로바이더와 접속이 이루어진다. 이어서, 이용자는 (미니 브라우저 UI(107)에 의해 묘사되는 것과 같은) 미니 브라우저에 의해 제공되는 UI를 통해 웹 사이트의 URL을 입력함으로써 이용자가 열람하고 싶은 웹 사이트를 선택한다. 이어서, 이 사이트를 액세스하기 위한 요구가 PDA(102)로부터 WAP 게이트웨이(110)로 송신된다. WAP 게이트웨이 서버(112)는 URL - 이 예에서는 HTML 데이터임 - 에 대응하는 정보를 HTTP를 통해 웹 사이트로부터 검색하고, HTML 데이터를 WML로 인코딩한다. 상술한 바와 같이, 일부 인터넷 사이트에 있어서, 데이터는 이미 WML 포맷으로 되어 있을 수도 있고, 따라서 HTML로부터 WML로의 인코딩이 필요하지 않다.Referring to Fig. 20, a typical WAP session operates as follows. A user operating a WAP-enabled device, such as PDA 102, opens a "mini-browser" (WAP client for the session) and then through the wireless modem of PDA 102 to browse for WAP services. The radio signal 114 is transmitted. Thus, the user is connected to a service provider having a wireless Internet access subscriber service through the nearby cellular tower 106. The user then selects the website that the user wishes to browse by entering the URL of the website via the UI provided by the mini browser (such as depicted by the mini browser UI 107). A request to access this site is then sent from PDA 102 to WAP gateway 110. The WAP gateway server 112 retrieves the information corresponding to the URL, which in this example is HTML data, from the web site via HTTP, and encodes the HTML data into WML. As mentioned above, for some Internet sites, the data may already be in WML format, so no encoding from HTML to WML is necessary.
본 발명의 일실시예에 따르면, 각각의 메시지 센터(MCn)는 하나 또는 그 이상의 각각의 URL을 이하 상세히 설명되는 웹 서버(113)를 통해 호스트한다. 웹 서버(113)에 의해 호스트되는, HTML 데이터(114)와 WML 데이터(116)에 의해 묘사되는 바와 같은, URL 데이터는 메시지 센터로부터 WAP 게이트웨이로 인터넷(60) 또는 사설 네트워크 등의 통신 네트워크를 통해 지난다. 이이서, WML 데이터는 WAP 게이트웨이 서버(112)로부터 셀룰러 타워(106)를 통해 다시 PDA(102)로 송신된다. 종래브라우징과 동일한 방식으로, 이용자는 이용자 측에 존재하는 적당한 UI 구성요소를 활성화 시켜 사이트 상의 다양한 페이지를 미니 브라우저를 통해 브라우징할 수 있고, 따라서 상술한 것과 동일한 프로세스가, 이용자에 의해 선택된 것에 대응하는 현재의 컨텐츠에 대한 이용자 인터액션에 응답하여 수행된다.According to one embodiment of the invention, each message center MCn hosts one or more respective URLs via a web server 113 described in detail below. The URL data, as depicted by the HTML data 114 and the WML data 116, hosted by the web server 113, is routed from the message center to the WAP gateway via a communication network such as the Internet 60 or a private network. Passing. Herein, the WML data is transmitted from the WAP gateway server 112 via the cellular tower 106 back to the PDA 102. In the same way as conventional browsing, the user can activate various UI pages on the site by activating the appropriate UI components present on the user's side, so that the same process described above corresponds to that selected by the user. Performed in response to user interaction with the current content.
무선-웹 액세스에 더하여, 메시지 센터는 직접 지상-회선(land-line) 접속을 통해 액세스될 수도 있고, 또는 지상-회상 네트워크 및 무선 네트워크의 조합(예컨대, 802.11) 또는 블루투스 무선 링크를 통해 이용자 장치에 링크된 지상-회선 네트워크를 포함하는 통신 링크를 통해 액세스될 수도 있다. 예컨대, 퍼스널 컴퓨터(PC)(118) 및 랩탑(120)의 이용자는 메시지 센터로의 직접 네트워크 접속(예컨대, LAN 접속)을 통해, 또는 인터넷과 같은 WAN 접속을 통해 메시지 센터(MCn)를 액세스할 수도 있다. 이들 네트워크 접속 모두 컴퓨터 네트워크(122)에 의해 묘사된다. 일실시예에서, 이용자는 시스템에 의해 제공되는 서비스를 웹 페이지(126)의 세트를 통해 이하에 상세히 설명되는 바와 같은 브라우저-기반 이용자 인터페이스를 거쳐 액세스할 수 있다.In addition to wireless-web access, the message center may be accessed via a direct land-line connection, or user equipment via a combination of land-recall network and wireless network (e.g., 802.11) or a Bluetooth wireless link. It may be accessed via a communication link that includes a land-line network linked to the. For example, users of personal computers (PCs) 118 and laptops 120 may access message centers (MCn) through direct network connections (eg, LAN connections) to message centers, or through WAN connections such as the Internet. It may be. Both of these network connections are depicted by computer network 122. In one embodiment, the user can access the services provided by the system via a set of web pages 126 via a browser-based user interface as described in detail below.
일반적으로, 이용자-인터페이스는 802.11(WiFi로 알려짐)를 더 포함하는 링크와 유사하다. 예컨대, 통상의 802.11 의 구현에 있어서, 도20에서 PDA(128)와 같은 WiFi-인에이블 방식의 이용자 장치는 WDAP(130)를 통해 유선 네트워크(예컨대, 네트워크(122))로 접속된다. WDAP는 WiFi-인에이블 방식의 장치로부터의 모든 통신을 제어하고, 일반적인 클라이언트 접속을 가지도록 네트워크에 장치가 나타나게 한다. 따라서, 동작적인 관점에서, 유선 및 WiFi 클라이언트는 메시지 센터에 동일하게 나타난다.In general, the user-interface is similar to a link that further includes 802.11 (known as WiFi). For example, in a typical 802.11 implementation, in FIG. 20, a WiFi-enabled user device, such as PDA 128, is connected to a wired network (eg, network 122) via WDAP 130. WDAP controls all communication from WiFi-enabled devices and allows the device to appear on the network to have a normal client connection. Thus, from an operational point of view, wired and WiFi clients appear identically in the message center.
이 시스템은 블루투스-접속 클라이언트가 선택된 출력 장치로 인쇄하는 것을 가능하게 하지만, 다른 메커니즘을 이용한다. 이러한 메커니즘 하에서, 블루투스 에뮬레이터는 셀룰러 폰(132)과 같은 블루투스-인에이블 방식의 발신 장치를 형성하기 위해 구현되고, 블루투스 장치와 직접적으로 통신하고, 블루투스 이용자 인터페이스에 내장된 발신 장치를 변경할 필요가 없다고 고려한다. 예컨대, 이용자가 비-블루투스-인에이블 방식의 프린터/팩스 장치에 인쇄하기를 원한다고 가정하면, 이 경우, 근방의 무선 데이터 액세스 포인트와의 통신에 선단 에이전트(front-end agent) 제공하는 블루투스 프린터/팩스 에뮬레이터가 구현된다. 일시시예에서, 블루투스 장치 에뮬레이터는 WDAP + 블루투스 장치 에뮬레이터(134)로 묘사되는 바와 같이 WDAP에 일체화된다. 필요에 따라, 블루투스 장치 에뮬레이터는 네트워크(122)와의 통신에 링크된 장치를 분리할 수도 있다. 일반적으로, 블루투스 장치 에뮬레이터는 메시지 센터로부터 검색되는 대응하는 출력장치 정보를 이용하여 필요한 블루투스 장치 정보(예컨대, 인쇄 및 팩스 프로파일)를 생성한다. 프로파일은 메시지 센터로부터 검색되는 리소스 정보를 이용하여 플라이(fly)상에 형성된다. 따라서, 일실시예에서, 에뮬레이터는 메시지 센터와 함께 인터페이스에 채용되는 후단(backend) 통신 채널도 포함한다. 블루투스-인에이블 방식의 장치는 상이한 액세스 포인트에서 시스템에 접속되고, 대응하는 에뮬레이터는 그 액세스 포인트에 대한 프로파일 정보에 응답할 것이다.This system allows a Bluetooth-connected client to print to the selected output device, but uses a different mechanism. Under this mechanism, the Bluetooth emulator is implemented to form a Bluetooth-enabled calling device such as cellular phone 132, communicates directly with the Bluetooth device, and does not need to change the calling device built into the Bluetooth user interface. Consider. For example, suppose a user wants to print to a non-Bluetooth-enabled printer / fax device. In this case, a Bluetooth printer / that provides a front-end agent for communication with a nearby wireless data access point. The fax emulator is implemented. In one embodiment, the Bluetooth device emulator is integrated into the WDAP as depicted by the WDAP + Bluetooth device emulator 134. If desired, the Bluetooth device emulator may also detach the device that is linked to the communication with the network 122. In general, the Bluetooth device emulator uses the corresponding output device information retrieved from the message center to generate the necessary Bluetooth device information (eg, print and fax profiles). The profile is formed on the fly using the resource information retrieved from the message center. Thus, in one embodiment, the emulator also includes a backend communication channel that is employed at the interface with the message center. The Bluetooth-enabled device is connected to the system at different access points and the corresponding emulator will respond to profile information for that access point.
동일한 블루투스 장치 에뮬레이터를 통해, 블루투스 초기 인쇄 또는 팩스 프로파일 상호 운영성(interoperability) 스펙에 의해 정의되는 것 처럼, 이 시스템은 비-블루투스식 장치가 마치 블루투스-인에이블 방식의 장치인 것 처럼 동작하도록 해주고, 따라서 무선 컴퓨팅 환경에서 이들 비무선 기술-인에이블 방식의 장치를 관리하기 위해 회사에 대해 간단하고 비용 효율이 좋은 방법을 제공한다. 이들 동작은 이용자와 예정된 장치 모두에 대해 투명성을 갖는다. 게다가, 기업은 이들 리소스가 메시지 센터에 의해 관리되기 때문에 오래된 장치를 변경하거나, 교체하거나, 업그레이드할 필요가 없다.Through the same Bluetooth device emulator, as defined by the Bluetooth initial print or fax profile interoperability specification, this system allows non-Bluetooth devices to behave as if they were Bluetooth-enabled devices. This provides a simple and cost-effective way for companies to manage these non-wireless technology-enabled devices in a wireless computing environment. These actions are transparent to both the user and the intended device. In addition, enterprises do not need to change, replace or upgrade older devices because these resources are managed by the message center.
출력관리 시스템의 리퍼런스에 의한 인쇄(print-by-reference) 능력은 블루투스-인에이블 방식의 발신 장치로 확장될 수도 있다. 예컨대, 일실시예에서, 이하에 설명할 WAP 인터페이스를 렌더링하기 위한 WML 컨텐츠는 블루투스 서비스를 통해 WAP용으로 설계된 WAP 미니 브라우저(107A)를 포함하는 블루투스-인에이블 방식의 장치에 제공될 수 있다. 이러한 장치가 가까운 장래에 일반화될 것이라고 여겨진다. 이러한 구성에서, 블루투스-인에이블 방식의 장치 이용자는 WDAP + 블루투스 장치 에뮬레이터를 통해 블루투스-인에이블 방식의 장치에 대해 동일한 WML 컨텐츠로 동작함으로써 무선-웹 이용자와 실질적으로 동일한 방식으로 시스템이 인터액션할 수 있다.The print-by-reference capability of the output management system may be extended to a Bluetooth-enabled originating device. For example, in one embodiment, the WML content for rendering the WAP interface described below may be provided to a Bluetooth-enabled device that includes a WAP mini browser 107A designed for WAP via a Bluetooth service. It is believed that such devices will be generalized in the near future. In such a configuration, a Bluetooth-enabled device user can interact with the system in substantially the same manner as a wireless-web user by operating on the same WML content for a Bluetooth-enabled device via the WDAP + Bluetooth device emulator. have.
디폴트 장치 발견(Default Device Discovery)(WiFi)Default Device Discovery (WiFi)
이 시스템은 모바일 컴퓨팅 프로토콜을 수용하기 위해 정적 및 동적 디폴트 설정의 개념을 도입한다. 예컨대, 메시지 센터는 이용자 프로파일 내의 디폴트 장치 설정 옵션을 구현한다. 예와 같은 프린터를 이용하면, 이용자에 대해 정적 디폴트 프린터 및 동적 디폴트 프린터와 같은 두 가지 타입의 프린터가 존재한다. 전자는 이용자가 유선 접속(예컨대, PC(118))을 통해 시스템을 액세스할 때 선택되는 반면, 후자는 이용자가 무선 접속(예컨대, 블루투스, 802.11 등)을 통해 시스템을 액세스할 때 선택된다. 이용자의 클라이언트 사이트에서 이동국을 이용할 때, 이용자가 출력을 그 사무실 프린터로 송신할 가능성은 적다. 디폴트 설정을 자동으로 스위칭하기 위한 액세스 방법을 이용하는 것이 더 실질적이고 편리하다. 그러나, 융통성을 고려하면, 이용자는 프로파일 구성을 통해 동적 디폴트 프린터 겹쳐 쓰기 특정을 불가능하게 할 수 있는 옵션을 갖는다.The system introduces the concept of static and dynamic default settings to accommodate mobile computing protocols. For example, the message center implements default device configuration options in the user profile. Using a printer such as the example, there are two types of printers for the user, a static default printer and a dynamic default printer. The former is selected when the user accesses the system via a wired connection (eg, PC 118), while the latter is selected when the user accesses the system via a wireless connection (eg, Bluetooth, 802.11, etc.). When using a mobile station at a user's client site, the user is less likely to send output to that office printer. It is more practical and convenient to use an access method for automatically switching the default settings. However, considering flexibility, the user has the option to disable dynamic default printer overwrite specification through profile configuration.
도21은 이용자가 작업을 WDAP를 통해 제공할 때 동적 디폴트 프린터를 판정하기 위해 이용되는 동작을 설명하는 도면이다. 먼저, 무선 장치(128)의 이용자가 무선 데이터 액세스 포인트(WDAP2)로의 무선접속을 통해 시스템으로 진입한다. 도시된 예에서, 이용자는 PBR 작업 요구를 제공하는 것이라고 가정한다. 따라서, WDAP2는 PBR 작업 요구를 메시지 센터로 중계한다. 메시지 센터는 PBR 작업 요구에 대응하는 파일 스토어(136)로부터 소스 데이터를 검색한다. 메시지 센터가 WDAP2로부터 도달한 요구를 발견하고, 그 장치 데이터베이스를 검사하고, WDAP2와 결합된 동적 디폴트 프린터가 인쇄 서비스(PS1)와 결합된 출력 장치(D1)라는 것을 발견한다. 따라서, 렌더링 요구를 PS1으로 송신한다. PS1은 작업 요구를 렌더링 하고, 이어서 출력 이미지 데이터를 출력 장치(D1)로 송신한다. 출력 장치(D1)는 작업 출력을 종료하고, 태스크 완료를 PS1에 알린다. PS1은 차례대로 메시지 센터로 통보한다. 메시지 센터는 작업 요구가 성공적으로 완료되었다는 것을 이용자에게 알리기 위해 WDAP2로 응답을 송신한다. 이이서, WDAP2는 이용자의 장치로 응답을 중계한다.21 is a diagram illustrating an operation used to determine a dynamic default printer when a user provides a job via WDAP. First, a user of wireless device 128 enters the system via a wireless connection to wireless data access point WDAP2. In the example shown, it is assumed that the user provides a PBR work request. Thus, WDAP2 relays the PBR work request to the message center. The message center retrieves source data from the file store 136 corresponding to the PBR work request. The message center finds the request that arrived from WDAP2, examines its device database, and finds that the dynamic default printer associated with WDAP2 is the output device D1 associated with print service PS1. Therefore, a rendering request is sent to PS1. PS1 renders the work request, and then sends the output image data to the output device D1. The output device D1 ends the job output and informs PS1 of the completion of the task. PS1 in turn notifies the message center. The message center sends a response to WDAP2 to inform the user that the work request has completed successfully. Herein, WDAP2 relays the response to the user's device.
디폴트 장치 발견(블루투스)Default device discovery (Bluetooth)
도22a 및 도22b에 도시된 이하의 경우에서, 네트워크 구성은, WDAP1 및 WDAP2 가 WDAP + 블루투스 장치 에뮬레이터 장치(138,140)로 묘사된 바와 같이, 블루투스 장치 에뮬레이터를 현재 포함하고 있는 것을 제외하면 실질적으로 동일하다. 이들 모두의 경우에서, 프로세스는 다른 블루투스-인에이블 방식의 장치와의 초기 통신을 탐색하는 블루투스-인에이블 방식의 발신 장치(132)의 이용자에 의해 시작된다. 예로서, 발신 장치의 블루투스 신호는 WDAP2 + 블루투스 장치 에뮬레이터(140)에 의해 수신되고, 이는 블루투스-인에이블 방식의 발신 장치와의 통신 링크를 설정한다.In the following cases shown in Figures 22A and 22B, the network configuration is substantially the same except that WDAP1 and WDAP2 currently include a Bluetooth device emulator, as depicted as WDAP + Bluetooth device emulator devices 138,140. Do. In all of these cases, the process is initiated by a user of the Bluetooth-enabled originating device 132 searching for initial communication with another Bluetooth-enabled device. As an example, the Bluetooth signal of the originating device is received by the WDAP2 + Bluetooth device emulator 140, which establishes a communication link with the originating device of the Bluetooth-enabled manner.
이러한 점에서, 블루투스-인에이블 방식의 장치 이용자와의 시스템의 인터액션을 가능하게 하도록 이용될 수도 있는 2가지 타입의 인터페이스가 존재한다. 즉, 기본 블루투스 UI(예컨대, 블루투스 UI(133)) 및 향상된 블루투스 UI(예컨대, 블루투스 미니 브라우저 UI(107A) 상의 WAP)가 존재한다. 기본 블루투스 UI 하에서, 에뮬레이터는 모의 블루투스-인에이블 방식의 출력 장치 또는 복수의 그러한 출력 장치로서 동작한다. 향상된 블루투스 UI 하에서, 에뮬레이터는 블루투스 상의 WAP를 통해 WAP 컨테츠가 블루투스-인에이블 방식의 장치로 공급해주는 콘딧(conduit)으로서 기능한다. 기본 블루투스 UI가 제공된다고 가정한다. 이 경우가 도22a에 도시된다. 이 예에서, 블루투스 링크를 설정한 후, 이용자는 블루투스-인에이블 방식의 출력 장치를 탐색할 것이다(또는 이용자는 블루투스 링크를 초기화하기 위해 출력 장치 탐색을 이용할 것이다). 따라서, 에뮬레이터는 루트 메시지 센터로 접속될 것이고(간접 또는 직접적으로 접속됨), 인터액션을 용이하게 하는 WDAP에 근접한 출력 장치와 관련한 정보를 검색한다. 이런 타입이 정보는 메시지 센터 데이터베이스에 저장되고, MC는 블루투스 에뮬레이션 파라미터(114) WDAP를 통해 이용 가능한 각종 출력 장치에 대응하는 에뮬레이터로 다시 되돌릴 수 있다. 선택적인 실시예에서, 에뮬레이터는 인증된 이용자를 요구할 수도 있고(또는 고유한 장치 식별자를 통해 이용자를 식별함), 이용자에게 특정한 출력 장치의 리스트를 제공한다. 이어서, 에뮬레이터는 블루투스-인에이블 방식의 발신 장치가 하나 또는 그 이상의 대응하는 블루투스-인에이블 방식의 출력 장치와 실제 직접 연결되어 있다고 생각하도록 이용 가능한 출력 장치를 에뮤레이트한다. 예컨대, 이용 가능한 출력 장치가 2가지 타입의 레이저 프린터와 하나의 텍스트 프린터를 포함하면, 에뮬레이터는 이들 3개의 프린터에 대해 블루투스 장치 에뮬레이션을 제공할 것이다. 단지 하나의 장치가 이용된다면, 이 장치는 디폴트 출력 장치로 될 것이다. 이어서, 이용자는 블루투스 UI를 통해 출력 장치를 선택하고, 소스 데이터가 블루투스-인에이블 방식의 출력 장치로 직접적으로 업로드된 것 처럼, 소스 데이터를 에뮬레이터에 업로드한다. 이어서, 에뮬레이터는 소스 데이터를 메시지 센터로 포워딩하고, 메시지 센터는 출력 이미지 데이터를 생성하기 위해 적당한 인쇄 서비스를 호출(invoke)하고, 이어서 이미지 데이터는 렌더링을 위해 선택된 출력 장치로 제공된다.In this regard, there are two types of interfaces that may be used to enable the system's interaction with a Bluetooth-enabled device user. That is, there is a basic Bluetooth UI (eg, Bluetooth UI 133) and an enhanced Bluetooth UI (eg, WAP on Bluetooth mini browser UI 107A). Under the basic Bluetooth UI, the emulator operates as a simulated Bluetooth-enabled output device or as a plurality of such output devices. Under the enhanced Bluetooth UI, the emulator functions as a conduit through which WAP content is delivered to a Bluetooth-enabled device via WAP over Bluetooth. Assume that a basic Bluetooth UI is provided. This case is shown in Fig. 22A. In this example, after establishing a Bluetooth link, the user will search for a Bluetooth-enabled output device (or the user will use an output device search to initialize the Bluetooth link). Thus, the emulator will be connected to the root message center (indirectly or directly connected) and retrieve information related to the output device close to the WDAP which facilitates interaction. This type of information is stored in the message center database, and the MC can return back to the emulator corresponding to the various output devices available through the Bluetooth emulation parameter 114 WDAP. In an alternative embodiment, the emulator may require an authenticated user (or identify the user through a unique device identifier) and provide the user with a list of specific output devices. The emulator then emulates an available output device to think that a Bluetooth-enabled originating device is actually directly connected with one or more corresponding Bluetooth-enabled output devices. For example, if the available output device includes two types of laser printers and one text printer, the emulator will provide Bluetooth device emulation for these three printers. If only one device is used, this device will be the default output device. The user then selects the output device via the Bluetooth UI and uploads the source data to the emulator as if the source data were uploaded directly to the Bluetooth-enabled output device. The emulator then forwards the source data to the message center, which invokes the appropriate print service to generate output image data, which is then provided to the selected output device for rendering.
도22b에 도시된 예에 따르면, 메시지 센터에 의해 호스트된 블루투스 서비스 상의 WAP를 통해 시스템을 액세스한다. 최초로, 블루투스-인에이블 방식의 발신 장치와 에뮬레이터 사이의 블루투스 접속이 상술한 방식으로 설정된다. 이어서, 에뮬레이터는 메시지 센터로 콘택하고, 이용자로 하여금 파일 스토어(136)로부터의 소스 데이터를 선택할 수 있게 해주고, 출력 장치(D1)를 선택할 수 있게 해주는 블루투스 미니 브라우저(107A) 상의 WAP를 통해 이용자 인터페이스를 렌더링 하기 위해 WML 컨텐츠를 운반하기 시작한다. 나머지 동작은 도21의 PBR 예에서 설명한 것과 실질적으로 동일하다.According to the example shown in Fig. 22B, the system is accessed via a WAP on a Bluetooth service hosted by a message center. Initially, the Bluetooth connection between the Bluetooth-enabled originating device and the emulator is established in the manner described above. The emulator then contacts the message center and allows the user to select source data from the file store 136 and to select the output device D1 via a user interface via WAP on the Bluetooth mini browser 107A. Start to carry the WML content to render it. The remaining operations are substantially the same as described in the PBR example of FIG.
일실시예에서, 시스템은 블루투스 게이트웨이(142)를 채용하는 선택적인 구성을 포함한다. 게이트웨이는 메시지 센터가 블루투스 장치 에뮬레이터와 통신하는 것을 도와준다. 또한, 블루투스 게이트웨이는 장치와 무선 데이터 액세스 포인트 사이의 매핑 트랙을 유지하고, 맵을 메시지 센터와 동기화시킨다. 이러한 매핑은 장치 에뮬레이터로부터의 입력에 의해 계산되거나 네트워크의 스나이핑 오프(sniffing off)에 의해 계산된다.In one embodiment, the system includes an optional configuration that employs a Bluetooth gateway 142. The gateway helps the message center communicate with the Bluetooth device emulator. The Bluetooth gateway also maintains a mapping track between the device and the wireless data access point and synchronizes the map with the message center. This mapping is calculated by input from the device emulator or by sniffing off the network.
시스템 접속 토폴리지System Connection Topology
출력 관리의 통상적인 구현 중에 대면할 수도 있는 각종 접속 경로 및 접속 타입을 나타내는 총칭 시스템 접속 토폴리지 다이어그램(150)을 도23에 나타낸다. 실선은 지속적인 접속을 나타내는 반면, 점선은 임시 접속을 나타낸다. 구성요소통신에 있어서, 제1 법칙은 PS와 RDC가 언제나 메시지 센터로의 접속을 개시하는 것이다. P2P 메시지 센터 통신에 대응하는 제2 법칙에 다르면, 접속은 언제나 높은 보안의 네트워크로부터 낮은 보안 네트워크로 개시되는 것이다(예컨대, 사설 네트워크로부터 DMZ, 구역1 DMZ, 구역0 DMZ). 이들 법칙이 모두 적용 가능하면, 제1 법칙이 우선된다.A generic system connection topology diagram 150 is shown in FIG. 23 showing various connection paths and connection types that may be encountered during a typical implementation of output management. The solid line represents the continuous connection, while the dotted line represents the temporary connection. In component communication, the first law is that the PS and the RDC always initiate a connection to the message center. According to the second law corresponding to P2P message center communication, the connection is always initiated from a high security network to a low security network (eg a DMZ from a private network, a Zone 1 DMZ, a Zone 0 DMZ). If all of these laws are applicable, the first law takes precedence.
다이어그램(150)에서, 다이어그램의 중간에 배치된 구역0은, 그들의 공중 리소스(예컨대, 출력장치)를 공고하여 공유하기 위해 모든 MC에 대해 집중된 리포지토리를 포함하는 루트 메시지 센터(MC0)를 포함한다.In diagram 150, Zone 0, placed in the middle of the diagram, includes a root message center MC0 that includes a repository centralized for all MCs to advertise and share their public resources (eg, output devices).
그러므로, 구역0 내의 구성요소는 인커밍 접속 요구를 수락하기 위해 DMZ 내에 적당한 보안 보호를 갖고 바람직하게 위치될 것이다. 구역0의 양측에 배치되는 구역1 및 구역2는 각각이 완전 보장된 서브넷(예컨대, 사설 네트워크 부분)과 DMZ 부분을 갖는 2개의 독립 네트워크를 포함한다. 구역1 및 구역2의 DMZ 내의 MC(MC12,MC22)는 공중 및 공유 가능한 리소스를 관리하고, 따라서 "공중" MC라고 언급된다. 내부 통합 방화벽(152,154) 뒤의 사설 서브넷 내의 MC(각각, MC21,MC11)는 사설 리소스를 관리하고, 따라서 "사설" MC라고 언급된다.Therefore, components within Zone 0 will preferably be located with appropriate security protection in the DMZ to accept incoming connection requests. Zone 1 and Zone 2, which are placed on both sides of Zone 0, comprise two independent networks, each with a fully guaranteed subnet (eg, a private network portion) and a DMZ portion. MCs MC12 and MC22 in Zone 1 and Zone 2 DMZs manage public and shareable resources and are therefore referred to as "public" MCs. The MCs in the private subnets behind the internal integrated firewalls 152 and 154 (MC21 and MC11, respectively) manage private resources and are therefore referred to as "private" MCs.
다음은 구성요소가 본 발명의 일실시예에 따라 어느 곳에 귀속될 수 있는지를 나타내는 구성요소 배치 위치 맵 테이블이다. "공중 네트워크"는 인터넷에 직접 접속되는 방화벽 보호가 없는 네트워크로 언급된다. 이는 언제나 인커밍하는 모든 접속 요구를 수락한다. "DMZ"는 제한된 보호를 갖는 사설 네트워크라고 언급된다. 이는 요구가 일부 알려진 포트를 통해 패치(patch)되면 인커밍 접속 요구를 언제나수락한다. "사설 네트워크"는 강력한 방화벽 보호를 갖는 네트워크로 언급된다. 이는 전부는 아니지만 대부분의 인커밍 접속 요구를 언제나 차단한다. 사설 네트워크에서의 로케이팅은 인커밍 접속요구가 차단되는 것을 의미한다. 따라서, 리소스 할당은 작업 요구를 브리지하기 위해 프록시(예컨대, DMZ MC 또는 루트 MC)의 사용을 통해 촉진된다. MC 및 PS는 명백한 보안상의 이유로 인해 공중 네트워크에 배치되어선 안된다. 루트 메시지 센터(예컨대, MC0)는, 공중 MC가 등록되는 것을 허용하기 위해 적어도 제한된 공중 액세스를 제공해야만 하기 때문에, 사설 네트워크에 배치될 수 없다. RDC는 리소스 공유의 넓은 범위를 위해 공중 네트워크 내에 위치될 수도 있다. 그러나 추천하지는 않는다.The following is a component placement location map table indicating where components may be attributed in accordance with one embodiment of the present invention. "Public network" refers to a network without firewall protection that is directly connected to the Internet. It always accepts all incoming connection requests. "DMZ" is referred to as a private network with limited protection. It always accepts incoming connection requests if the request is patched through some known port. A "private network" is referred to as a network with strong firewall protection. This always blocks most, but not all incoming connection requests. Locating in a private network means that incoming connection requests are blocked. Thus, resource allocation is facilitated through the use of proxies (eg, DMZ MC or root MC) to bridge work requests. MCs and PSs should not be placed in public networks for obvious security reasons. The root message center (eg, MC0) cannot be deployed in a private network because it must provide at least limited public access to allow the public MC to be registered. The RDC may be located in the public network for a wide range of resource sharing. But not recommended.
다음은 다이어그램(150)에서 구성요소 배치 위치를 설명하는 구성요소 배치 위치 분류 맵 테이블이다.The following is a component placement position classification map table that describes the component placement position in the diagram 150.
접속 타입, 접속 개시자, 및 데이터 전송 타입을 포함하고 있는, 구성요소가 어떻게 서로 통신하는지를 설명하는 MC 네트워크 접속 맵의 세트를 표3 내지 표6에 나타낸다. 성능의 이유로, 지속적인 접속은 제어 메시지 교환(리소스 질의, 리소스 등록)에 이용되는 것이 바람직하지만, 임시 접속은 제어 메시지 교환 및 비제어 메시지 교환, 즉 소스 파일 데이터 전송 및 렌더링된 출력 이미지 데이터 전송 모두에 이용될 수도 있다. 지속적인 접속이 허용되면, 임시적인 접속 지원은 포함된다. 데이터 전송 타입은 "바이 버퍼(By Buffer)" 또는 "바이 리퍼런스(By Reference)" 중 하나일 수 있다."바이 리퍼런스" 전송이 허용되면, "바이 버퍼" 전송 지원은 포함된다. 리퍼런스에 의한 전송은 송신자의 파일 스토어가 수신에 적합하지 않다면 적합한 옵션이 아닐 수도 있다. 이러한 경우, 적당한 MC가 데이터를 목적지 리소스로 채널링할 것이다.Table 3-6 shows a set of MC network connection maps that describe how the components communicate with each other, including the connection type, connection initiator, and data transfer type. For performance reasons, persistent connections are preferably used for control message exchange (resource query, resource registration), but temporary connections are used for both control message exchange and uncontrolled message exchange, i.e. source file data transfer and rendered output image data transfer. May be used. If persistent access is allowed, temporary access support is included. The data transfer type can be either "By Buffer" or "By Reference". If "By Reference" transfer is allowed, "By Buffer" transfer support is included. Transmission by reference may not be a suitable option if the sender's file store is not suitable for reception. In such a case, the appropriate MC will channel the data to the destination resource.
다음의 테이블은 MC0 내부 구역 네트워크 접속 맵에 대응한다. 이 테이블은 루트 MC가 어떻게 동일 구역 내의 다른 구성요소와 통신하는 지를 설명한다. 구역0에 있기 때문에, "사설" MC 및 PS는 허용되지 않는다.The following table corresponds to the MC0 internal zone network connection map. This table describes how the root MC communicates with other components in the same zone. Because in zone 0, "private" MCs and PSs are not allowed.
*** 공중 RDC로부터 DMZ 파일 스토어를 보는 것은 허용되지 않는다.*** Viewing DMZ file store from public RDC is not allowed.
다음은 상호 구역(inter-zone) 통신인 것을 제외하면, 상술한 표3과 유사한 MC0 상호 구역 네트워크 접속 맵이다. 이 표는 루트 MC가 다른 구역 내의 다른 구성요소와 어떻게 통신하는지를 설명한다.The following is an MC0 inter-zone network connection map similar to Table 3 above, except that it is inter-zone communication. This table describes how the root MC communicates with other components in different zones.
* DMZ MC는 리소스 공유를 가능하게 하고, 공중 장치 질의를 지원하기 위해 MC로의 지속적 접속을 유지해야 한다.The DMZ MC must maintain a persistent connection to the MC to enable resource sharing and to support public device queries.
** 사설 MC는 장치 질의 목적을 위해 또는 공중 RDC로의 데이터 전송을 브리지하기 위해 MC0으로의 임시적 접속을 설정할 수도 있다.** A private MC may establish a temporary connection to MC0 for device query purposes or to bridge data transmission to a public RDC.
*** 공중 RDC로부터 DMZ 파일 스토어를 보는 것은 허용되지 않는다.*** Viewing DMZ file store from public RDC is not allowed.
다음은 구역0이 아닌 MC 상호 구역 네트워크 접속 맵이다. 이 테이블은 구역0이 아닌 메시지 센터가 어떻게 동일한 구역 내의 다른 구성요소와 통신하는지를 설명한다.The following is an MC inter-zone network access map, not zone 0. This table describes how a message center other than zone 0 communicates with other components within the same zone.
* 일반적이지 않고 불필요한 구성* Unusual and unnecessary configuration
** MCx는 MCx에 등록되지 않은 RDC로의 MCy 채널 출력을 돕는다.** MCx helps output MCy channel to RDC not registered to MCx.
*** MCy는 MCx에 등록되지 않은 RDC로의 MCx 채널 출력을 돕는다.*** MCy helps to output MCx channel to RDC not registered to MCx.
다음은 상호 구역 통신인 것을 제외하고, 상술한 표와 동일한 구역0이 아닌MC 상호 구역 네트워크 접속 맵이다. 이 테이블은 구역0 이 아닌 MC가 어떻게 다른 구역 내의 다른 구성요소와 통신하는지를 설명한다.The following is an MC inter-zone network connection map that is not Zone 0 identical to the table above, except that it is inter-zone communication. This table describes how a non-Zone MC communicates with other components in other zones.
* 장치 질의 목적.* Purpose of device query.
** 장치 질의 목적 및 MCx와 관련된 공중 RDC로의 MCy의 채널 출력.** Device query purpose and channel output of MCy to the public RDC associated with MCx.
*** 장치 질의 목적 및 MCy와 관련된 공중 RDC로의 MCx의 채널 출력.*** Device query purpose and channel output of MCx to public RDC related to MCy.
일반적으로, 시스템에서의 구성요소는 네트워크 메시지 프로토콜을 이용하여 상호 통신할 것이다. 예컨대, 원격 데스크탑 클라이언트와 메시지 센터 서버 사이의 통신을 위해 설계된 RDC 네트워크 메시지 프로토콜이 있다. 일실시예에서, RDC와 MC 서버 사이의 접속은 RDC로부터 MC 서버 상의 포트 5190로의 소켓 접속에 의해 개시된다. 이들 소켓 접속은 세션의 수명에 대해 지속적이다. 세션은 클라이언트와 서버 사이의 접속 다이얼로그로서 정의된다. 대부분의 세션은, 클라이언트와 연관된 원격 프린터에 대해 예정된 인쇄 작업이 있지 않는 한 클라이언트와 서버 사이에서 기본적으로 비활동적(quiescent)이다. 세션 초기에, 접속된 세션을 설정하기 위해 클라이언트는 복수의 세션 파라미터를 클라이언트에 제공한다.In general, the components in the system will communicate with each other using a network message protocol. For example, there is an RDC network message protocol designed for communication between a remote desktop client and a message center server. In one embodiment, the connection between the RDC and the MC server is initiated by a socket connection from the RDC to port 5190 on the MC server. These socket connections are persistent over the lifetime of the session. A session is defined as a connection dialog between a client and a server. Most sessions are quiescent by default between the client and server unless there is a print job scheduled for the remote printer associated with the client. At the beginning of the session, the client provides a plurality of session parameters to the client to establish a connected session.
데이터 전송 타입 지원Data transfer type support
이 섹션은 작업 요구 데이터가 어떻게 프로세스되고 각 구성요소로 전송되는지를 간단하게 설명한다. 기본 작업 요구 프로세스 처리는 다음의 동작으로 요약된다. 1) 메시지 센터로 입력 파일 데이터를 업로드, 2) MC는 식별된 목적지 출력 장치에 기반하여 출력 이미지 렌더링을 위해 적당한 인쇄 서비스를 위치시킴, 3) MC는 입력 데이터를 PS로 전달하거나, 리퍼런스에 의해 PS로 하여금 파일을 액세스함, 4) PS는 출력 이미지를 렌더링함, 5) PS는 출력 이미지를 MC로 출력 이미지를 전달하거나, 출력 이미지를 공동 리포지토리에 저장함, 6) MC는 출력 데이터를 RDC로 송신하거나, 공동 리포지토리에 대한 리퍼런스에 의해 PS로 하여금 파일을 액세스하게 함. 실제 작업 요구 기점 및 목적지에 따라, 스태깅 MC(staging MC)는 데이터 전송을 브리지하기 위해 요구될 수도 있다. 전송 타입은 "바이 리퍼런스" 및 "바이 버퍼"로 분류된다. 일반적으로, 리퍼런스에 의한 전송은 버퍼에 의한 전송 보다 효율적인 것으로 나타나지만(감소된 파일 스풀링으로 인함), 네트워크의 상이한 부분상에 존재하는 상이한 구성요소가 보안 제한(예컨대, 방화벽)으로 인해 서로간의 리퍼런스를 볼 수 없을 때에는 실현되지 않을 수도 있다. 그러한 경우, 버퍼에 의한 전송이 데이터 전송을 위한 유일한 선택이다. 다음의 테이블은 데이터 전송 타입을 정의한다.This section briefly describes how work request data is processed and sent to each component. The basic work request process processing is summarized by the following operations. 1) upload the input file data to the message center, 2) the MC locates the appropriate print service for rendering the output image based on the identified destination output device, 3) the MC forwards the input data to the PS, or by reference Allows the PS to access the file, 4) PS renders the output image, 5) PS delivers the output image to the MC, or stores the output image in a common repository, 6) MC sends the output data to the RDC. Send, or have the PS access a file by reference to a common repository. Depending on the actual work request origin and destination, a staging MC may be required to bridge the data transmission. The transfer type is classified into "by reference" and "by buffer". In general, transfers by reference appear to be more efficient than buffered transfers (due to reduced file spooling), but different components residing on different parts of the network can interfere with each other due to security restrictions (eg, firewalls). It may not be realized when it is not visible. In such cases, transfer by buffer is the only choice for data transfer. The following table defines the data transfer type.
* 내부 구역에만 적용할 수 있음* Applicable only to interior zones
내부 구역 MC(DMZ) - RDC(공중).이 타입의 통신의 목적은 DMZ MC로부터 동일 구역 내의 동일한 DMZ에서 동일한 MC로 등록된 공중 네트워크 내의 RDC에 부착되는 장치로 인쇄 요구를 송신하는 것이다. 예컨대, MC(12) -> RDC(14)로의 전송이다.Inner Zone MC (DMZ)-RDC (Aerial). The purpose of this type of communication is to send a print request from a DMZ MC to a device attached to an RDC in a public network registered as the same MC in the same DMZ in the same zone. For example, transmission from MC 12 to RDC 14.
도24의 흐름도를 참조하면, 프로세스는 이용자가 이용자의 홈 메시지 센터로 접속하여 로그인 동작이 수행되는 블록(160)에서 시작한다. 블록(162)에서, 이용자는 인쇄 요구를, 이용자가 시스템에 접속하는 발신 장치에 대응하는 이용자 인터페이스를 통해 제공한다. 인쇄 요구가 리퍼런스에 의한 인쇄(PBR)에 대응하면, 블록(164)에서 MC는 UI를 통해 지정된 원격 스토어로부터 소스 데이터(예컨대, 소스 데이터가 포함된 "입력" 파일)를 업로드하고, PBR 요구에 의해 식별된다. 인쇄 요구가 비-PBR 요구에 대응하면(예컨대, 인쇄될 소스 데이터가 발신 장치상에 존재하면), 블록(166)에서 MC는 버퍼에 의해 장치로부터 소스 데이터를 업로드한다.Referring to the flowchart of Figure 24, the process begins at block 160 where a user connects to a user's home message center and a login operation is performed. In block 162, the user presents a print request through a user interface corresponding to the originating device to which the user connects to the system. If the print request corresponds to a reference print (PBR), then at block 164 the MC uploads the source data (eg, an "input" file containing the source data) from the designated remote store via the UI, Are identified. If the print request corresponds to a non-PBR request (eg, if the source data to be printed is on the originating device), then at block 166 the MC uploads the source data from the device by the buffer.
다음으로, 블록(168)에서 MC는 적당한 인쇄 서비스를 위치시키고, 작업-렌더링 요구를 송신한다. 일반적으로, 적당한 인쇄 서비스는 목적지 출력 장치와 동일한 구역에 있는 PS에 대응할 것이고, 목적지 출력 장치 및 소스 데이터의 특정한 특징을 지원하기 위해 인쇄 서비스를 제공한다(예컨대, 출력 장치를 지원하는 드라이버를 가지며, 소스 데이터에 대응하는 이미지 출력 데이터를 생성하기 위해 실행될 수 있는 어플리케이션을 갖는다). 요구가 PBR 이라면, 블록(170)에서, MC는 입력 파일의 네트워크 저장 위치를 식별하기 위한 리퍼런스를 인쇄 서비스로 전달한다. 요구가 PBR이 아니라면, 블록(172)에서 MC는 입력 파일을 버퍼에 의해 PS로 전달한다. 입력 파일의 검색 또는 수신에 따라, 블록(174)에서 인쇄 서비스는 출력 이미지 데이터(출력 이미지 파일)를 생성한다.Next, at block 168 the MC locates the appropriate print service and sends a job-rendering request. In general, a suitable print service will correspond to a PS in the same zone as the destination output device, and provide a print service to support specific features of the destination output device and source data (e.g., have a driver to support the output device, Has an application that can be executed to generate image output data corresponding to the source data). If the request is a PBR, at block 170, the MC passes a reference to the print service for identifying the network storage location of the input file. If the request is not a PBR, then at block 172 the MC delivers the input file by buffer to the PS. Upon retrieval or receipt of the input file, at block 174 the print service generates output image data (output image file).
리포지토리가 이용되어야 한다면, 블록(176)에서 PS는 출력 이미지 파일을 리포지토리에 축적하고, 블록(178)에서 PS는 리퍼런스에 의해 출력 이미지를 MC로전송한다. 이 경우, 출력 이미지 데이터는 리포지토리 내의 파일에 저장되고, 리퍼런스에 의한 전송은 PS가 경로, 파일 이름, 및 출력 이미지 파일의 네트워크 위치를 MC에 제공하는 것을 의미한다. 리포지토리가 이용되지 않으면, 블록(180)에서 PS는 출력 이미지를 버퍼에 의해 MC로 전송한다.If the repository is to be used, at block 176 the PS accumulates the output image file in the repository, and at block 178 the PS sends the output image to the MC by reference. In this case, the output image data is stored in a file in the repository, and the transfer by reference means that the PS provides the MC with the path, file name, and network location of the output image file. If the repository is not used, then at block 180 the PS sends the output image to the MC by the buffer.
이러한 점에서, 블록(182)에서, 출력 이미지를 수신하기 위해, MC는 적당한 원격 데스크탑 클라이언트를 위치시킨다. 이는, 목적지 출력 장치로 출력 이미지를 제공하기 위해 이용될 수도 있는 임의의 RDC를 식별하기 위해, 목적지 출력 장치에 기반한 데이터베이스 룩업을 통해 일반적으로 이루어질 것이다. 이어서, 블록(184)에서, MC는 리퍼런스에 의해 출력 이미지를 식별된 RDC로 송신한다. 블록(186)에서, 리퍼런스를 수신함에 따라, RDC는 출력 이미지를 검색하고, 이를 출력 장치로 제공하여, 출력 장치에 의해 렌더링된다. 작업이 성공적으로 인쇄되었다는 정보를 수신함에 따라, 이어서 MC는 인쇄 작업이 성공적으로 인쇄되었음을 이용자에게 알리기 위해 이용자에게 다시 통보를 송신한다. 블록(188)에서, 속기 표기로는, 전술한 프로세스는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB에 의해 설명될 수도 있다.In this regard, at block 182, the MC locates the appropriate remote desktop client to receive the output image. This will generally be done through a database lookup based on the destination output device to identify any RDC that may be used to provide the output image to the destination output device. Then, at block 184, the MC sends the output image to the identified RDC by reference. At block 186, upon receiving the reference, the RDC retrieves the output image, provides it to the output device, and is rendered by the output device. Upon receiving the information that the job has been successfully printed, the MC then sends a notification back to the user to inform the user that the print job has been successfully printed. In block 188, in shorthand notation, the above-described process may be described by (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)-> PBB.
내부-구역 MC(DMZ) - RDC(DMZ). 이 타입의 통신의 목적은 DMZ에 위치된 메시지 센터로부터 MC와 동일한 구역 내의 동일한 MC에 등록된 동일한 DMZ 내의 RDC에 부착되는 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(13)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> (PBB,PBB) 이다.Inner-zone MC (DMZ)-RDC (DMZ) . The purpose of this type of communication is to send a print request from a message center located in a DMZ to a device attached to an RDC in the same DMZ registered in the same MC as the MC (eg, MC 12-> RDC). (13)). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)-> (PBB, PBB).
내부-구역 MC(DMZ) - RDC(사설). 이 타입의 통신의 목적은 DMZ로부터 동일한구역 내의 동일한 MC에 등록된 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(12)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> (PBB,PBB) 이다.Inner-zone MC (DMZ)-RDC (private) . The purpose of this type of communication is to send a print request from the DMZ to a device attached to an RDC in a private network registered to the same MC in the same zone (e.g., MC 12-> RDC 12). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)-> (PBB, PBB).
내부-구역 MC(사설) - RDC(공중). 이 타입의 통신의 목적은 사설 MC로부터 동일 구역 내의 DMZ 내의 다른 MC에 등록된 공중 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(14)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.Inner-Zone MC (private)-RDC (Aerial) . The purpose of this type of communication is to send a print request from a private MC to a device attached to an RDC in a public network registered with another MC in a DMZ in the same zone (e.g., MC 11-> RDC 14). . The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)->SBB-> PBB.
내부-구역 MC(사설) - RDC(DMZ). 이 타입의 통신의 목적은 사설 MC로부터 동일 구역 내의 동일 DMZ 내의 다른 MC에 등록된 DMZ 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(13)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> (PBR,PBB) 이다.Inner-zone MC (private)-RDC (DMZ) . The purpose of this type of communication is to send a print request from a private MC to a device attached to an RDC in a DMZ registered to another MC in the same DMZ in the same zone (e.g., MC 11-> RDC 13). . The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)->SBB-> (PBR, PBB).
내부-구역 MC(사설) - RDC(사설). 이 타입의 통신의 목적은 사설 MC로부터 동일 구역 내의 DMZ 내의 동일 MC에 등록된 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(11)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> (PBR,PBB) 이다.Inner-zone MC (private)-RDC (private) . The purpose of this type of communication is to send a print request from a private MC to a device attached to an RDC in a private network registered in the same MC in a DMZ in the same zone (e.g., MC 11-> RDC 11). . The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)-> (PBR, PBB).
상호-구역 MC(DMZ) - RDC(공중). 이 타입의 통신의 목적은 DMZ MC로부터 상이한 구역으로부터 외부 DMZ 내의 다른 MC에 등록된 공중 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(24)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB 이다.Cross-Zone MC (DMZ)-RDC (Aerial) . The purpose of this type of communication is to send a print request from a DMZ MC to a device attached to an RDC in a public network registered to another MC in an external DMZ from a different zone (eg, MC 12-> RDC 24). ). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)-> PBB.
상호-구역 MC(DMZ) - RDC(DMZ). 이 타입의 통신의 목적은 상이한 구역으로부터 동일한 외부 DMZ 내의 다른 MC에 등록된 상이한 DMZ 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(23)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB 이다.Inter-zone MC (DMZ)-RDC (DMZ) . The purpose of this type of communication is to send print requests from different zones to devices attached to RDCs in different DMZs registered to other MCs in the same external DMZ (eg, MC 12-> RDC 23). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)-> PBB.
상호-구역 MC(DMZ) - RDC(사설). 이 타입의 통신의 목적은 DMZ MC로부터, 상이한 구역으로부터 상이한 DMZ 내의 다른 MC에 등록된 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(22)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB 이다.Cross-Zone MC (DMZ)-RDC (Private) . The purpose of this type of communication is to send a print request from a DMZ MC to a device attached to an RDC in a private network registered from a different area to another MC in a different DMZ (e.g., MC 12-> RDC 22). )). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)-> PBB.
상호-구역 MC(사설) - RDC(공중). 이 타입의 통신의 목적은 사설 MC로부터, 상이한 구역으로부터 상이한 DMZ 내의 다른 MC에 등록된 공중 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(24)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.Cross-zone MC (private)-RDC (public) . The purpose of this type of communication is to send a print request from a private MC to a device attached to an RDC in a public network registered from a different area to another MC in a different DMZ (eg, MC 11-> RDC 24). )). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)->SBB-> PBB.
상호-구역 MC(사설) - RDC(DMZ). 이 타입의 통신의 목적은 사설 MC로부터, 상이한 구역으로부터 동일한 외부 DMZ 내의 다른 MC에 등록된 DMZ 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(23)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.Cross-zone MC (private)-RDC (DMZ) . The purpose of this type of communication is to send a print request from a private MC to a device attached to an RDC in a DMZ registered to another MC in the same external DMZ from a different zone (eg, MC 11-> RDC 23). )). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)->SBB-> PBB.
상호-구역 MC(사설) - RDC(사설). 이 타입의 통신의 목적은 사설 MC로부터, 상이한 구역으로부터 상이한 외부 DMZ 내의 다른 MC에 등록된 상이한 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(22)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.Cross-Zone MC (private)-RDC (private) . The purpose of this type of communication is to send print requests from private MCs to devices attached to RDCs in different private networks registered from different zones to different MCs in different external DMZs (e.g., MC 11-> RDC). (22)). The corresponding shorthand notation is (UBR, UBB)-> (DBR, DBB)-> (TBR, TBB)->SBB-> PBB.
시스템 하드웨어 다 계층(multi-tier) 아키텍처System Hardware Multi-tier Architecture
일실시예에서, 도25에서 다층 아키텍처(200)로 나타내듯이, 이 시스템은 4 계층 아키텍처 설계를 이용하여 구현될 수도 있다. 이 아키텍처의 제1 계층은 웹 서버 팜(WSF: Web Server Farm)(202)을 포함하고, 제2 계층은 메시지 센터 팜(MCF)(204)을 포함하고, 제3 계층은 인쇄 서비스 서버 팜(PSSF)(206)을 포함하며, 제4 계층은 데이터베이스 서버 팜(DBSF)을 포함한다. 다음의 각 계층에 대한 설명이다.In one embodiment, as shown by the multilayer architecture 200 in FIG. 25, the system may be implemented using a four-layer architecture design. The first tier of this architecture includes a Web Server Farm (WSF) 202, the second tier includes a Message Center Farm (MCF) 204, and the third tier is a Print Services Server Farm ( PSSF (206), and the fourth tier includes a database server farm (DBSF). The following is a description of each layer.
계층-1 웹 서버 파(WSF). 이 계층은 부하 평형기(Load Balancer)(208) 및 웹 서버 팜(202)으로 이루어진다. 부하 평형기는 인커밍 요구를 받아들이고, 웹 서버 팜 중의 하나의 웹 서버에 이들을 분배한다. 웹 서버는 도일한 URL을 공유하므로, 이용자는 이 시스템을 액세스하기 위해 하나의 URL을 기억하기만 하면 된다. 요구의 분배는 부하 평형기(208)의 구성에 따른다. 부하 평형기는 웹 서버 위치 및 요구 디스패치(dispatch)를 관리한다. 할당된 웹 서버는 지역적으로 스크립트를 실행하고, 대응하는 데이터 서버 팜에 대한 공동 데이터베이스 액세스 인터페이스를 호출함으로써 NFS(network file system) 또는 SAN(storage area network)에 저장된 데이터베이스(21)를 업데이트한다. 게다가, 부하 평형기는 웹 서버 팜 내의 모든 에러를 알리기 위해 관리자에게 경고 메시지를 송출할 수도 있다.Layer-1 Web Server Wave (WSF) . This layer consists of a load balancer 208 and a web server farm 202. The load balancer accepts incoming requests and distributes them to one web server in the web server farm. The web server shares the same URL, so the user only needs to remember one URL to access the system. The distribution of demands depends on the configuration of the load balancer 208. The load balancer manages web server location and request dispatch. The assigned web server updates the database 21 stored in a network file system (NFS) or storage area network (SAN) by executing scripts locally and calling a common database access interface to the corresponding data server farm. In addition, the load balancer may send a warning message to the administrator to notify all errors in the web server farm.
계층-2 메시지 센터 팜(MCF). 메시지 센터 팜은 메시지 센터 소프트웨어 구성요소의 2개의 실행 카피를 포함한다. 이중 하나는 프로세싱 모드에서 동작하는 제1 MC(216)를 포함하고, 다른 하나는 대기 모드에서 동작하는 제2 MC(216)이다.제1 MC는 인커밍 요구에 언제나 응답한다. 제1 MC가 응답하지 않으면, 제2 MC는 자체적으로 토글링하여 요구를 제어한다. 이어서, 제2 MC는 에러를 알리기 위해 시스템 관리자에게 경고 메시지를 송출한다. 이 장애-극복(fail-over) 스위치는 사람이 개입 없이 자동적으로 이루어진다. 문제점이 해결되고 제1 MC가 다시 온라인 되면, 제2 MC는 그 자신을 다시 대기 모드로 전환하고, 이어서 인계를 위해 제1 MC에 통보한다.Tier-2 Message Center Farm (MCF) . The message center farm contains two execution copies of the message center software components. One of them includes a first MC 216 operating in a processing mode and the other is a second MC 216 operating in a standby mode. The first MC always responds to an incoming request. If the first MC does not respond, the second MC toggles itself to control the request. The second MC then sends a warning message to the system administrator to inform the error. This fail-over switch is automatic without human intervention. When the problem is solved and the first MC is online again, the second MC puts itself back to standby mode and then notifies the first MC for takeover.
자동 장애-극복 스위치를 지원하기 위해 이 시스템은 제1 및 제2 MC 사이에 "하트비트 체킹(heartbeat checking)"를 구현한다. 이를 구현하기 위해, 각각의 MC는 두개의 이더넷 인터페이스와 직렬 포트를 갖는다. 모두 4개의 이더넷인터페이스가 동일한 서브넷에 접속되고, 직렬 포트는 상호 접속된다. 설치됨에 따라, MC는 이들 이더넷 인터페이스(유동 인터페이스)중 하나의 인터페이스 상의 동일한 유동 IP 및 다른 인터페이스 상의 상이한 정적 IP 어드레스를 갖고 할당된다. 제1 MC는 시스템 기동시 이들 이더넷 인터페이스를 모두 초기설정(bring-up)한다. 그러나, 제2 MC는 충돌을 피하기 위해 정적 인터페이스만을 초기 설정한다. 제2 MC는 그 정적 인터페이스를 통해 테스트 패킷을 송신함으로써 제1 MC의 이용가능성을 검사한다. 제1 MC의 유동 인터페이스가 불가능이라면, 문제를 보다 이해하기 위해, 보험으로서, 제2 MC가 지역적으로 접속된 직렬 포트를 이용하여 재검사한다. 이어서, 인커밍 요구를 서비스하고, 관리자에게 경고 메시지를 송출하기 위해, 제2 MC는 그 유동 인터페이스를 초기 설정한다. 제1 MC의 회복을 검출하기 위해 제2 MC가 하트비트 검사를 지속한다. 제1 MC이 다시 온라인으로 되면, 제2 MC는 그 유동 인터페이스를 다운으로 토글링하고, 제1 MC의 유동 인터페이스를 초기설정하기 위해 제1 MC에게 요청하는 요구를 송신한다. 제2 MC가 항상 대기 상태로 있는 것을 보장하기 위해, 제1 MC는, 제2 MC에 문제가 있을 때 관리자에게 경고 메시지를 송신하는 것을 제외하고, 제2 MC에 대하여 동일한 검사를 한다. 하트비트 검사는 시스템이 기동하여 동작중인 동안 계속된다. 하트비트의 간격은 시스템의 안정성 및 성능을 향상하기 위해 구성될 수 있다.To support an automatic fault-to-failure switch, the system implements "heartbeat checking" between the first and second MCs. To implement this, each MC has two Ethernet interfaces and a serial port. All four Ethernet interfaces are connected to the same subnet, and the serial ports are interconnected. As installed, the MC is assigned with the same dynamic IP on one of these Ethernet interfaces (floating interface) and different static IP addresses on the other interface. The first MC initializes all of these Ethernet interfaces upon system startup. However, the second MC initially only sets up the static interface to avoid collisions. The second MC checks the availability of the first MC by sending a test packet over its static interface. If the floating interface of the first MC is not possible, to better understand the problem, as insurance, the second MC retests using a locally connected serial port. Then, to service the incoming request and send a warning message to the administrator, the second MC initially sets up the flow interface. The second MC continues the heartbeat check to detect recovery of the first MC. When the first MC comes back online, the second MC toggles the flow interface down and sends a request to the first MC to initialize the flow interface of the first MC. To ensure that the second MC is always on standby, the first MC performs the same check on the second MC except for sending a warning message to the administrator when there is a problem with the second MC. Heartbeat checking continues while the system is up and running. The interval of heartbeats can be configured to improve the stability and performance of the system.
계층-3 인쇄 서비스 서버 팜(PSSF). 이 계층은 부하 평형기(218) 및 인쇄 서비스 서버 팜(206)으로 이루어진다. 부하 평형기는 메시지 센터 팜(204)으로부터의 인커밍 요구를 받아 들여, 이들을 PSSF(206) 내의 인쇄 서비스 서버 중 하나의 서버에 분배한다. MCF는 인쇄 서비스를 액세스하기 위해 동일한 소정 IP를 언제나 이용한다. 요구의 분배는 부하 평형기(218)의 구성에 따른다. 부하 평형기는 인쇄 서비스 서버 위치 및 요구 디스패치를 관리한다. 할당된 인쇄 서비스 서버는 렌더링 요구를 프로세스하고, 필요하다면 공유된 NFS 또는 SAN에 출력 이미지 데이터를 축적한다. 부하 평형기는 인쇄 서비스 팜 내의 모든 에러를 알리기 위해 관리자에게 경고 메시지를 송출할 수도 있다.Tier-3 Print Services Server Farm (PSSF) . This layer consists of a load balancer 218 and a print service server farm 206. The load balancer accepts incoming requests from the message center farm 204 and distributes them to one of the print service servers in the PSSF 206. The MCF always uses the same predetermined IP to access the print service. The distribution of demands depends on the configuration of the load balancer 218. The load balancer manages print service server location and request dispatch. The assigned print service server processes the rendering request and, if necessary, accumulates output image data on a shared NFS or SAN. The load balancer may send a warning message to the administrator to notify all errors in the print service farm.
계층-4 데이터베이스 서버 팜(DBSF). 이 계층은 메시지 센터 데이터베이스 서버 팜(MCDSF)(220) 및 인쇄 서비스 데이터베이스 서버 팜(PSDSF)(222)을 포함하는 2개의 데이터베이스 서버 팜으로 이루어진다. 각각의 이들 서버 팜은 NFS 서버 또는 SAN 서버(224,226)에 각각 접속되고, 각각의 데이터베이스(228,230)을 호스팅한다.Tier-4 Database Server Farm (DBSF) . This tier consists of two database server farms, including a message center database server farm (MCDSF) 220 and a print services database server farm (PSDSF) 222. Each of these server farms is connected to an NFS server or SAN server 224, 226, respectively, and hosts a respective database 228, 230.
데이터베이스 서버 팜은 상술한 계층-2 메시지 센터 팜에서와 동일한 방법으로 서로를 검사하는 하트비트를 구현한다. 그러나, 일부 향상된 상업적인 데이터베이스 시스템은 서버 내장식 장애-극복 스위치를 가질 수도 있다. 그런 경우, "서버 팜 하트비트 시험"의 구현 없이 안정성이 달성될 수 있다.The database server farm implements heartbeats that check each other in the same manner as in the layer-2 message center farm described above. However, some advanced commercial database systems may have a server built-in failover switch. In that case, stability can be achieved without the implementation of a "server farm heartbeat test".
범위성(Scalability). 계층-1 및 계층-3에서 더 동작하는 예(instance)의 생성은 전체 시스템의 스케일링을 도울 수 있다. 선택적인 부하 평형기는 시스템을 완전 확장하기 위해 계층-2에 배치될 수 있다. 이러한 경우, 각 구성요소의 액세스 가능성을 보장하기 위해 부하 평형기가 책임(responsibility)을 다하기 때문에, 하트비트 검사 메커니즘은 불필요하게 된다.Scalability . Generation of instances that operate further at layer-1 and layer-3 may help scale the entire system. An optional load balancer can be placed in Layer-2 to fully expand the system. In this case, the heartbeat check mechanism is unnecessary because the load balancer does its responsibility to ensure the accessibility of each component.
보안성. 모듈러 아키텍처 설계 및 연장가능한 데이터베이스 방식은 정교한 보안 구현을 가능하게 한다. 먼저, 이용자 인증에 있어서, 가입자 데이터베이스는 지원되는 장치를 통해 이용자가 시스템으로 로그인할 때 검증을 위해 이용되는 이용자 프로파일을 포함한다. 검증이 실패하면, 참조 또는 조사를 위해 기록은 시스템상에 로그된다. 게다가, 메시지 센터는 높은 레벨의 클라이언트 및 서버 인증을 지원하는 공중 키 기반구조를 구현할 수 있다. 두 번째로, 데이터 암호화 지원에 있어서, 각각의 모듈은 메시지 센터 대 파일 스토어, 인쇄 서비스 대 메시지 센터, 출력 이미지 리포지토리 대 인쇄 센터, RDC 대 파일 이미지 리포지토리 사이에 실시될 수 있다. 심한 암호화는 전체 성능을 감소시키는 반면, 부족한 암호화는 이용자 데이터를 위험하게 한다. 세 번째로, 부인 방지(non-repudiation) 구현에서, 시스템은 각각의 가입자에 고유한 ID를 할당한다. 이용자가 요구를 시스템에 제공하면, 요구는 그 ID와 시각소인(timestamp)과 함께 즉시 태그된다. 작업 제공 요구라면, 중복 카피가 시스템에 생성되고, 로그되어, 추후의 참조 및 과금을 위해 획득된다. 전술한 보안 구현에 더하여, 본 시스템 모듈 및 이산 아키텍처의 다른 이점은 관리자가 조직의 필요에 기반하여 보안 세팅을 개별화할 수 있다는 점이다. 예컨대, 가상 사설 네트워크(VPN)는 공유 파일서버와 메시지 센터 사이의 표준 셋업으로서 구현될 수도 있다. 마찬가지로, VPN은 메시지 센터와 원격 데스크탑 클라이언트 사이에 구현될 수 있다. 이 시스템 아키텍처는 소프트웨어 및 하드웨어 VPN 구성을 모두 지원한다. 전체 시스템은 인증 및 인증화를 제공하고, 데이터 무결성 및 데이터 프라이버시를 보호하며, 부인 방지 요구사항을 만족시키기 위해, 공중 키 인프라로 구성될 수 있다.Security . The modular architecture design and extensible database approach enable sophisticated security implementations. First, in user authentication, the subscriber database includes a user profile that is used for verification when the user logs in to the system via a supported device. If verification fails, a record is logged on the system for reference or investigation. In addition, the message center can implement a public key infrastructure that supports high levels of client and server authentication. Second, in supporting data encryption, each module can be implemented between a message center to file store, a print service to message center, an output image repository to a print center, and an RDC to file image repository. Strong encryption reduces overall performance, while insufficient encryption puts user data at risk. Third, in a non-repudiation implementation, the system assigns a unique ID to each subscriber. When a user provides a request to the system, the request is immediately tagged with its ID and timestamp. If a job offer request, duplicate copies are created in the system, logged and obtained for later reference and billing. In addition to the security implementations described above, another benefit of the present system modules and discrete architecture is that administrators can customize security settings based on the needs of the organization. For example, a virtual private network (VPN) may be implemented as a standard setup between a shared file server and a message center. Similarly, a VPN can be implemented between the message center and the remote desktop client. This system architecture supports both software and hardware VPN configurations. The entire system can be configured with a public key infrastructure to provide authentication and authentication, protect data integrity and data privacy, and meet nonrepudiation requirements.
메시지 센터Message center
메시지 센터는 예컨대 인터넷을 통해 일반적으로 공중 액세스를 제공하는 하나 또는 그 이상의 네트워크 서버로 이루어지고, RDBMS(relational database management system) 데이터베이스를 구현한다. 도26을 참조하면, 일실시예에서, 메시지 센터(MCn)는 유닉스 서버(232)상에 호스트된다. 일반적으로, 각종 서버 클래스는 유닉스(UNIX), 마이크로소프트 윈도우 서버, 및 리룩스(Linux) 운영체제를 실행하는 서버를 포함하는, 메시지 센터 호스트로서 이용될 수도 있다. 바람직하게, 서버는 RAID5 디스크 서브시스템 등의 중복 구성요소(redundant component)와 높은 가용도의 하드웨어로 구현되어야한다.A message center consists of one or more network servers, typically providing public access over the Internet, for example, and implements a relational database management system (RDBMS) database. Referring to Figure 26, in one embodiment, the message center MCn is hosted on the Unix server 232. In general, various server classes may be used as message center hosts, including servers running Unix, Microsoft Windows Server, and Linux operating systems. Preferably, the server should be implemented with redundant components such as a RAID5 disk subsystem and high availability hardware.
메시지 센터(MCn)는 메시지 센터 및 기타 시스템 구성요소의 동작에 관련하는 데이터가 저장되는 RDBMS 데이터베이스(228)를 포함한다. 일반적으로, RDBMS 데이터베이스는 오라클(Oracle)(예컨대, 8i 또는 9i), 마이크로소프트(예컨대, SQL Server 7 또는 2000), IBM(DB2), Informix, 및 Sybase를 포함하는, 여러 판매자 중 하나에 의해 제공되는 SQL RDBMS 데이터베이스 소프트웨어에 의해 호스트될 수도 있다. 현재의 구현에 있어서, 네트워크 소켓 접속, PERL 및 C 언어 프로그래밍 API을 갖는 MySOL RDBMS가 이용된다. 선택적으로, 데이터베이스(228)는 비-SQL RDBMS에 의해 호스트될 수도 있다.The message center MCn includes an RDBMS database 228 in which data relating to the operation of the message center and other system components is stored. In general, RDBMS databases are provided by one of several vendors, including Oracle (eg 8i or 9i), Microsoft (eg SQL Server 7 or 2000), IBM (DB2), Informix, and Sybase. It can also be hosted by a SQL RDBMS database software. In the current implementation, a MySOL RDBMS with network socket connection, PERL and C language programming APIs is used. Optionally, database 228 may be hosted by a non-SQL RDBMS.
또한, 각각의 메시지 센터는 도1을 참조하여 설명한 태스크를 제어하기 위해 각종 소프트웨어 모듈을 포함한다. 이들은 메시지 핸들러(234), 테이블 업데이트 핸들러(236), 테이블 유지 동작(238), 및 인쇄 서비스 통신 채널(240)을 포함한다. 게다가, 메시지 센터는 웹 트래픽과의 인터페이싱을 위해 웹 서버 구성요소를 포함한다. 일실시예에서, PHP4 및 SSL 서버 확장을 갖고, 인쇄 서비스 통신 동작 뿐 아니라 원격 서버 유지 및 관리를 지원하기 위해 CGI 어플리케이션에 연계된 아파치 웹 서버가 이용된다.Each message center also includes various software modules to control the tasks described with reference to FIG. These include message handler 234, table update handler 236, table maintain operation 238, and print service communication channel 240. In addition, the message center includes a web server component for interfacing with web traffic. In one embodiment, an Apache web server with PHP4 and SSL server extensions and associated with CGI applications is used to support print server communication operations as well as remote server maintenance and management.
메시지 핸들러(234)는 특정 네트워크 포트(예컨대, 시스템 포트 5190)로 바운드 되는 서비스로서 실행한다. 원격 데스크탑 클라이언트는 이 포트를 이용하여 메시지 센터에 접속하고, 세션의 수명 동안 지속적인 접속을 유지한다. 메시지 센터와 RDC 사이의 통신은 지향된 접속이고, 각각의 세션은 네트워크 메시지 프로토콜을 이용하는 특정 페이즈(phase)로 이루어진다. 메시지 센터와 원격 데스크탑 클라이언트 사이의 통신은, RDC가 세션 시작 프로세스를 개시할 때 갑작스런 접속해제(RDC 호스트 머신(예컨대, PC)이 셧다운되거나 RDC 어플리케이션이 중단될 때 네트워크 접속의 해제 또는 RDC 상의 에러로 기인함)에 의해 종료되거나, RDC가 세션 정지 프로세스를 개시할 때 종료된다.The message handler 234 runs as a service bound to a particular network port (eg, system port 5190). The remote desktop client uses this port to connect to the message center and maintain a persistent connection for the life of the session. Communication between the message center and the RDC is a directed connection, and each session consists of a specific phase using a network message protocol. Communication between the message center and the remote desktop client may be caused by a sudden disconnection when the RDC initiates the session initiation process (disconnected network connection or an error on the RDC when the RDC host machine (eg, PC) is shut down or the RDC application is interrupted). (Due to RDC), or when the RDC initiates a session stop process.
테이블 업데이트 핸들러(TUH)(236)는 RDBMS 시스템의 음성(negative) API로 기록된 데이터베이스 방법의 세트로 이루어진다(예컨대, MySQL RDBMS 구현에 있어서, C 및 PERL 언어 API가 이용될 것이다. Oracle RDBMS 구현에 있어서, PLSQ 저장 프로시저가 이용될 것이다). 이 모듈에서의 방법은 원격 프린터 리소스 상태를 변경하고, 무선 가입자 프로파일을 추가하고, 삭제하고, 변경하며, 인쇄 서비스 작업 큐 관리 테이블 업데이트하는 기능과 기타 기능으로 이루어진다.The table update handler (TUH) 236 consists of a set of database methods recorded with the negative API of the RDBMS system (eg, in a MySQL RDBMS implementation, the C and PERL language APIs will be used.) In an Oracle RDBMS implementation PLSQ stored procedure will be used). The method in this module consists of changing remote printer resource status, adding, deleting, changing wireless subscriber profile, updating print service job queue management table, and other functions.
테이블 유지 동작(TMO) 모듈은 로그 및 기록을 생성하고, 주기적으로 테이블을 정리하고, 데이터베이스 테이블 문제를 보정하기 위해 필요한 유지 기능을 수행하는 일련의 이산 데이터베이스 동작을 포함한다. 이들 기능 중 일부는 기본적으로 실행되는 반면, 다른 일부는 매시간, 매일 또는 주말마다 주기적으로 수행되도록 예정된다. 이 모듈에서의 일부 기능은 포트 80 상의 CGI 인터페이스(또는 SSL)를 통해 이용 가능하다.The table maintenance operation (TMO) module includes a series of discrete database operations that perform the maintenance required to generate logs and records, periodically clean up tables, and correct database table problems. Some of these functions are enabled by default, while others are scheduled to be performed periodically, every hour, every day, or every weekend. Some functionality in this module is available through the CGI interface (or SSL) on port 80.
인쇄 서비스 통신 채널(240)은 인쇄 서비스 구성요소에 의해 메시지 센터를 액세스 하기 위해 메시지 채널을 구현한다. 이 채널은 작업 큐 관리 상태를 업데이트하기 위해 시스템 내의 인쇄 서비스가 메시지 센터로 접속되게 해준다. 일실시예에서, 이 채널은 포트 80 또는 메시지 센터의 SSL 포트를 통해 구현되고, 메시징능력을 제공하는 API는 CGI 스크립트를 포함한다.The print service communication channel 240 implements a message channel for accessing the message center by the print service component. This channel allows print services in the system to connect to the message center to update the job queue management status. In one embodiment, this channel is implemented via port 80 or the SSL port of the message center, and the API providing messaging capability includes CGI scripts.
데이터베이스 방식Database method
일반적으로, 메시지 센터 RDBMS 방식은, 원격 프린터 리소스 관리(RPRM) 데이터베이스(242), 작업 인쇄 큐 관리(JPQM) 데이터베이스(244), 및 무선 가입자(SUB) 데이터베이스(246)를 포함하는 3개의 분리된 데이터베이스를 포함한다.In general, the message center RDBMS approach comprises three separate, including remote printer resource management (RPRM) databases 242, job print queue management (JPQM) databases 244, and wireless subscriber (SUB) databases 246. Include a database.
RPRM 데이터 베이스는 프린터 리소스 레지스트리, RDC 프로세스, 및 프린터 자산(asset) 관리와 관련한 테이블을 포함한다. JPQM 데이터베이스는 인쇄 서비스에 의해 프로세스되는 인쇄 작업의 제공과 관련한 테이블을 포함한다. 무선 가입자데이터베이스는 무선 가입자와 관련한 테이블을 포함한다.The RPRM database contains tables related to printer resource registries, RDC processes, and printer asset management. The JPQM database contains tables related to the provision of print jobs that are processed by the print service. The wireless subscriber database includes tables related to wireless subscribers.
SUB 데이터베이스 테이블SUB database table
가입자 테이블. 이 테이블은 시스템 내의 무선 가입자의 특정 정보를 포함한다. 가입자는 한번의 등록 시퀀스 동안 이 테이블의 필드를 기록한다. "HTTP_X_UP_DEVCAP"와 함께 시작하는 설명에 대응하는 필드는 무선 장치의 일부 능력을 정의하는 HTTP GET 헤더 내의 무선 장치로부터 되돌려지는 장치 능력 값(device capability value)을 포함한다. SUB_NO 필드는 등록 중에 가입자에 의해 입력되는 모바일 전화 번호와 관련한 고유 가입자 번호를 포함하고, 모든 세션에 대해 가입자를 인증하기 위해 이용된다. 인덱스 필드 SUB_ID는 각각의 기록에 대해고유하고, 이하에 설명하는 NETWORK_SITES 및 PRINTERS 테이블을 참조하는데 이용된다.Subscriber table . This table contains specific information of wireless subscribers in the system. The subscriber records the fields of this table during one registration sequence. The field corresponding to the description beginning with "HTTP_X_UP_DEVCAP" contains the device capability value returned from the wireless device in the HTTP GET header that defines some capability of the wireless device. The SUB_NO field contains a unique subscriber number associated with the mobile phone number entered by the subscriber during registration and is used to authenticate the subscriber for every session. The index field SUB_ID is unique for each record and is used to refer to the NETWORK_SITES and PRINTERS tables described below.
네트워크 사이트 테이블. 이 테이블은 가입자에 의해 추가되는 네트워크 사이트를 정의하는 여러 개의 필드를 포함하고, 각 사이트에 대한 로그인 정보를 포함한다.Network site table . This table contains several fields that define the network sites added by the subscriber, and contains login information for each site.
프린터 리소스 테이블. 이 테이블은 특정 가입자에 대한 프린터 리소스를 정의하기 위해 요구되는 정보의 여러 필드를 포함한다.Printer resource table . This table contains several fields of information required to define printer resources for a particular subscriber.
RPRM 데이터베이스 테이블RPRM database table
마스터 프린터 리소스 테이블. 이 테이블은 시스템 와이드 원격 프린터 리소스 구성 및 특정 메시지 센터에 등록된 모든 인쇄 리소스에 대한 상태 정보를 포함한다.Master Printer Resource Table . This table contains the system wide remote printer resource configuration and status information for all print resources registered in a particular message center.
구역 설명자 테이블. 이 테이블은 시스템 와이드 네트워크에서 정의된 구역에 대한 파라미터를 정의한다. 이 테이블의 기록은 구역 식별자(ZID) 값에 의해 참조된다. ZONE_DESC 설명자, ZONE_TYPE, 및 STATUS 필드는 구역의 특성을 설명한다.Zone descriptor table . This table defines the parameters for the zones defined in the system wide network. The records in this table are referenced by zone identifier (ZID) values. The ZONE_DESC descriptor, ZONE_TYPE, and STATUS fields describe the characteristics of the zone.
메시지 센터 테이블(MCT). 이 테이블은 시스템 내의 메시지 센터를 참조하기 위해 이용되는 정보를 포함한다. 이들 프로세스는 메시지 센터 식별자(MCID)에 의해 식별되고, 고유한 시스템 와이드 값이다. 모든 PUBLIC 리소스에 대하여 0과 동일한 MCID로 항상 참조되는 마스터 메시지 센터가 있고, 다른 메시지 센터는 0이 아닌 양의 MCID 값을 가지는 것을 유의해야 한다. MCT는 구역 및 메시지 센터의 네트워크 어드레스를 식별하는 정보를 포함한다. 마스터 메시지 센터는 0과 동일한 구역 식별자(ZID)를 가지며, 다른 모든 메시지 센터는 0이 아닌 양의 MCID 값을 가지는 것을 유의해야 한다.Message Center Table (MCT) . This table contains information used to refer to message centers in the system. These processes are identified by message center identifiers (MCIDs) and are unique system wide values. Note that for every PUBLIC resource there is a master message center that is always referenced by the same MCID as 0, and other message centers have a non-zero positive MCID value. The MCT contains information identifying the network addresses of the zone and the message center. Note that the master message center has a zone identifier (ZID) equal to zero, and all other message centers have non-zero positive MCID values.
클라이언트 설명자 테이블. 이 테이블은 원격 프린터 리소스와 관련한 개별적인 클라이언트를 정의한다. 이 테이블 내의 기록은 클라이언트 식별자(CID)에 의해 참조된다. CLIENT_DESC, CLIENT_TYPE, NAME, 및 어드레스 필드는 클라이언트의 속성을 정의한다. 이 테이블에 저장된 정보는 데스크탑 클라이언트 소프트웨어가 개인에 의해 설치될 때 또는 회사의 방화벽 뒤에 있는 PC 상에 설치될 때 일어나는 등록 프로세스 동안 생성된다. 인쇄 작업 큐 정보는 인쇄될 작업을 갖는 클라이언트 프로세스와 관련하는 CID 식별자를 포함한다.Client descriptor table . This table defines individual clients associated with remote printer resources. Records in this table are referenced by client identifier (CID). The CLIENT_DESC, CLIENT_TYPE, NAME, and address fields define the attributes of the client. The information stored in this table is generated during the registration process that occurs when desktop client software is installed by an individual or on a PC behind a company's firewall. The print job queue information includes a CID identifier associated with the client process having the job to be printed.
작업 인쇄 큐 관리 데이터베이스 테이블Job Print Queue Management Database Tables
인쇄 서비스 테이블. 이 테이블은 네트워크 내에 설치된 등록된 인쇄 서비스를 포함한다. 이 테이블 내의 기록은 MPID 식별자에 의해 참조된다(현재의 구현에서, 인쇄 서비스 서버는 "MAGICPRINT"TM서버라고 언급되며, 따라서 식별자 이름의 사용은 MPID라고 명명한다. 이들 인쇄 서버는 여기서는 무-드라이버(Driverless) 인쇄 서버(DPS)라고 언급된다. NAME 설명자, IP 어드레스, 상태, 및 서버 설명자문자열 필드는 각각의 인쇄 서비스의 속성을 정의하는데 이용된다. 인쇄 서비스 서버 상의 각각의 드라이버 타입에 대하여 엔트리가 만들어진 것에 유의해야 한다. 특정 장소에 놓여진 서버에 있어서, ZID 식별자는 관련된 구역을 참조하기 위해 이용된다.Print service table . This table contains registered print services installed in the network. The records in this table are referenced by MPID identifiers (in the current implementation, the print service server is referred to as the "MAGICPRINT"TM server, so the use of the identifier name is referred to as MPID. These print servers are referred to herein as driverless Driverless) The NAME Descriptor, IP Address, Status, and Server Descriptor String fields are used to define the attributes of each print service An entry is made for each driver type on the print service server. Note that for servers placed in a particular location, the ZID identifier is used to refer to the relevant zone.
인쇄 큐 테이블. 이 테이블은 네트워크에 대한 프린터 큐를 관리한다. 이 테이블에서의 각각의 기록은 QID 식별자에 의해 참조되는 단일 인쇄 작업을 나타낸다. 전체 시스템 설계는 지연된 인쇄 작업 능력을 촉진시키고, QDATE 및 DQATE 필드는 작업 큐 엔트리 및 빠져나간 날자 및 시간을 추적한다. 이 테이블에서의 대부분의 식별자는 인쇄 작업이 그 테이블로부터 처리된 후 작업 큐 로그 테이블로 복사된다. DRIVERDESC 문자열은 PID 식별자에 의해 참조되고, CID 식별자에 의해 참조되는 데스크탑 클라이언트와 관련된 원격 프린터 리소스 뿐만 아니라 문서 프로세스에 이용된 프린터 드라이버의 타입을 정의하는 정보를 포함한다.Print queue table . This table manages printer queues for the network. Each record in this table represents a single print job referenced by a QID identifier. The overall system design facilitates delayed print job capability, while the QDATE and DQATE fields track job queue entries and exit dates and times. Most of the identifiers in this table are copied into the job queue log table after the print job has been processed from that table. The DRIVERDESC string is referenced by the PID identifier and contains information defining the type of printer driver used in the document process as well as the remote printer resource associated with the desktop client referenced by the CID identifier.
작업 큐 로그 테이블. 작업 큐 로그 테이블은 프로세스된 인쇄 작업 로그에 대한 정보를 포함한다. 이 로그 내의 작업은 작업 로그 ID(JID) 값에 의해 참조된다. 인쇄 큐 테이블로부터의 필드가 이 테이블로 전송된다. 인쇄 서비스 서버는 MPID 식별자에 의해 참조된다. 작업을 인쇄하는데 이용된 클라이언트는 CID 식별자에 의해 참조된다. CID와 관련한 원격 프린터 리소스는 PID 식별자에 의해 참조된다. 게다가, 작업 소유 식별자 스트링은 인쇄 작업의 기점을 식별하기 위해 포함된다.Work queue log table . The job queue log table contains information about the processed print job log. Jobs in this log are referenced by job log ID (JID) values. Fields from the print queue table are transferred to this table. The print service server is referenced by the MPID identifier. The client used to print the job is referenced by the CID identifier. The remote printer resource associated with the CID is referenced by the PID identifier. In addition, a job ownership identifier string is included to identify the origin of the print job.
인쇄 서비스(PSn)에 이용된 소프트웨어 구성요소의 일실시예의 보다 상세한 설명이 도27에 나타난다. 소프트웨어 구성요소는, 셋업 구성요소(300), 메시지 센터 통신 인터페이스(301), 문서 프로세싱 구성요소(302), 및 관리 구성요소(304)를 포함하는 4개의 그룹으로 논리적으로 분할된다. 각각의 이들 구성요소는 하나 또는 그 이상의 소프트웨어 어플리케이션, 스크립트, 구성요소 및/또는 모듈을 더 포함한다. 셋업 구성요소(300)는 인쇄 셋업 모듈(306) 및 계정 마법사 모듈(308)을 포함한다. 메시지 센터 통신 인터페이스(301)는 메시지 센터 통신채널(310)에 대한 인쇄 서버를 포함한다. 문서 프로세싱 구성요소(302)는 CGI 스크립트(311), 무-드라이버 인쇄 서버 구성요소(312), 포트 모니터(314), 상태 모니터(316), 및 미리보기 모듈(318)을 포함한다. 관리 구성요소(304)는 시스템 모니터(320), 관리(제어 패널) 웹 페이지(322), 자동 확장 모듈(324), 및 자동 업데이트 모듈(326)을 포함한다.A more detailed description of one embodiment of software components used for print service PSn is shown in FIG. The software component is logically divided into four groups including setup component 300, message center communication interface 301, document processing component 302, and management component 304. Each of these components further includes one or more software applications, scripts, components, and / or modules. Setup component 300 includes a print setup module 306 and an account wizard module 308. The message center communication interface 301 includes a print server for the message center communication channel 310. The document processing component 302 includes a CGI script 311, a driverless print server component 312, a port monitor 314, a status monitor 316, and a preview module 318. The management component 304 includes a system monitor 320, a management (control panel) web page 322, an auto extension module 324, and an auto update module 326.
일실시예에서, 인쇄 셋업 모듈(306)은 시스템에 의해 이용되는 윈도우 프린터의 구성을 변경하기 위해 시스템 관리자에 의해 실행되는 마이크로소프트(MS) 윈도우 어플리케이션을 포함한다. 이 어플리케이션은 현존의 프린터를 전환하고, 새로운 프린터를 설치하고, 또는 프린터를 삭제하는데 이용될 수도 있다. 현존하는 프린터의 전환은 현존하는 프린터 설치를 선택하고, MS 윈도우의 포트 모니터에 의해 제공되는 동작을 포트 모니터(314)로 대체하는 것을 포함한다. 포트 모니터(314)의 이용은 스풀 파일이 DPS 시스템에 의해 조작되게 하고, 상태 모니터(316)가 스풀 파일을 선택된 목적지 출력장치로 송신할 수 있게 해준다.In one embodiment, print setup module 306 includes a Microsoft (MS) Windows application executed by a system administrator to change the configuration of a Windows printer used by the system. This application may be used to switch existing printers, install new printers, or delete printers. Switching of existing printers involves selecting an existing printer installation and replacing the operation provided by the port monitor of the MS window with port monitor 314. The use of the port monitor 314 allows the spooled file to be manipulated by the DPS system and allows the status monitor 316 to send the spooled file to the selected destination output.
인쇄 셋업 모듈(306)은 적당한 프린터 장치 드라이버로 새로운 프린터를 설치하기 위해 이용될 수도 있다. 예컨대, 관리자는, 프린터의 포스트스크립트 프린터 설명(PPD) 파일을 이용함으로써 DPS 시스템의 사용을 위한 Adobe PostScriptTM드라이버를 인스톨함으로써 포스트스크립트(postscript) 프린터를 셋업할 수 있다. 관리자가 PDD를 제공할 수 있으면, 프린터 셋업 모듈은 포스트스크립트 드라이버를 설치하고, DPS 시스템에 의한 사용을 위해 이를 구성할 것이다. 다른 경우, 관리자는 새로운 프린터에 대하여 적당한 프린터 장치 드라이버를 제공할 수도 있다. 인쇄 셋업 모듈(306)은 프린터를 삭제하는데 이용될 수도 있다. 그러한 경우, 윈도우 포트 모니터는 시스템의 포트 모니터로서 복원될 수 있고, 또는 선택된 프린터를 위한 DPS 서버의 지원이 완전히 제거될 수도 있다.The print setup module 306 may be used to install a new printer with a suitable printer device driver. For example, an administrator can set up a PostScript printer by installing the Adobe PostScript™ driver for use of the DPS system by using the printer's PostScript Printer Description (PPD) file. If the administrator can provide the PDD, the printer setup module will install the PostScript driver and configure it for use by the DPS system. In other cases, the administrator may provide a suitable printer device driver for the new printer. Print setup module 306 may be used to delete a printer. In such a case, the Windows port monitor may be restored as the system's port monitor, or the support of the DPS server for the selected printer may be completely removed.
계정 마법사 모듈(308)은 관리 웹 페이지(322)의 세트에 보안성을 부여하여, 관리자의 로그인은 웹 페이지의 어느 세트가 액세스 가능한지를 판정할 것이다. 일실시예에서, 시스템은 모니터, 매니저, 및 관리 레벨을 포함하는 3가지 관리 레벨을 구현한다. 일실시예에서, 계정 마법사는 이들 3개 그룹을 MS 윈도우 이용자 그룹으로서 생성한다. 게다가, 계정 마법사는 MS 윈도우 이용자 계정을 생성하고, 관리 이용자 그룹 중 하나에 이들을 배치한다. 일실시예에서, 계정 마법사 모듈(308)은 MS 윈도우 어플리케이션이다.The account wizard module 308 secures the set of administrative web pages 322 so that the administrator's login will determine which set of web pages are accessible. In one embodiment, the system implements three levels of management including a monitor, a manager, and a level of management. In one embodiment, the account wizard creates these three groups as MS Windows user groups. In addition, the account wizard creates MS Windows user accounts and places them in one of the administrative user groups. In one embodiment, account wizard module 308 is an MS Windows application.
메시지 센터 통신채널(310)에 대한 인쇄 서비스는 인쇄 서비스와 메시지 센터 사이의 통신을 가능하게 한다. 이 통신은 인쇄 서비스 등록 및 등록해제, 작업 렌더링 요구, 작업 인쇄 요구, 장치 등록 및 등록해제, 및 장치 상태 질의 등을 포함한다.The print service for the message center communication channel 310 enables communication between the print service and the message center. This communication includes print service registration and deregistration, job rendering request, job print request, device registration and deregistration, and device status query.
CGI 스트립트(311)의 보다 상세한 설명이 도28에 나타난다. 취소 인쇄 작업 CGI 스크립트(328)는 시스템으로부터 인쇄 작업 요구를 제거하는데 이용된다. 관리 웹 페이지(322)로부터, 스크립트는 시스템으로 제공되었고, 아직까지 그 스풀 파일을 프린터로 송신하지 않은 모든 인쇄 작업에 대해 호출될 수 있다. 이 스크립트는 메시지 센터로부터 호출될 수도 있다.A more detailed description of the CGI script 311 is shown in FIG. Cancel print job CGI script 328 is used to remove a print job request from the system. From the administration web page 322, the script has been provided to the system and can be called for any print job that has not yet sent its spooled file to the printer. This script may be called from the message center.
자동 확장 구성 CGI(automatic extension configuration CGI) 스크립트(329)는 설치된 어플리케이션에 대한 인쇄 서비스 호스트를 탐색하고, 어느 문서 타입이 발견된 어플리케이션에 의해 지원될 수 있는지를 발견하고, 발견된 그러한 파일 타입의 인쇄 작업 요구를 허용하도록 인쇄 서비스를 구성한다. 이 정보는 메시지 센터로 포워딩되어 그 리소스 구성정보를 업데이트한다. 업데이트 시스템 CGI 스크립트(330)는 설치된 시스템 구성요소를 최근의 이용가능한 구성요소와 비교하고, 새로운 구성요소(적용 가능할 때)를 다운로드하고, 이를 PS 호스트에 설치한다.Automatic extension configuration CGI script 329 searches the print service host for the installed application, finds which document type can be supported by the found application, and prints the file type found. Configure the print service to allow job requests. This information is forwarded to the message center to update its resource configuration information. The update system CGI script 330 compares the installed system components with the latest available components, downloads new components (if applicable), and installs them on the PS host.
인쇄 요구 CGI 스크립트(331)는 소스 데이터(예컨대, 문서 파일, 그래픽 이미지 파일 또는 입력으로서 메시지 센터로부터의 URL)를 선택하고, 인쇄 서비스에 의해 처리될 인쇄 작업 요구를 생성한다. 작업 큐 CGI 스크립트(332)는 시스템으로부터 인쇄 작업 요구의 큐를 판독하고, 리스트를 스크립트 호출자(예컨대, MC)에게 되돌린다. 미리보기 CGI 스크립트(323)는 문서 파일, 그래픽 파일, 또는 메시지 센터로부터의 URL을 선택하고, 인쇄 요구 CGI 스크립트와 유사한 방식으로 시스템 상에 인쇄 작업 요구를 생성한다. 그러나, 미리보기 CGI 스크립트가 호출되면, 시스템은 문서, 이미지, 또는 웹 페이지를 인쇄를 위해 프린터로 송신하기보다는 이용자의 발신 장치의 이용자 인터페이스에 나타내기 위한 포맷으로 변환한다. 미리보기 CGI 스크립트는 시스템에게 미리 보기된 아이템을 선택된 출력 장치로 송신하도록 명령하기 위해 문서, 이미지, 또는 웹 페이지에 대해 두 번째 호출될 수 있다.The print request CGI script 331 selects source data (eg, a document file, a graphic image file, or a URL from the message center as input) and generates a print job request to be processed by the print service. The job queue CGI script 332 reads the queue of print job requests from the system and returns the list to the script caller (eg, MC). The preview CGI script 323 selects a document file, graphic file, or URL from the message center and creates a print job request on the system in a manner similar to the print request CGI script. However, when the preview CGI script is called, the system converts the document, image, or web page into a format for presentation on the user interface of the user's originating device, rather than sending it to a printer for printing. The preview CGI script may be called a second time on the document, image, or web page to instruct the system to send the previewed item to the selected output device.
리셋 CGI 스크립트(334)는 시스템 어플리케이션을 종료하고, 이들을 다시 시작한다. 이 스크립트는 발생할 수도 있는 모든 프로그램을 제거하기 위해 시스템 관리자에 의해 최후 시도로서 이용된다. 상태 CGI 스크립트(335)는 인쇄 작업 요구의 진행 상황을 관리 웹 페이지(322)에 제공한다.Reset CGI script 334 terminates the system application and restarts them. This script is used as a last attempt by the system administrator to remove any program that may have occurred. Status CGI script 335 provides management web page 322 with the progress of the print job request.
무-드라이버 인쇄 서버(312)에 의해 구현되는 구성요소가 도29에 보여진다. 무-드라이버 인쇄 서버는 인쇄 서비스에 의해 이용되는 메인 소프트웨어 구성요소이다. 이는 최종 인쇄를 위해 작업 요구, 큐 요구를 수락하는 인쇄 서비스 호스트(예컨대, 서버 컴퓨터)상에서 실행되는 어플리케이션을 포함하고, 문서, 이미지 또는 요구로부터의 URL에 대한 인쇄 프로세스를 명령한다. 무-드라이버 인쇄 서버 구성요소는 파일 타입 구성 리스트(File Type Configuration list)(336), 브라우저 인쇄 구성요소(337), 추가 어플리케이션 인쇄 구성요소(Supplemental Application Print component)(338), 셀 확장 인쇄 구성요소(Shell Extension Print component)(339), 인쇄 미리보기 구성요소(340), 작업 요구 서버 구성요소(341), 작업 프로세싱 구성요소(342), 제어 윈도우 구성요소(Handle Window component)(343), 및 작업 상태 구성요소(344)를 포함한다.The components implemented by the driverless print server 312 are shown in FIG. The driverless print server is the main software component used by the print service. This includes an application running on a print service host (eg, a server computer) that accepts job requests, queue requests for final printing, and instructs the print process for URLs from documents, images or requests. The driverless print server component includes a File Type Configuration list (336), a browser print component (337), a Supplemental Application Print component (338), and a cell extended print component. (Shell Extension Print component) 339, print preview component 340, job request server component 341, job processing component 342, handle window component 343, and Includes a job status component 344.
파일 타입 구성 리스트(336)는 무-드라이버 인쇄 서버에 의해 유지된다. 구성 리스트는 각각의 파일 타입에 대한 확장자 및 그 파일 타입을 인쇄하는데 이용되는 방법을 갖는다. 인쇄 방법이 추가 어플리케이션 인쇄 구성요소(338)에 의해 제공되면, 이 리스트는 인쇄에 이용되는 어플리케이션으로의 경로, 인쇄를 위해 어플리케이션이 이용하는 메뉴 명령어, 및 어플리케이션을 종료하기 위해 어플리케이션이 이용하는 메뉴 명령어를 포함한다.File type configuration list 336 is maintained by a driverless print server. The configuration list has an extension for each file type and the method used to print that file type. If a printing method is provided by the additional application printing component 338, this list includes a path to the application used for printing, a menu command used by the application for printing, and a menu command used by the application to terminate the application. do.
브라우저 인쇄 구성요소(337)는, 무-드라이버 인쇄 서버가 출력 이미지 데이터를 생성하기 위해 이용하는 3가지 방법 중 한가지를 포함한다. 일실시예에서, 이 구성요소는 마이크로소프트 인터넷 익스플로러(IE:Internet Explorer) 웹 브라우저에 의해 제공되는 어플리케이션-프로그래밍 인터페이스(API: Application-Programming Interface)를 이용한다. IE API를 이용하면, 구성요소는 무-드라이버인쇄 서버 어플리케이션 상의 윈도우 내에서 브라우저를 실행한다. URL을 인쇄하기 위해, 무-드라이버 인쇄 서버는 제공된 네비게이트 프로그래밍 인터페이스를 이용하여 웹 페이지를 윈도우에 로드한다. 페이지가 일단 로드되면, 구성요소는 IE의 제공된 인쇄 프로그래밍 인터페이스를 이용하여 인쇄동작을 수행한다.The browser print component 337 includes one of three methods that a driverless print server uses to generate output image data. In one embodiment, this component utilizes an Application-Programming Interface (API) provided by a Microsoft Internet Explorer (IE) Web browser. Using the IE API, the component runs a browser in a window on a driverless server application. To print the URL, the driverless print server loads the web page into the window using the provided navigation programming interface. Once the page is loaded, the component uses the provided print programming interface of IE to perform a print operation.
문서 및 이미지 파일은 DPS 서버 컴퓨터 상의 IE 브라우저 인스턴스가 요구된 문서 또는 이미지 파일의 타입에 대한 브라우저 플러그인으로 구성되면 이 방법을 이용하여 인쇄될 수 있다. 예컨대, 어도비 아크로뱃(Adobe AcrobatTM)에 대한 IE 플러그인을 생각해보자. 어도비 아크로뱃 문서 파일은 PDF 확장자를 갖는다. Acrobat 플러그인이 서버 컴퓨터 상에 설치되면, IE의 네비게이트 프로그래밍 인터페이스는 그 파일의 인쇄를 허용할 것이다.Document and image files can be printed using this method if an IE browser instance on the DPS server computer consists of a browser plug-in for the type of document or image file required. For example, consider an IE plug-in for Adobe AcrobatTM . Adobe Acrobat document files have a PDF extension. If the Acrobat plug-in is installed on the server computer, IE's Navigator programming interface will allow printing of the file.
추가 어플리케이션 인쇄 구성요소(338)는 출력 이미지 데이터를 생성하기 위해 무-드라이버 인쇄 서버에 의해 이용되는 다른 방법을 제공한다. 이 구성요소는 파일 확장자와 연관되는 어플리케이션을 발견하기 위해 파일 타입 구성 리스트(336)를 이용하여, 그 파일을 어플리케이션으로 로드하고, 그 어플리케이션에 대한 인쇄 메뉴 명령어를 실행하고, 인쇄 오퍼레이션의 종료에 따라 그 어플리케이션을 종료한다. 파일 타입 구성 리스트와 추가 어플리케이션 인쇄 방법의 조합으로, 서버 머신 상에 어플리케이션을 설치하고, 파일 타입 구성 리스트를 편집함으로써 시스템 관리자는 추가적인 문서 또는 이미지 타입에 대한 지원을 추가할 수 있다.Additional application printing component 338 provides another method used by the driverless print server to generate output image data. This component uses file type configuration list 336 to find the application associated with the file extension, loads the file into the application, executes a print menu command for that application, and upon completion of the print operation. Quit the application. With a combination of file type configuration lists and additional application printing methods, by installing an application on a server machine and editing the file type configuration list, system administrators can add support for additional document or image types.
셀 확장 인쇄 구성요소(339)는 인쇄를 위해 무-드라이버 인쇄 서버에 의해 이용되는 제3 방법을 제공한다. 이 구성요소는 인쇄를 위해 MS 윈도우 셀 확장 프로그래밍 인터페이스를 이용한다. MS 윈도우 셀 확장 인터페이스는 이용자로 하여금 문서 타입을 지원하는 어플리케이션으로 송신되는 명령어를 갖는 문서 타입을 인쇄할 수 있게 해주는 운영체제 특징이다. 어플리케이션이 셀 확장 인터페이스를 지원하면, 어플리케이션은 문서를 로드하고, 이를 인쇄하고, 자체적으로 종료할 것이다. 파일 타입 구성 리스트와 셀 확장 인쇄 방법의 조합으로, 시스템 관리자는 서버 머신 상에 어플리케이션을 설치하고, 파일 타입 구성 리스트를 편집함으로써 시스템 관리자는 추가적인 문서 또는 이미지 타입에 대한 지원을 추가할 수 있다.Cell extended printing component 339 provides a third method used by a driverless print server for printing. This component uses the MS Windows cell extension programming interface for printing. The MS Windows Cell Extension Interface is an operating system feature that allows a user to print a document type with instructions sent to an application that supports the document type. If the application supports a cell extension interface, the application will load the document, print it, and exit on its own. With a combination of file type configuration lists and cell extension printing methods, system administrators can install applications on server machines and edit file type configuration lists to allow system administrators to add support for additional document or image types.
인쇄 미리보기 구성요소(340)는 인쇄 작업 요구 문서, 이미지 또는 URL을 문서 포맷 파일로 변환하고, 따라서 소비자 이용자는 요구된 문서, 이미지 또는 URL의 예를 볼 수 있다. 이 구성요소는 미리보기 CGI 스크립트(333)와의 조합으로 작업한다. 하나의 변환에 있어서, 무-드라이버 인쇄 서버는 어도비 아크로뱃 문서 포맷과 관련하여 수행한다. 인쇄 미리보기 구성요소의 이용을 통해, 무-드라이버 인쇄 서버는 인쇄용 스풀 파일을 생성하기 위해 이용된 동일한 방법에 의해 스풀 파일을 생성한다. 그러나, 출력 장치 또는 리포지토리로 송신하기 위해 상태 모니터(316)로 스풀 파일을 송신하는 대신에, 스풀 파일을 어도비 아크로뱃 디스틸러(distiller) 어플리케이션을 통해 실행하고, 이는 문서 파일을 아크로뱃 문서 포맷으로 변환한다. 이 변환은 프린터 드라이버가 어도비 포스트스크립트 드라이버인 것을 요구한다. 무-드라이버 인쇄 서버는 미리보기 프로세스에서 생성된 스풀파일을 유지하고, 소비자 이용자가 문서를 인쇄하길 원한다면, DPS는 스풀 파일을 간단하게 상태 모니터(316)로 송신할 수 있고, 이어서 상태 모니터는 이를 프린터로 송신하여 인쇄한다.The print preview component 340 converts the print job request document, image or URL into a document format file, so that the consumer user can see an example of the requested document, image or URL. This component works in combination with the preview CGI script 333. In one conversion, the driverless print server performs in conjunction with the Adobe Acrobat document format. Through the use of the print preview component, the driverless print server generates the spooled file by the same method used to generate the spooled file for printing. However, instead of sending the spool file to the status monitor 316 for sending to an output device or repository, the spool file is run through an Adobe Acrobat distiller application, which converts the document file to the Acrobat document format. . This conversion requires the printer driver to be an Adobe PostScript driver. The driverless print server maintains the spooled file generated in the preview process, and if the consumer consumer wants to print the document, the DPS can simply send the spooled file to the status monitor 316, which then monitors it. Send to the printer and print.
작업 요구 서버 구성요소(341)는 인쇄 요구 CGI 스크립트(331)로부터 인쇄 작업 요구를 받고, 프로세스를 위해 이들을 큐한다. 작업 프로세싱 구성요소(342)는 출력 이미지 데이터가 생성될 때까지 인쇄 작업 요구가 작업 큐로의 삽입되는 것을 관리한다. 이 구성요소는 큐된 작업 요구를 판독하고, 3가지 인쇄 방법 중 어느 하나를 인쇄를 위해 이용할 지를 결정하고, 문서, 이미지, 또는 URL을 결정된 인쇄 방법으로 제공하고, 인쇄 명령어 실행을 제어하고, 스풀 파일을 저장을 위한 상태 모니터로 제공한다. 출력 이미지 생성 프로세스의 단계 동안, 상태는 추적되고, 만들어질 수도 있는 모든 상태 CGI 스크립트(335)에 이용가능하게 만들어진다.Job request server component 341 receives print job requests from print request CGI script 331 and queues them for processing. Job processing component 342 manages the insertion of print job requests into the job queue until output image data is generated. This component reads queued job requests, determines which of the three printing methods to use for printing, provides a document, image, or URL as the determined printing method, controls the execution of print commands, and controls spool files. Provides a status monitor for storage. During the stages of the output image generation process, the state is made available to all state CGI scripts 335 that may be tracked and created.
제어 윈도우 구성요소(343)는 안정적인 인쇄를 제공하기 위해 이용된다. 많은 어플리케이션이 인쇄 프로세스 동안 인쇄 서비스를 요구한 이용자로부터 정보를 수집하거나 이용자에게 정보를 알리기 위해 메시지 박스 및/또는 다이얼로그를 표시한다. 인쇄 요구의 자동 프로세싱을 지원하기 위해, 요구를 인쇄하기 위해 이용되는 어플리케이션에 나타날 수도 있는 모든 메시지 박스 또는 다이얼로그에 응답하는 메커니즘이 필요하다. 이 메커니즘은 제어 윈도우 구성요소(343)에 의해 제공된다. 무-드라이버 인쇄 서버는 나타날 수도 있는 메시지 박스 및 다이얼로그에 대하여 인쇄 프로세스 동안 호스트 서버 어플리케이션을 주시한다. 새로운 메시지 박스 또는 다이얼로그가 나타나면, 제어 윈도우 구성요소는 정보를 판독하고, 이를알려진 메시지 또는 알려진 상태(statement)와 비교하고, 그 프로그램된 로직에 따라 메시지 박스 또는 다이얼로그를 종료한다. 제어 윈도우 구성요소의 더욱 상세한 설명은 도32를 참조하여 이하에 설명된다.Control window component 343 is used to provide stable printing. Many applications display message boxes and / or dialogs to collect information from or inform the user of the user who requested the print service during the printing process. To support automatic processing of print requests, a mechanism is needed to respond to all message boxes or dialogs that may appear in the application used to print the request. This mechanism is provided by the control window component 343. The driverless print server looks at the host server application during the print process for message boxes and dialogs that may appear. When a new message box or dialog appears, the control window component reads the information, compares it with a known message or known state, and exits the message box or dialog according to its programmed logic. A more detailed description of the control window component is described below with reference to FIG.
작업 상태 구성요소(344)는 각각의 무-드라이버 인쇄 서버 큐 내의 모든 작업의 메모리-맵 파일(memory-mapped file)을 유지하기 위해 제공된다. 주기적인 간격으로, 작업 상태 정보는 메모리-맵 파일에 기록되어 상태 CGI 스크립트는 작업 요구를 판독할 수 있다.Job status component 344 is provided to maintain a memory-mapped file of all jobs in each driverless print server queue. At periodic intervals, job status information is written to a memory-map file so that the status CGI script can read the job request.
포트 모니터는 MS 윈도우 인쇄 서브시스템에서의 표준 구성요소이다. 포트 모니터는 인쇄 서브시스템을 통해 프린터 드라이버로부터 스풀 데이터를 수신한다. 종래의 포트 모니터는 프린터 드라이버로부터 스풀 데이터를 받아들이고, 이를 프린터로 분배하는 책임이 있다. 무-드라이버 인쇄 서버에서, 포트 모니터(314)(도27)는 스풀 데이터를 파일에 기록한다. 전체 스풀 파일이 파일에 기록되고 나면, 포트 모니터 모듈(314)은 무-드라이버 인쇄 서버에 이름 및 스풀 데이터의 위치를 전달한다.Port Monitor is a standard component in the MS Windows Printing Subsystem. The port monitor receives spool data from the printer driver through the printing subsystem. Conventional port monitors are responsible for receiving spool data from the printer driver and distributing it to the printer. In a driverless print server, port monitor 314 (FIG. 27) writes spool data to a file. Once the entire spooled file has been written to the file, the port monitor module 314 passes the name and location of the spooled data to the driverless print server.
상태 모니터(316)는 서버 컴퓨터에서 동작하는 어플리케이션을 포함한다. 이는 복수의 기능을 수행하지만, 스풀 파일을 프린터로 송신하는 것을 최우선으로 한다. 무-드라이버 인쇄 서버가 포트 모니터(314)로부터 스풀 파일의 위치를 전달받은 후, 무-드라이버 인쇄 서버는 상태 모니터(316)로 스풀 파일의 위치, 스풀 파일이 송신되어질 프린터의 URL, 및 스풀 파일을 프린터로 송신하기 위한 프로토콜 정보를 전달한다. 프린터는 한번에 하나의 스풀 파일만을 수신할 수 있기 때문에, 스풀 파일 전달자(transmittals)를 나열한다. 상태 모니터(316)는 동시적으로 다중 큐를 생성하고 유지할 수 있다.Status monitor 316 includes an application running on a server computer. This performs a plurality of functions, but sending spooled files to the printer is a top priority. After the driverless print server receives the location of the spooled file from the port monitor 314, the driverless print server sends the status monitor 316 the location of the spooled file, the URL of the printer to which the spooled file is to be sent, and the spooled file. Delivers protocol information for sending to a printer. Since the printer can only receive one spooled file at a time, it lists the spooled file transmitters. Status monitor 316 can simultaneously create and maintain multiple queues.
출력 이미지가 성공적으로 생성된 후, 상태 모니터(316)는 작업이 종료되었음을 무-드라이버 인쇄 서버에 전달한다. 작업 내력(job history)이 업데이트되고, 무-드라이버 인쇄 서버 큐로부터 작업이 삭제된다. 상태 모니터(316)는, 출력 이미지가 생성되는 도중 또는 생성된 후에, 메시지를 외부 구성요소(external component)로 송신하도록 구성될 수 있다. 예컨대, 상태 모니터는 출력 이미지가 인쇄 작업에 대응하는 지정된 인쇄 작업이 종료되었음을 메시지 센터에게 알리기 위해 이용될 수도 있다.After the output image has been successfully generated, the status monitor 316 informs the driverless print server that the job has ended. The job history is updated and the job is deleted from the driverless print server queue. The status monitor 316 may be configured to send a message to an external component during or after the output image is generated. For example, the status monitor may be used to inform the message center that the designated print job whose output image corresponds to the print job has ended.
시스템 모니터 구성요소(320)는 다른 모든 인쇄 서비스 구성요소를 모니터하는 어플리케이션을 포함하고, 이는 오류를 감시하고, 특정 요구를 수신한다. 인쇄 작업 요구가 인쇄 요구 CGI 스크립트(331)로부터 도달될 때, 무-드라이버 인쇄 서버 어플리케이션이 동작하지 않으면, 인쇄 요구 CGI 스크립트는 시스템 모니터(320)가 무-드라이버 인쇄 서버를 개시해야 한다고 요구할 수 있고, 따라서 인쇄 작업 요구가 서비스되는 것을 허용한다. 시스템 모니터(320)는 무-드라이버 인쇄 서버로 메시지를 주기적으로 송신하여 프로그램의 상태 및 그 큐 내의 모든 인쇄 작업을 취득한다. 시스템 모니터가 오류를 검출하면, 이 문제를 해결하기 위해 시도한다.System monitor component 320 includes an application that monitors all other print service components, which monitor for errors and receive certain requests. When a print job request arrives from the print request CGI script 331, if the driverless print server application is not running, the print request CGI script may request that the system monitor 320 should initiate a driverless print server. Therefore, allows print job requests to be serviced. The system monitor 320 periodically sends a message to the driverless print server to obtain the status of the program and all print jobs in its queue. If the system monitor detects an error, try to fix this problem.
시스템 모니터(320)는 새로운 인쇄 서비스 시스템 구성요소를 다운로드하고 설치하는데 이용될 수도 있다. 시스템 모니터는 시스템 내의 모든 구성요소의 버전번호를 수집하고, 이를 시스템의 업데이트 웹 사이트로 송신한다. 업데이트 웹 사이트가 더 새로운 구성요소의 이용가능성에 대한 정보를 제공하면, 시스템 모니터는 이러한 구성요소를 검색하고, 이를 시스템 상에 설치한다. 시스템 모니터는 그 메뉴로부터 또는 업데이트 시스템 CGI 스크립트(330)로부터 업데이트 요구를 접수한다.System monitor 320 may be used to download and install new print service system components. The system monitor collects the version numbers of all components in the system and sends them to the system's update web site. When the update web site provides information about the availability of newer components, the system monitor searches for these components and installs them on the system. The system monitor receives the update request from its menu or from the update system CGI script 330.
관리 웹 페이지(322)는 관리 이용자에 의한 시스템의 원격 구성 및 모니터링을 허용한다. 소비자 이용자에 의한 이들 웹 페이지의 억세스를 방지하기 위해 보안 특성(security feature)이 이용될 수 있다.Administrative web page 322 allows remote configuration and monitoring of the system by an administrative user. Security features can be used to prevent access of these web pages by the consumer-user.
출력 이미지 생성을 위해 파일이 제공되면, 무-드라이버 인쇄 서버는 파일의 파일 타입에 대응하는 어플리케이션을 연다. 예컨대, 파일이 .doc 확장자를 갖는다면, MS 워드 어플리케이션이 일반적으로 열릴 것이다. 이어서, 어플리케이션은 파일을 열고, 내장된 인쇄 명령어를 통해 제공 파일을 선택된 프린터에 송신한다. 확장자 웹 페이지(미도시)는 파일 타입 정보("확장자" 컬럼에) 및 파일 타입에 대응하는 소프트웨어 어플리케이션("어플리케이션 이름" 컬럼에)을 나열하는 로우(엔트리)를 표시한다. 각각의 엔트리는 확장자에 대한 우선 레벨(동일한 확장자를 갖는 파일 타입이 제공된 파일에 대하여 적당한 어플리케이션을 결정하기 위해 평가되어지는 순서를 결정하기 위함), 어플리케이션에 관련한 정보가 OS 레지스트리의 어느 곳에 저장되는지를 식별하는 레지스트리 위치, 어플리케이션에 대한 디폴트 경로, 어플리케이션에 대한 실행 가능한 이름, 및 인쇄하기 위한 내부 코드를 디스플레이하고, 어플리케이션을 종료한다. 관리자는 "새로운 엔트리 추가" 버튼의 활성화를통해 새로운 파일 타입을 추가할 수 있고, 이는 이전의 웹 페이지에서의 각각의 컬럼에 대한 대응하는 편집 컨트롤을 갖는 웹 페이지를 렌더링할 것이다. 이용자는 또한 파일 타입을 업데이트하고, 현재의 파일 타입 정보를 편집할 수도 있다.If a file is provided for generating an output image, the driverless print server opens an application corresponding to the file type of the file. For example, if a file has a .doc extension, an MS Word application will normally open. The application then opens the file and sends the provided file to the selected printer via the embedded print command. An extension web page (not shown) displays a row (entry) listing file type information (in the "extension" column) and a software application (in the "application name" column) corresponding to the file type. Each entry contains a priority level for the extension (to determine the order in which file types with the same extension are evaluated to determine the appropriate application for a given file), and where the information about the application is stored in the OS registry. Display the registry location that identifies, the default path for the application, the executable name for the application, and the internal code to print, and exit the application. The administrator can add a new file type through the activation of the "Add New Entry" button, which will render the web page with the corresponding edit control for each column in the previous web page. The user can also update the file type and edit the current file type information.
무-드라이버 프린트 서버는 어느 어플리케이션이 서버 컴퓨터 상에 설치되었는지를 판정하기 위해 파일 타입 값에 대응하는 확장자 테이블을 사용하고, 확장자 테이블에 나열된 각각의 파일 타입의 파일 인쇄에 이를 이용한다. 테이블 내의 정보는 또한 인쇄 서비스 서버 컴퓨터 상의 실행 가능한 파일의 위치를 판정하기 위해 이용된다. 일실시예에서, 확장자 테이블과 각종의 기타 구성 및 인쇄 작업 데이터는 데이터베이스에 유지된다. 일반적으로, 데이터베이스는 DPS 소프트웨어를 호스트하는 것과 동일한 머신 상에서 호스트되지만, 개별적인 머신이 데이터 베이스를 호스트하기 위해 이용될 수도 있고, 이는 당업자들에게 잘 알려져 있다.The driverless print server uses an extension table corresponding to the file type value to determine which application is installed on the server computer, and uses it for printing a file of each file type listed in the extension table. The information in the table is also used to determine the location of the executable file on the print service server computer. In one embodiment, the extension table and various other configuration and print job data are maintained in a database. In general, the database is hosted on the same machine that hosts the DPS software, but individual machines may be used to host the database, which is well known to those skilled in the art.
인쇄 요구의 프로세싱Processing print request
인쇄 요구에 응답하여 인쇄 서비스 DPS 시스템 소프트웨어 구성요소에 의해 수행되는 데이터 흐름 및 동작이 도30에 보여진다. 우선, 발신 장치(350)의 이용자는 시스템에 접속하고, 로컬 스토어 또는 원격 스토어로부터 인쇄할 소스 데이터 및 상술한 방식으로 소스 데이터가 인쇄되어질 출력 장치를 선택한다. 이용자 입력(352)을 포함하는 이 정보는 대응하는 메시지 센터에 의해 수신될 것이며, 메시지 센터는 이 정보를 프로세싱 하여 인쇄 작업(353)을 생성한다. 일반적으로, 인쇄 작업은 소스 데이터 또는 소스 데이터에 대한 리퍼런스를 포함할 것이고, 인쇄서비스에 의해 생성되는 출력 이미지가 리포지토리에 저장되는지 또는 출력 장치로 직접적으로 제공되는지를 식별한다. 인쇄 작업은 인쇄 파라미터 및 인쇄 작업에 대응하는 기타데이터를 포함하는 tmpdoc.dpsn 문서(354)를 생성하는 인쇄 요구 CGI 스크립트(331)에 의해 최초로 프로세스된다. 이어서, tmpdoc.dpsn 문서는 인쇄 요구 CGI 스크립터를 통해 작업 큐(356)로 송신된다. 일실시예에서, 작업 큐는 FIFO(First-in first-out) 타입의 작업 큐를 포함한다. 선택적으로, 기타 타입의 작업 큐도 이용될 수 있고, 이는 당업자에게 잘 알려져 있다. 전술한 바와 같이, 작업 큐 동작은 작업 프로세싱 구성요소(342)에 의해 수행된다.30 shows the data flow and operation performed by the print service DPS system software component in response to a print request. First, the user of the originating apparatus 350 connects to the system and selects source data to be printed from a local store or a remote store and an output device to which the source data is to be printed in the manner described above. This information, including the user input 352, will be received by the corresponding message center, which message center processes the information to create a print job 353. In general, the print job will include a reference to the source data or the source data and identify whether the output image generated by the print service is stored in the repository or provided directly to the output device. The print job is first processed by a print request CGI script 331 which generates a tmpdoc.dpsn document 354 containing print parameters and other data corresponding to the print job. The tmpdoc.dpsn document is then sent to the job queue 356 via the print request CGI script. In one embodiment, the work queue includes a work queue of the first-in first-out (FIFO) type. Alternatively, other types of work queues may be used, as is well known to those skilled in the art. As discussed above, work queue operations are performed by work processing component 342.
작업 큐는 인쇄 서비스에 의해 프로세스될 작업 요구를 제공한다. 각각의 요구는, tmpdoc.dpsn 파일이 분석되어 문서 파일(360)에 저장되는 인쇄 요구에 대응하는 인쇄 작업 파라미터를 검색하는 블록(358)에 의해 프로세스된다. 예컨대, 분석된 정보는 프린터 섹션, 카피 개수, 소비자 이용자의 식별, 문서 이름, 인쇄 작업을 제공하는 메시지 센터를 포함한다. 이어서, 인쇄 작업 파라미터의 일부분이 DPS 데이터베이스(361)에 저장된다.The job queue provides job requests to be processed by the print service. Each request is processed by block 358, where the tmpdoc.dpsn file is analyzed and retrieves print job parameters corresponding to the print request stored in document file 360. For example, the analyzed information includes a printer section, copy number, identification of a consumer user, a document center, and a message center providing a print job. Then, a portion of the print job parameter is stored in the DPS database 361.
판정 블록(362)에서, 예컨대, 어플리케이션 파일, 이미지, 또는 웹 페이지 URL과 같이, 어느 타입의 문서가 인쇄될 것으로 요구되었는지가 결정된다. 웹 페이지, 이미지 또는 PDF 파일과 같이, 문서가 브라우징 가능한(browsable) 문서라면, 로직은 블록(364)으로 진행되고, 여기서, 웹 페이지, 이미지, 또는 PDF 문서는 무-드라이버 인쇄 서버의 브라우저로 로드된다. 그렇지 않으면, 로직은 블록(366)으로 진행되고, 여기서 문서를 인쇄하는데 이용될 수 있는 문서 및 적당한 추가 어플리케이션이 로드된다. 예컨대, 문서가 MS 엑셀 스프레드시트를 포함하면, MS 엑셀 어플리케이션의 인스턴스가 엑셀 문서와 함께 로드된다. 블록(368)에서, 내부 명령어는 URL, 이미지, 또는 문서가 브라우저 또는 추가 어플리케이션에 의해 인쇄되는 요구에 대한 인쇄 동작을 요구한 이용자를 시뮬레이트하기 위해 생성된다. 예컨대, 대부분의 어플리케이션은 파일 -> 인쇄 메뉴 옵션을 제공하고, 이는 어플리케이션에 대한 인쇄 프로세스를 개시한다.At decision block 362, it is determined which type of document is required to be printed, such as an application file, an image, or a web page URL. If the document is a browseable document, such as a web page, image, or PDF file, logic proceeds to block 364 where the web page, image, or PDF document is loaded into the browser of a driverless print server. do. Otherwise, logic proceeds to block 366 where a document and a suitable additional application are loaded that can be used to print the document. For example, if the document contains an MS Excel spreadsheet, an instance of the MS Excel application is loaded with the Excel document. In block 368, an internal command is generated to simulate a user who requested a print operation for a request for a URL, image, or document to be printed by a browser or additional application. For example, most applications provide a File-> Print menu option, which initiates a printing process for the application.
내부 어플리케이션 또는 브라우저 인쇄 요구에 따라, 각종 인쇄 및 문서 정보는 프린터 동작을 제어하는 운영체제로 내부적으로 전달된다. 상술한 바와 같이, 일실시예에서, 무-드라이버 인쇄 서버는 MS 윈도우 OS 환경에서 동작한다. 따라서, 이 환경은 OS 인쇄 서브시스템(369)을 제공하고, 서브시스템은, 출력 문서를 생성하기 위해, 타겟 프린터(374)로 송신되어질 적당한 프린터(예컨대, 출력장치) 데이터를 생성하는 선택된 프린터에 대응하는 프린터 장치 드라이버(372)와 인터액션하는 그래픽 장치 인터페이스(GDI) 구성요소(370)를 포함한다. 프린터 데이터는 포트 모니터(314)에 의해 수신되는 인쇄 스풀 파일을 출력하는 MS 윈도우 인쇄 스풀러 구성요소(376)에 의해 내부적으로 제어된다. 도시된 예에서, 목적지 출력 장치(DDEST)는 포스트스크립트 프린터를 포함한다고 가정한다. 따라서, 포트 모니터(314)는 포스트스크립트 파일(378)을 출력한다.Depending on the internal application or browser print request, various print and document information is passed internally to the operating system controlling the printer operation. As discussed above, in one embodiment, the driverless print server operates in an MS Windows OS environment. Thus, this environment provides an OS printing subsystem 369, which subsystem may be configured to select printers that generate suitable printer (e.g., output device) data to be sent to the target printer 374 to generate output documents. A graphics device interface (GDI) component 370 that interacts with a corresponding printer device driver 372. Printer data is controlled internally by the MS Windows print spooler component 376 which outputs a print spool file received by the port monitor 314. In the example shown, it is assumed that the destination output device DDEST includes a PostScript printer. Thus, port monitor 314 outputs PostScript file 378.
전술한 동작이 진행되는 동안, 발신 장치(350)의 이용자는 소스 데이터가 인쇄되기 이전에, 문서, 이미지, 또는 웹 페이지의 시뮬레이팅된 인쇄 출력을 미리보기 위해 선택될 수도 있다. 판정 블록(380)에서, 이용자가 프린터 출력 미리보기를 요구했는지에 여부가 판정된다. 대답이 예(TRUE)라면, 일실시예에서, 어도비 아크로뱃 디스틸러(382)의 인스턴스가 런치 되고, 이는 어도비 포터블 문서 포맷(PDF) 문서(384)를 생성하는데 이용된다. 이어서, PDF 문서는 미리보기 CGI 스크립트(333)에 의해 제어되고, 이는 문서를 메시지 센터(Mcn)를 통해 다시 발신 장치(350)로 송신하고, 여기서 어도비 PDF 플러그인을 통해 발신 장치 상에서 실행중인 브라우저 상에서 렌더링된다. 렌더링된 디스플레이(미도시)는 인쇄된 문서가 어떻게 보여지는지를 나타내는 미리보기를 제공하고, 소비가 이용자가 문서를 인쇄하거나 취소하는 것을 선택할 수 있게 해주는 이용자 인터페이스(UI) 컨트롤을 포함한다.While the aforementioned operation is in progress, the user of the originating apparatus 350 may be selected to preview the simulated print output of the document, image, or web page before the source data is printed. At decision block 380, it is determined whether the user has requested a preview of the printer output. If the answer is yes (TRUE), in one embodiment, an instance of Adobe Acrobat Distiller 382 is launched, which is used to generate an Adobe Portable Document Format (PDF) document 384. The PDF document is then controlled by the preview CGI script 333, which sends the document back through the message center (Mcn) to the sending device 350, where the Adobe PDF plug-in is running on a browser running on the sending device. Is rendered. The rendered display (not shown) provides a preview showing how the printed document will look and includes user interface (UI) controls that allow the consumer to choose to print or cancel the document.
소비자 이용자가 인쇄된 문서를 갖기 원한다면, 인쇄 통보가 다시 메시지 센터(MCn)로 송신되고, 여기서 미리보기 CGI 스크립트(333)에 의해 프로세스된다. 인쇄 통보를 수신함에 따라, 미리보기 CGI 스크립트(333)는 상태 모니터(316)를 기동하고, 인쇄 문서(378)를 출력 이미지 데이터가 어디로 송신되는지에 따라 목적지 출력 장치(DDEST) 또는 출력 리포지토리(78)로 제공한다. 이러한 경우와 관련하여, 작업 내력 정보가 DPS 데이터베이스(361)에서 업데이트 된다. 게다가, 출력이미지가 일단 출력되면, 인쇄 종료 통보(380)가 다시 상태 모니터(316)로 송신되고, 이어서 상태 모니터는 이 통보를 다시 메시지 센터(MCn)로 작업 상태 메시지(381)로서 포워딩한다.If the consumer user wants to have a printed document, a print notification is sent back to the message center MCn, where it is processed by the preview CGI script 333. Upon receiving the print notification, the preview CGI script 333 starts up the status monitor 316 and prints the print document 378 to the destination output device DDEST or the output repository depending on where the output image data is sent. 78). In this regard, the job history information is updated in the DPS database 361. In addition, once the output image is output, the print end notification 380 is sent back to the status monitor 316, which then forwards this notification back to the message center MCn as a job status message 381.
인쇄 미리보기 옵션이 소비자 이용자에 의해 선택되지 않은 경우, 판정 블록(382)에서의 응답은 "아니오(FALSE)"이고, 이는 상태 모니터(316)를 기동하고, 인쇄 문서(378)를 목적지 출력 장치(DDEST) 또는 출력 리포지토리(78)로 제공한다. 인쇄 프로세스 동안, 상태 모니터(116)는 프로세스의 진행을 모니터링하고, DPS 데이터베이스(361)를 업데이트한다. 상태 CGI 스크립트(335)는, 작업 상태 메시지(381)에 의해 묘사되는 바와 같이, 데이터베이스로부터의 진행 정보를 검색하고, 대응하는 인쇄 작업을 제공하는 메시지 센터로 다시 송신하기 위해 적당한 HRML을 생성함으로써, 메시지 센터에 인쇄 상태 정보를 제공하는데 이용된다.If the print preview option is not selected by the consumer user, the response at decision block 382 is "FALSE", which activates the status monitor 316 and returns the print document 378 to the destination output device. (DDEST ) or to the output repository 78. During the printing process, status monitor 116 monitors the progress of the process and updates the DPS database 361. The status CGI script 335 retrieves progress information from the database, as depicted by the job status message 381, and generates an appropriate HRML to send back to the message center providing the corresponding print job. It is used to provide print status information to the message center.
일실시예에서, 무-드라이버 프린트 서버는 프린터 파일의 직접 인쇄를 지원한다. 예를 들어, 만일, 인쇄 작업 파일이 프린터 파일을 포함하면, 목적지 출력 장치의 프린터 파일 타입에 대응하면 직접 인쇄될 수 있다. 예를 들어, 포스트스크립트 파일은 포스트스크립트상에 인쇄될 수 있다. 유사하게, 다른 타입의 프린터에 대한 프린터 파일은 인쇄 과정 동안 "파일저장" 옵션을 선택함으로써 이전에 생성될 수 있다. 만일 판정블록(362)에서 파일이 프린터 파일로 결정되면, 로직은 블록(367)으로 진행하고, 여기서, (프린터 파일(367)에 의해 설명된) 프린터 파일이 직접적으로 윈도우 인쇄 스풀러(376)에 송신된다.In one embodiment, the driverless print server supports direct printing of printer files. For example, if the print job file includes a printer file, it can be printed directly if it corresponds to the printer file type of the destination output device. For example, a PostScript file can be printed on PostScript. Similarly, printer files for other types of printers can be created previously by selecting the "Save File" option during the printing process. If the file is determined to be a printer file at decision block 362, the logic proceeds to block 367, where the printer file (described by the printer file 367) is sent directly to the Windows print spooler 376. Is sent.
만일 출력 이미지가 출력 장치에 송신되기 보다 출력 리포지토리(78)에 저장되면, 출력 이미지 파일 리퍼런스(386)에 의해 설명된 바와 같이, 상태 모니터(316)는 메시지 센터(MCn) 표시(indicia)를 인쇄 작업에 대응하여 출력 이미지 파일이 리포지토리에 축적되는 작업 상태 메시지(381)를 통해, 출력 이미지 파일의 이름 및 위치를 따라 송신한다.If the output image is stored in the output repository 78 rather than sent to the output device, the status monitor 316 prints a message center (MCn) indicia, as described by the output image file reference 386. Corresponding to the job, the output image file is transmitted along with the name and location of the output image file via the job status message 381 that is stored in the repository.
무-드라이버 프린트 서버 소프트웨어(46)의 내부 동작의 추가적인 세부사항이 도31에 도시되어 있다. 전술한 바와 같이, 소비이용자 동작 발신장치(350)는 발신장치(예: 미니 브라우저 UI(107) 또는 브라우저 UI(124))에 적합한 이용자 인터페이스를 통해 소스 데이터(예: 문서, 이미지 파일, 또는 웹 페이지)를 인쇄하도록 요구한다. 적합한 UI 페이지상의 "지금 인쇄" 버튼의 활성화에 대응하여, 이용자 입력 데이터는 tmpdoc.dpsn 문서(354)를 생성하는 인쇄 요구 CGI 스크립트에 의해 처리된다. 또한 인쇄 요구 CGI 스크립트는 메시지를 메시지 큐(392)에 저장하는 새로운 작업 파이프 서버(390)로의 인쇄 요구를 포함하는 메시지를 파이프 한다. 각 인쇄 요구 메시지에 있어서, 메시지 큐 핸들러(394)는 대응하는 tmpdox.dpsn 문서(354)를 분석하는 대응하는 스레드를 시작하고, 그것에 의해 문서 파일(360)을 발생시키고 작업 큐(356)에 인쇄 요구를 제공한다.Additional details of the internal operation of the driverless print server software 46 are shown in FIG. As described above, the consumer action sender 350 may source data (eg, document, image file, or web) via a user interface suitable for the sender (eg, mini browser UI 107 or browser UI 124). Page). In response to the activation of the "Print Now" button on the appropriate UI page, the user input data is processed by a print request CGI script that generates a tmpdoc.dpsn document 354. The print request CGI script also pipes the message containing the print request to the new job pipe server 390 which stores the message in the message queue 392. For each print request message, the message queue handler 394 starts a corresponding thread to parse the corresponding tmpdox.dpsn document 354, thereby generating the document file 360 and printing it to the job queue 356. Provide your needs.
시작 작업 큐 루프 블록(396) 및 종료 작업 큐 루프 블록(397)에 의해 설명되는 바와 같이, 이러한 루프단에 디스플레이 되는 다음 동작 및 로직이 인쇄 작업을 위해 수행된다. 우선, 블록(398)에서, 후속 작업이 작업 큐(356)로부터 검색된다. 판정 블록(400)에서, 인쇄 작업이 어떤 타입의 문서에 대응하는지 판정된다. 만일 문서가 어플리케이션 파일이면, 로직은 어떤 타입의 파일 타입 인쇄 방법이 사용되어야 하는지에 대한 판정이 내려지는 판정블록(402)으로 진행한다. 만일, 파일이 추가 어플리케이션을 요구하면(예: MS 워드, MS 엑셀, AutoCAD 등), 로직은문서 및 적합한 추가 어플리케이션이 전술한 방식으로 로드되는 블록(366)으로 진행한다. 파일이 추가 어플리케이션에서 로드되면, 전술한 바와 같이, OS에 의해 인쇄하기 위한 파일을 제공하기 위해 블록(368)에서 파일 인쇄 명령이 내부적으로 발생된다.As described by the start job queue loop block 396 and the end job queue loop block 397, the next operation and logic displayed at this loop end is performed for the print job. First, at block 398, subsequent work is retrieved from work queue 356. At decision block 400, it is determined what type of document the print job corresponds to. If the document is an application file, the logic proceeds to decision block 402 where a determination is made as to what type of file type printing method should be used. If the file requires additional applications (eg MS Word, MS Excel, AutoCAD, etc.), the logic proceeds to block 366 where the document and the appropriate additional application are loaded in the manner described above. Once the file is loaded in the additional application, a file print command is internally generated at block 368 to provide the file for printing by the OS, as described above.
다음으로, 판정 블록(404)에서 포트 모니터(314)로부터 "완료된" 메시지가 수신되는지 여부가 판정된다. 이러한 판정은 "완료된" 메시지가 수신될 때까지 주기적 기저상에 또는 소프트웨어 인터럽트 메커니즘을 통해 내려진다. 그 다음에 상태 모니터(316)는 블록(406)에서 시작되고, 전술한 바와 같이, 이것은 인쇄 문서(378)를 목표 프린터(374)로 송신하고 DPS 데이터베이스(386)에서 작업 이력 데이터를 갱신한다.Next, at decision block 404 it is determined whether a "completed" message is received from the port monitor 314. This determination is made on a periodic basis or via a software interrupt mechanism until a "complete" message is received. The status monitor 316 then begins at block 406, which, as described above, sends the print document 378 to the target printer 374 and updates the job history data in the DPS database 386.
판정 블록(400 및 402)으로 되돌아가서, 만일 문서 타입이 웹 페이지 또는 추가 어플리케이션(예: PDF 문서 또는 각종 타입의 이미지 파일)을 요구함 없는 무-드라이버 인쇄 서버 컴퓨터에 의해 직접 인쇄될 수 있는 파일 타입이면, 로직은 블록(364)으로 진행하고, 여기서, DPS 컴퓨터의 브라우저가 웹 페이지에 대해 URL로 네비게이트 되거나 그렇지 않으면 브라우저는 PDF 파일 또는 이미지 파일을 렌더링하기 위해 이용된다. 렌더링되면, 나머지 인쇄 동작은 블록(368)에서부터 전술한 방식으로 수행된다. 전술한 바와 같이, 만일 문서 타입이 프린터 파일이면, 문서는 직접 윈도우 인쇄 스풀러(376)에 송신된다.Returning to decision blocks 400 and 402, the file type can be printed directly by a driverless print server computer if the document type does not require a web page or additional application (e.g., a PDF document or various types of image files). If so, the logic proceeds to block 364 where the browser of the DPS computer is navigated to the URL for the web page or otherwise the browser is used to render the PDF file or image file. Once rendered, the remaining print operations are performed in the manner described above from block 368. As mentioned above, if the document type is a printer file, the document is sent directly to the window print spooler 376.
핸들 윈도우 구성요소(343)에 의해 제공되는 로직 및 동작의 세부사항에 대한 흐름도가 도32에 도시되어 있다. 도30의 시작 블록(450)에 의해 도시된 바와 같이, 핸들 윈도우 스레드는 판정 블록(362)의 시작에서 및 블록(368)에서 인쇄 동작이 야기된 직후 런칭된다. 전술한 바와 같이, 핸들 윈도우 구성요소는 어플리케이션이 로드되는 경우, 문서가 어플리케이션으로 로드되는 경우, 인쇄 동작이 초기화되는 경우, 인쇄 과정 동안 등에 런칭될 수 있는 각종 대화 및 메시지 상자를 핸들하기 위해 이용된다.A flowchart of the details of the logic and operations provided by handle window component 343 is shown in FIG. As shown by start block 450 of FIG. 30, the handle window thread is launched at the beginning of decision block 362 and immediately after a print operation has occurred at block 368. As described above, the handle window component is used to handle various dialogs and message boxes that can be launched when the application is loaded, when the document is loaded into the application, when the print operation is initiated, during the printing process, or the like. .
도32의 흐름도로 되돌아가서, 런칭된 상태에서, 핸들 윈도우 스레드는 블록(452)에서 더 이상의 검사할 데스크 탑 윈도우가 있는지 여부를 판정한다. 이러한 원도우는 통상적으로 대화 상자 또는 메시지 상자를 포함한다. 만일 더 이상의 검사할 윈도우가 없다면, 종료 스레드 종료 블록(454)에 의해 전술한 바와 같이, 스레드는 종료된다. 만일 검사할 윈도우가 더 있다면, 로직은 윈도우에 대한 윈도우 정보가 획득되는 블록(456)으로 진행한다. MS 윈도우 운영체제하에서, 윈도우 정보는 적합한 윈도우 API 호출을 구성함으로써 획득될 수 있다.Returning to the flowchart of FIG. 32, in the launched state, the handle window thread determines whether there are more desktop windows to inspect at block 452. Such windows typically include dialog boxes or message boxes. If there are no more windows to check, the thread ends, as described above by end thread end block 454. If there are more windows to check, the logic proceeds to block 456 where window information for the window is obtained. Under the MS Windows operating system, the window information can be obtained by constructing the appropriate window API call.
다음으로, 판정 블록(458)에서 윈도우가 렌더링 어플리케이션의 자(子) 윈도우인지(즉, 추가 어플리케이션 또는 브라우저에 의해 생산되었는지) 여부의 판정이 내려진다. 만일 아니오 판정이 내려지면, 윈도우는 렌더링 어플리케이션에 대응하지 않고, 로직은 후속 윈도우를 평가하기 위해 판정 블록(452)으로 진행한다. 만일 예(참) 판정이 내려지면, 로직은 윈도우에 대한 텍스트 및 제어 버튼이 검사되는 블록(460)으로 진행한다.Next, at decision block 458 a determination is made whether the window is a child window of the rendering application (ie, produced by an additional application or browser). If no is determined, the window does not correspond to the rendering application, and logic proceeds to decision block 452 to evaluate the subsequent window. If a yes determination is made, the logic proceeds to block 460 where the text and control buttons for the window are checked.
판정 블록(462)에서 판정된 바와 같이, 만일 텍스트가 표준 메시지 스트링과 일치하면 로직은 윈도우상의 닫기 버튼 또는 윈도우 프레임의 윈도우 닫기 아이콘을 활성화하는 이용자를 에뮬레이팅하기 위해 윈도우 닫기 명령이 내부적으로 제공되는 블록(464)으로 진행한다. 그 다음에 로직은 후속 윈도우를 처리하기 위해 판정 블록(452)으로 되돌아간다.As determined at decision block 462, if the text matches a standard message string, the logic is internally provided that a close window command is provided to emulate a user activating the close button on the window or the close window icon of the window frame. Proceed to block 464. The logic then returns to decision block 452 to process the subsequent window.
만일 표준 메시지 스트링과 정합하지 않으면, 판정 블록(462)으로 아니오(거짓) 판정이 내려지고, 로직은 텍스트가 DPS 데이터베이스(386)의 핸들 윈도우 테이블(470)에 저장되는 대응하는 엔트리 리스트 메시지텍스트 값과 일치하는지 여부의 판정이 내려지는 판정 블록(466)으로 진행한다. 만일 정합 값이 있으면, 로직은 정합 메시지텍스트 값의 행에서 데이터를 검색하고 데이터에 의해 제공되는 파라미터에 기초한 윈도우 API로의 대응하는 메시지를 발행함으로써 테이블 명령이 실행되는 블록(468)으로 진행한다. 예를 들어, 전형적인 엔트리 리스트 행(472)이 도72의 상측에 도시되어 있다. 행은 메시지ID, W파라미터, L파라미터 값을 포함하는 원도우 API에 관련된 정보를 보유한다. 이러한 파라미터는 원도우를 핸들링하기 위해 바람직한 동작을 유효하게 하기 위한 대응하는 API를 구성하도록 이용된다. 테이블 명령이 실행되면, 또는 만일 판정 블록(466)에 아니오(거짓) 판정이 내려지면, 로직은 후속 원도우 처리 시작을 위해 판정 블록(452)으로 되돌아간다.If it does not match the standard message string, a no (false) decision is made with decision block 462, and the logic determines that the corresponding entry list message text value is stored in the handle window table 470 of the DPS database 386. The decision proceeds to decision block 466 where a determination is made as to whether or not to match with. If there is a match value, the logic proceeds to block 468 where the table instruction is executed by retrieving the data in the row of match message text values and issuing a corresponding message to the Windows API based on the parameters provided by the data. For example, a typical entry list row 472 is shown above in FIG. The row holds information related to the Window API, including the message ID, W parameter, and L parameter values. These parameters are used to construct the corresponding API to validate the desired behavior for handling the window. If the table command is executed, or if a decision of false (no) is made in decision block 466, the logic returns to decision block 452 to begin subsequent window processing.
이용자 계정 셋업User Account Setup
도33 내지 37을 참조하여, 시스템은 이용자로 하여금 그들의 계정 셋업 및 네트워크, 프린터, 팩스 및 콘택과 같은 각종 파라미터를 구성하는 것을 가능하게 하는 각종 이용자 인터페이스 스크린을 제공한다. 전술한 바와 같이, 이러한 UI 스크린은 전형적으로 유선 및 무선 네트워크 액세스를 위한 HTLM-기반 웹 페이지 및 셀룰러 기반구조를 통해 시스템에 액세스하는 그러한 장치들을 위한 WAP-기반 카드를 포함할 것이다. 다중 동작을 포함하는 셋업 프로세스는 도33의 웹 페이지(500)이 상측에 디스플레이 되어 있다. 이러한 동작은 시작 셋업 동작(502), 파일 서버 액세스 셋업 동작(504), 즐겨찾는 프린터 셋업(506), 팩스 셋업 동작(508), 콘택 리스트 셋업 동작(510) 및 종료 셋업 동작(512)을 포함한다. 이러한 동작을 통해 가능하게된 각종 파라미터 셋업에 우선하여, 이용자는 이용자 이름 및 개인 식별 번호(PIN)를 수반하는 전형적인 이용자 인증 방식을 이용하는 시스템을 등록할 것이다.33-37, the system provides various user interface screens that enable the user to configure their account and configure various parameters such as network, printer, fax and contact. As noted above, such UI screens will typically include HTLM-based web pages for wired and wireless network access and WAP-based cards for those devices accessing the system via a cellular infrastructure. In a setup process involving multiple operations, the web page 500 of FIG. 33 is displayed on top. These operations include a start setup operation 502, a file server access setup operation 504, a favorite printer setup 506, a fax setup operation 508, a contact list setup operation 510, and an end setup operation 512. do. Prior to the various parameter setups made possible through this operation, the user will register a system using a typical user authentication scheme involving a user name and a personal identification number (PIN).
이용자는 시스템으로 로그인하고 계정 셋업 스크린 또는 세팅 스크린에 네비게이팅함으로써 셋업 프로세스를 시작한다. 후술할 컨텐츠와 유사한 컨텐츠를 보유하는 각종 스크린은 복수의 네비게이션 방식을 통해 액세스될 수 있다. 셋업 동작 동안, 이용자는 후속 이용자 세션 동안 이용자가 액세스 하고자 하는 하나 또는 그 이상의 파일서버를 정의할 것이다. 웹 페이지(500)에 대응하여, 이용자는 서버 이름(즉, 에일리어스) 및 편집 상자(514 및 516)에서 대응하는 서버 어드레스를 정의할 수 있다. 또한 이용자는 편집 상자(522)에서의 확인 패스워드에 진입하면서, 편집 상자(518 및 520)에서의 계정 이름 및 패스워드에 각각 진입한다. 최종적으로, 이용자는 풀다운 리스트(524)를 통해 파일서버를 선택할 것이다. 모든 파라미터가 진입한 후, 이용자는 "지금 서버 추가" 버튼(526)을 활성화할 것이고, 그것에 의해 웹 페이지로 하여금 파라미터를 웹 페이지를 관리하는 메시지 센터로 회신되게끔 한다. 그 다음에 파라미터는 메시지 센터 데이터베이스(228)에서의 네트워크 사이트 테이블에 저장된다.The user starts the setup process by logging in to the system and navigating to the account setup screen or settings screen. Various screens having contents similar to those to be described later may be accessed through a plurality of navigation methods. During the setup operation, the user will define one or more file servers that the user wishes to access during subsequent user sessions. Corresponding to web page 500, a user can define a server name (ie, an alias) and a corresponding server address in edit boxes 514 and 516. The user also enters the confirmation password in edit boxes 522, entering the account name and password in edit boxes 518 and 520, respectively. Finally, the user will select a file server via pull down list 524. After all parameters have entered, the user will activate a "Add Server Now" button 526, thereby causing the web page to return the parameters to the message center that manages the web page. The parameters are then stored in the network site table in the message center database 228.
도33은 이용자가 복수의 서버를 추가한 후 웹 페이지(500)가 어떻게 나타나는지를 묘사하는 웹 페이지(500)를 도시한다. 서버 이름 열(528)에 도시된 바와 같이, 이용자는 원하는 어떤 이름으로 (32자 이하와 같이 합리적인 길이 제한 내에서) 서버 이름을 정할 것이다. 네트워크 사이트 테이블은 SUB_ID 외부 키를 통해 가입자 테이블을 참조하고 대행 제1 키(SITE_ID)를 이용하기 때문에, 다중의 이용자들은 마이서버, 홈_네트워크 등과 같은 혼란을 초래하지 않고 동일한 서버 이름을 이용할 수 있다. 그러나, 단지 이용자에게 가시적인 서버만이 이용자가 이전에 등록한 서버가 될 것이다.33 shows web page 500 depicting how web page 500 appears after a user adds multiple servers. As shown in server name column 528, the user will name the server (within a reasonable length limit, such as 32 characters or less) with any name desired. Since the network site table refers to the subscriber table through the SUB_ID foreign key and uses the substitute first key (SITE_ID), multiple users can use the same server name without causing confusion such as My Server, Home_Network, etc. . However, only the server visible to the user will be the server previously registered by the user.
호스트 어드레스 열(530)에 도시된 바와 같이, 이용자는 IP 어드레스(예: 200.221.219.218) 또는 도메인 이름(예: ftp.prisip.com)을 이용하여 서버(호스트) 어드레스를 식별할 수 있다. 파일서버 타입 열(532)은 이용자가 추가한 서버의 서버 타입을 리스트 한다. 이러한 파라미터로의 변경은 "편집" 버튼(534)의 활성화를 통해 구성될 수 있고, 반면에 서버는 "제거" 버튼(536)을 통해 제거될 수 있다.As shown in the host address column 530, a user may identify a server (host) address using an IP address (eg 200.221.219.218) or a domain name (eg ftp.prisip.com). The file server type column 532 lists the server type of the server added by the user. Changes to these parameters can be configured through the activation of an "edit" button 534, while the server can be removed via a "remove" button 536.
이용자가 그의 서버를 셋업한 후, 도35의 웹 페이지(540)에 의해 도시된 바와 같이, 이용자는 "다음 >" 버튼(538)을 활성화할 것이고, 셋업 프로세스를 즐겨찾는 프린터 셋업 동작(506)으로 진행시킨다. 이 때, 이용자에게 프린터를 선택하기 위한 2개의 옵션(즉, 출력장치)이 나타나게 된다. "선택" 버튼(542)의 활성화는 이용자로 하여금 미리 구성된 인쇄 리스트에서 프린터를 탐색할 수 있게 하고, 반면에, "탐색" 버튼(544)의 활성화는 이용자로 하여금 하나 또는 그 이상의 입력 파라미터를 통해 프린터를 탐색할 수 있도록 한다. 통상적으로, 미리 구성된 인쇄 리스트는 단지 관리자에게만 이용가능한 관리 웹 페이지의 분리된 세트를 통해 이용자가 근무하는 회사 또는 기업의 관리자에 의해 구성될 것이다. 이용자에게 프린터 리스트가 나타날 것이고, 이용자는 "즐겨찾는" 프린터로서 리스트 내의 하나 또는 그 이상의 프린터를 선택할 수 있다.After the user has set up his server, as shown by the web page 540 of FIG. 35, the user will activate the "Next>" button 538 and printer setup operation 506 to favorite the setup process. Proceed to At this time, two options (i.e., output devices) for selecting a printer appear to the user. Activation of the "select" button 542 allows the user to navigate the printer in a preconfigured print list, while activation of the "navigation" button 544 allows the user to navigate through one or more input parameters. Allows you to navigate the printer. Typically, the preconfigured print list will be organized by the company or company administrator in which the user works through a separate set of administrative web pages available only to the administrator. A list of printers will appear to the user, and the user can select one or more printers in the list as "favorite" printers.
탐색 버튼(544)의 활성화는 웹 페이지(546)가 이용자에게 제공되도록 한다. 이러한 웹 페이지는, "도시별" 편집 상자(458), "주(state)별" 편집 상자(550), "우편번호별" 편집 상자(552), "비즈니스별" 편집 상자(554), "프린터 닉네임별" 편집 상자(556), "프린터 제품별" 편집 상자(558) 및 "프린터 모델별" 편집 상자(560)를 포함하고 이용자가 선택적으로 정보 탐색에 진입할 수 있는 복수의 편집 상자를 포함한다. "지금 탐색" 버튼(562)의 활성화에 응답하여, 시스템은 이용자에게 이용가능하고 이용자 탐색 판정기준을 충족시키는 어떤 등록된 프린터를 식별하기 위해 시도할 것이다. 예를 들어, 3개의 프린터의 예시적인 세트는 "주별" 편집 상자(550)에 진입한 워싱턴의 기준 값의 탐색에 응답하여 회신된다. 그 다음에 회신된 리스트에서의 프린터는 리스트에서의 각 행에 대응하는 체크상자(564)를 체크함으로써 이용자의 프린터 리스트에 추가되도록 선택될 수 있다. 그 다음에 이용자는 선택된 프린터를 세이브하기 위해 "완료" 버튼(566)을 활성화할 것이고, 이용자를 웹 페이지(540(A))로 되돌린다. 이 때, 웹 페이지는 즐겨찾는 프린터 리스트(568)의 이전에 선택된 어떤 프린트를 나타낼 것이다. 원한다면, 이용자는 활성버튼(570)을 통해 리스트로부터 프린터를 제거할 수 있다.Activation of navigation button 544 causes web page 546 to be presented to the user. These web pages include "by city" edit box 458, "by state" edit box 550, "by post code" edit box 552, "by business" edit box 554, " A plurality of edit boxes including a "by printer nickname" edit box 556, a "by printer product" edit box 558, and a "by printer model" edit box 560, where users can optionally enter information search. Include. In response to the activation of the "Search Now" button 562, the system will attempt to identify any registered printers that are available to the user and that meet the user search criteria. For example, an exemplary set of three printers is returned in response to a search for a Washington reference value that has entered the "weekly" edit box 550. The printers in the returned list may then be selected to be added to the user's printer list by checking the checkbox 564 corresponding to each row in the list. The user will then activate a "Done" button 566 to save the selected printer, and return the user to the web page 540 (A). At this point, the web page will represent any previously selected print of the favorite printer list 568. If desired, the user can remove the printer from the list via the active button 570.
이용자가 그의 즐겨찾는 리스트에 프린터를 추가한 후, 이용자는 "다음 >" 버튼(572)을 활성화할 것이고, 셋업 프로세스를 팩스 셋업 동작(508)으로 진행시킨다. 이것은 이용자를 팩스 셋업 웹 페이지(도시하지 않음) 절차로 진행시킬 것이다. 이러한 페이지는 이용자로 하여금 디폴트 아웃고잉 팩스(default outgoing faxes)를 선택하고 팩스 커버 페이지를 미리 구성할 수 있게 한다. 이어서, 이용자는 콘택 리스트 셋업 동작(510)에 콘택 리스트 웹 페이지(도시하지 않음) 세트의 이용을 통해 콘택 정보를 선택적으로 추가할 수 있다. 콘택 정보는 이용자로 하여금 그 콘택 리스트의 사람들에게 보다 쉽게 문서 및 팩스를 송신할 수 있게 한다.After the user adds the printer to his favorite list, the user will activate the "next>" button 572 and proceed to the fax setup operation 508. This will proceed the user to the fax setup web page (not shown) procedure. This page allows the user to select default outgoing faxes and preconfigure the fax cover page. The user may then selectively add contact information to the contact list setup operation 510 through the use of a contact list web page (not shown) set. Contact information makes it easier for users to send documents and faxes to the people in the contact list.
WAP UI 예WAP UI Example
전술한 바와 같이, 일실시예에서, 무선-웹 인에이블 장치는 WAP 게이트웨이(110)를 통해 시스템에 액세스할 수 있다(도20). WAP 인터페이스는 WML에서 인코딩되고 중대하게 적은 데이터를 보유하는 경우를 제외하고, HTML-기반 웹 페이지에 대략 유사한 "카드"의 "덱(deck)"을 포함한다. 또한, WAP 카드는 최소의 이용자 인터페이스로 네비게이트할 수 있도록 설계된다. 도38의 범례를 참조하여, 예시적인 WAP-기반 이용자 인터페이스에 대응하는 각종 WAP 카드 및 동작의 세부사항은 도39 내지 52에 도시되어 있다. 일실시예에서, CGI 스크립트 세트는 자동적으로 WAP 카드를 발생시키기 위해 이용된다.As noted above, in one embodiment, the wireless-web enabled device may access the system via the WAP gateway 110 (Figure 20). The WAP interface includes a "deck" of "cards" that are roughly similar to HTML-based web pages, except when encoded in WML and retaining significantly less data. In addition, the WAP card is designed to be able to navigate with a minimum user interface. Referring to the legend of FIG. 38, details of various WAP cards and operations corresponding to an exemplary WAP-based user interface are shown in FIGS. 39-52. In one embodiment, a set of CGI scripts is used to automatically generate a WAP card.
도39 및 40을 참조하여, 이용자는 다음의 방식으로 WAP-인에이블 장치를 이용하여 시스템에 액세스한다. 우선, 이용자는 그의 무선 인터넷 게이트웨이에 전술한 방식으로 액세스한다. 그 다음에 이용자는 직접 또는 재호출 링크(recalled link)(즉, 즐겨찾는 링크 등)를 통해 시스템용 URL에 진입한다. 그 다음에 스플래쉬 스크린(600)은 WAP 카드(1)에 대응하여 이용자에게 제공될 것이다. 로그인의 초기 동안, 시스템은 (예: 장치 전화번호 또는 다른 고유 식별자를 통해) 무선 장치를 식별하고 데이터베이스 질의(601)를 통한 메시지 센터 데이터베이스(228)의 가입자 테이블을 통해 장치에 대응하는 정보의 검색을 시도할 것이다. 만일 장치가 인식되면, 이용자는 이전에 장치를 시스템에 등록하였다. 따라서, 이용자에게 WAP 카드(2)에 대응하는 로그인 스크린(602)이 나타날 것이다. 이용자 이름(또는 다른 식별자)이 이전에 가입자 테이블에 입력된 정보에 기초하여 스크린상에 나타날 것이고 이용자는 그의 PIN을 입력할 것인지 질문 받게 된다. 만일 입력된 PIN이 저장된 PIN에 일치하면 이용자는 시스템에 로그인된다. 그렇지 않으면, 이용자에게 PIN의 재-엔트리를 요구하는 스크린(604)이 나타나게 된다. 만일 PIN 엔트리가 또 다시 실패하면, 이용자에게 이용자가 PIN이 이용자에게 이메일로 보내지기를 원하는지를 묻는 스크린(606)이 나타나게 된다.39 and 40, the user accesses the system using the WAP-enabled device in the following manner. First, the user accesses his wireless internet gateway in the manner described above. The user then enters the URL for the system either directly or via a called link (ie, a favorite link, etc.). The splash screen 600 will then be provided to the user in correspondence with the WAP card 1. During the initial phase of login, the system identifies the wireless device (e.g., via a device phone number or other unique identifier) and retrieves information corresponding to the device through the subscriber table of the message center database 228 via a database query 601. Will try. If the device is recognized, the user has previously registered the device with the system. Thus, the user will see a login screen 602 corresponding to the WAP card 2. The user name (or other identifier) will appear on the screen based on the information previously entered in the subscriber table and the user will be asked to enter his PIN. If the entered PIN matches the stored PIN, the user is logged in to the system. Otherwise, a screen 604 appears asking the user to re-enter the PIN. If the PIN entry fails again, a screen 606 is displayed asking the user if the user wants the PIN to be emailed to the user.
만일 이용자의 무선 장치가 시스템에 새로운 것이면, 데이터베이스 질의(601)의 결과는 널(Null)일 것이고, 로직은 이용자가 이용자 이름 및 PIN을 입력하는 초기 엔트리 스크린(606)으로 진행할 것이다. 만일 무효의 PIN이 입력되면, 스크린(610)은 새로운 PIN의 엔트리를 요구하는 장치상에 디스플레이될 것이다. 성공적인 PIN 엔트리이면, 확인 스크린(612)이 이용자에게 나타날 것이다. 도40을 참조하여, 이용자 이름 및 PIN이 입력되면, 데이터베이스 질의(613)는 이용자의 이메일 어드레스를 검색하기 위해 가입자 테이블로 구성된다. 만일 이용자가 새로운 이용자이거나 이메일 어드레스가 발견되지 않으면, 이용자는 스크린(614)을 통해 이메일 어드레스를 입력하도록 요구된다. 만일 기존 이용자 이메일 주소가 발견되면, 새로운 장치용 가입자 테이블 엔트리는 데이터베이스 질의(616)를 통해 갱신될 것이다. 대안적으로, 새로운 이용자 이름, PIN 및 이메일 주소가 입력되면, 새로운 가입자 기록이 데이터 베이스 질의(6118)를 통해 가입자 테이블에 입력된다.If the user's wireless device is new to the system, the result of the database query 601 will be null, and the logic will proceed to the initial entry screen 606 where the user enters the user name and PIN. If an invalid PIN is entered, screen 610 will be displayed on the device requesting the entry of a new PIN. If it is a successful PIN entry, a confirmation screen 612 will appear to the user. Referring to Figure 40, once a user name and PIN are entered, database query 613 is organized into a subscriber table to retrieve the user's email address. If the user is a new user or no email address is found, the user is required to enter an email address via screen 614. If an existing user email address is found, the new device subscriber table entry will be updated via a database query 616. Alternatively, if a new username, PIN and email address are entered, a new subscriber record is entered into the subscriber table via database query 6118.
이용자가 확인되면, 데이터베이스 질의(622)를 통해 이용자가 이전에 어떤 구성된 네트워크 사이트를 갖는지 여부에 대한 판정이 내려진다. 만일 이용자가 이전에 구성된 네트워크 사이트를 가지면, 로직은 CGI 스크립트(3)를 실행하기 위해 진행하고, 세부사항은 도41에 도시되어 있다; 그렇지 않으면 로직은 도43에 도시된 네비게이션 위치(5)로 점프한다.Once the user is identified, a database query 622 determines whether the user previously had any configured network sites. If the user has a network site previously configured, logic proceeds to execute the CGI script 3, details are shown in FIG. 41; Otherwise the logic jumps to the navigation position 5 shown in FIG.
도41을 참조하여, CGI 스크립트(3)의 실행에 응답하여, 이용자에게 이용자로 하여금 이용자가 인쇄하기 원하는 문서에 대응하는 소스 데이터가 위치되는 네트워크 사이트를 선택할 수 있도록 하는 사이트 선택 스크린(624)이 나타난다. 원한다면, 이용자는 로직을 네비게이션 위치(5)로 점프시킬 새로운 네트워크 사이트 셋업을 선택할 수 있다.Referring to Fig. 41, in response to the execution of the CGI script 3, there is a site selection screen 624 that allows the user to select a network site where the source data corresponding to the document the user wants to print is located. appear. If desired, the user can select a new network site setup to jump logic to navigation position 5.
네트워크 사이트가 선택되면, 도42에 도시된 네트워크 네비게이션 스크린(626, 628 및 630)을 발생시키는 CGI 스크립트(4)의 실행이 시작된다. 이러한 스크린은 이용자로 하여금 인쇄하기 원하는 문서 파일을 브라우징하는 네트워크사이트를 네비게이팅할 수 있게 한다. 이용자가 문서를 선택하면, CGI 스크립트(3)는 네트워크 사이트 및 문서 파일명이 디스플레이되는 스크린(632)을 발생시키기 위해 이용된다. 또한 이러한 스크린은 이용자로 하여금 인쇄, 팩스 및 이메일 옵션(634)을 통해 이용자가 원하는 타입의 출력을 선택할 수 있게 한다.When the network site is selected, execution of the CGI script 4 which starts the network navigation screens 626, 628 and 630 shown in Fig. 42 is started. This screen allows the user to navigate a network site that browses the document file they want to print. When the user selects a document, the CGI script 3 is used to generate a screen 632 in which the network site and document file name are displayed. This screen also allows the user to select the type of output desired by the print, fax and email options 634.
도3을 참조하여, 네비게이션 위치(5)로 점프하면, 이용자에게 셋업 스크린(636)이 나타난다. 이러한 스크린은 이용자로 하여금 네트워크 사이트, 프린터를 포함하는 각종 기호를 셋업할 수 있게 하고, 팩스 및 이메일 정보를 정의할 수 있게 한다. 네트워크 사이트 옵션의 선택은 이용자를, 웹 페이지(500)를 통해 새로운 네트워크 사이트를 추가하는 것을 참조한 전술한 방식에 유사하게 URL 또는 IP 어드레스, 이용자 이름 및 패스워드를 제공함으로써 이용자가 새로운 네트워크 사이트를 추가하는 파일서버 추가 스크린(638)로 진행시킨다. 전술한 바와 같이, 이용자 이름 및 패스워드는 추가될 특정한 네트워크에 관련된다. 네트워크 사이트 추가를 선택하면, 이용자에게 확인 스크린(640)이 나타나게 된다. 도44에 도시된 바와 같이, 이용자가 OK 옵션을 통해 네트워크 사이트 추가를 선택했다면, CGI 스크립트(9)는 스크린(644)이 서버가 추가되었다는 것을 확인하는 이용자의 장치상에 렌더링되는 데이터베이스 질의(642)를 통해 네트워크 사이트 테이블로 입력된 데이터를 저장하기 위해 실행된다.Referring to Figure 3, jumping to the navigation position 5, a setup screen 636 appears to the user. This screen allows the user to set up various symbols, including network sites, printers, and define fax and email information. The selection of the network site option allows the user to add a new network site by providing a URL or IP address, user name and password, similar to the above-mentioned manner in reference to adding a new network site via web page 500. Proceed to Add File Server screen 638. As mentioned above, the username and password are related to the particular network to be added. If you choose to add a network site, a confirmation screen 640 appears to the user. As shown in Figure 44, if the user has selected to add a network site via the OK option, the CGI script 9 causes the database query 642 to be rendered on the user's device, where the screen 644 confirms that the server has been added. ) To execute the data entered into the network site table.
스크린(636)으로부터의 팩스 옵션에 응답하여, 이용자에게 이름 및 팩스번호를 특정함으로써 새로운 팩스를 입력할 수 있는 팩스 추가 스크린(646)이 나타나게 된다. 이용자가 팩스 데이터 추가를 선택하면 확인 스크린(647)이 나타나게 되고,OK 옵션을 선택하면, 도46에 도시된 바와 같이, CGI 스크립트(11)가 데이터베이스 질의(648)를 통해 팩스/이메일 테이블(FET)에 새로운 기록을 삽입하기 위해 실행된다. 그 다음에 이용자에게 팩스 데이터가 추가되었다는 것을 확인하는 스크린(650)이 나타나게 된다.In response to the fax option from screen 636, a fax add screen 646 appears, allowing the user to enter a new fax by specifying a name and fax number. When the user selects Add Fax Data, a confirmation screen 647 appears, and when the OK option is selected, as shown in Figure 46, the CGI script 11 sends a fax / email table (FET) via a database query 648. To insert a new record. The user then sees a screen 650 confirming that the fax data has been added.
유사하게, 스크린(636)으로부터 이메일 옵션의 선택에 대응하여, 이용자에게 이메일 추가 스크린(652)이 나타날 것이고, 여기서, 이용자는 이메일 이름(즉, 에일리어스) 및 이메일 어드레스를 입력할 것이고 그 다음에 새로운 이메일 정보 추가를 선택함으로써, 확인 스크린(653)이 나타나게 된다. OK 옵션을 통해 수용되면, 도47에 도시된 바와 같이, CGI 스크립트(12)가 데이터베이스 질의(654)를 통해 FET 테이블에 새로운 기록을 삽입하기 위해 실행된다. 그 다음에 이용자에게 이메일 어드레스가 추가되었다는 스크린(656)이 나타나게 된다.Similarly, in response to the selection of email options from screen 636, the user will see an Add Email screen 652, where the user will enter an email name (ie, an alias) and an email address and then By selecting Add new email information to, a confirmation screen 653 appears. If accepted through the OK option, as shown in Figure 47, CGI script 12 is executed to insert a new write into the FET table via database query 654. The user then sees a screen 656 that the email address has been added.
도45에 도시된 바와 같이, 스크린(636)으로부터의 프린터 옵션의 선택에 응답하여, 이용자가, 웹 페이지(540 및 546)를 참조한 전술한 방식에 유사하게, 탐색 기준을 통해 추가할 프린터를 선택할 수 있는 프린터 추가 스크린(658)이 나타난다. 이용자가 되돌아온 선택 리스트를 통해 프린터 추가를 선택하면, 이용자에게 확인 스크린(660)이 나타날 것이고, OK 옵션을 선택하면, 데이터베이스 질의(662)를 통해 프린터 테이블에 새로운 기록이 추가될 것이다. 이용자에게 새로운 프린터가 추가되었다는 것을 확인하는 스크린(664)이 나타나게 된다.As shown in Figure 45, in response to the selection of the printer option from the screen 636, the user selects the printer to add via the search criteria, similar to the foregoing manner with reference to the web pages 540 and 546. A printer add screen 658 is displayed. If the user chooses to add a printer via the returned selection list, a confirmation screen 660 will appear to the user, and if the OK option is selected, a new record will be added to the printer table via a database query 662. A screen 664 is displayed to the user confirming that a new printer has been added.
도41의 스크린(632)으로 되돌아가서, 문서 파일이 선택되면, 이용자는 선택된 프린터상에 문서 인쇄, (머신의 팩스번호를 통해) 선택된 팩스 머신으로 문서를팩스로 보내기 또는 인쇄, 팩스 및 이메일 옵션을 통해 선택된 이메일 수신자에게 문서를 이메일로 보내기를 할 수 있다. 인쇄 옵션의 활성화는 도48에 도시된 프린터 선택 스크린(666)을 발생시키는 CGI 스크립트(13)를 런칭한다. 이러한 스크린은 이용자로 하여금 이용자의 즐겨찾는 프린터 리스트에 이전에 추가된 프린터들 중에서 프린터를 선택할 수 있게 한다. 리스트에서 프린터를 선택하면, 이용자에게 인쇄될 문서 및 선택된 프린터를 식별하는 구성화면(668)이 나타나게 된다. 도52에 도시된 바와 같이, OK 옵션의 활성화는 CGI 스크립트(16)가 실행되게 한다. 인쇄 요구에 따라서, 대응하는 인쇄 작업은 데이터베이스 질의(670)를 통해 인쇄 큐 테이블에 배치되고, 작업 큐 확인 스크린(672)이 이용자에게 나타난다. 인쇄 작업이 큐되면, 메시지 센터, RDC 및 인쇄 서비스의 적합한 조합에 의해 처리되어 전술한 방식으로 문서가 선택된 프린터상에 인쇄되도록 한다.Returning to screen 632 of Figure 41, once the document file is selected, the user can print the document on the selected printer, fax or print the document to the selected fax machine (via the fax number of the machine), fax and e-mail options. Allows you to email a document to selected email recipients. Activation of the print option launches the CGI script 13 which causes the printer selection screen 666 shown in FIG. This screen allows the user to select a printer from printers previously added to the user's favorite printer list. When a printer is selected from the list, a configuration screen 668 identifying a document to be printed and the selected printer is displayed. As shown in Figure 52, activation of the OK option causes the CGI script 16 to be executed. According to the print request, the corresponding print job is placed in the print queue table via a database query 670, and a job queue confirmation screen 672 appears to the user. Once the print job is queued, it is processed by a suitable combination of message center, RDC, and print service to cause the document to be printed on the selected printer in the manner described above.
스크린(632)으로부터의 팩스 옵션의 활성화는 도49에 도시된 팩스 선택 스크린(674)을 발생시키는 CGI 스크립트(14)를 런칭한다. 이러한 스크린은 이용자로 하여금 이전에 이용자의 즐겨찾는 팩스 리스트에 추가된 팩스들 중에서 팩스를 선택할 수 있게 하거나 팩스 리스트에 이미 셋업되지 않은 팩스 머신에 대한 번호를 입력할 수 있게 한다. 만일 이용자가 후자에 대한 번호 입력을 선택하면, 이용자에게 번호가 입력될 수 있는 스크린(676)이 나타난다. 스크린(676)으로부터의 OK 옵션의 선택 또는 스크린(674)으로부터의 미리 구성된 팩스의 선택은 확인 스크린(676)이 렌더링되게 한다. OK 옵션이 선택되면, CGI 스크립트(16)가 실행될 것이고, 여기서, 이러한 경우에 팩스 작업 정보는 데이터베이스 질의(678)를 통해 팩스/이메일큐로 삽입될 것이다. 팩스 작업이 큐되면, 어떻게 인쇄 서비스가 인쇄를 위해 문서를 처리하는지에 다소 유사한 방식으로 대응하는 문서를 발생시키고 팩스번호에 기초하여 정해진 팩스 머신에 팩스 데이터를 송신하는 적합한 메시지 센터에 의해 처리된다.Activation of the fax option from the screen 632 launches the CGI script 14 which generates the fax selection screen 674 shown in FIG. This screen allows the user to select a fax from among the faxes previously added to the user's favorite fax list or to enter a number for a fax machine that is not already set up in the fax list. If the user chooses to enter a number for the latter, a screen 676 is displayed to which the number can be entered. Selection of the OK option from screen 676 or selection of a preconfigured fax from screen 674 causes confirmation screen 676 to be rendered. If the OK option is selected, the CGI script 16 will be executed, in which case the fax job information will be inserted into the fax / email queue via a database query 678. Once the fax job is queued, it is processed by a suitable message center that generates a corresponding document in a somewhat similar manner to how the print service processes the document for printing and sends the fax data to a designated fax machine based on the fax number.
이메일 요구의 처리는 팩스 요구에 유사한 방식으로 진행한다. 도50에 도시된 바와 같이, 이러한 프로세스는 CGI 스크립트(15)를 런칭하는 스크린(632)으로부터의 이메일 옵션의 활성화에 의해 초기화된다. 이러한 CGI 스크립트는 우선, 이용자로 하여금 (대응하는 이메일 엘리어스를 통해) 즐겨찾는 이메일 수신자의 이전에 구성된 리스트 중에서 문서를 송신하기 위해 이메일 어드레스를 선택할 수 있게 하거나, 미리 구성되지 않은 자를 위해 새로운 이메일 어드레스를 입력할 수 있게 하는 이메일 선택 스크린(682)을 발생시킨다. 만일 이용자가 수동으로 리스트되지 않은 이메일 어드레스 입력하기를 선택하면, 이용자에게 어드레스가 입력될 수 있는 스크린(684)이 나타난다. 스크린(684)으로부터의 OK 옵션의 선택 또는 스크린(682)으로부터의 미리 구성된 이메일 수신자의 선택은 확인 스크린(686)이 렌더링되게 한다. OK 옵션을 선택하면, CGI 스크립트(16)가 실행될 것이고, 여기서 이러한 경우에 이메일 작업 정보는 데이터베이스 질의(678)를 통해 팩스/이메일 큐 테이블로 삽입될 것이다. 이메일 작업이 큐되면, 선택된 문서 파일이 부착된 이메일 메시지를 발생시키고, 이메일 메시지를 수신자의 이메일 어드레스를 통해 또는 스크린(684)을 통해 입력된 이메일 어드레스를 통해 선택된 수신자에게 송신할 적합한 메시지 센터에 의해 처리된다. 선택적으로, 문서의 컨텐츠를 이메일의 본문에포함될 수 있다. 이메일 발생의 추가적인 세부사항은, 2002년 3월 21일에 출원된 공동 계류 중인 미국 특허 출원 제xxxx호, "이메일을 통해 인쇄하는 방법 및 시스템"에 개시되어 있고, 전체내용을 참조하여 그 명세서 및 도면을 포함한다.The processing of e-mail requests proceeds in a similar way to fax requests. As shown in Figure 50, this process is initiated by activation of an email option from screen 632 that launches CGI script 15. As shown in FIG. These CGI scripts first allow the user to select an email address to send a document from a previously configured list of favorite email recipients (via the corresponding email alias), or to create a new email address for a non-preconfigured person. Generates an email selection screen 682 that allows input. If the user chooses to enter an email address that is not manually listed, a screen 684 is displayed to which the address can be entered. Selection of an OK option from screen 684 or selection of a preconfigured email recipient from screen 682 causes confirmation screen 686 to be rendered. If the OK option is selected, the CGI script 16 will be executed, in which case the email job information will be inserted into the fax / email queue table via a database query 678. Once the email job is queued, it generates an email message with the selected document file attached, and is sent by a suitable message center to send the email message to the selected recipient via the recipient's email address or via the email address entered via screen 684. Is processed. Optionally, the content of the document can be included in the body of the email. Further details of email generation are disclosed in co-pending US patent application Ser. No. xxxx, “Methods and Systems for Printing Through Email,” filed March 21, 2002, the disclosure of which is incorporated herein by reference in its entirety and in its entirety. Contains drawings.
도39의 스크린(606)으로 되돌아가서, 이메일을 통해 송신된 그의 PIN을 갖고자는 이용자 요구에 응답하여, 시스템은 메시지 센터 데이터베이스(228)로부터 이용자에 대한 PIN을 검색할 것이고, 자동적으로 이름에 의해 이용자를 식별하고 PIN을 포함하는 이메일을 발생시키고, 이용자의 이전에 등록된 이메일 어드레스를 통해 이메일을 이용자에게 돌려 보낸다. 도52에 도시된 바와 같이, 그 다음에 CGI 스크립트(17)가 실행된다. 만일 이메일 메시지가 성공적으로 송신되면, 스크린(688)은 그러한 것을 식별하며 렌더링된다. 만일 이메일 어드레스를 송신하는데 장애가 발생하면, 대응하는 장애 메시지가 스크린(690)상에 렌더링된다.Returning to screen 606 of Figure 39, in response to a user request to have his PIN sent via email, the system will retrieve the PIN for the user from the message center database 228 and automatically by name. Identify the user, generate an email containing the PIN, and send the email back to the user through the user's previously registered email address. As shown in Fig. 52, the CGI script 17 is then executed. If the e-mail message was sent successfully, screen 688 is rendered identifying that. If a failure occurs in sending an email address, the corresponding failure message is rendered on screen 690.
문서 미리보기 네비게이션Document preview navigation
작업 요구의 선택사양인 출력방법의 하나는 문서 미리보기이다. 통상적으로 제한된 디스플레이 특성(예: 작은 스크린, 비표준 가로세로비 및 낮은 픽셀 해상도)으로 인하여, 출력장치상에 렌더링되면 어떻게 문서가 나타나는가의 미리보기의 발생은 하찮은 것이 아니고 오히려 시도적인 태스크이다. 또한, 미리보기 요구의 요구된 응답시간은 인쇄 요구 보다 훨씬 더 긴박하다. 출력 관리 시스템은 2개의 방향으로 이러한 시도에 접근한다. 이미지 파일에 있어서, 견본을 생성시키고 가로세로비를 잃지 않고 수직 및 수평 차원에 알맞도록 최종 출력 사이즈를 조정한다.이미지 파일이 아닌 파일에 있어서, 페이지 관계를 잃어버리지 않고 파일을 평범한 텍스트 포맷으로 변환하고, 각 페이지를 카드의 시리즈로 부수고, 그 다음에 이들 카드를 수직 및 수평 차원에서 허용 페이지 네비게이션을 참조하여 함께 링크한다.One optional output method for job requests is document preview. Typically, due to limited display characteristics (e.g., small screens, non-standard aspect ratios, and low pixel resolutions), the generation of previews of how documents appear when rendered on the output device is not trivial, but rather an attempted task. In addition, the required response time of the preview request is much more urgent than the print request. The output management system approaches this approach in two directions. For image files, create swatches and resize the final output to fit vertical and horizontal dimensions without losing aspect ratios.For non-image files, convert files to plain text format without losing page relationships. Each page is then broken into a series of cards, which are then linked together with reference to the allowed page navigation in the vertical and horizontal dimensions.
도700의 다이어그램은 변환이 어떻게 일어나는지를 도시한다. 프로세스는 본래 이미지(702)로 시작한다. 제1행에서, 견본(704)은 팜 장치(Palm device)(706)의 디스플레이 특성에 기초하여 생산되고, 반면에 제2행에서 보다 작은 견본(708)이 셀룰러 폰(710)에 의해 제공되는 스크린의 보다 낮은 해상으로의 대응에 기초하여 생산된다. 셀룰러 폰에 대한 견본은 가로세로비를 보존하기 위해 전체 스크린을 커버하지 않는다는 것을 주목하자.The diagram of FIG. 700 shows how the conversion occurs. The process begins with the original image 702. In the first row, the specimen 704 is produced based on the display characteristics of the Palm device 706, while in the second row the smaller specimen 708 is provided by the cellular phone 710. Produced based on the response of the screen to lower resolution. Note that the swatch for a cellular phone does not cover the entire screen to preserve aspect ratio.
도54의 다이어그램(712)은 변환 프로세스를 보여주는 텍스트 문서를 도시한다. 전술한 바와 같이, 출력문서의 텍스트 페이지는 텍스트 흐름에 기초하여 WAP 카드로 부수어 진다. 예를 들어, 페이지의 최초 256 바이트는 제1 카드("1"로 라벨됨)로 변환되고, 다음 256 바이트는 제2 카드로 변환된다. 이미지 링크(714) 및 미리보기 이미지(716)에 의해 설명된 바와 같이, 본래 텍스트 페이지의 이미지는 본래 콘텍스트에서 그 배치를 표시하기 위해 카드에서 이미지 링크와 각각 교체된다. 이용자는 전술한 이미지 보기 변환 메커니즘에 기초하여 발생되는 이미지를 미리보기 위해 이들 링크를 이용할 수 있다. 이러한 레이아웃(layout)은 페이지 네비게이션을 상이한 페이지를 가로질러서 뿐만 아니라 위아래 방향으로도 허용한다.Diagram 712 of FIG. 54 shows a text document showing the conversion process. As described above, the text page of the output document is broken into the WAP card based on the text flow. For example, the first 256 bytes of the page are converted to the first card (labeled "1") and the next 256 bytes are converted to the second card. As described by image link 714 and preview image 716, the image of the original text page is replaced with the image link in the card, respectively, to indicate its placement in the original context. The user can use these links to preview the image generated based on the image view conversion mechanism described above. This layout allows page navigation not only across different pages, but also in up and down directions.
페이지 관계가 유지되기 때문에, 또한 이용자들은 이들 페이지를 미리보기 위해 렌덤 액세스(random access)할 수 있다.Because page relationships are maintained, users can also random access to preview these pages.
순차적인 텍스트 문서에 부가하여, 도55의 다이어그램(718)에 의해 도시된 바와 같이, 시스템은 또한 스프레드시트-타입(spreadsheet-type) 문서에 대한 미리보기를 제공할 수 있다. 보통의 문서 미리보기와 스프레드시트-타입 문서 미리보기와의 차이는 스프레드시트는 그 물리적 레이아웃의 보존을 요구한다는 것이다. 그러므로, 스프레드시트의 미리보기는 수직 및 수평 차원 모두에서 내장될(built) 필요가 있다. 도55의 예는 2개의 9-카드 미리보기 페이지로 변환되는 2-페이지 스프레드시트 문서에 대응하고, 각각은 또 다른 페이지로 네비게이트 하기 위해 2개 또는 그 이상의 링크(적용 가능한 경우)를 포함한다. 예를 들어, 제1 카드(720)는 카드(724)에 "오른편" 링크(722) 및 카드(728)에 "아래" 링크(726)를 포함한다. 또한 링크는 페이지들 사이에서 네비게이트 하도록 제공된다. 페이지 관계가 유지되기 때문에, 또한 이용자들은 이들 페이지를 미리보기 위해 렌덤 액세스할 수 있다.In addition to sequential text documents, as shown by diagram 718 of FIG. 55, the system may also provide a preview of a spreadsheet-type document. The difference between normal document previews and spreadsheet-type document previews is that spreadsheets require preservation of their physical layout. Therefore, the preview of the spreadsheet needs to be built in both vertical and horizontal dimensions. The example of Figure 55 corresponds to a two-page spreadsheet document that is converted into two 9-card preview pages, each containing two or more links (if applicable) to navigate to another page. . For example, the first card 720 includes a "right" link 722 on the card 724 and a "bottom" link 726 on the card 728. Links are also provided to navigate between pages. Since page relationships are maintained, users can also randomly access these pages to preview them.
인스턴트 메시징 통합Instant messaging integration
급속한 인구성장 및 인스턴트 메시징 테크놀로지의 광범위한 수용은 인스턴트 메시징을 이용자들을 접속시키는 거대한 시스템으로 만들었다. 인스턴트 메시징은 이용자들로 하여금 텍스트 메시지, 채팅을 교환하고 이미지 송신 또는 단순한 방식, 근접한 실시간 방식으로 친구 및 가족들로 음성 인사가 가능하게 한다. 그러나, 이것은 근본적으로 텍스트 교환을 위해 설계되었기 때문에, 통상적으로 정보의 인식 또는 리소스 공유를 가지지 못한다. 그러므로 출력 관리 시스템은 결핍을 증가시키기 위해 들어갈 수 있다.Rapid population growth and the widespread acceptance of instant messaging technology have made instant messaging a huge system for connecting users. Instant messaging allows users to exchange text messages, chats and voice greetings to friends and family in an image-transfer or simple, near-real-time manner. However, since it is essentially designed for text exchange, it typically does not have the knowledge or resource sharing of information. Therefore, the output management system can go in to increase the deficiency.
그 시스템은 인스턴트 메시징 이용자로 하여금 그의 리소스를 그의 친구들과 공유할 수 있게 한다. 장치가 네트워크상에 공유되는 한, 리소스는 그 타입, 연결성(내부 또는 외부, 네트워크 또는 로컬) 또는 실행 플랫폼에 제한되지 않는다. 리소스는 파일, 플로피 또는 콤팩트디스크 드라이버 및 네트워크 파일 시스템(즉, 공유되는 파일 디렉토리 등)을 포함하지만 이에 제한되지는 않는다. 이용자가 그의 공유된 리소스의 이용가능성을 알리면, 이들 리소스는 그의 친구들에게 가시적(visible)이 될 것이다. 그 다음에 그의 친구들은 버튼을 누름으로써 다른 사람의 로컬 디렉토리로부터 파일을 다운로드할 수 있고, 다른 사람의 플로피 또는 콤팩트 디스크로 드래그-앤-드롭(drag-and-drop)할 수 있고, 드라이버 링크를 클릭함으로써 다른 사람의 로컬 드라이브 디렉토리를 볼 수 있으며, 인스턴트 메시징 동작 도메인에서의 한번의 출력 관리 시스템 배치를 제외한 모든 중요한 순환 시스템 관리 노력 없이, 이용자가 가능한 원격 데스크탑 클라이언트(Remote Desktop Client)로써 인스턴트 메시징을 실행하도록 할 수 있다.The system allows an instant messaging user to share his resources with his friends. As long as the device is shared on the network, resources are not limited to their type, connectivity (internal or external, network or local) or execution platform. Resources include, but are not limited to, files, floppy or compact disc drivers, and network file systems (ie, shared file directories, etc.). If the user announces the availability of his shared resources, these resources will be visible to his friends. Then his friends can download files from another person's local directory by pressing a button, drag-and-drop to another person's floppy or compact disc, and link the driver. Click to view someone's local drive directory, and instant messaging as a Remote Desktop Client enabled by the user, without any significant circulatory system administration effort, except for a single output management system deployment in the instant messaging operational domain. Can be run.
인스턴트 메시징 도메인에서 리소스 공유를 완성하기 위해, 인스턴트 메시징 클라이언트는 원격 테스크탑 클라이언트 특성을 구비할 필요가 있다. 원격 데스크탑 클라이언트는 메시지 센터로 등록함으로써 클라이언트 머신이 그것의 공유를 알리도록 돕는다. 등록이 완료되면, 클라이언트 머신은 리소스-공유 요구를 송수신할 수 있다. 성능을 개선하기 위해, 바람직하게, 인스턴트 메시징 오퍼레이터는 루트 메시지 센터에 의지하는 대신에 그 고유 메시지 센터가 클라이언트를 관리하도록 설치할 수 있다.To complete resource sharing in an instant messaging domain, the instant messaging client needs to have remote desktop client characteristics. The remote desktop client helps the client machine advertise its share by registering with the message center. Once registration is complete, the client machine can send and receive resource-sharing requests. To improve performance, the instant messaging operator can preferably be installed such that its own message center manages the client instead of relying on the root message center.
예시적인 인스턴트 메신저 통합 구현을 도시하는 다이어그램(729)이 도56에 도시되어 있다. 이러한 예에서, 각각 통합된 인쇄 서버를 포함하는 2개의 공중 메시지 센터(MC1 및 MC2)는 인스턴트 메시지(IM) 오퍼레이팅 네트워크(730) 내에 위치된다. 이들 메시지 센터는 존(Zone)(0) 루트 메시지 센터(MC0)로 등록된다. 각 인스턴트 메시징 클라이언트(732) 이용자는 동일한 호스트상에 원격 클라이언트를 실행하고 IM 오퍼레이터 네트워크(730)에서 메시지 센터 중의 하나에 등록된다. 이러한 구성에 있어서, 인스턴트 메시징 클라이언트 이용자의 모두는 루트 메시지 센터에 상의함 없이 서로의 공유된 리소스에 액세스할 수 있다. 원한다면, IM 네트워크 오퍼레이터는 성능을 고려하여 시스템 크기를 증가시키기 위해 추가 메시지 센터를 설치할 수 있다.A diagram 729 illustrating an example instant messenger integration implementation is shown in FIG. 56. In this example, two public message centers MC1 and MC2, each containing an integrated print server, are located within instant message (IM) operating network 730. These message centers are registered as Zone (0) root message centers MC0. Each instant messaging client 732 user runs a remote client on the same host and registers with one of the message centers in the IM operator network 730. In this configuration, all of the instant messaging client users can access each other's shared resources without consulting the root message center. If desired, IM network operators can install additional message centers to increase system size, taking performance into account.
도시된 시스템은 마이크로 소프트 윈도우의 장치공유용 새로운 아키텍처에 대해 유리하다. 예를 들어 프린터 드라이버를 이용하여, 요구되면, 프린터를 공유하는 윈도우의 장치 드라이버가 원격 데스크탑 클라이언트를 통해 다른 호스트로 운송될 수 있다. 다운로드 및 프린터 드라이버의 설치 후, 이용자들은 공유된 네트워크 장치로서 다른 사람의 프린터에 액세스할 수 있다. 이것은 윈도우에서 공유하는 장치의 개념을 보다 크게 확장한다. 이러한 구성에서의 네트워크는 LAN을 대신하여 전체 인스턴트 메시징 네트워크로 확장된다. 그 다음에 인스턴트 메시징 이용자는, 원격 데스크탑 클라이언트가 모든 일을 하는 동안에 마치 동일한 LAN에 접속된 것 처럼 문서를 서로의 공유된 장치에 출력할 수 있다.The illustrated system is advantageous for a new architecture for device sharing of Microsoft Windows. Using a printer driver, for example, the device driver of a Windows sharing printer can be shipped to another host via a remote desktop client, if required. After downloading and installing the printer driver, users can access someone else's printer as a shared network device. This further extends the concept of devices shared by Windows. The network in this configuration extends to the entire instant messaging network instead of the LAN. Instant messaging users can then output documents to each other's shared devices as if they were connected to the same LAN while the remote desktop client was doing everything.
멀티미디어 메시징 서비스 통합Multimedia Messaging Service Integration
최근까지도, 통상적으로 낮은 네트워크 대역폭 및 무선 장치상의 프로세싱 파워의 부족으로 인하여, 무선 컴퓨팅은 여전히 텍스트-지향 어플리케이션에 제한되어 있었다. 최근, 어떤 캐리어(carrier)는 WAP 어플리케이션과 같은 보다 광범위한 서비스 슈트에 대한 지원을 소개하였다. 초기 응답은 압도적이지 않지만, 대부분의 무선 캐리어는 이용자에게 보다 강제적인 경험을 제공할 서비스를 제공하는 것이 불가피하다고 믿는다. 이것은 보다 높은 네트워크 대역폭, 보다 유용한 하드웨어 및 보다 강한 장치를 요구한다. 캐리어, 인프라 제공자 및 장치 제조자들로부터의 모든 노력들이 "3G"(제3 세대) 무선 통신에 이르게 하였다.Until recently, wireless computing was still limited to text-oriented applications, typically due to low network bandwidth and lack of processing power on wireless devices. Recently, some carriers have introduced support for a wider range of service suites, such as WAP applications. The initial response is not overwhelming, but most wireless carriers believe it is inevitable to provide services that will provide a more compelling experience for the user. This requires higher network bandwidth, more useful hardware and stronger devices. All efforts from carriers, infrastructure providers and device manufacturers have led to "3G" (third generation) wireless communications.
많은 모바일 장치 제조자들은, 비디오 클립, MP3, 슬라이드 쇼(slide show), 비디오 컨퍼런싱 등을 포함하는 3G 서비스 개발에 착수하였다. 이것은 범용 카테고리 멀티미디어 무선 해결책으로 귀결한다. 본 시스템의 아키텍처는 멀티미디어 출력 관리용 공용 플랫폼을 제공함으로써 이러한 멀티미디어 및 모바일 컴퓨팅 환경을 제공한다. 업계 선두주자의 하나인 노키아에 의해 개발된 멀티미디어 통합 시스템, 소위 멀티미디어 메시징 서비스(MMS)에 대응하는 다이어그램(734)이 도57에 도시되어 있다.Many mobile device manufacturers have begun developing 3G services, including video clips, MP3s, slide shows, video conferencing, and the like. This results in a universal category multimedia wireless solution. The architecture of the system provides such a multimedia and mobile computing environment by providing a common platform for multimedia output management. A diagram 734 corresponding to a multimedia integrated system developed by Nokia, one of the industry leaders, the so-called Multimedia Messaging Service (MMS), is shown in FIG.
이러한 예에서, 내향 게이트웨이(736) 및 외향 게이트웨이(738)가 출력 관리 네트워크(740) 내에서 MMSC와 메시지 센터(MC1)를 모두 접속하도록 배치된다. 내향 게이트웨이는 MMS 유용 장치(742)로부터의 모바일 발신 MMS 요구를 수신하고, 이러한 요구들을 추가적 프로세싱을 위해 메시지 센터(MC1)로 변환하고 전달한다. 전형적인 요구는 무비 클립(movie clip)을 공유되는 파일서버로 세이브, 픽처 이미지를 컬러 레이저 프린터에 인쇄 또는 MP3 오디오 메시지를 전술한 출력 관리 시스템-파워 인스턴트 메시징 클라이언트(output management system-powered instant messaging client)로 릴레이가 될 수 있다. 외향 MMS 게이트웨이는 출력 관리 클라이언트로부터 MMS로 예정된 일반적 요구를 수신한다. 이것은 MMS 포맷에 대응하는 요구를 변환하고 그것을 전달을 위해 멀티미디어 메시지 서비스 센터(MMSC)로 송신한다. 시스템은 MMS-가용 메시지 센터와 클라이언트 중에서 효율적인 리소스 공유를 지원하기 위해 MMS 동작 네트워크(746)에서 선택사양인 루트 메시지 센터를 사용할 수 있다. 일실시예에서, 내향 게이트웨이 및 외향 게이트웨이는 하드웨어 비용을 최소화하기 위해 공동 위치될 수 있다(즉, 동일한 장비에 호스트될 수 있다). 이러한 아키텍처는 출력 관리 시스템을 콘딧(conduit)으로서 이용하여 MMS 서비스를 비-MMS 클라이언트(non-MMS client)에 영향을 줄 수 있다. 멀티미디어 메시징 서비스 통합의 일반적 개념은 내향 게이트웨이의 내향 인터페이스 및 외향 게이트웨이의 송출 인터페이스의 수정을 이용하는 어떤 타입의 멀티미디어 서비스에 적용할 수 있다. 나머지 출력 관리 시스템은 그대로 둘 것이다.In this example, inbound gateway 736 and outbound gateway 738 are arranged to connect both MMSC and message center MC1 within output management network 740. The inbound gateway receives the mobile originating MMS request from the MMS utility device 742 and converts and forwards these requests to the message center MC1 for further processing. Typical needs include saving movie clips to a shared file server, printing picture images to a color laser printer, or outputting MP3 audio messages as described above. Output management system-powered instant messaging client Can be a relay. The outbound MMS gateway receives the general request destined for the MMS from the output management client. This translates the request corresponding to the MMS format and sends it to the Multimedia Message Service Center (MMSC) for delivery. The system may use an optional root message center in the MMS operational network 746 to support efficient resource sharing among MMS-enabled message centers and clients. In one embodiment, inbound and outbound gateways may be co-located (ie, hosted on the same equipment) to minimize hardware costs. Such an architecture may use an output management system as a conduit to affect MMS services to non-MMS clients. The general concept of multimedia messaging service integration can be applied to any type of multimedia service using modifications of the inbound interface of the inbound gateway and the outgoing interface of the outbound gateway. The rest of the output management system will be left intact.
문서 액세스/보안 CGI/VPI 프록시를 통한 방화벽 뒤로의 인쇄Document Access / Security Printing Behind Firewall Through CGI / VPI Proxy
전술한 바와 같이, 시스템은 이용자로 하여금 방화벽 뒤의 사설 네트워크상에 위치되는, 문서 및 출력 장치를 포함하는 리소스에 액세스할 수 있도록 한다. 초기 아키텍처에서, 이러한 기능은 방화벽을 통해 지속적인 통신 채널 메시지 채널로의 메시지 채널(Message Channel-to-Message Channel persistent communication channel)을 이용함으로써 촉진될 수 있다. 도58을 참조하여, 이것이 완수될 수 있는 또 다른 방식은 CGI/VPN 프록시의 이용자를 통한 방식이다. 도58에 도시된 바와 같이, 시스템의 각종 이용자 인터페이스(750)는, DMZ(754) 내에 배치된 CGI VPN 프록시(752)를 통해 공중 네트워크(즉, 인터넷(60))로부터 공중 이용자 통신이 라우팅 되게 구성될 수 있다. 그 다음에 CGI VPN 프록시는 방화벽(758)을 통해 보안 패스-스루(secure pass-through)를 제공하는 VPN 스위치(756)를 통한 통신을 라우팅하고, 이것은 DMZ(754)와 사설 인터넷(760) 사이에 보안 보호를 제공한다. 그 다음에 VPN 스위치는 인터넷(760) 내에 위치되는 메시지 센터(MC1)로 내향 통신을 라우팅한다. 또한 인쇄 서비스(PS1), 파일 저장(FS1) 및 출력 장치(D1)를 포함하는 3개의 사설 리소스가 인터넷에 위치된다.As mentioned above, the system allows users to access resources, including documents and output devices, located on a private network behind a firewall. In an early architecture, this functionality can be facilitated by using a Message Channel-to-Message Channel persistent communication channel through the firewall. Referring to Figure 58, another way this can be accomplished is through a user of the CGI / VPN proxy. As shown in Figure 58, the various user interfaces 750 of the system allow public user communications to be routed from the public network (i.e., the Internet 60) via a CGI VPN proxy 752 disposed within the DMZ 754. Can be configured. The CGI VPN proxy then routes the communication through the VPN switch 756, which provides secure pass-through through the firewall 758, which is between the DMZ 754 and the private Internet 760. Provide security protection to The VPN switch then routes inward communication to the message center MC1 located within the Internet 760. In addition, three private resources, including print service PS1, file storage FS1, and output device D1, are located on the Internet.
도시된 아키텍처에 따라, 공중 이용자들은 공개적으로 액세스 가능한 이용자 인터페이스(즉, Web 및 WAP UI's)와 사설 네트워크 내에 위치된 메시지 센터와의 사이의 VPN 링크를 통해 사설 인터페이스에 액세스가 허가된다. 예를 들어, 이용자 인증 및 선택사양인 암호화 기술을 통해, Web 및 WAP UI's의 보안이 확보되면, 단지 인증된 이용자만이 VPN 링크에 액세스할 수 있고, 그것에 의해, 방화벽(756)의 보안 특징을 유지할 수 있다. 또한, 보안 CGI/VPN 프록시가 이용되면, 프록시를 통한 사설 네트워크로의 해킹이 실질적으로 말소된다.According to the architecture shown, public users are granted access to a private interface via a VPN link between a publicly accessible user interface (ie, Web and WAP UI's) and a message center located within a private network. For example, if the security of the Web and WAP UI's is secured through user authentication and optional encryption techniques, only authorized users can access the VPN link, thereby securing the security features of the firewall 756. I can keep it. Also, if a secure CGI / VPN proxy is used, hacking into the private network via the proxy is substantially erased.
이러한 구현은 공개적으로 액세스 가능한 메시지 센터를 제공하는 요구조건이 없도록 시스템의 기능을 확장한다. 예를 들어, 기업은 외판원이 본사에서 멀리떨어져 있는 경우에 외판원에게 하나 또는 그 이상의 사설 기업 네트워크에 저장된 인쇄 문서를 검색할 수 있도록 원할 수 있다. 사설 MC와 CGI/VPN 프록시와의 조합은 이들 외판원으로 하여금 사설 기업 네트워크 내의 파일 스토어에 액세스할 수 있게 하고 사설 MC에 등록된 어떤 출력 장치로의 이러한 파일 스토어 상에 저장된 문서를 인쇄할 수 있도록 한다.This implementation extends the functionality of the system so that there is no requirement to provide a publicly accessible message center. For example, a company may want to have a salesman search for printed documents stored in one or more private corporate networks when the salesman is far from the head office. The combination of private MCs and CGI / VPN proxies allows these salespeople to access file stores within the private corporate network and to print documents stored on these file stores to any output device registered with the private MC. .
VPN 스위치를 통한 사설 MC에 액세스하는 또 다른 방식은 J2ME(Java 2 Micro Edition) + VPN-인에이블 장치(762)의 이용을 통한 방식이다. 이러한 장치들은 현재개발 중이고 가까운 미래에 보다 쉽게 이용가능하게 될 것으로 상상된다. 도58에 도시된 바와 같이, 본질적으로, J2ME + VPN-인에이블 장치는, 그 장치로 하여금 VPN 프록시의 이용자를 요구함 없이 VPN 스위치와 직접 통신할 수 있도록 하는 VPN 클라이언트를 내장한다.Another way of accessing a private MC through a VPN switch is through the use of Java 2 Micro Edition (J2ME) + VPN-enabled device 762. These devices are currently under development and are expected to be more readily available in the near future. As shown in Figure 58, in essence, the J2ME + VPN-enabled device has a built-in VPN client that allows the device to communicate directly with the VPN switch without requiring the user of the VPN proxy.
MC 없이 사설 네트워크상의 리소스로 인쇄Print to resources on private network without MC
도59a 및 59b에 도시된 바와 같이, 메시지 센터를 포함하지 않는 사설 네트워크상에 위치되는 출력 장치를 인쇄할 수 있도록 시스템을 구성할 수 있다. 예를 들어, 도59a에 도시된 구성(764)에서, 메시지 센터(MC1)는 DMZ(754)에 배치되고, 반면에 예정된 프린터(D1)는 방화벽(758)에 의해 DMZ로부터 분리된 사설 인터넷(760)에 위치된다. 이러한 구성에서 지속적인 접속(764)이 사설 인터넷에 위치된 원격 데스크탑 클라이언트(RDC1)와 메시지 센터(MC1)와의 사이에서 셋업된다.59A and 59B, the system can be configured to print an output device located on a private network that does not include a message center. For example, in the configuration 764 shown in FIG. 59A, the message center MC1 is placed in the DMZ 754, while the scheduled printer D1 is separated from the DMZ by a firewall 758 (the private Internet (< / RTI > 760. In this configuration a persistent connection 764 is set up between the remote desktop client RDC1 and the message center MC1 located in the private Internet.
셋업 동작 동안, 원격 데스크탑 클라이언트(RDC1)는 메시지 센터를 이용하여지속적인 접속(766)에 대응하는 통신 링크를 개방하기 위해 메시지 센터(MC1)와의 통신을 초기화할 것이다. 그 다음에 RDC는 연결된 출력 장치(이 경우에 출력장치(D1))를 식별하는 메시지 센터(MC1)에 데이터를 송신할 것이다. 이러한 정보는 메시지 센터(MC1)의 RPRM 데이터베이스(242)에 저장될 것이다.During the setup operation, the remote desktop client RDC1 will initiate communication with the message center MC1 to open the communication link corresponding to the persistent connection 766 using the message center. The RDC will then send data to the message center MC1 identifying the connected output device (in this case output device D1). This information will be stored in the RPRM database 242 of the message center MC1.
그 다음의 구성(764)에 대응하는 예시적인 인쇄 동작은 다음과 같이 진행될 수 있다. 우선, 셀룰러 폰(768)과 같은 발신 장치의 이용자는 UI(750)를 통해 메시지 센터(MC1)에 접속한다. UI를 통해, 이용자는, 예를 들어, DMZ(754)에 위치되는 파일 스토어(FS1)상에 저장되는 인쇄될 원격 소스 문서를 선택할 수 있게 된다. 선택적으로, 다른 MC의 구성 및 다른 파일 스토어의 위치에 의존하여, 문서가 또 다른 DMZ 또는 사설 네트워크(도시하지 않음)로부터 검색될 수 있다. 물론, 또한 이용자는 인쇄할 발신 장치상에 저장되는 로컬 소스 문서를 선택할 수 있다.An exemplary printing operation corresponding to the next configuration 764 may proceed as follows. First, a user of the originating device, such as cellular phone 768, connects to message center MC1 via UI 750. The UI allows the user to select a remote source document to be printed that is stored, for example, on a file store FS1 located in the DMZ 754. Optionally, depending on the configuration of other MCs and the location of other file stores, documents may be retrieved from another DMZ or private network (not shown). Of course, the user can also select a local source document that is stored on the sending device for printing.
문서를 선택한 후, 그 다음에 이용자는 출력 장치를 선택할 것이다; 본 경우에 출력 장치(D1)가 선택된다. 인쇄 요구가 확인되면, 소스 문서는 인쇄 서비스(PS)에 의해 그 파일 스토어로부터 검색될 것이고, 만일 문서가 로컬 소스이면 인쇄 서비스로 송신될 것이다. 또한 MC는 선택된 출력 장치의 장치 특성을 식별하는 PS에 정보를 송신할 것이다. 그 다음에 인쇄 서비스는 소스 문서 및 선택된 출력 장치에 대응하는 출력 이미지 데이터를 발생시키고, 출력 이미지 데이터를 (예를 들어, 파일 스토어(FS1) 내에 위치된) 리포지토리에 출력 이미지 파일로서 저장한다. 그 다음에 PS는 작업이 완료된 메시지 센터(MC1)를 출력 이미지 파일로의 참조를 따라서 통지한다. 그 다음에 메시지 센터는 출력 이미지 파일을 검색하고지속적인 접속(766)을 통해 원격 데스크탑 클라이언트(RDC1)로 나아가게 한다. 이미지 데이터 파일이 수신되면, 그 다음에 RDC는 렌더링을 위해 그것을 출력 장치(D1)에 제공한다. 완료되면, RDC는 지속적인 접속(766)을 통해 메시지 센터를 통보할 것이고, 그 후에 MC는 이용자에게 인쇄 작업이 완료되었다는 것을 통지하기 위해 UI(750)을 갱신한다.After selecting a document, the user will then select an output device; In this case, the output device D1 is selected. If the print request is confirmed, the source document will be retrieved from the file store by the print service PS and sent to the print service if the document is a local source. The MC will also send information to the PS identifying the device characteristics of the selected output device. The print service then generates output image data corresponding to the source document and the selected output device, and stores the output image data as an output image file in a repository (e.g., located in file store FS1). The PS then notifies the completed message center MC1 along with a reference to the output image file. The message center then retrieves the output image file and directs it to the remote desktop client RDC1 via the persistent connection 766. When the image data file is received, the RDC then provides it to the output device D1 for rendering. Upon completion, the RDC will notify the message center via persistent connection 766, after which the MC updates the UI 750 to notify the user that the print job is complete.
동일한 종료 결과를 생산하는 구성(770)이 도59b에 도시되어 있다. 이 경우에, VPN 스위치(756) 및 VCN 클라이언트(772 및 774)의 추가를 제외하고, 모든 구성요소는 도59a에 도시된 것과 동일하다. 이 경우에, 메시지 센터((MC1)와 원격 데스크탑 클라이언트(RDC1)는 VPN 채널(766)을 통해 통신한다. VPN 채널의 이용은 사설 인터넷(760)을 위한 보안의 엑스트라 레벨을 제공한다.A configuration 770 that produces the same termination result is shown in FIG. 59B. In this case, except for the addition of the VPN switch 756 and the VCN clients 772 and 774, all the components are the same as those shown in Fig. 59A. In this case, the message center MC1 and the remote desktop client RDC1 communicate over the VPN channel 766. The use of the VPN channel provides an extra level of security for the private Internet 760.
전술한 설명 및 첨부한 도면에서, MS 윈도우 운영체제 구성요소에 의해 제공되는 소프트웨어 동작을 구현하는 본 발명의 실시예가 개시되었다. 본 발명의 이론 및 사상은 유닉스 기반 운영체제 및 리눅스 기반 운영체제와 같은 다른 운영체제가 이용되는 구현에 적용될 수 있기 때문에, 이것은 제한적으로 간주되어서는 안된다. 예를 들어, 각종 유닉스 및 리눅스 운영체제는 그래픽 이용자 인터페이스(graphical user interface), 어플리케이션 API's 및 전술한 MS 윈도우 인쇄 지원 구성요소(예: 윈도우 GDI, 인쇄 스풀러, 프린터 드라이버 등)에 유사한 동작을 제공하는 OS 커널에 의해 지원되는 인쇄 특성을 제공한다.In the foregoing description and the annexed drawings, embodiments of the invention have been disclosed that implement software operations provided by MS Windows operating system components. Since the theory and spirit of the present invention can be applied to implementations in which other operating systems such as Unix-based operating systems and Linux-based operating systems are used, this should not be considered as limiting. For example, various Unix and Linux operating systems provide operating systems that provide similar behavior to graphical user interfaces, application API's, and the aforementioned MS Windows printing support components (e.g., Windows GDI, print spooler, printer driver, etc.). Provides printing features supported by the kernel.
예시적인 서버 컴퓨터 시스템Example Server Computer System
도60을 참조하여, 통상적으로 종래의 컴퓨터 서버(800)가 도시되었는데, 이것은 본 발명의 실행과 접속한 이용에 적합하고, 분리된 컴퓨터가 웹 서버 동작을 수행하기 위해 이용되는 DPS 서버 컴퓨터 및 웹 서버 컴퓨터에 대해 이용될 수 있다. 이들 목적에 적합할 수 있는 컴퓨터 시스템의 예들은 마이크로소프트 윈도우, 유닉스 기반 및 리눅스 기반 운영체제를 동작시키는 컴퓨터 서버를 포함한다.Referring now to Figure 60, a conventional computer server 800 is shown, which is suitable for use in connection with the practice of the present invention, wherein the DPS server computer and web are used for separate computers to perform web server operations. It can be used for server computers. Examples of computer systems that may be suitable for these purposes include computer servers running Microsoft Windows, Unix-based, and Linux-based operating systems.
이 기술분야에서 통상의 지식을 가진 자에게 주지된 바와 같이, 컴퓨터 서버(800)는 하나 또는 그 이상의 프로세서(804) 및 메모리(예: DIMMs 또는 SIMMs)를 포함하는 적합한 집적회로로 채워진 마더보드(motherboard)(도시하지 않음)에 설치되는 새시(802)를 포함한다. 모니터(808)는, 소프트웨어 프로그램 및 컴퓨터 서버에 의해 실행되는 프로그램 모듈에 의해 발생되는 그래픽 및 텍스트를 디스플레이하기 위해 포함된다. 마우스(810)(또는 다른 위치지정도구)는 새시(802)의 후면상의 직렬 포트로(또는 버스 포트 또는 USB 포트)에 접속될 수 있고, 마우스(810)로부터의 신호는 디스플레이상의 커서를 제어하고 컴퓨터에 실행 중인 소프트웨어 프로그램 및 모듈에 의해 모니터(808)상에 디스플레이되는 텍스트, 메뉴 옵션 및 그래픽 구성요소를 선택하기 위해 모기판에 송신된다. 또한, 키보드(812)는 컴퓨터에 실행 중인 소프트웨어의 실행에 작용하는 텍스트 및 명령의 이용자 엔트리를 위해 모기판에 결합된다. 또한 컴퓨터 서버(800)는 네트워크 인터페이스 카드(NIC)(814) 또는 네트워크(816)를 통해 서버로 하여금 데이터 송수신을 할 수 있게 하기 위해 모기판에 내장되는 등가회로를 포함한다.As is well known to those of ordinary skill in the art, computer server 800 may include a motherboard filled with suitable integrated circuits including one or more processors 804 and memory (e.g., DIMMs or SIMMs). a chassis 802 installed on a motherboard (not shown). The monitor 808 is included for displaying graphics and text generated by software modules and program modules executed by the computer server. The mouse 810 (or other locator) can be connected to a serial port (or bus port or USB port) on the back of the chassis 802, and signals from the mouse 810 control the cursor on the display and Sent to the mother board to select text, menu options, and graphical components displayed on the monitor 808 by software programs and modules running on the computer. The keyboard 812 is also coupled to the mother substrate for user entries of text and instructions that act on the execution of software running on the computer. The computer server 800 also includes an equivalent circuit embedded in the mother substrate to enable the server to transmit and receive data via the network interface card (NIC) 814 or the network 816.
본 발명에 대응하는 파일 시스템 저장은, 새시(802) 내에 내부적으로 저장되는 복수의 하드디스크(818)를 통해 및/또는 SCSI 카드(822) 또는 모기판에 내장되는 등가 SCSI 회로를 통해 액세스될 수 있는 외부 디스크 어레이(820)에 저장되는 복수의 하드디스크를 통해 구현될 수 있다. 선택적으로, 디스크 어레이(820)는 적합한 섬유 채널 인터페이스 카드(도시하지 않음) 또는 내장 회로를 이용하는 섬유 채널 링크를 이용하여 액세스될 수 있다.File system storage corresponding to the present invention may be accessed through a plurality of hard disks 818 stored internally in chassis 802 and / or through equivalent SCSI circuitry embedded in SCSI card 822 or mother substrate. It may be implemented through a plurality of hard disks stored in the external disk array 820. Optionally, disk array 820 may be accessed using a suitable fiber channel interface card (not shown) or fiber channel links using embedded circuitry.
통상적으로 컴퓨터 서버(800)는, 콤팩트 디스크-판독 전용 메모리(CD-ROM disk)가 삽입될 수 있어서 디스크 상에서 실행가능한 파일 및 데이터가 메모리(806)로 및/또는 하드디스크(818)상의 저장으로 이송하기 위해 판독될 수 있는 CD-ROM 드라이버(824)를 포함할 수 있다. 유사하게. 플로피 디스크 드라이버(826)가 이러한 목적들을 위해 제공될 수 있다. 광학 기록 매체 또는 DVD 드라이버와 같은 다른 대량 저장 장치 또한 포함될 수 있다. 프로세서(804)로 하여금 전술한 본 발명의 동작을 구현하도록 하는 소프트웨어 프로그램, 구성요소 및 모듈을 포함하는 기계 명령은 전형적으로 플로피 디스크(828) 또는 CD-ROM(830)(또는 다른 메모리 매체)상에 분배되고 프로세서(804)에 의한 실행을 위해 메모리(806)로 로딩될 때까지 하나 또는 그 이상의 하드디스크(818)상에 저장된다. 선택적으로, 기계 명령은 캐리어 웨이브 파일로서 네트워크(816)를 통해 로딩될 수 있다. 전술한 바와 같이, 본 발명의 실시예는 (컴퓨터의 CPU와 같은) 어떤 형태의 프로세싱 코어상에 실행 또는 구현되는 또는 기계-판독 가능한 매체 상에 또는 내에서 실현되는 소프트웨어 프로그램을 지원하기 위해 또는 소프트웨어 프로그램으로서 이용될 수 있다. 기계-판독 가능한 매체는 정보를 기계(예: 컴퓨터)에 의해 판독 가능한 형태로 저장 또는 전송하는 어떤 메커니즘을 포함한다. 예를 들어, 기계-판독 가능한 매체는 판독 전용 메모리(ROM), 비순차적 액세스 메모리, 자기 디스크 저장 매체, 광학 저장 매체 및 플래시 메모리 장치 등을 포함할 수 있다. 또한, 기계-판독 가능한 매체는 전기신호, 광신호, 음향신호 또는 다른 형태의 전파된 신호(예: 반송파, 적외선 신호, 디지털 신호 등)와 같은 전파된 신호를 포함할 수 있다.Computer server 800 typically includes a compact disk-only dedicated memory (CD-ROM disk) that can be inserted so that executable files and data on the disk can be stored in memory 806 and / or stored on hard disk 818. It can include a CD-ROM driver 824 that can be read for transfer. Similarly. Floppy disk driver 826 may be provided for these purposes. Other mass storage devices such as optical recording media or DVD drivers may also be included. Machine instructions, including software programs, components, and modules that cause the processor 804 to implement the operations of the present invention described above, typically reside on a floppy disk 828 or CD-ROM 830 (or other memory medium). And stored on one or more hard disks 818 until loaded into memory 806 for execution by processor 804. Optionally, the machine instructions may be loaded over the network 816 as a carrier wave file. As noted above, embodiments of the present invention may be implemented to support or implement software programs that are executed or implemented on some form of processing core (such as a computer's CPU) or implemented on or within a machine-readable medium. It can be used as a program. Machine-readable media includes any mechanism for storing or transmitting information in a form readable by a machine (eg, a computer). For example, machine-readable media may include read only memory (ROM), non-sequential access memory, magnetic disk storage media, optical storage media, flash memory devices, and the like. Machine-readable media can also include propagated signals, such as electrical signals, optical signals, acoustic signals, or other forms of propagated signals (eg, carrier waves, infrared signals, digital signals, etc.).
그러므로, 본 발명의 실시예는 (컴퓨터의 CPU와 같은) 어떤 형태의 프로세싱 코어상에 실행 또는 구현되는 또는 기계-판독 가능한 매체 상에 또는 내에서 실현되는 소프트웨어 프로그램을 지원하기 위해 또는 소프트웨어 프로그램으로서 이용될 수 있다. 기계-판독 가능한 매체는 정보를 기계(예: 컴퓨터)에 의해 판독 가능한 형태로 저장 또는 전송하는 어떤 메커니즘을 포함한다. 예를 들어, 기계-판독 가능한 매체는 판독 전용 메모리(ROM), 비순차적 액세스 메모리, 자기 디스크 저장 매체, 광학 저장 매체 및 플래시 메모리 장치 등을 포함할 수 있다. 또한, 기계-판독 가능한 매체는 전기신호, 광신호, 음향신호 또는 다른 형태의 전파된 신호(예: 반송파, 적외선 신호, 디지털 신호 등)과 같은 전파된 신호를 포함할 수 있다.Therefore, embodiments of the present invention may be used to support or as a software program that is executed or implemented on any form of processing core (such as a computer's CPU) or realized on or within a machine-readable medium. Can be. Machine-readable media includes any mechanism for storing or transmitting information in a form readable by a machine (eg, a computer). For example, machine-readable media may include read only memory (ROM), non-sequential access memory, magnetic disk storage media, optical storage media, flash memory devices, and the like. Machine-readable media can also include propagated signals, such as electrical signals, optical signals, acoustic signals or other forms of propagated signals (eg, carrier waves, infrared signals, digital signals, etc.).
본 발명의 도시된 실시예의 전술한 설명은, 발명의 요약에서 설명된 것을 포함하고, 개시된 정확한 형태에 철저하거나 한정되도록 의도되지 않는다. 본 발명의 특정 실시예 및 예들은 도시의 목적으로 설명되고, 관련 기술분야의 당업자가 인지함에 따라, 본 발명의 범위 내에서 각종 등가의 변형이 가능하다.The foregoing description of the illustrated embodiments of the invention includes what is described in the Summary of the Invention and is not intended to be exhaustive or limited to the precise form disclosed. Specific embodiments and examples of the present invention are described for purposes of illustration and, as will be appreciated by those skilled in the art, various equivalent modifications are possible within the scope of the present invention.
이러한 변형은 전술한 상세한 설명에 비추어서 본 발명에 이루어질 수 있다. 첨부된 청구항에서 이용되는 용어는 명세서 및 청구항에 개시되는 특정 실시예로 본 발명을 한정하기 위한 것으로 이해되어서는 안된다. 오히려, 본 발명의 범위는 청구항에 의해 전체적으로 이해되어야 한다.Such modifications may be made to the invention in light of the above detailed description. The terminology used in the appended claims should not be construed as limiting the invention to the specific embodiments disclosed in the specification and the claims. Rather, the scope of the invention should be fully understood by the claims.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US31441201P | 2001-08-22 | 2001-08-22 | |
| US60/314,412 | 2001-08-22 | ||
| US35175402P | 2002-01-23 | 2002-01-23 | |
| US60/351,754 | 2002-01-23 | ||
| US10/098,832 | 2002-03-13 | ||
| US10/098,832US20020138564A1 (en) | 2001-03-21 | 2002-03-13 | Universal printing and document imaging system and method |
| US10/104,528US6993562B2 (en) | 2002-03-21 | 2002-03-21 | Method and system to print via email |
| US10/104,528 | 2002-03-21 | ||
| US10/225,581 | 2002-08-21 | ||
| US10/225,581US20030078965A1 (en) | 2001-08-22 | 2002-08-21 | Output management system and method for enabling printing via wireless devices |
| PCT/US2002/026783WO2003019403A2 (en) | 2001-08-22 | 2002-08-22 | Output management system and method for enabling printing via wireless devices |
| Publication Number | Publication Date |
|---|---|
| KR20040029438Atrue KR20040029438A (en) | 2004-04-06 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR10-2004-7002681AWithdrawnKR20040029438A (en) | 2001-08-22 | 2002-08-22 | Output management system and method for enabling printing via wireless devices |
| Country | Link |
|---|---|
| EP (1) | EP1428134A2 (en) |
| JP (1) | JP2005501341A (en) |
| KR (1) | KR20040029438A (en) |
| CN (1) | CN1575460A (en) |
| WO (1) | WO2003019403A2 (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100736931B1 (en)* | 2005-10-24 | 2007-07-10 | 삼성전자주식회사 | Data transmission / reception system using mobile terminal and method thereof, MFP in data transmission / reception system using mobile terminal |
| KR100965820B1 (en)* | 2007-01-19 | 2010-06-24 | 삼성전자주식회사 | Device for data output and data output method |
| WO2012088326A1 (en)* | 2010-12-22 | 2012-06-28 | Usablenet Inc. | Methods for emailing labels as portable data files and devices thereof |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8843617B2 (en) | 2000-03-01 | 2014-09-23 | Printeron Inc. | Multi-stage polling mechanism and system for the transmission and processing control of network resource data |
| CA2301996A1 (en) | 2000-03-13 | 2001-09-13 | Spicer Corporation | Wireless attachment enabling |
| US20040184060A1 (en)* | 2003-03-18 | 2004-09-23 | Xerox Corporation | Automated electronic mail document printing |
| US7403300B2 (en) | 2003-03-21 | 2008-07-22 | Toshiba Corporation | Wireless wide area network printing |
| JP5187007B2 (en)* | 2008-06-05 | 2013-04-24 | 株式会社リコー | Image forming apparatus, display control method, and display control program |
| US9043503B2 (en)* | 2008-10-28 | 2015-05-26 | At&T Intellectual Property I, L.P. | System and method of interacting with data at a wireless communication device |
| CN102200950B (en)* | 2010-03-24 | 2014-01-22 | 原相科技股份有限公司 | Universal serial bus controller and execution method thereof |
| US8970873B2 (en) | 2010-09-17 | 2015-03-03 | Printeron Inc. | System and method for managing printer resources on an internal network |
| US8570566B2 (en)* | 2010-09-17 | 2013-10-29 | Printeron Inc. | System and method that provides user interface on mobile network terminal for releasing print jobs based on location information |
| US9760329B2 (en) | 2010-11-30 | 2017-09-12 | Printeron Inc. | System for internet enabled printing |
| JP5929399B2 (en) | 2012-03-26 | 2016-06-08 | 富士ゼロックス株式会社 | Information providing apparatus, information providing system, and program |
| JP6188362B2 (en)* | 2013-03-15 | 2017-08-30 | キヤノン株式会社 | Information processing apparatus, information processing terminal and control method thereof |
| EP2979165A4 (en)* | 2013-03-28 | 2016-11-02 | Hewlett Packard Development Co | Release codes with print job identifiers and directives |
| US9356882B2 (en) | 2014-02-04 | 2016-05-31 | Printeron Inc. | Streamlined system for the transmission of network resource data |
| JP6331905B2 (en)* | 2014-09-11 | 2018-05-30 | コニカミノルタ株式会社 | Image processing system, application server and program |
| JP5839102B2 (en)* | 2014-12-25 | 2016-01-06 | セイコーエプソン株式会社 | Printing system and printer |
| JP6455195B2 (en)* | 2015-02-04 | 2019-01-23 | 富士ゼロックス株式会社 | Operation screen providing system, relay device, and program |
| JP2016167795A (en)* | 2015-03-02 | 2016-09-15 | 株式会社リコー | COMMUNICATION DEVICE, COMMUNICATION METHOD, SYSTEM, AND PROGRAM |
| JP6311666B2 (en)* | 2015-07-01 | 2018-04-18 | コニカミノルタ株式会社 | Communication system, management server, and program |
| JP6601621B2 (en)* | 2016-02-05 | 2019-11-06 | コニカミノルタ株式会社 | Image forming apparatus, print control method, and print control program |
| CN107391051B (en)* | 2016-05-16 | 2019-10-25 | 腾讯科技(深圳)有限公司 | A kind of file printing method, device and system |
| CN106557288B (en)* | 2016-11-15 | 2020-04-14 | 华为技术有限公司 | A method and device for obtaining print data |
| CN106792361A (en)* | 2017-02-22 | 2017-05-31 | 安徽井利电子有限公司 | A kind of telefax loudspeaker control system |
| CN110519376B (en)* | 2019-08-29 | 2022-04-12 | 珠海奔图电子有限公司 | Image processing method and image forming apparatus applied to cloud server |
| JP7540250B2 (en)* | 2019-09-26 | 2024-08-27 | ブラザー工業株式会社 | Server and computer program for the server |
| JP7422464B2 (en)* | 2020-01-31 | 2024-01-26 | キヤノン株式会社 | Information processing device, control method and program for information processing device |
| WO2021241503A1 (en)* | 2020-05-26 | 2021-12-02 | 日本電気株式会社 | Printing system, printing control device, printing method, and non-transitory computer-readable medium having program stored thereon |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1997026735A1 (en)* | 1996-01-16 | 1997-07-24 | Raptor Systems, Inc. | Key management for network communication |
| US6088796A (en)* | 1998-08-06 | 2000-07-11 | Cianfrocca; Francis | Secure middleware and server control system for querying through a network firewall |
| JP2004500632A (en)* | 1999-12-13 | 2004-01-08 | アクシス アクチボラグ | Method and system for displaying information |
| US6255800B1 (en)* | 2000-01-03 | 2001-07-03 | Texas Instruments Incorporated | Bluetooth enabled mobile device charging cradle and system |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100736931B1 (en)* | 2005-10-24 | 2007-07-10 | 삼성전자주식회사 | Data transmission / reception system using mobile terminal and method thereof, MFP in data transmission / reception system using mobile terminal |
| KR100965820B1 (en)* | 2007-01-19 | 2010-06-24 | 삼성전자주식회사 | Device for data output and data output method |
| WO2012088326A1 (en)* | 2010-12-22 | 2012-06-28 | Usablenet Inc. | Methods for emailing labels as portable data files and devices thereof |
| Publication number | Publication date |
|---|---|
| EP1428134A2 (en) | 2004-06-16 |
| WO2003019403A3 (en) | 2003-11-20 |
| CN1575460A (en) | 2005-02-02 |
| JP2005501341A (en) | 2005-01-13 |
| WO2003019403A2 (en) | 2003-03-06 |
| Publication | Publication Date | Title |
|---|---|---|
| US8019829B2 (en) | Output management system and method for enabling printing via wireless devices | |
| US8065357B2 (en) | Output management system and method for enabling access to private network resources | |
| KR20040029438A (en) | Output management system and method for enabling printing via wireless devices | |
| KR20040039304A (en) | Output management system and method for enabling access to private network resources | |
| US7024497B1 (en) | Methods for accessing remotely located devices | |
| US6925481B2 (en) | Technique for enabling remote data access and manipulation from a pervasive device | |
| US8010598B2 (en) | Relay server and client terminal | |
| US9280547B2 (en) | System and method for displaying and operating multi-layered item list in browser with supporting of concurrent users | |
| US7277912B2 (en) | Browser environment using multiple browser instantiations | |
| US8069246B2 (en) | Relay server and relay communication system including a relay group information registration unit, a shared resource information registration unit, and a control unit | |
| CN1703031B (en) | Mobile gateway for securely extending enterprise services to mobile devices | |
| US20020138564A1 (en) | Universal printing and document imaging system and method | |
| JP2005251194A (en) | Method, program and system for managing access, and method and program for transmitting e-mail message | |
| JP2004213656A (en) | Online printing with driverless web print server | |
| JP2001320405A (en) | Information access method and network system | |
| WO2002046971A1 (en) | Remote service agent for sending commands and receiving data over e-mail network | |
| US20120198033A1 (en) | Display, View and Operate Multi-Layers Item list in Web-Browser With Supporting of Concurrent Multi-Users | |
| JP2005323093A (en) | Remote operation control program using Web server | |
| JP2002328869A (en) | Method and device for remotely applying information through firewall by mobile equipment | |
| JP2000293458A (en) | Data distribution device, data receiving device, and control method thereof | |
| JP3743314B2 (en) | PC terminal connection operation system and method by mobile terminal | |
| AU2002336388A1 (en) | Output management system and method for enabling printing via wireless devices | |
| AU2002327508A1 (en) | Output management system and method for enabling access to private network resources | |
| JP2006178526A (en) | Resource providing system, mediation agent, resource providing method, and computer program | |
| JP2007148605A (en) | Workflow information management device and its method and program |
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application | Patent event date:20040223 Patent event code:PA01051R01D Comment text:International Patent Application | |
| PG1501 | Laying open of application | ||
| PC1203 | Withdrawal of no request for examination | ||
| WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |