JP6743622B2 - 中継サーバ及びシステム - Google Patents

中継サーバ及びシステム Download PDF

Info

Publication number
JP6743622B2
JP6743622B2 JP2016189467A JP2016189467A JP6743622B2 JP 6743622 B2 JP6743622 B2 JP 6743622B2 JP 2016189467 A JP2016189467 A JP 2016189467A JP 2016189467 A JP2016189467 A JP 2016189467A JP 6743622 B2 JP6743622 B2 JP 6743622B2
Authority
JP
Japan
Prior art keywords
information
access
service providing
communication interface
controller
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
JP2016189467A
Other languages
English (en)
Other versions
JP2018056751A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2016189467A priority Critical patent/JP6743622B2/ja
Publication of JP2018056751A publication Critical patent/JP2018056751A/ja
Application granted granted Critical
Publication of JP6743622B2 publication Critical patent/JP6743622B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Control Or Security For Electrophotography (AREA)

Description

本発明は、画像処理装置とサービス提供装置との通信を中継する中継サーバに関する。
従来より、インターネット上のサービス提供装置が提供するサービスを利用することができる画像処理装置が知られている。サービス提供装置が提供するサービスとは、例えば、画像処理装置がアップロードしたデータをサービス提供装置に記憶させるサービス、或いはサービス提供装置に記憶されているデータを画像処理装置にダウンロードするサービス等が挙げられる。
特開2008−229993号公報
インターネット上に存在する複数のサービス提供装置の一部は、ユーザ毎に個別に割り当てたメモリ領域に画像処理装置をアクセスさせる。すなわち、画像処理装置は、当該サービス提供装置が提供するサービスを利用するために、割り当てられたメモリ領域を示すアドレス情報を、予め記憶しておく必要がある。
しかしながら、画像処理装置は、記憶容量の大きなメモリを搭載していないものも多く、且つ処理対象の画像データを記憶するのに大きな記憶領域を必要とする。そのため、画像処理装置において、アドレス情報を記憶するための大きな記憶領域を確保することが難しいという課題がある。
本発明は、上記の事情に鑑みてなされたものであり、その目的は、データサイズの大きなアドレス情報を必要とするサービスを、画像処理装置に利用させることができる中継サーバを提供することにある。
本明細書では様々な開示を行う。開示例の1つである中継サーバは、通信インタフェースと、メモリと、コントローラとを備える。前記コントローラは、アドレス情報及びアクセスIDを、互いに対応付けて前記メモリに記憶させる記憶処理を実行する。前記アドレス情報は、画像処理装置が実行する画像処理動作の対象となる画像データを記憶可能なサービス提供装置のメモリ領域を示し且つ前記画像処理装置のユーザ毎に個別に割り当てられた情報である。前記アクセスIDは、前記アドレス情報よりサイズが小さく且つ前記アドレス情報を識別するための情報である。前記コントローラは、前記通信インタフェースを通じて前記画像処理装置から第1要求情報を受信する第1受信処理を実行する。前記第1要求情報は、前記アクセスIDを含み且つ前記サービス提供装置へのアクセスを要求するための情報である。前記コントローラは、前記第1要求情報に含まれる前記アクセスIDに対応付けられた前記アドレス情報を、前記メモリから読み出す読出処理と、前記通信インタフェースを通じて前記サービス提供装置に第2要求情報を送信する第1送信処理とを実行する。前記第2要求情報は、前記読出処理で読み出した前記アドレス情報で示される前記メモリ領域へのアクセスを要求するための情報である。前記コントローラは、前記通信インタフェースを通じて前記サービス提供装置からアクセス結果情報を受信する第2受信処理と、前記第2受信処理で受信した前記アクセス結果情報を、前記通信インタフェースを通じて前記画像処理装置に送信する第2送信処理とを実行する。前記アクセス結果情報は、前記第2要求情報に従って前記メモリ領域にアクセスした結果を示すための情報である。
上記構成によれば、データサイズの大きいアドレス情報を画像処理装置に記憶させなくても、ユーザ毎に個別に割り当てられたアドレス情報で示されるメモリ領域に、画像処理装置をアクセスさせることができる。
図1は、本実施形態に係るシステム100の概略図である。 図2(A)はMFP10のブロック図を、図2(B)はサービス提供装置110にアクセスするための情報を、図2(C)はサービス提供装置120にアクセスするための情報を示す。 図3(A)は情報処理端末50のブロック図を、図3(B)は中継サーバ80のブロック図を、図3(C)はアクセスリストを示す。 図4は、情報処理端末50を用いてTempIDを取得する処理を示すフローチャートである。 図5は、アクセスID或いはトークンをMFP10に記憶させる処理を示すフローチャートである。 図6は、スキャンアップロードサービスを利用するための処理を示すフローチャートである。 図7は、ダウンロードプリントサービスを利用するための処理を示すフローチャートである。 図8は、ディスプレイ53の表示例であって、(A)はサービス選択画面を、(B)はログイン画面を示す。 図9は、ディスプレイ23、53の表示例であって、(A)はURL入力画面を、(B)はTempID入力画面を示す。 図10は、ディスプレイ23の表示例であって、(A)はユーザ選択画面を、(B)はデータ選択画面を示す。
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
図1は、本実施形態におけるシステム100の概略図である。図1に示されるシステム100は、MFP10と、情報処理端末50と、中継サーバ80とで構成される。このシステム100は、サービス提供装置110、120からサービスの提供を受けるためのシステムである。MFP10、情報処理端末50、中継サーバ80、及びサービス提供装置110、120は、通信ネットワークを介して相互に通信可能とされている。通信ネットワークの具体例は特に限定されないが、例えば、インターネット101、無線LAN102、有線LAN103、或いはこれらの組み合わせであってもよい。
MFP10及び情報処理端末50は、無線LAN102に属している。また、無線LAN102は、ルータ102Aを通じてインターネット101に接続されている。さらに、中継サーバ80及びサービス提供装置110、120は、インターネット101に接続されている。そして、MFP10及び情報処理端末50は、ルータ102Aからインターネット101を経由して、中継サーバ80及びサービス提供装置110、120と通信することができる。但し、MFP10及び情報処理端末50は、異なる通信ネットワークに属していてもよい。
MFP10(Multi-Function Peripheralの略)は、図2(A)に示されるように、プリンタ11と、スキャナ12と、ディスプレイ23と、入力I/F24と、通信I/F25と、CPU31と、メモリ32と、通信バス33とを主に備える。MFP10を構成する各構成要素は、通信バス33を通じて相互に接続されている。MFP10は、画像処理装置の一例である。また、画像処理装置の具体例はMFP10に限定されず、例えば、プリンタ単能機或いはスキャナ単能機であってもよい。
プリンタ11は、画像データで示される画像をシートに記録するプリント動作を実行するハードウェアである。プリンタ11の記録方式としては、インクジェット方式や電子写真方式などの公知の方式を採用することができる。スキャナ12は、原稿に記録されている画像を読み取って画像データ(以下、「スキャンデータ」と表記する。)を生成するスキャン動作を実行するハードウェアである。プリント動作及びスキャン動作は、画像処理動作の一例である。なお、画像処理動作の具体例はこれらに限定されず、例えば、FAXプロトコルに従って画像データを外部装置にFAX送信するFAX送信動作等であってもよい。
ディスプレイ23は、液晶ディスプレイ、有機ELディスプレイ等であり、各種情報を表示する表示画面を備える。
入力I/F24は、ユーザによる入力操作を受け付けるユーザインタフェースである。具体的には、入力I/F24はボタンを有しており、押下されたボタンに対応づけられた各種の操作信号をCPU31へ出力する。さらに、入力I/F24は、ディスプレイ23の表示画面に重畳された膜状のタッチセンサを有していてもよい。ディスプレイ23の表示画面に表示されたオブジェクトを指定する操作、文字列或いは数字列を入力する操作は、ユーザ操作の一例である。「オブジェクト」とは、例えば、ディスプレイ23に表示された文字列、アイコン、ボタン、リンク、ラジオボタン、チェックボックス、プルダウンメニュー等である。
タッチセンサとして実現される入力I/F24は、ユーザがタッチした表示画面上の位置を示す位置情報を出力する。なお、本明細書中における「タッチ」とは、入力媒体を表示画面に接触させる操作全般を含む。また、入力媒体が表示画面に触れていなくても、表示画面との間の距離がごく僅かな位置まで入力媒体を近接させる「ホバー」或いは「フローティングタッチ」を、前述の「タッチ」の概念に含めてもよい。さらに入力媒体とは、ユーザの指であってもよいし、タッチペン等であってもよい。ディスプレイ23に表示されたオブジェクトの位置をタップするユーザ操作は、当該オブジェクトを指定するユーザ操作の一例である。
通信I/F25は、通信ネットワークを通じて外部装置と通信可能な第2通信インタフェースの一例である。すなわち、MFP10は、通信I/F25を通じて外部装置に各種情報を送信し、通信I/F25を通じて外部装置から各種情報を受信する。通信I/F25の具体的な通信手順は特に限定されないが、例えば、Wi−Fi(Wi-Fi Allianceの登録商標)を採用することができる。また、MFP10及び情報処理端末50がUSBケーブルで接続される場合、通信I/F25は、USBケーブルを着脱可能なUSBインタフェースであってもよい。
CPU31は、MFP10の全体動作を制御するものである。CPU31は、入力I/F24から出力される各種情報、通信I/F25を通じて外部装置から受信した各種情報等に基づいて、後述する各種プログラムをメモリ32から取得して実行する。CPU31及びメモリ32は、第2コントローラの一例を構成する。
メモリ32は、OS34と、装置プログラム35とを記憶する第2メモリの一例である。装置プログラム35は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。また、メモリ32は、装置プログラム35の実行に必要なデータ或いは情報等を記憶する。メモリ32は、例えば、RAM、ROM、EEPROM、HDD、MFP10に着脱されるUSBメモリ等の可搬記憶媒体、CPU31が備えるバッファ等、或いはそれらの組み合わせによって構成される。
メモリ32は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット101上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。後述する情報処理端末50のメモリ62についても同様である。
また、メモリ32は、図2(B)に示されるように、アクセスIDを記憶することができる。アクセスIDは、サービス提供装置110が提供するサービスの利用を中継サーバ80に要求する際に、中継サーバ80に送信する情報である。アクセスIDは、MFP10のユーザ毎に個別に割り当てられる。すなわち、MFP10が複数のユーザで共用されている場合、メモリ32には、複数のアクセスIDが記憶される。アクセスIDに対応付けられたユーザ名は、アクセスIDが割り当てられたユーザを識別するための情報であって、例えば、入力I/F24を通じてユーザが指定してもよい。
また、メモリ32は、図2(C)に示されるように、トークンと、アドレス情報とを対応付けて記憶することができる。トークンは、サービス提供装置120が提供するサービスを利用する権限を有することを示すために、サービス提供装置120によって発行される認証情報の一例である。トークンは、MFP10のユーザ毎に個別に割り当てられる。アドレス情報は、サービスを利用するためにアクセスすべきサービス提供装置120のアドレスを示す情報である。アドレス情報は、例えば、URL形式の情報である。サービス提供装置120は、複数のユーザに対して共通のアドレス情報を割り当てる。すなわち、図2(C)に示されるように、複数のトークンに対して同一のアドレス情報が対応付けられる。
さらに図示は省略するが、メモリ32は、閾値サイズを示すサイズ情報を記憶することができる。閾値サイズは、メモリ32に記憶可能なトークンのデータサイズの最大値である。閾値サイズは、例えば、画像処理動作の対象となる画像データを記憶するためのメモリ領域を十分に確保でき、且つMFP10を共用するユーザの想定人数分のトークンが記憶可能になるように、MFP10の管理者によって予め設定された値である。
情報処理端末50は、図3(A)に示されるように、ディスプレイ53と、入力I/F54と、通信I/F55と、CPU61と、メモリ62と、通信バス63とを主に備える。情報処理端末50に含まれるディスプレイ53、入力I/F54、通信I/F55、CPU61、メモリ62、及び通信バス63は、MFP10に含まれるディスプレイ23、入力I/F24、通信I/F25、CPU31、メモリ32、及び通信バス33と同様の構成であるので、説明は省略する。情報処理端末50は、例えば、携帯電話、スマートフォン、タブレット端末、或いはPC等である。メモリ62に記憶された端末プログラム65は、例えば、ブラウザプログラムである。
中継サーバ80は、図3(B)に示されるように、第1通信インタフェースの一例である通信I/F85と、CPU91と、第1メモリの一例であるメモリ92と、通信バス93とを主に備える。CPU91及びメモリ92は、第1コントローラの一例を構成する。中継サーバ80に含まれる通信I/F85、CPU91、メモリ92、及び通信バス93は、MFP10に含まれる通信I/F25、CPU31、メモリ32、及び通信バス33と同様の構成であるので、説明は省略する。
メモリ92は、サーバプログラム95を記憶している。サーバプログラム95は、MFP10、情報処理端末50、及びサービス提供装置110、120と通信するためのモジュールを含む。より詳細には、サーバプログラム95は、サービス提供装置110と通信する際に呼び出される第1モジュールと、サービス提供装置120と通信する際に呼び出される第2モジュールとを含む。なお、モジュールとは、複数の処理の纏まりを示すプログラム上の単位であって、関数、ライブラリ、或いはAPI等と呼ばれることもある。
第1モジュールは、サービス提供装置110が公開した通信手順をサポートしている。すなわち、CPU91は、第1モジュールを呼び出すことによって、サービス提供装置110が公開した通信手順に従って、サービス提供装置110と通信することができる。第2モジュールは、サービス提供装置120が公開した通信手順をサポートしている。すなわち、CPU91は、第2モジュールを呼び出すことによって、サービス提供装置120が公開した通信手順に従って、サービス提供装置120と通信することができる。なお、以下の処理の説明において、第1モジュール及び第2モジュールの明記は省略する。
中継サーバ80は、例えば図1に示されるように、第1サーバ80Aと、第2サーバ80Bとで実現されてもよい。第1サーバ80A及び第2サーバ80Bの構成は、図3(B)に示される中継サーバ80の構成と共通する。第1サーバ80A及び第2サーバ80Bは、中継サーバ80が実行すべき処理を分担する。但し、中継サーバ80の具体的な構成はこれに限定されず、単一の装置で実現されてもよいし、不図示の第3サーバをさらに含んでもよい。
第1サーバ80A及び第2サーバ80Bは、通信ネットワークの一例である有線LAN103を通じて、相互に通信可能に構成されている。第1サーバ80Aは、例えば、有線LAN103上のDMZ(DeMilitarized Zoneの略)に接続されており、MFP10、情報処理端末50、第2サーバ80B、及びサービス提供装置110、120と通信可能な所謂WEBサーバである。一方、第2サーバ80Bは、例えば、有線LAN103のファイアーウォールの内側に接続されており、MFP10、情報処理端末50、第1サーバ80A、及びサービス提供装置110、120のうち、第1サーバ80Aのみと接続可能な所謂データベースサーバである。
第2サーバ80Bのメモリ92は、図3(C)に示されるアクセスリストを記憶することができる。アクセスリストは、1以上のアクセスレコードを含む。アクセスリストは、TempIDと、トークンと、アドレス情報と、アクセスIDとを含む。なお、中継サーバ80が単一の装置で構成されている場合、アクセスリストは、中継サーバ80のローカルメモリに記憶される。
TempIDは、サービス提供装置110が発行したトークンを取得する権限をMFP10に与えるために、中継サーバ80が発行する情報である。トークンは、サービス提供装置110が発行する認証情報の一例である。アドレス情報は、サービス提供装置110が提供するサービスを利用するために、アクセスすべきサービス提供装置110のメモリ領域を示す。サービス提供装置110は、MFP10のユーザ毎に個別のアドレス情報を割り当てる。すなわち、図3(C)に示されるように、トークンとアドレス情報とは、一対一に対応付けられる。アクセスIDは、対応するトークン及びアドレス情報の組み合わせを識別するために、中継サーバ80が発行する情報である。
TempID及びアドレス情報は、例えば、情報処理端末50のユーザが一見して認識可能なテキストデータである。一方、トークン及びアクセスIDは、例えば、バイナリデータであってもよい。また、アクセスIDのデータサイズは、トークン及びアドレス情報のデータサイズより小さい。また、アドレス情報のデータサイズは、トークンのデータサイズより大きい場合が多い。トークンのデータサイズは、例えば、128バイト、256バイト等である。また、N個の文字で構成されるアドレス情報のデータサイズは、Nバイトである。
MFP10及び中継サーバ80は、連携動作を実行することができる。連携動作は、中継サーバ80がMFP10に動作を指示し、中継サーバ80に指示された動作をMFP10が実行し、当該動作の結果をMFP10が中継サーバ80に報告し、当該報告に基づいて中継サーバ80がMFP10に次の動作を指示するものである。連携動作において、MFP10から中継サーバ80への情報はHTTPリクエストとして送信され、中継サーバ80からMFP10への情報はHTTPレスポンスとして送信される。
また、中継サーバ80からMFP10に送信される指示情報は、例えば、XMLによって記述されている。そして、当該指示情報は、例えば、ディスプレイ23に表示させる画面を示す画面指示情報と、入力情報を取得するインタフェース(例えば、入力I/F24、通信I/F25等)を示すインタフェース情報と、次の動作の要求先を示す次動作URLとを含む。
当該指示情報を受信したMFP10は、画面指示情報で示される画面をディスプレイ23に表示させ、インタフェース情報で示すインタフェースを通じて入力情報を取得し、次動作URLで示される次の指示情報の送信を要求するHTTPリクエストを送信する。さらに、MFP10は、当該HTTPリクエストを送信する際に、一連の連携動作において取得した入力情報をGETメソッドによって中継サーバ80に送信する。
サービス提供装置110、120は、MFP10にサービスを提供する装置である。サービス提供装置110、120はインターネット101上に存在し、MFP10、情報処理端末50、或いは中継サーバ80からのリクエストに応じて各種サービスを提供する。本実施形態に係るサービス提供装置110、120は、例えば、MFP10の状態を管理するサービス、アップロードされたデータを記憶するサービス、ダウンロード要求に応じて記憶しているデータを送信するサービス、或いはデータの形式を変換するサービス等を提供してもよい。
サービス提供装置110は、MFP10のユーザ毎に異なるアドレス情報を発行し、且つ第1サービスを提供する第1装置の一例である。サービス提供装置120は、MFP10の複数のユーザに共通のアドレス情報を発行し、且つ第1サービスと異なる第2サービスを提供する第2装置の一例である。一方、サービス提供装置110、120は、MFP10のユーザ毎に異なるトークンを発行する点において共通する。
より詳細には、サービス提供装置110が発行するアドレス情報は、例えば、サービス提供装置110を識別するドメイン情報“www.server-a.com”と、ユーザに割り当てたメモリ領域へのパスを示すパス情報“mfp/user-b”とを含む。一方、サービス提供装置120が発行するアドレス情報は、例えば、サービス提供装置120を識別するドメイン情報“www.server-a.com”を含み、パス情報を含まない。
なお、パス情報で示されるメモリ領域とは、サービス提供装置110が備えるメモリの論理的な領域(例えば、フォルダ)を示すものであればよく、メモリの物理的な領域を示すものでなくてもよい。パス情報は、例えば、階層関係を有する複数のフォルダのうち、ルートフォルダ(例えば、“mfp”)からユーザBに割り当てたフォルダ(例えば、“user-b”)までの経路を示す。後述するログイン指示情報及びトークン指示情報についても同様である。
サービス提供装置110、120は、例えば、「Evernote(Evernote Corporationの登録商標)」、「Dropbox(DropBox, Inc.の登録商標)」、「Google Drive(Googleは、Google, Inc.の登録商標)」、SharePointOnline(Microsoft Corporationの登録商標)、OneDrive for Business(OneDriveは、Microsoft Corporationの登録商標)等のサービスを提供する装置である。
[システム100の動作]
図4〜図7を参照して、本実施形態に係るシステム100の動作を説明する。
本明細書のフローチャートは、基本的に、プログラムに記述された命令に従ったCPU31、61の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「制御」等の処理は、CPU31、61の処理を表している。CPU31、61による処理は、OS34、64を介したハードウェア制御も含む。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。
まず、図4を参照して、MFP10のユーザBが情報処理端末50を用いて、中継サーバ80からTempIDを取得する処理を説明する。なお、図4の処理の開始時点において、ユーザBは、サービス提供装置110がユーザBに対して発行したアカウント情報及びアドレス情報“www.server-a.com/mfp/user-b”を取得しているものとする。アカウント情報は、トークンの発行をサービス提供装置110に要求する権限を有することを示すための情報であって、例えば、ユーザID“USER−B”及びパスワード“ABCDE”の組み合わせである。
まず、情報処理端末50の端末プログラム65は、通信I/F55を通じて中継サーバ80にサービス一覧要求情報を送信する(S11)。サービス一覧要求情報は、中継サーバ80が通信可能なサービス提供装置110、120を示すサービス一覧情報の送信を要求するための情報である。
次に、中継サーバ80のサーバプログラム95は、通信I/F85を通じて情報処理端末50からサービス一覧要求情報を受信する(S11)。そして、サーバプログラム95は、サービス一覧要求情報の応答として、通信I/F85を通じて情報処理端末50にサービス一覧情報を送信する(S12)。サービス一覧情報は、例えば、図8(A)に示されるサービス選択画面を示すHTMLである。
次に、端末プログラム65は、通信I/F85を通じて中継サーバ80からサービス一覧情報を受信する(S12)。次に、端末プログラム65は、受信したサービス一覧情報に従って、図8(A)に示されるサービス選択画面をディスプレイ53に表示させる(S13)。サービス選択画面は、サービス提供装置110に対応するサービスアイコン131と、サービス提供装置120に対応するサービスアイコン132とを含む。そして、端末プログラム65は、サービス選択画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S14)。
次に、端末プログラム65は、サービスアイコン131の指定を入力I/F54を通じて受け付けたことに応じて(S14)、通信I/F55を通じて中継サーバ80に発行要求情報を送信する(S15)。発行要求情報は、指定されたサービスアイコン131に対応するサービス提供装置110に、トークンの発行を要求するための情報である。ユーザBが指定したサービス提供装置110は、指定装置の一例である。
次に、サーバプログラム95は、通信I/F85を通じて情報処理端末50から発行要求情報を受信する(S15)。そして、サーバプログラム95は、情報処理端末50が指定したサービス提供装置110に、通信I/F85を通じて発行要求情報を送信する(S16)。中継サーバ80が実行するS15の処理は第5受信処理の一例であり、中継サーバ80が実行するS16の処理は第5送信処理の一例である。
次に、サービス提供装置110は、中継サーバ80から発行要求情報を受信する(S16)。次に、サービス提供装置110は、発行要求情報の応答として、ログイン指示情報を中継サーバ80に送信する(S17)。ログイン指示情報は、ログイン画面情報が記憶されたサービス提供装置110のメモリ領域を示す第1リダイレクト情報の一例である。ログイン指示情報は、例えば、URL形式の情報である。
次に、サーバプログラム95は、通信I/F85を通じてサービス提供装置110からログイン指示情報を受信する(S17)。そして、サーバプログラム95は、発行要求情報の応答として、通信I/F85を通じて情報処理端末50にログイン指示情報を送信する(S18)。中継サーバ80が実行するS17の処理は第6受信処理の一例であり、中継サーバ80が実行するS18の処理は第6送信処理の一例である。
次に、端末プログラム65は、通信I/F55を通じて中継サーバ80からログイン指示情報を受信する(S18)。そして、端末プログラム65は、通信I/F55を通じてサービス提供装置110にログイン画面要求情報を送信し(S19)、通信I/F55を通じてサービス提供装置110からログイン画面情報を受信する(S20)。ログイン画面要求情報は、ログイン指示情報で示されるメモリ領域に記憶されたログイン画面情報の送信を要求するための情報である。ログイン画面情報は、図8(B)に示されるログイン画面を示すHTMLであって、ログイン画面要求情報の応答としてサービス提供装置110によって送信される。
次に、端末プログラム65は、受信したログイン画面情報に従って、図8(B)に示されるログイン画面をディスプレイ53に表示させる(S21)。ログイン画面は、「ユーザID&パスワードを入力して、[ログイン]を押して下さい。」とのメッセージと、ユーザIDの入力を受け付けるためのテキストボックス136と、パスワードの入力を受け付けるためのテキストボックス137と、[ログイン]アイコン138とを含む。そして、端末プログラム65は、ユーザID“USER−B”の入力と、パスワード“ABCDE”の入力と、[ログイン]アイコン138の指定とを入力I/F54を通じて受け付けたことに応じて(S22)、入力されたアカウント情報“USER−B”&“ABCDE”を、通信I/F55を通じてサービス提供装置110に送信する(S23)。
次に、サービス提供装置110は、情報処理端末50からアカウント情報を受信する。次に、サービス提供装置110は、受信したアカウント情報に対応付けてトークン“0x4CD7”を発行し、発行したトークンをメモリに記憶させる。そして、サービス提供装置110は、アカウント情報の応答として、情報処理端末50にトークン指示情報を送信する(S24)。トークン指示情報は、発行したトークンが記憶されたメモリ領域を示す第2リダイレクト情報の一例である。
次に、端末プログラム65は、通信I/F55を通じてサービス提供装置110からトークン指示情報を受信する(S24)。そして、端末プログラム65は、通信I/F55を通じて中継サーバ80にトークン指示情報を送信する(S25)。
次に、サーバプログラム95は、通信I/F85を通じて端末プログラム65からトークン指示情報を受信する(S25)。次に、サーバプログラム95は、通信I/F85を通じてサービス提供装置110にトークン要求情報を送信する(S26)。トークン要求情報は、トークン指示情報で示されるメモリ領域に記憶されたトークンの送信を要求する送信要求情報の一例である。S25の処理は第7受信処理の一例であり、S26の処理は第7送信処理の一例である。
次に、サーバプログラム95は、ユーザBのアカウント情報に対応付けて発行されたトークン“0x4CD7”を、トークン要求情報の応答として、通信I/F85を通じてサービス提供装置110から受信する(S27)。S27の処理は第4受信処理の一例である。なお、ステップS15〜S27の処理は、例えば、OAuthプロトコルに準拠した周知の手順に従って実行されてもよい。
次に、サーバプログラム95は、トークン指示情報の応答として、通信I/F85を通じて情報処理端末50にアドレス指示情報を送信する(S28)。アドレス指示情報は、ユーザBが取得したアドレス情報の送信を指示するための情報である。アドレス指示情報は、例えば、図9(A)に示されるアドレス入力画面を示すHTMLである。
次に、端末プログラム65は、通信I/F55を通じて中継サーバ80からアドレス指示情報を受信する(S28)。次に、端末プログラム65は、受信したアドレス指示情報に従って、図9(A)に示されるアドレス入力画面をディスプレイ53に表示させる(S29)。アドレス入力画面は、「アドレス情報を入力して、[OK]を押して下さい。」とのメッセージと、アドレス情報の入力を受け付けるためのテキストボックス141と、[OK]アイコン142とを含む。
そして、端末プログラム65は、アドレス情報“www.server-a.com/mfp/user-b”の入力と、[OK]アイコン142の指定とを入力I/F54を通じて受け付けたことに応じて(S30)、入力されたアドレス情報を通信I/F54を通じて中継サーバ80に送信する(S31)。なお、アドレス情報の入力とは、例えば、アドレス情報を構成する文字列をキーボードを通じて入力することに限定されず、例えば、メモリ62に記憶されたEメールからコピー&ペーストすること等も含む。
次に、サーバプログラム95は、通信I/F85を通じて情報処理端末50からアドレス情報を受信する(S31)。次に、サーバプログラム95は、受信したアドレス情報で示されるメモリ領域にアクセス可能か否かを判断する(S32)。S31の処理は第3受信処理の一例であり、S32の処理は第1判断処理の一例である。
サーバプログラム95は、例えば、アドレス情報で示されるサービス提供装置110に対して、ICMP(Internet Control Message Protocolの略)のエコーリクエストを通信I/F85を通じて送信する。そして、サーバプログラム95は、通信I/F85を通じてサービス提供装置110からエコーリプライを受信したことに応じて、アクセス可能と判断する。一方、サーバプログラム95は、所定の時間が経過してもエコーリプライを受信できないことに応じて、アクセス不能と判断する。但し、アクセス可能か否かの判断方法は前述の例に限定されず、他の周知の方法を採用してもよい。
次に、サーバプログラム95は、メモリ領域にアクセス可能と判断したことに応じて、アクセスリスト内で一意なTempID“789”を発行する(S33)。そして、サーバプログラム95は、S27で受信したトークン“0x4CD7”と、S31で受信したアドレス情報“www.server-a.com/mfp/user-b”と、S33で発行したTempID“789”とを含むアクセスレコードを、アクセスリストに登録する(S34)。ここで登録されるアクセスレコードには、アクセスIDが含まれていなくてもよい。S34の処理は、記憶処理の一例である。そして、サーバプログラム95は、S33で発行したTempID“789”を、アドレス情報の応答として、通信I/F85を通じて情報処理端末50に送信する(S35)。
次に、端末プログラム65は、通信I/F55を通じて中継サーバ80からTempID“789”を受信する(S35)。そして、端末プログラム65は、受信したTempID“789”をディスプレイ53に表示させて、ユーザBに報知する(S36)。
一方、システム100は、図8(A)に示されるサービスアイコン132が指定された場合に、S28〜S31の処理を省略した図4の処理を実行する。この場合の処理は、例えば、サービス提供装置110の代わりにサービス提供装置120が通信相手になる点、複数のユーザに共通のアドレス情報“www.server-b.com”をサービス提供装置120から受信する点において前述の処理と相違し、その他の点において前述の処理と共通する。
次に、図5を参照して、ユーザBが取得したTmpID“789”を用いて、中継サーバ80が発行したアクセスIDをMFP10に記憶させる処理を説明する。
まず、MFP10の装置プログラム35は、図9(B)に示されるTempID入力画面をディスプレイ53に表示させる(S41)。TempID入力画面は、「TempIDを入力して下さい。」とのメッセージと、TempIDの入力を受け付けるためのテキストボックス146と、[送信]アイコン147とを含む。そして、装置プログラム35は、TempID“789”の入力と、[送信]アイコン147の指定とを入力I/F54を通じて受け付けたことに応じて(S42)、入力されたTempID “789”及びメモリ32に記憶されたサイズ情報を、通信I/F25を通じて中継サーバ80に送信する(S43)。
次に、サーバプログラム95は、TempID及びサイズ情報を通信I/F85を通じてMFP10から受信する(S43)。次に、サーバプログラム95は、TempID“789”に対応付けられたトークン“0x4CD7”のデータサイズが閾値サイズ以上か否かを判断する(S44)。S44の処理は、第2判断処理の一例である。
次に、サーバプログラム95は、トークンが閾値サイズ以上だと判断したことに応じて(S44:Yes)、アクセスリスト内で一意なアクセスID“xyz”を発行する(S45)。そして、サーバプログラム95は、S45で発行したアクセスID “xyz”を、S43で受信したTempID“789”を含むアクセスレコードに登録する(S46)。S45の処理は発行処理の一例であり、S46の処理は記憶処理の一例である。
次に、サーバプログラム95は、S45で発行したアクセスID“xyz”を、TempID及びアドレス情報の応答として、通信I/F85を通じてMFP10に送信する(S47)。一方、サーバプログラム95は、トークンが閾値サイズ未満だと判断したことに応じて(S44:No)、S45〜S47の処理をスキップして、S43で受信したTempIDに対応するトークン “0x4CD7”を、TempID及びサイズ情報の応答として、通信I/F85を通じてMFP10に送信する(S49)。中継サーバ80が実行するS47の処理は第3送信処理の一例であり、中継サーバ80が実行するS49の処理は第4送信処理の一例である。
次に、装置プログラム35は、通信I/F25を通じて中継サーバ80からアクセスID“xyz”を受信したことに応じて(S47)、図2(B)に示されるように、入力I/F25を通じて入力されたユーザ名“ユーザB”と、S47で受信したアクセスID“xyz”とを対応付けてメモリ32に記憶させる(S48)。一方、装置プログラム35は、通信I/F25を通じて中継サーバ80からトークン“0x4CD7”を受信したことに応じて(S49)、入力I/F25を通じて入力されたユーザ名“ユーザB”と、S49で受信したトークン“0x4CD7”とを対応付けてメモリ32に記憶させる(S50)。
一方図示は省略するが、サーバプログラム95は、サービス提供装置120が発行したトークンに対応付けられたTempIDを、通信I/F85を通じてMFP10から受信することができる(S43)。この場合のサーバプログラム95は、S44の処理を実行することなく、サービス提供装置120から受信したトークン“0x8B26”及びアドレス情報“www.server-b.com”を、通信I/F85を通じてMFP10に送信する。中継サーバ80が実行するこの処理は、第8送信処理の一例である。そして、装置プログラム35は、図2(C)に示されるように、通信I/F25を通じて中継サーバ80から受信したトークン及びアドレス情報を、メモリ32に記憶させる。
次に、図6を参照して、サービス提供装置110、120が提供するスキャンアップロードサービスを、ユーザBがMFP10を用いて利用する処理を説明する。
まず、装置プログラム35は、スキャンアップロードサービスの利用を指示するユーザ操作を入力I/F24を通じて受け付けたことに応じて、サービス選択画面をディスプレイ23に表示させる(S61)。サービス選択画面は、図8(A)と同様に、サービス提供装置110に対応するサービスアイコン131と、サービス提供装置120に対応するサービスアイコン132とを含む。
次に、装置プログラム35は、例えば、サービスアイコン131の指定を入力I/F24を通じて受け付けたことに応じて(S62)、図10(A)に示されるユーザ選択画面をディスプレイ23に表示させる(S63)。ユーザ選択画面は、「サービスAを利用するユーザを選択して下さい。」とのメッセージと、ユーザアイコン151、152とを含む。ユーザアイコン151、152は、メモリ32に記憶されているアクセスIDの1つに対応する。また、ユーザアイコン151、152には、アクセスIDに対応付けられたユーザ名が記述される。
次に、装置プログラム35は、例えば、ユーザアイコン152の指定を入力I/F24を通じて受け付けたことに応じて(S64)、スキャナ12にスキャン動作を実行させる(S65)。すなわち、スキャナ12は、コンタクトガラス或いはADFにセットされた原稿に記録された画像を読み取って、当該画像を示すスキャンデータを生成する。
そして、装置プログラム35は、通信I/F25を通じて中継サーバ80に第1アップロード要求情報を送信する(S66)。第1アップロード要求情報は、サービス提供装置110のメモリのうち、ユーザアイコン152に対応するユーザBに割り当てられたメモリ領域にスキャンデータを記憶させることを要求するための第1要求情報の一例である。第1アップロード要求情報は、ユーザアイコン152に対応付けられたアクセスID“xyzと、S65で生成したスキャンデータとを含む。MFP10が実行するS66の処理は、第3送信処理の一例である。
次に、サーバプログラム95は、通信I/F85を通じてMFP10から第1アップロード要求情報を受信する(S66)。次に、サーバプログラム95は、第1アップロード要求情報に含まれるアクセスID“xyz”を含むアクセスレコードを、アクセスリストから読み出す(S67)。中継サーバ80が実行するS66の処理は第1受信処理の一例であり、S67の処理は読出処理の一例である。
次に、サーバプログラム95は、S67で読み出したアクセスレコードのドメイン情報“www.server-a.com”で識別されるサービス提供装置110に、通信I/F85を通じて第2アップロード要求情報を送信する(S68)。第2アップロード要求情報は、パス情報で示されるメモリ領域へのスキャンデータの記憶を要求するための第2要求情報の一例である。第2アップロード要求情報は、例えば、第1アップロード要求情報に含まれるスキャンデータと、S67で読み出したアクセスレコードのトークン“0x4CD7”及びパス情報“mfp/user-b”とを含む。中継サーバ80が実行するS68の処理は、第1送信処理の一例である。
次に、サービス提供装置110は、中継サーバ80から第2アップロード要求情報を受信する(S68)。次に、サービス提供装置110は、第2アップロード要求情報に含まれるトークン“0x4CD7”が有効か否かを判断する。次に、サービス提供装置110は、トークンが有効だと判断したことに応じて、パス情報“mfp/user-b”で示されるメモリ領域にスキャンデータを記憶させる。一方、サービス提供装置110は、トークンが無効だと判断したことに応じて、スキャンデータの記憶を拒否する。
そして、サービス提供装置110は、アップロード結果情報を中継サーバ80に送信する(S69)。アップロード結果情報は、第2アップロード要求情報に従ってメモリ領域にアクセスした結果、すなわち、スキャンアップロードサービスの実行結果を示すためのアクセス結果情報の一例である。トークンが有効だと判断した場合のアップロード結果情報は、パス情報で示されるメモリ領域にスキャンデータを記憶させたことを示す情報である。トークンが無効だと判断した場合のアップロード結果情報は、スキャンデータの記憶を拒否したことを示す情報である。
次に、サーバプログラム95は、通信I/F85を通じてサービス提供装置110からアップロード結果情報を受信する(S69)。そして、サーバプログラム95は、S69で受信したアップロード結果情報を、第1アップロード要求情報の応答として、通信I/F85を通じてMFP10に送信する(S70)。中継サーバ80が実行するS69の処理は第2受信処理の一例であり、中継サーバ80が実行するS70の処理は第2送信処理の一例である。
次に、装置プログラム35は、通信I/F25を通じて中継サーバ80からアップロード結果情報を受信する(S70)。MFP10が実行するS70の処理は、第3受信処理の一例である。そして、装置プログラム35は、例えば、アップロード結果情報で示されるスキャンアップロードサービスの実行結果を、ディスプレイ53に表示させて、ユーザBに報知する。
一方、装置プログラム35は、サービス選択画面のサービスアイコン132の指定を入力I/F24を通じて受け付けたことに応じて、S65で生成したスキャンデータと、メモリ32に記憶されたトークン“0x8B26”及びアドレス情報“www.server-b.com”とを含む第1アップロード要求情報を送信する(S66)。また、サーバプログラム95は、S67の処理をスキップする。さらに、サーバプログラム95は、第1アップロード要求情報に含まれるアドレス情報で示されるサービス提供装置120に、第2アップロード要求情報を送信する(S68)。その他の処理は前述の説明と同様なので、説明を省略する。
次に、図7を参照して、サービス提供装置110、120が提供するダウンロードプリントサービスを、ユーザBがMFP10を用いて利用する処理を説明する。なお、前述のスキャンアップロードサービスを利用する際の処理との共通点の詳しい説明は省略し、相違点を中心に説明する。まず、図7のS81の処理に先立って、図6のS61〜S64までの処理実行される。
装置プログラム35は、ダウンロードプリントサービスの利用を指示するユーザ操作と、サービスアイコン131の指定と、ユーザアイコン152の指定とを入力I/F24を通じて受け付けたことに応じて、通信I/F25を通じて中継サーバ80に第1リスト要求情報を送信する(S81)。第1リスト要求情報は、ユーザBに割り当てられたサービス提供装置110のメモリ領域に記憶されたデータのデータIDのリスト(以下、「リストデータ」表記する。)の送信を要求するための第1要求情報の一例である。第1リスト要求情報は、ユーザアイコン152に対応付けられたアクセスID“xyzを含む。MFP10が実行するS81の処理は、第3送信処理の一例である。
次に、サーバプログラム95は、通信I/F85を通じてMFP10から第1リスト要求情報を受信する(S81)。次に、サーバプログラム95は、第1リスト要求情報に含まれるアクセスID“xyz”を含むアクセスレコードを、アクセスリストから読み出す(S82)。中継サーバ80が実行するS81の処理は第1受信処理の一例であり、S82の処理は読出処理の一例である。
次に、サーバプログラム95は、S82で読み出したアクセスレコードのドメイン情報“www.server-a.com"で識別されるサービス提供装置110に、通信I/F85を通じて第2リスト要求情報を送信する(S83)。第2リスト要求情報は、パス情報で示されるメモリ領域のリストデータの送信を要求するための第2要求情報の一例である。第2リスト要求情報は、例えば、S82で読み出したアクセスレコードのトークン“0x4CD7”及びパス情報“mfp/user-b”を含む。中継サーバ80が実行するS83の処理は、第1送信処理の一例である。
次に、サービス提供装置110は、中継サーバ80から第2リスト要求情報を受信する(S83)。次に、サービス提供装置110は、第2リスト要求情報に含まれるトークンが有効だと判断したことに応じて、パス情報“mfp/user-b”で示されるメモリ領域のリストデータを生成する。そして、サービス提供装置110は、アクセス結果情報の一例であるリストデータを中継サーバ80に送信する(S84)。
次に、サーバプログラム95は、通信I/F85を通じてサービス提供装置110からリストデータを受信する(S84)。そして、サーバプログラム95は、S84で受信したリストデータを、第1リスト要求情報の応答として、通信I/F85を通じてMFP10に送信する(S85)。中継サーバ80が実行するS84の処理は第2受信処理の一例であり、中継サーバ80が実行するS85の処理は第2送信処理の一例である。
次に、装置プログラム35は、通信I/F25を通じて中継サーバ80からリストデータを受信する(S85)。MFP10が実行するS85の処理は、第3受信処理の一例である。そして、装置プログラム35は、図10(B)に示されるデータ選択画面をディスプレイ23に表示させる(S86)。データ選択画面は、データアイコン156、157、158を含む。データアイコン156、157、158は、リストデータに含まれるデータID“写真.JPEG”、“見積書.PDF”、“プレゼン.PPT”の1つに対応する。
次に、装置プログラム35は、例えば、データアイコン156の指定を入力I/F24を通じて受け付けたことに応じて(S87)、通信I/F25を通じて中継サーバ80に第1データ要求情報を送信する(S88)。第1データ要求情報は、ユーザBに割り当てられたサービス提供装置110のメモリ領域に記憶されたデータ、より詳細には、データアイコン156に対応するデータIDで識別されるデータの送信を要求するための第1要求情報の一例である。第1リスト要求情報は、データアイコン156に対応するデータID“写真.JPEG”と、ユーザアイコン152に対応付けられたアクセスID“xyzとを含む。MFP10が実行するS88の処理は、第3送信処理の一例である。
次に、サーバプログラム95は、通信I/F85を通じてMFP10から第1データ要求情報を受信する(S88)。次に、サーバプログラム95は、第1データ要求情報に含まれるアクセスID“xyz”を含むアクセスレコードを、アクセスリストから読み出す(S89)。中継サーバ80が実行するS88の処理は第1受信処理の一例であり、S89の処理は読出処理の一例である。
次に、サーバプログラム95は、S89で読み出したアクセスレコードのドメイン情報“www.server-a.com”で識別されるサービス提供装置110に、通信I/F85を通じて第2データ要求情報を送信する(S90)。第2データ要求情報は、パス情報で示されるメモリ領域に記憶されたデータ“写真.JPEG”の送信を要求するための第2要求情報の一例である。第2データ要求情報は、例えば、第1データ要求情報に含まれるデータID“写真.JPEG”と、S89で読み出したアクセスレコードのトークン“0x4CD7”及びパス情報“mfp/user-b”とを含む。中継サーバ80が実行するS90の処理は、第1送信処理の一例である。
次に、サービス提供装置110は、中継サーバ80から第2データ要求情報を受信する(S90)。次に、サービス提供装置110は、第2データ要求情報に含まれるトークンが有効だと判断したことに応じて、パス情報“mfp/user-b”で示されるメモリ領域からデータID“写真.JPEG”で識別されるデータ(以下、「ダウンロードデータ」と表記する。)を読み出す。そして、サービス提供装置110は、アクセス結果情報の一例であるダウンロードデータを中継サーバ80に送信する(S91)。
次に、サーバプログラム95は、通信I/F85を通じてサービス提供装置110からダウンロードデータを受信する(S91)。そして、サーバプログラム95は、S91で受信したダウンロードデータを、第1データ要求情報の応答として、通信I/F85を通じてMFP10に送信する(S92)。中継サーバ80が実行するS91の処理は第2受信処理の一例であり、中継サーバ80が実行するS92の処理は第2送信処理の一例である。
次に、装置プログラム35は、通信I/F25を通じて中継サーバ80からダウンロードデータを受信する(S92)。MFP10が実行するS92の処理は、第3受信処理の一例である。そして、装置プログラム35は、ダウンロードデータを対象とするプリント動作をプリンタ11に実行させる(S93)。すなわち、プリンタ11は、ダウンロードデータで示される画像をシートに記録する。
一方、装置プログラム35は、サービス選択画面のサービスアイコン132の指定を入力I/F24を通じて受け付けたことに応じて、メモリ32に記憶されたトークン“0x8B26”及びアドレス情報“www.server-b.com”を含む第1リスト要求情報を送信する(S81)。また、装置プログラム35は、データIDと、メモリ32に記憶されたトークン“0x8B26”及びアドレス情報“www.server-b.com”とを含む第1データ要求情報を送信する(S88)。また、サーバプログラム95は、S82、S89の処理をスキップする。さらに、サーバプログラム95は、第1リスト要求情報及び第1データ要求情報に含まれるアドレス情報で示されるサービス提供装置120に、第2リスト要求情報及び第2データ要求情報を送信する(S83、S90)。その他の処理は前述の説明と同様なので、説明を省略する。
[実施形態の作用効果]
上記の実施形態に係る中継サーバ80は、MFP10からサービス提供装置110へのアクセスを中継する際に、第1要求情報に含まれるアクセスIDに対応するアドレス情報を読み出し、読み出したアドレス情報で示されるサービス提供装置110のメモリ領域にアクセスする。これにより、データサイズの大きいアドレス情報をMFP10に記憶させなくても、ユーザ毎に個別に割り当てられたアドレス情報で示されるメモリ領域に、MFP10をアクセスさせることができる。
また、上記の実施形態によれば、MFP10の入力I/F24を通じてアドレス情報が手入力されるので、中継サーバ80は、MFP10から受信したアドレス情報が正しく入力されたことを事前に確認する。これにより、サービス提供装置110が提供するサービスを実際に利用しようとする場合に、割り当てられたメモリ領域にアクセスできないことを抑制できる。なお、上記の実施形態では、図4に示される処理が情報処理端末50を用いて行われる例を説明した。しかしながら、図4で情報処理端末50が実行する処理の一部又は全部は、MFP10が実行してもよい。すなわち、MFP10及び情報処理端末50は、外部装置の一例である。
また、上記の実施形態によれば、トークンが閾値サイズ以上の場合に、アドレス情報及びトークンの組み合わせを識別するアドレスIDがMFP10に記憶される。これにより、データサイズの大きいトークンをMFP10に記憶させなくても、MFP10をサービス提供装置110にアクセスさせることができる。一方、トークンが閾値サイズ未満の場合に、当該トークンがアクセスIDとして用いられる。これにより、トークンとは別のアクセスIDを用いる必要がなくなるので、中継サーバ80の処理を簡素化することができる。但し、中継サーバ80は、S44の処理をスキップして、常にアクセスIDをMFP10に送信してもよい。
また、上記の実施形態によれば、サービス提供装置110との通信に第1モジュールを用い、サービス提供装置120との通信に第2モジュールを用いる。このように、サービス提供装置110、120毎に異なる通信手順を予めモジュール化しておくことにより、既存のサービス提供装置110、120の通信手順の変更、或いは新たなサービス提供装置との接続等が容易となる。
なお、トークンは、リフレッシュトークンと、アクセストークンとに区別されてもよい。リフレッシュトークンは、アクセストークンの発行をサービス提供装置110、120に要求するためのトークンである。アクセストークンは、サービス提供装置110、120にアクセスする度に、新たに発行されるトークンである。すなわち、中継サーバ80は、サービス提供装置110、120が提供するサービスをMFP10に複数回利用させる場合において、同一のリフレッシュトークンと、異なるアクセストークンとを用いて、サービス提供装置110、120にアクセスする。
より詳細には、図4、図5、図6のS67、図7のS82、S89で用いられるトークンは、リフレッシュトークンである。また、サーバプログラム95は、S68、S83、S90において、メモリ92から読み出したリフレッシュトークンを含むアクセストークン要求情報を、通信I/F85を通じてサービス提供装置110に送信する。そして、サーバプログラム95は、サービス提供装置110が新たに発行したアクセストークンを、アクセストークン要求情報の応答として、通信I/F85を通じてサービス提供装置110から受信する。そして、サーバプログラム95は、受信したアクセストークンを含む第2要求情報を、通信I/F85を通じてサービス提供装置110に送信する。
また、上記の実施形態のMFP10、情報処理端末50、及び中継サーバ80において、メモリ32、62、92に記憶された各種プログラムがCPU31、61、91によって実行されることによって、本発明のコントローラが実行する各処理が実現される例を説明した。しかしながら、コントローラの構成はこれに限定されず、その一部又は全部を集積回路等のハードウェアで実現してもよい。
さらに、本発明は、MFP10、情報処理端末50、及び中継サーバ80として実現できるだけでなく、MFP10、情報処理端末50、及び中継サーバ80に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、non−transitoryな記録媒体に記録されて提供されてもよい。non−transitoryな記録媒体は、CD−ROM、DVD−ROM等の他、通信ネットワークを通じてMFP10、情報処理端末50、及び中継サーバ80に接続可能なサーバに搭載された記憶部を含んでもよい。そして、サーバの記憶部に記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット101等の通信ネットワークを通じて配信されてもよい。
10・・・MFP
11・・・プリンタ
12・・・スキャナ
31,61,91・・・CPU
23・・・ディスプレイ
24・・・入力I/F
25,55,85・・・通信I/F
32,62,92・・・メモリ
35・・・装置プログラム
95・・・サーバプログラム
50・・・情報処理端末
80・・・中継サーバ
80A・・・第1サーバ
80B・・・第2サーバ
110,120・・・サービス提供装置

