JP2024007761A - ネットワークシステムおよびサーバーの切り替え方法 - Google Patents

ネットワークシステムおよびサーバーの切り替え方法 Download PDF

Info

Publication number
JP2024007761A
JP2024007761A JP2022109064A JP2022109064A JP2024007761A JP 2024007761 A JP2024007761 A JP 2024007761A JP 2022109064 A JP2022109064 A JP 2022109064A JP 2022109064 A JP2022109064 A JP 2022109064A JP 2024007761 A JP2024007761 A JP 2024007761A
Authority
JP
Japan
Prior art keywords
server
printer
management server
network system
connection information
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.)
Pending
Application number
JP2022109064A
Other languages
English (en)
Inventor
久稔 山添
Hisatoshi Yamazoe
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 JP2022109064A priority Critical patent/JP2024007761A/ja
Priority to US18/346,998 priority patent/US20240015227A1/en
Publication of JP2024007761A publication Critical patent/JP2024007761A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】クライアント装置に関するサーバー間のデータ移行を、クライアント装置の状態に関わらず、かつ、データ移行中もサービス提供を継続しながら行う。【解決手段】プリンタは、保存した接続情報を用いて接続した管理サーバー200(第1のサーバ)からデータを取得する。管理サーバー300(第2のサーバー)は、プリンタから登録要求と共にサーバー切り替えイベントを受信すると、プリンタが登録されている第1のサーバーに対して、第1のサーバーに接続するための第1接続情報の取得を要求する。第1のサーバーは、プリンタに関する情報の第2のサーバーへの移行を開始し、第1接続情報を前記第2のサーバーへ送信する。第2のサーバーは、第1のサーバーから取得した第1接続情報をプリンタに送信する。いずれかのサーバーは、プリンタに関するデータの移行が所定の段階に達すると、第2のサーバーに接続するための第2接続情報をプリンタに送信する。【選択図】図8

Description

