[go: up one dir, main page]

KR20130002940A - 풀 프린트 시스템, 인쇄 잡 관리방법, 프린트 서버 및 그 제어 방법, 및 컴퓨터 판독 가능한 매체 - Google Patents

풀 프린트 시스템, 인쇄 잡 관리방법, 프린트 서버 및 그 제어 방법, 및 컴퓨터 판독 가능한 매체 Download PDF

Info

Publication number
KR20130002940A
KR20130002940A KR1020120067790A KR20120067790A KR20130002940A KR 20130002940 A KR20130002940 A KR 20130002940A KR 1020120067790 A KR1020120067790 A KR 1020120067790A KR 20120067790 A KR20120067790 A KR 20120067790A KR 20130002940 A KR20130002940 A KR 20130002940A
Authority
KR
South Korea
Prior art keywords
printer
print
notification
print job
client terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
KR1020120067790A
Other languages
English (en)
Other versions
KR101637894B1 (ko
Inventor
신이치 우치카와
Original Assignee
캐논 가부시끼가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 캐논 가부시끼가이샤 filed Critical 캐논 가부시끼가이샤
Publication of KR20130002940A publication Critical patent/KR20130002940A/ko
Application granted granted Critical
Publication of KR101637894B1 publication Critical patent/KR101637894B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1207Improving or facilitating administration, e.g. print management resulting in the user being informed about print result after a job submission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1289Remote printer device, e.g. being remote from client or server in server-client-printer device configuration, e.g. the server does not see the printer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

내부 네트워크에 배치된 클라이언트 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀 프린트 시스템으로서, 상기 프린트 서버는, 상기 클라이언트로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트가 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트에 송신하는 생성수단; 상기 프린터로부터 상기 통지를 수신하는 수신수단; 및 상기 수신수단에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시수단을 구비한다.

Description

풀 프린트 시스템, 인쇄 잡 관리방법, 프린트 서버 및 그 제어 방법, 및 컴퓨터 판독 가능한 매체{PULL-PRINT SYSTEM, PRINT JOB MANAGEMENT METHOD, PRINT SERVER, CONTROL METHOD THEREFOR AND COMPUTER-READABLE MEDIUM}
본 발명은, 풀(pull) 프린트 시스템, 인쇄 잡 관리방법, 프린트 서버 및 그 제어 방법, 및 컴퓨터 판독 가능한 매체에 관한 것이다. 특히, 본 발명은, 풀 프린트 시스템에 있어서, 정보를 관리하는 관점에서 프린트 서버와 프린터를 서로 동기화하는 기술에 관한 것이다.
최근, 클라우드 서비스로서 인터넷 상에 서비스를 공개함에 의해 비지니스 전개가 진척되고 있다. 프린트 서버는, 인터넷상의 프린트 서비스로서 기능을 제공하는 것이 요구되고 있다. 이러한 상황하에서, 프린트 서버로부터 프린터가 인터넷을 거쳐 인쇄 데이터를 취득하여, 풀 프린트를 행하게 하는 클라우드 풀 프린트 시스템이 요구되고 있다.
인터넷상의 프린트 서버를 이용해서 인쇄 데이터를 풀 프린트 하는 기술로서, 자바 스크립트(JavaScript:등록상표)를 이용한 풀 프린트 방식이 이용 가능하다. 자바 스크립트를 이용한 풀 프린트 방식에서는, 프린트 서버가 인쇄 데이터를 프린트하는 프린터에 대하여 의뢰하고 싶은 코맨드를 송부하는 자바스크립트 프로그램을 생성하여, 웹(Web) 브라우저에 송신한다. 웹브라우저가 자바 스크립트 프로그램을 수신하여 실행하면, 자바스크립트 프로그램에서 지정된 프린터에 풀 프린트의 리퀘스트(request)를 송신함으로써, 프린터에 대하여 인쇄 데이터를 프린트하기를 의뢰한다. 이때, 인쇄 데이터는, URL등에 의해 지정된다. 또한, "Print Service Definition Version 1.O For Web Services on Devices", [online], 2007년 1월 29일, Microsoft, [2011년 6월 22일 검색], 인터넷<URL:http://msdn.microsoft.com/ja-jp/windows/hardware/gg463146>에서는, 지정된 URL로부터 인쇄 데이터를 취득해서 인쇄를 행하는 풀 프린트 기술의 상세 내용을 설명하고 있다.
인트라네트(intranet)내에 프린트 서버와 프린터를 구비하는 프린트 시스템에서, 프린트 서버는, 직접 네트워크를 통해 프린터와 통신을 행하여서 의뢰한 인쇄 잡의 상황 확인과, 프린터에서 일어난 이벤트의 통지처의 등록/삭제 의뢰를 발행할 수 있었다.
그렇지만, 클라우드 서비스와 같이 인터넷 상에 전개하는 프린트 서버와, 프린터와의 사이에 파이어월(firewall)이 배치되어, 프린터 서버는 직접 프린터에 대하여 네트워크를 거쳐 액세스 할 수 없다. 따라서, 자바스크립트를 이용한 풀 프린트 방식에서는, 클라우드 서비스를 응용해서 서비스를 제공하는 프린트 서버가 자바스크립트 프로그램에 인쇄 요구뿐만 아니라, 잡 종료 통지 이벤트를 송신하는 코맨드를 포함시키는 방법을 이용할 수 있다. 프린터는, 잡 종료 통지 이벤트를 송신하는 프린트 서버의 어드레스를 이벤트 통지처로서 메모리 영역에 유지해 두고, 잡의 종료 통지를 프린트 서버에 송신함으로써, 인쇄 잡의 상황을 프린트 서버에 통지한다.
불행하게도, 이벤트를 사용하는 잡 종료 통지만으로는 프린트 서버가 잡의 상황을 파악하기에 불충분한 경우가 있다. 예를 들면, 프린터는, 인쇄 잡이 완료했을 경우만 잡 종료 이벤트를 프린터 서버에 통지한다. 이때, 이벤트가 등록된 경우 잡이 완료되기 전에 프린터가 재기동되면, 휘발 메모리에 유지되고 프린트 서버에 송신되는 이벤트 통지는 클리어된다. 그 결과, 재기동된 프린터는, 프린트 서버에 대하여 상기 잡의 상황 정보를 송신할 수 없다. 이러한 경우, 프린트 서버는, 프린터에 의해 실행되도록 의뢰된 잡의 종료 통지의 송신 실패의 요인을 검사하여 프린터가 잡을 완료하지 않거나 상기 재기동으로 인한 이벤트를 송신할 수 없는지를 판단할 수 없다. 이러한 경우가 발생하면, 프린트 서버는, 이러한 인쇄 잡을 인쇄하는데 의뢰 받은 프린터에 있어서의 상기 의뢰 받은 인쇄 잡의 상황을 파악할 수 없으므로, 해당 인쇄 잡을 계속해서 관리한다.
또 다른 과제도 존재한다. 프린터에 이벤트가 등록된 후, 이벤트 통지가 불필요해지면, 프린터에 대하여 이벤트 삭제 의뢰를 발행하여서 프린터에 등록된 이벤트 정보를 삭제할 필요가 있다. 그러나, 상기한 바와 같이, 클라우드 서비스와 같은 인터넷 상에 전개하는 프린트 서버는, 파이어월이 보호하는 프린터에 대하여, 프린터에 대하여 이벤트의 삭제 의뢰를 직접 발행할 수 없다. 그 때문에, 자바스크립트를 이용한 풀 프린트 방식에서는, 인쇄시의 처리를 응용하여, 이벤트 삭제 의뢰를 인쇄자가 조작한 웹브라우저를 거쳐서 프린터에 통지함으로써, 클라우드상의 프린트 서비스로부터 프린터에 대하여 이벤트 삭제 의뢰를 발행하는 것이 가능하다.
불행하게도, 이 이벤트 삭제 의뢰의 방법에는 과제가 존재한다. 인쇄를 행할 때, 인쇄 요구를 발행하는 클라이언트는, 웹브라우저를 사용해서 그 자체를 프린트 서버에 접속함으로써 인쇄 요구를 송신할 수 있다. 그러나, 인쇄 요구를 송신한 클라이언트가 인쇄 완료 후에, 다시 웹브라우저를 사용해서 프린트 서버에 그 자신을 접속할 수 있을 것이라는 것이 보장되지 않는다.
이것이 나타내는 것은, 클라이언트가 인쇄 요구만 발행시에, 프린트 서버와의 접속을 절단해버리면, 프린트 서버는, 클라이언트를 통한 프린터에의 의뢰를 발행할 수 없어, 프린터에서 등록된 이벤트 통지처를 삭제할 수 없다. 프린터에 등록된 이벤트가 삭제되지 않으면, 프린터는 등록된 이벤트 송신처에 대하여, 이벤트의 송신을 계속하거나, 원하지 않는 이벤트 송신처 정보를 계속해서 유지한다. 그 결과, 프린터에 등록된 이벤트 수가 상한에 도달해버려, 다른 인쇄자가 신규의 이벤트를 프린터에 등록할 수 없다.
프린터가 이벤트를 부적절한 송신처에 계속해서 송신해버리는 과제를 해결하기 위해서, 일본국 공개특허공보 특개2007-257481호에는, 이벤트 송신을 행한 결과, 에러 응답이 회신되었을 경우에는, 인쇄 디바이스가 에러 응답이 회신되는 그 이벤트 송신처를 상기 송신처 리스트로부터 삭제하는 기술이 기재되어 있다. 그러나, 이벤트 송신이 성공한 것을 나타내는 응답이 이벤트 송신처로부터 회신되면, 인쇄 디바이스는 이 이벤트 송신처를 삭제하지 않기 때문에, 그 인쇄 디바이스는 동일 송신처에 대한 이벤트를 여러 번 계속해서 분배한다. 따라서, 이벤트에 대한 에러가 발생하지 않는 경우에는, 인쇄 디바이스는 이벤트 통지처를 계속해서 유지한다.
본 발명의 일 국면은, 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀(pull) 프린트 시스템을 제공하고, 상기 프린트 서버는, 상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성수단; 상기 프린터로부터 상기 통지를 수신하는 수신수단; 및 상기 수신수단에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시수단을 구비하고, 상기 프린터는, 상기 클라이언트 단말이 상기 프로그램을 실행하는 것에 의해 행해진, 상기 인쇄 잡의 처리 및 상기 인쇄 잡의 처리 상황에 관련된 상기 통지의 실행의 지시를 접수하는 접수수단; 및 상기 접수수단에서 접수한 상기 지시에서 지정된 시간마다 상기 프린트 서버의 지정된 송신처에 대하여, 상기 통지를 송신하는 통지수단을 구비하며, 상기 프린트 서버의 상기 감시수단은, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 한다.
본 발명의 다른 국면은, 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀 프린트 시스템에 있어서의 프린트 서버를 제공하고, 상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성수단; 상기 프린터로부터 상기 통지를 수신하는 수신수단; 및 상기 수신수단에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시수단을 구비하고, 상기 감시수단은, 상기 프린터로부터 이전의 통지를 수신한 후 소정시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 한다.
본 발명의 또 다른 국면은, 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀 프린트 시스템에 있어서의 인쇄 잡 관리방법을 제공하고, 상기 프린트 서버에서, 상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성단계; 상기 프린터로부터 상기 통지를 수신하는 수신단계; 및 상기 수신단계에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시단계를 포함하고, 상기 프린터에서, 상기 클라이언트 단말이 상기 프로그램을 실행하는 것에 의해 행해진, 상기 인쇄 잡의 처리 및 상기 인쇄 잡의 처리 상황에 관련된 상기 통지의 실행의 지시를 접수하는 접수단계; 및 상기 접수단계에서 접수한 상기 지시에서 지정된 시간마다 상기 프린트 서버의 지정된 송신처에 대하여, 상기 통지를 송신하는 통지단계를 포함하며, 상기 프린트 서버의 상기 감시단계에 있어서, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 한다.
또한, 본 발명의 또 다른 국면은, 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀 프린트 시스템에 있어서의 프린트 서버의 제어 방법을 제공하고, 상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성단계; 상기 프린터로부터 상기 통지를 수신하는 수신단계; 및 상기 수신단계에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시단계를 포함하고, 상기 감시단계에서, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 한다.
아울러, 본 발명의 또 다른 국면은, 클라이언트 단말로부터 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성수단; 상기 프린터로부터 상기 통지를 수신하는 수신수단; 및 상기 수신수단에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시수단으로서 컴퓨터를 기능시키는 프로그램을 격납하는 컴퓨터 판독 가능한 매체를 제공하고, 상기 감시수단은, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 한다.
프린트 서버가 프린터와 직접 통신을 할 수 없는 환경하에서의 풀 프린트 시스템에 있어서, 프린트 서버와 프린터와의 사이에 있어서의 인쇄 잡 등에 관한 관리 대상의 부정합이나 쓸데없는 처리를 방지할 수 있다.
본 발명의 또 다른 특징들은, 첨부된 도면들을 참조하여 다음의 예시적 실시예들의 설명으로부터 명백해질 것이다.
도 1은 프린트 시스템의 전체 구성을 나타낸 블록도,
도 2는 프린트 시스템의 하드웨어를 나타낸 블록도,
도 3은 프린트 시스템의 서비스 구성을 나타낸 블록도,
도 4a 및 4b는 프린트 시스템의 소프트웨어 구성을 나타낸 블록도,
도 5는 프린트 시스템의 시퀀스도,
도 6은 프린트 서버에 있어서의 인쇄 요구 수신 흐름도,
도 7은 프린터에 있어서의 폴링(polling) 등록 흐름도,
도 8은 프린터에 있어서의 폴링 처리 흐름도,
도 9는 프린트 서버에 있어서의 폴링 수신 흐름도,
도 10은 프린트 서버에 있어서의 폴링 관리 흐름도,
도 11은 프린트 서버에서 관리하는 프린터 리스트의 구성 예를 나타낸 테이블,
도 12는 프린트 서버에서 관리하는 인쇄 잡 리스트의 구성 예를 나타낸 테이블,
도 13은 프린트 서버에서 관리하는 인쇄 이력의 구성 예를 나타낸 테이블,
도 14는 폴링 등록 리퀘스트의 기술 예를 나타낸 도면,
도 15는 폴링 등록 리스폰스의 기술 예를 나타낸 도면,
도 16은 폴링 리퀘스트의 기술 예를 나타낸 도면,
도 17은 폴링 리스폰스의 기술 예를 나타낸 도면,
도 18은 프린터에서 관리하는 폴링 리스트의 구성 예를 나타낸 테이블,
도 19는 프린트 서버에 있어서의 이벤트 수신 처리 흐름도다.
이하, 본 발명을 실시하기 위한 형태에 대해서 첨부도면을 참조하여 설명한다.
[시스템 구성]
도 1은, 본 실시예에 따른 프린트 시스템의 전체 구성을 도시한 블록도다. 도 1을 참조하면, 클라이언트 단말(101), 프린트 서버(100) 및 프린터(102)는, 네트워크(104, 105)를 거쳐서 서로 접속되어 있다. 라우터(103)는 외부 네트워크인 네트워크104와 내부 네트워크인 네트워크105를 접속하는 것이다. 도 1에는 도시하지 않았지만, 네트워크104와 네트워크105와의 사이에는 파이어월이 배치되어, 네트워크간의 통신은 시큐리티 등의 관점에서 제한되어 있다. 본 실시예에서는, 별도로 특정되지 않았으면, 네트워크105에 존재하는 기기에 대하여, 네트워크104에 위치하는 각종 기기가 자발적으로 접속할 수 없다. 네트워크104의 예는, 인터넷이다. 또 네트워크105의 예는 LAN(근거리 통신망)이다.
클라이언트 단말(101)의 적절한 예가 데스크탑 퍼스널 컴퓨터, 노트북 퍼스널 컴퓨터, 모바일 퍼스널 컴퓨터, 및 PDA(퍼스널 데이터 어시스턴트)를 포함하지만, 클라이언트 단말(101)은 프로그램의 실행 환경이 설치된 휴대전화이어도 된다. 본 실시예에서 사용된 웹브라우저(도면에 나타내지 않는다)를 기동하는 프로그램을 실행하는 환경이 클라이언트 단말(101)에 설치되어 있다.
클라이언트 단말(101)로부터 프린트 서버(100)상의 문서를 프린터(102)에서 인쇄를 행하는 경우, 프린트 서버(100)는, 클라이언트 단말(101)의 웹브라우저로부터 송신된 인쇄 리퀘스트를 수신한다.
프린트 서버(100)는, 인쇄 리퀘스트를 실현하기 위한 자바스크립트를 생성하여, 클라이언트 단말(101)의 웹브라우저에 송신한다. 클라이언트 단말(101)의 웹브라우저가 자바스크립트 프로그램을 수신하여 실행하면, 문서 데이터를 인쇄하는 프린터에 풀 프린트 요구를 송신한다. 프린터(102)는, 클라이언트 단말(101)로부터 수신된 풀 프린트 요구에 따라서, 프린트 서버(100)로부터 인쇄하는 문서 데이터를 취득하여, 인쇄를 행한다. 본 발명에 있어서는 클라이언트 단말(101)에 설치된 웹브라우저가 실행하는 스크립트 언어로서 자바스크립트를 이용하지만, 상기 스트립트 언어는 이것에 한정되지 않는다. 웹브라우저가 실행 가능한 스크립트 언어이면, 다른 언어를 이용해도 된다.
[하드웨어 구성]
도 2는, 본 실시예에 따른 프린트 시스템의 클라이언트 단말(101), 프린트 서버(100) 및 프린터(102)의 하드웨어 구성을 나타낸 블록도다. 또한, 본 실시예에 있어서, 프린트 서버(100)와 클라이언트 단말(101)의 구성은 같고, 여기에서는 클라이언트 단말(101)을 예로 들 것이다.
우선, 클라이언트 단말(101)의 구성에 관하여 설명한다. 도 2를 참조하면, CPU(202)는 장치 전체의 제어를 행한다. 또한, CPU(202)는, 하드디스크(HDD)(205)등의 기억 수단에 격납된 애플리케이션 프로그램, OS등을 실행하고, 프로그램의 실행에 필요한 정보, 파일 등을 일시적으로 RAM(203)등에 격납하는 제어를 행한다. ROM(204)은, 기억 수단으로서 기능하고, 기본I/0프로그램 등의 프로그램, 인쇄 처리시에 사용된 프린터 정보와 인쇄 데이터등의 각종 데이터를 기억한다. RAM(203)은, 일시 기억수단으로서 기능하고, 즉, CPU(202)의 주 메모리와 워크 에어리어 등으로서 기능한다. HDD(205)는, 외부 기억 수단의 하나이며, 대용량 메모리로서 기능한다. 또한, HDD(205)는, 웹브라우저 등의 애플리케이션 프로그램, 프린트 서버 프로그램, OS, 관련 프로그램 등을 격납하고 있다.
디스플레이(206)는, 키보드(207)로부터 입력한 코맨드나, 프린터(102)의 스테이터스 등을 표시하기 위한 표시 수단이다. 외부장치I/F(208)는, 프린트 시스템에 USB기기와 주변기기를 접속하는 역할을 한다. 키보드(207)는, 유저가 지시를 입력하기 위한 지시 입력 수단이다. 시스템 버스(201)는, 프린트 시스템의 프린트 서버(100)내에 있어서의 데이터의 흐름을 제어한다. 네트워크 인터페이스 카드(NIC)(219)는, NIC(209)나, 각종 네트워크를 거쳐서 외부장치와의 데이터의 교환을 행한다. 또한, 상기 컴퓨터의 구성은 그 일례이며, 도 2의 구성 예에 한정되는 것은 아니다. 예를 들면, 데이터나 프로그램의 격납처는, 그들의 특징에 따라 ROM, RAM 또는 HDD등으로 변경될 수 있다.
다음에, 프린터(102)의 구성 예에 관하여 설명한다. 콘트롤러(230)는, 프린터(102)의 제어계를 제어한다. CPU(210)는, 장치 전체의 제어를 행하고, 즉, 시스템 버스(218)에 접속된 각종 디바이스에 대한 액세스를 통괄적으로 제어한다. 이 제어는, ROM(212)에 기억된 제어프로그램 등, 혹은 디스크 콘트롤러(DKC)(216)를 거쳐서 접속된 외부 메모리(223)에 기억된 제어프로그램이나 리소스 데이터(자원정보)등에 근거해서 행해진다. RAM(211)은, CPU(210)의 주 메모리, 워크 에어리어 등으로서 기능하고, 증설 포트(도면에 나타내지 않는다)에 접속된 옵션RAM에 의해 메모리 용량을 확장하도록 구성되어 있다. HDD(213)는, 대용량 메모리로서 기능하는 외부 기억 수단이며, 예를 들면 풀 프린트 어플리케이션 프로그램 및 관계 프로그램 을 격납하고 있다.
조작패널(조작부)(221)에는, 풀 프린트의 조작을 행하는 유저 인터페이스와 풀 프린트 전환 버튼이 배치된다. 또한, 조작패널(221)에는, 프린터(102)의 동작 모드 등의 설정이나 프린터(102)의 동작 상황의 표시, 및 프린터(102)의 복사 지정 등의 조작을 행하기 위한 버튼 및 액정 패널이나 LED(214)등의 표시부도 배치된다. 네트워크 인터페이스 카드(NIC)(219)는, 각종 네트워크를 거쳐서 외부장치와의 데이터의 교환을 행한다.
이때, 도 2에 나타낸 프린트 엔진(220)은, 전자사진 인쇄(레이저 빔 인쇄), 잉크젯 인쇄, 또는 염료 승화(열 전사) 인쇄 등의 기지의 인쇄 기술을 본 기술의 예시적 실시예로서 인용한다. 그러나, 본 발명은, 이들 인쇄 기술에 한정되는 것이 아니다. 래스터 콘트롤러(215)는, PDL/PDF형식의 인쇄 데이터를 화상 데이터로 변환한다. 기기I/F(217)는, USB커넥터등을 거쳐 접속 가능한 외부 기기를 접속하는 접속I/F다. 또한, 도 2에는 도시하지 않았지만, 각 장치는, 시간을 취득하는 내부 부분을 구비하고, 각 처리부로부터 발행된 요구를 수신한 시간을 각 처리부로부터의 요구에 따라 통지 받을 수 있다.
[모듈 구성]
도 3은, 본 실시예에 따른 프린트 시스템에서 제공되는 모듈간의 관계를 나타내는 구성 블록도다.
프린트 서버(100)는, 프린터 관리 서비스(306)를 제공한다. 프린터 관리 서비스(306)는, 인쇄를 행하는 각 프린터의 정보를 유지한다. 프린터 관리 서비스(306)는, 도 11에 나타나 있는 바와 같은 프린터 리스트를 보유한다. 프린터 리스트에는, 프린트 서버(100)가 프린터(102)를 유일하게 식별하기 위한 프린터ID, 프린터 이름 정보, 프린터의 IP어드레스 정보가 포함된다. 이들 정보와 아울러, 프린터 리스트에는, 프린터(102)에서 송신되게 의뢰된 폴링 통지의 상황으로서 폴링을 수신한 시간과, 폴링 간격 시간이 등록되어 있다. 이때, 상기 프린터 리스트는 이것에 한정되는 것이 아니고, 다른 프린터 정보를 포함해도 좋다. 예를 들면, 프린터 IP어드레스는, 글로벌 어드레스와 프라이빗 어드레스를 포함하여도 좋고, 상기 프린터 리스트에는 각 프린터를 포함하는 네트워크를 나타내는 정보도 포함되어도 된다.
프린터ID는, 프린트 서버(100) 내부에서 프린터(102)를 유일하게 식별하기 위한 ID(식별자)다. 본 실시예에 있어서, 폴링 통지란, 프린터(102)가 소정 시간간격으로 프린트 서버(100)에 대하여 인쇄 잡의 처리 상황을 송신하도록 프린트 서버(100)와 생성된 것을 의미한다. 본 실시예에서는, 이 폴링 통지에 응답하여, 프린터(102)는, 프린트 서버(100)에 대하여 처리중의 잡 리스트(처리중 잡 리스트)를 포함하는 데이터(도 16)를 프린트 서버(100)에 송신한다. 이때에 송신된 데이터의 구체적인 예는, 도 16을 참조하여 후술한다.
프린트 서버(100)는, 폴링 통지의 상황으로서, 도 11에 나타나 있는 바와 같이, 폴링을 각 프린터로부터 이전에 수신한 시각(폴링 수신 시간)을 유지한다. 이때, 최초의 폴링 시각에서, 프린터(102)는 그 폴링 등록을 정상적으로 완료한다. 폴링 간격은, 프린터(102)에서 지정된 폴링 통지의 간격시간이다. 정기적으로 폴링 통지가 보내지면, 이 정보에서 지정된 간격으로 폴링이 행해진다.
또한, 프린터 리스트에 등록된 정보에 의거하여, 프린터(102)로부터의 정기적 폴링을 수신하였는가를 확인한다. 예를 들면, 도 11의 프린터ID "POO3"으로 나타낸 바와 같이, 폴링 통지를 송신하지 않는 프린터에는, 폴링 수신 시간과 폴링 간격시간의 정보는 설정되지 않고 있다.
인쇄 잡 관리 서비스(305)는, 유저가 요구한 인쇄 잡을 관리하고, 문서 데이터 등을 인쇄 데이터로서 스토리지(307)에 유지하여 관리한다. 또한, 인쇄 잡 관리 서비스(305)는, 도 12에 나타나 있는 바와 같은 인쇄 잡 리스트를 보유하여, 프린터(102)에 의해 실행되게 의뢰 받은 인쇄 잡을 관리한다.
클라이언트 잡ID는, 프린트 서버(100) 내부에서 인쇄 잡을 유일하게 식별하기 위한 ID(식별자)다. 프린터ID는, 도 11에 도시된 프린터 리스트에서 정의된 "프린터ID"에 대응하고, 인쇄 잡을 실행하도록 의뢰 받은 각 프린터를 유일하게 식별하기 위한 정보다. 프린터 잡ID는, 인쇄 잡의 실행을 의뢰 받은 프린터에 의해 인쇄 잡에 대하여 발행된다. 프린트 서버(100)가 프린터(102)와 인쇄 잡의 정보를 교환하는 경우, 프린터(102)가 발행한 프린터 잡ID를 사용해서 인쇄 잡을 식별한다. 문서ID는, 프린트 서버(100)내의 스토리지(307)에 유지된 각 문서를 유일하게 식별하는 정보이며, 인쇄된 문서를 구별하기 위한 정보다.
스토리지(307)는, 프린트 서버(100)의 정보처리장치에 내장된 HDD, 외부적으로 접속된 HDD, 또는 네트워크 스토리지 등의 기억장치다. 이 스토리지(307)에는, 인쇄 잡에서 인쇄되게 지정된 문서 데이터가 유지되어 있다. 스토리지는, 예를 들면, HDD(205)로서 실현된다.
웹 어플리케이션(302)은, 클라이언트 단말(101) 상에서 동작하는 웹 브라우저(301)에서 표시 가능한 웹 페이지를 생성한다. 웹 어플리케이션(302)은, 클라이언트 단말(101)의 웹 브라우저(301)로부터의 리퀘스트에 응답하고, 상기 생성된 웹 페이지를 회신한다. 또한, 웹 어플리케이션(302)은, 클라이언트 단말(101)의 웹 브라우저(301)가 프린터(102)에 요구를 송신하기 위한 자바스크립트 프로그램을 생성하여, 웹 브라우저(301)에 송신한다.
웹 서비스(303)는, 프린터(102)와 통신하는 모듈이다. 본 실시예에 있어서, 웹 서비스(303)는, 프린터(102)와 통신하여, 프린터(102)가 예를 들면, 인쇄 데이터 취득 요구, 폴링 통지 및 이벤트 통지를 송신한다. 웹 서비스(303)는, 프린터(102)로부터 송신된 이것들의 요구에 응답하여, 각 요구를 따르는 처리를 행한다. 웹 서비스(303)는, 처리 결과로서 프린터(102)에 대하여 응답을 회신한다.
또한, 인쇄 잡 관리 서비스(305), 웹 어플리케이션(302) 및 웹 서비스(303)는 독립적인 프로그램이다. 본 실시예에서는 1대의 프린트 서버(100)가 이것들의 모듈의 기능을 실현하였지만, 이들 모듈도 분리된 정보처리장치에 배치될 수 있다. 이것이 나타내는 것은, 이것들의 모듈이, 네트워크를 거쳐 서로 연결된 정보처리장치에 위치되고, 서로 통신을 행하는 것이다.
프린터(102)의 풀 프린트 어플리케이션(304)은, 프린터(102)에서 풀 프린트를 실행한다. 풀 프린트 어플리케이션(304)은, 인쇄 잡의 실행 요구에 따라, 이 URL이 통지되면, 그 URL로부터 인쇄 데이터를 취득해서 인쇄하는 풀 프린트 기능을 갖는다. 또한, 풀 프린트 어플리케이션(304)은, 등록된 폴링 통지처에 대하여 소정 시간간격으로 처리중의 잡 리스트를 송신하는 폴링기능과, 각 프린터에서 인쇄하는 잡이 완료했을 때에 이벤트 통지를 송신하는 기능을 갖는다. 이때의 통지처는, 프린트 서버(100)다.
클라이언트 단말(101)의 웹 브라우저(301)는, 프린트 서버(100)로부터 송신된 자바스크립트 프로그램을 실행할 수 있다.
[소프트웨어 구성]
도 4a 및 4b는, 본 실시예에 따른 프린트 시스템에 있어서의 도 3에 나타낸 각 모듈의 더욱 상세한 소프트웨어 구성을 나타낸 블록도다. 우선, 도 4a를 참조하여, 프린트 서버(100)의 구성에 관하여 설명한다. 프린트 서버(100)에 설치된 인쇄 잡 관리 서비스(305)의 인쇄 데이터 관리부(401)는, 인쇄 데이터(문서 데이터)를 관리한다. 여기에서의 인쇄 데이터의 관리는, 인쇄 데이터 관리부(401)가, 웹 서비스(303)로부터 인쇄 데이터의 취득 요구에 응답하여 상기 스토리지(307)로부터 지정된 인쇄 데이터를 취득하여, 웹 서비스(303)에 송신하는 동작이다. 또한, 인쇄 데이터 관리부(401)는, 필요에 따라, 인쇄 데이터의 추가 또는 삭제를 행한다.
인쇄 잡 정보관리부(402)는, 클라이언트로부터 클라이언트 단말(101)을 거쳐서 요구된 인쇄 잡 정보와 인쇄 이력정보를 관리한다. 여기에서 관리된 인쇄 잡 정보는, 도 12에 나타낸 인쇄 잡 리스트이며, 각 인쇄 잡을 유일하게 식별하는 ID정보, 이 인쇄 잡을 출력하는 프린터를 특정하는 정보로 구성된다. 또한, 인쇄 이력정보는, 도 13에 나타낸 인쇄 이력정보이며, 각 잡을 식별하는 ID정보와, 이 잡에 대한 인쇄 결과정보를 포함한다. 본 실시예에서, 상기 인쇄 이력정보에 포함된 인쇄 결과정보는, 인쇄 잡의 스테이터스로서 "정상종료", "에러(종료)" 및 "불명" 스테이터스를 포함한다.
"에러(종료)" 스테이터스는, 프린터에 의해 실행되게 지시되지만, 감시할 수 없게 된 인쇄 잡에 대하여 설정된다. 이것은, "에러(종료)"스테이터스가, 프린터가 정상종료의 통지를 보내기 전에 프린터에서 종료한 인쇄 잡에 대하여 설정된다. "불명" 스테이터스는, 폴링 통지를 수신할 수 없게 된 프린터에 의해 실행되게 지시된 인쇄 잡에 대하여 설정된다. 폴링 통지에 근거한 이력정보의 설정에 관해서는, 각 처리 시퀀스를 참조해서 후술한다. 이때, 인쇄 잡 리스트와 인쇄 이력정보의 구성은, 도 12 및 도 13 각각에 나타낸 것에 한정되지 않고, 추가의 정보를 포함하여도 된다.
프린터 관리 서비스(306)의 프린터 정보관리부(403)는, 도 11에 나타낸 프린터 리스트를 관리한다. 또한, 프린터 정보관리부(403)는, 프린터 리스트에 등록된 각 프린터의 폴링 상황을 정기적으로 확인하여, 이 프린터에서 인쇄중의 잡에 문제가 발생하고 있지 않는가 판단한다. 이때의 확인의 예는, 폴링 수신 시간으로부터 폴링 간격에 대응한 시간이 경과하지 않았는지에 관한 확인이다.
웹 어플리케이션(302)의 리퀘스트 접수부(406)는, 클라이언트 단말(101)의 웹 브라우저(301)로부터, 인쇄 리퀘스트 등을 접수하는 모듈이다. 세션 관리부(404)는, 웹 브라우저(301)로부터의 리퀘스트를 세션으로서 관리한다. 페이지 생성부(405)는, 웹 브라우저(301)로부터의 리퀘스트에 따라 웹 화면을 생성하고, 그 생성한 웹 화면을 웹 브라우저(301)에 회신한다. 이때, 페이지 생성부(405)는, 웹 화면을 송신할뿐만 아니라, 프린터(102)에 송신하는 리퀘스트를 자바스크립트로 생성하여 웹 브라우저(301)에 회신하는 경우도 있다.
웹 서비스(303)의 리퀘스트 접수부(409)는, 프린터(102)의 풀 프린트 어플리케이션(304)으로부터 인쇄 잡 취득 요구, 인쇄 잡의 스테이터스 통지 이벤트, 및 폴링 통지 이벤트를 수신하는 모듈이다. 인쇄 잡 취득부(407)는, 리퀘스트 접수부(409)가 인쇄 잡 취득 요구를 받으면, 인쇄 잡 관리 서비스(305)에 인쇄 데이터 취득 요구를 발행하여 지정된 인쇄 데이터를 취득하여, 클라이언트 단말(101)에 송신한다.
인쇄 이벤트 수신부(408)는, 프린터(102)로부터 인쇄 처리된 잡의 스테이터스 정보를 수신하는 모듈이다. 인쇄 이벤트 수신부(408)는, 프린터(102)로부터 잡에 대한 인쇄 처리의 완료의 이벤트를 수신하면, 도 12에 나타낸 인쇄 잡 리스트로부터 해당 잡을 삭제한다. 인쇄 이벤트 수신부(408)는, 해당 잡을 도 13에 나타낸 인쇄 이력정보에 그것의 지정된 최종 스테이터스 정보(인쇄 결과)와 함께 등록한다.
폴링 수신 처리부(400)는, 프린터(102)로부터 정기적으로 송신된 처리중 잡 리스트 정보에 의거하여, 인쇄 잡 정보관리부(402)가 보유하는 인쇄 잡 리스트의 타당성을 판단하는 모듈이다. 폴링 수신 처리부(400)는, 상기 수신한 처리중 잡 리스트와 상기 유지한 인쇄 잡 리스트(도 12)의 정보를 비교하고, 이들 정보를 관리하는 관점에서 프린터(102)와 프린트 서버(100)를 서로 동기화하여, 그들의 차이를 보상한다. 이때의 처리중인 잡을 관리하는 관점에서 프린터(102)와 프린트 서버(100)를 서로 동기화하는 방법에 대해서는, 후술한다.
다음에, 도 4b를 참조하여, 프린터(102)의 구성에 대해서 서술한다. 풀 프린트 어플리케이션(304)의 웹 서비스 접수부(410)는, 클라이언트 단말(101)의 웹 브라우저(301)로부터, 인쇄 리퀘스트, 이벤트 등록, 및 폴링 등록 등을 접수한다. 웹 서비스 송신부(411)는, 프린트 서버(100)의 웹 서비스(303)에 대하여, 인쇄 잡 취득 리퀘스트, 인쇄 잡의 스테이터스 변경 이벤트 통지, 및 정기적으로 처리중의 잡 리스트를 송신하기 위한 폴링 통지 등을 보낸다.
인쇄 잡 취득부(412)는, 풀 프린트 요구에 응답하여 수신된 URL로부터, 웹 서비스 송신부(411)를 거쳐서 프린트 서버(100)의 웹 서비스(303)로부터 인쇄 데이터를 취득한다. 인쇄 잡 취득부(412)는, 취득한 인쇄 데이터를 인쇄 잡 투입부(416)에 송신한다. 인쇄 잡 투입부(416)는, 콘트롤러(230)에 인쇄 데이터를 송신한다. 그 결과, 콘트롤러(230)는, 수신한 인쇄 데이터를 사용해서 인쇄 처리를 실행한다.
인쇄 제어부(415)는, 인쇄 잡의 스테이터스를 콘트롤러(230)로부터 수신하고, 이 정보를 잡 관리부(414)에 통지한다. 잡 관리부(414)는, 통지된 인쇄 잡의 스테이터스가 이벤트 송신 조건에 일치하는 것인가 아닌가를 판단한다. 통지된 인쇄 잡의 스테이터스가 이벤트 송신 조건에 일치하는 경우에, 잡 관리부(414)는, 웹 서비스 송신부(411)를 거쳐서 이벤트 통지를 보낸다.
또한, 잡 관리부(414)는, 클라이언트 단말(101)로부터 폴링 통지 지시에 응답하여, 폴링 통지 지시에서 지정된 송신처가 정기적으로 처리중의 잡 리스트를 통지 받는 폴링 통지를 송신한다. 잡 관리부(414)는, 폴링 통지와 관련지어 도 18에 나타나 있는 바와 같은 폴링 감시 리스트를 구비하여, 각 통지처와, 이 통지처에 폴링 통지를 송신하는 간격과, 이 폴링 통지의 상세 내용을 관리한다. 이때, 통지 상세 내용으로 지정된 ActiveJobIds는, 각 프린터가 인쇄하고 있는 인쇄 잡 중, 폴링 통지의 송신처에서 관리된 쇄 잡의 정보를 처리중 잡 리스트의 형태로 송신하는 것을 나타낸다. 이 처리중 잡 리스트에는, 프린트 서버(100)가 각 잡을 식별할 수 있게, 예를 들면 도 12에 나타낸 클라이언트 잡ID와 프린터 잡ID가 포함된다. 풀 프린트 콘트롤러(413)는, 풀 프린트 어플리케이션(304) 전체의 동작을 관리한다. 동작 지시는, 예를 들면, 이 풀 프린트 콘트롤러(413)를 거쳐서 각 부에 발행한다.
[처리 플로우]
다음에, 도 5를 참조하여, 본 발명에 따른 자바스크립트를 이용한 풀 프린트 방식에 관하여 설명한다. 본 발명에서는, 정확하게 각 프린터로 인쇄하고 있는 잡 상황을 파악하기 위해서, 인쇄 요구 송신시에 잡 완료 이벤트뿐만 아니라, 폴링 요구도 발행한다. 이후, 본 실시예에 따른 인쇄 시퀀스를 설명한다.
클라이언트 단말(101)은, 그 자체를 프린트 서버(100)의 웹 어플리케이션(302)에 웹 브라우저(301)를 사용하여 접속해서, 인쇄를 행하는 문서와, 인쇄된 문서를 출력하는 프린터를 지정해서, 상기 문서의 인쇄를 지시한다(F1OO). 이때, 인쇄 설정 등을 지정할 수 있지만, 본 발명에 직접 관계없기 때문에, 그 설명을 하지 않겠다.
프린트 서버(100)의 웹 어플리케이션(302)은, 클라이언트 단말(101)로부터 인쇄 리퀘스트를 수신하면, 페이지 생성부(405)에서, 클라이언트 단말(101)이 문서를 인쇄하는 프린터에 대하여 리퀘스트를 송신하기 위한 자바스크립트 프로그램을 생성한다. 이때 생성된 자바스크립트 프로그램에는, 클라이언트 단말(101)의 웹 브라우저(301)가 프린터(102)에 대하여 이하의 타입의 처리를 실행하기를 요구하는 기술이 포함된다:
프린트 서버에 대하여 처리중의 인쇄 잡 리스트를 통지시키는 폴링 지시(폴링 통지의 실시 의뢰),
인쇄 잡의 이벤트 등록 지시(잡의 종료 통지의 실시 의뢰), 및
풀 프린트 지시(인쇄 지시(인쇄 데이터의 취득 요구의 실시 의뢰를 포함한다)).
프린트 서버(100)는, 상기 생성된 자바스크립트 프로그램을, 클라이언트 단말(101)의 웹 브라우저(301)에 대하여 인쇄 리퀘스트에 응답하여 송신한다(FlOl).
클라이언트 단말(101)의 웹 브라우저(301)는, 프린트 서버(100)로부터 송신된 자바스크립트 프로그램을 수신하고, 실행한다. 이때 수신된 자바스크립트 프로그램에는, 상술한 각종 의뢰를 실행하기 위한 각종 처리가 기술되어 있다. 웹 브라우저(301)는, 이들 종류의 처리를 순차로 실행하여, 클라이언트 단말(101)이 프린터(102)와 통신을 행하고, 그 처리 결과를 수신한다(FlO2-FlO7).
클라이언트 단말(101)의 웹 브라우저(301)로부터 프린터(102)에 송신된 폴링 지시의 리퀘스트(FlO2)는, 예를 들면 도 14에 나타낸 것과 같은 리퀘스트다. 이하, 도 14에 도시된 리퀘스트의 상세 내용을 설명한다. 우선, PollTo 요소의 부하의 Address요소에서 송신처가 지정되어 있다. 또한, Interval요소에 지정된 시간의 간격(이 경우에는 초단위로 지정됨)으로 폴링 통지를 실행한다. 이때, ClientId 요소에 지정된 클라이언트가 발행한 잡의 정보로서 폴링하여서, Name요소에 지정된 JOB정보(통지 상세 내용)를 송신한다. 도 14에 나타낸 예에서는, 통지처 "http://10.254.0.27:5357/70da246b-feal-4ed3-b7ce-195c50acO7el"에 대하여, 60초 간격으로 인쇄 지시자가 처리중 잡 리스트(ActiveJobIds) CJ200을 송신한다.
프린터(102)로부터 클라이언트 단말(101)에 송신된 폴링 지시에 대한 응답(FlO3)은, 예를 들면 도 15에 도시된 것과 같다. 이하, 도 15에 도시된 응답의 상세 내용을 설명한다. 이때, 도 15는, 프린터(102)에 의해 폴링 지시를 접수한 것을 보이고 있다. 그렇지만, 웹 브라우저(301)에 의해 폴링 간격으로서 "60(초)"가 지정되는 반면에(도 14의 Interval요소), 그 폴링 지시에 응답하여 프린터(102)에 의한 폴링 간격으로서 "180(초)"가 지정되어 있다(도 15의 Interval요소). 폴링 간격은, 프린터(102)의 설정과 상황 에 따라 프린터에 의해 주로 결정되어도 된다. 프린터(102)가 결정한 정보를, 클라이언트 단말(101)이 프린트 서버(100)에 통지한다.
클라이언트 단말(101)의 웹 브라우저(301)는, 프린터(102)에 대하여 이벤트 등록 지시를 발행한다(F1O4). 이 경우에, 상기 인쇄 지시에 응답하여 프린터(102)가 접수한 인쇄 잡의 실행이 완료했을 때에, 웹 브라우저(301)는, 프린트 서버(100)에 대하여, 그 취지를 프린터(102)에 통지하도록 지시한다. 프린터(102)는, 웹 브라우저(301)로부터의 상기 이벤트 등록 지시에 응답하여 대하여 이벤트가 등록될 수 있는 경우에, 그 등록 정보(이벤트ID)를, 해당 요구를 접수한 것을 나타내는 정보와 함께 클라이언트 단말(101)에 통지한다(F1O5).
클라이언트 단말(101)의 웹 브라우저(301)는, 프린터(102)에 대하여, 풀 프린트 요구를 발행한다. 프린터(102)는, 상기 수신한 풀 프린트 요구에 응답하여 발행한 잡ID를, 해당 요구를 접수한 것을 나타내는 정보와 함께 클라이언트 단말(101)에 통지한다.
클라이언트 단말(101)은, 폴링 지시의 결과(FlO3), 이벤트 등록 지시의 결과(FlO5) 및 인쇄 지시의 결과(FlO7)를 수신하면, 수신한 처리 결과와 프린터(102)로부터 송신된 ID정보를 프린트 서버(100)에 송신한다(FlO8). 이때, 어느 한쪽의 지시가 실패했을 경우에, 프린터(102)는 프린트 서버(100)에 그 취지를 통지한다.
각 지시의 접수가 정상적으로 완료된 후, 프린터(102)는, 인쇄 지시(FlO6)에 응답하여 풀 프린트 요구에서 지정된 그 URL로부터 인쇄 데이터를 취득해(FlO9, FllO), 인쇄 처리를 실행한다.
프린터(102)는, F1O3에서 지정한 폴링 간격시간마다 프린트 서버(100)에 대하여, 폴링 통지로서, 처리중 잡 리스트를 정기적으로 통지한다(Flll). 예를 들면, FlO6에서 요구된 풀 프린트 동작이 완료하지 않는 상황하에서 폴링 간격시간이 경과했을 경우, 프린터(102)는 프린트 서버(100)에 대하여, FlO6에서 수신한 처리중의 잡 정보를 포함시킨 정보를 송신한다(FlO8).
FlO6에서 접수한 풀 프린트 요구에 응답하여 풀 프린트 동작이 완료된 후에 폴링 간격시간이 될 때에도, 처리중의 인쇄 잡이 존재하지 않기 때문에, 프린터(102)는 프린트 서버(100)에 대하여 처리중의 잡 정보가 존재하지 않는 것을 나타내는 정보를 통지한다(Fl15).
프린터(102)로부터 보내진 폴링 통지(Flll 및 Fl15) 각각은, 예를 들면 도 16에 나타나 있는 바와 같은 구성을 갖는 리퀘스트 데이터다. 이 경우에, ActiveJobIds요소의 부하에 처리중의 잡의 수만큼 JobIdSet요소로서 잡 정보가 기재된다. 도 16에 나타낸 예에서, 프린트 서버(100)는, 프린터 잡ID "J300"과 클라이언트 잡ID "CJ200"의 잡이 존재하는 것을 나타내는 정보를 통지 받는다. 이들 정보는, 프린트 서버(100)의 인쇄 잡 관리 서비스(305)가 관리하는 인쇄 잡 리스트(도 12)의 프린터 잡ID 및 클라이언트 잡ID에 각각 대응한다. 만약에 F115와 같이 처리중의 잡이 존재하지 않는 경우, JobIdSet정보의 부재를 고려하여 생성된 리퀘스트는 송신된다.
프린트 서버(100)는 프린터(102)로부터 폴링 통지를 수신하는 경우, 프린터(102)에 대하여 폴링을 계속시킬 것인가 아닌가를 판단한다. 프린터(102)에 대하여 폴링을 계속시키는 경우에는, 프린트 서버(100)는, 프린터(102)에 프린터(102)의 폴링에 응답하여 폴링 통지를 계속하라고 지시하고(Fl12); 그렇지 않은 경우, 프린트 서버(100)는, 프린터(102)에, 폴링 통지의 종료 지시를 행한다(Fl16).
프린터(102)의 폴링에 응답하여 통신(Fl12, Fl16)에 의해 얻어진 데이터는, 예를 들면 도 17에 나타나 있는 바와 같은 구성을 갖는 리스폰스 데이터다. 폴링 리스폰스는, 상기한 바와 같이, 프린트 서버(100)로부터 프린터(102)에 대하여 폴링을 계속할 것인가 아닌가에 관한 지시를 포함한다. 도 17에 나타나 있는 바와 같이, EndPolling요소에 "true"로 설정되어 있는 경우에는 폴링 종료 지시이며, 또는 EndPolling요소에 "false"로 설정되어 있는 경우에는 폴링 계속 지시다.
[인쇄 요구의 등록 처리]
도 6은, 프린트 서버(100)가 클라이언트 단말(101)로부터 인쇄 요구(FlOO)를 수신하는 경우에 ROM(204)에 격납된 프로그램에 따라, CPU(202)가 동작하는 웹 어플리케이션(302)의 흐름도다.
프린트 서버(100)는, 인쇄 요구를 수신하면, 문서ID와, 클라이언트 단말(101)에서 지정한 잡을 출력하는 프린터의 프린터ID를 도 12에 나타낸 인쇄 잡 리스트에 등록한다. 프린트 서버(100)는, 인쇄 요구를 발행한 클라이언트 단말(101)의 클라이언트 잡ID를 취득한다(단계SOOl).
프린트 서버(100)는, 클라이언트 단말(101)로부터 프린터(102)에 송신되는 리퀘스트를 기술하고, 이 리퀘스트를 발행시키기 위한 자바스크립트 프로그램을 생성한다(단계SOO2). 이 자바스크립트 프로그램에는, 클라이언트 단말의 제어하에 프린터에 의해 실행되는 이하의 종류의 처리가 기재되어 있다:
프린트 서버에 처리중의 잡 리스트를 정기적으로 통지하는 폴링 지시,
프린트 서버에 의해 실행되게 지시된 잡의 종료를 프린트 서버에 통지하는 지시, 및
프린트 서버상의 데이터를 풀 프린트(인쇄)하는 지시.
이 자바스크립트 프로그램에 기술된 이들 종류의 처리는, 상술한 도 5에 나타낸, FlO2, FlO4 및 FlO6의 지시에 각각 대응한다.
프린트 서버(100)는, 상기 생성한 자바스크립트 프로그램을, 클라이언트 단말(101)이 발행한 인쇄 요구에 응답하여 클라이언트 단말(101)에 송신한다(단계SOO3).
클라이언트 단말(101)은, 프린트 서버(100)로부터 수신한 자바스크립트 프로그램을 실행하고, 그 자바스크립트 프로그램 결과를 프린트 서버(100)의 웹 어플리케이션(302)에 송신한다. 이때 송신된 자바스크립트 프로그램의 실행 결과에는, 예를 들면, 프린터(102)에 보내진 폴링 지시 및 이벤트 등록 지시와, 인쇄 요구 처리와, 프린터(102)로부터 클라이언트 단말(101)에 대하여 송신된 ID정보가 포함되어 있다.
프린트 서버(100)의 웹 어플리케이션(302)은, 클라이언트 단말(101)로부터 송신된 정보를 수신하면(단계SOO4), 프린터(102)에 보낸 각종 리퀘스트가 성공한 것인가 아닌가를 판단한다(단계SOO5). 그 각종 리퀘스트가 성공했을 경우(단계SOO5에서 YES), 프린트 서버(100)는, 프린터(102)로부터 수신한 폴링 간격시간을 프린터 리스트(도 11)에 포함된 대응 프린터와 관련지어서 등록한다. 또한, 프린트 서버(100)는, 프린터 리스트(도 11)의 폴링 수신 시간의 항목으로서 현재 시간을 설정한다(단계SOO6). 더욱이, 프린트 서버(100)는, 인쇄 잡 리스트(도 12)에는, 프린터(102)로부터 수신한 프린터 잡ID와 이벤트ID를 대응한 잡과 관련지어서 등록한다(단계SOO7). 그 후, 처리 시퀀스를 종료한다.
클라이언트 단말(101)이 각종 리퀘스트가 실패했다는 것을 프린트 서버(100)에 통지하는 경우(단계SOO5에서 NO), 프린트 서버(100)는, 인쇄 잡 리스트로부터 해당 잡을 삭제한다(단계SOO8). 프린트 서버(100)는, 삭제한 잡의 정보를 도 13에 나타낸 인쇄 이력에 등록하고 나서(단계SOO9), 처리 시퀀스를 종료한다.
[폴링 통지처의 등록 처리]
도 7은, 프린터(102)의 ROM(212)에 격납된 프로그램에 따라서 CPU(210)가 동작하는 처리이며, 웹 서비스 접수부(410)가 폴링 지시(FlO2)를 수신했을 경우의 흐름도다.
프린터(102)는, 도 14에 나타나 있는 바와 같은 폴링 지시를 수신하면, 폴링의 통지처가 폴링 감시 리스트(도 18)에 이미 등록되었는지의 여부를 판단한다(단계S1OO). 폴링의 통지처가 폴링 감시 리스트에 이미 등록된 경우(단계S1OO에서 YES), 프린터(102)는, 폴링 통지처의 등록 처리는 행하지 않고, 폴링 정보등록(단계S1O4)의 처리로 진행한다.
폴링 통지처가 폴링 감시 리스트에 미등록일 경우(단계S1OO에서 NO), 프린터(102)는, 폴링 통지처가 폴링 감시 리스트에 등록 가능한가를 확인한다. 폴링 통지처가 폴링 감시 리스트에 등록 가능한 경우(단계S1Ol에서 YES), 프린터(102)는, 폴링 감시 리스트에 폴링 통지처를 등록하고(단계S1O2), 폴링 간격을 결정하여 등록한다(단계S1O3). 만약에 폴링 통지처가 폴링 감시 리스트에, 예를 들면 등록된 폴링 통지처의 수가 이미 상한에 도달하였기 때문에 등록될 수 없는 경우(단계S1Ol에서 NO), 프린터(102)는, 폴링 등록의 요구자에 대하여 폴링등록의 에러 통지를 보낸다(단계S1O6). 그 후, 처리 시퀀스를 종료한다.
프린터(102)는, 폴링 통지처를 폴링 감시 리스트에 등록 후, 폴링 통지 정보를 등록한다(단계S1O4). 폴링 통지 정보란, 폴링 통지 간격과, 이전의 폴링동작 후 경과 시간을 가리킨다. 본 실시예에 있어서, 폴링 송신을 행하면, 상기 경과 시간은, "0"에 리셋트되어, 이 송신 후 경과한 시간만큼 카운트 업된다.
프린터(102)는, 폴링 통지 정보를 등록한 후, 폴링 지시에 응답하여 폴링 등록 응답으로서, 등록이 성공한 것을 나타내는 정보를 송신한다(단계S1O5). 그 후, 처리 시퀀스를 종료한다.
[폴링 처리]
도 8은, 프린터(102)의 ROM(212)에 격납된 프로그램에 따라서 CPU(210)가 동작하는 처리이며, 풀 프린트 어플리케이션(304)의 잡 관리부(414)의 폴링 처리를 설명하는 흐름도다. 도 8은 도 5에 있어서의 F111과 Fl15에 대응한다.
프린터(102)에 설치된 풀 프린트 어플리케이션(304)의 잡 관리부(414)는, 폴링 감시 리스트에 폴링 통지처가 등록되었는지를 확인한다. 잡 관리부(414)는, 폴링 통지처가 등록된 것을 검지하면(단계S11O에서 YES), 소정시간 대기처리를 행한다. 그 후에, 잡 관리부(414)는, 그 대기한 시간을 폴링 감시 리스트(도 18)에서 관리하고 있는 경과 시간에 가산한다(단계S111).
잡 관리부(414)는, 등록된 폴링 통지처 각각에 대하여, 이전의 폴링 통지동작으로부터 폴링 간격시간이 경과했는지를 확인한다(단계S112). 확인한 결과, 상기 경과시간이 폴링 간격에 도달하지 않은 경우(단계S112에서 NO), 잡 관리부(414)는, 다시 소정 시간 대기처리를 행한다(단계S111). 확인한 결과, 상기 경과 시간이 폴링 간격에 도달한 경우(단계S112에서 YES), 잡 관리부(414)는, 경과 시간을 "0"에 리셋트한다(단계S113). 그리고, 잡 관리부(414)는, 폴링 통지처의 등록시에 지정된 송신 정보를 취득하고, 폴링 리퀘스트(도 16)를 상기 통지처에 대하여 송신한다(단계S114). 여기에서의 폴링 통지처의 등록시에 지정된 송신 정보는, 폴링감시 리스트(도 18)에 정의된 통지 상세 내용에 해당한다.
잡 관리부(414)는, 폴링 리퀘스트에 응답해서 폴링 통지처에서 송신된 리스폰스 데이터(도 17)를 수신한다(단계S115). 잡 관리부(414)는, 수신한 폴링 데이터에, 폴링의 종료 지시가 지정되었는가 아닌가를 판단한다(단계S116). 상기한 바와 같이, 폴링 리스폰스(도 17)에 포함된 EndPolling요소에서 지정된 값에 근거해서 판단한다. 폴링 종료 지시가 지정되었을 경우(단계S116에서 YES), 잡 관리부(414)는, 폴링 감시 리스트로부터 해당 폴링 통지처에 대응한 정보를 삭제하고(단계S117), 단계S11O의 처리로 되돌아간다. 폴링 종료 지시가 지정되지 않은 경우(단계S116에서 NO), 다시 단계S111로 되돌아가서, 잡 관리부(414)는 폴링 처리를 계속한다.
[폴링 수신 처리]
도 9는 웹 서비스(303)의 폴링 수신 처리부(400)가 실행하고, 프린트 서버(100)의 ROM(204)에 격납된 프로그램에 따라서 CPU(202)가 동작하는 처리의 흐름도다. 본 처리는, 도 5에 나타낸 프린터(102)로부터의 폴링 통지(F111 및 F115)에 응답하여 실행된다.
프린트 서버(100)에 설치된 웹 서비스(303)의 폴링 수신 처리부(400)는, 프린터(102)로부터 폴링을 수신하면, 프린터 리스트(도 11)로부터 폴링이 송신된 프린터를 특정한다(단계S200). 폴링 수신 처리부(400)는, 해당 프린터의 폴링 수신 시간을 현재 시간으로 갱신한다(단계S201). 이때, 해당 프린터의 폴링 수신 시간은, 각 폴링 간격시간으로 정확하게 폴링 송신이 행해지고 있는지를 확인하기 위해서 현재 시간으로 갱신된다.
폴링 수신 처리부(400)는, 인쇄 잡 리스트(도 12)에 의거하여, 폴링 통지를 송신한 프린터에 의해 실행되게 의뢰된 잡을 확인하여, 그 인쇄 잡 리스트의 잡이, 폴링 통지시에 수신한 잡 리스트와 일치하고 있는 것인가 아닌가를 판단한다(단계S202).
프린트 서버(100)의 인쇄 잡 리스트가 폴링 통지시에 수신한 잡 리스트와 일치하지 않는 경우(단계S202에서 NO), 프린터(102)로부터 폴링 통지에서 보내진 정보는 우선적으로 유지된다. 보다 구체적으로는, 폴링수신 처리부(400)는, 프린트 서버(100)에 의해 관리된 인쇄 잡 리스트에 등록되어 있지만, 폴링 통지시에 프린터(102)로부터 처리중의 잡으로서 특정되지 않은 잡을, 인쇄 잡 리스트로부터 삭제한다(단계S204). 폴링 수신 처리부(400)는, 이러한 잡을, 인쇄 이력(도 13)에 "에러" 인쇄 결과를 갖는 인쇄 잡으로서 등록한다(단계S205).
폴링 수신 처리부(400)는, 폴링 통지에서 수신한 리스트가 실행되는 잡을 포함하는 것인가 아닌가를 확인한다(단계S203). 이 리스트에 프린터(102)가 그 폴링 통지를 계속하는 잡을 포함하는 경우(단계S203에서 YES), 프린트 서버(100)는 폴링에 의한 인쇄 잡을 계속 감시한다. 따라서, 폴링 수신 처리부(400)는, 폴링 종료 지시(EndPolling요소)를 "false"에 설정하여서 얻어진 폴링 리스폰스 데이터(도 17)를 생성한다(단계S208). 이때, 프린터(102)는, 폴링 리스폰스 데이터를 수신함에 의해, 정상적으로 폴링이 프린트 서버(100)에 도달하고 있는 것을 확인할 수 있다.
프린터(102)로부터의 폴링시에 수신한 리스트에 실행되는 잡이 포함되어 있지 않는 경우(단계S203에서 NO), 프린트 서버(100)는 더 이상 폴링을 행할 필요가 없다. 그 때문에, 폴링 수신 처리부(400)는, 폴링 종료 지시(EndPolling요소)를 "true"에 설정하여서 얻어진 폴링 리스폰스 데이터를 생성한다(단계S206). 폴링 수신 처리부(400)는, 프린터 리스트(도 11)로부터 폴링 수신 시간과 폴링 간격정보를 소거한다(단계S207). 폴링 수신 처리부(400)는, 상기 생성한 폴링 리스폰스 데이터를 프린터(102)에 송신한다(단계S209).
[폴링 감시 처리]
도 10은, 프린터 관리 서비스(306)의 프린터 정보관리부(403)에 의해 실행되고, 프린트 서버(100)의 ROM(204)에 격납된 프로그램에 따라 CPU(202)에 의해 동작된 프린터 폴링 감시의 흐름도다. 본 처리는, 도 5의 FlO8에서, 프린터로부터 정보를 수신한 뒤, 폴링 통지를 계속적으로 감시할 때에 실행된다.
폴링 감시할 때, 정기적으로 프린터 리스트(도 11)에 등록된 폴링 실행중의 프린터는, 정기적으로 폴링 통지를 송신하고 있는 것인가 아닌가를 판단하기 위해 주기적으로 감시된다. 이들 프린터의 어느 하나로부터 송신된 폴링 통지가 정지된 경우에, 폴링을 정지시킨 프린터의 인쇄중 잡을 종료시킨다.
프린터 정보관리부(403)는, 프린터 리스트(도 11)에 등록된 프린터 모두에 대하여, 폴링되고 있는 프린터의 폴링 수신 시각에 폴링 간격시간을 가산하여서, 폴링 예정 시각을 산출한다(단계S300).
프린터 정보관리부(403)는, 프린터 리스트에 등록된 프린터마다, 산출한 폴링 수신 예정 시각과 프린트 서버(100)의 현재 시각을 비교한다(단계S301). 비교의 결과, 폴링 수신 예정 시각이 현재 시각에 도달하지 않은경우(단계S301에서 NO), 프린터 정보관리부(403)는, 특별한 처리를 행하지 않는다. 프린터 정보관리부(403)는, 모든 프린터에 대하여 시각을 확인한 것인가 아닌가를 판단한다(단계S305). 미확인의 프린터가 있는 경우에는(단계S305에서 NO), 단계S301의 처리로 되돌아가서, 프린터 정보관리부(403)는 미확인의 프린터에 대하여 시각을 확인한다.
단계S301에 있어서의 비교의 결과, 주목 프린터의 폴링 예정 시각이 현재 시각에 도달한 경우(단계S301에서 YES), 프린터 정보관리부(403)는, 주목 프린터에 대한 인쇄 잡이 인쇄 잡 리스트(도 11)에 포함되는 것인가 아닌가를 확인한다(단계S302). 인쇄 잡이 인쇄 잡 리스트에 포함되는 경우(단계S302에서 YES), 프린터 정보관리부(403)는, 주목 프린터에 대하여 발행한 인쇄 잡을 인쇄 잡 리스트로부터 삭제한다(단계S303). 그리고, 프린터 정보관리부(403)는, 삭제한 인쇄 잡을 인쇄 이력(도 13)에, "불명" 인쇄 결과와 관련지어 등록한다(단계S304).
주목 프린터에 대해 인쇄 잡이 인쇄 잡 리스트에 포함하지 않는 경우(단계S304에서 NO), 단계S305의 처리로 진행된다. 단계S305에서 모든 프린터에 대해서 시각이 확인되었으면(단계S305에서 YES), 프린터 정보관리부(403)는, 소정 시간 대기처리를 행한다(단계S306). 프린터 정보관리부(403)는, 상기 대기처리로부터 되돌아가면, 단계S300의 처리로 되돌아가, 다시 프린터 리스트에 등록된 각 프린터의 폴링 수신 예정 시각을 산출하는 처리를 행한다.
도 8의 단계S115에 있어서, 프린터는 폴링 통지에 대한 응답을 프린트 서버로부터 수신하고 있지만, 프린터가 예기치 않은 문제로 인해 상기 응답을 수신할 수 없는 경우에는, 소정 회수에 폴링 통지를 재송하여도 된다. 또한, 프린터가 폴링 통지를 여러 번 송신하는 경우에도 폴링 리스폰스를 수신할 수 없는 경우에는, 해당 통지처에 송신되는 폴링 통지를 종료하여도 된다. 이 경우에, 프린터는, 도 18에 나타낸 폴링 감시 리스트로부터 대응한 통지처를 삭제한다.
또한, 도 10의 단계S301에 있어서, 프린트 서버는, 폴링 수신 예정 시각에 폴링 통지를 수신할 수 없는 경우에, 1회만의 판정 결과에 의거하여 인쇄 잡을 인쇄 잡 리스트로부터 삭제하고 있지만, 본 발명은 이것에 한정되지 않는다. 예를 들면, 폴링 수신 예정 시각에 폴링 통지를 수신할 수 없는 프린터를 계속 감시하지만, 소정의 시간(예를 들면, 다음의 폴링 수신 예정 시각)내에서 폴링 통지를 수신할 수 없는 경우에, 프린터 서버는, 잡을 삭제해도 된다. 또한, 프린트 서버는, 폴링 통지 수신의 실패 회수를 카운트하고, 소정회수이상(소정간격)에 걸쳐 폴링 통지를 수신할 수 없는 경우에 해당 인쇄 잡을 인쇄 잡 리스트로부터 삭제해도 된다.
이때, 단계S303에 있어서 리스트로부터 프린터에 대한 인쇄 잡을 삭제한 후에 프린터로부터 프린터 서버가 폴링 통지를 수신하는 경우에, 프린트 서버는 해당 폴링 통지를 무시해도 된다. 혹은, 프린터 서버는 인쇄 잡 리스트에 등록되지 않고 있는 인쇄 잡에 대한 폴링 통지를 수신하는 경우에, 이 인쇄 잡을 에러로서 설정하고 그러한 정보를 인쇄 이력(도 13)에 추가하여 이 인쇄 이력을 갱신해도 된다.
상술한 동작을 행할 때, 프린트 서버는, 의뢰한 인쇄 잡의 처리 상황을 감시할 수 없게 된 경우에도, 쓸데없이 계속 감시하는 것을 방지할 수 있어서, 인쇄 잡의 관리 상황의 관점에서 프린터와 동기화할 수 있다.
[등록된 이벤트의 삭제 처리]
다음에, 본 실시예에 따른 자바스크립트를 이용한 풀 프린트 방식의 인쇄와 관련된 과제를 해결하기 위한 수단에 대해서 서술한다. 여기에서는, 프린터에 등록된 이벤트 통지(본 실시예에서는 인쇄 잡의 종료 통지)에 응답하여 등록된 이벤트를 확실하게 삭제하기 위한 이벤트 삭제 처리에 관하여 설명한다. 도 5의 F1O4에서는, 클라이언트 단말(101)이 프린터(102)에 대하여, 자바스크립트 프로그램에 따라, 이벤트 등록 지시를 행하고 있다. 이때, 프린트 서버(100)가 프린터(102)에 대하여, 이벤트의 삭제 지시를 행하지 않으면, 프린터(102)는 이벤트 통지를 계속한다. 이것이 나타내는 것은, 프린터(102)가, FlO4에서 등록된 종료 통지를 송신하기 위한 이벤트를 계속해서 유지하는 것이다. 그러나, 예를 들면 클라이언트 단말(101)의 웹 브라우저(301)가 닫힌 경우, 프린트 서버(100)는 클라이언트 단말(101)을 거쳐서, 프린터(102)에 대하여 이벤트의 종료 지시를 송신할 수 없다. 그 결과, 프린트 서버(100)는, 프린터(102)에서 등록한 이벤트를 삭제할 수 없으므로, 인쇄 잡의 종료 통지를 계속해서 전송한다.
상기 과제를 해결하기 위한 처리를, 도 19를 참조하여 설명한다. 도 19는 프린트 서버(100)의 ROM(204)에 격납된 프로그램에 따라서 CPU(202)가 동작하는 처리이며, 프린트 서버(100)에 설치된 웹 서비스(303)의 인쇄 이벤트 수신부(408)가 이벤트를 수신하는 경우의 처리 흐름도다. 본 처리는, 도 5의 잡의 종료 통지(F113)를 수신할 때에 실행된다.
인쇄 이벤트 수신부(408)는, 프린터(102)로부터 잡 종료 이벤트 통지를 수신한다(단계S400). 인쇄 이벤트 수신부(408)는, 인쇄 잡 리스트(도 12)로부터 잡 종료 이벤트 통지에 특정된 인쇄 잡을 삭제하고, 인쇄 이력(도 13)에 그 인쇄 잡을 등록한다(단계S401). 인쇄 이벤트 수신부(408)는, 인쇄 잡 리스트(도 12)에, 잡 종료 이벤트 통지를 송신한 프린터의 다른 잡이 존재하는 것인가 아닌가를 확인한다(단계S402). 단계S402에서 확인 결과, 잡 종료 이벤트 통지를 송신한 프린터의 다른 잡이 존재하는 경우(단계S402에서 YES), 인쇄 이벤트 수신부(408)는, 이벤트 수신 응답을 프린터(102)에 송신한다(단계S404). 단계S402에서 확인 결과, 잡 종료 이벤트 통지를 송신한 프린터의 다른 잡이 존재하지 않는 경우(단계S402에서 NO), 인쇄 이벤트 수신부(408)는, 이벤트 종료 지시를 포함하는 응답(이벤트 종료 응답)을 프린터(102)에 송신한다(단계S403).
일반적인 이벤트 통지 프로토콜(예를 들면, 웹 서비스 이벤팅(WS-Eventing))은, 이벤트 통지에 대하여 응답하는 처리에서 이벤트 통지를 종료시키는 구조를 갖지 않는다. 이러한 경우에는, 예를 들면 이벤트 통지를 종료시키기 위한 응답으로서, 이벤트 수신 에러를 사용할 수 있다. 프린트 서버는, 이벤트에 대하여 그 통지를 종료시키고 싶은 경우, 이벤트 수신 에러를 응답으로서 송신함으로써, 이벤트를 송신하고 일본국 공개특허공보 특개2007-257481호에 기재된 기술을 실현할 수 있는 장치는 그 이벤트를 삭제할 수 있다. 이때, 이벤트 수신 에러로서, 예를 들면 HTTP의 에러 스테이터스 코드("404")를 사용해도 된다.
상기 동작을 행할 때, 프린터는, 등록된 이벤트의 실행을 쓸데없이 계속해서 실행하는 것이 방지될 수 있다.
또한, 상기 동작을 행할 때, 프린트 서버가 프린터와 직접 통신을 할 수 없는 환경하에 있어서의 풀 프린트 시스템에 있어서, 프린트 서버와 프린터와의 사이에 있어서의 인쇄 잡 등에 관한 관리의 부정합을 방지하여서, 쓸데없는 관리와 처리를 방지할 수 있다.
또한, 본 발명의 국면들은, 메모리 디바이스에 기록된 프로그램을 판독 및 실행하여 상기 실시예(들)의 기능들을 수행하는 시스템 또는 장치(또는 CPU 또는 MPU 등의 디바이스들)의 컴퓨터에 의해서, 또한, 시스템 또는 장치의 컴퓨터에 의해 수행된 단계들, 예를 들면, 메모리 디바이스에 기록된 프로그램을 판독 및 실행하여 상기 실시예(들)의 기능들을 수행하는 방법에 의해, 실현될 수도 있다. 이를 위해, 상기 프로그램은, 예를 들면, 네트워크를 통해 또는, 여러 가지 형태의 메모리 디바이스의 기록매체(예를 들면, 컴퓨터 판독 가능한 매체)로부터, 상기 컴퓨터에 제공된다.
본 발명을 예시적 실시예들을 참조하여 기재하였지만, 본 발명은 상기 개시된 예시적 실시예들에 한정되지 않는다는 것을 알 것이다. 아래의 청구항의 범위는, 모든 변형, 동등한 구조 및 기능을 포함하도록 아주 넓게 해석해야 한다.

Claims (12)

  1. 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀(pull) 프린트 시스템으로서,
    상기 프린트 서버는,
    상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성수단;
    상기 프린터로부터 상기 통지를 수신하는 수신수단; 및
    상기 수신수단에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시수단을 구비하고,
    상기 프린터는,
    상기 클라이언트 단말이 상기 프로그램을 실행하는 것에 의해 행해진, 상기 인쇄 잡의 처리 및 상기 인쇄 잡의 처리 상황에 관련된 상기 통지의 실행의 지시를 접수하는 접수수단; 및
    상기 접수수단에서 접수한 상기 지시에서 지정된 시간마다 상기 프린트 서버의 지정된 송신처에 대하여, 상기 통지를 송신하는 통지수단을 구비하며,
    상기 프린트 서버의 상기 감시수단은, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 하는 풀 프린트 시스템.
  2. 제 1 항에 있어서,
    상기 프로그램은, 상기 인쇄 잡의 처리가 종료할 때에, 상기 인쇄 잡의 종료 통지를 상기 프린터에 송신시키기 위한 지시를 더 포함하고,
    상기 종료 통지를 송신시키기 위한 상기 지시에 응답하여, 상기 프린터의 상기 통지수단은, 상기 인쇄 잡의 처리가 종료할 때에, 상기 프린트 서버에 종료 통지를 송신하는 것을 특징으로 하는 풀 프린트 시스템.
  3. 제 2 항에 있어서,
    상기 수신수단이 상기 프린터의 상기 통지수단으로부터 상기 종료 통지를 수신하는 경우, 상기 수신수단은 상기 프린터에 의해 인쇄되게 지시된 다른 인쇄 잡이 존재하는가를 판정하고, 상기 다른 인쇄 잡이 없는 경우에는, 상기 종료 통지에 응답하여, 인쇄 잡의 처리 상황에 관련된 상기 통지를 종료시키는 지시를 포함하는 것을 특징으로 하는 풀 프린트 시스템.
  4. 제 3 항에 있어서,
    상기 통지수단은, 상기 프린트 서버로부터 상기 인쇄 잡의 처리 상황에 관련된 상기 통지를 종료시키는 지시를 접수하는 경우, 상기 프린트 서버에 보내진 상기 통지를 종료하는 것을 특징으로 하는 풀 프린트 시스템.
  5. 제 1 항에 있어서,
    상기 감시수단은, 감시된 인쇄 잡 중, 상기 프린터로부터 송신된 통지에 처리중의 잡으로서 특정되지 않은 인쇄 잡의 감시를 종료하는 것을 특징으로 하는 풀 프린트 시스템.
  6. 제 1 항에 있어서,
    상기 통지수단은, 상기 지시에 있어서 지정된 시간으로서, 상기 프린터가 지정한 간격으로 상기 인쇄 잡의 처리 상황에 관련된 상기 통지를 송신하는 것을 특징으로 하는 풀 프린트 시스템.
  7. 제 1 항에 있어서,
    상기 프로그램은, 상기 클라이언트 단말에 설치된 웹 브라우저에서 실행된 자바스크립트(JavaScript)로 기록된 것을 특징으로 하는 풀 프린트 시스템.
  8. 제 1 항에 있어서,
    상기 감시수단은, 감시가 종료한 인쇄 잡의 이력정보를 유지하고, 상기 인쇄 잡에 대한 감시를 종료했을 때의 상기 인쇄 잡의 상황을 상기 이력정보에 포함시키는 것을 특징으로 하는 풀 프린트 시스템.
  9. 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀 프린트 시스템에 있어서의 프린트 서버로서,
    상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성수단;
    상기 프린터로부터 상기 통지를 수신하는 수신수단; 및
    상기 수신수단에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시수단을 구비하고,
    상기 감시수단은, 상기 프린터로부터 이전의 통지를 수신한 후 소정시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 하는 프린트 서버.
  10. 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀 프린트 시스템에 있어서의 인쇄 잡 관리방법으로서,
    상기 프린트 서버에서,
    상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성단계;
    상기 프린터로부터 상기 통지를 수신하는 수신단계; 및
    상기 수신단계에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시단계를 포함하고,
    상기 프린터에서,
    상기 클라이언트 단말이 상기 프로그램을 실행하는 것에 의해 행해진, 상기 인쇄 잡의 처리 및 상기 인쇄 잡의 처리 상황에 관련된 상기 통지의 실행의 지시를 접수하는 접수단계; 및
    상기 접수단계에서 접수한 상기 지시에서 지정된 시간마다 상기 프린트 서버의 지정된 송신처에 대하여, 상기 통지를 송신하는 통지단계를 포함하며,
    상기 프린트 서버의 상기 감시단계에 있어서, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 하는 인쇄 잡 관리방법.
  11. 내부 네트워크에 배치된 클라이언트 단말 및 프린터와, 외부 네트워크에 배치된 프린트 서버를 포함하는 풀 프린트 시스템에 있어서의 프린트 서버의 제어 방법으로서,
    상기 클라이언트 단말로부터 상기 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성단계;
    상기 프린터로부터 상기 통지를 수신하는 수신단계; 및
    상기 수신단계에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시단계를 포함하고,
    상기 감시단계에서, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 하는 프린트 서버의 제어 방법.
  12. 클라이언트 단말로부터 프린터에 발행된 인쇄 요구에 응답하여, 인쇄 잡에 대한 처리 및 상기 인쇄 잡의 처리 상황과 관련되고 상기 프린트 서버에 보내지는 통지를 상기 프린터에 실행시키기 위해 발행된 지시를, 상기 클라이언트 단말이 실행함에 의해 실현하는 프로그램을 생성하고, 상기 프로그램을 상기 클라이언트 단말에 송신하는 생성수단;
    상기 프린터로부터 상기 통지를 수신하는 수신수단; 및
    상기 수신수단에서 수신한 상기 통지를 사용하여, 상기 프린터에 의해 실행되게 지시된 상기 인쇄 잡을 감시하는 감시수단으로서 컴퓨터를 기능시키는 프로그램을 격납하는 컴퓨터 판독 가능한 매체로서,
    상기 감시수단은, 상기 프린터로부터 이전의 통지를 수신한 후 상기 지시에서 지정된 시간내에 상기 프린터로부터 다음 통지가 수신되지 않은 경우에는, 상기 프린터에 의해 처리되게 지시된 상기 인쇄 잡의 감시를 종료하는 것을 특징으로 하는 컴퓨터 판독 가능한 매체.
KR1020120067790A 2011-06-29 2012-06-25 풀 프린트 시스템, 인쇄 잡 관리방법, 프린트 서버 및 그 제어 방법, 및 컴퓨터 판독 가능한 매체 Active KR101637894B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011144553A JP5885410B2 (ja) 2011-06-29 2011-06-29 プルプリントシステム、プリントサーバおよびその制御方法、並びにプログラム
JPJP-P-2011-144553 2011-06-29

Publications (2)

Publication Number Publication Date
KR20130002940A true KR20130002940A (ko) 2013-01-08
KR101637894B1 KR101637894B1 (ko) 2016-07-20

Family

ID=46245874

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120067790A Active KR101637894B1 (ko) 2011-06-29 2012-06-25 풀 프린트 시스템, 인쇄 잡 관리방법, 프린트 서버 및 그 제어 방법, 및 컴퓨터 판독 가능한 매체

Country Status (5)

Country Link
US (1) US20130003115A1 (ko)
EP (1) EP2541391B1 (ko)
JP (1) JP5885410B2 (ko)
KR (1) KR101637894B1 (ko)
CN (1) CN102915214B (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9052863B2 (en) * 2012-08-14 2015-06-09 Seiko Epson Corporation ePOS printing
US10185582B2 (en) * 2012-11-28 2019-01-22 Red Hat Israel, Ltd. Monitoring the progress of the processes executing in a virtualization environment
JP5338965B1 (ja) * 2012-11-28 2013-11-13 富士ゼロックス株式会社 印刷制御装置、画像形成システムおよびプログラム
JP6157260B2 (ja) * 2013-07-30 2017-07-05 キヤノン株式会社 画像形成装置
JP5838188B2 (ja) * 2013-08-23 2016-01-06 株式会社沖データ 情報処理装置及び情報処理システム
CN104636091B (zh) 2013-11-07 2018-06-15 精工爱普生株式会社 打印控制系统
JP5928742B2 (ja) * 2014-01-10 2016-06-01 コニカミノルタ株式会社 画像形成装置、情報端末装置、画像形成システム、画像形成装置管理制御方法、画像形成装置制御プログラムおよび情報端末装置制御プログラム
US9602679B2 (en) * 2014-02-27 2017-03-21 Lifeprint Llc Distributed printing social network
JP6141778B2 (ja) * 2014-02-27 2017-06-07 京セラドキュメントソリューションズ株式会社 イベント管理装置及びイベント管理方法
CN104898993B (zh) * 2014-03-05 2020-01-17 佳能(苏州)系统软件有限公司 信息处理装置、图像形成装置及系统的控制装置及方法
US11474767B1 (en) * 2014-05-28 2022-10-18 Amazon Technologies, Inc. Print from web services platform to local printer
JP6550692B2 (ja) 2014-06-18 2019-07-31 株式会社リコー サービス提供システム、ログ情報提供方法及びプログラム
JP6379983B2 (ja) * 2014-10-16 2018-08-29 コニカミノルタ株式会社 印刷システム、印刷方法、サーバー及びプログラム
JP6389429B2 (ja) 2014-12-19 2018-09-12 株式会社沖データ 画像形成装置及び画像形成システム
JP6459770B2 (ja) * 2015-05-20 2019-01-30 株式会社リコー 情報処理装置、機器、情報処理システム、情報処理方法、及びプログラム
CN105005455B (zh) * 2015-06-26 2017-12-08 丁四涛 智能终端的打印控制方法及装置
US10162583B2 (en) 2015-07-02 2018-12-25 Canon Information And Imaging Solutions, Inc. System and method for printing
JP6662024B2 (ja) * 2015-12-21 2020-03-11 セイコーエプソン株式会社 印刷装置およびその制御方法、並びにコンピュータープログラム
JP6520867B2 (ja) * 2016-08-30 2019-05-29 キヤノンマーケティングジャパン株式会社 画像処理システム、画像処理装置、制御方法、及びプログラム
JP6333447B2 (ja) * 2017-05-30 2018-05-30 キヤノン株式会社 画像形成装置
JP2019174999A (ja) * 2018-03-27 2019-10-10 キヤノン株式会社 印刷システム、印刷方法、画像形成装置およびその制御方法、及びプログラム
JP6563070B2 (ja) * 2018-04-25 2019-08-21 キヤノン株式会社 画像形成装置
JP2020088593A (ja) * 2018-11-26 2020-06-04 セイコーエプソン株式会社 電子機器、画像読取方法及び印刷処理方法
JP6864241B2 (ja) * 2019-04-26 2021-04-28 キヤノンマーケティングジャパン株式会社 画像処理システム、画像処理装置、制御方法、及びプログラム
US11330117B2 (en) * 2019-11-29 2022-05-10 Ricoh Company, Ltd. Information processing apparatus, information processing system, and information processing method for receiving an image displayed on an image display apparatus upon detecting a predetermined condition is satisfied
WO2022076954A1 (en) * 2020-10-08 2022-04-14 Hewlett-Packard Development Company, L.P. Pull-print servers
JP7552352B2 (ja) * 2020-12-25 2024-09-18 ブラザー工業株式会社 画像処理装置及び画像処理装置のためのコンピュータプログラム
US20220345540A1 (en) * 2021-04-26 2022-10-27 Kyocera Document Solutions Inc. Electronic apparatus executing service in response to command from front end apparatus and front end apparatus managing electronic apparatus

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004021692A (ja) * 2002-06-18 2004-01-22 Seiko Epson Corp 印刷完了監視システムおよび印刷完了の監視方法
JP2010191631A (ja) * 2009-02-17 2010-09-02 Canon Inc 画像形成装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4298034B2 (ja) * 1998-03-05 2009-07-15 キヤノン株式会社 印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体
US20030090707A1 (en) * 2001-11-13 2003-05-15 Shell Simpson Methods and systems for making booklets
JP4142361B2 (ja) * 2002-07-17 2008-09-03 東芝テック株式会社 機器管理システム、管理装置および被管理装置
JP4959912B2 (ja) * 2002-08-28 2012-06-27 オセ−テクノロジーズ・ベー・ヴエー 印刷ジョブの調整された同時印刷
JP2004171324A (ja) * 2002-11-21 2004-06-17 Seiko Epson Corp ジョブ管理装置
US7443523B2 (en) * 2002-11-22 2008-10-28 Xerox Corporation Printing to a client site from an application running on a remote server
JP4133392B2 (ja) * 2003-02-05 2008-08-13 シャープ株式会社 集線装置および外部機器、並びにこれらを備えた情報処理システム、情報処理システムの管理方法
JP2005109930A (ja) * 2003-09-30 2005-04-21 Fuji Photo Film Co Ltd 画像処理装置、画像処理プログラム、記録媒体、および画像処理方法
JP3790900B2 (ja) * 2003-09-30 2006-06-28 コニカミノルタビジネステクノロジーズ株式会社 印刷システム、印刷装置、印刷方法、印刷装置の制御方法、およびコンピュータプログラム
JP4428250B2 (ja) * 2005-02-17 2010-03-10 セイコーエプソン株式会社 ネットワークに接続された印刷装置の印刷進行状況監視制御
JP4372030B2 (ja) * 2005-03-02 2009-11-25 キヤノン株式会社 印刷装置、印刷装置の制御方法及びコンピュータプログラム
JP2006285840A (ja) * 2005-04-04 2006-10-19 Canon Inc 文書管理システム
JP4869031B2 (ja) * 2005-12-28 2012-02-01 キヤノン株式会社 印刷システム、サーバ装置及びジョブ制御方法
JP2007257481A (ja) 2006-03-24 2007-10-04 Canon Inc 印刷デバイス
JP2007276341A (ja) * 2006-04-10 2007-10-25 Canon Inc 通信装置
JP4868955B2 (ja) * 2006-06-22 2012-02-01 株式会社リコー 画像処理装置、情報処理装置、サーバ装置、表示制御システム、及び表示制御方法
JP2008123047A (ja) * 2006-11-08 2008-05-29 Ricoh Co Ltd 画像処理装置及びデータ合成出力方法
JP4999619B2 (ja) * 2007-09-26 2012-08-15 キヤノン株式会社 画像処理装置及び印刷要求方法
JP2009206788A (ja) * 2008-02-27 2009-09-10 Canon Inc 管理サーバ、画像形成装置、管理方法、プログラム
JP4805992B2 (ja) * 2008-09-30 2011-11-02 株式会社沖データ 画像処理装置
JP5324257B2 (ja) * 2009-02-27 2013-10-23 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP4835725B2 (ja) * 2009-05-29 2011-12-14 ブラザー工業株式会社 画像形成装置及び画像形成システム
JP2011028452A (ja) * 2009-07-23 2011-02-10 Canon Inc 情報処理装置、情報処理方法、及び情報処理装置を制御するプログラム
US8605311B2 (en) * 2009-08-12 2013-12-10 Ricoh Company, Ltd. Methods and systems for providing device specific print options to remote printing services
JP5573132B2 (ja) * 2009-12-02 2014-08-20 株式会社リコー 印刷システム、印刷装置、プログラム、および記憶媒体
US20110289484A1 (en) * 2010-05-19 2011-11-24 Also Energy Method and System for Script Processing for Web-Based Applications
JP5365659B2 (ja) * 2011-04-18 2013-12-11 コニカミノルタ株式会社 画像形成装置、アプリケーション制御方法、アプリケーション制御プログラム
JP5888880B2 (ja) * 2011-06-09 2016-03-22 キヤノン株式会社 印刷システム、サーバ装置、画像形成装置および印刷処理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004021692A (ja) * 2002-06-18 2004-01-22 Seiko Epson Corp 印刷完了監視システムおよび印刷完了の監視方法
JP2010191631A (ja) * 2009-02-17 2010-09-02 Canon Inc 画像形成装置

Also Published As

Publication number Publication date
CN102915214B (zh) 2016-12-21
JP2013012053A (ja) 2013-01-17
EP2541391A3 (en) 2013-10-30
EP2541391B1 (en) 2018-08-08
US20130003115A1 (en) 2013-01-03
EP2541391A2 (en) 2013-01-02
JP5885410B2 (ja) 2016-03-15
CN102915214A (zh) 2013-02-06
KR101637894B1 (ko) 2016-07-20

Similar Documents

Publication Publication Date Title
KR101637894B1 (ko) 풀 프린트 시스템, 인쇄 잡 관리방법, 프린트 서버 및 그 제어 방법, 및 컴퓨터 판독 가능한 매체
US8531711B2 (en) Print server, control method thereof, client terminal, printing system, and computer-readable medium
US8970879B2 (en) Printing system, printing method, and computer-readable medium for designating and executing printing via the internet
JP5791390B2 (ja) 印刷システム、プリントサーバ、印刷管理方法、およびプログラム
US8693018B2 (en) Printing system and print control method
US9417826B2 (en) Image forming apparatus with status control
US10333774B2 (en) Image forming apparatus that cooperates with management server, method of controlling image forming apparatus, and storage medium
JP5962698B2 (ja) 画像形成システム、サービス提供サーバー、情報処理端末、画像形成装置及びプログラム
JP2013225287A (ja) 情報処理システム、情報処理装置、情報処理方法、及び情報処理プログラム
EP1860547A2 (en) Remote stored print job retrieval
EP2615538B1 (en) Printing apparatus and printing system
US20120236359A1 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
US20110299122A1 (en) Image forming apparatus and system
JP2019064003A (ja) 画像形成装置及びその制御方法、並びにプログラム
JP2010186333A (ja) Webサーバ、処理方法、プログラム
US8873089B2 (en) Printing system, print management apparatus, print control method, and storage medium
JP2017219904A (ja) ネットワークデバイス及びその制御方法、プログラム
JP6277726B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
JP2015022682A (ja) 印刷システム、方法、及びプログラム
JP6188842B2 (ja) 印刷システム、サーバおよびその制御方法、並びにプログラム
JP6127586B2 (ja) 情報処理システムおよび情報処理方法
JP2017010199A (ja) 機器管理システム及び機器管理方法
JP2008269158A (ja) 画像形成装置及びドライバ自動インストール方法、並びに自動更新方法を実行するプログラム
JP2007158850A (ja) 画像処理装置、画像処理システムおよび画像処理方法
JP2016063491A (ja) 監視システム及び監視システムの制御方法

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20120625

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20130625

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20120625

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20140320

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20140924

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20140320

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

J201 Request for trial against refusal decision
PJ0201 Trial against decision of rejection

Patent event date: 20141027

Comment text: Request for Trial against Decision on Refusal

Patent event code: PJ02012R01D

Patent event date: 20140924

Comment text: Decision to Refuse Application

Patent event code: PJ02011S01I

Appeal kind category: Appeal against decision to decline refusal

Appeal identifier: 2014101006665

Request date: 20141027

J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20141027

Effective date: 20160321

PJ1301 Trial decision

Patent event code: PJ13011S01D

Patent event date: 20160321

Comment text: Trial Decision on Objection to Decision on Refusal

Appeal kind category: Appeal against decision to decline refusal

Request date: 20141027

Decision date: 20160321

Appeal identifier: 2014101006665

PS0901 Examination by remand of revocation
S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
PS0701 Decision of registration after remand of revocation

Patent event date: 20160418

Patent event code: PS07012S01D

Comment text: Decision to Grant Registration

Patent event date: 20160321

Patent event code: PS07011S01I

Comment text: Notice of Trial Decision (Remand of Revocation)

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20160704

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20160705

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20190703

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20190703

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20210628

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20220627

Start annual number: 7

End annual number: 7