Claims (10)

  1. 通信インタフェースと、メモリと、コントローラとを備える中継サーバであって、
    前記コントローラは、アドレス情報及びアクセスIDを、互いに対応付けて前記メモリに記憶させる記憶処理を実行し、前記アドレス情報は、画像処理装置が実行する画像処理動作の対象となる画像データを記憶可能なサービス提供装置のメモリ領域を示し且つ前記画像処理装置のユーザ毎に個別に割り当てられた情報であり、前記アクセスIDは、前記アドレス情報よりサイズが小さく且つ前記アドレス情報を識別するための情報であり、
    前記コントローラは、前記通信インタフェースを通じて前記画像処理装置から第1要求情報を受信する第1受信処理を実行し、前記第1要求情報は、前記アクセスIDを含み且つ前記サービス提供装置へのアクセスを要求するための情報であり、
    前記コントローラは、
    前記第1要求情報に含まれる前記アクセスIDに対応付けられた前記アドレス情報を、前記メモリから読み出す読出処理と、
    前記通信インタフェースを通じて前記サービス提供装置に第2要求情報を送信する第1送信処理とを実行し、前記第2要求情報は、前記読出処理で読み出した前記アドレス情報で示される前記メモリ領域へのアクセスを要求するための情報であり、
    前記コントローラは、
    前記通信インタフェースを通じて前記サービス提供装置からアクセス結果情報を受信する第2受信処理と、
    前記第2受信処理で受信した前記アクセス結果情報を、前記通信インタフェースを通じて前記画像処理装置に送信する第2送信処理とを実行し、前記アクセス結果情報は、前記第2要求情報に従って前記メモリ領域にアクセスした結果を示すための情報である中継サーバ。
  2. 前記コントローラは、
    前記画像処理装置のユーザに前記サービス提供装置が対応付けた前記アドレス情報を、前記通信インタフェースを通じて外部装置から受信する第3受信処理を実行し、
    前記記憶処理において、前記第3受信処理で受信した前記アドレス情報と、前記アクセスIDとを対応付けて、前記メモリに記憶させる請求項1に記載の中継サーバ。
  3. 前記コントローラは、
    前記第3受信処理において、前記外部装置の入力インタフェースを通じて前記画像処理装置のユーザが入力した前記アドレス情報を受信し、
    前記第3受信処理で受信した前記アドレス情報で示される前記メモリ領域にアクセス可能か否かを判断する第1判断処理と、
    前記第1判断処理でアクセス可能と判断したことに応じて、前記記憶処理を実行する請求項2に記載の中継サーバ。
  4. 前記コントローラは、
    前記通信インタフェースを通じて前記サービス提供装置から認証情報を受信する第4受信処理を実行し、前記認証情報は、前記サービス提供装置へのアクセス権限を有することを示し、且つ前記画像処理装置のユーザ毎に個別に割り当てられた情報であり、
    前記コントローラは、
    前記第4受信処理で受信した前記認証情報のサイズが閾値サイズ以上か否かを判断する第2判断処理と、
    前記第2判断処理で前記閾値サイズ以上だと判断したことに応じて、
    前記第3受信処理で受信した前記アドレス情報及び前記第4受信処理で受信した前記認証情報の組み合わせを識別する前記アクセスIDを発行する発行処理と、
    前記発行処理で発行した前記アクセスIDを、前記通信インタフェースを通じて前記画像処理装置に送信する第3送信処理とを実行し、
    前記記憶処理において、前記第3受信処理で受信した前記アドレス情報、前記第4受信処理で受信した前記認証情報、及び前記発行処理で発行した前記アクセスIDを、互いに対応付けて前記メモリに記憶させ、
    前記第1送信処理において、前記認証情報を含む前記第2要求情報を、前記通信インタフェースを通じて前記サービス提供装置に送信する請求項2又は3に記載の中継サーバ。
  5. 前記コントローラは、前記第2判断処理で前記閾値サイズ未満だと判断したことに応じて、前記第4受信処理で受信した前記認証情報を、前記アクセスIDとして、前記通信インタフェースを通じて前記画像処理装置に送信する第4送信処理を実行する請求項4に記載の中継サーバ。
  6. 前記コントローラは、前記認証情報の発行を指定装置に要求するための発行要求情報を、前記通信インタフェースを通じて前記外部装置から受信する第5受信処理を実行し、前記指定装置は、該中継サーバが通信可能な複数の前記サービス提供装置のうち、前記外部装置のユーザが指定した前記サービス提供装置であり、
    前記コントローラは、
    前記第5受信処理で受信した前記発行要求情報を、前記通信インタフェースを通じて前記指定装置に送信する第5送信処理と、
    アカウント情報の入力を受け付けるためのログイン画面を示す画面情報が記憶された前記指定装置の前記メモリ領域を示す第1リダイレクト情報を、前記発行要求情報の応答として、前記通信インタフェースを通じて前記指定装置から受信する第6受信処理と、
    前記第6受信処理で受信した前記第1リダイレクト情報を、前記通信インタフェースを通じて前記外部装置に送信する第6送信処理とを実行し、前記アカウント情報は、前記認証情報を発行させる権限を有することを示すために、前記画像処理装置のユーザ毎に前記指定装置が発行した情報であり、
    前記コントローラは、
    前記認証情報が記憶された前記指定装置の前記メモリ領域を示す第2リダイレクト情報を、前記通信インタフェースを通じて前記外部装置から受信する第7受信処理と、
    前記第2リダイレクト情報で示される前記メモリ領域に記憶された前記認証情報の送信を要求する送信要求情報を、前記通信インタフェースを通じて前記指定装置に送信する第7送信処理とを実行し、
    前記コントローラは、前記第4受信処理において、前記ログイン画面を通じて入力された前記アカウント情報に対応する前記認証情報を、前記送信要求情報の応答として、前記通信インタフェースを通じて前記指定装置から受信する請求項4又は5に記載の中継サーバ。
  7. 前記サービス提供装置は、
    前記画像処理装置のユーザ毎に異なる前記アドレス情報を発行し、且つ第1サービスを提供する第1装置と、
    複数のユーザに共通の前記アドレス情報を発行し、且つ前記第1サービスと異なる第2サービスを提供する第2装置とを含み、
    前記コントローラは、
    前記第1装置が前記指定装置に指定された場合において、前記第2判断処理を実行し、
    前記第2装置が前記指定装置に指定された場合において、前記第2判断処理を実行することなく、前記第3受信処理で受信した前記アドレス情報及び前記第4受信処理で受信した前記認証情報を、前記通信インタフェースを通じて前記画像処理装置に送信する第8送信処理を実行する請求項6に記載の中継サーバ。
  8. 前記メモリは、前記コントローラが実行する処理を示すプログラムを記憶しており、
    前記コントローラは、
    前記プログラムに含まれる第1モジュールを用いて前記第1装置と通信し、
    前記プログラムに含まれる第2モジュールを用いて前記第2装置と通信する請求項7に記載の中継サーバ。
  9. 前記中継サーバは、通信ネットワークに接続された第1サーバ及び第2サーバを含み、
    前記第1サーバは、前記通信インタフェースを備えており、前記画像処理装置、前記サービス提供装置、及び前記第2サーバと通信可能な前記通信ネットワーク上の位置に接続されており、
    前記第2サーバは、前記メモリを備えており、前記画像処理装置、前記サービス提供装置、及び前記第1サーバのうちの前記第1サーバとのみ通信可能な前記通信ネットワーク上の位置に接続されている請求項1から8のいずれかに記載の中継サーバ。
  10. 第1通信インタフェース、第1メモリ、及び第1コントローラを備える中継サーバと、第2通信インタフェース、第2メモリ、及び第2コントローラを備える画像処理装置とを備えるシステムであって、
    前記第1コントローラは、アドレス情報及びアクセスIDを、互いに対応付けて前記第1メモリに記憶させる記憶処理を実行し、前記アドレス情報は、前記画像処理装置が実行する画像処理動作の対象となる画像データを記憶可能なサービス提供装置のメモリ領域を示し且つ前記画像処理装置のユーザ毎に個別に割り当てられた情報であり、前記アクセスIDは、前記アドレス情報のサイズより小さく且つ前記アドレス情報を識別するための情報であり、
    前記第1コントローラは、前記第1通信インタフェースを通じて前記画像処理装置から第1要求情報を受信する第1受信処理を実行し、前記第1要求情報は、前記アクセスIDを含み且つ前記サービス提供装置へのアクセスを要求するための情報であり、
    前記第1コントローラは、
    前記第1要求情報に含まれる前記アクセスIDに対応付けられた前記アドレス情報を、前記第1メモリから読み出す読出処理と、
    前記第1通信インタフェースを通じて前記サービス提供装置に第2要求情報を送信する第1送信処理とを実行し、前記第2要求情報は、前記読出処理で読み出した前記アドレス情報で示される前記メモリ領域へのアクセスを要求するための情報であり、
    前記第1コントローラは、
    前記第1通信インタフェースを通じて前記サービス提供装置からアクセス結果情報を受信する第2受信処理と、
    前記第2受信処理で受信した前記アクセス結果情報を、前記第1通信インタフェースを通じて前記画像処理装置に送信する第2送信処理とを実行し、前記アクセス結果情報は、前記第2要求情報に従って前記メモリ領域にアクセスした結果を示すための情報であり、
    前記第2コントローラは、
    前記第2メモリに記憶された前記アクセスIDを含む前記第1要求情報を、前記第2通信インタフェースを通じて前記中継サーバに送信する第3送信処理と、
    前記第2通信インタフェースを通じて前記アクセス結果情報を前記中継サーバから、前記第1要求情報の応答として受信する第3受信処理とを実行するシステム。