本発明は、プリンタとネットワークを介して接続し、接続されたプリンタの管理や、ジョブの通知を行うネットワークシステムおよびサーバーの切り替え方法に関する。
「Internet of Things」(以降、IoTと称する)とクラウドサービスの発展および普及によって、インターネットを通じてあらゆる「モノ」からデータを収集することが以前より容易になってきた。画像形成装置も多機能化が進み、Multi Function Printer(以降、MFPと称する)と呼ばれる複合機もクライアント装置として利用されている。
昨今、個人情報・機密情報保護の観点からデータを送信するクライアント装置とデータを受信するサーバーの物理的な国や地域(以降、リージョンと呼称する)を規定する法律が制定されてきている。クライアント装置も、過去に接続したリージョンとは異なるリージョンのサーバーに接続しようとしたときには接続設定を解除したりすることで、誤ったリージョンにデータが流出しないような対応がとられる。
サーバーのリージョンは年々追加される傾向にあり、どうしてもサービスの運用途中でサーバーのリージョンを変更する必要性が生じる場合がある。一般的にIoTシステムにおいて、クライアント装置の設定はサーバー側で管理及び変更を行うことが可能である。従来、クライアント装置が接続するサーバーの切り替えが発生した場合にその設定をクライアント装置に通知することで、クライアント装置が適切なリージョンのサーバーにデータを送信することを可能とする技術が提案されている(例えば、特許文献1参照)。
特開2013-168180号公報
特許文献1に記載の発明は、サーバーの切り替えが発生した際に変更前のサーバーと変更後のサーバー側との間でクライアント装置のデータをやり取りさせることで、クライアント装置が送信先の変更を意識する必要を無くしている。クライアント装置はサーバーが上述した処理を実行した後、変更後のサーバーから接続設定を受信することで初めてサーバーの送信先の変更を知ることになる。
しかしながら、特許文献1に記載の発明では、接続先変更の接続設定を受信する前にクライアント装置から変更前のサーバーに対して接続があると、変更後のサーバーに移行されたクライアント情報の不整合が発生し、正常に動作しなくなってしまうことがある。
このような課題への解決方法として、データ移行中はクライアントデバイスからの接続をブロックして不整合の発生を防止する方法が考えられる。しかし、例えばクライアント装置がプリンタの場合、データ移行中はサーバーを介して提供されるクラウドサービス(例えばクラウドプリントサービス)が受けられなくなってしまう。
本発明は上記従来例に鑑みて成されたもので、クライアントに関するサーバー間のデータ移行を、クライアント装置の状態に関わらず、かつ、データ移行中もクライアント装置に対するサービス提供を継続しながら行うことを可能とすることを目的とする。
上述のような課題を解決するため、本発明では以下の構成を有する。本発明の一態様によれば、デバイスと第1のサーバーと第2のサーバーとを含み、前記デバイスは、保存した接続情報を用いて接続したサーバーからデータを取得するネットワークシステムであって、
前記第2のサーバーは、前記デバイスから登録要求と共にサーバー切り替えイベントを受信すると、前記デバイスが登録されている前記第1のサーバーに対して、前記デバイスが前記第1のサーバーに接続するための第1の接続情報の取得を要求し、
前記第1のサーバーは、
前記第1の接続情報の要求に応じて、前記第1の接続情報を有していれば、前記デバイスに関するデータの前記第2のサーバーへの移行を開始し、
前記第1の接続情報を前記第2のサーバーへと送信し、
前記第2のサーバーは、前記第1のサーバーから取得した前記第1の接続情報を前記デバイスに送信し、
前記第1のサーバーまたは前記第2のサーバーのいずれかが、前記デバイスに関するデータの移行が所定の段階に達すると、前記第2のサーバーに接続するための第2の接続情報を前記デバイスに送信する
ことを特徴とするネットワークシステムが提供される。
本発明によれば、クライアントに関するサーバー間のデータ移行を、クライアント装置の状態に関わらず、かつ、データ移行中もクライアント装置に対するサービス提供を継続しながら行うことが可能となる。
実施例1に係るクライアント・サーバー型のネットワークシステムの構成の一例を示す図である。 アプリケーションサーバー100、管理サーバー200、300の構成を示す図である。 プリンタ400の構成を示す図である。 サーバー切り替え機能を持たないプリンタ400を管理サーバー200に登録する処理を示すシーケンス図である。 サーバー切り替え機能を持つプリンタ400が管理サーバー300に登録する処理を示すシーケンス図である 管理サーバー300に登録済みのプリンタ400が接続先情報を再度取得するシーケンス図である 一度も管理サーバーに接続しておらず後天的にサーバー切り替え機能を手に入れたプリンタ400が始めて管理サーバーに接続した際の動作を表すシーケンス図である 後天的にサーバー切り替え機能を手に入れたプリンタ400が管理サーバーに接続し、ロムアップデート前に接続していた管理サーバー200にあるプリンタ情報を管理サーバー300に移管する処理を表すシーケンス図である 登録要求を受信した管理サーバー300の処理のフローチャート 登録要求を受信した管理サーバー300の処理のフローチャート
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
[実施形態1]
本実施形態ではクラウド印刷サービス(或いはクラウド印刷システム)について説明する。このクラウド印刷サービスでは、プリンタ、アプリケーションサーバー、管理サーバーが連携し、アプリケーションサーバーで動作するWebアプリケーションからの印刷要求を受けて管理サーバーで生成したジョブデータをプリンタへ通知し、印刷を行う。このクラウド印刷サービスにおいて、サーバー切り替え機能を持たないプリンタが、ファームウェア更新によってサーバー切り替え機能を取得し、ファームウェア更新を契機に接続する管理サーバーを切り替える例を説明する。なおファームウェア更新のことをロムアップデートと呼ぶこともある。クラウド印刷システムに属するプリンタをより一般的にデバイスと呼ぶこともある。
クラウド印刷サービスに属するプリンタを管理する管理サーバーは、国や地域毎に存在する管理サーバーのうちのいずれか1つであり、予め決められている。管理サーバーは、プリンタ固有情報やユーザーの個人情報の国外流出防止や通信時間の最適化を目的に、プリンタの仕向け地、プリンタの設置されている国や地域の情報、ユーザーのサービス利用状況等によって決定される。サーバー切り替え機能とは、プリンタに対して予め決めておいた管理サーバーを他の管理サーバーに変更した場合に、変更前の管理サーバーに登録済みのプリンタを、変更後の管理サーバーに移管する機能である。なおここでいう管理サーバーの変更には機器の更新などは含まず、プリンタがいったん登録された管理サーバーを他の管理サーバーに変更することを含む。すなわちサーバー切り替えとはクラウド印刷の際にプリンタがアクセスするあて先のサーバーの変更を指す。
●システム構成
図1は、本実施形態に係るデータ送信システムの全体構成を示す図である。まず、アプリケーションサーバー100と、管理サーバー200、300,プリンタ400、グローバルデータベース600が連携するシステムの構成について説明する。ネットワーク1000は、アプリケーションサーバー100、管理サーバー200、300、プリンタ400を相互に接続するネットワークである。ネットワーク1000は、例えば、インターネットでよく、Local Area Netowrk(以降、LANと略称する)、Wide AreaNetwork(以降、WANと略称する)などで実現される通信ネットワークである。ネットワーク1000には更に、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線などの有線通信や、データ放送用無線回線等の無線通信を含んでもよい。ネットワーク1000は、各構成要素間でのデータ送受信が可能であればその種類を問わない。本実施形態では、ネットワーク1000はインターネットとして説明する。
ネットワーク1100は、管理サーバー200、300、クローバルデータベース600を相互に接続するネットワークである。ネットワーク1100は、例えば、インターネットでよく、LAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等により実現される通信ネットワークである。ネットワーク1100は、各構成要素間でのデータ送受信が可能であればその種類を問わない。本実施形態では、ネットワーク1100はインターネットとして説明する。
アプリケーションサーバー100のデータベース110は、ユーザーにクラウド印刷サービスを提供するための様々な情報を記憶する。Webアプリケーション120はネットワーク1000を介して管理サーバー200、300に対して印刷要求の送信や、管理サーバー200、300からプリンタ400の稼働情報を受信する。
管理サーバー200,300のデータベース210、310は、プリンタ400が接続するためのクライアント情報や、プリンタ400の印刷ジョブ情報を記憶する。制御アプリ220,320は、アプリケーションサーバー100から受信した印刷要求を基にジョブデータを生成し、ネットワーク1000を介してプリンタ400へ送信する。また、ネットワーク1000を介してプリンタ400へジョブ通知を送信する。本実施形態では管理サーバー200と管理サーバー300とは互いに異なるリージョンに属しており、それぞれのリージョンのプリンタの管理や、印刷対象となるデータであるジョブデータのプリンタへの提供等を行う。
プリンタ400の通信モジュール410は、ネットワーク1000を介して管理サーバー200または管理サーバー300のうち、プリンタ400が登録されている管理サーバーと通信してジョブ通知を受信する。プリンタ400はさらに、ジョブ通知に含まれるジョブデータ接続情報を用いて、ネットワーク1000を介して管理サーバー200、300からジョブデータを受信する。記憶装置430は、ジョブデータを記憶する。プリントモジュール420は、通信モジュール410が受信し、記憶したジョブデータを処理して印刷を実行する。
グローバルデータベース600は、管理サーバー200と管理サーバー300によってネットワーク1100を介して接続され、各管理サーバー内で共有する情報の登録管理を行う。図1において、本実施形態での説明を簡潔にするため各構成要素をそれぞれ1台構成として図示しているが、構成上その台数を制限、限定する意図はない。各構成要素はそれぞれ1台以上の複数の要素によって構成されていたとしても構わない。
なお管理サーバー200を第1のサーバー、管理サーバー300を第2のサーバーと呼ぶこともある。また図1のデータ送信システムをネットワークシステムあるいはクラウド印刷システムと呼ぶこともある。
●各装置のハードウェア構成
図2は、アプリケーションサーバー100、管理サーバー200、300の概略構成を示すブロック図である。CPU301は、以下の各部を制御するための中央演算装置である。ディスク装置302は、CPU301が読み出すアプリケーションプログラム312やデータベース313やOSのほか各種ファイルを格納する。外部記憶メディア読取装置303は、SDカードなどの外部記憶媒体に格納されたファイルなどの情報を読み出すための装置である。メモリ304は、RAMなどで構成され、CPU301が必要に応じてデータの一時的格納やバッファリング等を行う。表示部305は、例えばLCDで構成され、各種の情報を表示する。操作部306は、ユーザーが各種の入力操作を行うためのキーボードやマウスなどからなる。ネットワーク通信部307はインターネット等のネットワークと接続され、各種の通信を行う。通信部307は有線LANや無線LANに対応する。そして、上述の各部はバス309で相互に接続される。また、後述するWebアプリケーションサーバー100のWebアプリケーション120、管理サーバー200の制御アプリ220、管理サーバー300の制御アプリ320は、CPU301が、処理に必要なプログラムを読み出して実行することで実現される。
図3は、プリンタ400の構成を示す図である。CPU401は、RAM402、ROM403に格納されたプログラムに従ってデータや命令を演算、判断及び制御を行う。RAM402はCPU401が各種処理を行う際の一時記憶領域として使用される。ROM403はオペレーティングシステム(OS)やその他のアプリケーションソフトを記録する。また、本実施形態では、ROM403はフラッシュメモリ(登録商標)に代表される、データの書き換えが可能な不揮発性メモリである。通信装置404はLANケーブルが接続されるインタフェースであり、不図示のルータ、またはネットワーク1000を介してそれぞれアプリケーションサーバー100と管理サーバー200と管理サーバー300とのデータ通信が行われる。なお、このデータ通信は、例えば無線に対応したインタフェースにより、無線で行われてもよい。
表示部408は、例えばLCDで構成され、各種の情報を表示する。操作部409は、ユーザーが各種の入力操作を行うためのボタンやタッチパネルなどからなる。印刷装置406は通信装置404で受信したジョブデータを処理し、原稿用紙に印字を行う。記憶装置430は、通信装置404で受信したジョブデータを格納する。システムバス407は、CPU401やRAM402、ROM403、通信装置404、印刷装置406、表示部408、操作部409等との間のデータのやり取りを行う。プリンタ400の通信モジュール410、プリントモジュール420の処理は、CPU401が、処理に必要なプログラムを読みだして実行することで実現される。
●サーバー切り替え機能を持たないプリンタと管理サーバーとの接続(図4)
次に、図1の構成のサービスにおいて、サーバー切り替え機能を持たないプリンタ400'が管理サーバーに接続してクラウド印刷のプリンタとして登録される処理について説明する。管理サーバー200'に登録されたプリンタ400'には管理サーバー200'のアドレス(URLなども含む)がクラウド印刷時の通信先として登録されている。プリンタ400'は管理サーバー200'からジョブリストやジョブデータを取得してクラウド印刷を行う。本説明でプリンタおよび管理サーバーの符号に「'」を付したのは、図4のプリンタおよび管理サーバーと、図5乃至図8のプリンタおよび管理サーバーとはその機能が相違しているためである。この例でのプリンタはサーバー切り替え機能を持たないが、管理サーバーもまたプリンタのサーバー切り替え機能に対応していない。そこで、符号「'」により、サーバー切り替え機能へ対応していないことを示す。
図4は、サーバー切り替え機能を持たないプリンタ400'を管理サーバー200'に登録する処理を示すシーケンス図である。サーバー切り替え機能を持たないプリンタは、特定の管理サーバーとのみ接続を行う。本例では、管理サーバー200'がサーバー切り替え機能を持たないプリンタによって接続される管理サーバーとする。ここでプリンタ400'が管理される管理サーバー200'は予め決められており、例えばROM403にアクセス先として管理サーバー200'のURL等の宛先が登録されている。
ユーザーがプリンタ400'に対してサーバー接続操作を実行する(S601)。接続操作を受け付けたプリンタ400'の通信モジュール410は、プリンタ登録要求を予め送信先として登録されている管理サーバー200'へ送信する(S602)。S602では、プリンタ登録要求と共に、例えばプリンタ400'の識別情報や、必要に応じてパスワード情報なども送信される。
登録要求を受信した管理サーバー200'は、要求元のプリンタ400'の情報および、プリンタ400'が管理サーバー200'へ接続するためのトークンなどとも呼ばれる認証情報を生成する。生成した情報を、要求元のプリンタ400'と紐づけてデータベース210へ保存する(S603)。管理サーバー200'はプリンタ400'へ、生成した認証情報を登録要求に対する応答として送信する(S604)。プリンタ400'はS604により送信された応答を受信すると、ユーザーに対してサーバー登録完了を表示部408に表示し、ユーザーに登録が完了したことを報知する(S605)。受信した認証情報は管理サーバー200'へのアクセス時に利用するために保存しておく。
管理サーバー200'は、アプリケーションサーバー100とプリンタ400'に対してプリンタ登録が完了したことを通知する(S606)。これにより、アプリケーションサーバー100はプリンタ400'が管理サーバー200'に登録され、管理されていることを把握することが可能となる。プリンタ400'はS606以降、プリンタ400'で発生した様々なイベント情報(エラー、アラートの発生、インク残量の変化など)を、その都度、S604で受信した認証情報を付与して管理サーバー200'に対して送信する(S607)。またプリンタ400'は、管理サーバー200'からジョブリストやジョブデータを取得し、その印刷を実行することができる。
管理サーバー200'は、プリンタ400'から各種イベント情報の送信や要求を受信した際は、それら情報や要求に付与されている認証情報を確認し、認証情報に紐づけられたプリンタの情報として要求を処理する(S608)。なお、サーバー接続完了について、本例ではプリンタ400'が管理サーバー200'からの認証情報の受信に応じてユーザーに報知しているが、S604を待たずに、S602の登録要求を投げてすぐユーザーに対して報知しても良い。すなわち管理サーバー200'との間の登録処理とは非同期に接続完了をユーザーに報知してもよい。
以上の手順によりプリンタ400'を予め設定された管理サーバー200'に登録して、プリンタ400'を用いたクラウド印刷サービスを提供することができる。
●サーバー切り替え機能を有するプリンタの管理サーバーへの初期的な登録(図5)
次に、図1の構成のクラウド印刷サービスにおいて、複数の管理サーバーのうちからプリンタ400の接続先として決められている管理サーバー300にサーバー切り替え機能を持つプリンタ400を接続して登録する処理について図5を用いて説明する。この例では、プリンタ400が製造当初からサーバーの切り替え機能を有するとともに、管理サーバー200,300もまたその切り替え機能を有するプリンタ400に対応する動作を行う。製造当初からサーバーの切り替え機能を有するか否かは、プリンタ400が有し、必要に応じてリクエストと共に送信するファームウェア更新フラグ(ロムアップデートフラグとも呼ぶ)により示される。ファームウェアの更新よりサーバー切り替え機能が付与されたプリンタ400ではファームウェア更新フラグが例えばオンに設定されており、製造時にサーバー切り替え機能が付与されているプリンタ400ではファームウェア更新フラグがオフに設定されている。またプリンタ400の動作はCPU401により、各サーバーの動作はCPU301により実行される。これは図6乃至図8についても同様である。なお以下の説明では、ファームウェア更新フラグがオフであることを前提とする。この場合には、プリンタ400はサーバーへのリクエストにファームウェア更新フラグを含めないものとする。
なお後述するように、ファームウェア更新フラグがオンに設定されると、サーバー切り替え機能が有効化されるともいえることから、サーバー切り替えフラグ或いはサーバー切り替え情報と呼んでもよい。ファームウェア更新フラグをハードウェア更新情報と呼んでもよい。またこのフラグはプリンタのファームウェア更新がされたことを示すことから、ファームウェア更新ベントあるいはロムアップデートイベントと呼ぶこともできる。あるいはサーバー切り替えイベントということもできる。
ユーザーは、プリンタ400の操作部409を操作してサーバーへの接続操作を行う(S701)。接続操作を受け付けたプリンタ400の通信モジュール410は、管理サーバー200に対して接続先問い合わせを送信する(S702)。管理サーバー200は問い合わせのためのアクセス先として予め例えばROM403に登録されている。
問い合わせを受信した管理サーバー200の制御アプリ220は、問い合わせ情報に含まれるプリンタの仕向け情報や、問い合わせの送信元のIPアドレスなどから推測されるプリンタ400の設置位置を基に、プリンタ400の管理サーバーを決定する。管理サーバーとプリンタの設置位置とは予め紐づけられていてよい。本例では決定された管理サーバーは管理サーバー300である。制御アプリ220は、決定した管理サーバーの接続先、例えばURL1を応答する(S703)。URL1はプリンタ400を管理サーバー300へと登録するための接続先であってよい。図5ではS703で決定し、応答した接続先が管理サーバー300であったケースを示す。
接続先URL1を受信したプリンタ400の通信モジュール410は、プリンタ登録要求を接続先URL1へ送信する(S704)。URL1は本例では管理サーバー300であるので、管理サーバー300へとプリンタ登録要求が送信される。プリント登録要求とともにプリンタ400の識別情報も送信される。
登録要求を受信した管理サーバー300は、要求元のプリンタ400のプリンタ情報およびプリンタ400の管理サーバー情報の取得要求をグローバルデータベース600に送信する(S705)。プリンタ情報にはプリンタ400に係る情報例えば識別情報などが含まれる。管理サーバー情報には、プリンタ400の管理サーバーを示す識別子などの情報が含まれる。プリンタ情報と管理サーバー情報とを含めてプリンタ管理情報とも呼ぶ。本例ではプリンタ400は未登録である。したがってグローバルデータベース600は未登録であったことを示す応答を返す(S706)。さてS706でプリンタ400がグローバルデータベース600に未登録であることを示す応答を受信した管理サーバー300はファームウェア更新フラグがS704の登録要求に含まれているか判定する。この場合ファームウェア更新フラグは含まれていない。その場合には、管理サーバー300は、プリンタ400のプリンタ管理情報をグローバルデータベース600に登録する。なお図5ではプリンタ管理情報の取得と登録とをS705、S706にまとめて示している。
さらに管理サーバー300は、プリンタ400が管理サーバー300にアクセスするためのURL2などの接続先情報および、プリンタ400が管理サーバー300へ接続するためのトークンなどの認証情報を生成する。そしてプリンタ400と紐づけてデータベース310へ登録する(S707)。管理サーバー300の制御アプリ320は、接続先URL2などの接続先情報と、生成した認証情報とをプリンタ400へ応答として送信する(S708)。URL2は、プリンタ400がクラウド印刷サービスを提供する際に管理サーバー300へとアクセスするための接続先であってよい。また図5ではURL1とURL2とはいずれも管理サーバー300自身であったが、アプリケーションサーバー100の登録情報により、図中に存在しない管理サーバー300以外の管理サーバーや管理サーバー200であっても良い。
プリンタ400は接続先URL2と認証情報を受信するとそれら情報を保存し、表示部408に接続が完了したことを表示してユーザーに報知する(S709)。管理サーバー300はまた、アプリケーションサーバー100に対して、プリンタ400の登録完了を通知する(S710)。
これにより、アプリケーションサーバー100は、複数ある管理サーバーからプリンタ400がどの管理サーバーに接続されるかを把握することが可能となる。プリンタ400は以降、プリンタ400内で発生した様々なイベント情報(エラー、アラートの発生、インク残量の変化)を、S708受信した認証情報を付与して管理サーバー300に対して送信する(S711)。管理サーバー300は、プリンタ400から各種イベント情報の送信や要求を受信した際は付与されている認証情報を確認し、認証情報と一致するプリンタの情報として要求を処理する(S712)。
クライアントでは、管理サーバー300からクラウド印刷サービスのプリンタとしてプリンタ400が含まれることを示す情報を取得し、プリンタ400を指定してクラウド印刷を指示することできる。プリンタ400は、管理サーバー300からプリンタ400で印刷されるべきジョブデータを取得して印刷することができる。
上記例ではプリンタ400の接続先の決定においてプリンタ400が管理サーバー200に問い合わせを行う方法を示したが、管理サーバー300に問い合わせる構成であっても構わない。或いは、例えば接続先の問い合わせのみを処理する専用のサーバーを設置し、これに問い合わせる構成でも構わない。
このような手順によりサーバー切り替え機能を有するプリンタを、そのプリンタに対して決められている管理サーバーに登録することができる。いったん登録されれば、プリンタはその管理サーバーと通信してクラウド印刷を実行することができる。
●サーバー切り替え機能を持つ登録済みのプリンタによる管理サーバー情報の再取得(図6)
次に、図1の構成のサービスにおいて、既にグローバルデータベース600に、プリンタ400及びその管理サーバーとして管理サーバー300が登録済みである場合に、接続先URL1,2と認証情報とを改めて取得するフローについて図6を用いて説明する。この例では、プリンタ400が製造当初からサーバーの切り替え機能を有するとともに、管理サーバー200,300もまたその切り替え機能を有するプリンタ400に対応する動作を行う。製造当初からサーバーの切り替え機能を有するか否かは、プリンタ400が有し、必要に応じてリクエストと共に送信するファームウェア更新フラグにより示される。以下の説明では、ファームウェア更新フラグがオフであることを前提とする。この場合には、プリンタ400はサーバーへのリクエストにファームウェア更新フラグを含めないものとする。またプリンタ400の動作はCPU401により、各サーバーの動作はCPU301により実行される。
プリンタ400の管理サーバーのURL(接続先情報)と認証情報とが揮発性のメモリに保存されていると、プリンタ400が電源をOFFした後に再度電源をONにした際などに保存されている情報が失われることがある。あるいはハードディスクなどに保存した情報が破損により失われることもある。図6の手順は、例えば、図5の手順で管理サーバーが決定済みの接続先管理サーバーのURLと認証情報とがプリンタ400から失われた場合に実行される。
プリンタ400内の接続先管理サーバーのURLまたは認証情報の少なくともいずれか一方が失われた際でも、図5で説明したものと同様のインタフェースでプリンタ400から管理サーバー200および管理サーバー300と通信を行う。
プリンタ400は、接続先情報または認証情報の消失や破損が発生すると、接続先の再問い合わせが必要なことを判断する(S801)。情報の消失や破損は、たとえば定期的に自己診断プログラムが実行された場合や、ユーザーがプリンタ400によりジョブの取得を試みた場合など、接続先情報と認証情報とを参照したときに判断される。
プリンタ400の通信モジュール410は、管理サーバー200に対して接続先サーバーの問い合わせを送信する(S802)。なお管理サーバー200の宛先情報は、ROMなどの不揮発な媒体に記憶しておくことで、消失や破壊から保護されていてよい。
問い合わせを受信した管理サーバー200の制御アプリ220は、問い合わせ情報に含まれるプリンタの仕向け情報や、問い合わせの送信元のIPアドレスなどから推測されるプリンタ400の設置位置を基に、プリンタ400の管理サーバーを決定する。管理サーバーとプリンタの設置位置とは予め紐づけられていてよい。制御アプリ220は決定した管理サーバーの接続先、例えばURL1を応答する(S803)。URL1はプリンタ400を管理サーバー300へと登録するための接続先であってよい。図6では図5同様に決定した接続先が管理サーバー300であったケースを示す。
接続先URL1を受信したプリンタ400の通信モジュール410は、プリンタ登録要求をURL1すなわち管理サーバー300へ送信する(S804)。
登録要求を受信した管理サーバー300は、要求元のプリンタ400のプリンタ情報およびプリンタ400の管理サーバー情報の取得要求をグローバルデータベース600に送信する(S805)。この場合プリンタ400は登録済なので、グローバルデータベース600は登録済みのプリンタ情報と管理サーバー情報とを応答として返す(S806)。この応答を受信した管理サーバー300は、プリンタ400の接続先情報と認証情報とをデータベース310から取得する(S807)。取得する管理サーバー情報には認証情報と接続先URL2とを含む。管理サーバー300はプリンタ400へ、データベース310より取得した認証情報と接続先URL2を登録要求に対する応答として送信する(S808)。
プリンタ400は以降、プリンタ400内で発生した様々なイベント情報(エラー、アラートの発生、インク残量の変化)を、S808で受信した認証情報を付与して管理サーバー300に対して再度送信できるようになる(S809)。
上記例では、プリンタ400が、接続先URLと認証情報の消失や破損を契機として登録要求を発行し、その登録要求に応じて管理サーバー情報を再取得する方法を示した。しかし、消失あるいは破損していることが検出されることなく情報の送信を行い、その結果失敗した際に、その失敗を契機として接続先の問い合わせを行っても良い。あるいは、情報送信の試行を行う前にプリンタ400内に認証情報が存在していることの確認を行っても良い。あるいは、プリンタ400が特定の状態の時に常に管理サーバー200やそれに類する専用のサーバー等に対して初期化処理の一環としてS802の接続先問い合わせを行っても良い。図6で説明したような処理を行うことで再取得の際でもプリンタ400に対して図5で説明したときと同様のインタフェースで接続先URLと接続に必要な認証情報をプリンタ400に受け渡すことが可能となる。
●サーバー切り替え機能を追加されたプリンタによる管理サーバーへの登録(図7)
次に、ファームウェア更新(ロムアップデートともいう)によりサーバー切り替え機能を手に入れたプリンタ400が、管理サーバー300と接続して登録を要求する処理についての説明を図7で行う。この手順も図1の構成のクラウド印刷サービスにおいて実現される。この手順では、プリンタ400は製造時にはサーバー切り替え機能を有しておらず、ファームウェアの更新によってサーバー切り替え機能が追加されている。そして、ファームウェアの更新までクラウド印刷システムに登録されていない。図7にはその場合の登録の手順を示す。なお図中ファームウェアをFWと表記した。プリンタ400は、接続先の管理サーバーを問い合わせる際に、ファームウェア更新済みフラグを用いて、自身がサーバー切り替え機能を追加的に手に入れたプリンタであることを管理サーバー300に伝える。プリンタ400は未登録であるので、管理サーバー200にプリンタ情報が存在せず、図5で説明した、製造当初から接続先切り替え機能を有しているプリンタと同様、プリンタ400は管理サーバー300に接続して登録される。
ユーザーは、プリンタ400に対してファームウェアの更新操作を実行する(S901)。プリンタ400はファームウェア更新操作に応じて、ファームウェアの更新を実行する(S902)。この時更新前のファームウェアには、登録済みの管理サーバーを切り替える機能がなく、更新後のファームウェアにはその機能が追加されている。プリンタ400はファームウェア更新完了をユーザーに表示部408を用いて表示する(S903)。
ファームウェア更新完了後に、ユーザーはプリンタ400に対してサーバー接続操作を行う(S904)。プリンタ400の通信モジュール410は管理サーバー200へと接続先の問い合わせを行う(S905)。接続先問い合わせの宛先である管理サーバー200は予め決められており、プリンタ400にはその宛先が保存されている。この宛先は例えばファームウェアの更新とともに保存されてもよいし、ファームウェア更新以前から保存されているものであってもよい。
問合わせを受信した管理サーバー200の制御アプリ220は、問合わせ情報に含まれるプリンタの仕向け情報や、問合わせのリクエスト送信元のIPアドレスなどから推測されるプリンタ400の設置位置を基に、プリンタ400の管理サーバーを決定する。決定した管理サーバーの接続先URL1を応答する(S906)。図7では決定された管理サーバーが管理サーバー300であったケースを示す。接続先URL1を受信したプリンタ400の通信モジュール410は、プリンタ登録要求とファームウェア更新フラグとを管理サーバー300へ送信する(S907)。
登録要求を受信した管理サーバー300は、要求元のプリンタ400のプリンタ情報および管理サーバー情報の取得要求をグローバルデータベース600に送信する(S908)。この要求にはプリンタ400に係る情報例えば識別情報なども含まれる。本例ではプリンタ400は未登録である。プリンタ400が未登録であると判定したなら、グローバルデータベース600は未登録であることを示す応答を返す(S909)。その応答を受信した管理サーバー300はファームウェア更新フラグが登録要求に含まれているか判定する(S910)。ファームウェア更新フラグが含まれていると判定したなら、管理サーバー200に対し、プリンタ400の接続先情報および認証情報(これらをまとめて接続情報とも呼ぶ)を有するか確認(或いは取得)するリクエストを送信する(S911)。これは、ファームウェア更新が行われる前にプリンタ400が管理サーバー200に接続されていた可能性があるためである。ファームウェア更新が行われる前にプリンタ400が接続されていた可能性がある管理サーバーは、そのプリンタ400の仕向け地などに基づいて特定することができる。
これを受信した管理サーバー200は、管理サーバー200にプリンタ400の接続情報が保存されているか否かを判定する(S912)。この例では該当する情報は登録されてない。この場合管理サーバー200は、管理サーバー300がプリンタ400の管理サーバーであることを示す管理サーバー情報をグローバルデータベース600に登録する(S913)。プリンタ400の管理サーバーを決定したのは管理サーバー200であるので、S913ではその決定に基づいてプリンタ400のプリンタ情報と管理サーバー情報とを登録してよい。さらに管理サーバー200は、管理サーバー300に対し、管理サーバー200に判定結果、ここでは該当する登録情報がないことを応答する(S914)。管理サーバー300はプリンタ400に対して、プリンタ400の管理サーバーとして登録された管理サーバー300の認証情報と接続先URL2を応答する(S915)。
プリンタ400は管理サーバー300から接続先URL2と接続先URL2への認証情報を受け取ると、ユーザーに対して表示部408にサーバー接続完了を表示する(S916)。
以上のようにしてこの例では、ファームウェア更新がされたプリンタ400を新たにクラウド印刷システムへと登録することができる。そしてプリンタ400の管理サーバーとして決定された管理サーバーが、クローバルデータベースに登録され、また接続情報が、決定された管理サーバー300に登録される。さらにその接続情報がプリンタ400にも保存され、プリンタ400を用いたクラウド印刷サービスのために参照される。
●サーバー切り替え機能を追加されたプリンタによる管理サーバーの切り替え(図8)
図4の手順では、プリンタ400は、ファームウェア更新によりサーバー切り替え機能を手に入れるまでの間、管理サーバー200に登録され、管理サーバー200による管理の下でクラウド印刷サービスによる印刷を行っていた。すなわち管理サーバー200に対しイベント情報を送信し、管理サーバー200から印刷ジョブデータを取得して印刷していた。図8は、図4の手順で管理サーバー200に登録されているプリンタ400に、ファームウェア更新によりサーバー切り替え機能が追加され、新たな接続先である管理サーバー300へイベント情報の送信先が切り替えられるまでのシーケンス図である。すなわちサーバーの切り替え方法を示している。この例では、プリンタ400の仕向け地などから決まる管理サーバーが管理サーバー200から管理サーバー300に変わっている。しかしプリンタ400はいったん管理サーバー200に登録されていたため、新たな管理サーバー300が設けられてもそれにより管理されておらず、それとの通信も行っていなかった。図8の例では、そのような場合にも、新たな管理サーバー300をクラウド印刷サービスの管理サーバーとして登録できる。プリンタ400は、接続先の管理サーバーを問い合わせる際に、ファームウェア更新フラグを用いて自身がファームウェア更新によってサーバー切り替え機能を手に入れたプリンタであることを管理サーバー側に伝える。それにより、管理サーバー200に保管されているプリンタ400の接続情報を管理サーバー300へと移管する。
プリンタ400は図4で説明した処理によって得た接続先URLと認証情報を用いて管理サーバー200へとイベント情報を送信していている(S1001)。ユーザーは、プリンタ400に対してファームウェア更新操作を実行する(S1002)。プリンタ400はファームウェア更新操作に応じて、ファームウェアの更新を実行する(S1003)。プリンタ400はロムアップデートが完了したことを、表示部408に表示しユーザーに伝える(S1004)。S1004後もプリンタ400は、保存している接続情報に従って管理サーバー200へとイベント情報送信を行う(S1005)。また管理サーバー200からジョブデータを取得して印刷を行っている。
S1005の後でプリンタ1006内に存在する接続先URLと認証情報とを含む接続情報が消滅する(S1006)。この情報の消滅は利用者が意図的に発生させたものであってもよい。たとえば、サーバー切り替えのためのユーザインタフェイスを更新されたファームウェアで用意しておき、そのユーザインタフェイスにおける操作をきっかけにして接続先URLと認証情報とを消去してもよい。また電源オフにより消去できるのであれば、電源オフ、オン操作を行ってもよい。この情報の消滅を契機として、プリンタ400は接続先の問い合わせを管理サーバー200に対して行う(S1007)。接続先問い合わせの宛先である管理サーバー200は予め決められており、プリンタ400にはその宛先が保存されている。この宛先は例えばファームウェアの更新とともに保存されてもよいし、ファームウェア更新以前から保存されているものであってもよい。
問合わせを受信した管理サーバー200の制御アプリ220は、問合わせ情報に含まれるプリンタの仕向け情報や、問合わせのリクエスト送信元のIPアドレスなどから推測されるプリンタ400の設置位置を基に、プリンタ400の管理サーバーを決定する。決定した管理サーバーの接続先URL1を応答する(S1008)。図8では決定された接続先が管理サーバー300であったケースを示す。接続先URL1を受信したプリンタ400の通信モジュール410は、プリンタ登録要求とファームウェア更新フラグとを管理サーバー300へ送信する(S1009)。
登録要求を受信した管理サーバー300内制御アプリ320は、要求元のプリンタ400のプリンタ情報および管理サーバー情報の取得要求をグローバルデータベース600に送信する(S1010)。この要求にはプリンタ400に係る情報例えば識別情報なども含まれる。図4を参照すれば明らかの通り、図6の手順ではグローバルデータベース600は登場せず、したがってプリンタ400は未登録である。プリンタ400が未登録であると判定したなら、グローバルデータベース600は未登録であることを示す応答を返す(S1011)。
その応答を受信した管理サーバー300の制御アプリ320は、S1009で送信された登録要求にファームウェア更新フラグが含まれているかを判定する(S1012)。管理サーバー300の制御アプリ320は、ファームウェア更新フラグがあると判定した場合、管理サーバー200に対してファームウェア更新前のプリンタ400の接続情報が保存しているかを確認(或いは取得)するリクエストを送信する(S1013)。これは、ファームウェア更新が行われる前にプリンタ400が管理サーバー200に接続されていた可能性があるためである。ファームウェア更新が行われる前にプリンタ400が接続されていた可能性がある管理サーバーは、そのプリンタ400の仕向け地などに基づいて特定することができる。
これを受信した管理サーバー200の制御アプリ220は、データベース210にプリンタ400の接続情報が保存されているか否かを判定する(S1014)。この例では該当する情報が保存されている。管理サーバー200の制御アプリ220はプリンタ400の接続情報が保存されていると判定すると、グローバルデータベース600に対して移管中であることを示す情報(移管中情報)の書き込みを行う(S1016)。管理サーバー200の制御アプリ220はS1016で移管中の書き込みを行うと、図8中では実線で表されるフローと非同期で管理サーバー300内の制御アプリ320と通信を行いプリンタ400に関する情報の移管処理を実行する(S1017)。この非同期で行われる処理は、図中で点線により示した。移管処理には例えば、管理サーバー200から管理サーバー300への情報の複製を含む。複製の対象には、たとえばプリンタ400で印刷される印刷ジョブのジョブリストやジョブデータ、その印刷設定情報なども含まれる。管理サーバー200の制御アプリ220は、管理サーバー300の制御アプリ320へ、管理サーバー200のデータベース210に保存されているプリンタ400の接続情報を応答する(S1018)。
管理サーバー300の制御アプリ320は、S1018の応答を受信すると、プリンタ400に対して、受信したプリンタ400の接続情報(認証情報と接続先URL2)を応答する(S1019)。この接続情報には、管理サーバー200に対する認証情報と接続先URL2とが含まれる。管理サーバー300はさらに、移管処理が所定の段階まで進行した際に、グローバルデータベース600にS1016で保存した、プリンタに関連する情報の「移管中」状態を「移管準備完了」状態で更新する(S1020)。この移管準備完了の書き込みによってプリンタ400を管理する管理サーバーが、新たな管理サーバー300となるようプリンタ管理情報が登録されてよい。
ここで所定の段階とは、プリンタ400が移管先である管理サーバー300にリクエストを行っても、管理サーバー200と管理サーバー300内に保存されている情報の差異により異常な処理にならない段階を指す。例えば、未処理のデータ(たとえばプリンタ400が未取得のジョブデータ)の複製が開始されないうちにサーバーが切り替えられてしまうと、切り替え後のサーバーから、複製がされていない未処理データの取得が試みられることもあり得る。この場合、取得対象のデータは切り替え後のサーバーにはなく、データ取得の要求はエラーとなる。このような事態の防止のため、たとえば移管準備完了状態への遷移は、管理サーバー200から管理サーバー300への未処理のデータ(例えば未取得のジョブデータ及び印刷設定情報)の複製が開始されたあとであればよい。この所定の段階を移管準備が完了した時期ともいえる。なお移管準備が完了したことは管理サーバー300のみならず管理サーバー200でも知ることができる。そこでS1020は管理サーバー200が行ってもよい。
移管準備が完了した際に、S1020の後に、管理サーバー200はプリンタ400に対して管理サーバー移管通知を送信する。この通知と併せて、管理サーバー300の認証情報と接続先URL2(すなわち接続情報)を送信する(S1021)。これにより、プリンタ400の管理サーバーが管理サーバー200から管理サーバー300へと移管されたことを通知する。管理サーバー300の接続情報は、管理サーバー200が管理サーバー300に要求して取得してよい。このとき管理サーバー300は、要求に応じて接続情報を生成し、保存してよい。すなわちこのときにプリンタ400を登録してもよい。あわせてプリンタ400に管理サーバー300の接続情報を送信した管理サーバー200は、登録されたプリンタ400の情報、たとえば接続情報を削除してもよい。
移管準備が完了し、S1021で管理サーバー200がプリンタ400に移管通知を送信した後に、管理サーバー300はアプリケーションサーバー100に対して移管準備完了通知を送信する(S1022)。これによりプリンタ400の管理サーバーが管理サーバー200から管理サーバー300へと移管されたことを通知する。プリンタ400はS1022以後、これまで管理サーバー200へと送信していたイベント情報などを管理サーバー300に対して送信するようになる(S1023)。
なおS1020,S1022は管理サーバー300が、S1021は管理サーバー200が実行する。上記説明によれば、これらの工程はS1020、S1021、S1022の順で実行されるため、S1021を実行する管理サーバー200はS1020が管理サーバー300により実行されたことを知らなければならない。またこのとき管理サーバー200は管理サーバー300の接続情報を知っていなければならない。また、S1022を実行する管理サーバー300はS1021が管理サーバー200により実行されたことを知らなければならない。そこで、図8には明示していないが、S1020を実行した管理サーバー300は管理サーバー200に対してS1020を行ったことを通知してよい。同様に、S1021を実行した管理サーバー200は管理サーバー300に対してS1021を実行したことを通知してよい。
また、図8のS1021において、管理サーバー300からプリンタ400に管理サーバー移管通知を行っているが、この通知がネットワークやプロトコルの障害によって成功しない場合が考えられる。その際には、再度プリンタ400からS1007の接続先問い合わせがくるまで管理サーバー200とプリンタ400とが通信を行い、S1018の管理サーバー200の認証情報と接続先URL2の送信によって移管後の情報を受け渡す。また、図8のS1019、S1021の送信元が移管先の管理サーバー300であるが、この送信が移管元である管理サーバー200から行われてもいい。
また、S1009でプリンタ400がファームウェア更新フラグを管理サーバー300に対して送信し、S1012でファームウェア更新フラグの確認を行っている。これに対して、ファームウェア更新フラグが存在しなくてもよい。その場合、S1012の処理をスキップし常にS1013の処理を実行すればよい。その際、製造時にサーバー切り替え機能を有するプリンタであれば図5のようにS1013は不要であるところ、S1013の処理を行わなければならない。しかし、製造時からであれ、ファームウェア更新によってであれ、サーバー切り替え機能を持っているプリンタであれば処理を共通化できるという利点もある。またそのように構成することで、製造時からサーバー切り替え機能を有するプリンタ400についても、ファームウェア更新フラグを設定することなく、管理サーバーの移管を行うことができる。
また、図5の手順で説明したように、製造時からサーバー切り替え機能が付与されたプリンタは、そのままでは管理サーバーの移行に対応できない。しかしながら、ファームウェア更新フラグをオンに設定することで、図8で説明した手順が適用され、管理サーバーを切り替えることが可能となる。
以上のようにクラウド印刷システム全体として、管理サーバーの移行が生じた際の手順を説明した。ここであらためて、サーバー切り替え機能を有するプリンタ、グローバルデータベース、管理サーバーについて説明する。
●プリンタのサーバー切り替え機能
サーバー切り替え機能を有するプリンタは、ユーザーによるサーバーへの接続操作に応じて、所定の管理サーバー(上記例では管理サーバー200)に対して、接続問い合わせを送信する。この接続問い合わせに対して、上記の所定のサーバーは、問い合わせ元のプリンタの管理サーバーを決定し、その宛先となる接続先の情報(URL等)をプリンタに応答する。それを受信したプリンタは、受信した接続先に対して登録要求を送信する。このように、サーバー切り替え機能を有するプリンタは、その機能を有さないプリンタと比較して、登録要求の送信先の情報を特定のサーバーから取得する、という工程をまず実行する。この工程により、プリンタに対応する管理サーバーを固定せず、クラウド印刷サービスの提供側で適宜決定し、変更することができる。
●グローバルデータベース
グローバルデータベースを設けたことで、複数の管理サーバーが例えばリージョンごとにプリンタを管理するような場合でも、複数の管理サーバー全体にわたってプリンタの登録状況を管理することができる。登録状況とはたとえは登録の有無のほか、どのプリンタがどの管理サーバーに登録されているか、を一元的に管理できる。
●管理サーバー300による接続要求の処理
以下では、図9、図10を参照して、登録要求を受信した管理サーバー300の処理を改めて説明する。これらの図の処理は管理サーバー300のCPU301により実行される。
登録要求を受信した管理サーバー300は図9の処理を実行する。まずグローバルデータベース600からプリンタ管理情報の取得を試みる(S9001)。取得に成功したか否かを判定し(S9002)、成功したならファームウェア更新フラグが要求に含まれるか判定する(S9003)。なお含まれているとは、ファームウェア更新フラグが必ず含まれ、オンまたはオフのいずれかに設定されている場合に、オンに設定された状態も含む。
ファームウェア更新フラグが含まれている場合には、管理サーバー200に対して登録要求元のプリンタの接続情報(管理サーバのURLおよび認証情報)の有無を確認するリクエストを出す(S9004)。このリクエストは接続情報の取得要求であってもよい。そしてその要求に対して該当する接続情報があればそれが応答され、なければその旨が応答される。そこでその応答をテストして接続情報の有無を判定する(S9005)。接続情報が応答に含まれていれば、受信した接続情報を登録要求元のプリンタに送信する(S9006)。S9006に至る手順は図8のケースに相当する。
一方接続情報が含まれていなければ、管理サーバーの宛先(例えばURL)と認証情報(例えばトークン)を含む接続情報を生成し、それを当該管理サーバーで保存し管理する(S9007)。そしてその接続情報を登録要求元のプリンタに送信する(S9008)。S9005を経てS9008に至る手順は図7のケースに相当する。
S9003でファームウェア更新フラグが登録要求に含まれていないと判定した場合には、登録要求元のプリンタ情報と登録要求された管理サーバーの管理サーバー情報とを含むプリンタ管理情報を生成する。そしてそれをグローバルデータベース600に登録する(S9009)。その後、S9007以下の処理を実行する。S9003からS9009へと分岐する手順は、図5のケースに相当する。
S9002でプリンタ管理情報の取得に成功したと判定した場合には、プリンタ管理情報に含まれた、登録要求の送信元のプリンタの管理サーバーから、そこに保存されているはずの接続要求を取得する(S9010)。そしてS9008でそれを登録要求の送信元のプリンタに送信する。
図10は図9の処理とは非同期に実行される、図8のS1017,S1020~S1022に対応する移管処理の手順を示す。まず管理サーバー200との間で移管処理が開始される(S10001)。この移管処理は、管理サーバー200が、S1014の判定結果及びそれに応じたS1016の処理の後で開始する。なおこの移管処理には登録要求の送信元のプリンタに関する情報を、切り替え前の管理サーバーから切り替え後の管理サーバーへと複製する処理を含む。またこの複製を含む移管処理は、対象のデータの移管が終わるまで実行され続けられるものとする。
データの移管が進行して図8について説明した所定の段階に達するまで待機し(S10002)、達したならグローバルデータベース600に移管準備完了の書込みを行う(S1003)。さらに登録要求元のプリンタに切り替え後の管理サーバーの接続情報を送信する(S10004)。なお図8ではこの工程は管理サーバー200で行っているが、その説明において管理サーバー300が行ってもよいとしており、図10では管理サーバー300が行うものとしている。この場合S10004で管理サーバー300に接続するための接続情報を生成し、送信してもよい。
最後にアプリケーションサーバー100に対しても管理サーバーの移管通知を送信する(S10005)。この通知には、たとえば管理サーバーが切り替えられたプリンタのプリンタ情報と、新たな管理サーバーの情報とが含まれていてよい。
●本実施形態の効果
以上の構成および手順により、クラウド印刷システムにおいて、管理サーバー切り替えで必要となる管理サーバー間のプリンタに関するデータの移行を、クラウド印刷サービスの提供を中断することなく行うことができる。さらに上述した手順をプリンタではないクライアント装置に適用すれば、そのクライアント装置に関するデータの移行も同様にサービスを継続しつつ行うことができる。
また、プリンタに関するデータの移行がすべて完了していなくとも、所定の段階まで移行が進行していれば新しい管理サーバーへの移管を行うことでき、管理サーバーの移管を迅速に進めることができる。
さらに、プリンタがサーバー切り替え機能を有していれば、プリンタのファームウェアを変更することなく、切り替え先の管理サーバーをシステムの管理者が決定し、また変更することができる。
また、グローバルデータベースにより全ての管理サーバーに登録されたプリンタの登録状況を一点的に管理できるので、管理サーバーの移行による管理の漏れを防ぐことができる。
さらに、プリンタとその管理サーバーとの紐づけを特定のサーバーで一元的に行うことから、管理作業を簡潔化し、効率化を図ることもできる。
●実施形態のまとめ
上記実施形態をまとめると以下のようなものである。
[項目1]
デバイスと第1のサーバーと第2のサーバーとを含み、前記デバイスは、保存した接続情報を用いて接続したサーバーからデータを取得するネットワークシステムであって、
前記第2のサーバーは、前記デバイスから登録要求と共にサーバー切り替えイベントを受信すると、前記デバイスが登録されている前記第1のサーバーに対して、前記デバイスが前記第1のサーバーに接続するための第1の接続情報の取得を要求し、
前記第1のサーバーは、
前記第1の接続情報の要求に応じて、前記第1の接続情報を有していれば、前記デバイスに関するデータの前記第2のサーバーへの移行を開始し、
前記第1の接続情報を前記第2のサーバーへと送信し、
前記第2のサーバーは、前記第1のサーバーから取得した前記第1の接続情報を前記デバイスに送信し、
前記第1のサーバーまたは前記第2のサーバーのいずれかが、前記デバイスに関するデータの移行が所定の段階に達すると、前記第2のサーバーに接続するための第2の接続情報を前記デバイスに送信する
ことを特徴とするネットワークシステム。
[項目2]
項目1に記載のネットワークシステムであって、
前記デバイスは所定のサーバーに対して接続先を問い合わせ、前記第2のサーバーが前記接続先として応答された場合に、前記第2のサーバーへと前記登録要求を送信する
ことを特徴とするネットワークシステム。
[項目3]
項目1または2に記載のネットワークシステムであって、
前記デバイスは、保存していた前記第1の接続情報が失われた場合に、前記登録要求を送信する
ことを特徴とするネットワークシステム。
[項目4]
項目1乃至3のいずれか一項に記載のネットワークシステムであって、
移行される前記デバイスに関するデータには、前記デバイスにより取得されるデータが含まれる
ことを特徴とするネットワークシステム。
[項目5]
項目1乃至4のいずれか一項に記載のネットワークシステムであって、
前記所定の段階は、前記デバイスが未取得のデータの移行が開始された後の段階を含む
ことを特徴とするネットワークシステム。
[項目6]
項目1乃至5のいずれか一項に記載のネットワークシステムであって、
前記サーバー切り替えイベントは、前記デバイスのファームウェアの更新に応じて発生する
ことを特徴とするネットワークシステム。
[項目7]
項目1乃至6のいずれか一項に記載のネットワークシステムであって、
前記第1の接続情報には前記第1のサーバーに接続するための認証情報を含み、前記第2の接続情報には前記第2のサーバーに接続するための認証情報を含む
ことを特徴とするネットワークシステム。
[項目8]
項目1乃至7のいずれか一項に記載のネットワークシステムであって、
前記第1の接続情報には前記第1のサーバーの宛先をさらに含み、前記第2の接続情報には前記第2のサーバーの宛先をさらに含む
ことを特徴とするネットワークシステム。
[項目9]
項目1乃至8のいずれか一項に記載のネットワークシステムであって、
前記ネットワークシステムには前記第1のサーバーまたは前記第2のサーバーにデータを提供するアプリケーションサーバーを更に含み、
前記第2のサーバーは更に、前記第2の接続情報が前記デバイスに送信された後に、前記デバイスが前記第2のサーバーに登録されたことを前記アプリケーションサーバーに通知する
ことを特徴とするネットワークシステム。
[項目10]
項目1乃至9のいずれか一項に記載のネットワークシステムであって、
前記デバイスに関するデータの移行が所定の段階に達すると、前記第1のサーバーが、前記第2のサーバーから受信した前記第2の接続情報を前記デバイスに送信する
ことを特徴とするネットワークシステム。
[項目11]
項目1乃至10のいずれか一項に記載のネットワークシステムであって、
前記デバイスに関するデータの移行が所定の段階に達すると、前記第2のサーバーが前記第2の接続情報を生成して前記デバイスに送信する
ことを特徴とするネットワークシステム。
[項目12]
デバイスと第1のサーバーと第2のサーバーとを含み、前記デバイスは、保存した接続情報を用いて接続したサーバーからデータを取得するネットワークシステムにおけるサーバーの切り替え方法であって、
前記第2のサーバーが、前記デバイスから登録要求と共にサーバー切り替えイベントを受信すると、前記デバイスが登録されている前記第1のサーバーに対して、前記デバイスが前記第1のサーバーに接続するための第1の接続情報の取得を要求し、
前記第1のサーバーが、
前記第1の接続情報の要求に応じて、前記第1の接続情報を有していれば、前記デバイスに関するデータの前記第2のサーバーへの移行を開始し、
前記第1の接続情報を前記第2のサーバーへと送信し、
前記第2のサーバーが、前記第1のサーバーから取得した前記第1の接続情報を前記デバイスに送信し、
前記第1のサーバーまたは前記第2のサーバーのいずれかが、前記デバイスに関するデータの移行が所定の段階に達すると、前記第2のサーバーに接続するための第2の接続情報を前記デバイスに送信する
ことを特徴とするネットワークシステムおけるサーバーの切り替え方法。
[その他の実施例]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
100 アプリケーションサーバー、200 管理サーバー(移管元)、300 管理サーバー(移管先)、400 プリンタ、600 グローバルデータベース

