JP5333008B2 - 課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラム - Google Patents

課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラム Download PDF

Info

Publication number
JP5333008B2
JP5333008B2 JP2009174609A JP2009174609A JP5333008B2 JP 5333008 B2 JP5333008 B2 JP 5333008B2 JP 2009174609 A JP2009174609 A JP 2009174609A JP 2009174609 A JP2009174609 A JP 2009174609A JP 5333008 B2 JP5333008 B2 JP 5333008B2
Authority
JP
Japan
Prior art keywords
information
widget
billing
processing
image forming
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.)
Expired - Fee Related
Application number
JP2009174609A
Other languages
English (en)
Other versions
JP2011028575A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2009174609A priority Critical patent/JP5333008B2/ja
Priority to US12/795,163 priority patent/US8275679B2/en
Priority to EP20100251137 priority patent/EP2284790A1/en
Priority to CN2010102365736A priority patent/CN101969519A/zh
Publication of JP2011028575A publication Critical patent/JP2011028575A/ja
Priority to US13/589,745 priority patent/US9141978B2/en
Application granted granted Critical
Publication of JP5333008B2 publication Critical patent/JP5333008B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/04Billing or invoicing

Landscapes

  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラムに関し、特に画像形成装置と外部のアプリケーションとの連携によるサービスに対する課金情報を記録する課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラムに関する。