JP2016189467A 2016-09-28 2016-09-28 中継サーバ及びシステム Active JP6743622B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016189467A JP6743622B2 (ja) 2016-09-28 2016-09-28 中継サーバ及びシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016189467A JP6743622B2 (ja) 2016-09-28 2016-09-28 中継サーバ及びシステム

Publications (2)

Publication Number Publication Date
JP2018056751A JP2018056751A (ja) 2018-04-05
JP6743622B2 true JP6743622B2 (ja) 2020-08-19

Family

ID=61837189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016189467A Active JP6743622B2 (ja) 2016-09-28 2016-09-28 中継サーバ及びシステム

Country Status (1)

Country Link
JP (1) JP6743622B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7487522B2 (ja) * 2020-03-30 2024-05-21 ブラザー工業株式会社 中継サーバ、及び、中継サーバのためのコンピュータプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011186639A (ja) * 2010-03-05 2011-09-22 Nec Corp コンテンツ関係管理システム、コンテンツ関係管理装置、コンテンツ関係管理方法およびプログラム
JP5648433B2 (ja) * 2010-11-11 2015-01-07 ブラザー工業株式会社 共有画像印刷システム、共有画像印刷方法及び印刷装置
JP5958254B2 (ja) * 2012-09-28 2016-07-27 ブラザー工業株式会社 特定のサーバ及び通信装置
JP6454972B2 (ja) * 2014-03-19 2019-01-23 ブラザー工業株式会社 中継サーバ、および通信プログラム

