JP7086767B2 - プリントサーバー、制御方法、およびそのプログラム - Google Patents

プリントサーバー、制御方法、およびそのプログラム Download PDF

Info

Publication number
JP7086767B2
JP7086767B2 JP2018133162A JP2018133162A JP7086767B2 JP 7086767 B2 JP7086767 B2 JP 7086767B2 JP 2018133162 A JP2018133162 A JP 2018133162A JP 2018133162 A JP2018133162 A JP 2018133162A JP 7086767 B2 JP7086767 B2 JP 7086767B2
Authority
JP
Japan
Prior art keywords
document
server
print
document information
acquired
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.)
Active
Application number
JP2018133162A
Other languages
English (en)
Other versions
JP2020013195A (ja
JP2020013195A5 (ja
Inventor
健一 白井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2018133162A priority Critical patent/JP7086767B2/ja
Priority to EP19179641.6A priority patent/EP3594800B1/en
Priority to US16/445,074 priority patent/US10846033B2/en
Priority to CN201910602143.2A priority patent/CN110716700B/zh
Publication of JP2020013195A publication Critical patent/JP2020013195A/ja
Publication of JP2020013195A5 publication Critical patent/JP2020013195A5/ja
Application granted granted Critical
Publication of JP7086767B2 publication Critical patent/JP7086767B2/ja
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
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • 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/1209Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
    • 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/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • 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/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • 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/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • 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/1224Client or server resources management
    • 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/1236Connection management
    • 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/1267Job repository, e.g. non-scheduled jobs, delay printing
    • 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
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Landscapes

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

Description

本発明は、非同期通信で通信を行うプリントサーバー、制御方法、およびそのプログラムに関する。
近年、インターネット上にサーバーを配置し、サーバーがクラウドサービスを提供するビジネスが展開されてきている。例えば、データをファイル形式に保存するストレージサービスや、データベース機能を提供するデータベースサービスなどである。また、印刷システムにおいても、プリントサーバーをインターネット上のプリントサービスとして提供する形態が求められてきている。
また、再利用性、保守性、柔軟性を向上せさせるため、クラウドサービスを小規模のサービス単位に細分化し、それを組み合わせてサービスを提供するマイクロサービスのアーキテクチャが主流となってきている。マイクロサービスアーキテクチャは、細分化されたサービスの独立性が高い(疎結合)ことが一つの重要な要素であり、それを実現するためにPub/Subメッセージングモデルが適用される。
Pub/Subメッセージングモデルは、メッセージを送信するパブリッシャーと、受信する側のサブスクライバーが中間に存在するトピック(名前付き論理チャネル)を介して情報のやり取りを行う。パブリッシャーは、受信する側を意識することなく情報を送信し、サブスクライバー側は自分の処理に必要な情報のトピックのみを受信するため、互いサービスを意識する必要が無い。そのため、パブリッシャーとサブスクライバーの結合度を低くすることができ、非同期通信を可能にしている。
特許文献1では、複数のサービス間が非同期通信を行い、システムの処理効率の低下を抑えながら連携する方法が述べられている。
特開2008-27344
しかしながら、クラウドサービスにおいて、非同期通信で情報のやり取りを行う場合、インターネット上の通信環境や遅延等のトラブルが発生する場合がある。特に、第三者提供のサービスを利用してメッセージの送受信を行う場合もそのサービスの障害等により、受信側でメッセージの受信が遅延する場合がある。
文書を管理する文書サービスと、印刷を管理する印刷サービスを想定した場合、文書が入稿されたことを印刷サービスは非同期通信で確認する。そこで遅延が発生すると、印刷サービス側が文書入稿済の情報を受信していない状況で印刷リクエストを受け付けてしまい、対象の文書を印刷できない虞がある。また、2つのサービスを同期させる形態を取った場合、印刷リクエストのたびに文書サービスに問い合わせを行うと、サービス呼び出しに関わるコストが増大し、印刷処理のパフォーマンスに大きく影響する。
そこで、本願発明の目的は、文書サービスと印刷サービスとが非同期で連携するシステムにおいて、非同期通信で遅延が発生した場合でも入稿された文書を印刷することを可能とする機能を提供することを目的とする。
本発明の一実施形態に係るプリントサーバーは、書情報を基に文書データを取得し、前記文書データを基に印刷データを作成し、前記印刷データをプリンターへ送信するプリントサーバーであって、入稿リクエストを受け付けたことで文書サーバーが生成した文書情報を、前記文書サーバーのAPI(Application Program Interface)を読み出すことなく、中継サービスを介することで間接的に取得する第1の取得手段と、クライアントから印刷リクエストを受信し、前記印刷リクエストから文書IDを特定し、前記文書IDを含む前記文書情報を前記第1の取得手段によって取得しているか否かを判定する判定手段と、前記判定手段により取得していないと判定された場合に、前記文書サーバーが提供する前記APIを呼び出して前記文書サーバーから前記文書IDに対応する前記文書情報を取得する第2の取得手段と、を有し、前記判定手段により取得していると判定された場合は、前記第2取得手段により前記文書情報の取得は行われないことを特徴とする。
文書サービスと印刷サービスとが非同期で連携するシステムにおいて、非同期通信で遅延が発生した場合でも入稿された文書を印刷することを可能とする機能を提供することが可能になる。
ネットワーク構成を示すブロック図 プリントサーバー、プリンターのハードウェア構成図 印刷システムのモジュール構成図 (a)文書サーバーのソフトウェア構成図(b)プリントサーバーのソフトウェア構成図 メッセージ送信処理の例 プリントサーバー、文書サーバーで管理するデータ (a)実施例1における文書サーバーが外部から入稿リクエストを受け付けた際の処理フロー(b)プリントサーバーが外部から印刷リクエストを受け付けた際の処理フロー (a)実施例2における文書サーバーが外部から入稿リクエストを受け付けた際の処理フロー(b)実施例2におけるプリントサーバーが印刷リスエストを受け付けた際に文書IDが指定されていなかった場合の処理フロー プリントサーバーが外部から印刷リクエストを受け付けた際に未印刷文書リストが遅延する可能性を考慮した場合の処理フロー
以下、本発明を実施するための形態について図面を用いて説明する。
[実施例1]
<ネットワーク構成>
図1は、本発明の実施形態に係る印刷システムのネットワーク構成を示す図である。図において、プリンター105、クライアント端末108はローカルネットワーク106を介して複数台接続されていることを想定している。プリンター105、クライアント端末108は、ローカルネットワーク106を介してインターネットワーク107にアクセスし、プリントサーバー101、文書サーバー102、ストレージサーバー103、認証サーバー104にアクセスすることができる。
プリンター105、クライアント端末108は有線または無線LANを介してネットワークに接続する。ネットワーク106~107は、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれである。またこれらの組み合わせにより実現される、いわゆる通信ネットワークである。ネットワーク106~107は、データの送受信が可能であればよい。そして、クライアント端末108からプリントサーバー101、プリンター105への通信機能、プリンター105からプリントサーバー101、文書サーバー102、ストレージサーバー103、認証サーバー104への通信機能は異なっていてもよい。
クライアント端末108は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、PDA(パーソナルデータアシスタント)等から成るが、プログラムの実行環境が内蔵された携帯電話であってもよい。クライアント端末108では、Webブラウザ(インターネットブラウザ、WWWブラウザ、World WiDe Webの利用に供するブラウザ)等のプログラムを実行する環境が内蔵されている。
プリントサーバー101は、あらかじめ文書サーバー102に入稿された文書を識別する情報と、出力先プリンター105を識別する情報を印刷リクエストと共にクライアント端末108のWebブラウザから受ける。そして、印刷指示を行うコマンドを含めたレスポンスをクライアント端末108のWebブラウザに返す。クライアント端末108のWebブラウザは、指定のプリンター105に対し受け取った印刷コマンドを発行する。プリンター105は、クライアント端末108のWebブラウザから印刷コマンドを受けると、ストレージサーバー103から印刷データを取得し、印刷を行う。なお、プリンター105でICカードを用いてプルプリントする場合、プリンター105から印刷リクエストを受ける場合もある。
実施例1では各装置が1台である形態を説明するが、各装置が複数台あってもよい。さらに、プリントサーバー101、文書サーバー102、ストレージサーバー103、認証サーバー104は複数台のサーバーを仮想化によって1台のサーバーとして機能させる形態であってもよい。
<プリントサーバー、文書サーバー、プリンターのハードウェア構成>
図2は、プリントサーバー101、文書サーバー102のハードウェア構成と、プリンター105のハードウェア構成を示す図である。特に断らない限り、本発明の機能が実行可能であるならば単体の機器であっても、複数の機器からなるシステムであっても、本発明が適用できることは言うまでもない。また、特に断らない限り、本発明の機能が実行可能であるならば、LAN、WAN等のネットワークを介して接続が為され、処理が行われるシステムであっても本発明を適用できることは言うまでもない。実施例1ではシステムバス219により各構成要素が接続されているものとして説明する。
220は情報処理装置の制御装置であるCPUであり、記憶装置224に格納されているプリントサーバーのアプリケーションプログラム、オペレーティングシステム等を実行する。また、CPU220はRAM222にプログラム実行に必要な情報、ファイル等を一時的に格納する制御を行う。また、CPU220はプリントサーバープログラムにおける印刷データへの変換処理等を実行する。
221は記憶手段であるROMであり、内部には基本I/Oプログラム等のプログラム、印刷データへのデータ変換の際に使用するフォントデータ、印刷処理、データ変換処理に必要な各種データを記憶する。222は一時記憶ユニットであるRAMであり、CPU220の主メモリやワークエリア等として機能する。224は外部記憶手段の一つで、大容量メモリとして機能する記憶装置であり、アプリケーションプログラム、OS等を格納している。223は、ネットワークインターフェースカード(NIC)であり、インターフェース223を介して外部装置とのデータのやり取りを行う。
プリンター105のハードウェアの各構成要素は、システムバス230に接続されている。209はプリンター105のコントローラであり、プリンターの制御系を司る機器である。231は装置全体の制御を行うCPUであり、システムバス230に接続される各種デバイスとのアクセスを統括的に制御する。この制御は、ROM232に記憶された制御プログラム等あるいはディスクコントローラ(DKC235)を介して接続された外部メモリ236に記憶された制御プログラムやリソースデータ(資源情報)等に基づく。233はCPU231の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
240は大容量メモリとして機能する外部記憶ユニットである。239は操作パネル(操作部)であり、画面を表示、または、画面を介したユーザーの操作指示を受け付ける。また、プリンター105の動作モード等の設定やプリンター105の動作状況の表示、印刷するコンテンツデータを指定する等の操作を行うためのボタンおよび液晶パネル等の表示部も配置される。234は、ネットワークインターフェースカード(NIC)であり、インターフェース234を介して外部装置とのデータのやり取りを行う。なお、本図で示したプリントエンジン238は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。237のラスタコントローラは、PDL言語である印刷データを画像データに変換するコントローラである。241の機器I/Fは、USB等で接続可能な外部機器との接続I/Fである。
<システム構成>
図3は、本発明の実施形態に係る印刷システムの構成図である。ここでは、印刷システムの構成図を用いて、各サーバー、プリンター、クライアント端末の動作について説明する。これらの動作は、各装置のメモリに保存されたプログラムをCPUが実行することにより実現される。
文書サーバー102は、他サービス、または他プログラムから投入される文書データの投入先を示すURLを作成し、他サービス、または他プログラムに返す。このURLはストレージサーバー103への文書データのアップロード先を示すURLである。他サービス、または他プログラムはそのURLに対し、文書データをストレージサーバー103にアップロードする。文書サーバー102は、アップロードされた旨を他サービス、または他プログラムから受け取ると入稿された文書データの印刷文書情報620をデータベース301に保存する。
図3において、データベース301はプリントサーバー101、文書サーバー102に夫々記載しているが、本実施例では一つのデータベースで論理的に区切られたデータベースを用いることを想定している。当然、物理的に別々のデータベースを使用してもよい。同時に文書サーバー102は、印刷文書情報620をメッセージとして送信する。このメッセージの送信方法に関しては後述するが、プリントサーバー101は、名前付き論理チャネルを介してメッセージを受信する。プリントサーバー101は、Webブラウザ302からの印刷リクエストを受けると、印刷リクエストとともに受け取る文書ID621に紐づく文書データをストレージサーバー103から取得し、取得した文書データを基に印刷データへの変換を行う。プリントサーバー101は、印刷データを作成し、ストレージサーバー103上のダウンロードURLを作成し、印刷データをストレージサーバー103にアップロードする。
認証サーバー104は、プリントサーバー101にアクセスするためのユーザー名、パスワード、認証トークン、認可トークンなどの認証情報を保持している。プリントサーバー101は、クライアント端末108内のWebブラウザ302からのリクエストに含まれる認証トークンを認証サーバー104に送り、トークンの正当性を検証する。このとき、Webブラウザ302からのリクエストに認証トークンが存在しない場合は、プリントサーバー101は、リクエストを認証サーバー104にリダイレクトさせる。
認証サーバー104は、Webブラウザ302にログイン画面500を返す。認証サーバー104は、Webブラウザ302に表示されたログイン画面500からのログインリクエストに含まれるユーザー名、パスワードと認証サーバー104で保持するユーザー名、パスワードとの照合により正当性の検証を行う。検証が成功すると、認証サーバー104は、ユーザーに紐づく認証トークンを発行し、このトークンとともにWebブラウザ302に対し、プリントサーバー101へのリダイレクトを行うレスポンスを送る。
Webブラウザ302は、認証トークンを含めたリクエストをプリントサーバー101に送り、プリントサーバー101からのレスポンスによりWeb画面を受信し表示を行う。認証サーバー104は、プリンター105に配備されるプルプリントアプリケーション303がプリントサーバー101にアクセスするために必要な認可トークンを発行する。また、認証サーバー104は、プルプリントアプリケーション303からプリントサーバー101にアクセスする場合にリクエストに含まれる認可トークンの正当性検証を行う。
プルプリントアプリケーション303は、認可トークンを含めたリクエストをプリントサーバー101に送り、ダウンロードURLを取得する。プルプリントアプリケーション303は、ダウンロードURLに従い、ストレージサーバー103から印刷データを取得し、印刷装置制御部304に印刷データを送り、印刷を行う。
<文書サーバーのメッセージ送信>
文書サーバー102のメッセージ送信処理について、図5を用いて説明する。本実施例では、文書サーバー102とプリントサーバー101は、API(Application Programing Interface)を用いた情報のやり取りと、名前付き論理チャネルを使用した非同期メッセージを用いた情報のやり取りを行う。
プリントサーバー101および文書サーバー102は互いのAPIを呼び出すことで、互いに相手が公開する機能を利用することが可能である。ただし、APIを呼び出すことで呼び出し先のサーバーの負荷になるため実施例1では後に説明するリカバリ処理を除き極力はAPIを呼び出さない作りとなっている。
文書サーバー102は、文書サーバー102が有するサービス以外の他サービス用に、名前付き論理チャネルを用意している。以降、名前付き論理チャネルのことをトピックと呼ぶ。実施例1では、文書サーバー102がクラウドサービスとして配置される際にトピック501も作成されることを想定しているが、文書サーバー102が必要に応じて動的に作成してもよい。また、実施例1においてトピックは第三者が提供するクラウドサービスを利用して作成することを想定している。トピックはクラウドサービス上で一意となる名前を持ち、その名前を用いて他サービス(本実施例ではプリントサーバー101)が購読の登録を行う。言うなれば、トピックとは仲介サービスであり、プリントサーバー101と文書サーバー102の非同期通信を実現するために必要な構成である。
トピック501に対して文書サーバー102が印刷文書情報620をメッセージとして送信すると、そのトピック501に対して購読の登録を行っているプリントサーバー101に対して通知が行われる。プリントサーバー101は受信したメッセージの情報をデータベース301に保持する。これにより、文書サーバー102、プリントサーバー101の非同期メッセージの送受信処理が実現できる。すなわち、プリントサーバー101と文書サーバー102は直接通信を行うのではなく、トピック501の機能を介して間接的に通信を行うので、各装置の状況を考慮することなくメッセージのやり取りが可能になる。
<トピックの通知>
トピックの通知処理について説明する。実施例1ではソフトウェアコンテナを利用した通知を想定している。ソフトウェアコンテナとは、隔離された空間毎にOS環境(必要なOS機能だけ)がプロセスとして実現される。503はソフトウェアコンテナを模式的に示した図である。503ように、物理マシン上の仮想マシンのOSからソフトウェアコンテナがプロセスとして起動し、あらかじめ登録されたコードを実行する。従来の仮想マシンのようにOS全体を起動するのではなく、ホストOS上でプロセスが起動するだけの処理となるため、非常に高速に起動する特徴がある。ただし、ソフトウェアコンテナを利用する場合、初回にコードをロードするためにコストがかかり、スケールアウトやソフトウェアコンテナ自体の障害等でソフトウェアコンテナの再作成が発生する場合に実行が遅延する可能性がある。
実施例1では、プリントサーバー101がトピック501の購読登録を行う際、プリントサーバー101のソフトウェアコンテナ502を登録する。文書サーバー102がトピック501に対してメッセージを送信すると、トピック501からソフトウェアコンテナ502が呼び出される。ソフトウェアコンテナ502は呼び出されると、所定のコードが実行され、受信したメッセージを確認し、プリントサーバー101に対して受信した内容を通知する。なお、トピック501はVM上で動作するOSの上で動作するソフトウェア機能であるものとする。トピック501およびソフトウェアコンテナ502は、夫々、文書サーバー102およびプリントサーバー101とは異なる装置で実現さているものとして実施例1では説明する。しかし、同じ装置内であっても良い。
<文書サーバーのソフトウェア構成>
図4aは、本発明の実施形態に係る文書サーバー102のソフトウェア構成図である。なお文書サーバー102の各ソフトウェアモジュールは図2aで示した記憶装置224に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。ここでは、文書サーバー102が、外部リクエストを受信した際の文書サーバー102の各ソフトウェアモジュールの動作について説明する。
文書サーバー102は、外部リクエストを受け付けるWebサーバー401と、文書情報の管理を行う文書制御サーバー402から構成される。それぞれ独立したプログラムであり、それぞれ別々の情報処理装置に配置することも可能である。これらのプログラムはそれぞれネットワークに繋がった情報処理装置に配置し、それぞれのプログラム間で通信を行う。また、それぞれのサーバーは単体構成または、冗長構成をとるように配備されるので、1つのサーバーに対し複数の情報処理装置で構成されることもある。この構成は後述のプリントサーバー101ソフトウェア構成も同様である。
Webサーバー401は、他サービス、または他プログラム、またはプリンター105または、Webブラウザ302から文書入稿リクエストを受ける。各クライアントからリクエスト受付部403がリクエスト受けると、認証サーバー問い合わせ部404が認証サーバー104に対しトークンの正当性検証リクエストを送る。トークンの正当性が確認されると、リクエスト受付部403は、文書制御サーバー402にクライアントからのリクエストを送る。
文書制御サーバー402は、文書データの入稿リクエストを受けると文書管理部405で文書情報600を作成し、データベース301に保存する。図6に文書情報600を含む各情報を示す。また、文書制御サーバー402は、メッセージ送信部406で文書情報600を前述のトピック501に対して送信する。この時点でプリントサーバー101はメッセージ受信部417を介してメッセージを受信し、後述する印刷文書情報620として保持する。
文書情報600は、文書データを識別する文書ID601、文書名602、認証トークンに紐づくユーザー名603とストレージサーバー103に文書をアップロードするための文書URL604、ステータス605から構成される。文書URL604には、文書ID601が含まれる。また、ステータス605は「受信中」「未印刷」「待機中」「印刷待ち」「印刷中」「正常終了」「エラー終了」「不明終了」の各ステータスがある。
文書制御サーバー402は、文書情報600のステータス605を「受信中」に変え、文書URL604をWebサーバー401に返す。そしてWebサーバー401がリクエスト元の他サービス、または他プログラムに対し文書URL604を返す。他サービス、または他プログラムはストレージサーバー103に文書データをアップロード完了すると、文書サーバー102にアップロード完了通知を送る。文書サーバー102はこの通知をWebサーバー401で受けると文書制御サーバー402は、文書情報600のステータス605を「待機中」に変える。
<プリントサーバーのソフトウェア構成>
図4bは、本発明の実施形態に係るプリントサーバー101のソフトウェア構成図である。なおプリントサーバー101の各ソフトウェアモジュールは図2aで示した記憶装置224に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。
プリントサーバー101は、外部リクエストを受け付けるWebサーバー411と、印刷ジョブ、印刷処理の制御を行う印刷制御サーバー412、文書データを印刷データに変換する変換サーバー413から構成される。
Webサーバー411は、他サービス、または他プログラム、またはプリンター105または、Webブラウザ302から印刷リクエスト、印刷データ取得リクエストを受ける。クライアントとなる各装置からリクエスト受付部414が各リクエストを受けると、認証サーバー問い合わせ部415が認証サーバー104に対しトークンの正当性検証リクエストを送る。トークンの正当性が確認されると、リクエスト受付部414は、印刷制御サーバー412にクライアントからのリクエストを送る。
印刷制御サーバー412が印刷リクエストを受け取ると、印刷ジョブ管理部416は印刷リクエストに対するジョブ情報610を作成し、データベース301に保存する。印刷リクエストには、印刷を行う文書ID612が含まれる。この文書ID612は、印刷文書情報620の文書ID621と同じであり、文書サーバー102からメッセージ通知され事前に保持している情報である。印刷文書情報620には文書URL622と文書入稿を受け付けた受付日時623も含まれる。
印刷ジョブ管理部416が作成するジョブ情報610は、印刷ジョブを識別するジョブID611と、認証トークンに紐づくユーザー名613と、印刷の受付日時614、変換ステータス615から成る。印刷ジョブ管理部416は、変換サーバー413に対し印刷データへの変換を指示する。
印刷制御サーバー412から印刷データ変換指示を受けると変換サーバー413の印刷データ管理部418は、文書URL622に従い、ストレージサーバー103から文書データをダウンロードする。そして、データ変換部419は、文書データを印刷データに変換し、ストレージサーバー103にアップロードする。
<メッセージ遅延時のリカバリ処理>
上記説明に加え、文書サーバー102からの入稿通知のメッセージが遅延した際のプリントサーバー101のリカバリ方法に関してフローチャート図7を用いて説明する。なお、前述の図4で説明しているため、一部の処理については簡単に説明する。
図7(a)は、文書サーバー102が外部から入稿リクエストを受け付けた際のフローチャートである。S701において、文書サーバー102は文書入稿リクエストを外部より受け付けると、文書管理部405で文書情報600を作成し、データベース301に保存する。S702において、メッセージ送信部406は文書情報600を前述のトピック501に対して送信する。S704において、プリントサーバー101のメッセージ受信部417は文書サーバー102からの文書情報600を受信する。S705において、印刷ジョブ管理部416は文書情報600をもとに印刷文書情報620を作成し、データベース301に保存する。ここで印刷文書情報620は、文書情報600そのものではなく、プリントサーバー101が印刷処理を行うために必要な情報のみを文書情報600から取得し保持する。
S703において、文書サーバー102は外部から文書のアップロード通知を受信するまで待機し、受信した時点で文書入稿処理を完了する。なお、フローチャートには全て図示していないが、実施例1において、文書情報600のステータス605が変更するたびにメッセージ送信部406によりトピックに対して文書情報600が送信される。
図7(b)はプリントサーバー101が外部から印刷リクエストを受け付けた際のフローチャートである。S706において、印刷制御サーバー412が印刷リクエストを受け取ると、印刷ジョブ管理部416は印刷リクエストに対するジョブ情報610を作成し、データベース301に保存する。
S707において印刷ジョブ管理部416は、印刷リクエストに含まれる文書ID612が印刷文書情報620に存在するか確認する。S708において、印刷ジョブ管理部416は、印刷文書情報620に文書ID612が存在した場合はS710の処理を行う。存在しない場合はS709の処理を行う。なお、印刷文書情報620の文書ID612を参照する形態を説明したが、受信した文書情報600を保存しているならばそれを参照しても良い。いずれにせよ、ここでの判定とは、印刷リクエストで指定された文書ID612を含む文書情報600を取得したことがあるか否かの判定となる。
S709において、印刷ジョブ管理部416は、文書サーバー102のAPIを呼び出し、文書ID612に対応する文書情報600を取得し、印刷文書情報620として保持する。S710において、印刷ジョブ管理部416は、印刷文書情報620を用いて変換サーバー413に対して印刷データへの変換への指示を行う。
以上の処理により、他サービスから文書入稿の非同期メッセージ通知が遅延した場合でも、受信側で遅延していることを判断し、その場合にのみ文書情報を取得することができる。これにより呼び出し非同期通信で遅延が発生した場合でも他サービスのAPI呼び出しを極力抑え、印刷処理を継続することが可能となる。
[実施例2]
<メッセージ遅延時のリカバリ処理(文書ID指定が無い場合)>
実施例1では文書サーバー102からの入稿通知のメッセージが遅延した際のプリントサーバー101の処理に関して説明した。実施例1の方法は、印刷リクエストに文書ID612が指定されていた場合には通知が遅延していることを検知しリカバリ可能であるが、文書ID612が指定されていない場合にはリカバリできない。
想定されるユースケースは、プリンター105でICカードを用いてプルプリントする際、ユーザーが文書を指定せずに、未印刷のものを全て一括で印刷するような場合が考えられる。このような場合は、ユーザーの情報のみで印刷リクエストを処理する必要があるが、プリントサーバー101だけでは全ての入稿の通知が届いているか判断することができない。例えば文書サーバー102には3文書入稿されていて、プリントサーバー101には2文書分しかメッセージ通知がされていない場合は、プリントサーバー101は2文書印刷するのみである。そうするとユーザーの所望する印刷結果を得ることができない。
以下、文書ID612が指定されない印刷リクエストでもプリントサーバー101でメッセージが遅延していることを検知する方法を説明する。なお、図中の番号および名称は特に断らない限り実施例1と同様である。
<未印刷リストの送信>
図8(a)は、文書サーバー102が外部から入稿リクエストを受け付けた際のフローチャートである。S701~S704は実施例1と同様であるため、説明は省略する。S801において、文書管理部405は文書情報600のユーザー名603をもとに未印刷文書リストを作成する。すでに存在する場合は対象の文書ID612をリストに追加する。特に図示はしないが、未印刷文書リストは文書ID612の情報だけで構成されるリストである。S802において、メッセージ送信部406は未印刷文書リストを前述のトピックに対して送信する。S803において、プリントサーバー101のメッセージ受信部417は受信した未印刷リストをデータベース301に保存する。
図8(b)はプリントサーバー101が印刷リスエストを受け付けた際に文書ID612が指定されていなかった場合の処理を示すフローチャートである。S706~S710の処理は実施例1と同様であるため説明は省略する。
S804において、印刷ジョブ管理部416は印刷リスエストに文書ID612が指定されているかどうかを確認する。S804において、印刷リクエストに文書ID612が指定されていた場合はS707の処理を行い、文書ID612が指定されていなかった場合はS805の処理を行う。
S805において、印刷ジョブ管理部416は印刷リクエストしたユーザー名613をもとに未印刷文書リストを特定する。S806において、印刷ジョブ管理部416は、未印刷文書リストに記載されている全ての文書ID612に対し、文書ID612で特定される印刷文書情報620が存在するか確認する。比較の結果、未印刷文書リストには文書ID612が記載されているが印刷文書情報620が存在しない場合、S708にて文書情報がないと判断されることになり、S709の処理が実行される。以下、実施例1と同じである。
以上の処理により、印刷対象の文書を特定できない場合でも、非同期メッセージの遅延が発生しているかどうか検知することが可能となり、ユーザーが所望する印刷物を出力することが可能となる。
[実施例3]
実施例2では文書ID612が指定されない印刷リクエストでもプリントサーバー101でメッセージが遅延していることを検知する方法を説明した。しかしながら、実施例2における未印刷文書リストも非同期メッセージであるため、ネットワークなどの状況により遅延することが想定される。以下、未印刷文書リストが遅延した場合でも通知が遅延していることを検知する方法を説明する。なお、図中の番号および名称は特に断らない限り実施例1および2と同様である。
<メッセージ遅延時のリカバリ処理(未印刷文書リストの遅延)>
図9は、プリントサーバー101が外部から印刷リクエストを受け付けた際に未印刷文書リストが遅延する可能性を考慮した場合の処理を示すフローチャートである。S706~S710および、S804~S806の処理は実施例1、実施例2と同様であるため説明は省略する。
S901において、印刷ジョブ管理部416は印刷リクエストしたユーザーの未印刷リストが存在するかどうか確認する。S901で未印刷文書リストが存在しない場合はS902において、印刷ジョブ管理部416は文書サーバー102のAPIを呼び出し、未印刷文書リストの取得を行う。
S901において未印刷文書リストが存在した場合は、実施例2のS805と同様に印刷ジョブ管理部416は印刷リクエストしたユーザー名613をもとに未印刷文書リストを特定する。S904において、印刷ジョブ管理部416は、メッセージ受信部417に対し、新しいメッセージが来ているかどうか確認を行う。S905において、印刷ジョブ管理部416は、新規文書通知、すなわち新しい文書情報があった場合はS906の処理を行う。
S906において、印刷ジョブ管理部416は、印刷の受付日時614と、新規文書通知で受け付けた文書情報の受付日時でもある印刷文書情報620の受付日時623との比較を行う。しかし、文書情報の受付日時であっても良いし、印刷文書情報620の受付日時623は実質文書情報を受け付けた受付日時とも言える。S907において、印刷ジョブ管理部416は印刷の受付日時614より受付日時623が遅ければ、印刷リクエストよりも後に受信した文書であると判断する。
印刷の受付日時614より受付日時623が早ければ、印刷リクエストよりも先に入稿された文書であると判断し、未印刷文書リストの通知が遅れている可能性があるため最新の未印刷文書リストを文書サーバー102より取得する。
以上の処理により、ユーザー毎の未印刷リストの非同期メッセージが遅延した場合でも、遅延していることを検知し、ユーザーが印刷リクエストしたタイミングの印刷結果を出力することが可能となる。
[その他の実施例]
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
101 プリントサーバー
102 文書サーバー
405 文書管理部
406 メッセージ送信部
416 印刷ジョブ管理部
417 メッセージ受信部
600 文書情報
610 ジョブ情報
620 印刷文書情報

Claims (10)

  1. 書情報を基に文書データを取得し、前記文書データを基に印刷データを作成し、前記印刷データをプリンターへ送信するプリントサーバーであって、
    入稿リクエストを受け付けたことで文書サーバーが生成した文書情報を、前記文書サーバーのAPI(Application Program Interface)を読み出すことなく、仲介サービスを介することで間接的に取得する第1の取得手段と、
    クライアントから印刷リクエストを受信し、前記印刷リクエストから文書IDを特定し、前記文書IDを含む前記文書情報を前記第1の取得手段によって取得しているか否かを判定する判定手段と、
    前記判定手段により取得していないと判定された場合に、前記文書サーバーが提供する前記APIを呼び出して前記文書サーバーから前記文書IDに対応する前記文書情報を取得する第2の取得手段と、を有し、
    前記判定手段により取得していると判定された場合は、前記第2の取得手段により前記文書情報の取得は行われないことを特徴とするプリントサーバー。
  2. 前記プリントサーバーは、前記仲介サービスに対しソフトウェアコンテナを購読登録し、前記仲介サービスから呼び出された前記ソフトウェアコンテナから前記文書情報を取得することを特徴とする請求項1に記載のプリントサーバー。
  3. 前記ソフトウェアコンテナは、物理マシン上の仮想マシンのOS(Operating System)上で起動するプロセスであることを特徴とする請求項2に記載のプリントサーバー。
  4. 前記判定手段による判定とは、取得した前記文書情報を基に作成した印刷文書情報に前記文書IDが含まれているか否かの確認であることを特徴とする請求項1乃至3の何れか1項に記載のプリントサーバー。
  5. 前記文書情報の他に未印刷リストを前記仲介サービスを介して非同期で受信し、
    前記第2の取得手段は、前記判定手段により前記未印刷リストに記載された文書IDに対応する前記文書情報を取得していないと判定されたことに応じて、前記文書サーバーが提供する前記APIを呼び出して、前記未印刷リストに記載された文書IDに対応する文書情報であり、取得できていない前記文書情報を取得することを特徴とする請求項1乃至4の何れか1項に記載のプリントサーバー。
  6. 前記プリントサーバーは、前記クライアントから文書IDを含まない印刷リクエストを受信した場合に前記未印刷リストを取得することを特徴とする請求項5に記載のプリントサーバー。
  7. 前記第2の取得手段は、前記判定手段により前記未印刷リストを取得していないと判定されたことに応じて、前記文書サーバーへ問い合わせを行い取得できていない前記未印刷リストを取得することを特徴とする請求項5または6に記載のプリントサーバー。
  8. 前記印刷リクエストの受付日時と新しく取得した文書情報の受付日時を比較する比較手段を有し、
    前記第2の取得手段は、前記印刷リクエストの受付日時より新しく取得した文書情報の受付日時が早い場合、前記文書サーバーへ問い合わせを行い最新の前記未印刷リストを取得することを特徴とする請求項7に記載のプリントサーバー。
  9. 書情報を基に文書データを取得し、前記文書データを基に印刷データを作成し、前記印刷データをプリンターへ送信するプリントサーバーの制御方法であって、
    入稿リクエストを受け付けたことで文書サーバーが生成した文書情報を、前記文書サーバーのAPI(Application Program Interface)を読み出すことなく、中継サービスを介することで間接的に取得する第1の取得ステップと、
    クライアントから印刷リクエストを受信し、前記印刷リクエストから文書IDを特定し、前記文書IDを含む前記文書情報を取得しているか否かを判定する判定ステップと、
    前記判定ステップにおいて取得していないと判定された場合に、前記文書サーバーが提供する前記APIを呼び出して前記文書サーバーから前記文書情報を取得する第2の取得ステップと、を含み、
    前記判定ステップにより取得していると判定された場合は、前記第2の取得ステップによる前記文書情報の取得は行われないことを特徴とする制御方法
  10. 書情報を基に文書データを取得し、前記文書データを基に印刷データを作成し、前記印刷データをプリンターへ送信するプリントサーバーで実行されるプログラムであって、
    入稿リクエストを受け付けたことで文書サーバーが生成した文書情報を、前記文書サーバーのAPI(Application Program Interface)を読み出すことなく、中継サービスを介することで間接的に取得する第1の取得ステップと、
    クライアントから印刷リクエストを受信し、前記印刷リクエストから文書IDを特定し、前記文書IDを含む前記文書情報を取得しているか否かを判定する判定ステップと、
    前記判定ステップにおいて取得していないと判定された場合に、前記文書サーバーが提供する前記APIを呼び出して前記文書サーバーから前記文書情報を取得する第2の取得ステップと、を含み、
    前記判定ステップにより取得していると判定された場合、前記第2の取得ステップによる前記文書情報の取得は行われないことを特徴とするプログラム。
JP2018133162A 2018-07-13 2018-07-13 プリントサーバー、制御方法、およびそのプログラム Active JP7086767B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018133162A JP7086767B2 (ja) 2018-07-13 2018-07-13 プリントサーバー、制御方法、およびそのプログラム
EP19179641.6A EP3594800B1 (en) 2018-07-13 2019-06-12 Print server, control method, and program
US16/445,074 US10846033B2 (en) 2018-07-13 2019-06-18 Print server, control method, and storage medium
CN201910602143.2A CN110716700B (zh) 2018-07-13 2019-07-05 打印服务器、控制方法和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018133162A JP7086767B2 (ja) 2018-07-13 2018-07-13 プリントサーバー、制御方法、およびそのプログラム

Publications (3)

Publication Number Publication Date
JP2020013195A JP2020013195A (ja) 2020-01-23
JP2020013195A5 JP2020013195A5 (ja) 2021-08-12
JP7086767B2 true JP7086767B2 (ja) 2022-06-20

Family

ID=66951777

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018133162A Active JP7086767B2 (ja) 2018-07-13 2018-07-13 プリントサーバー、制御方法、およびそのプログラム

Country Status (4)

Country Link
US (1) US10846033B2 (ja)
EP (1) EP3594800B1 (ja)
JP (1) JP7086767B2 (ja)
CN (1) CN110716700B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7433940B2 (ja) * 2020-01-31 2024-02-20 キヤノン株式会社 情報処理装置、印刷装置および当該情報処理装置の制御方法、プログラム
JP2021170173A (ja) * 2020-04-14 2021-10-28 キヤノン株式会社 画像形成装置、その制御方法、及びプログラム
CN112130783B (zh) * 2020-09-23 2024-03-01 上海汉图科技有限公司 文件打印方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005050045A (ja) 2003-07-31 2005-02-24 Canon Inc 帳票データ作成装置及び方法
JP2011138395A (ja) 2009-12-28 2011-07-14 Canon Inc サーバ装置及び端末装置及び印刷システムと印刷システムのデータ変換方法
JP2011170766A (ja) 2010-02-22 2011-09-01 Canon Inc ネットワークシステム、ネットワークシステムの制御方法、及び、プログラム
JP2016175330A (ja) 2015-03-20 2016-10-06 富士ゼロックス株式会社 画像形成装置、画像処理システム及び方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08123699A (ja) * 1994-10-26 1996-05-17 Hitachi Ltd 並行処理方法、並行処理システム及び並行処理用プログラムの変換ツール
CN100549936C (zh) * 2006-04-24 2009-10-14 株式会社理光 打印系统
JP2008027344A (ja) 2006-07-25 2008-02-07 Nec Access Technica Ltd オブジェクト間の非同期メッセージ管理方式および非同期メッセージ管理方法
JP5730082B2 (ja) * 2011-03-08 2015-06-03 キヤノン株式会社 プリントサーバ、印刷システム、制御方法、およびプログラム。
JP5800579B2 (ja) * 2011-05-31 2015-10-28 キヤノン株式会社 情報処理装置、印刷制御方法及びコンピュータプログラム
JP2014142735A (ja) * 2013-01-23 2014-08-07 Canon Inc 印刷システム、方法、及びプログラム
JP6272117B2 (ja) * 2014-04-14 2018-01-31 キヤノン株式会社 印刷システム、印刷サーバー及び印刷制御方法とプログラム
JP5768922B1 (ja) * 2014-09-24 2015-08-26 富士ゼロックス株式会社 文書処理システム、プログラム、及び文書処理装置
JP6537390B2 (ja) * 2015-07-30 2019-07-03 キヤノン株式会社 画像形成装置、制御方法、およびプログラム
JP6817751B2 (ja) * 2016-09-07 2021-01-20 キヤノン株式会社 情報処理システムその制御方法、印刷システム及びプログラム
JP6825303B2 (ja) * 2016-10-27 2021-02-03 富士ゼロックス株式会社 情報処理装置およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005050045A (ja) 2003-07-31 2005-02-24 Canon Inc 帳票データ作成装置及び方法
JP2011138395A (ja) 2009-12-28 2011-07-14 Canon Inc サーバ装置及び端末装置及び印刷システムと印刷システムのデータ変換方法
JP2011170766A (ja) 2010-02-22 2011-09-01 Canon Inc ネットワークシステム、ネットワークシステムの制御方法、及び、プログラム
JP2016175330A (ja) 2015-03-20 2016-10-06 富士ゼロックス株式会社 画像形成装置、画像処理システム及び方法

Also Published As

Publication number Publication date
EP3594800A1 (en) 2020-01-15
CN110716700B (zh) 2023-06-27
US20200019359A1 (en) 2020-01-16
JP2020013195A (ja) 2020-01-23
US10846033B2 (en) 2020-11-24
EP3594800B1 (en) 2022-08-31
CN110716700A (zh) 2020-01-21

Similar Documents

Publication Publication Date Title
US10802779B2 (en) Print processing system and method having print server converts document data into print data and to store the print data into plural storage servers for printing at image processing apparatus
US9798504B2 (en) Image forming apparatus, control method, and storage medium
US9230078B2 (en) Authentication system, control method thereof, service provision device, and storage medium
US9128642B2 (en) System and control method
JP5602592B2 (ja) ネットワークシステム、サーバ、ログ登録方法、及び、プログラム
US8937730B2 (en) System, image forming apparatus, server, and control method thereof
US20220317951A1 (en) Server system
JP5791390B2 (ja) 印刷システム、プリントサーバ、印刷管理方法、およびプログラム
JP2012098816A (ja) 情報処理装置、その情報処理装置における印刷データ処理方法およびプログラム
JP7086767B2 (ja) プリントサーバー、制御方法、およびそのプログラム
US8717600B2 (en) Network system, network system control method, and storage medium
US10291815B2 (en) Information processing apparatus capable of communicating with any of one or more servers according to a first protocol and a second protocol, information processing system including the information processing apparatus, and a method performed by the information processing apparatus
JP6817751B2 (ja) 情報処理システムその制御方法、印刷システム及びプログラム
JP2008182699A (ja) ドキュメント処理システムおよび方法
JP2024007173A (ja) 印刷サービスを提供するためのシステム及び方法
JP2019185618A (ja) 印刷システムおよび印刷管理装置および制御方法
JP2015022682A (ja) 印刷システム、方法、及びプログラム
JP6127586B2 (ja) 情報処理システムおよび情報処理方法
JP2014142735A (ja) 印刷システム、方法、及びプログラム
JP2020038517A (ja) 情報処理装置およびプログラム
JP2015005148A (ja) 印刷システム、方法、及びプログラム
US20240078280A1 (en) Web browsing system, communication terminal, and control method thereof
CN117850709A (zh) 信息处理装置、打印控制方法、存储介质和打印系统
JP2006085614A (ja) 画像形成システムおよび画像形成装置並びにこれを利用したデータ転送方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210705

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220608

R151 Written notification of patent or utility model registration

Ref document number: 7086767

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151