Claims (12)

  1. デバイスと第1のサーバーと第2のサーバーとを含み、前記デバイスは、保存した接続情報を用いて接続したサーバーからデータを取得するネットワークシステムであって、
    前記第2のサーバーは、前記デバイスから登録要求と共にサーバー切り替えイベントを受信すると、前記デバイスが登録されている前記第1のサーバーに対して、前記デバイスが前記第1のサーバーに接続するための第1の接続情報の取得を要求し、
    前記第1のサーバーは、
    前記第1の接続情報の要求に応じて、前記第1の接続情報を有していれば、前記デバイスに関するデータの前記第2のサーバーへの移行を開始し、
    前記第1の接続情報を前記第2のサーバーへと送信し、
    前記第2のサーバーは、前記第1のサーバーから取得した前記第1の接続情報を前記デバイスに送信し、
    前記第1のサーバーまたは前記第2のサーバーのいずれかが、前記デバイスに関するデータの移行が所定の段階に達すると、前記第2のサーバーに接続するための第2の接続情報を前記デバイスに送信する
    ことを特徴とするネットワークシステム。
  2. 請求項1に記載のネットワークシステムであって、
    前記デバイスは所定のサーバーに対して接続先を問い合わせ、前記第2のサーバーが前記接続先として応答された場合に、前記第2のサーバーへと前記登録要求を送信する
    ことを特徴とするネットワークシステム。
  3. 請求項1に記載のネットワークシステムであって、
    前記デバイスは、保存していた前記第1の接続情報が失われた場合に、前記登録要求を送信する
    ことを特徴とするネットワークシステム。
  4. 請求項1に記載のネットワークシステムであって、
    移行される前記デバイスに関するデータには、前記デバイスにより取得されるデータが含まれる
    ことを特徴とするネットワークシステム。
  5. 請求項1に記載のネットワークシステムであって、
    前記所定の段階は、前記デバイスが未取得のデータの移行が開始された後の段階を含む
    ことを特徴とするネットワークシステム。
  6. 請求項1に記載のネットワークシステムであって、
    前記サーバー切り替えイベントは、前記デバイスのファームウェアの更新に応じて発生する
    ことを特徴とするネットワークシステム。
  7. 請求項1に記載のネットワークシステムであって、
    前記第1の接続情報には前記第1のサーバーに接続するための認証情報を含み、前記第2の接続情報には前記第2のサーバーに接続するための認証情報を含む
    ことを特徴とするネットワークシステム。
  8. 請求項7に記載のネットワークシステムであって、
    前記第1の接続情報には前記第1のサーバーの宛先をさらに含み、前記第2の接続情報には前記第2のサーバーの宛先をさらに含む
    ことを特徴とするネットワークシステム。
  9. 請求項1に記載のネットワークシステムであって、
    前記ネットワークシステムには前記第1のサーバーまたは前記第2のサーバーにデータを提供するアプリケーションサーバーを更に含み、
    前記第2のサーバーは更に、前記第2の接続情報が前記デバイスに送信された後に、前記デバイスが前記第2のサーバーに登録されたことを前記アプリケーションサーバーに通知する
    ことを特徴とするネットワークシステム。
  10. 請求項1に記載のネットワークシステムであって、
    前記デバイスに関するデータの移行が所定の段階に達すると、前記第1のサーバーが、前記第2のサーバーから受信した前記第2の接続情報を前記デバイスに送信する
    ことを特徴とするネットワークシステム。
  11. 請求項1に記載のネットワークシステムであって、
    前記デバイスに関するデータの移行が所定の段階に達すると、前記第2のサーバーが前記第2の接続情報を生成して前記デバイスに送信する
    ことを特徴とするネットワークシステム。
  12. デバイスと第1のサーバーと第2のサーバーとを含み、前記デバイスは、保存した接続情報を用いて接続したサーバーからデータを取得するネットワークシステムにおけるサーバーの切り替え方法であって、
    前記第2のサーバーが、前記デバイスから登録要求と共にサーバー切り替えイベントを受信すると、前記デバイスが登録されている前記第1のサーバーに対して、前記デバイスが前記第1のサーバーに接続するための第1の接続情報の取得を要求し、
    前記第1のサーバーが、
    前記第1の接続情報の要求に応じて、前記第1の接続情報を有していれば、前記デバイスに関するデータの前記第2のサーバーへの移行を開始し、
    前記第1の接続情報を前記第2のサーバーへと送信し、
    前記第2のサーバーが、前記第1のサーバーから取得した前記第1の接続情報を前記デバイスに送信し、
    前記第1のサーバーまたは前記第2のサーバーのいずれかが、前記デバイスに関するデータの移行が所定の段階に達すると、前記第2のサーバーに接続するための第2の接続情報を前記デバイスに送信する
    ことを特徴とするネットワークシステムおけるサーバーの切り替え方法。