Also Published As

Publication number Publication date
JP2018056751A (ja) 2018-04-05

Similar Documents

Publication Publication Date Title
US10225416B2 (en) Server storing authentication information in association with device information in storage
US9819751B2 (en) Information processing system, method of processing information, information processing apparatus, and program
JP6413838B2 (ja) 画像形成装置、サーバ装置、通信システム、及びプログラム
US10225254B2 (en) Server transmitting device information assigned to service identification information
JP6519357B2 (ja) 通信システム、画像形成装置、サーバ、及びプログラム
CN104488254A (zh) 复合机、复合机控制系统以及复合机的管理方法
US9807262B2 (en) Relaying apparatus communicating with information processing terminal, image processing apparatus, and service-providing apparatus
JP2013029898A (ja) 画像処理システム、携帯端末、画像処理装置の特定方法及び同特定プログラム
US9813424B2 (en) Communication system, server, and client device
JP2017151514A (ja) プログラム及び情報処理装置
US10148768B2 (en) Information processing apparatus and recording medium
JP2018063705A (ja) 通信システム、携帯端末、機器、プログラム、通信方法
JP2013164836A (ja) 情報処理システム、ネットワークシステムおよび情報処理方法
US10990243B2 (en) Information processing device and recording system
JP6668641B2 (ja) 中継装置及び通信システム
JP6743622B2 (ja) 中継サーバ及びシステム
JP6406060B2 (ja) 画像形成装置、サーバ装置、携帯端末、及び通信システム
JP5749239B2 (ja) 画像形成装置、アップロードプログラム及びアップロードシステム
JP2017220705A (ja) システム及び画像形成装置
JP6582741B2 (ja) 中継装置及び通信システム
JP2019115040A (ja) 情報処理システム、情報処理装置及び情報端末装置
JP6822511B2 (ja) 通信システム、画像形成装置、サーバ、及びプログラム
JP7283058B2 (ja) 情報処理システム、情報処理装置、情報処理方法、情報処理プログラム
JP2016181282A (ja) 編集制御システム、画像処理装置、編集制御プログラム、及び記録媒体
JP6168102B2 (ja) 画像形成装置、画像データ送信方法、およびコンピュータプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180219

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20180219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200618

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200713

R150 Certificate of patent or registration of utility model

Ref document number: 6743622

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150