近年、画像形成装置がネットワークを介して接続される他のコンピュータ上で動作するアプリケーションと連携して動作する仕組みが提案されている(例えば、特許文献1)。
他方において、画像形装置には、コピー、印刷、FAX、又はスキャン等の固有の機能について、課金を行うための機能が組み込まれている。具体的には、画像形成装置は、各機能について利用状況を記録するためのカウンタを記憶装置内に有し、各機能の利用に応じてカウンタをカウントアップするという仕組みを備えている。リース契約等によってオフィス等に設置されている画像形成装置については、画像形成装置のメーカーのサービスマン等によって定期的にカウンタが確認され、課金額の徴収が行われる。画像形成装置に設置されたコインラック等によって、その場で(コピー時等に)課金が行われる形態もある。
しかしながら、画像形成装置が、そのサービスが有料である外部のアプリケーションと連携する場合、当該アプリケーションによって提供されるサービスに対する課金は、当該アプリケーションの提供者によって行われる。その結果、ユーザから見た場合には、一つのサービスを利用したにも拘わらず、画像形成装置と外部アプリケーションとのそれぞれについて個別に課金が行われるという事態が発生する。特に、それぞれについて課金が行われるタイミング(例えば、請求書が送付されるタイミング)が異なる場合はユーザにとって非常に煩雑である。また、課金形態が従量制の場合には、ユーザ自らによる利用状況と、複数の請求書とを対比させなければならず、ユーザは、正当な課金額であるか否かを把握するのが困難であるという問題がある。
本発明は、上記の点に鑑みてなされたものであって、画像形成装置と外部アプリケーションとの連携によって提供されるサービスに関する課金形態を単純化することのできる課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラムの提供を目的とする。
そこで上記課題を解決するため、本発明は、画像形成装置と課金管理装置とを有する課金管理システムであって、前記画像形成装置は、ネットワークを介して接続される情報処理装置が要求する処理フローにおいて利用される処理の一覧を示す処理情報を受信する処理情報受信手段と、前記処理フローに対する識別情報を生成し、前記識別情報を前記課金管理装置に登録する登録手段と、前記処理の一覧の中で、前記画像形成装置に対して要求されている処理を実行する処理実行手段と、前記処理実行手段によって実行された処理に関する課金情報を、前記識別情報に関連付けて前記課金管理装置に送信する課金情報送信手段と、前記処理の一覧に含まれる処理の実行が要求されているサービス提供装置に対して前記処理実行手段による処理の結果として出力されるデータを前記識別情報と関連付けて転送させるデータ転送手段とを有し、前記課金管理装置は、前記画像形成装置より前記識別情報の登録を受け付ける識別情報受信手段と、前記画像形成装置及び前記サービス提供装置より、それぞれが実行した処理に関する課金情報と前記識別情報とを受信する課金情報受信手段と、前記処理ごとの課金情報を前記識別情報に基づいて関連付けて課金情報記憶手段に記録する課金情報永続化手段とを有する。
このような課金管理システムでは、画像形成装置と外部アプリケーションとの連携によって提供されるサービスに関する課金形態を単純化することができる。
本発明によれば、画像形成装置と外部アプリケーションとの連携によって提供されるサービスに関する課金形態を単純化することができる。
本発明の実施の形態における情報処理システムの構成例を示す図である。 本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。 本発明の実施の形態における画像形成装置及びユーザ端末のソフトウェア構成例を示す図である。 第一の実施の形態におけるウィジェット、ウィジェットマネージャ、及びプロバイダアプリの機能構成例を示す図である。 本発明の実施の形態における課金管理サーバのハードウェア構成例を示す図である。 第一の実施の形態における課金管理サーバの機能構成例を示す図である。 ウィジェット起動時の処理手順を説明するためのシーケンス図である。 翻訳コピーウィジェットのウィジェット情報の例を示す図である。 ユーザ管理テーブルの構成例を示す図である。 実行対象とするウィジェットの選択処理の処理手順を説明するためのシーケンス図である。 ユーザ選択画面の表示例を示す図である。 ウィジェットマネージャからプロバイダアプリに送信される翻訳コピーウィジェットのウィジェット情報の構成例を示す図である。 ウィジェット選択画面の表示例を示す図である。 第一の実施の形態における翻訳コピーウィジェットの処理フローの実行時の処理手順を説明するためのシーケンス図である。 ジョブトラッキングデータの構成例を示す図である。 課金度数及び実行結果が記録されたジョブトラッキングデータの例を示す図である。 翻訳コピーウィジェットによる処理フローの制御のバリエーションを示す図である。 第一の実施の形態において翻訳コピーウィジェットの処理フローの途中でエラーが発生した場合の処理手順を説明するためのシーケンス図である。 エラーが発生した場合のジョブトラッキングデータの例を示す図である。 第二の実施の形態におけるウィジェット、ウィジェットマネージャ、及びプロバイダアプリの機能構成例を示す図である。 第二の実施の形態における課金管理サーバの機能構成例を示す図である。 第二の実施の形態における翻訳コピーウィジェットの処理フローの実行時の処理手順を説明するためのシーケンス図である。 課金度数が無効化されたジョブトラッキングデータの例を示す図である。 認証フローと平文フローとの組み合わせの一例を示す図である。
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における情報処理システムの構成例を示す図である。同図の情報処理システム1において、一台以上の画像形成装置10、及び一台以上のユーザ端末20は、LAN(Local Area Network)等のネットワーク40(有線又は無線の別は問わない。)を介して接続されている。また、OCRサーバ50、翻訳サーバ60、及び課金管理サーバ70は、インターネット等の広域的なネットワーク80を介してネットワーク40と接続されている。
画像形成装置10は、印刷、スキャン、コピー、及びFAX送受信等の機能(画像形成機能)を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を実現する装置(プリンタ、スキャナ、コピー機、ファクシミリ等)を画像形成装置10として用いてもよい。なお、画像形成装置10は、利用された画像形成機能に関する課金情報をHDD(Hard Disk Drive)等の不揮発性の記録媒体に記録する。
ユーザ端末20は、ユーザが利用する個人端末であり、ソフトウェアプログラムのインストール及び実行が可能であり、通信機能を有するものであれば、特定の装置に限定されない。ユーザ端末20の具体例として、デスクトップ型のPC(Personal Computer)、ノートPC、PDA(Personal Digital Assistance)、又は携帯電話等の情報処理装置が挙げられる。
OCRサーバ50は、サービス提供装置の一例であり、OCR(Optical Character Recognition)機能をWebサービス(翻訳サービス)としてネットワーク上に提供するアプリケーションプログラムを備えたコンピュータである。
翻訳サーバ60は、サービス提供装置の一例であり、文書データ(例えば、テキストデータ)の翻訳機能(例えば、英語から日本語への翻訳)をWebサービス(翻訳サービス)としてネットワーク上に提供するアプリケーションプログラムを備えたコンピュータである。
なお、OCRサーバ50及び翻訳サーバ60は、それぞれのサービスを有料で提供する。また、説明の便宜上、OCRサーバ50及び翻訳サーバ60は、それぞれ画像形成装置10の提供者と異なる事業者によって運営されていることとする。
課金管理サーバ70は、画像形成装置10、OCRサーバ50、及び翻訳サーバ60によって提供されるサービス(実行される処理)に対する課金情報を一元的に管理するためのWebサービス(課金管理サービス)を備えたコンピュータである。説明の便宜上、本実施の形態において課金管理サービス70は、画像形成装置10のメーカーによって運営されていることとする。したがって、画像形成装置10のサービスマンは、課金管理サーバ70において記録された課金情報に基づいて課金を行うための手続き等を行う。
図2は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図2において、画像形成装置10は、コントローラ11、スキャナ12、プリンタ13、モデム14、操作パネル15、ネットワークインタフェース16、及びSDカードスロット17等のハードウェアを有する。
コントローラ11は、CPU111、RAM112、ROM113、及びHDD114等を有する。ROM113には、各種のプログラムやプログラムによって利用されるデータ等が記録されている。RAM112は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU111は、RAM112にロードされたプログラムを処理することにより、各種の機能を実現する。HDD114には、プログラムやプログラムが利用する各種のデータ等が記録される。
スキャナ12は、原稿より画像データを読み取るためのハードウェアである。プリンタは13、印刷データを印刷用紙に印刷するためのハードウェアである。モデム14は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。操作パネル15は、ユーザからの入力の受け付けを行うめのボタン等の入力手段や、液晶パネル等の表示手段を備えたハードウェアである。ネットワークインタフェース16は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット17は、SDカード80に記録されたプログラムを読み取るために利用される。すなわち、画像形成装置10では、ROM113に記録されたプログラムだけでなく、SDカード80に記録されたプログラムもRAM112にロードされ、実行されうる。
図3は、本発明の実施の形態における画像形成装置及びユーザ端末のソフトウェア構成例を示す図である。同図において、ユーザ端末20は、スキャンウィジェット21a、印刷ウィジェット21b、翻訳コピーウィジェット21c、ウィジェットマネージャ22、及びOS23等を有する。
スキャンウィジェット21a、印刷ウィジェット21b、及び翻訳コピーウィジェット21cは、本実施の形態において、ウィジェット21として総称されるアプリケーションプログラムである。近年では、ウィジェット(Widget)又はガジェット(Gadget)とよばれる手軽なアプリケーションが流通している。本実施の形態では、手軽にインストールして利用可能なアプリケーションという程度の意味においてこれらのアプリケーションをウィジェット21と呼ぶ(すなわち、技術的な意義において限定する趣旨ではない)。本実施の形態において、各ウィジェット21は、画像形成装置10又はネットワーク80上において提供されているサービスを利用して、所定の処理フローを制御するという点において共通する。
スキャンウィジェット21aは、画像形成装置10にスキャンを実行させ、スキャンされた画像データをユーザ端末20内に保存するウィジェット21である。
印刷ウィジェット21bは、ユーザ端末20内に保存されている文書データの印刷を画像形成装置10に実行させるウィジェット21である。
翻訳コピーウィジェット21cは、画像形成装置10にスキャンを実行させ、スキャンされた画像データに対するOCR処理をOCRサーバ50に実行させ、OCR処理の結果得られるテキストデータの翻訳処理を翻訳サーバ60に実行させ、翻訳処理されたテキストデータの印刷を画像形成装置10に実行させるウィジェット21である。すなわち、翻訳コピーウィジェット21cは、あたかも英語の文書をコピーすると日本語の文書がコピー結果として出力されるという処理フローを実現する。
ウィジェットマネージャ22は、ウィジェット21のフレームワークとして位置付けられ、ウィジェット21と画像形成装置10との間の通信の仲介等を行う。各ウィジェット21は、ウィジェットマネージャ22によって規定されるインタフェース及び処理手順を備える必要がある。換言すれば、ウィジェットマネージャ22と協調して動作するアプリケーションが、本実施の形態におけるウィジェット21である。
OS23は、いわゆるOS(Operating System)である。ユーザ端末20上の各ソフトウェアは、OS23上においてプロセス又はスレッドとして動作する。
一方、画像形成装置10は、標準アプリ121、SDKアプリ122、SDKプラットフォーム123、コントロールサービス124、及びOS125等を有する。
標準アプリ121は、画像形成装置10に標準的に(出荷時に予め)実装されているアプリケーションの集合である。同図では、スキャンアプリ1211、印刷アプリ1212、コピーアプリ1213、及びFAXアプリ1214が例示されている。スキャンアプリ1211は、スキャンジョブを実行する。印刷アプリ1212は印刷ジョブを実行する。コピーアプリ1213は、コピージョブを実行する。FAXアプリ1214は、FAXの送信ジョブ又は受信ジョブを実行する。
コントロールサービス124は、各種のハードウェアリソース等を制御するための機能を上位アプリケーション等に対して提供するソフトウェアモジュール群であり、例えば、ネットワーク通信に関する機能、スキャナの制御機能、プリンタの制御機能、メモリの管理機能等を有する。
SDKアプリ122は、画像形成装置10の出荷後において、画像形成装置10の機能拡張を図るためのプラグインとして追加的にインストールされるアプリケーションである。同図では、SDKアプリ122として、プロバイダアプリ1221が例示されている。プロバイダアプリ1221は、ウィジェット21を画像形成装置10より操作可能とするための処理やウィジェット21に要求された処理を画像形成装置10に実行させるための処理等を実行する。
SDKプラットフォーム123は、SDKアプリ122の実行環境を提供する。各SDKアプリ122は、SDKプラットフォーム123が提供するAPI(Application Program Interface)を利用して開発される。例えば、SDKプラットフォーム123は、スキャン機能を利用させるためのインタフェース、印刷機能を利用させるためのインタフェース、コピー機能を利用させるためのインタフェース等をSDKアプリ122に提供する。なお、SDKプラットフォーム123のAPIは公開されており、サードベンダ等によってもSDKアプリ122は開発されうる。
OS125は、いわゆるOS(Operating System)である。画像形成装置10上の各ソフトウェアは、OS125上においてプロセス又はスレッドとして動作する。
続いて、ウィジェット21、ウィジェットマネージャ22、及びプロバイダアプリ1221について更に詳しく説明する。図4は、第一の実施の形態におけるウィジェット、ウィジェットマネージャ、及びプロバイダアプリの機能構成例を示す図である。
同図に示されるように、各ウィジェット21は、ウィジェットUI部211、ウィジェット情報送信部212、連携部213、ロジック部214、及び属性情報管理ファイル215等を有する。
ウィジェットUI部211は、ウィジェット21に関する各種の表示画面をユーザ端末20の表示装置に表示させる。ウィジェット情報送信部212は、ウィジェット21が起動されたときに、ウィジェット情報の登録要求をウィジェットマネージャ22に送信する。ウィジェット情報にはウィジェット21の実行に必要な情報(例えば、処理フローに関する情報)が含まれる。連携部213は、ウィジェットマネージャ22とのコミュニケーション(情報のやりとり等)を制御する。属性情報管理ファイル215は、ウィジェット21対する設定情報等を格納するファイルである。ロジック部214は、各ウィジェット21に固有の機能が実装される部分である。
ウィジェットマネージャ22は、ウィジェット情報登録部223、広告部224、ウィジェット情報提供部225、中継部226、及びウィジェット情報管理テーブル227等を有する。
ウィジェット情報登録部223は、ウィジェット21より送信されるウィジェット情報の登録要求を受信し、当該ウィジェット情報をウィジェット情報管理テーブル227に保存する。ウィジェット情報管理テーブル227には、ユーザ端末20において起動されている各ウィジェット21のウィジェット情報が登録されるテーブルであり、ユーザ端末20の記憶装置に生成される。
広告部224は、ウィジェット情報登録部223によって受信されたウィジェット情報に含まれるユーザID等をネットワーク上に広告(ブロードキャスト又はマルチキャスト等)する。広告は、ユーザ単位(ユーザID単位)で発行される。具体的には、ユーザ端末20内における或るウィジェット21の起動に応じてユーザAに関して広告が発行された後、当該ユーザ端末20内において、他のウィジェット21が起動されたとしても当該ウィジェット情報に応じた広告は発行されない。本実施の形態では、便宜上、ユーザ端末20とユーザとは一対一に対応する。したがって、広告部224による広告は、何らかのウィジェット21を利用可能になったユーザが新たに発生したことを画像形成装置10に通知するための情報であるといえる。但し、ウィジェット情報単位で広告が行われてもよい。この場合、同一ユーザについて重複して広告が発行されることになるが、重複の排除は画像形成装置10側で行えばよい。
ウィジェット情報提供部225は、画像形成装置10からの要求に応じ、ウィジェット情報管理テーブル227に登録されているウィジェット情報を画像形成装置10に提供(送信)する。中継部226は、ウィジェット21とプロバイダアプリ1221とのコミュニケーションを中継する。
プロバイダアプリ1221は、ユーザ検知部131、UI制御部132、ウィジェット情報取得部133、ジョブトラッキングデータ登録部134、課金情報送信部135、データ転送部136、データ受信部137、サービス制御部138、及びユーザ管理テーブル141等を有する。
ユーザ検知部131は、ウィジェットマネージャ22より発行される広告に基づいて、ウィジェット21を利用可能なユーザの存在を検知し、広告に含まれているユーザID等をユーザ管理テーブル141に登録する。ユーザ管理テーブル141は、ウィジェット21をネットワーク上において起動しているユーザの一覧を管理するテーブルである。
UI制御部132は、ウィジェット21の操作指示等の入力をユーザより受け付ける。すなわち、ウィジェット21は、ユーザ端末20に配置されているが、画像形成装置10の操作パネル15からも操作されうる。ウィジェット情報取得部133は、ユーザ管理テーブル141に登録されているユーザの中から実行対象として選択されたユーザに属するウィジェット21のウィジェット情報をウィジェットマネージャ22より取得する。
ジョブトラッキングデータ登録部134は、実行対象として選択されたウィジェット21の処理フローの開始に際し、当該処理フローに対するジョブトラッキングデータ(以下、「JTD」とも表記する。)を生成し、生成されたジョブトラッキングデータを課金管理サーバ70に送信(登録)する。ジョブトラッキングデータとは、ウィジェットが実行する処理フローにおいて利用されるサービス(実行される処理)ごとに課金情報(課金量を示す情報)やサービスを提供するための処理の成否を示す情報等を記録するためのデータをいう。なお、ジョブトラッキングデータ登録部134は、ジョブトラッキングデータごとに一意な識別情報(ジョブトラッキングID)を生成し、ジョブトラッキングデータに割り当てる。
課金情報送信部135は、処理フローに含まれているサービス(処理)の中で、画像形成装置10において実行されたサービスに関する課金情報をジョブトラッキングIDと共に課金管理サーバ70へ送信する。
データ転送部136は、実行対象とされたウィジェット21の処理フローに含まれるサービス(処理)のうち、画像形成装置10に提供が要求されているサービス(実行が要求されている処理)の実行の結果として出力されるデータや、ジョブトラッキングID等をウィジェットマネージャ22に転送する。
データ受信部137は、画像形成装置10以外のサービスの実行主体(本実施の形態ではOCRサーバ50又は翻訳サーバ60)によるサービスの実行結果として出力されるデータやジョブトラッキングID等をウィジェットマネージャ22より受信する。
サービス制御部138は、ウィジェット21から要求されたサービスの実行を制御する。サービスを実現するための処理は、標準アプリ121や他のSDKアプリ122に委譲される。
続いて、課金管理サーバ70の詳細について説明する。図5は、本発明の実施の形態における課金管理サーバのハードウェア構成例を示す図である。図5の課金管理サーバ70は、それぞれバスBで相互に接続されているドライブ装置700と、補助記憶装置702と、メモリ装置703と、CPU704と、インタフェース装置705とを有する。
課金管理サーバ70での処理を実現するプログラムは、CD−ROM等の記録媒体701によって提供される。プログラムを記録した記録媒体701がドライブ装置700にセットされると、プログラムが記録媒体701からドライブ装置700を介して補助記憶装置702にインストールされる。但し、プログラムのインストールは必ずしも記録媒体701より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置702は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置703は、プログラムの起動指示があった場合に、補助記憶装置702からプログラムを読み出して格納する。CPU704は、メモリ装置703に格納されたプログラムに従って課金管理サーバ70に係る機能を実行する。インタフェース装置705は、ネットワークに接続するためのインタフェースとして用いられる。
図6は、第一の実施の形態における課金管理サーバの機能構成例を示す図である。同図において、課金管理サーバ70は、ジョブトラッキングデータ受信部71、課金情報受信部72、ジョブトラッキングデータ永続化部73、及びジョブトラッキングデータ記憶部74等を有する。これら各部は、課金管理サーバ70にインストールされたプログラムがCPU704に実行させる処理により実現される。
ジョブトラッキングデータ受信部71は、画像形成装置10のジョブトラッキングデータ登録部134より送信されるジョブトラッキングデータを受信し、当該ジョブトラッキングデータをメモリ装置703に記録する。課金情報受信部72は、処理フローにおいて実行される各サービス(処理)の実行主体(画像形成装置10、OCRサーバ50、翻訳サーバ60等)よりサービスの実行に応じた課金情報及びジョブトラッキングIDを受信し、当該ジョブトラッキングIDに対応するジョブトラッキングデータに対し課金情報を記録する。ジョブトラッキングデータ永続化部73は、処理フローが終了したタイミングでジョブトラッキングデータをジョブトラッキングデータ記憶部74に記録する。ジョブトラッキングデータ記憶部は、例えば、補助記憶装置702においてジョブトラッキングデータを永続的に管理する記憶領域である。
以下、情報処理システム1の処理手順について説明する。図7は、ウィジェット起動時の処理手順を説明するためのシーケンス図である。同図の初期状態において、ウィジェットマネージャ22は既に起動されていることとする。
例えば、ユーザの指示入力に応じて翻訳コピーウィジェット21cが起動されると、翻訳コピーウィジェット21cのウィジェット情報送信部212は、属性情報管理ファイル215よりウィジェット情報を取得し、当該ウィジェット情報をウィジェットマネージャ22のウィジェット情報登録部223に送信する(S101)。
図8は、翻訳コピーウィジェットのウィジェット情報の例を示す図である。同図において、翻訳コピーウィジェット21cのウィジェット情報は、ウィジェットID、ユーザID、ウィジェットアドレス、表示名、及び処理フロー情報等を含む。
ウィジェットIDは、各ウィジェット21を一意に識別する識別情報である。ユーザIDは、翻訳コピーウィジェット21cのユーザの識別子である。すなわち、各ウィジェット21は、当該ウィジェット21がインストールされたユーザ端末20のユーザに関連付けられている。ウィジェットアドレスは、ネットワーク通信において各ウィジェット21を一意に識別するための識別情報(例えば、URL等)である。表示名は、翻訳コピーウィジェット21cの名前の表示用の文字列である。
処理フロー情報は、翻訳コピーウィジェット21cが実行する処理フローにおいて利用されるサービス(実行される処理)ごとに、サービス名、提供者名、URL、及び設定情報等を含む情報である。サービス名は、サービスの識別名称である。本実施の形態では日本語で記載されているが、プログラム上処理しやすい符号等によってサービス名が定義されてもよい。提供者名は、サービスを提供している事業者の名前である。例えば、スキャンサービス及び印刷サービスに対する提供者名(「ABC」)は、画像形成装置10のメーカーを示す。また、OCRサービス及び翻訳サービスに対する提供者名は、OCRサーバ50又は翻訳サーバ60の運営者の名前を示す。URLは、画像形成装置10のプロバイダアプリ1221が各サービスをネットワーク上において識別するための情報である。本実施の形態ではURLを用いているが、利用する通信プロトコルに応じて他の識別情報をURLに代替させてもよい。設定情報は、各サービスに対する設定情報(実行条件)である。例えば、スキャンサービスであれば、解像度、カラーモード等に関する指定である。また、OCRサービスであれば、文書の方向(横書き又は縦書き)や言語の種別等に関する指定である。翻訳サービスであれば、翻訳元と翻訳先の言語の指定等である。印刷サービスであれば、用紙サイズ、カラーモード、集約、両面等に関する指定である。
なお、本実施の形態において、処理フロー情報におけるサービスの配列順は、サービスの利用順に従っている。すなわち、翻訳コピーウィジェット21cの処理フローでは、スキャン→OCR→翻訳→印刷の順でサービスが利用(処理が実行)される。処理フロー情報におけるサービスの配列順をサービスの利用順とは無関係に定義可能とする場合は、サービスの利用順を示す情報を処理フロー情報に含めてもよい。また、同図では、翻訳コピーウィジェット21cのウィジェット情報について説明したが、他のウィジェット21のウィジェット情報も同様の構造を有する。
ところで、ウィジェット情報は、属性情報管理ファイル215より取得されるものである。したがって、ユーザは、属性情報管理ファイル215を編集することにより、各サービスの設定情報に関してカスタマイズを行うことができる。
続いて、ウィジェット情報登録部223は、受信されたウィジェット情報に含まれているユーザIDに対応するウィジェット情報管理テーブル227に当該ウィジェット情報を登録する(S102)。当該ユーザIDに対応するウィジェット情報管理テーブル227が存在しない場合、ウィジェット情報登録部223は、当該ユーザIDに対応するウィジェット情報管理テーブル227を生成し、生成されたウィジェット情報管理テーブル227にウィジェット情報を登録する。なお、本実施の形態では、ユーザ端末20とユーザとは一対一に対応する。また、ウィジェット情報管理テーブル227は、ウィジェットマネージャ22の終了時に削除される。したがって、本実施の形態では、ユーザ端末20の起動後において初めてウィジェット21が起動された場合、ウィジェット情報管理テーブル227が生成される。
ウィジェット情報管理テーブル227が新たに生成された場合(すなわち、受信されたウィジェット情報に含まれているユーザIDに係るユーザについて、初めてウィジェット情報が登録された場合)、広告部224は、受信されたウィジェット情報に含まれているユーザIDと、ウィジェット情報取得用URL(Uniform Resource Locator)とを含む広告をネットワーク上に発行する(S103)。ウィジェット情報取得用URLとは、ウィジェットマネージャ22ごとに(すなわち、ユーザ端末20ごとに)一意なURLである。
当該広告は、ユーザ端末20と通信可能な状態にある各画像形成装置10のユーザ検知部131によって受信される。すなわち、複数の画像形成装置10において広告は受信されうる。各画像形成装置10のユーザ検知部131は、広告の受信に応じ、当該広告に含まれているユーザID及びウィジェット情報取得用URLをユーザ管理テーブル141に登録する(S104)。
図9は、ユーザ管理テーブルの構成例を示す図である。同図に示されるように、ユーザ管理テーブル141は、ユーザIDとウィジェット情報取得用URLとを対応づけて管理する。同図では、ユーザA及びユーザBについてレコードが登録されている例が示されている。
以上によって、翻訳コピーウィジェット21cの存在はウィジェットマネージャ22によって認識された。また、ユーザ端末20のユーザの存在は、画像形成装置10に認識された。したがって、当該ユーザは、画像形成装置10より翻訳コピーウィジェット21cを利用できる状態となった。なお、当該ユーザが、スキャンウィジェット21aや印刷ウィジェット21bを続けて起動した場合、これらのウィジェット21についてもウィジェット情報がウィジェットマネージャ22のウィジェット情報管理テーブル227に登録される。但し、広告は発行されない。当該ユーザに関する広告は既に発行されているからである。
図7の処理の後、ユーザは、翻訳コピーウィジェット21cを動作させるために画像形成装置10の設置場所へ移動する。なお、複数の画像形成装置10がユーザ端末20と通信可能な状態である場合、ユーザは任意の画像形成装置10を選択可能である。すなわち、ユーザは、複数の画像形成装置10の中で所望の画像形成装置10に赴いて翻訳コピーウィジェット21cを動作させることができる。
続いて、画像形成装置10におけるユーザによる操作に応じて実行される処理について説明する。図10は、実行対象とするウィジェットの選択処理の処理手順を説明するためのシーケンス図である。
ユーザによって操作パネル15を介してプロバイダアプリ1221の利用指示が入力されると(S121)、プロバイダアプリ1221のUI制御部132は、ユーザ管理テーブル141に登録されている情報に基づいてユーザ選択画面を操作パネル15に表示させる(S122)。なお、ステップS122において、UI制御部132は、ウィジェットマネージャ22よりユーザ情報を取得し、取得されたユーザ情報に基づいてユーザ選択画面を表示させるようにしてもよい。この場合、図7のステップS103及びS104は必ずしも事前に行われなくてもよい。
図11は、ユーザ選択画面の表示例を示す図である。同図に示されるユーザ選択画面610には、ユーザIDごとにボタンが表示されている。同図では、ユーザAに対応するボタン611とユーザBに対応するボタン612とが表示されている。
続いて、ユーザは、ユーザ選択画面610において自らのユーザIDに対応するボタンを押下する(S123)。ボタンの押下に応じ、ウィジェット情報取得部133は、選択されたボタンに対応するユーザIDに関連付けられているウィジェット情報取得用URLをユーザ管理テーブル141より取得する。なお、ユーザIDに対応するボタンの押下に応じ、ユーザの認証を行い、ユーザが認証された場合にのみ、以降の処理が実行されるようにしてもよい。
続いて、ウィジェット情報取得部133は、ウィジェット情報取得用URL宛に、ウィジェット情報の取得要求を送信する(S124)。ウィジェット情報取得用URL宛のウィジェット情報の取得要求は、ウィジェットマネージャ22のウィジェット情報提供部225によって受信される。ウィジェット情報提供部225は、ウィジェット情報管理テーブル227に登録されている全てのウィジェット21のウィジェット情報を取得し、取得されたウィジェット情報の一覧をプロバイダアプリ1221に送信する(S125)。ウィジェット情報の一覧の送信に際し、ウィジェット情報提供部225は、プロバイダアプリ1221と各ウィジェット21との通信を中継するためのURL(以下、「ウィジェット中継用URL」という。)をウィジェット21ごと(ウィジェット情報ごと)に一意に生成する。ウィジェット情報提供部225は、ウィジェット21ごとに生成されたウィジェット中継用URLを、各ウィジェット21に対応するウィジェット情報に付加し、ウィジェット中継用URLが付加されたウィジェット情報の一覧をプロバイダアプリ1221に送信する。したがって、ステップS125において送信されるウィジェット情報は、例えば、図12に示されるような構成を有する。
図12は、ウィジェットマネージャからプロバイダアプリに送信される翻訳コピーウィジェットのウィジェット情報の構成例を示す図である。
図12に示されるウィジェット情報は、図8のウィジェット情報に対してウィジェット中継用URLが付加されたものである。ステップS125では、同図に示されるようなウィジェット情報の一覧が送信される。ここでは、ウィジェット情報が一つしか含まれないものもウィジェット情報の一覧という。
なお、ウィジェット中継用URLは、ウィジェット情報がウィジェット情報管理テーブル227に登録される際に生成され、ウィジェット情報に付加されてもよい。
続いて、プロバイダアプリ1221のUI制御部132は、受信されたウィジェット情報の一覧をRAM112に記録しておき、当該ウィジェット情報の一覧に基づいて、ユーザに利用可能なウィジェット21の一覧を含む画面(ウィジェット選択画面)を表示させる(S126)。
図13は、ウィジェット選択画面の表示例を示す図である。同図に示されウィジェット選択画面620には、ウィジェット21ごとにボタンが表示されている。同図では、翻訳コピーウィジェット21cに対応するボタン621と、スキャンウィジェット21aに対応するボタン622と、印刷ウィジェット21bに対応するボタン623とが表示されている。
ウィジェット選択画面620において、翻訳コピーウィジェット21cに対応するボタン621が選択され、スキャナ12に原稿がセットされた後、操作パネル15のスタートキーが押下されると(S127)、翻訳コピーウィジェット21cの処理フローが開始される。
続いて、翻訳コピーウィジェット21cの処理フローの実行時の処理手順について説明する。図14は、第一の実施の形態における翻訳コピーウィジェットの処理フローの実行時の処理手順を説明するためのシーケンス図である。
翻訳コピーウィジェット21cが実行対象として選択されたことに応じ、プロバイダアプリ1221のジョブトラッキングデータ登録部134は、翻訳コピーウィジェット21cに対応するウィジェット情報(以下、「カレントウィジェット情報」という。)に基づいて、ジョブトラッキングデータ(JTD)をRAM112に生成する(S131)。
図15は、ジョブトラッキングデータの構成例を示す図である。同図に示されるように、ジョブトラッキングデータは、カレントウィジェット情報の処理フロー情報に対してジョブトラッキングIDを付加したものである。ジョブトラッキングIDは、ジョブトラッキングデータの識別情報であり、例えば、ジョブトラッキングデータごとに一意な文字列である。ジョブトラッキングIDは、ジョブトラッキングデータの生成に伴って、ジョブトラッキングデータ登録部134によって割り当てられ、ジョブトラッキングデータに付与(記録)される。
ジョブトラッキングデータは、更に、処理フロー情報において、サービスごとに課金度数及び実行結果を記録可能なように構成されている。課金度数は、課金量を示す指標である。課金額そのものが課金度数として記録されてもよい。実行結果は、サービスの実行の成否を示す情報である。図15の状態では、まだいずれのサービスも実行されていないため、課金度数及び実行結果の値は全てのサービスについて空となっている。なお、ジョブトラッキングデータには各サービスに対する設定情報は含まれていない。以下に説明されるように、ジョブトラッキングデータは、各サービスの実行主体には流通せず、設定情報を含む意義が無いからである。
ジョブトラッキングデータ登録部134は、カレントウィジェット情報と、生成されたジョブトラッキングデータのジョブトラッキングIDとの関連付け情報をRAM112に記録しておく。例えば、カレントウィジェット情報のウィジェットIDとジョブトラッキングIDとの組(ペア)が当該関連付け情報としてRAM112に記録される。
続いて、ジョブトラッキングデータ登録部134は、課金管理サーバ70にジョブトラッキングデータを送信する(S132)。課金管理サーバ70のジョブトラッキングデータ受信部71は、ジョブトラッキングデータの受信に応じ、当該ジョブトラッキングデータをメモリ装置703におけるジョブトラッキングデータの一時管理領域に記録しておく(S133)。なお、課金管理サーバ20と通信するための課金管理サーバ20の識別情報(IPアドレス又はURL等)は、画像形成装置10のHDD114に予め記録されている。
続いて、プロバイダアプリ1221のサービス制御部138は、カレントウィジェット情報に含まれている処理フロー情報の第一エントリ(図12参照)のサービス名が「スキャン」であることとURLが空であることとに基づいて、スキャンアプリ1211がスキャンサービスを実行すべきことを判定する。すなわち、URLが空であることにより、スキャンサービスの実行場所は画像形成装置10内であることが判定される。また、画像形成装置10内においてスキャンサービスを実行するアプリケーションは、スキャンアプリ1221であるため、スキャンサービスの実行主体はスキャンアプリ1221であると判定される。
そこで、サービス制御部138は、カレントウィジェット情報に含まれているスキャンサービスに対する設定情報を指定して、スキャンの実行指示をスキャンアプリ1211に入力する(S134)。スキャンアプリ1211は、指定された設定情報にしたがって1枚の原稿に対するスキャンをスキャナ12に実行させる(S135)。続いて、スキャンアプリ1211は、原稿よりスキャンされた画像データ(スキャン画像)と、1枚のスキャン分の課金度数及びスキャンの実行結果とを含む情報(以下「スキャン結果情報」という。)とをサービス制御部138に出力する(S136)。
続いて、プロバイダアプリ1221の課金情報送信部135は、カレントウィジェット情報に対応するジョブトラッキングID(JTID)とスキャン結果情報とを関連付けて課金管理サーバ70に送信する(S137)。課金管理サーバ70の課金情報受信部72は、メモリ装置703に記録されているジョブトラッキングデータの中で、受信されたジョブトラッキングIDを有するジョブトラッキングデータにスキャン結果情報の内容を記録する(S138)。具体的には、当該ジョブトラッキングデータのスキャンサービスに対する課金度数及び実行結果がスキャン結果情報に基づいて更新される。
続いて、プロバイダアプリ1221のサービス制御部138は、カレントウィジェット情報の処理フロー情報の第二エントリに含まれているサービス名「OCR」とURLとに基づいて、外部のWebサービスによってOCRサービスが実行されるべきことを判定する。当該判定に応じ、プロバイダアプリ1221のデータ転送部136は、スキャン画像及びジョブトラッキングIDを含むスキャン完了通知をカレントウィジェット情報に含まれているウィジェット中継用URL宛に送信する(S139)。ウィジェット中継用URL宛に送信されたスキャン完了通知は、ウィジェットマネージャ22の中継部226によって受信される。中継部226は、当該ウィジェット中継用URLに対応するウィジェット情報をウィジェット情報管理テーブル227より取得し、当該ウィジェット情報に含まれているウィジェットアドレス宛にスキャン完了通知を転送する。当該ウィジェットアドレス宛に送信されたスキャン完了通知は、翻訳コピーウィジェット21cのロジック部214によって受信される。
このように、データ転送部136から翻訳コピーウィジェット21cへのデータの転送は、ウィジェットマネージャ22を介して実行される。但し、シーケンス図においてはウィジェットマネージャ22による仲介処理は便宜上省略されている。また、以降の説明においても、ウィジェットマネージャ22による仲介処理に関しては省略して説明する。
続いて、翻訳コピーウィジェット21cのロジック部214は、スキャン完了通知の受信に応じ、スキャン画像に対するOCR処理の実行要求をOCRサーバ50に送信する(S140)。当該実行要求には、スキャン完了通知に含まれていたスキャン画像及びジョブトラッキングIDと、OCRサービスに対する設定情報とが含まれる。なお、翻訳コピーウィジェット21cのロジック部214は、翻訳コピーウィジェット21cが実行する処理フロー、当該処理フローにおいて利用される各サービス、各サービスに対する設定情報、各サービスの提供者の所在(URL等)を知っている。斯かる知識はロジック部214にロジックとして組み込まれていてもよいし(ハードコーディングされていてもよいし)、翻訳コピーウィジェット21cの属性情報管理ファイル215に基づいて動的に獲得されてもよい。
続いて、OCRサーバ50は、受信された設定情報に従って、スキャン画像に対してOCR処理を実行する(S141)。続いて、OCRサーバ50は、OCR処理に応じた課金度数及びOCR処理の実行結果を含む情報(以下、「OCR結果情報」という。)とジョブトラッキングIDとを関連付けて課金管理サーバ70に送信する(S142)。なお、OCRサーバ50が課金管理サーバ70と通知するための課金管理サーバ70の識別情報は、OCRサーバ50に予め記録されていてもよいし、ジョブトラッキングID等と共に、プロバイダアプリ1221より転送されてもよい。斯かる事情は、翻訳サーバ60についても同様である。
課金管理サーバ70の課金情報受信部72は、メモリ装置703に記録されているジョブトラッキングデータの中で、受信されたジョブトラッキングIDを有するジョブトラッキングデータにOCR結果情報の内容を記録する(S143)。具体的には、当該ジョブトラッキングデータのOCRソフトサービスに対する課金度数及び実行結果がOCR結果情報に基づいて更新される。
続いて、OCRサーバ50は、OCR処理の結果得られるテキストデータ(OCR済データ)及びジョブトラッキングIDを含むOCR完了通知を翻訳コピーウィジェット21cに返信する(S144)。
翻訳コピーウィジェット21cのロジック部214は、OCR完了通知に応じ、OCR済データに対する翻訳処理の実行要求を翻訳サーバ60に送信する(S145)。当該実行要求には、OCR済データ及びジョブトラッキングIDと、翻訳サービスに対する設定情報とが含まれる。
続いて、翻訳サーバ60は、受信された設定情報に従って、OCR済データに対して翻訳処理を実行する(S146)。続いて、翻訳サーバ60は、翻訳処理に応じた課金度数及び翻訳処理の実行結果を含む情報(以下、「翻訳結果情報」という。)とジョブトラッキングIDとを関連付けて課金管理サーバ70に送信する(S147)。課金管理サーバ70の課金情報受信部72は、メモリ装置703に記録されているジョブトラッキングデータの中で、受信されたジョブトラッキングIDを有するジョブトラッキングデータに、翻訳結果情報の内容を記録する(S148)。具体的には、当該ジョブトラッキングデータの翻訳サービスに対する課金度数及び実行結果が翻訳結果情報に基づいて更新される。
続いて、翻訳サーバ60は、翻訳処理の結果得られるテキストデータ(翻訳済データ)及びジョブトラッキングIDを含む翻訳完了通知を翻訳コピーウィジェット21cに返信する(S149)。
翻訳コピーウィジェット21cのロジック部214は、翻訳完了通知に応じ、翻訳済データの印刷処理の実行要求を画像形成装置10のプロバイダアプリ1221に送信する(S150)。当該実行要求には、翻訳済データ及びジョブトラッキングIDが含まれる。なお、翻訳コピーウィジェット21cからプロバイダアプリ1221への処理の実行要求は、ウィジェットマネージャ22の中継部226を介して転送される。但し、ウィジェットマネージャ22による斯かる中継処理については、シーケンス図及び以降の説明において便宜上省略する。
プロバイダアプリ1221のデータ受信部137は、印刷処理の実行要求を受信すると、当該実行要求をサービス制御部138に通知する。サービス制御部138は、当該実行要求に含まれている翻訳済データと、ジョブトラッキングIDに対応するカレントウィジェット情報に含まれている印刷サービスに対する設定情報とを指定して、印刷の実行指示を印刷アプリ1212に入力する(S151)。印刷アプリ1212は、指定された設定情報にしたがって翻訳済データの印刷をプリンタ13に実行させる(S152)。続いて、印刷アプリ1212は、1枚の印刷分の課金度数及び印刷の実行結果(以下、「印刷結果情報」という。)が記録をサービス制御部138に出力し、印刷の完了をサービス制御部138に通知する(S153)。
続いて、プロバイダアプリ1221の課金情報送信部135は、カレントウィジェット情報に対応するジョブトラッキングID(JTID)と印刷結果情報とを関連付けて課金管理サーバ70に送信する(S154)。課金管理サーバ70の課金情報受信部72は、メモリ装置703に記録されているジョブトラッキングデータの中で、受信されたジョブトラッキングIDを有するジョブトラッキングデータに印刷結果情報の内容を記録する(S155)。具体的には、当該ジョブトラッキングデータの印刷サービスに対する課金度数及び実行結果が印刷結果情報に基づいて更新される。
続いて、課金管理サーバ70のジョブトラッキングデータ永続化部73は、当該ジョブトラッキングデータに含まれている全てのサービスに対する実行結果又は課金度数が記録されたことに応じ、当該ジョブトラッキングデータをジョブトラッキングデータ記憶部74に記録する(S156)。
図16は、課金度数及び実行結果が記録されたジョブトラッキングデータの例を示す図である。同図に示されるジョブトラッキングデータには、スキャンサービス、OCRサーサービス、翻訳サービス、及び印刷サービスのそれぞれについて、課金度数「1」、「2」、「5」、「1」が記録されている。また、全てのサービスの実行結果として、成功を示す「OK」が記録されている。なお、ジョブトラッキングデータのジョブトラッキングデータ記憶部74への記録は、当該ジョブトラッキングデータに記録された内容(特に、課金度数)が確定されたことを意味する。
続いてプロバイダアプリ1221のデータ転送部136は、印刷処理の完了通知を翻訳コピーウィジェット21cに送信する(S157)。印刷処理の完了通知に応じ、翻訳コピーウィジェット21cのロジック部214は、処理フローの実行を終了させる。
なお、課金管理サーバ70のジョブトラッキングデータ記憶部74に記録されたジョブトラッキングデータは、ユーザに対する課金情報として利用される。ここで、翻訳コピーウィジェット21cが利用した全てのサービスによる課金度数は、ジョブトラッキングデータに記録され、課金管理サーバ70において一元的に管理されている。したがって、翻訳コピーウィジェット21cのユーザに対する課金は、ジョブトラッキングデータに基づいて一括的に行うことができる。例えば、画像形成装置10のメーカーのサービスマンが、ジョブトラッキングデータを参照して、一括してユーザに対して課金額の請求を行う。したがって、ユーザは、一つの請求元に対して課金額を支払えばよく、サービスの提供者ごとに課金額を支払うといった煩雑さから解放される。
なお、一括して課金額を徴収した画像形成装置10のメーカーは、ジョブトラッキングデータに記録されている課金度数に応じて、徴収した課金額を他のサービスの提供者(OCRサーバ50の運営者や翻訳サーバ60の運営者等)に分配する。課金額に関するこのような取り扱いについては、画像形成装置10のメーカーと、各サービスの提供者との間で予め契約等を結んでおけばよい。
また、課金に関する情報(課金度数及び実行結果等)は、ウィジェット21は経由せずに各サービスの実行主体から課金管理サーバ70へ直接的に転送される。したがって、不正な開発者によって開発された不正なウィジェット21(以下、「不正ウィジェット」という。)によって、課金度数及び実行結果等が改ざんされる可能性を低下させることができる。その結果、サービスのただ乗りを適切に防止することができる。
なお、原稿が複数ページ有る場合、最も単純なシーケンスとしては、ステップS135〜S157をページ数分繰り返せば(ループさせれば)よい(ケース1)。但し、翻訳コピーウィジェット21cが複数ページ数分のデータを滞留させることにより、ループさせるステップが一部分に限定されるようにしてもよい。具体的には、翻訳コピーウィジェット21cは、ステップS135〜S139までが全ページ分について実行され、全ページ分のスキャン画像が受信されるまで待機するようにしてもよい(ケース2)。この場合、翻訳コピーウィジェット21cは、ステップS140において全ページ分のスキャン画像をまとめてOCRサーバ50に送信する。したがって、ステップS140以降の処理(OCR、翻訳、及び印刷)では、全ページ分のデータが一回分の処理対象とされる。
または、翻訳コピーウィジェット21cは、ステップS135〜S149までが全ページ分について実行され、全ページ分の翻訳済データが受信されるまで待機するようにしてもよい(ケース3)。この場合、翻訳コピーウィジェット21cは、ステップS150において全ページ分の翻訳済データをまとめてプロバイダアプリ1221に送信する。したがって、ステップS150以降の処理(OCR、翻訳、及び印刷)では、全ページ分のデータが一回分の処理対象とされる。
上記ケース1〜ケース3の概略を図17に示す。図17は、翻訳コピーウィジェットによる処理フローの制御のバリエーションを示す図である。同図において、OCRサーバ50及び翻訳サーバ60は、便宜上、同一軸上に記載されている。また、d1は、ジョブトラッキングIDを示す。同一符号のジョブトラッキングIDの値は各ケース内において同一である。
例えば、原稿が3ページであるとすると、ケース1では、スキャン→OCR→翻訳→印刷といった処理フローが3回繰り返される(ループする)。この場合、全てのループにおいて同一のジョブトラッキングIDd1が流通する。したがって、3ページ分の課金度数及び実行結果は同一のジョブトラッキングデータに記録される。
ケース2では、3ページ分について連続的にスキャンされ、3ページ分のスキャン画像に対してOCR及び翻訳が実行され、3ページ分の翻訳済データに対して印刷が実行される。この場合、OCR処理の実行要求及びその応答時、翻訳処理の実行要求及びその応答時、並びに印刷処理の実行要求時において、3ページに対して一つのジョブトラッキングIDd1が転送される。ケース2においても、3ページ分の課金度数及び実行結果は同一のジョブトラッキングデータに記録されるからである。
ケース3では、スキャン→OCR→翻訳といった処理フローが3回繰り返され、3ページ分の翻訳済データが翻訳コピーウィジェット21cに滞留する。その後、3ページ分の翻訳済データに対して印刷が実行される。この場合、印刷処理の実行要求時において3ページに対して一つのジョブトラッキングIDd1が転送される。ケース2においても、3ページ分の課金度数及び実行結果は同一のジョブトラッキングデータに記録されるからである。
続いて、処理フローの途中でエラーが発生した場合について説明する。図18は、第一の実施の形態において翻訳コピーウィジェットの処理フローの途中でエラーが発生した場合の処理手順を説明するためのシーケンス図である。図18中、図14と同一ステップには同一ステップ番号を付し、その説明は省略する。
同図では、OCRサーバ50によるOCR処理(S141e)においてエラーが発生した例が示されている。この場合、OCRサーバ50は、OCR処理が失敗したこと(エラーが発生したこと)示すOCR結果情報とジョブトラッキングIDとを課金管理サーバ70に送信する(S142e)。課金管理サーバ70の課金情報受信部72は、メモリ装置703に記録されているジョブトラッキングデータの中で、受信されたジョブトラッキングIDを有するジョブトラッキングデータにOCR結果情報の内容を記録する(S143e)。具体的には、OCRサービスにおいてエラーが発生したことをジョブトラッキングデータに記録する。
図19は、エラーが発生した場合のジョブトラッキングデータの例を示す図である。同図の例では、OCRサービスの実行結果として、失敗(エラー)を示す「NG」が記録されている。なお、同図の例ではOCRサービスの課金度数には何も記録されていないが、0(零)が記録されてもよい。
処理フローの途中においてエラーが発生したことを受けて、課金管理サーバ70のジョブトラッキングデータ永続化部73は、ジョブトラッキングデータをジョブトラッキングデータ記憶部74に記録する(S156e)。
続いて、OCRサーバ50は、ジョブトラッキングIDを含むエラー通知メッセージを翻訳コピーウィジェット21cに返信する(S144e)。翻訳コピーウィジェット21cのロジック部214は、エラー通知メッセージを受信すると、以降の処理を中止し、ジョブトラッキングIDを含むエラー通知メッセージをプロバイダアプリ1221へ転送し、処理フローを中止させる(S145e)。プロバイダアプリ1221のデータ受信部137によってエラーメッセージが受信されると、サービス制御部138は、当該エラーメッセージに含まれているジョブトラッキングIDに対応する処理フローが中止されたことを認識する。
図18の場合、ジョブトラッキングデータは、図19に示される状態で確定することとなる。したがって、この場合、スキャンサービスに関してのみ課金が行われる。スキャンサービスの成果物であるスキャン画像は、翻訳コピーウィジェット21cに提供されており、翻訳コピーウィジェット21cが当該スキャン画像をユーザ端末20に保存しておくことが可能だからである。すなわち、ユーザは、当該スキャン画像を利用することが可能であり、スキャンサービスの便益を享受できたと考えることができるからである。同様に、翻訳サービス又は印刷サービスにおいてエラーが発生した場合、それまでに実行されたサービスに対する課金が行われる。
処理フローの途中でエラーが発生した場合であっても、実行されたサービスまで課金が行われるといった仕組みは、原稿が複数ページの場合も同様である。
続いて、第二の実施の形態について説明する。図20は、第二の実施の形態におけるウィジェット、ウィジェットマネージャ、及びプロバイダアプリの機能構成例を示す図である。図20中、図4と同一部分には同一符号を付し、その説明は省略する。
同図において、プロバイダアプリ1221は、共通鍵提供部139を更に有する。共通鍵提供部139は、各サービスの実行結果として生成されるデータやジョブトラッキングデータ等を暗号化するための暗号鍵(共通鍵)を生成する。共通鍵提供部139は、また、生成された共通鍵をOCRサーバ50、翻訳サーバ60、及び課金管理サーバ70等に安全に転送する。
図21は、第二の実施の形態における課金管理サーバの機能構成例を示す図である。図21中、図6と同一部分には同一符号を付し、その説明は省略する。
同図において、課金管理サーバ70は、共通鍵受信部75を更に有する。共通鍵受信部75は、プロバイダアプリ1221の共通鍵提供部139より転送される共通鍵を受信し、管理する。
以下、第二の実施の形態の情報処理システム1の処理手順について説明する。第二の実施の形態では、第一の実施の形態と異なる点について説明する。したがって、特に明記しない点については第一の実施の形態と同様でよい。
図22は、第二の実施の形態における翻訳コピーウィジェットの処理フローの実行時の処理手順を説明するためのシーケンス図である。すなわち、第二の実施の形態では、図14の代わりに図22に示される処理が実行される。
ステップS201において、プロバイダアプリ1221のジョブトラッキングデータ登録部134は、図14のステップS131と同様にジョブトラッキングデータ(JTD)をRAM112に生成する。続いて、プロバイダアプリ1221の共通鍵提供部139は、ネットワーク上を流通するデータを暗号化するための暗号鍵(以下、「共通鍵A」という。)をRAM112に生成し、ジョブトラッキングIDと関連付けておく(S202)。共通鍵Aの生成ロジックは所定のものに限定されない。例えば、乱数発生器で発生させた乱数を共通鍵Aとしてもよい。
続いて、共通鍵提供部139は、ジョブトラッキングデータに含まれている各サービス提供者のURLと、HDD114に予め記録されている課金管理サーバ70の識別情報とに基づいて、OCRサーバ50、翻訳サーバ60、及び課金管理サーバ70に対して電子証明書の提示を要求する(S203、S209、S215)。ここでいう電子証明書は、いわゆる認証局(CA)によって発行されているデジタル証明書である。OCRサーバ50、翻訳サーバ60、及び課金管理サーバ70より電子証明書が返信されると(S204、S210、S216)、共通鍵提供部139は、返信された電子証明書の信頼性を確認する(S205、S211、S217)。電子証明書の信頼性の確認方法については公知技術に従えばよい。電子証明書の信頼性が確認されると、共通鍵提供部139は、共通鍵Aを各電子証明書に含まれている公開鍵によって暗号化する(S206、S212、218)。続いて、共通鍵提供部139は、暗号化された共通鍵AをジョブトラッキングID(JTID)とを関連付けてOCRサーバ50、翻訳サーバ60、及び課金管理サーバ70に送信する(S207、S213、S219)。図22において、<>で囲まれたデータは暗号化されていることを示す。例えば、ステップS207、S213、及びS219における<共通鍵>という表記は、暗号化された共通鍵Aを示す。
OCRサーバ50、翻訳サーバ60、及び課金管理サーバ70のそれぞれは、暗号化された共通鍵Aをそれぞれの秘密鍵によって復号し、共通鍵Aと共に受信されたジョブトラッキングIDと関連付けて記憶装置に保存しておく(S208、S214、S220)。なお、ステップS215〜S232において、課金管理サーバ70で実行される処理は、共通鍵受信部75によって制御される。共通鍵受信部75は、受信された共通鍵AをジョブトラッキングIDと関連付けてメモリ装置703に記録する。
以上で、共通鍵Aは、画像形成装置10、OCRサーバ50、翻訳サーバ60、及び課金管理サーバ70によって安全に共有されたことになる。
続いて、プロバイダアプリ1221のジョブトラッキングデータ登録部134は、ステップS132(図14)と同様に課金管理サーバ70にジョブトラッキングデータを送信する(S231)。課金管理サーバ70のジョブトラッキングデータ受信部71は、ジョブトラッキングデータの受信に応じ、当該ジョブトラッキングデータをメモリ装置703におけるジョブトラッキングデータの一時管理領域に記録しておく(S232)。
続いて、プロバイダアプリ1221のサービス制御部138は、ステップS134(図14)と同様に、スキャンの実行指示をスキャンアプリ1211に入力する(S233)。スキャンアプリ1211は、ステップS135と同様にスキャナ12にスキャンを実行させ(S234)、スキャン画像及びスキャン結果情報(課金度数、実行結果を含む情報)をサービス制御部138に出力する(S235)。
続いて、プロバイダアプリ1221の課金情報送信部135は、スキャン結果情報を共通鍵Aによって暗号化する(S236)。課金情報送信部135は、カレントウィジェット情報に対応するジョブトラッキングID(JTID)と暗号化されたスキャン結果情報とを課金管理サーバ70に送信する(S237)。課金管理サーバ70の課金情報受信部72は、受信されたジョブトラッキングIDに対応する共通鍵Aを用いてスキャン結果情報を復号する(S238)。続いて、課金情報受信部72は、受信されたジョブトラッキングIDを有するジョブトラッキングデータに復号されたスキャン結果情報の内容を記録する(S239)。
続いて、プロバイダアプリ1221のデータ転送部136は、スキャン画像を共通鍵Aによって暗号化する(S240)。続いて、データ転送部136は、ジョブトラッキングIDと、暗号化されたスキャン画像とを含むスキャン完了通知を翻訳コピーウィジェット21cに送信する(S241)。スキャン完了通知の受信に応じ、翻訳コピーウィジェット21cのロジック部214は、スキャン完了通知に含まれていたジョブトラッキングID及び暗号化されたスキャン画像を含むOCR処理の実行要求をOCRサーバ50に送信する(S241)。
続いて、OCRサーバ50は、受信されたジョブトラッキングIDに基づいて、受信されたデータを復号するための共通鍵Aを特定し、当該共通鍵Aを用いてスキャン画像を復号する(S243)。続いて、OCRサーバ50は、復号されたスキャン画像に対してOCR処理を実行する(S244)。続いて、OCRサーバ50は、共通鍵Aを用いてOCR済データ及びOCR結果情報を暗号化する(S245)。続いて、OCRサーバ50は、ジョブトラッキングIDと暗号化されたOCR結果情報とを課金管理サーバ70に送信する(S246)。課金管理サーバ70の課金情報受信部72は、受信されたジョブトラッキングIDに対応する共通鍵Aを用いてOCR結果情報を復号する(S247)。続いて、課金情報受信部72は、受信されたジョブトラッキングIDを有するジョブトラッキングデータに復号されたOCR結果情報の内容を記録する(S248)。
続いて、OCRサーバ50は、ジョブトラッキングID及び暗号化されたOCR済データを含むOCR完了通知を翻訳コピーウィジェット21cに返信する(S249)。翻訳コピーウィジェット21cのロジック部214は、OCR完了通知を受信すると、OCR済データに対する翻訳処理の実行要求を翻訳サーバ60に送信する(S250)。当該実行要求には、OCR完了通知に含まれていたジョブトラッキングID及び暗号化されたOCR済データが含まれる。
続いて、翻訳サーバ60は、受信されたジョブトラッキングIDに基づいて、受信されたデータを復号するための共通鍵Aを特定し、当該共通鍵Aを用いてOCR済データを復号する(S251)。続いて、翻訳サーバ60は、復号されたOCR済データに対して翻訳処理を実行する(S252)。続いて、翻訳サーバ60は、共通鍵Aを用いて翻訳済データ及び翻訳結果情報を暗号化する(S253)。続いて、翻訳サーバ60は、ジョブトラッキングIDと暗号化された翻訳結果情報とを課金管理サーバ70に送信する(S254)。課金管理サーバ70の課金情報受信部72は、受信されたジョブトラッキングIDに対応する共通鍵Aを用いて翻訳結果情報を復号する(S255)。続いて、課金情報受信部72は、受信されたジョブトラッキングIDを有するジョブトラッキングデータに復号された翻訳結果情報の内容を記録する(S256)。
続いて、翻訳サーバ60は、ジョブトラッキングID及び暗号化された翻訳済データを含む翻訳完了通知を翻訳コピーウィジェット21cに返信する(S257)。翻訳コピーウィジェット21cのロジック部214は、翻訳完了通知に応じ、翻訳済データの印刷処理の実行要求を画像形成装置10のプロバイダアプリ1221に送信する(S258)。当該実行要求には、ジョブトラッキングID及び暗号化された翻訳済データが含まれる。
プロバイダアプリ1221のデータ受信部137は、印刷処理の実行要求を受信すると、当該実行要求に含まれているジョブトラッキングIDに基づいて復号に利用する共通鍵Aを特定し、共通鍵Aを用いて暗号化されている翻訳済データを復号する(S259)。データ受信部137は、復号された翻訳済データを含む印刷処理の実行要求をサービス制御部138に入力する。
続くステップS260〜S262は、図14のステップS151〜S153と同様でよい。ステップS262に続いて、プロバイダアプリ1221の課金情報送信部135は、印刷結果情報を共通鍵Aによって暗号化する(S263)。課金情報送信部135は、カレントウィジェット情報に対応するジョブトラッキングIDと暗号化された印刷結果情報とを課金管理サーバ70に送信する(S264)。課金管理サーバ70の課金情報受信部72は、受信されたジョブトラッキングIDに対応する共通鍵Aを用いて印刷結果情報を復号する(S265)。続いて、課金情報受信部72は、受信されたジョブトラッキングIDを有するジョブトラッキングデータに復号された印刷結果情報の内容を記録する(S266)。続いて、課金管理サーバ70のジョブトラッキングデータ永続化部73は、ステップS156(図14)と同様に、ジョブトラッキングデータをジョブトラッキングデータ記憶部74に記録する(S267)。
続いてプロバイダアプリ1221のデータ転送部136は、印刷処理の完了通知を翻訳コピーウィジェット21cに送信する(S268)。印刷処理の完了通知に応じ、翻訳コピーウィジェット21cのロジック部214は、処理フローの実行を終了させる。
このように、中間データを暗号化させて流通させることにより、不正ウィジェットによる中間データの内容(文書情報)の漏洩等を適切に防止することができる。ここでいう不正ウィジェットとは、例えば、悪意のあるWebサービスの提供者等によって開発され、ネットワーク上でダウンロード可能とされているウィジェット21等を想定するとよい。当該ウィジェット21は、悪意のあるWebサービスへ中間データを流出させるという処理が実装されているものであるとする。しかし、このような不正ウィジェットによって流出されたデータは、暗号化されているため、平文の場合に比べて高い安全性が確保される。
なお、ステップS268において、データ転送部136は、印刷完了通知と共に共通鍵Aを翻訳コピーウィジェット21cに送信してもよい。そうすることにより、翻訳コピーウィジェット21cは、例えば、スキャン画像、OCR済データ、翻訳済データ等の中間データを保持しておいた場合に、共通鍵Aを利用してこれらの中間データを復号することができる。この際、プロバイダアプリ1221は、翻訳コピーウィジェット21cより電子証明書を取得し、当該電子証明書の信頼性が確認できた場合に翻訳コピーウィジェット21cに対して共通鍵Aを転送するようにしてもよい。この場合、当該電子証明書に含まれている公開鍵によって共通鍵Aを暗号化すれば、安全に共通鍵Aを転送することができる。
または、共通鍵Aの転送先は、ウィジェットマネージャ22としてもよい。ウィジェットマネージャ22は、ウィジェット21に比べて信頼性が高いからである。ウィジェットマネージャ22は、受信した共通鍵Aを利用して、翻訳コピーウィジェット21cによって所定のフォルダ等に記録されている中間データを復号すればよい。
なお、図22のように中間データ等が暗号化されるシーケンスにおいて処理フローの途中でエラーが発生した場合の処理手順は、図18より自明であるためその説明は省略する。但し、プロバイダアプリ1221は、エラーの発生に応じてステップS145e(図18)に相当するエラー通知が受信された場合、翻訳コピーウィジェット21cへの共通鍵Aの転送は実行しない。中間データが暗号化されるシーケンスにおいてエラーが発生した場合は、不正な処理が実行された可能性が高いと考えられるからである。例えば、処理フローの途中で、翻訳コピーウィジェット21c自身又は翻訳コピーウィジェット21cが不正に利用するWebサービスによって中間データの改ざんが行われ、その後の正当なサービスにおいて中間データの復号に失敗した可能性が考えられるからである。また、不正ウィジェット自身が不正処理を実行しようとし結果、中間データが暗号化されているために不正処理に失敗し、エラーが発生した可能性等も考えられるからである。更に、不正ウィジェット自身が故意にエラーを発生させ、課金逃れを試みようとしたことも考えられるからである。すなわち、暗号化されるシーケンスにおいて処理フローの途中でエラーが発生した場合、当該処理フローの全ての課金度数は無効化される。斯かる事情を見越してエラーを発生させることにより課金逃れを試みることが考えられるからである。
暗号化されるシーケンスにおいて処理フローの途中でエラーが発生した場合、当該処理フローの全ての課金度数が無効化されるのは、共通鍵Aがウィジェット21に転送されないことに基づく。すなわち、共通鍵Aがウィジェット21に転送されない場合、ユーザは、中間データを利用することはできない。中間データを復号することができないからである。そうすると、ユーザは、エラーが発生するまでのサービスの便益を享受したとはいえず、このような場合に課金を行うのは不当である。
そこで、課金管理サーバ70の課金情報受信部72は、ステップS142e(図18)のようにエラーが発生したことを示す結果情報を受信した場合、エラーが発生したサービスの実行結果として「NG」をジョブトラッキングデータに記録すると共に、当該ジョブトラッキングデータに既に記録されている他のサービスの課金度数を全て無効化する。例えば、既に記録されている課金度数の値を「0」にしたり、削除したり(クリアしたり)して、課金が行われないようにする。
図23は、課金度数が無効化されたジョブトラッキングデータの例を示す図である。同図のジョブトラッキングデータは、スキャンの成功後、OCR処理においてエラーが発生じた場合において、既に「1」が記録されていたスキャンサービスの課金度数が「0」に更新された例が示されている。
課金情報受信部72によって課金度数が無効化された後、エラーの発生に応じてジョブトラッキングデータ永続化部73によってジョブトラッキングデータはジョブトラッキングデータ記憶部74に記録される。したがって、図23の状態で課金度数は確定される。
なお、課金情報受信部72による課金度数の無効化は、課金情報受信部72が能動的に行うのではなく、エラー通知メッセージを受信したプロバイダアプリ1221からの指示に応じて行われてもよい。すなわち、ステップS145e(図18)に相当するエラー通知メッセージに続いて、プロバイダアプリ1221の課金情報送信部135は、ジョブトラッキングIDを指定して課金度数の無効化要求を課金管理サーバ70に送信する。課金管理サーバ70の課金情報受信部72部は、当該無効化要求に応じ、受信されたジョブトラッキングデータの課金度数の無効化を実行する。
ところで、利用する暗号方式によっては、暗号化及び復号処理は比較的負荷の高い処理になる場合もある。したがって、原稿が複数ページの場合、全ページについて暗号化を行うと性能の劣化が顕著となる可能性がある。また、ウィジェット21と各サービスの実行主体との間のネットワーク通信のセキュリティの確保という観点においては、そもそもネットワークインフラとしてSSL(Secure Socket Layer)やIPSec等の技術が採用されている可能性が高い。この場合、アプリケーションレベルにおいて改めて共通鍵を用いた暗号化を行うのは冗長であるとも考えられる。
そこで、原稿が複数ページの場合(処理対象とされるデータが複数の場合)は、一部のページ(一部のデータ)について暗号化を行うようにしてもよい。ページ数が少ない場合(所定枚数未満の場合)は、最初のページのみ暗号化を行ってもよいし、ページ数が多い場合(所定枚数以上の場合)は、間欠的に暗号化を行うようにしてもよい。
一部のページについてのみ暗号化を行う場合、暗号化を行う処理フロー(以下、「認証フロー」という。)の途中でエラーが発生した場合の課金範囲は、上記した通りである。すなわち、当該処理フローに対応するジョブトラッキングデータに記録されている全ての課金度数は無効化される。なお、暗号化を行う処理フローを「認証フロー」と呼ぶのは、暗号化によって、処理フローに含まれる各処理の正当性の確認が可能となる(すなわち、処理フローの認証が可能となる)といった効果も期待できるからである。したがって、認証フローを間欠的に行うことにより、処理フローの認証を間欠的に行うことができ、不正防止の効果を高めることができる。
一方、暗号化を行わない処理フロー(以下、「平文フロー」という。)の途中でエラーが発生した場合の課金範囲は、第一の実施の形態と同様である。すなわち、実行に成功したサービスについては課金が行われる。成功したサービスについて課金を行う理由は第一の実施の形態において説明した通りであるが、更に、認証フローが正常に動作しているにもかかわらず、平文フローでエラーが発生するということは、エラーの発生は、ユーザ側の問題に起因するとも考えられるからである。ユーザ側の問題とは、ウィジェット21において平文フローに故意にエラーを発生させる処理が入っている場合や、ネットワークの通信状態が悪化した場合等が一例として挙げられる。
したがって、認証フローと平文フローとが切り替わるタイミングで、ジョブトラッキングデータ登録部134は、ジョブトラッキングデータを新規に生成し、新規なジョブトラッキングデータを課金管理サーバ70に登録するようにするとよい。認証フローにおいて課金度数を無効化する場合に、無効化する範囲を容易に識別可能となるからである。すなわち、同一のジョブトラッキングIDと共に受信された課金度数は、同一のジョブトラッキングデータに記録される。したがって、課金情報受信手段72は、認証フローにおいて、処理の失敗を示す情報と共に受信された場合は、当該情報と共に受信されたジョブトラッキングIDに係るジョブトラッキングデータ内の課金度数を全て無効化すればよい。
なお、認証フローと平文フローとの間における、エラー発生時の上記のような課金範囲の相違に鑑みれば、認証フローにおいて処理対象とするページ数の単位は、1ページ又は少数ページ(所定枚数未満)であることが望ましい。認証フローにおいて途中でエラーが発生した場合、課金度数は全て無効化さてしまうため、万が一課金逃れが発生した場合に少数ページであれば被害又は損害を最小限に抑えることができるからである。
一方、平文フローにおいて処理対象とされるページ数の単位は、多数ページ(所定枚数以上)が望ましい。平文フローでは途中でエラーが発生した場合、成功したサービスについては課金が行われるため、課金逃れの可能性は低いと考えられるからである。また、処理効率の観点からも1回の処理フローで処理対象とされるページ数が多い方が効率的であるからである。
したがって、例えば、図24に示されるように認証フローと平文フローとを組み合わせてもよい。図24は、認証フローと平文フローとの組み合わせの一例を示す図である。
同図の例では、認証フローは、図17のケース1を1ページ分実行し、平文フローはケース2を3ページ分行う例が示されている。この場合、1及び5ページ目については認証フローが実行され、2〜4及び6〜8ページ目については平文フローが実行される。
なお、ケース2の代わりにケース3のシーケンスで平文フローを実行してもよい。また、ケース1を1ページ分又は複数ページ分繰り返すことによって平文フローを実行してもよい。同様に、認証フローにケース2又はケース3を採用してもよい。但し、この場合、上記したように処理対象とするページ数は少ない方が望ましい。
認証フローとするページ(処理フロー又はデータ)の選択は、プロバイダアプリ1221のデータ転送部136が行えばよい。認証フローは、定期的に実行されてもよいし、ランダムに実行されてもよい。ランダムな方が、不正ウィジェットに処理規則を看破されにくいという利点はある。
ランダムに認証フローが実行される場合、共通鍵提供部139が、暗号化対象とするページを示す情報(暗号化ページ情報)を共通鍵とともにOCRサーバ50や翻訳サーバ60に送信するようしてもよい。但し、暗号化ページ情報は必ずしも事前に通知されなくてもよい。例えば、OCRサーバ50や翻訳サーバ60が、受信された中間データ又はジョブトラッキングの一部分を解読して暗号化されているか否かを判断し、暗号化されていれば共通鍵を利用して受信データを復号するようにしてもよい。
また、認証フローの完了時に共通鍵をウィジェット21に転送する場合、共通鍵提供部139は、次の認証フロー時において共通鍵を更新(生成)し、更新された共通鍵をOCRサーバ50及び翻訳サーバ60に転送する。そうすることにより、認証フローごとに異なる共通鍵によって中間データの暗号化が行われるようにする。すなわち、データ転送部135は、認証フローごとに異なる共通鍵によってスキャン画像を暗号化する。OCRサーバ50は、認証フローごとに異なる共通鍵によってOCR済データを暗号化する。翻訳サーバ60は、認証フローごとに異なる共通鍵によって翻訳済データを暗号化する。その結果、図24の例では、1ページ目について提供された共通鍵を用いて、翻訳コピーウィジェット21cによって5ページ目の中間データ等に対して不正処理が実行されるのを防止することができる。
また、各サービスの課金度数及び実行結果を含む結果情報(スキャン結果情報、OCR結果情報、及び翻訳結果情報等)は、ウィジェット21は経由しない。したがって、結果情報については、必ずしも共通鍵によって暗号化されなくてもよい。
また、本実施の形態におけるOCRサーバ50や翻訳サーバ60等によるサービスのようにインターネット上で提供されているWebサービスは、課金体系として月額固定制やジョブ単位制等を採用している場合がある。このようなWebサービスに関しては、画像形成装置10とは異なり、1ページごと(1データごと)に課金度数は記録されなくてもよい。
ところで、本実施の形態では、画像形成装置10において最初にサービスが実行される(スキャンが実行される)ウィジェット21(翻訳コピーウィジェット21c)を用いて説明を行った。但し、ウィジェット21が実行可能な処理フローの自由度は高く、処理フローの起点は画像形成装置10に限定されない。例えば、ユーザ端末20に保存されている画像データをOCR処理し、翻訳処理し、印刷するといったウィジェット21(以下、「翻訳印刷ウィジェット」という。)が作成されてもよい。斯かる翻訳印刷ウィジェットについても、本実施の形態の内容は翻訳コピーウィジェット21cと同様に適用されうる。すなわち、翻訳印刷ウィジェットについても、図7及び図10において説明した処理が実行される。翻訳印刷ウィジェットが実行対象として選択された場合、図14において、ステップS134〜S136を除いた処理が実行される。したがって、ステップS139では、スキャン画像は転送されず、ジョブトラッキングデータがスキャン翻訳ウィジェットに転送される。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1、2 情報処理システム
10 画像形成装置
11 コントローラ
12 スキャナ
13 プリンタ
14 モデム
15 操作パネル
16 ネットワークインタフェース
17 SDカードスロット
20 ユーザ端末
21a スキャンウィジェット
21b 印刷ウィジェット
21c 翻訳コピーウィジェット
22 ウィジェットマネージャ
23 OS
50 OCRサーバ
60 翻訳サーバ
70 課金管理サーバ
71 ジョブトラッキングデータ受信部
72 課金情報受信部
73 ジョブトラッキングデータ永続化部
74 ジョブトラッキングデータ記憶部
75 共通鍵受信部
80 SDカード
111 CPU
112 RAM
113 ROM
114 HDD
121 標準アプリ
122 SDKアプリ
123 SDKプラットフォーム
124 コントロールサービス
125 OS
131 ユーザ検知部
132 UI制御部
133 ウィジェット情報取得部
134 ジョブトラッキングデータ登録部
135 課金情報送信部
136 データ転送部
137 データ受信部
138 サービス制御部
139 共通鍵提供部
141 ユーザ管理テーブル
211 ウィジェットUI部
212 ウィジェット情報送信部
213 連携部
214 ロジック部
215 属性情報管理ファイル
223 ウィジェット情報登録部
224 広告部
225 ウィジェット情報提供部
226 中継部
227 ウィジェット情報管理テーブル
700 ドライブ装置
701 記録媒体
702 補助記憶装置
703 メモリ装置
704 CPU
705 インタフェース装置
B バス
特開2008−10993号公報