JP2022109064A 2022-07-06 2022-07-06 ネットワークシステムおよびサーバーの切り替え方法 Pending JP2024007761A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022109064A JP2024007761A (ja) 2022-07-06 2022-07-06 ネットワークシステムおよびサーバーの切り替え方法
US18/346,998 US20240015227A1 (en) 2022-07-06 2023-07-05 Network system and method of switching servers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022109064A JP2024007761A (ja) 2022-07-06 2022-07-06 ネットワークシステムおよびサーバーの切り替え方法

Publications (1)

Publication Number Publication Date
JP2024007761A true JP2024007761A (ja) 2024-01-19

Family

ID=89430972

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022109064A Pending JP2024007761A (ja) 2022-07-06 2022-07-06 ネットワークシステムおよびサーバーの切り替え方法

Country Status (2)

Country Link
US (1) US20240015227A1 (ja)
JP (1) JP2024007761A (ja)

Also Published As

Publication number Publication date
US20240015227A1 (en) 2024-01-11

Similar Documents

Publication Publication Date Title
JP4254312B2 (ja) 印刷システムおよび代替印刷管理装置および印刷要求端末および印刷制御方法および代替印刷管理方法
JP7158864B2 (ja) システムおよびそれを用いる方法
JP5727020B2 (ja) クラウドコンピューティングシステム及びそのデータ同期化方法
JP2007122093A (ja) 印刷制御装置及び印刷制御方法ならびに印刷制御方法を実行するプログラム
US9286008B2 (en) Job management apparatus connected to an external storage via a network, including a storage management unit that determines whether to store job data in the external storage based on predetermined transfer condition
JP5602419B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP7271310B2 (ja) 画像形成装置、画像形成装置の制御方法およびプログラム
CN112130959B (zh) 一种虚拟机的保护系统及方法
CN106797402B (zh) 信息系统、信息处理装置及其控制方法、计算机可读介质
JP2009295080A (ja) 印刷処理システム
CN110716700B (zh) 打印服务器、控制方法和存储介质
JP6812171B2 (ja) ネットワークシステム、および、ネットワークシステムにおける制御方法
US12073133B2 (en) System and method for providing printing service and configured to change printer connection destination
JP2024007761A (ja) ネットワークシステムおよびサーバーの切り替え方法
JP2021177356A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP3963873B2 (ja) サーバ装置およびプリンタ削除方法およびプログラムおよび記録媒体
JP2004206231A (ja) 記憶装置システムの制御方法、コンピュータ、記憶制御装置
WO2016046951A1 (ja) 計算機システム及びそのファイル管理方法
JP6179529B2 (ja) ファイル管理装置、画像形成装置、ファイル管理方法、およびファイル管理プログラム
JPH11259484A (ja) 簡易ファイリングシステム
JP3963872B2 (ja) サーバ装置およびプリンタ設定方法およびプログラムおよび記録媒体
US20240012591A1 (en) System and method for providing printing service
JP7183969B2 (ja) 情報処理装置およびプログラム
US20240078280A1 (en) Web browsing system, communication terminal, and control method thereof
JP2024114135A (ja) 印刷装置、制御方法及びプログラム