JP6732508B2 - データを保存するシステム、サーバー、方法、及びプログラム - Google Patents

データを保存するシステム、サーバー、方法、及びプログラム Download PDF

Info

Publication number
JP6732508B2
JP6732508B2 JP2016082228A JP2016082228A JP6732508B2 JP 6732508 B2 JP6732508 B2 JP 6732508B2 JP 2016082228 A JP2016082228 A JP 2016082228A JP 2016082228 A JP2016082228 A JP 2016082228A JP 6732508 B2 JP6732508 B2 JP 6732508B2
Authority
JP
Japan
Prior art keywords
image data
upload
reading
user
unit
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
JP2016082228A
Other languages
English (en)
Other versions
JP2017192110A5 (ja
JP2017192110A (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 JP2016082228A priority Critical patent/JP6732508B2/ja
Priority to EP17000483.2A priority patent/EP3232329B1/en
Priority to US15/478,416 priority patent/US10178249B2/en
Priority to CN201710235500.7A priority patent/CN107302643B/zh
Publication of JP2017192110A publication Critical patent/JP2017192110A/ja
Publication of JP2017192110A5 publication Critical patent/JP2017192110A5/ja
Application granted granted Critical
Publication of JP6732508B2 publication Critical patent/JP6732508B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/21Intermediate information storage
    • H04N1/2166Intermediate information storage for mass storage, e.g. in document filing systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • 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
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00411Display of information to the user, e.g. menus the display also being used for user input, e.g. touch screen

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Facsimiles In General (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、ストレージサービスを利用して画像データを保存する技術に関する。
ストレージサービスはインターネットを活用したサービスの1つであり、インターネット上の仮想ストレージにファイルを保存し、PC、スマートフォン、タブレット等の様々な端末からの該保存したファイルへの共有アクセスを可能にするサービスである。ストレージサービスは、ファイルをアップロード可能なデータ容量が定められている。一般的なストレージサービスでは、空き容量の不足が原因でデータを保存できなかった場合、データを保存できなかった旨を示すエラーがユーザーに通知される。エラーが通知されたユーザーは、例えば不要なファイルを削除することで、必要な空き容量を確保し、データを保存し直す必要がある。
上述の問題に対処する手法として、特許文献1は、ユーザーが容量制限を超えて画像をアップロードした場合に、一定期間はサーバー上に画像データを保管し続け削除までの猶予を与える技術を開示する。
特開2010−044468号公報
しかしながら、特許文献1に記載の方法では、サーバーに保存されているデータがユーザーの知らぬ間に削除される恐れがあった。
そこで本発明は、データのアップロードに失敗した場合でも該データが消失することを防ぎ、かつ、保存されているデータがユーザーの知らぬ間に削除されることを防ぐことができるシステムを提供することを目的とする。
本発明は、データをストレージサーバーにアップロードするサービスのためのシステムであって、原稿を読み取る読取部を備える読取装置が、当該読取部により原稿を読み取ることで取得された画像データであって、当該読取装置から送信された画像データの、前記ストレージサーバーへのアップロードを試みるアップロード手段と、前記アップロードに失敗した場合、前記画像データを、前記サービスにログイン中のユーザーに対応付けて保存する保存手段と、前記保存手段が前記画像データを保存する場合に、前記ユーザーに、前記アップロードの失敗に関する所定の通知を行う通知手段と、を有し、前記アップロード手段は、前記読取装置による原稿読取をユーザーが指示し、かつ、前記保存手段が当該ユーザーに対応付けて前記画像データを保存していることに基づいて、当該画像データの前記ストレージサーバーへのアップロードを再び試みることを特徴とするシステムである。
本発明により、データのアップロードに失敗した場合でも該データが消失することを防ぎ、かつ、保存されているデータがユーザーの知らぬ間に削除されることを防ぐことができる。
実施例1に係るMFPの概略構成を示すブロック図 実施例1に係るクライアント及びサーバーとして用いられるPCの概略構成を示すブロック図 実施例1に係るシステムの構成を示す図 実施例1に係るクライアントが実行する処理のフローチャート 実施例1に係るクライアントが表示するUI 実施例1に係る情報処理サーバーが実行する処理のフローチャート 実施例1に係る情報処理サーバーが実行する処理のフローチャート 実施例1に係るスキャンチケット 実施例1に係るMFPが実行する処理のフローチャート 実施例1に係る情報処理サーバーが一時的に保存するデータを説明するための図 実施例1に係る情報処理サーバーが実行する処理のフローチャート 実施例1に係る情報処理サーバーが実行する処理のフローチャート 実施例1に係る情報処理サーバーが実行する処理のフローチャート 実施例1に係る情報処理サーバーが実行する処理のフローチャート 実施例1に係るシステムが実行する処理のシーケンスチャート
以下、添付図面を参照して本発明の実施形態を詳しく説明する。ただし、以下の実施形態は例示に過ぎず、特許請求の範囲に係る本発明を限定するものではない。また、以下で説明されている特徴の組み合わせの全てが、本発明の解決手段として必須のものとは限らない。なお、各図面において同一の要素には同一の符号を付与する。
<実施例1>
まず図1〜図3を用いて、本実施例で用いる複合機能画像形成装置(以下MFP)、クライアント及びサーバーとして用いられるPC、及びこれらが接続されて構成されるシステムについて説明する。
(MFPの構成について)
図1は、本実施例に係る画像形成装置の一例であるMFPの概略構成を示すブロック図である。MFP100は、プリンタ部101と、スキャナ部102と、メモリカード装着部103とを備える。MFP100は、プリンタ部101によって実現されるプリンタ機能と、スキャナ部102によって実現されるスキャン機能と、メモリカード装着部103に装着するメモリカード104によって実現されるストレージ機能とを有する。これらの機能は、MFP100を実際に触って操作するユーザーに提供されるが、ネットワーク接続部111を介してネットワーク経由でユーザーに提供することも可能である。
プリンタ部101は、MFP100に接続されている外部装置から受信した印刷ジョブに含まれる印刷データやメモリカード104に格納されている画像データ等に基づき、記録媒体に画像を形成する。画像を形成する方式として、インクジェット方式や電子写真方式等、MFP100に応じた任意の方式を用いて良い。スキャナ部102は、原稿台にセットされた原稿を光学的に読み取って電子データを取得し、該取得した電子データを指定されたファイル形式に変換する。MFP100は、指定されたファイル形式に変換された電子データを、ネットワーク経由で外部装置に送信する。或いはMFP100は、該電子データを、MFP100内のフラッシュメモリ112や、MFP100に装着されたメモリカード104等の記憶媒体に保存しても良い。MFP100を使ったコピーサービスでは、原稿台に置かれた原稿をスキャナ部102が読み取ることで生成された画像データはプリンタ部101へ送信され、プリンタ部101が該送信された画像データに基づき記録媒体に画像を形成する。本実施例では、メモリカード104に格納されているファイルを、MFP100と接続された外部装置がネットワーク経由で読み出すこと、読み出したファイルを編集すること、編集後のファイルをメモリカード104に保存すること等が可能である。
またMFP100は、中央演算装置(以下CPU)105と、プログラムメモリ106と、ワークメモリ107と、表示部108と、操作部109とを備える。CPU105は、信号線113を介して接続されたMFP100の各構成要素を統括的に制御する。プログラムメモリ106は、後述する情報処理サーバーと通信するためのクライアントアプリケーション114等、CPU105が実行するプログラムを格納するための不揮発性メモリである(例えばROM)。なお、CPU105が実行するプログラムには、後述する本実施例に係る処理を実行するためのプログラムも含まれる。ワークメモリ107は、各処理実行時に生じる画像データ等を一時的に格納するための揮発性メモリであり(例えばRAM)、バッファリング等に用いられる。表示部108は、ユーザーに情報を視認可能に提示するための手段である(例えばLCD)。操作部109は、ユーザーによる入力を受け付けるための手段であり、ボタン、タッチパネル、スイッチ等を含む。
更にMFP100は、ネットワーク通信部110と、ネットワーク接続部111と、フラッシュメモリ112とを備える。ネットワーク通信部110は、MFP100をネットワークに接続して各種通信を行うための手段であり、有線LANと無線LANとの少なくとも一方に対応する。ネットワーク接続部111は、ネットワーク通信部110をネットワーク媒体に接続するための手段である。ネットワーク通信部110が有線LANに対応する場合、ネットワーク接続部111は、有線LANのLANケーブルをMFP100に接続するためのコネクタである。一方、ネットワーク通信部110が無線LANに対応する場合、ネットワーク接続部111はアンテナである。フラッシュメモリ112は、ネットワーク通信部110が受信したデータを格納するための、不揮発性メモリである。
(クライアント及びサーバーとして用いられるPCの構成について)
図2は、本実施例に係るクライアント及びサーバーとして用いられるPCの概略構成を示すブロック図である。PC200は、CPU212と、ディスク装置202と、外部ディスク読取装置203と、メモリ204と、表示部205と、操作部206と、ネットワーク通信部207と、ネットワーク接続部208と、USB通信部210と、USB接続部211とを備える。
CPU212は、信号線209を介して接続されたPC200の各構成要素を統括的に制御する。ディスク装置202は、各種ファイルを格納するための装置であり(例えばHDD)、CPU212によって実行されるアプリケーションプログラムやOperation System(以下OS)などがインストールされている。外部ディスク読取装置203は、マウントされた記憶媒体(CD−ROM等)の内容を読み出すための装置である。メモリ204は、CPU212が必要に応じて生成したデータを一時的に格納するための揮発性メモリであり(例えばRAM)、バッファリング等に用いられる。表示部205は、ユーザーに情報を視認可能に提示するための手段である(例えばCRTやLCD等)。操作部206は、ユーザーによる入力を受け付けるための手段であり、キーボード、マウス等を含む。ネットワーク通信部207は、PC200をネットワークに接続して各種通信を行うための手段である。ネットワーク接続部208は、ネットワーク通信部207をネットワーク媒体に接続するための手段である。MFP100と同様に、PC200のネットワーク通信部207及びネットワーク接続部208は、有線LANと無線LANとの少なくとも一方に対応する。USB通信部210は、画像形成装置などの各種外部装置とUSBインターフェースを介して通信するための手段である。USB接続部211は、PC200にUSBを接続するための手段である(例えばUSBコネクタ)。
(ネットワークの構成について)
図3は、本実施例に係るクライアント・サーバー型のストレージサービスを実現可能なシステムのネットワーク構成を示す図である。図示するようにシステムは、MFPと、クライアントと、情報処理サーバーと、ストレージサーバーとから構成されている。システムを構成するこれらの装置は、インターネット350を介して接続されており、インターネット350を介して互いにデータをやり取りすることが可能である。
図3において、MFP150はMFP100と同様の機能を有するMFPである。クライアント201及びクライアント250は、クライアント用OSがインストールされたPCである。情報処理サーバー300、情報処理サーバー301、及び情報処理サーバー302は、情報処理サーバー用OSがインストールされたPCである。ストレージサーバー400及びストレージサーバー401は、ストレージサービスでファイルをアップロードするために用いられるPCである。図3に示すクライアント、情報処理サーバー、及びストレージサーバーとして、図2を用いて説明したPC200を用いることが可能である。なおここでは、図示するように、2台のMFPと、2台のクライアントと、3台の情報処理サーバーと、2台のストレージサーバーとから構成されたシステムについて説明しているが、これらの装置の台数は本例に限定されず任意に変更して良い。
以下、図3に示したシステムにより実現される本実施例に係るストレージサービスにおける処理について説明する。具体的には、クライアント201におけるユーザーの入力がトリガーとなって、情報処理サーバー300がMFP100に原稿読取を実行させ、該読取により得た画像データを情報処理サーバー301がストレージサーバー400にアップロードする処理である。なお以下では、情報処理サーバー300と情報処理サーバー301とが夫々異なる処理を実行する場合について説明するが、1個のサーバーで、情報処理サーバー300と情報処理サーバー301とが実行する処理をまとめて実行しても良い。
(クライアントが実行する処理について)
図4は、本実施例に係るクライアント201が実行する処理のフローチャートである。本処理は、クライアント201で立ち上げたアプリケーション上で、ユーザーがストレージサービスを利用した原稿読取を指示すると開始する。
ステップS101(以下S101と略記し、他のステップも同様に略記する。)において、クライアント201は、原稿読取に関するユーザー側で設定可能な条件及び保存先候補を問い合わせるためのクエリーを、情報処理サーバー300に送信する。S102において、クライアント201は、S101で送信したクエリーに対する応答として、原稿読取に関するユーザー側で設定可能な条件及び保存先候補を含む情報を、情報処理サーバー300から受信する。S103において、クライアント201は、S102で情報処理サーバー300から受信した情報に基づくUI(ユーザインターフェース)を作成し、表示部205に表示する。図5に、S103でクライアント201が表示するUIの例を示す。図示するようにUI501は、読取詳細設定部502と、保存先指定部503と、読取開始ボタン504とを有する。ユーザーは、読取詳細設定部502を介して読取に関する詳細な条件を設定し、保存先指定部503を介して画像データの保存先を指定して、読取開始ボタン504を押下する。
S104において、クライアント201は、読取開始ボタン504が押下されたか否かを判定する。S104の判定の結果、読取開始ボタン504が押下された場合、S105に進む一方、読取開始ボタン504が押下されていない場合、ユーザーが読取開始ボタン504を押下するまで待つ。S105において、クライアント201は、UI501を介してユーザーが設定した内容に基づく原稿読取要求を、情報処理サーバー300に送信する。S106において、クライアント201は、S105で送信した原稿読取要求に対応する原稿読取応答を、情報処理サーバー300から受信する。
S107において、クライアント201は、S106で受信した原稿読取応答が原稿読取の受託を示すか否かを判定する。S107の判定の結果、原稿読取応答が原稿読取の受託を示す場合、一連の処理は終了する一方、原稿読取応答がエラーを示す場合、S108に進む。S108において、クライアント201は、表示部205にエラーメッセージを表示し、一連の処理は終了する。S108で表示するエラーメッセージは常に同一でも良いし、エラーの内容に応じて異なるエラーメッセージを表示しても良い。例えば、原稿読取応答が、前回の読取時にアップロードに失敗した画像データが残っていることが原因でスキャンできないことを示すとする。この場合、クライアント201は「前回の読取時に画像データのアップロードに失敗しました。この画像データがアップロードされるまではスキャンできません。空き領域を確保してからリトライしてください。」といったメッセージを表示しても良い。図4に示す一連の処理が終わった時点で、クライアント201における読取に関するジョブは終了する。これにより、クライアント201としてマルチタスク不可の物を用いている場合、ユーザーは、クライアント201上で他の操作を実行できるようになる。以上が、本実施例に係るクライアント201が実行する処理の内容である。
(情報処理サーバー300が実行する処理について)
図6は、S101でクライアント201により送信されたクエリーを受信する情報処理サーバー300が、該クエリーに対応する情報をクライアント201に送信する際に実行する処理のフローチャートである。S201において、情報処理サーバー300は、S101でクライアント201が送信した、原稿読取に関するユーザー側で設定可能な条件及び保存先候補を問い合わせるためのクエリーを受信する。S202において、情報処理サーバー300は、データベースに格納されているリストを参照し、ユーザーが利用するストレージサービスに対応する、原稿読取に関するユーザー側で設定可能な条件、及び、保存先候補を含む情報を取得する。なおここで情報処理サーバー300が参照するリストは、情報処理サーバー300自身が保有する。また、該リストには、ストレージサービス毎の、原稿読取に関する設定可能な条件及び保存先候補が保持されているため、情報処理サーバー300は、原稿読取の設定に関する情報をMFPの機種別に管理する必要は無い。S203において、情報処理サーバー300は、S202で取得した原稿読取に関するユーザー側で設定可能な条件及び保存先候補を含む情報を、クライアント201に送信する。
図7は、S105でクライアント201により送信された原稿読取要求を受信する情報処理サーバー300が、原稿読取要求に対応する原稿読取応答を送信する際に実行する処理のフローチャートである。S301において、情報処理サーバー300は、S105でクライアント201が送信した原稿読取要求を受信する。S302において、情報処理サーバー300は、S301で受信した原稿読取要求に従ってスキャンチケットを作成する。なお、スキャンチケットの詳細は後述する。
S303において、情報処理サーバー300は、アップロードの準備ができているか否かを問い合わせるためのクエリーを、情報処理サーバー301に送信する。本ステップで送信するクエリーは、S302で作成したスキャンチケットを含んで良く、また情報処理サーバー301は、MFP100での読み取りにより得た画像データを一時的に保存する機能を有する(詳細は後述する)。S304において、情報処理サーバー300は、S303で送信したクエリーに対する応答として、アップロードの準備ができているか否かを示す情報を、情報処理サーバー301から受信する。S305において、情報処理サーバー300は、S304で受信した情報に基づき、アップロードの準備ができているか否かを判定する。S305の判定の結果、アップロードの準備ができている場合、S306に進む一方、アップロードの準備ができていない場合、S311に進む。
S306において、情報処理サーバー300は、S302で作成したスキャンチケットを含む原稿読取ジョブを、MFP100に送信する。S307において、情報処理サーバー300は、S306で送信した原稿読取ジョブに対する応答を、MFP100から受信する。S308において、情報処理サーバー300は、S307で受信した応答に基づき、原稿読取ジョブの受付に成功したか否かを判定する。S308の判定の結果、原稿読取ジョブの受付に成功した場合、S309に進む一方、原稿読取ジョブの受付に失敗した場合、S311に進む。
S309において、情報処理サーバー300は、クライアント201に送信する原稿読取応答に、原稿読取ジョブがMFP100に登録されたことを示す情報(“成功”を示す値)をセットする。S310において、情報処理サーバー300は、原稿読取応答をクライアント201に送信する。
一方、原稿読取ジョブが受け付けられなかった場合(S305又はS308でNO)、S311において、情報処理サーバー300は、原稿読取応答に、原稿読取ジョブがMFP100に登録されなかったことを示す情報(“失敗”を示す値)をセットする。その後S310に進み、情報処理サーバー300は、原稿読取応答をクライアント201に送信する。
S310で原稿読取応答をクライアント201に送信すると、一連の処理は終了し、ストレージサービスにおける情報処理サーバー300の役割は終了する。以上が、本実施例に係る情報処理サーバー300が実行する処理の内容である。
(スキャンチケットについて)
図8に、S302で作成するスキャンチケットの一例を示す。図示するようにスキャンチケット701は、読取設定保持部702と、機種情報保持部703と、画像処理設定保持部704と、アップロード情報保持部705とから構成されている。読取設定保持部702には、UI501を介してユーザーが設定した読取に関する詳細な条件(原稿の種類、サイズ等)が保持されている。機種情報保持部703には、情報処理サーバー300のデータベースを参照することで取得可能なMFP100に関する情報(機種名、読取機構の方式等)が保持されている。画像処理設定保持部704には、UI501を介してユーザーが設定した画像処理に関する詳細な条件(取得する画像データの形式等)が保持されている。アップロード情報保持部705には、ストレージサーバー400へのアップロードに関する情報、及び、アップロードに失敗したときに実行されるリトライを制御するための情報が保持されている。本実施例では、ストレージサーバー400へのアクセスは、情報処理サーバー301によってサポートされている。従って、ストレージサーバー400にアクセスするために必要な情報(具体的にはストレージサービスにログインするためのユーザー名やパスワード等)を、アップロード情報保持部705で保持し、後続の処理で情報処理サーバー301が利用できるようにする。
アップロード情報保持部705の項目「Remain Retry Counter」は、アップロードをリトライする回数を示す。「Remain Retry Counter」の値は、アップロードのリトライが1回実行される毎に1減少し、「Remain Retry Counter」の値が0になるとアップロードのリトライが実行されなくなる。アップロード情報保持部705の項目「Retry Next Time」は、リトライを開始するタイミングを示す。即ち「Retry Next Time」の時刻以降の任意のタイミングで、アップロードのリトライが実行される。これにより、一定若しくは可変の時間を待ってからアップロードのリトライを実行するように実装することが可能となるので、頻繁なリトライが引き起こすネットワークトラフィックの悪化を防止することが可能となる。「Remain Retry Counter」の値が0になった場合、アップロード用に情報処理サーバー301で一時的に保存していた画像データやこれに付随するスキャンチケットは通常、ストレージ容量を解放するために削除される。その場合、情報処理サーバー301は、一時的に保存していた画像データを削除する旨を、メールやリアルタイムコミュニケーションツールなどでユーザーに告知し、ユーザーの承認を得てから画像データを削除するように実装しても良い。尚、情報処理サーバー301が許容できるのであれば、情報処理サーバー301で一時的に保存している画像データやこれに付随するスキャンチケットを、そのまま保存し続けても構わない。これにより、アイドルタイム時にバックグランドジョブとして画像データの再アップロードを実行させたり、または、ユーザーによって次のスキャン指示がなされた場合に、画像データの再アップロードを試みたりすることが可能となる。
(MFPが実行する処理について)
図9は、S306で情報処理サーバー300により送信された原稿読取ジョブを受信するMFP100が実行する処理のフローチャートである。
S401において、MFP100は、S306で情報処理サーバー300が送信した原稿読取ジョブを受信する。上述の通り、本ステップで受信する原稿読取ジョブには、スキャンチケットが含まれる。S402において、MFP100は、S401で得たスキャンチケットを解析する。S403において、MFP100は、スキャンチケットの内容が正しいか否かを判定する。S403の判定の結果、スキャンチケットの内容が正しい場合、S404に進む一方、スキャンチケットの内容が正しくない場合、S410に進む。
S404において、MFP100は、S401で受信した原稿読取ジョブに対する応答を、情報処理サーバー300に送信する。本ステップで送信する応答には、原稿読取ジョブの受付に成功した旨を示す情報が含まれる。S405において、MFP100は、スキャンチケット701の読取設定保持部702の内容に従って原稿の読取を行い、画像データを生成する。S406において、MFP100は、原稿の読取に成功したか否かを判定する。S406の判定の結果、読取に成功した場合、S407に進む一方、読取に失敗した場合、S409に進む。
S407において、MFP100は、S405での読取により得た画像データ、及び、該画像データに対応付けられているスキャンチケットを、情報処理サーバー301に送信する。なお、本ステップで画像データを送信する際、画像データをバンド単位に分けて随時送信しても構わない。S408において、MFP100は、S407におけるデータ送信に成功したか否かを判定する。S408の判定の結果、データ送信に成功した場合、一連の処理は終了する一方、データ送信に失敗した場合、S409に進む。
原稿読取ジョブの受付に成功したが、画像データの取得又は送信に失敗した場合(S406又はS408でNO)、S409において、MFP100は、エラー画面を表示したり、ランプを点滅させたりすることで、エラーが発生した旨をユーザーに通知する。本ステップによりエラーの発生を知ったユーザーは、MFP100を操作してエラーを解除する必要がある。
原稿読取ジョブの受付に失敗した場合(S403でNO)、S410において、MFP100は、S401で受信した原稿読取ジョブに対する応答を、情報処理サーバー300に送信する。本ステップで送信する応答には、原稿読取ジョブの受付に失敗した旨を示す情報が含まれる。
図9に示す一連の処理が終了すると、ストレージサービスにおけるMFP100の役割は終了し、MFP100は他のジョブを実行可能となる。以上が、本実施例に係るMFP100が実行する処理の内容である。
(情報処理サーバー301に保存されるデータについて)
図10は、情報処理サーバー301のディスク装置に保存されるデータを説明するための図である。情報処理サーバー301は、MFP100から送信される、画像データ及びこれに付随するスキャンチケット等のデータを一時的に保存する機能を有する。「一時的」とは、情報処理サーバー301に恒久的にファイルを保存することは想定しておらず、ストレージサーバー400への画像データのアップロード完了時など所定の条件を満たす場合に、情報処理サーバー301からデータを削除することを意味する。
図10に示すように情報処理サーバー301は、外部の画像処理サーバーと、画像データおよびスキャンチケットのやり取り(送受信)を行う。情報処理サーバー301から画像データおよびスキャンチケットを受信した画像処理サーバーは、該受信したスキャンチケットの内容に基づく画像処理を、該受信した画像データに施す。そして、画像処理サーバーは、該画像処理後の画像データおよびスキャンチケットを、情報処理サーバー301に送信する。
また情報処理サーバー301は、外部のファイル変換サーバーと、画像データおよびスキャンチケットのやり取り(送受信)を行う。情報処理サーバー301から画像データおよびスキャンチケットを受信したファイル変換サーバーは、該受信したスキャンチケットの内容に従って、画像データのファイル形式を変換する。そして、ファイル変換サーバーは、該変換後の画像データおよびスキャンチケットを、情報処理サーバー301に送信する。
なお、上述の外部サーバーによる画像処理およびファイル変換は、エラーが発生しない状況下で継続的に実行される。スキャンチケットの内容に従っての処理が何らかの理由により実行できなくなった場合(エラーが発生した場合)、基本的にはジョブの滞留を防ぐために、該当する画像データ及びスキャンチケットは削除される。通常の画像処理などにおいては、処理がエラーとなるケースは殆ど想定されないが、そのような場合に、情報処理サーバー301がエラーとなった画像処理だけをスキップし残りの処理を継続して実行するように実装することも可能である。
一方、ストレージサーバー400への画像データのアップロードにおいて、スキャン自体は成功していてもユーザーの空き容量が不足していること等が原因で画像データをアップロードできないエラーが発生する場合が想定される。このような場合、最終的に画像データがストレージサーバーにアップロードされることをユーザーが望んでいることから、情報処理サーバー301は、アップロード処理をスキップせず、後でアップロードのリトライ処理を実行する。また本実施例では、アップロード失敗時にデータが消失することを防ぐため、情報処理サーバー301は、リトライ用に画像データ及びスキャンチケットを一時的に保存しておく。本実施例では、情報処理サーバー301により、リトライ用に一時的に保存される画像データ及びスキャンチケット等のデータの状態を「テンポラリ(状態)」と呼び、該データを「テンポラリファイル」と呼ぶ。また、テンポラリファイルが保存されるフォルダを「テンポラリフォルダ」と呼ぶ。
(情報処理サーバー301が実行する前処理について)
図11は、アップロードの準備ができているか否かを問い合わせるためのクエリーを受信する情報処理サーバー301が、該クエリーに対する応答を送信するために実行する前処理のフローチャートである。「前処理」とは、原稿読取により得る画像データをアップロードするにあたり前もって実行する処理を意味し、アップロードの準備処理(例えば空き容量の解放)などを含む。
S501において、情報処理サーバー301は、アップロードの準備ができているか否かを問い合わせるためのクエリーを、情報処理サーバー300から受信する。S502において、情報処理サーバー301は、S501で受信したクエリーに含まれるスキャンチケットに保持された情報(ユーザー名やパスワード等)を用いて、ユーザーが利用を望むストレージサービス(ストレージサーバー400)にログインする。なお、S501でクエリーを受信した後にログイン処理を行っても良いし、前の時点で行ったログイン処理によるログイン状態が継続されていても良い。ログイン状態が継続されている場合は、本ステップでのログイン処理はスキップされる。S503において、情報処理サーバー301は、ストレージサービスへのログインに成功したか否かを判定する。S503の判定の結果、ログインに成功した場合、S504に進む一方、ログインに失敗した場合、S512に進む。
S504において、情報処理サーバー301は、ログイン中のユーザーに対応するテンポラリファイル(画像データおよびスキャンチケット)が情報処理サーバー301に保存されているか否かを判定する。S504の判定の結果、テンポラリファイルが保存されていない場合、S505に進む一方、テンポラリファイルが保存されている場合、S506に進む。
S505において、情報処理サーバー301は、S501で受信したクエリーに対する応答として、アップロードの準備ができている旨を示す情報を、情報処理サーバー300に送信する。
ログイン中のユーザーに対応するテンポラリファイルが存在する場合(S504でYES)、S506において、情報処理サーバー301は、ストレージサービスにおける、該ユーザーに対する空き容量を取得する。S507において、情報処理サーバー301は、S506で取得した空き容量と、テンポラリファイルとして一時的に保存している画像データのサイズとを比較し、該空き容量が該画像データのサイズ以上であるか否かを判定する。S507の判定の結果、空き容量がテンポラリの画像データのサイズ以上である場合、S508に進む一方、該空き容量が該サイズ未満である場合、S511に進む。なお、ストレージサービスにおけるユーザーの空き容量を調べる手段がない場合、S506およびS507は省略して構わない。
S508において、情報処理サーバー301は、テンポラリファイルとして一時的に保存している画像データの、ストレージサーバー400へのアップロードを試みる(アップロードのリトライ処理)。S509において、情報処理サーバー301は、S508でのアップロードに成功したか否かを判定する。S509の判定の結果、アップロードに成功した場合、S510に進む一方、アップロードに失敗した場合、S511に進む。
テンポラリファイルのアップロードに成功した場合(S509でYES)、S510において、情報処理サーバー301は、テンポラリファイルとして保存していた画像データ及びスキャンチケットを、テンポラリフォルダから削除する。そしてS505において、情報処理サーバー301は、S501で受信したクエリーに対する応答として、アップロードの準備ができている旨を示す情報を、情報処理サーバー300に送信する。
テンポラリの画像データが存在するが、該画像データをアップロードするための空き容量が不足している場合(S507でNO)や、該画像データのアップロードに失敗した場合(S509でNO)、S511に進む。S511において、情報処理サーバー301は、アップロードのリトライ処理をジョブリストに登録する。そしてS512において、情報処理サーバー301は、S501で受信したクエリーに対する応答として、アップロードの準備ができていない旨を示す情報を、情報処理サーバー300に送信する。
ストレージサービスへのログインに失敗した場合(S503でNO)、S512において、情報処理サーバー301は、S501で受信したクエリーに対する応答として、アップロードの準備ができていない旨を示す情報を、情報処理サーバー300に送信する。
S505又はS512で、情報処理サーバー301が、S501で受信したクエリーに対する応答を送信すると、一連の処理は終了する。以上が、本実施例に係る情報処理サーバー301が実行する前処理の内容である。
(情報処理サーバー301が実行する処理(原稿読取により得る画像データを受信しアップロードする処理)について)
図12は、本実施例に係る情報処理サーバー301が実行する、MFP100での原稿読取により得る画像データを受信し、アップロードする処理のフローチャートである。
S601において、情報処理サーバー301は、画像データ及びスキャンチケットを、MFP100から受信する。なお上述の通り、本ステップで受信する画像データは、必要に応じて、画像処理が施されたりファイル形式が変換されたりすることで、ストレージサーバー400にアップロードする画像データが生成される(図10参照)。S602において、情報処理サーバー301は、上述の前処理の段階で既にストレージサービスにログイン中であるユーザーに対する空き容量を取得する。S603において、情報処理サーバー301は、S602で取得した空き容量と、ストレージサーバー400にアップロードする画像データのサイズとを比較し、該空き容量が該画像データのサイズ以上であるか否かを判定する。S603の判定の結果、空き容量がアップロードする画像データのサイズ以上である場合、S604に進む一方、そうでない場合、S608に進む。
S604において、情報処理サーバー301は、画像データのストレージサーバー400へのアップロードを実行する。S605において、情報処理サーバー301は、S604でのアップロードに成功したか否かを判定し、該判定の結果、アップロードに成功した場合、S606に進む一方、アップロードに失敗した場合、S608に進む。
S606において、情報処理サーバー301は、ストレージサーバー400へのアップロードに成功した画像データ、及び、該画像データに対応付けられているスキャンチケットを削除する。そしてS607において、情報処理サーバー301は、ストレージサービス(ストレージサーバー400)からログアウトする。
空き容量の不足やアップロード失敗などが原因でエラーとなった場合(S603又はS605でNO)、S608に進む。S608において、情報処理サーバー301は、アップロードできなかった画像データ及び該画像データに対応付けられているスキャンチケットを、テンポラリファイルとして保存する。なお、本ステップでテンポラリファイルを保存する際、後で実行するテンポラリファイルの検索を容易にするため、ユーザーと紐付けして(ユーザー毎に)テンポラリファイルを保存しても良い。続くS609において、情報処理サーバー301は、テンポラリファイルがある旨をユーザーに通知する。ここでユーザーに通知する方法としては、ジョブを実行したユーザーの登録メールアドレスにメールを送信したり、SNSを利用したりすることが考えられる。例えば、空き容量の不足が原因でエラーとなった場合に、情報処理サーバー301が「空き容量の不足によりスキャンデータを保存できません。空き容量を確保して下さい。」という内容のメールを送信しても良いし、SNSで同内容のツイートを実行しても良い。或いは、情報処理サーバー301が対応アプリケーションをクライアント201上で起動しエラーメッセージを表示させることや、クライアント201上で対応アプリケーションが起動したタイミングで情報処理サーバー301がエラーを通知することも考えられる。なお、本ステップによるユーザーへの通知は省略しても構わない。S610において、情報処理サーバー301は、アップロードのリトライ処理を後で実行するようジョブリストに登録する。
S607でログアウト又はS610でアップロードのリトライ処理を登録すると、一連の処理は終了する。
(アップロードのリトライ処理について)
以下、アップロードのリトライ処理について説明する。アップロードのリトライ処理は上述したように、ユーザーが原稿読取を指示したときに該ユーザーに対応するテンポラリファイルが存在している場合に実行されるリアルタイム処理である(図11のS508)。このようにアップロードのリトライ処理は、ユーザーのアクションがトリガーとなって実行される処理であるが、情報処理サーバー301は、ユーザーのアクションとは関係なくバックグラウンドで該リトライ処理を繰り返し実行することが望ましい。その理由は、こうすることで、ユーザーがストレージサーバー内の不要ファイルを削除し空き領域を確保した場合に、テンポラリの画像データが自動的にアップロードされ、原稿読取による新しい画像データの取得およびアップロードが可能となるからである。ただし、ユーザーによる不要ファイルの削除処理には時間がかかるため、頻繁にリトライ処理を実行することはあまり有用とは言えず、また、頻繁なリトライ処理の実行は情報処理サーバー301にとって負荷となる。従って、アップロードのリトライ処理は、所定時間ごとに実行することが望ましい。
図13は、アップロードのリトライ処理を制御する処理のフローチャートである。情報処理サーバー301が起動され、読取ジョブの受付が可能になると同時に、アップロードのリトライ処理を行うプロセスが開始する。
S701において、情報処理サーバー301は、アップロードのリトライ処理を制御するためのタスクを、バックグラウンドで開始する。S702において、情報処理サーバー301は、実行すべきジョブとしてアップロードのリトライ処理が登録されるジョブリスト(以下、リトライ処理登録ジョブリスト)を初期化する。本ステップでの初期化により、リトライ処理登録ジョブリストにジョブが登録されていない状態になり、上述のS511又はS610により、リトライ処理登録ジョブリストにアップロードのリトライ処理が追加される。S703において、情報処理サーバー301は、リトライ処理登録ジョブリストに登録されているジョブ(即ちアップロードのリトライ処理)があるか否かを判定する。S703の判定の結果、リトライ処理登録ジョブリストに登録されているジョブがある場合、S704に進み、そうでない場合、S708に進む。
S704において、情報処理サーバー301は、リトライ処理登録ジョブリストに登録されているジョブを登録順に処理するために、着目ジョブを取得する。S705において、情報処理サーバー301は、着目ジョブ(アップロードのリトライ処理)を実行する。詳細は後述するが(図14参照)、本ステップでアップロードに成功した場合、着目ジョブに対応するテンポラリの画像ファイルは削除されるため、該着目ジョブは後続の処理対象及び判定対象から除外される。S706において、情報処理サーバー301は、リトライ処理登録ジョブリストに登録されているジョブ(即ちアップロードのリトライ処理)があるか否かを判定する。S706の判定の結果、リトライ処理登録ジョブリストに登録されているジョブがある場合、S707に進み、そうでない場合、S703に戻る。
S707において、情報処理サーバー301は、着目ジョブを更新する。具体的には、これまで着目していたジョブの次に登録されたジョブを、着目ジョブとして設定する。なお、これまで着目していたジョブの次に登録されたジョブが存在しない場合、最初に登録されたジョブを、着目ジョブとして設定する。S708において、情報処理サーバー301は、アップロードのリトライ処理を行うプロセスの終了要求がシステムから来たか否かを判定する。S708の判定の結果、プロセスの終了要求が来た場合、一連の処理は終了する一方、そうでない場合、S703に戻る。
図14は、図13のS705で実行するリトライ処理のフローチャートである。S801において、情報処理サーバー301は、S704で取得した着目ジョブ(即ちアップロードのリトライ処理)に対応するスキャンチケットを取得する。上述したように、スキャンチケットは、「Retry Next Time」の項目で、リトライ処理を開始するタイミングに関する情報を保持しており(図8参照)、本ステップにより「Retry Next Time」の値(時刻)が取得される。S802において、情報処理サーバー301は、現在時刻が「Retry Next Time」の時刻以降であるか否かを判定する。S802の判定の結果、現在時刻が「Retry Next Time」の時刻以降である場合、S803に進み、そうでない場合、一連の処理は終了する。
S803において、情報処理サーバー301は、ストレージサービスにおけるユーザーに対する空き容量を取得する。S804において、情報処理サーバー301は、S803で取得した空き容量と、テンポラリの画像データのサイズとを比較し、該空き容量が該テンポラリの画像データのサイズ以上であるか否かを判定する。S804の判定の結果、空き容量がテンポラリの画像データのサイズ以上である場合、S805に進む一方、そうでない場合、S809に進む。
S805において、情報処理サーバー301は、テンポラリの画像データの、ストレージサーバー400へのアップロードを試みる。S806において、情報処理サーバー301は、S805でのアップロードに成功したか否かを判定する。S806の判定の結果、アップロードに成功した場合、S807に進む一方、アップロードに失敗した場合、S809に進む。
S807において、情報処理サーバー301は、テンポラリファイルとして保存していた画像データ及びスキャンチケットをテンポラリフォルダから削除し、一連の処理は終了する。
テンポラリの画像データをアップロードするための空き容量が不足している場合(S804でNO)や、該アップロードに失敗した場合(S806でNO)、S809に進む。S809において、情報処理サーバー301は、「Remain Retry Counter」の値(即ち、残りのリトライ回数)を1減らしてスキャンチケットを更新する。S810において、情報処理サーバー301は、「Remain Retry Counter」の値が0であるか否かを判定する。S810の判定の結果、「Remain Retry Counter」の値が0である場合、一連の処理は終了する一方、そうでない場合、S811に進む。
S811において、情報処理サーバー301は、次のリトライのために「Retry Next Time」の値を現在時刻より後の任意の時刻に書き換えることで、スキャンチケットを更新し、一連の処理は終了する。なお、S811で「Retry Next Time」の値を書き換える際、リトライ処理の間隔を最初は短く設定し、実行したリトライ処理の回数が増加するに従って、リトライ処理の間隔を徐々に長くなるように設定しても良い。
(システムが実行する処理について)
図15は、ユーザーがクライアント201を用いて原稿読取を指示してから、ストレージサーバー400に画像データがアップロードされるまでの、本実施例に係るシステムによって実行される処理を説明するためのシーケンスチャートである。以下、各処理を時系列順に説明する。
クライアント201は、原稿読取に関するユーザー側で設定可能な条件及び保存先候補を、情報処理サーバー300に問い合わせる(S101)。情報処理サーバー300は、自身が保有するデータベースに格納されているリストを参照し、原稿読取に関するユーザー側で設定可能な条件と保存先候補とを含む情報を取得(S202)し、該情報をクライアント201に送信する。クライアント201は、該情報を受信し(S102)、該受信した情報に基づくUIを表示し(S103)、ユーザーがUIを介して設定した原稿読取要求を情報処理サーバー300に送信する(S105)。情報処理サーバー300は、受信した原稿読取要求に従いスキャンチケットを作成し(S302)、アップロードの準備ができているかを、アップロードを管理する情報処理サーバー301に問い合わせる(S303)。問い合わせを受けた情報処理サーバー301は、ストレージサーバー400にログインする(S502)。また、情報処理サーバー301は、テンポラリの画像データが存在するか否かを判定し、テンポラリの画像データが存在する場合、該画像データのストレージサーバー400へのアップロードを試みる(S508)。さらに、情報処理サーバー301は、アップロードの準備ができているか否かを示す情報を、情報処理サーバー300に送信する。情報処理サーバー300は、該送信された情報を受信する(S304)。
以下、情報処理サーバー301にテンポラリの画像データが保存されていなかった場合、及び、情報処理サーバー301がテンポラリの画像データのアップロードに成功した場合について説明する。これらの場合、情報処理サーバー301において新しい画像データのアップロードの準備ができているため、情報処理サーバー300は、原稿読取ジョブをMFP100に送信する(S306)。MFP100は、該原稿読取ジョブを受信し、該原稿読取ジョブに含まれるスキャンチケットを解析し(S402)、該原稿読取ジョブを受け付けたか否かを示す情報を、受信した原稿読取ジョブに対する応答として情報処理サーバー300に送信する。なお本例では、原稿読取ジョブの受付に成功しているものとする。情報処理サーバー300は、該原稿読取ジョブに対する応答(OK)を受信し(S307)、当該受信した応答(OK)に基づく原稿読取応答をクライアント201に送信する。その後、クライアント201は、該原稿読取応答を受信する(S106)。
MFP100は、スキャンチケットの内容に基づく原稿読取を実行し(S405)、取得した画像データ及びスキャンチケットを、情報処理サーバー301に送信する(S407)。なお、MFP100がスキャンチケットを送信する際、MFP100における処理内容を書き込む等、必要に応じてスキャンチケットを更新して良い。
画像データ及びスキャンチケットを受信した情報処理サーバー301は、必要に応じて画像処理、ファイル形式変換処理を画像データに施し、ストレージサーバー400にアップロードする(S604)。該アップロードに成功した場合、情報処理サーバー301は、ストレージサーバー400からログアウトする(S607)。一方、該アップロードに失敗した場合、情報処理サーバー301は、ストレージサーバー400に転送しようとしていた画像データをそのままテンポラリファイルとして保存する(S608)。情報処理サーバー301に保存されているテンポラリの画像データに対し、該テンポラリの画像データをアップロードするためのリトライ処理は自動的に(即ち、所定時間ごとに1回、所定回数繰り返して)実行される(S805)。テンポラリの画像データは、ストレージサーバー400へのアップロードに成功すると、情報処理サーバー301から削除される。
上述のように本実施例では、ストレージサービスを利用したデータのアップロードにおいてテンポラリの画像データを活用する。これにより、ストレージサービスにおけるユーザーの空き容量の不足が原因で、MFPでの原稿読取により取得した画像データをストレージサーバーに転送できない場合であっても、該画像データが消失することは無くなる。従ってユーザーは、安心してMFPの機能を最大限に使用することができる。また本実施例では、テンポラリの画像データのストレージサーバーへの自動的なアップロードを試みる。これにより、ユーザーの利便性が向上する。さらに本実施例では、様々な機能差のあるMFPやストレージサービスが存在してもサーバーはそれらを個別に管理する必要がないため、様々なシステムに柔軟に実装することができる。
<その他の実施例>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100・・・MFP
301・・・情報処理サーバー
400・・・ストレージサーバー

Claims (16)

  1. データをストレージサーバーにアップロードするサービスのためのシステムであって、
    原稿を読み取る読取部を備える読取装置が、当該読取部により原稿を読み取ることで取得された画像データであって、当該読取装置から送信された画像データの、前記ストレージサーバーへのアップロードを試みるアップロード手段と、
    前記アップロードに失敗した場合、前記画像データを、前記サービスにログイン中のユーザーに対応付けて保存する保存手段と、
    前記保存手段が前記画像データを保存する場合に、前記ユーザーに、前記アップロードの失敗に関する所定の通知を行う通知手段と、を有し、
    前記アップロード手段は、前記読取装置による原稿読取をユーザーが指示し、かつ、前記保存手段が当該ユーザーに対応付けて前記画像データを保存していることに基づいて、当該画像データの前記ストレージサーバーへのアップロードを再び試みることを特徴とするシステム。
  2. データをストレージサーバーにアップロードするサービスのためのシステムであって、
    原稿を読み取る読取部を備える読取装置が原稿を読み取ることで取得され、当該読取装置から送信された画像データの前記ストレージサーバーへのアップロードを試みるアップロード手段と、
    前記アップロードに失敗した場合、前記画像データを保存する保存手段と、
    前記保存手段が前記画像データを保存する場合に、前記サービスにログイン中のユーザーの登録メールアドレスにメールを送信することで当該ユーザーに前記アップロードの失敗に関する所定の通知を行う通知手段と、を有し、
    前記アップロード手段は、前記保存手段に保存した前記画像データの前記ストレージサーバーへのアップロードを再び試みることを特徴とするシステム。
  3. 前記ストレージサーバーにデータを転送するサーバーを備え、
    前記サーバーは、前記アップロード手段と、前記保存手段と、を有することを特徴とする請求項1または2に記載のシステム。
  4. 前記読取装置は、画像を印刷する印刷部をさらに有することを特徴とする請求項1乃至3の何れか1項に記載のシステム。
  5. 前記読取装置による原稿読取をユーザーが指示し、かつ、前記保存手段が前記画像データを保存している場合に、前記アップロード手段は、該画像データのアップロードを再び試みることを特徴とする請求項2に記載のシステム。
  6. 前記アップロード手段は、所定時間ごとに1回、所定回数繰り返して、前記画像データのアップロードを再び試みることを特徴とする請求項1乃至5の何れか1項に記載のシステム。
  7. 原稿読取の要求の受信に応じて、前記読取装置に原稿読取ジョブを送信することで、前記読取部により原稿を読み取らせて当該読取により得られた画像データを送信させる送信制御手段をさらに有し、
    前記送信制御手段により前記読取装置が送信した画像データが前記保存手段により保存されているときに、当該画像データに対応付けられているユーザーからの原稿読取の要求が受信された場合、前記アップロード手段は、当該画像データのアップロードを再び試みることを特徴とする請求項1に記載のシステム。
  8. 記アップロード手段が、前記保存手段により保存されている画像データのアップロードを、当該画像データに対応付けられているユーザーからの原稿読取の要求に応じて再び試み、当該アップロードが成功した場合、前記送信制御手段は、当該要求に応じて、前記読取装置に新たに画像データを送信させることを特徴とする請求項7に記載のシステム。
  9. 画像データが前記保存手段により保存されているときに、当該画像データに対応付けられているユーザーからの要求が受信された場合、前記アップロード手段は、前記ストレージサーバーにログインした後に当該画像データのアップロードを再び試みることを特徴とする請求項7または8に記載のシステム。
  10. 前記アップロード手段が再び試みた画像データのアップロードが完了したときに前記ストレージサーバーからログアウトされずに、前記読取装置により新たに送信された画像データのアップロードが行われたときに前記ストレージサーバーからログアウトされることを特徴とする請求項8に従属する請求項9に記載のシステム。
  11. 前記アップロード手段が再び試みた画像データのアップロードに成功した場合、前記保存手段から当該画像データを削除する削除手段をさらに有することを特徴とする請求項1乃至10のいずれか1項に記載のシステム。
  12. 前記通知手段は、前記ユーザーの登録メールアドレスにメールを送信することで、前記保存手段に保存するデータが存在することを前記ユーザーに通知することを特徴とする請求項1に記載のシステム。
  13. データをストレージサーバーにアップロードするサービスのための方法であって、
    原稿を読み取る読取部を備える読取装置が、当該読取部により原稿を読み取ることで取得された画像データであって、当該読取装置から送信された画像データの、前記ストレージサーバーへのアップロードを試みる第1の工程と、
    前記アップロードに失敗した場合、前記画像データを、前記サービスにログイン中のユーザーに対応付けて保存する第2の工程と、
    前記第2の工程で前記画像データを保存する場合に、前記ユーザーに、前記アップロードの失敗に関する所定の通知を行う第3の工程と、
    前記読取装置による原稿読取をユーザーが指示し、かつ、前記第2の工程で当該ユーザーに対応付けて前記画像データを保存していることに基づいて、当該画像データの前記ストレージサーバーへのアップロードを再び試みる第4の工程と、
    を有することを特徴とする方法。
  14. データをストレージサーバーにアップロードするサービスのための方法であって、
    原稿を読み取る読取部を備える読取装置が原稿を読み取ることで取得され、当該読取装置から送信された画像データの前記ストレージサーバーへのアップロードを試みる第1の工程と、
    前記アップロードに失敗した場合、前記画像データを保存する第2の工程と、
    前記第2の工程で前記画像データを保存する場合に、前記サービスにログイン中のユーザーの登録メールアドレスにメールを送信することで当該ユーザーに前記アップロードの失敗に関する所定の通知を行う第3の工程と、
    前記第2の工程で保存した前記画像データの前記ストレージサーバーへのアップロードを再び試みる第4の工程と、
    を有することを特徴とする方法。
  15. コンピュータに、
    データをストレージサーバーにアップロードするサービスのための方法であって、
    原稿を読み取る読取部を備える読取装置が、当該読取部により原稿を読み取ることで取得された画像データであって、当該読取装置から送信された画像データの、前記ストレージサーバーへのアップロードを試みる第1の工程と、
    前記アップロードに失敗した場合、前記画像データを、前記サービスにログイン中のユーザーに対応付けて保存する第2の工程と、
    前記第2の工程で前記画像データを保存する場合に、前記ユーザーに、前記アップロードの失敗に関する所定の通知を行う第3の工程と、
    前記読取装置による原稿読取をユーザーが指示し、かつ、前記第2の工程で当該ユーザーに対応付けて前記画像データを保存していることに基づいて、当該画像データの前記ストレージサーバーへのアップロードを再び試みる第4の工程と、
    を有する方法
    を実行させるためのプログラム。
  16. コンピュータに、
    データをストレージサーバーにアップロードするサービスのための方法であって、
    原稿を読み取る読取部を備える読取装置が原稿を読み取ることで取得され、当該読取装置から送信された画像データの前記ストレージサーバーへのアップロードを試みる第1の工程と、
    前記アップロードに失敗した場合、前記画像データを保存する第2の工程と、
    前記第2の工程で前記画像データを保存する場合に、前記サービスにログイン中のユーザーの登録メールアドレスにメールを送信することで、当該ユーザーに前記アップロードの失敗に関する所定の通知を行う第3の工程と、
    前記第2の工程で保存した前記画像データの前記ストレージサーバーへのアップロードを再び試みる第4の工程と、
    を有することを特徴とする方法
    を実行させるためのプログラム。
JP2016082228A 2016-04-15 2016-04-15 データを保存するシステム、サーバー、方法、及びプログラム Active JP6732508B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016082228A JP6732508B2 (ja) 2016-04-15 2016-04-15 データを保存するシステム、サーバー、方法、及びプログラム
EP17000483.2A EP3232329B1 (en) 2016-04-15 2017-03-23 System that saves data, server, and method
US15/478,416 US10178249B2 (en) 2016-04-15 2017-04-04 System that saves data, server, and method
CN201710235500.7A CN107302643B (zh) 2016-04-15 2017-04-12 保存数据的系统、信息处理服务器以及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016082228A JP6732508B2 (ja) 2016-04-15 2016-04-15 データを保存するシステム、サーバー、方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2017192110A JP2017192110A (ja) 2017-10-19
JP2017192110A5 JP2017192110A5 (ja) 2019-05-30
JP6732508B2 true JP6732508B2 (ja) 2020-07-29

Family

ID=58464123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016082228A Active JP6732508B2 (ja) 2016-04-15 2016-04-15 データを保存するシステム、サーバー、方法、及びプログラム

Country Status (4)

Country Link
US (1) US10178249B2 (ja)
EP (1) EP3232329B1 (ja)
JP (1) JP6732508B2 (ja)
CN (1) CN107302643B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180124437A1 (en) * 2016-10-31 2018-05-03 Twenty Billion Neurons GmbH System and method for video data collection
JP6944281B2 (ja) 2017-06-19 2021-10-06 キヤノン株式会社 情報処理装置、情報処理方法及び情報処理システム
JP7158845B2 (ja) * 2017-11-30 2022-10-24 キヤノン株式会社 画像読取装置、画像読取装置の制御方法、及びプログラム
JP7107042B2 (ja) * 2018-07-10 2022-07-27 富士フイルムビジネスイノベーション株式会社 情報処理装置、及び情報処理プログラム
CN109284410B (zh) * 2018-10-15 2022-08-16 五八有限公司 图像文件保存方法、装置、计算机设备及可读存储介质
JP7417860B2 (ja) * 2020-03-31 2024-01-19 マツダ株式会社 車両用情報通信装置及び車両情報の通信方法
CN112118550B (zh) * 2020-08-25 2022-06-17 山东钢铁集团日照有限公司 一种设备状态监测信息的无线传输方法
CN114615559A (zh) * 2022-03-02 2022-06-10 视若飞信息科技(上海)有限公司 一种用于终端的上传真实场景故障方法、装置及系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5379292A (en) * 1991-07-08 1995-01-03 Naldec Corporation Apparatus having priority order storages for recovery from failure of multiplex data transmission
US7764308B2 (en) * 2002-05-27 2010-07-27 Nikon Corporation Image transmission system, image relay apparatus, and electronic image device
JP2004258780A (ja) * 2003-02-24 2004-09-16 Seiko Epson Corp 印刷装置
JP4020091B2 (ja) * 2004-03-10 2007-12-12 日本電気株式会社 データ送受信システム、データ送受信方法およびデータ送受信プログラム
JP4627182B2 (ja) * 2004-12-03 2011-02-09 富士通株式会社 データ通信システム及び通信端末装置
US7631021B2 (en) * 2005-03-25 2009-12-08 Netapp, Inc. Apparatus and method for data replication at an intermediate node
US7864715B2 (en) * 2005-03-28 2011-01-04 Kyocera Corporation Data communication method, communication server system, and communication terminal
JP5361278B2 (ja) 2008-08-08 2013-12-04 キヤノン株式会社 画像管理装置、サーバコンピュータ、画像管理方法、及び、コンピュータプログラム
JP4706758B2 (ja) * 2009-01-21 2011-06-22 ブラザー工業株式会社 読取装置及び通信システム
US8656057B1 (en) * 2009-04-01 2014-02-18 Emc Corporation Opportunistic restore
US8291170B1 (en) * 2010-08-19 2012-10-16 Symantec Corporation System and method for event driven backup data storage
JP5804711B2 (ja) * 2011-01-27 2015-11-04 キヤノン株式会社 管理システム、画像形成装置、制御方法、及び、プログラム
CN103019614B (zh) * 2011-09-23 2015-11-25 阿里巴巴集团控股有限公司 分布式存储系统管理装置及方法
KR20130032728A (ko) * 2011-09-23 2013-04-02 삼성전자주식회사 화상형성장치, 화상형성장치에서 클라우드 서버와의 통신 방법 및 기록 매체.
JP6183119B2 (ja) * 2013-09-30 2017-08-23 ブラザー工業株式会社 中継装置、画像処理装置、中継装置のプログラムおよび画像処理装置のプログラム
CN104754012B (zh) * 2013-12-31 2019-02-15 北京新媒传信科技有限公司 一种数据传输方法和数据传输系统
US9189637B2 (en) * 2014-03-17 2015-11-17 Saudi Arabian Oil Company Systems, methods, and computer medium to securely transfer business transactional data between physically isolated networks having different levels of network protection utilizing barcode technology
JP2016054442A (ja) * 2014-09-04 2016-04-14 株式会社リコー 通信端末装置、通信システム、通信方法、及びプログラム
JP6458428B2 (ja) * 2014-09-30 2019-01-30 ブラザー工業株式会社 制御装置及びシステム
KR20160095904A (ko) * 2015-02-04 2016-08-12 삼성전자주식회사 클라우드 프린트 서버 및 클라우드 프린트 서버에서 자동화 연동 서비스를 제공하는 방법
JP6610082B2 (ja) * 2015-08-24 2019-11-27 富士ゼロックス株式会社 中継装置及び中継処理プログラム

Also Published As

Publication number Publication date
US20170302807A1 (en) 2017-10-19
EP3232329A1 (en) 2017-10-18
CN107302643B (zh) 2019-11-08
US10178249B2 (en) 2019-01-08
EP3232329B1 (en) 2020-02-05
CN107302643A (zh) 2017-10-27
JP2017192110A (ja) 2017-10-19

Similar Documents

Publication Publication Date Title
JP6732508B2 (ja) データを保存するシステム、サーバー、方法、及びプログラム
US9749480B1 (en) Method that performs from scanning to storing scan data using scan cloud ticket
JP5231620B2 (ja) サーバ装置
US12026411B2 (en) Server control method and storage medium for providing a cloud print service
JP6383175B2 (ja) 情報処理装置、方法、プログラム、及び情報処理システム
US9277084B2 (en) Data processing device, data processing system, and data processing method
JP6303505B2 (ja) 情報処理システム、情報処理方法、機器、及びプログラム
JP6274160B2 (ja) 画像形成装置、画像形成装置の制御プログラム、および管理方法
JP2019185657A (ja) 画像形成システム及び画像形成方法
US9405490B2 (en) Electronic apparatus, management server, print system and method of controlling printing including determining a plurality of storages to store print data
JP6060573B2 (ja) 出力システム、出力制御装置、出力装置及びプログラム
JP6163932B2 (ja) データ処理システム、情報処理システム、情報処理方法及びプログラム
US11079985B2 (en) Information processing system, and control method for printing downloaded print data
US9207886B2 (en) Relaying device, relaying method, image processing apparatus, and image processing system
JP6500542B2 (ja) 画像形成装置、プログラム及び画像形成システム
JP6127586B2 (ja) 情報処理システムおよび情報処理方法
JP6191867B2 (ja) データ中継装置、端末装置、データ処理システムおよびプログラム
JP6248594B2 (ja) 画像処理システム、画像処理装置、処理方法、および制御プログラム
JP6248563B2 (ja) 出力システム、端末装置、プログラム、及び出力方法
JP6089825B2 (ja) 情報処理システム及びデータ投入方法
JP6379983B2 (ja) 印刷システム、印刷方法、サーバー及びプログラム
US9826109B2 (en) System and method for distribution of hard copy documents in pull print system
JP6711263B2 (ja) 画像読取装置、画像読取方法及び画像形成プログラム
JP6014073B2 (ja) プリントサーバおよびプリンタ制御方法、並びにコンピュータ・プログラム
JP2013135438A (ja) データ送信装置、データ送信方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190415

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190415

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200525

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: 20200609

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200708

R151 Written notification of patent or utility model registration

Ref document number: 6732508

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151