Claims (10)

  1. 画像形成装置と課金管理装置とを有する課金管理システムであって、
    前記画像形成装置は、
    ネットワークを介して接続される情報処理装置が要求する処理フローにおいて利用される処理の一覧を示す処理情報を受信する処理情報受信手段と、
    前記処理フローに対する識別情報を生成し、前記識別情報を前記課金管理装置に登録する登録手段と、
    前記処理の一覧の中で、前記画像形成装置に対して要求されている処理を実行する処理実行手段と、
    前記処理実行手段によって実行された処理に関する課金情報を、前記識別情報に関連付けて前記課金管理装置に送信する課金情報送信手段と、
    前記処理の一覧に含まれる処理の実行が要求されているサービス提供装置に対して前記処理実行手段による処理の結果として出力されるデータを前記識別情報と関連付けて転送させるデータ転送手段とを有し、
    前記課金管理装置は、
    前記画像形成装置より前記識別情報の登録を受け付ける識別情報受信手段と、
    前記画像形成装置及び前記サービス提供装置より、それぞれが実行した処理に関する課金情報と前記識別情報とを受信する課金情報受信手段と、
    前記処理ごとの課金情報を前記識別情報に基づいて関連付けて課金情報記憶手段に記録する課金情報永続化手段とを有する課金管理システム。
  2. 前記画像形成装置は、
    所定の暗号鍵を生成し、該所定の暗号鍵を前記識別情報に関連付けて前記サービス提供装置に送信する暗号鍵提供手段とを有し、
    前記データ転送手段は、前記処理フローが繰り返される場合は、一部の処理フローに関して、前記処理実行手段による処理の結果として出力されるデータを前記所定の暗号鍵によって暗号化して転送させる請求項1記載の課金管理システム。
  3. 前記データ転送手段は、前記処理フローが繰り返される場合は、前記一部の処理フローを間欠的に選択する請求項2記載の課金管理システム。
  4. 前記課金情報受信手段は、前記データが暗号化される前記処理フローにおいて処理に失敗したことを示す情報を前記識別情報と共に前記画像形成装置又は前記サービス提供装置より受信した場合は、当該識別情報に関して受信された前記課金情報を無効化する請求項2又は3記載の課金管理システム。
  5. 前記課金情報受信手段は、前記データが暗号化されない前記処理フローにおいて処理に失敗したことを示す情報を前記識別情報と共に前記画像形成装置又は前記サービス提供装置より受信した場合は、当該識別情報に関して受信された前期課金情報は無効化しない請求項4記載の課金管理システム。
  6. 請求項1乃至5いずれか一項記載の画像形成装置。
  7. 請求項1乃至5いずれか一項記載の課金管理装置。
  8. 画像形成装置と課金管理装置とが実行する課金情報記録方法であって、
    前記画像形成装置は、
    ネットワークを介して接続される情報処理装置が要求する処理フローにおいて利用される処理の一覧を示す処理情報を受信する処理情報受信手順と、
    前記処理フローに対する識別情報を生成し、前記識別情報を前記課金管理装置に送信する登録手順と、
    前記処理の一覧の中で、当該画像形成装置に対して要求されている処理を実行する処理実行手順と、
    前記処理実行手順によって実行された処理に関する課金情報を、前記識別情報に関連付けて前記課金管理装置に送信する課金情報送信手順と、
    前記処理の一覧に含まれる処理の実行が要求されているサービス提供装置に対して前記処理実行手順による処理の結果として出力されるデータを前記識別情報と関連付けて転送させるデータ転送手順とを実行し、
    前記課金管理装置は、
    前記画像形成装置より前記課金情報記録データを受信する課金情報記録データ受信手順と、
    前記画像形成装置及び前記サービス提供装置より、それぞれが実行した処理に関する課金情報と前記識別情報とを受信する課金情報受信手順と、
    前記処理ごとの課金情報を前記識別情報に基づいて関連付けて課金情報記憶手段に記録する課金情報永続化手順とを実行する課金情報記録方法。
  9. 画像形成装置が実行する課金情報記録方法であって、
    ネットワークを介して接続される情報処理装置が要求する処理フローにおいて利用される処理の一覧を示す処理情報を受信する処理情報受信手順と、
    前記処理フローに対する識別情報を生成し、前記処理の一覧に含まれる各処理の課金情報を一元的に管理する課金管理装置に前記識別情報を登録する登録手順と、
    前記処理の一覧の中で、当該画像形成装置に対して要求されている処理を実行する処理実行手順と、
    前記処理実行手順によって実行された処理に関する課金情報を、前記識別情報に関連付けて前記課金管理装置に送信する課金情報送信手順と、
    前記処理の一覧に含まれる処理の実行が要求されているサービス提供装置に対して前記処理実行手順による処理の結果として出力されるデータを前記識別情報と関連付けて転送させるデータ転送手順とを有する課金情報記録方法。
  10. 画像形成装置に、
    ネットワークを介して接続される情報処理装置が要求する処理フローにおいて利用される処理の一覧を示す処理情報を受信する処理情報受信手順と、
    前記処理フローに対する識別情報を生成し、前記処理の一覧に含まれる各処理の課金情報を一元的に管理する課金管理装置に前記識別情報を登録する登録手順と、
    前記処理の一覧の中で、当該画像形成装置に対して要求されている処理を実行する処理実行手順と、
    前記処理実行手順によって実行された処理に関する課金情報を、前記識別情報に関連付けて前記課金管理装置に送信する課金情報送信手順と、
    前記処理の一覧に含まれる処理の実行が要求されているサービス提供装置に対して前記処理実行手順による処理の結果として出力されるデータを前記識別情報と関連付けて転送させるデータ転送手順とを実行させるためのプログラム。
JP2009174609A 2009-07-27 2009-07-27 課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラム Expired - Fee Related JP5333008B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2009174609A JP5333008B2 (ja) 2009-07-27 2009-07-27 課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラム
US12/795,163 US8275679B2 (en) 2009-07-27 2010-06-07 Billing management system, image forming apparatus, billing management apparatus, billing information recording method, and storage medium
EP20100251137 EP2284790A1 (en) 2009-07-27 2010-06-24 Billing management system, image forming apparatus, billing management apparatus, billing information recording method, and storage medium
CN2010102365736A CN101969519A (zh) 2009-07-27 2010-07-23 计费管理***、图像形成装置、计费管理装置、计费信息记录方法及存储介质
US13/589,745 US9141978B2 (en) 2009-07-27 2012-08-20 Billing management system, image forming apparatus, billing management apparatus, billing information recording method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009174609A JP5333008B2 (ja) 2009-07-27 2009-07-27 課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2011028575A JP2011028575A (ja) 2011-02-10
JP5333008B2 true JP5333008B2 (ja) 2013-11-06

Family

ID=42983353

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009174609A Expired - Fee Related JP5333008B2 (ja) 2009-07-27 2009-07-27 課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラム

Country Status (4)

Country Link
US (2) US8275679B2 (ja)
EP (1) EP2284790A1 (ja)
JP (1) JP5333008B2 (ja)
CN (1) CN101969519A (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7596606B2 (en) * 1999-03-11 2009-09-29 Codignotto John D Message publishing system for publishing messages from identified, authorized senders
JP5370258B2 (ja) * 2009-08-28 2013-12-18 ブラザー工業株式会社 印刷装置および印刷システム
US8984409B2 (en) 2010-03-12 2015-03-17 Salesforce.Com, Inc. Service cloud console
KR20110129132A (ko) * 2010-05-25 2011-12-01 삼성전자주식회사 관리 장치 및 관리장치의 과금방법
KR20120017263A (ko) * 2010-08-18 2012-02-28 삼성전자주식회사 단말기에서 실행되는 위젯 어플리케이션의 콘텐츠를 인쇄하는 화상형성시스템
JP5640556B2 (ja) * 2010-08-23 2014-12-17 富士ゼロックス株式会社 画像形成装置及び画像形成プログラム
JP2012252452A (ja) 2011-06-01 2012-12-20 Ricoh Co Ltd 情報処理装置、情報処理システム、及びプログラム
US9215096B2 (en) * 2011-08-26 2015-12-15 Salesforce.Com, Inc. Computer implemented methods and apparatus for providing communication between network domains in a service cloud
JP6307862B2 (ja) * 2013-02-06 2018-04-11 株式会社リコー 情報処理システム、情報処理方法およびプログラム
JP6089808B2 (ja) * 2013-03-11 2017-03-08 ブラザー工業株式会社 情報処理装置及びネットワークシステム
US11100571B1 (en) 2014-06-10 2021-08-24 Wells Fargo Bank, N.A. Systems and methods for payee identification via camera
CN104044368B (zh) * 2014-07-02 2017-02-15 上海合合信息科技发展有限公司 打印机及其收费装置、运行方法,及其控制装置和方法
JP6248963B2 (ja) * 2015-02-17 2017-12-20 京セラドキュメントソリューションズ株式会社 画像処理装置
JP6547350B2 (ja) * 2015-03-18 2019-07-24 株式会社リコー 課金処理システム、課金処理方法及びプログラム
JP6296185B2 (ja) * 2017-02-08 2018-03-20 ブラザー工業株式会社 情報処理装置及びネットワークシステム
US20180249019A1 (en) * 2017-02-28 2018-08-30 Xerox Corporation Determining whether all processes of a print/copy/scan job have completed

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5321470A (en) * 1988-05-13 1994-06-14 Canon Kabushiki Kaisha Apparatus with anti-forgery provision
US20010021979A1 (en) * 2000-02-16 2001-09-13 Yoshinori Ito Image processing apparatus, image processing method, image processing system and storage medium
FI109949B (fi) * 2000-04-07 2002-10-31 Domiras Oy Menetelmä palveluiden laskuttamiseksi, palvelin ja tietoliikennejärjestelmä
JP2002169735A (ja) * 2000-09-19 2002-06-14 Matsushita Electric Ind Co Ltd 事務機器ネットワーク端末及び、事務機器ネットワーク情報管理システム
US7031661B2 (en) * 2001-06-29 2006-04-18 Hewlett-Packard Development, L.P. Portable wireless device and print device print by reference protocol
US20030133147A1 (en) * 2002-01-16 2003-07-17 Xerox Corporation Billing process for printing systems
US20030191718A1 (en) * 2002-04-08 2003-10-09 Blair Timothy P. Method and data processing system providing a pay-for-usage managed print service
US20030191655A1 (en) * 2002-04-08 2003-10-09 Janz Susan M. Method and data processing system for a pay-for-usage print service
JP4719410B2 (ja) 2002-09-20 2011-07-06 株式会社リコー 画像形成装置
JP2004145765A (ja) * 2002-10-25 2004-05-20 Kyocera Corp 課金システムの課金処理方法
US7586636B2 (en) * 2002-12-11 2009-09-08 Broadcom Corp. Printer resource sharing in a media exchange network
US7110135B2 (en) * 2002-12-11 2006-09-19 Broadcom Corporation Printer resource sharing in a media exchange network
US20050203805A1 (en) * 2004-03-11 2005-09-15 Clough James E. System and method for monitoring and controlling printing services for a printer
US20050278230A1 (en) * 2004-06-09 2005-12-15 Fuji Photo Film Co., Ltd. Server and service method
JP4156564B2 (ja) * 2004-06-15 2008-09-24 富士フイルム株式会社 情報処理装置、情報処理システム、情報処理方法およびプログラム
US20060159063A1 (en) * 2005-01-19 2006-07-20 Gopesh Kumar A System and Method for Businesses to advertise to receive and measure incoming Prospect Leads through a unique, empowered Independent Agent framework
EP1688835A1 (en) * 2005-02-03 2006-08-09 Sap Ag Method for controlling a software maintenance process in a software system landscape and computer system
JP2006312270A (ja) * 2005-05-09 2006-11-16 Seiko Epson Corp 課金式印刷装置および課金式印刷方法
US7953386B2 (en) * 2005-09-19 2011-05-31 Silverbrook Research Pty Ltd Bill per card print
US7558599B2 (en) * 2005-09-19 2009-07-07 Silverbrook Research Pty Ltd Printing a bill using a mobile device
JP4956965B2 (ja) * 2005-11-07 2012-06-20 セイコーエプソン株式会社 インク課金方法及びインク課金処理システム
JP2008010993A (ja) 2006-06-27 2008-01-17 Kyocera Mita Corp 電子機器、アプリケーション実行システム及びプログラム
JP4809804B2 (ja) * 2006-07-13 2011-11-09 株式会社リコー 画像処理装置、デバイス制御プログラム、及び、電力制御方法
JP2008026956A (ja) * 2006-07-18 2008-02-07 Nec Corp データ通信課金システム,データ通信課金方法及びデータ通信課金用プログラム
JP4737723B2 (ja) * 2006-08-31 2011-08-03 富士ゼロックス株式会社 連携処理装置
WO2008039870A2 (en) * 2006-09-26 2008-04-03 Accoona Corp Apparatuses, methods and systems for an information comparator preview generator
US20080091800A1 (en) 2006-10-13 2008-04-17 Xerox Corporation Local user interface support of remote services
US20080174804A1 (en) * 2007-01-19 2008-07-24 Raymond Hsu Method and System for Transmitting Print Information Between A Client and A Server Over A Wide Area Network
US20080225320A1 (en) * 2007-03-12 2008-09-18 Sharp Laboratories Of America, Inc. Systems and methods for unified imaging job accounting
US8838760B2 (en) 2007-09-14 2014-09-16 Ricoh Co., Ltd. Workflow-enabled provider
US20090138965A1 (en) 2007-11-26 2009-05-28 Sharp Laboratories Of America, Inc. Systems and methods for providing access control and accounting information for web services
JP4811808B2 (ja) * 2007-12-13 2011-11-09 株式会社リコー 情報処理装置、情報処理方法、プログラムおよび記録媒体
JP4636150B2 (ja) * 2008-09-18 2011-02-23 コニカミノルタビジネステクノロジーズ株式会社 課金管理システム、画像処理装置、課金制御方法および記憶媒体
JP5310357B2 (ja) 2009-07-27 2013-10-09 株式会社リコー 画像形成装置、課金情報記録方法、及びプログラム

Also Published As

Publication number Publication date
EP2284790A1 (en) 2011-02-16
CN101969519A (zh) 2011-02-09
JP2011028575A (ja) 2011-02-10
US9141978B2 (en) 2015-09-22
US20120317007A1 (en) 2012-12-13
US20110022505A1 (en) 2011-01-27
US8275679B2 (en) 2012-09-25

Similar Documents

Publication Publication Date Title
JP5333008B2 (ja) 課金管理システム、画像形成装置、課金管理装置、課金情報記録方法、及びプログラム
JP5310357B2 (ja) 画像形成装置、課金情報記録方法、及びプログラム
JP4136325B2 (ja) 画像形成システム、ソフトウエア取得方法、画像形成装置およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US7742186B2 (en) Image forming apparatus, image processing system, method for expanding function of image forming apparatus and method for forming virtual network
US20110228311A1 (en) Image Forming System and Image Forming Method for Collectively Supporting Output Data Formats and Authentication Methods
US20110107106A1 (en) File-Distribution Apparatus and Recording Medium Having File-Distribution Authorization Program Recorded Therein
JP2004213469A (ja) 画像形成装置
JP2004287822A (ja) 情報処理方法、情報処理システム、情報処理装置、コンピュータプログラム、及び記録媒体
JP2004341627A (ja) 画像形成装置及び当該装置におけるプログラム起動方法、画像形成システム及びそのプログラムと記憶媒体
JP2013033348A (ja) 情報処理装置及びプログラム
JP4064101B2 (ja) 画像形成装置、暗号化データ処理方法及び暗号化データ処理システム
JP6188833B2 (ja) 画像形成システムおよび画像形成装置
JP5644194B2 (ja) 情報保護装置及び情報保護プログラム
US7574498B2 (en) Device identification information managing system and method for communicably connecting between a network device and a device managing terminal unit that manages the network device
JP2017068835A (ja) 機器管理システム、機器管理方法、情報処理装置、画像形成装置及び情報処理プログラム
JP4175156B2 (ja) ジョブ処理装置、ジョブ処理方法およびプログラム
JP2012018570A (ja) 画像形成装置、認証システム、認証方法、認証プログラム及び記憶媒体
JP2008171041A (ja) 画像形成装置、画像形成装置の起動方法、制御装置及び拡張ユニットの起動方法
JP2006352483A (ja) 画像送信システム、画像送信装置、及び画像処理装置
CN111625494A (zh) 文件管理装置、存储介质、文件管理***及文件管理方法
JP4695617B2 (ja) 暗号化データ処理方法
JP6737360B2 (ja) 情報処理システム、携帯端末装置及びプログラム
CN110784308B (zh) 信息处理方法、信息处理***和通信装置
JP2009218866A (ja) 画像処理装置、文書処理方法及び文書処理プログラム
JP2005011322A (ja) 情報処理装置および認証機能制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130620

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130715

R151 Written notification of patent or utility model registration

Ref document number: 5333008

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees