JP2008258673A - 情報処理装置および情報処理プログラム - Google Patents

情報処理装置および情報処理プログラム Download PDF

Info

Publication number
JP2008258673A
JP2008258673A JP2007095460A JP2007095460A JP2008258673A JP 2008258673 A JP2008258673 A JP 2008258673A JP 2007095460 A JP2007095460 A JP 2007095460A JP 2007095460 A JP2007095460 A JP 2007095460A JP 2008258673 A JP2008258673 A JP 2008258673A
Authority
JP
Japan
Prior art keywords
event
information
notification
notification destination
terminal
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.)
Granted
Application number
JP2007095460A
Other languages
English (en)
Other versions
JP4962099B2 (ja
Inventor
Yasuhiro Kudo
康博 工藤
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 JP2007095460A priority Critical patent/JP4962099B2/ja
Priority to EP08250716.1A priority patent/EP1976258B1/en
Priority to US12/076,574 priority patent/US8381232B2/en
Priority to CN2008100907244A priority patent/CN101277354B/zh
Publication of JP2008258673A publication Critical patent/JP2008258673A/ja
Application granted granted Critical
Publication of JP4962099B2 publication Critical patent/JP4962099B2/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • 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
    • 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/00323Connection 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 measuring, monitoring or signaling apparatus, e.g. for transmitting measured information to a central location
    • 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/00344Connection 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 management, maintenance, service or repair apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3212Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a job, e.g. communication, capture or filing of an image
    • H04N2201/3219Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a job, e.g. communication, capture or filing of an image of a job status, e.g. successful execution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3278Transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】自装置で発生するイベント(状態変化)を監視し、発生したイベントに応じたイベント情報をクライアントへ通知する情報処理装置において、発生したイベントのイベント情報を、発生したイベントの順番にクライアントに通知することができる情報処理装置および情報処理プログラムを提供すること。
【解決手段】MFP1の装置内でイベントが発生すると、MFP1は、イベントの発生した順序で通知先情報を作成する。そして、MFP1は、作成した通知先情報をイベントの発生した順序に連結して通知イベントリストメモリ13bに記憶する。通知先情報には、装置内で発生したイベントのイベント情報と、イベント情報を通知する通知先であるPC31の端末情報とが含まれており、MFP1は、通知先情報に含まれる端末情報のPCに対して、その通知先情報に含まれるイベント情報を通知する。
【選択図】図8

Description

本発明は、自装置で発生するイベント(状態変化)を監視し、発生したイベントに応じたイベント情報をクライアントへ通知する情報処理装置および情報処理プログラムに関するものである。
従来より、自装置で発生するイベント(状態変化)を監視し、発生したイベントに応じたイベント情報を複数のクライアントへ通知する情報処理装置が知られている。特許文献1に記載されている情報処理装置は、自装置でイベントが発生した場合に、各クライアントが必要とするイベントのイベント情報を、各クライアントにそれぞれ通知するものである。このため、当該情報処理装置(自装置)では、予め、各々のイベントと、各クライアントとを関連づけて記憶し、自装置においてイベントが発生した場合は、発生したイベントに関連づけられた各クライアントに対して、その発生したイベントに応じたイベント情報を通知するように構成されている。
特開2006−87058号公報(0084段落など)
しかしながら、上述した情報処理装置(特許文献1)では、複数のイベントが立て続けに発生した場合、各クライアントに対して、イベント情報をイベントの発生順に通知できない場合がある。即ち、自装置(情報処理装置)においてイベントが発生した場合は、クライアントとの通信状況とは関係なく、発生したイベントと関連づけられたクライアントに対して、イベント情報の通知が行われる。したがって、クライアントとの通信状況により、発生したイベントがクライアントに通知される順序が、イベントが発生した順序と同じであるとは限らない。
本発明は、上述した問題点を解決するためになされたものであり、自装置で発生するイベントを監視し、発生したイベントに応じたイベント情報をクライアントへ通知する情報処理装置において、発生したイベントのイベント情報を、発生したイベントの順番にクライアントに通知することができる情報処理装置および情報処理プログラムを提供することを目的とする。
この目的を達成するために、請求項1記載の情報処理装置は、自装置の状態変化により発生する複数のイベントを監視し、発生したイベントに応じたイベント情報をクライアントに通知するものであり、前記イベント情報をイベントが発生した順序でクライアントに通知するための順序情報を記憶する順序情報記憶手段と、前記イベント情報を通知するクライアントを記憶する通知先記憶手段と、その通知先記憶手段に記憶されたクライアントに対し、イベント情報を通知する通知手段と、前記通知手段により、一のイベント情報の通知が成功したかを判断する判断手段と、前記通知手段により、その一のイベント情報の通知が成功したと判断したことを条件として、前記順序情報記憶手段に記憶された順序情報にしたがい、その一のイベント情報に対応するイベントの次に発生したイベントに応じたイベント情報を通知する変更手段とを備えている。
請求項2記載の情報処理装置は、請求項1記載の情報処理装置において、クライアントからイベント情報の通知要求を受信する要求受信手段と、その要求受信手段により通知要求を受信したクライアントを記憶する記憶手段と、イベントの発生を検出するイベント検出手段と、そのイベント検出手段によりイベントの発生が検出された場合に、その検出されたイベントに応じたイベント情報を生成するイベント情報生成手段と、を備え、前記通知先記憶手段は、前記イベント検出手段によりイベントが検出された際に、前記記憶手段に記憶されているクライアントを、その検出されたイベントに応じたイベント情報の通知対象として記憶する。
請求項3記載の情報処理装置は、請求項1または2記載の情報処理装置において、前記通知手段は、複数のクライアントに対して、それぞれイベント情報を通知可能であって、前記通知先記憶手段に記憶されたクライアントの数を、イベント情報毎に記憶する通知先数記憶手段と、前記通知手段により一のクライアントへのイベント情報の通知が成功すると、そのイベント情報に関するクライアントの数を、前記通知先数記憶手段から、通知が完了したクライアントの数だけ減算する第1減算手段とを備える。
請求項4記載の情報処理装置は、請求項3記載の情報処理装置において、前記通知先数記憶手段に記憶されたクライアントの数が0のイベント情報を前記通知先記憶手段から削除するイベント情報削除手段とを備えている。
請求項5記載の情報処理装置は、請求項1乃至4のいずれかに記載の情報処理装置において、前記判断手段により、前記イベント情報の通知が失敗したと判断した場合に、そのイベント情報における前記通知先記憶手段から、通知が失敗したと判断されたクライアントを削除する通知先削除手段と、その通知先削除手段により削除されるクライアントに通知するイベント情報について、前記通知先数記憶手段に記憶された前記クライアントの数から1を減算する第2減算手段と、前記順序情報記憶手段に記憶される順序情報により示される通知の順序において、前記通知が失敗したと判断したイベント情報より後に通知するイベント情報について、前記通知先数記憶手段に記憶された前記各イベント情報のクライアントの数からそれぞれ1を減算する第3減算手段とを備える。
請求項6記載の情報処理装置プログラムは、自装置の状態変化により発生する複数のイベントを監視し、発生したイベントに応じたイベント情報をクライアントに通知するコンピュータを、前記イベント情報をイベントが発生した順序でクライアントに通知するための順序情報を記憶する順序情報記憶手段、前記イベント情報を通知するクライアントを記憶する通知先記憶手段、その通知先記憶手段に記憶されたクライアントに対し、イベント情報を通知する通知手段、前記通知手段により、一のイベント情報の通知が成功したかを判断する判断手段、前記通知手段により、その一のイベント情報の通知が成功したと判断したことを条件として、前記順序情報記憶手段に記憶された順序情報にしたがい、その一のイベント情報に対応するイベントの次に発生したイベントに応じたイベント情報を通知する変更手段として機能させる。
請求項1記載の情報処理装置によれば、通知手段により一のイベント情報の通知が完了したと判断したことを条件として、そのイベント情報に対応するイベントの次に発生したイベントに応じたイベント情報が通知される。したがって、クライアントに対して、イベントの発生した順序でイベント情報を通知することができるという効果がある。
請求項2記載の情報処理装置によれば、請求項1記載の情報処理装置の奏する効果に加え、要求受信手段によりクライアントからイベント情報の通知要求が受信された際に、その通知要求の受信より後に発生したイベントからイベント情報を通知する通知対象としてそのクライアントを登録する。それにより、通知要求を受信したクライアントに対し、通知要求を受信した後に発生したイベントのイベント情報を通知することができる。よって、イベント情報の通知を行うクライアントとそのイベントの通知順序の管理が容易となるという効果がある。
請求項3記載の情報処理装置によれば、請求項1または2記載の情報処理装置の奏する効果に加え、複数のクライアントに対して、イベント情報を通知可能な場合に、そのクライアントの数をイベント情報ごとに記憶する。そして、通知が成功したクライアントの数を減算する。よって、イベント情報を通知する複数のクライアントの中に、例えば、通知状況が悪いなどにより通知が行えないクライアントがいた場合であっても、通知が成功したクライアントに対しては次のイベント情報の通知が行える。さらに、クライアントの数を記憶することにより、すべてのクライアントについて通知が成功したかを管理できるので、他のクライアントの通信状況に影響されることなく、イベント情報の通知を、発生したイベントの順序にて行うことができる。
請求項4記載の情報処理装置によれば、請求項3記載の情報処理装置の奏する効果に加え、通知先数記憶手段に記憶されたクライアントの数が0のイベント情報、すなわち、すべてのクライアントへの通知が成功したイベント情報を、通知先記憶手段から削除する。したがって、メモリ領域を有効に利用することができるという効果がある。
請求項5記載の情報処理装置によれば、請求項1乃至4のいずれかに記載の情報処理装置の奏する効果に加え、通知が失敗したイベント情報に関して、そのイベント情報およびそのイベント情報に関するイベントより後に発生したイベントに応じたイベント情報を通知するためのクライアントの数をそれぞれ1ずつ減算する。したがって、そのイベント情報を通知しなければならないクライアントの数を正確に管理することができる。
さらに、請求項6のプログラムをコンピュータに機能させることで、請求項1に記載する情報処理として実現可能となる。
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図1は、本発明の実施形態における多機能周辺装置(以下、「MFP(Multi Function Peripheral)」と称す)1とパーソナルコンピュータ(以下、「PC」と称す)31との外観構成を示した斜視図である。このMFP1は、プリンタ機能、スキャナ機能、及び、コピー機能などの各種機能を有している。
図1は、MFP1と複数のPC31(端末A,B)とが、LAN200を介して接続されている状態を示している。MFP1と各PC31(端末A,B)とは、それぞれが有するLANインターフェイス19,36(図2参照)を介してお互いにデータ通信が可能に構成され、ユーザは、何れのPC31からでもMFP1の各種機能を使用することができる。例えば、ユーザは、あるPC31からMFP1へ印刷データを送信して、その印刷データをプリンタ21により記録用紙に印刷したり、原稿をスキャナ20に読み取らせて画像データを作成し、MFP1からPC31へ送信することができる。
このMFP1では、装置内で発生する様々な状態変化(例えば、各種エラー、印刷の完了など)がイベントとして検出される。具体的には、MFP1の装置内には各種センサ(図2参照、20a,21a,21b)が設けられており、各種センサ(20a,21a,21b)からは所定の状態を示す信号(例えば、インクが無い場合はハイ信号、それ以外はロウ信号)が出力されている。そして、CPU11(図2参照)により、所定間隔(例えば、数ミリ秒)で各種センサ(20a,21a,21b)の出力状態が監視されており、センサから出力される信号が変化した場合に、イベントが発生したと検出される。
原稿カバー体8の前方には、横長形状の操作パネル6が設けられており、操作キー15、LCD16、スピーカ17(図示しない)とを具備する。利用者は、操作キー15の各種キーを押下することで、主電源のオン/オフや、各機能の切り替えなどの操作を行うことができる。
LCD16には、操作メニューや操作手順などの説明、実行中の処理の状態、装置の状態などが表示される。MFP1においてイベント(図5(b)参照)が発生した場合は、発生したイベントの内容がPC31に対して通知されると共に、LCD16にもその内容が表示される。
次に、図2を参照して、MFP1の電気的構成について説明する。図2は、MFP1とPC31との電気的構成を示すブロック図である。MFP1は、CPU11、ROM12、RAM13、操作キー15、LCD16、スピーカ17、計時回路18、LANインターフェイス19、スキャナ20、プリンタ21が設けられ、CPU11、ROM12、RAM13は、バスライン26を介してお互いに接続されている。
また、MFP1の操作キー15、LCD16、スピーカ17、計時回路18、スキャナ20、プリンタ21、バスライン26は、入出力ポート27を介してお互いに接続されている。計時回路18は、現在の日時を刻む内部時計を有している。
MFP1のCPU11は、ROM12やRAM13に記憶される固定値やプログラム或いは、MFP1が有している各機能の制御や、LANインターフェイス19を介して送受信される各種信号に従って、入出力ポート27と接続された各部を制御するものである。ROM12は、MFP1で実行される制御プログラムなどを格納した書換不能なメモリであり、図7〜13のフローチャートに示す情報処理プログラム(特許請求の範囲に記載の情報処理プログラムの一例)は、このROM12に格納されている。
RAM13は、書き替え可能な揮発性のメモリであり、MFP1の各操作の実行時に各種のデータを一時的に記憶するためのメモリである。RAM13には、装置内でイベントが発生した場合に、発生したイベントのイベント名や、現在どのような状態が生じているかなどの内容を含むイベント情報を、何れのPC31へ通知するかを示す端末情報を記憶する通知端末リストメモリ13aが設けられている。さらに、装置内で同じイベント種類のイベントが複数発生した場合に、各PC31(端末A、B)毎に、イベントの発生した順序に従ってそれぞれのイベント情報を通知するための通知先情報を記憶する通知イベントリストメモリ13bとが設けられている。
通知端末リストメモリ13aは、PC31から通知されるサブスクライブ要求(図4(b)参照)(特許請求の範囲に記載の通知要求の一例)から抽出した情報(ID情報、URL情報、有効期限情報(実時間として抽出される))を端末情報として、そのサブスクライブ要求に含まれるイベント種類毎(図5(a)参照)に分類して記憶するためのメモリである。通知端末リストメモリ13aには、ステータスイベント通知端末リスト13a1と、エレメントイベント通知端末リスト13a2と、ジョブイベント通知端末リスト13a3と、が設けられている。
通知イベントリストメモリ13bは、装置内で同じイベント種類のイベントが複数発生した場合に、それぞれのイベント情報を、イベントの発生した順序に従って各PC(端末A,B)に通知するための通知先情報(図6(d)参照)を記憶するためのメモリである。通知イベントリストメモリ13bには、ステータスイベント通知イベントリスト13b1と、エレメントイベント通知イベントリスト13b2と、ジョブイベント通知イベントリスト13b3と、が設けられている。通知イベントリストメモリ13bにおいて、通知先情報は、発生したイベントのイベント種類(図5参照)ごとに分類され、且つ、イベントの発生した順序に連結されて記憶される。追加先情報の連結は、リスト構造による。
リスト構造とは、それぞれのデータ(ここでは、通知先情報)に、次に連なるデータの格納場所(アドレス)を記憶させておき、それぞれのデータを(重複しないように)一つ一つ連結させることによって、データに順序を生じさせる既知のデータ構造である。これ以後、リスト構造のデータにおいて、「あるデータ」が、「別のデータ」の格納場所(アドレス)を有する場合に、各データの連結関係を簡単に説明するために、「あるデータに、別のデータが連なる(続く)」、または、「別のデータは、あるデータから連なっている(続いている)」と表現する。
図6(a)〜(c)に示すように、各通知イベントリスト13b1〜13b3には、それぞれ「イベントリストスタート」と「イベントリストエンド」とが設けられている。「イベントリストスタート」は、リスト構造により連結される通知先情報のうち、先頭に位置する通知先情報の格納場所(アドレス)を記憶するためのポインタであり、一方、「イベントリストエンド」は、リスト構造により連結された通知先情報が終了したことを示すデータである。ポインタとは、あるデータの格納場所(アドレス)を格納するための既知のデータ型である。
図6(a)〜(c)に示すように、ステータスイベント通知イベントリスト13b1において、通知先情報が1つも記憶されていない場合は、「イベントリストスタート」に「イベントリストエンド」が連なる。他の通知イベントリスト13b2、13b3も同様である。
そして、MFP1においてイベントが発生すると、発生したイベントのイベント種類に対応する通知イベントリスト13b1〜13b3の「イベントリストエンド」の直前に、必ず、発生したイベントの通知先情報が挿入される。すると、挿入された通知先情報には、「イベントエンド」が連なり、これまで後続に「イベントエンド」が連なっていた通知先情報には、挿入された通知先情報の格納場所(アドレス)が記憶されるので、イベントの発生した順序に通知先情報を連結させて記憶することができる(図8のS16の処理)。
もし、発生したイベントのイベント種類に対応する通知イベントリスト13b1〜13b3に、通知先情報が1つも記憶されていない場合は、挿入された通知先情報には、「イベントエンド」が連なることとなり、これまで、後続に「イベントエンド」が連なっていた「イベントスタート」に、挿入された通知先情報の格納場所(アドレス)が記憶される。
通知先情報は、装置内で同じイベント種類のイベントが複数発生した場合に、それぞれのイベントのイベント情報を、各PC31(端末A、B)毎に、イベントの発生した順序に従って通知するためデータであり、イベントが発生する毎にMFP1によって作成されるデータである。
ここで、図6(d)を参照して、通知先情報について説明する。図6(d)は、通知先情報の内容の一例を示すイメージ図である。図6(d)に示すように、通知先情報には、発生したイベント(図5(b)参照)のイベント名と、イベントが発生した時に、その発生したイベントのイベント種類(図5(a)参照)に対応した通知端末リスト13a1〜13a3に記憶されている端末情報の数を示すカウント値と、発生したイベントに対応したイベント情報と、イベントが発生した時に、その発生したイベントのイベント種類に対応した通知端末リスト13a1〜13a3に記憶されている端末情報とにより構成されている。
イベント名は、通知先情報が作成される要因となったイベントのイベント名である(図5(b)参照)。カウント値は、通知先情報に含まれるイベント情報を通知する通知先の数を示しており、通知先情報が作成される要因のイベントが発生した時に、その発生したイベントのイベント種類に対応した通知端末リスト13a1〜13a3に記憶されている端末情報の数である。イベント情報は、通知先情報が作成される要因となったイベントに対応したイベント情報である。
次に、通知先情報に含まれる端末情報について説明する。MFP1において、新たに発生したイベントの通知先情報が作成される場合に、その発生したイベントと同じイベント種類の通知先情報が他に存在しない場合は、新たに作成される通知先情報に、発生したイベントのイベント種類に対応した通知端末リスト13a1〜13a3に記憶されている全ての端末情報が含まれるが(図8のS15の処理)、一方、既に発生したイベントと同じイベント種類の通知先情報が存在する場合は、その既に存在する通知先情報に含まれる端末情報を除いた端末情報のみが、新たに作成される通知先情報に含まれる(図8のS14の処理)。
つまり、同じイベント種類の通知先情報において、あるPC31の端末情報は、いずれか一つの通知先情報にしか含まれないので、あるPC31に対して、同じイベント種類のイベント情報が同時に通知されることがない。そして、通知先情報は、イベント情報の通知先に全て通知ができた場合(カウント値=0の場合)に、通知イベントリストメモリ13bから削除される(図2参照)ので、RAM13を利用する他の処理が、RAM13を有効に利用することができる。
次に、PC31の電気的構成について説明する。PC31は、CPU32、ROM33、RAM34、ハードディスク35、LANインターフェイス36、入力装置37、表示装置38が設けられ、これらはバスライン40を介してお互いに接続されている。
CPU32は、ROM33やRAM34やハードディスク35に記憶される固定値やプログラム或いは、PC31が有している各機能の制御や、LANインターフェイス36を介して送受信される各種信号に従って、バスライン40により接続された各部を制御する。
ROM33は、このPC31で実行される各種の制御プログラムを記憶する書換不能なメモリである。RAM34は各種のデータを一時的に記憶するための書換可能なメモリである。ハードディスク35は書換可能な不揮発性のメモリであり、ハードディスク35に記憶されたデータは、PC31の電源オフ後も保持される。このハードディスク35には、各種アプリケーションソフト、アプリケーションソフトにより作成される各種データ、そのアプリケーションソフトなどにより作成されたサブスクライブ要求(図4(b)参照)などが記憶されている。
LANインターフェイス36は、LANケーブル100の一端側を、LANインターフェイス36の接続口に接続し、他端側をLAN200と接続することにより、LAN200に接続されている各種装置とのデータ通信を可能とする既知の回路である。
入力装置37は、PC31を管理したり、ハードディスク35に格納された各種アプリケーションソフトを利用する場合に使用するものであり、例えば、キーボードやマウスなどの入力装置で構成される。表示装置37は、PC31を管理したり、各種アプリケーションソフトを利用する場合に使用するものであり、例えば、液晶ディスプレイ等の表示装置で構成される。
ここで、図3を参照して、MFP1とPC31との間で送受信される要求およびイベント情報について説明する。図3は、MFP1とPC31との間で送受信されるデータの流れを概略的に示したイメージ図である。
図3(a)は、PC31がMFP1に対して、サブスクライブ要求を通知している状態を示している。サブスクライブ要求は、MFP1でイベントが発生した際に、そのイベントに関するイベント情報をMFP1からサブスクライブ要求したPC31に通知してもらうために、PC31からMFP1に送信するデータである。図3(a)に示すように、PC31は、予めMFP1にサブスクライブ要求(図4(b)参照)を通知することで、MFP1からイベント情報を通知してもらうことができる。
ここで、図4(b)を参照して、サブスクライブ要求の内容の一例について説明する。サブスクライブ要求は、PC31がMFP1にイベント情報の通知を要求するために、MFP1へ通知するものであり、例えば、PC31によりXML文書で作成されるデータである。このデータは、MFP1およびPC31がサブスクライブ要求を識別するためのID情報と、MFP1からPC31に対して通知されるイベント情報の通知先を示すURL情報と、PC31がMFP1に対して通知を要求するイベント情報の種類を示すイベント種類と、PC31がMFP1にイベント情報の通知を要求する期間を示す有効期限情報とにより構成されている。
サブスクライブ要求の1行目の<ID>から</ID>タグでくくられている文字列「uuid:f81d4fae−7dec−11d0−a765−00a0c91e6bf6」が、サブスクライブ要求のID情報を示している。このID情報には、PC31によりサブスクライブ要求が作成される毎に、UUID(Universally Unique IDentifier)と呼ばれる世界中で重複することのない無作為な文字列が用いられるので、MFP1内やPC31内において重複することがない。また、MFP1では、このID情報により各PC31(図1参照)から通知されるサブスクラブ要求やアンサブスクライブ要求(図4(c)参照)、および、端末情報(図4(d)参照)を識別している。
2行目の<Address>から</Address>タグでくくられている文字列「http://hostname:port/path」が、URL情報であり、MFP1からPC31に対して通知されるイベント情報の通知先が示されている。URL(Uniform Resource Locator)とは、インターネットなどのネットワーク上に存在する装置やデータ、サービスなどを特定するための表記方法である。
URL情報に含まれる「hostname」は、サブスクライブ要求を作成したPC31のホスト名(または、IPアドレス)(特許請求の範囲に記載の第1識別情報の一例)を示しており、「port」は、ポート番号(特許請求の範囲に記載の第2識別情報の一例)を示している。ホスト名(または、IPアドレス)は、ネットワーク上において、PC31を特定するための識別情報であり、ポート番号は、サブスクライブ要求を作成したPC31の何れのアプリケーションにイベント情報を通知するかを、PC31が識別するための識別番号である。また、「path」は、サブスクライブ要求を作成したPC31のハードディスク35(図2参照)内に設けられたフォルダ名やファイル名などの名称を示しており、アプリケーションやユーザなどにより個別に設定される文字列である。
3行目の<EventType>から</EventType>タグでくくられている文字列「ステータスイベント」が、サブスクライブ要求を作成したPC31がMFP1に対して通知を要求するイベント情報の種類を示している。
イベント情報の種類(イベント種類)には、図5(a)に示すように、「ステータスイベント」、「エレメントイベント」、「ジョブイベント」とがあり、1つのサブスクライブ要求において、この3種類のうち何れか一つのイベント種類が、アプリケーションやユーザなどにより選択される。
サブスクライブ要求の4行目の<Expires>から</Expires>タグでくくられている文字列「PT1H」が、サブスクライブ要求の有効期限情報を示している。この「PT」とは、「Period of Time」の略であり、「PT1H」とは、「1時間の期間」という意味である。MFP1は、サブスクライブ要求を受理してからその有効期限内に限りPC31にイベント情報を通知する。
MFP1は、PC31からサブスクライブ要求を受理すると、そのサブスクライブ要求のデータに含まれるイベント種類と、他の情報(ID情報、URL情報、有効期限情報)を特定する。このとき、有効期限情報については、計時回路18(図2参照)から現在時刻を読み取り、サブスクライブ要求から特定した有効期限情報から実時間を算出する。例えば、「2007年3月2日9:00」に、図4(b)のサブスクライブ要求(有効期限:PT1H)を受理した場合は、図4(d)に示すように、実時間として「2007年3月2日10:00」と算出される。
サブスクライブ要求から特定されたID情報、URL情報、有効期限情報は、PC31の端末情報(図4(d)参照)として通知端末リストメモリ13aのサブスクライブ要求から特定したイベント種類にに応じた通知端末リスト(13a1から13a3のいずれか)に記憶される。
即ち、MFP1は、受理したサブスクライブ要求のイベント種類が「ステータスイベント」である場合には、サブスクライブ要求から特定されたID情報、URL情報、有効期限情報をPC31の端末情報としてステータスイベント通知端末リスト13a1に記憶する。同様に、イベント種類が「エレメントイベント」の場合は、エレメントイベント通知端末リスト13a2に、「ジョブイベント」の場合は、ジョブイベント通知端末リスト13a3に記憶する(図4(a)参照)。
なお、図4(a)では、端末AからMFP1に対して、イベント種類が「ステータスイベント」であるサブスクライブ要求と、イベント種類が「エレメントイベント」であるサブスクライブ要求が通知され、端末B(図1参照)からMFP1に対して、イベント種類が「ステータスイベント」であるサブスクライブ要求が通知された場合を例に挙げている。すなわち、MFP1のステータスイベント通知端末リスト13a1には、端末Aの端末情報Xと、端末Bの端末情報Yとが記憶され、エレメントイベント通知端末リスト13a2には端末Aの端末情報Zが記憶されている。
端末Aのように複数の端末情報X,Zが通知端末リストメモリ13aに記憶される場合でも、それぞれのサブスクライブ要求に含まれるID情報は、世界中で重複することのない無作為な文字列であるので、それぞれの端末情報X,Zは、異なる端末情報として識別される。
なお、MFP1は、通知端末リストメモリ13aに端末情報を記憶すると、サブスクライブ要求を受理したことをPC31に対して通知する。
次に、図3(c)を参照して、PC31からMFP1に対して通知されるアンサブスクライブ要求について説明する。PC31は、MFP1からのイベント情報の通知が不要となった場合に、MFP1に対してアンサブスクライブ要求を通知する。
なお、アンサブスクライブ要求は、図4(c)に示すように、ID情報のみで構成されている。このID情報には、イベント情報の通知を要求した時のサブスクライブ要求に用いた、UUIDが用いられる。つまり、PC31は、イベント情報の通知を停止したい場合に、そのイベント情報の通知を要求したサブスクライブ要求のID情報を、アンサブスクライブ要求として通知する。このID情報は、MFP1やPC31において重複することがないので、MFP1は、通知端末リストメモリ13aに記憶される端末情報の何れを削除すれば良いかが識別できる。このアンサブスクライブ要求で削除される端末情報は、ID情報が一致する端末情報一つのみである。
MFP1は、PC31からアンサブスクライブ要求を受信すると、アンサブスクライブ要求に含まれるID情報と同じID情報を有した端末情報(図4(d)参照)を、通知端末リストメモリ13a(図2参照)から削除する。そして、アンサブスクライブ要求を受理したことをPC31に対して通知する。
次に、図3(b)を参照して、MFP1からPC31に対して通知されるイベント情報について説明する。図3(b)に示すように、MFP1においてイベントが発生すると、MFP1は、通知端末リストメモリ13aに記憶された端末情報のPC31に対してイベント情報を通知する。
MFP1では、各PC31の端末情報がイベント種類毎に、それぞれの通知端末リスト13a1〜13a3(図4(a)参照)に記憶されているので、MFP1は、装置内でイベントが発生した場合に、発生したイベントのイベント種類に応じた各通知端末リスト13a1〜13a3に記憶される端末情報のPC31に対して、そのイベント情報を通知する。
このとき、MFP1は、PC31に対して、イベント情報を通知するために、まず、通知先情報を作成する。作成された通知先情報は、イベント種類毎に分類されて、通知イベントリストメモリ13bに記憶される(図2参照)。イベント情報の通知は、この通知イベントリストメモリ13bに記憶された通知先情報に基づき、各PC31に対して行われる。そして、PC31は、MFP1からイベント情報を受信すると、イベント情報を受理したことをMFP1に対して通知する。
なお、MFP1は、装置内のイベントの発生を検出すると、検出したイベントのイベント名や、現在どのような状態が生じているかなどの内容を含むイベント情報を作成し、PC31に対して通知する。即ち、MFP1は、MFP1のプリンタ21においてインク無くなったり、記録用紙が無くなったために印刷が行えなかったり、スキャナ20の原稿カバー体8が開かれており原稿が正常に読み取れないなどの不具合(エラー)が発生した場合に、そのエラー内容をPC31に対して通知する。よって、ユーザは、MFP1まで移動してMFP1のLCD16(図1参照)に表示される装置の状態を確認しなくても、その内容を知ることができる。また、MFP1は、装置内で発生した全てのイベントのイベント情報をPC31に対して通知するのではなく、PC31によって予め要求された種類のイベント情報のみを通知するものである(図5(a)参照)。
例えば、PC31がMFP1に対して、サブスクライブ要求のイベント種類として「ステータスイベント」を通知した場合は、MFP1おいてエラー(例えば、図5(b)に示すようなインク切れイベント、記録用紙切れイベントなど、各検出センサ20a、21a、21bが検出するエラー)が発生したと検出された場合、または、そのエラーが解決されたと検出された場合に、そのエラーまたはエラー解除の内容を示すイベント情報が、MFP1からPC31に対して通知される。
また、PC31がサブスクライブ要求のイベント種類として「エレメントイベント」を通知した場合は、MFP1において設定情報(例えば、IPアドレス、プリンタ名など)に変更があったと検出された場合に、その変更された設定情報の内容を示すイベント情報が、MFP1からPC31に対して通知される。
また、PC31がサブスクライブ要求のイベント種類として「ジョブイベント」を通知した場合は、MFP1において実行中のジョブ(作業)の状態に変化があったと検出された場合に(例えば、印刷開始、印刷終了など)、そのジョブ(作業)の状態の変化の内容を示すイベント情報が、MFP1からPC31に対して通知される。
次に、図7〜14を参照して、MFP1のCPU11により実行される各種処理について説明する。
MFP1は、装置内で同じイベント種類のイベントが複数発生した場合に、各PC(端末A,B)毎に、イベントの発生した順序に従ってそれぞれのイベントのイベント情報を通知するものである。例えば、MFP1において、カバーオープンイベント(図5(b)参照)が立て続けに発生したとする。先に発生したカバーオープンイベントを「カバーオープンイベントA」とし、その後に発生したカバーオープンイベントを「カバーオープンイベントB」と称する。MFP1は、端末Aに対しても、端末Bに対しても、「カバーオープンイベントA」を先に通知し、その後「カバーオープンイベントB」を通知する。
図7は、MFP1のメイン処理を示すフローチャートであり、MFP1の主電源が投入されてから主電源が遮断されるまで繰り返し実行される処理である。このメイン処理では、まず、通知端末リストメモリ13aと通知イベントリストメモリ13bとに記憶される全てのデータを初期化する(S1)。
次に、MFP1においてイベントが発生したかを判定し(S2)、イベントが発生した場合は(S2:Yes)、イベントリスト追加処理を実行する(S3)。一方、イベントが発生していない場合は(S2:No)、S3の処理をスキップし、S4の処理に移行する。
ここで、図8を参照して、イベントリスト追加処理(S3)について説明する。図8は、イベントリスト追加処理(S3)を示すフローチャートである。イベントリスト追加処理(S3)は、装置内でイベントが発生した場合に、発生したイベントのイベント情報を含む通知先情報を作成し、その通知先情報を発生したイベントのイベント種類に対応する通知イベントリスト13b1〜13b3(図2参照)に記憶するための処理である。
イベントリスト追加処理(S3)では、発生したイベントに対応する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に、端末情報が記憶されているかを判定する(S11)。S11の処理において、発生したイベントに対応する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に、端末情報が記憶されている場合は(S11:Yes)、発生したイベントに対応する通知イベントリストメモリ13bの中の通知イベントリスト13b1〜13b3に、通知先情報が存在するかを判定する(S12)。一方、発生したイベントに対応する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に、端末情報が記憶されていない場合は(S11:No)、S12〜17の処理をスキップし、このイベントリスト追加処理(S3)を終了する。
S12の処理において、発生したイベントに対応する通知イベントリストメモリ13bの中の通知イベントリスト13b1〜13b3に、通知先情報が存在する場合は(S12:Yes)、その通知イベントリストの各通知先情報に含まれる端末情報を検索する(S13)。
そして、発生したイベント名と、発生したイベントに対応するイベント情報と、発生したイベントに対する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に記憶されている端末情報の全数を示すカウント値とを含み、そして、発生したイベントに対応する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に記憶されている端末情報から、S13の処理で検索して見つかった各通知先情報に含まれる端末情報を除いた端末情報とを有する通知先情報を作成する(S14)。
一方、S12の処理において、発生したイベントに対応する通知イベントリストメモリ13bの中の通知イベントリスト13b1〜13b3に、通知先情報が存在しない場合は(S12:No)、発生したイベント名と、発生したイベントに対応するイベント情報と、発生したイベントに対する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に記憶されている端末情報の全数を示すカウント値と、発生したイベントに対応する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に記憶されている全端末情報とを有する通知先情報を作成する(S15)。
そして、発生したイベントに対応する通知イベントリストメモリ13bの中の通知イベントリスト13b1〜13b3のイベントリストエンドの直前に、作成した通知先情報を
挿入する(S16)。次に、挿入した通知先情報に含まれる各端末情報に対応する各PC31に対して個別に、その通知先情報に含まれるイベント情報をそれぞれ通知し(S17)、このイベントリスト追加処理(S3)を終了する。
この図7のフローチャートのイベントリスト追加処理(S3)により、MFP1は、発生したイベントの通知先情報を作成でき、その通知先情報をイベントの発生した順序に、発生したイベントのイベント種類に対応する通知イベントリスト13b1〜13b3に記憶することができる。
イベントリスト追加処理(S3)の終了後は、図7のS4の処理へ戻る。S4の処理では、PC31からの接続要求があるかを判定し(S4)、PC31からの接続要求がある場合は(S4:Yes)、受信データ処理を実行する(S5)。一方、PC31からの接続要求がない場合は(S4:No)、S5の処理をスキップして、S6の処理に移行する。
ここで、図9を参照して、受信データ処理(S5)について説明する。図9は、受信データ処理(S5)を示すフローチャートである。受信データ処理(S5)は、PC31から通知されるサブスクライブ要求やアンサブスクライブ要求や、その他のデータなどを受信するとともに、その受信したデータに対応した各種処理を行うための処理である。
この受信データ処理(S5)では、PC31との接続を行い、PC31から送信されるデータを受信する(S21)。PC31から受信したデータは、サブスクライブ要求であるかを判定し(S22)、受信したデータがサブスクライブ要求である場合は(S22:Yes)、受信したサブスクライブ要求に含まれるイベント種類に対応する通知端末リストメモリ13aの中の通知端末リスト13a1〜13a6に、そのサブスクライブ要求から情報(ID情報、URL情報、有効期限情報(実時間として抽出される))を抽出して、それを端末情報として記憶する(S23)。そして、PC31に対して、端末情報を通知端末リストメモリ13aに記憶したことを通知する(S24)。このS22〜24の処理は、図3(a)に対応する。一方、S22の処理において、受信したデータがサブスクライブ要求でない場合は(S22:No)、S23〜24の処理をスキップし、S25の処理に移行する。
次に、PC31から受信したデータは、アンサブスクライブ要求であるかを判定し(S25)、受信したデータがアンサブスクライブ要求である場合は(S25:Yes)、受信したアンサブスクライブ要求に含まれるID情報(図4(c)参照)と同じID情報を有した端末情報を、通知端末リストメモリ13a全体から検索して削除する(S26)。アンサブスクライブ要求のID情報が一致する端末情報は、通知端末リストメモリ13aの中に一つしか記憶されていない。そして、イベントリスト端末情報削除処理を実行する(S27)。
ここで、図10を参照して、イベントリスト端末情報削除処理(S27)について説明する。図10は、イベントリスト端末情報削除処理(S27)を示すフローチャートである。イベントリスト端末情報削除処理(S27)は、アンサブスクライブ要求により、通知端末リストメモリ13aから削除される端末情報を、通知イベントリストメモリ13bからも削除するための処理である。
このイベントリスト端末情報削除処理(S27)では、受信したアンサブスクライブ要求に含まれるID情報と同じID情報を有した端末情報を含む通知先情報を、通知イベントリストメモリ13b全体から検索する(S31)。そして、検索して見つかった通知先情報をが存在する通知イベントリストメモリ13bの中の通知イベントリスト13b1〜13b3を読み取り(S32)、読み取った通知イベントリスト13b1〜13b3から、受信したアンサブスクライブ要求に含まれるID情報と同じID情報を有した端末情報を含む通知先情報を読み取る(S33)。
次に、S33の処理で読み取った通知先情報のカウント値を1減算し、受信したアンサブスクライブ要求に含まれるID情報と同じID情報を有した端末情報を、その通知先情報から削除する(S34)。
S33の処理で読み取った通知先情報に連なる別の通知先情報が存在するかを判定し(S35)、S33の処理で読み取った通知先情報に連なる別の通知先情報が存在する場合は(S35:Yes)、S33の処理で読み取った通知先情報に連なる別の通知先情報から、イベントエンドまで連なる各通知先情報のカウント値をそれぞれ1減算する(S36)。一方、S33の処理で読み取った通知先情報に連なる別の通知先情報が存在しない場合は(S35:No)、S36の処理をスキップし、S37の処理に移行する。
次に、S32の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在するかを判定し(S37)、S32の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在する場合は(S37:Yes)、読み取った通知イベントリスト13b1〜13b3の中から、カウント値が0である通知先情報を全て削除する(S38)。一方、S32の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在しない場合は(S37:No)、S38の処理をスキップし、このイベントリスト端末情報削除処理(S27)を終了する。
この図10のフローチャートのイベントリスト端末情報削除処理(S27)により、アンサブスクライブ要求を受信した場合に、通知端末リストメモリ13aから削除される端末情報を、通知イベントリストメモリ13bからも削除することができる。また、端末情報が削除された通知先情報から、イベントリストエンドまで連なる各通知先情報のカウント値を1減算して、カウント値が0である通知先情報を通知イベントリストメモリ13bから削除することできる。
イベントリスト端末情報削除処理(S7)の終了後は、図9のS28の処理へ戻る。S28の処理では、PC31に対して、端末情報を通知端末リストメモリ13aから削除したことを通知する(S28)。このS25〜28の処理は、図3(c)に対応する。一方、S25の処理において、受信したデータがアンサブスクライブ要求でない場合は(S25:No)、S26〜28の処理をスキップし、S29の処理に移行する。
PC31から受信したデータが、その他のデータである場合は、その他のデータ処理を実行し(S29)、PC31との接続を切断し(S30)、この受信データ処理(S5)を終了する。その他のデータ処理とは、例えば、印刷データを受信して、プリンタ21により記録用紙に印刷する処理である。
この図9のフローチャートの受信データ処理(S5)により、MFP1は、PC31から通知されるサブスクライブ要求とアンサブスクライブ要求とを受信することができる。そして、サブスクライブ要求を受信した場合は、そのサブスクライブ要求から情報を抽出して、それを端末情報として通知端末リストメモリ13aに記憶することができる。また、アンサブスクライブ要求を受信した場合は、そのアンサブスクライブ要求に含まれるID情報と一致する端末情報を、通知端末リストメモリ13aと通知イベントリストメモリ13bとから削除することができる。そして、通知イベントリストメモリ13bから端末情報が削除される場合は、端末情報が削除される通知先情報から、イベントリストエンドまで連なる各通知先情報のカウント値がそれぞれ1減算され、カウント値が0となった通知先情報は、通知イベントリストメモリ13bから削除される。
受信データ処理(S5)の終了後は、図7のS6の処理へ戻る。S6の処理では、通知イベントリストメモリ13bの中に、通知先情報が含まれているかを判定し(S6)、通知イベントリストメモリ13bの中に、通知先情報が含まれている場合は(S6:Yes)、イベントリスト更新処理を実行し(S7)、次に、接続失敗端末情報削除処理(S8)を実行する。一方、通知イベントリストメモリ13bの中に、通知先情報が含まれていない場合は(S6:No)、S7〜8の処理をスキップし、S9の処理に移行する。
ここで、図11を参照して、イベントリスト更新処理(S7)について説明する。図11は、イベントリスト更新処理処理(S7)を示すフローチャートである。イベントリスト更新処理(S7)は、通知イベントリストメモリ13bに通知先情報が記憶されている場合に、イベント情報の通知が完了した端末情報を、次に連なる通知先情報に移動させたり、全ての端末情報のPC31に対して通知が完了した通知先情報を、通知イベントリストメモリ13bから削除するための処理である。
このイベントリスト更新処理(S7)では、通知イベントリストメモリ13b全体から、通知先情報が存在する通知イベントリスト13b1〜13b3を検索する(S41)。
そして、検索して見つかった通知イベントリスト13b1〜13b3を1つ読み取り(S42)、S42の処理で読み取った通知イベントリスト13b1〜13b3の、イベントスタートに連なる通知先情報を読み取る(S43)。
そして、S43の処理で読み取った通知先情報において、イベント情報の通知が終了しているPC31が存在するかを判定し(S44)、イベント情報の通知が終了しているPC31が存在する場合は(S44:Yes)、S43の処理で読み取った通知先情報に連なる次の通知先情報が存在するかを判定する(S45)。S44の処理において、イベント情報の通知が終了しているPC31が存在しない場合は(S44:No)、S45〜50の処理をスキップし、S51の処理に移行する。
S45の処理において、S43の処理で読み取った通知先情報に連なる次の通知先情報が存在する場合は(S45:Yes)、S43の処理で読み取った通知先情報のカウント値から通知が終了しているPC31の数を減算し、通知が終了しているPC31の端末情報を、次に連なる通知先情報に移動し(S46)、その移動させた各端末情報に対応する各PC31に対して個別に、その端末情報を移動させた通知先情報に含まれるイベント情報をそれぞれ通知する(S47)。
一方、S45の処理において、S43の処理で読み取った通知先情報に連なる次の通知先情報が存在しない場合は(S45:No)、S43の処理で読み取った通知先情報のカウント値から通知が終了しているPC31の数を減算し、通知が終了しているPC31の端末情報を削除する(S48)。
そして、S43の処理で読み取った通知先情報のカウント値が0であるかを判定し(S49)、S43の処理で読み取った通知先情報のカウント値が0である場合は(S49:Yes)、通知イベントリスト13b1〜13b3から、その通知先情報を削除する(S50)。カウント値が0である通知先情報は、通知が終了した不要なデータであるため、それをRAM13から削除することにより、RAM13を使用する他の処理が、RAM13を有効に利用することができる。
一方、S43の処理で読み取った通知先情報のカウント値が0でない場合は(S49:No)、S50の処理をスキップし、S51の処理に移行する。
次に、S43の処理で読み取った通知先情報に連なる次の通知先情報が存在するかを判定し(S51)、S43の処理で読み取った通知先情報に連なる次の通知先情報が存在する場合は(S51:Yes)、S43の処理で読み取った通知先情報に連なる次の通知先情報を読み取り(S52)、S44の処理に戻り、上述したS44〜52の各処理を繰り返す。
一方、S51の処理において、S43の処理で読み取った通知先情報に連なる次の通知先情報が存在しない場合は(S51:No)、通知イベントリストメモリ13b全体から、通知先情報が存在する通知イベントリスト13b1〜13b3を全て読み取ったかを判定し(S53)、通知イベントリストメモリ13b全体から、通知先情報が存在する通知イベントリスト13b1〜13b3を全て読み取った場合は(S53:Yes)、このイベントリスト更新処理(S7)を終了する。
一方、通知イベントリストメモリ13b全体から、通知先情報が存在する通知イベントリスト13b1〜13b3を全て読み取っていない場合は(S53:No)、S42の処理に戻り、上述したS42〜53の各処理を繰り返す。
この図11のフローチャートのイベントリスト更新処理(S7)により、MFP1は、通知イベントリストメモリ13bに通知先情報が記憶されている場合に、イベント情報の通知が完了した端末情報を、次に連なる通知先情報に移動させ、次の通知先情報に含まれるイベント情報を移動させた端末情報のPC31に通知することができる。よって、装置内で同じイベント種類のイベントが複数発生した場合でも、それぞれのイベント情報を、各PC31(端末A,B)毎に、イベントの発生順序に従って通知することができる。また、通知先情報に含まれる全ての端末情報のPC31に対して、イベント情報の通知が完了した場合に、その通知先情報を通知イベントリストメモリ13bから削除することができる。
イベントリスト更新処理処理(S7)の終了後は、図7のS8の処理へ戻る。S8の処理では、接続失敗端末情報削除処理(S8)を実行する。
ここで、図12を参照して、接続失敗端末情報削除処理(S8)について説明する。図12は、接続失敗端末情報削除処理(S8)を示すフローチャートである。接続失敗端末情報削除処理(S8)は、PC31に対するイベント情報の通知において、PC31との接続が所定回数(例えば、2回)失敗した場合に、そのPC31の端末情報を通知端末リストメモリ13aから削除するとともに、通知イベントリストメモリ13bからも削除するための処理である。この所定回数は、利用するネットワークや、ネットワークの通信速度などに応じて適宜決めればよい。
接続失敗端末情報削除処理(S8)では、PC31への接続が所定回数失敗した端末情報が存在するかを判定し(S61)、PC31への接続が所定回数失敗した端末情報が存在しない場合は(S61:No)、S62〜70の処理をスキップし、この接続失敗端末情報削除処理(S8)を終了する。
一方、PC31への接続が所定回数失敗した端末情報が存在する場合は(S61:Yes)、PC31への接続が所定回数失敗した端末情報を通知端末リストメモリ13aから削除する(S62)。次に、削除した端末情報が含まれる通知イベントリストメモリ13bの中の通知イベントリスト13b1〜13b3を読み取る(S63)。
S63の処理で読み取った通知イベントリスト13b1〜13b3から、端末情報が含まれる通知先情報を読み取り(S64)、その読み取った通知先情報のカウント値を1減算し、その通知先情報に含まれるPC31への接続を所定回数失敗した端末情報を削除する(S65)。
次に、S64の処理で読み取った通知先情報に連なる、別の通知先情報が存在するかを判定し(S66)、S64の処理で読み取った通知先情報に連なる、別の通知先情報が存在する場合は(S66:Yes)、S64の処理で読み取った通知先情報に連なる、別の通知先情報からイベントエンドまで連なる各通知先情報のカウント値をぞれぞれ1減算する(S67)。一方、S64の処理で読み取った通知先情報に連なる、別の通知先情報が存在しない場合は(S66:No)、S67の処理をスキップし、S68の処理に移行する。
S68の処理では、S63の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在するかを判定し(S68)、S63の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在する場合は(S68:Yes)、S63の処理で読み取った通知イベントリスト13b1〜13b3の中から、カウント値が0である通知先情報を全て削除する(S69)。カウント値が0である通知先情報は、通知が終了した不要なデータであるため、それをRAM13から削除することにより、RAM13を使用する他の処理が、RAM13を有効に利用することができる。
一方、S63の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在しない場合は(S68:No)、S69の処理をスキップし、S70の処理に移行する。
S70の処理では、PC31への接続が所定回数失敗した端末情報が他にも存在するかを判定し(S70)、PC31への接続が所定回数失敗した端末情報が他に存在する場合は(S70:Yes)、S62の処理に戻り、上述したS62〜70の各処理を繰り返す。 一方、PC31への接続が所定回数失敗した端末情報が他にも存在しない場合は(S70:No)、この接続失敗端末情報削除処理(S8)を終了する。
この図12のフローチャートの接続失敗端末情報削除処理(S8)によりPC31との接続が所定回数失敗した場合に、そのPC31の端末情報を通知端末リストメモリ13aから削除するとともに、通知イベントリストメモリ13bからも削除することができる。また、接続が所定回数失敗したPC31の端末情報が、通知端末リストメモリ13aから削除されるので、削除された以後に発生したイベントに対応するイベント情報が、PC31に通知されることを抑制することができる。
接続失敗端末情報削除処理(S8)の終了後は、図7のS9の処理へ戻る。S9の処理では、有効期限確認処理(S9)を実行する。有効期限確認処理(S9)の終了後は、S2の処理に戻り、S2〜9の各処理を繰り返す。
ここで、図13を参照して、有効期限確認処理(S9)について説明する。図13は、有効期限確認処理(S9)を示すフローチャートである。有効期限確認処理(S9)は、通知端末リストメモリ13aに記憶される各端末情報(図4(a)参照)の有効期限を確認し、有効期限が経過している端末情報を、通知端末リストメモリ13aと通知イベントリストメモリ13bとから削除するための処理である。
この有効期限確認処理(S9)では、通知端末リストメモリ13a全体から、端末情報を一つ読み取り(S71)、次に、計時回路18から現在時刻を読み取る(S72)。
そして、S71の処理で読み取った端末情報の有効期限が、現在時刻を経過しているかを判定し(S73)、読み取った端末情報の有効期限が、現在時刻を経過している場合は(S73:Yes)、S71の処理で読み取った端末情報を通知端末リストメモリ13aから削除する(S74)。一方、読み取った端末情報の有効期限が、現在時刻を経過していない場合は(S73:No)、S74〜81の処理をスキップし、S82の処理に移行する。
次に、削除した端末情報が含まれる通知イベントリストメモリ13bの中の通知イベントリスト13b1〜13b3を読み取り(S75)、その読み取ったイベントリスト13b1〜13b3から、削除した端末情報が含まれる通知先情報を読み取る(S76)。そして、S76の処理で読み取った通知先情報のカウント値を1減算し、その通知先情報に含まれる有効期限が経過している端末情報を削除する(S77)。
S76の処理で読み取った通知先情報に連なる、別の通知先情報が存在するかを判定し(S78)、S76の処理で読み取った通知先情報に連なる、別の通知先情報が存在する場合は(S78:Yes)、S76の処理で読み取った通知先情報に連なる、別の通知先情報からイベントエンドまで連なる各通知先情報のカウント値をそれぞれ1減算する(S79)。一方、S76の処理で読み取った通知先情報に連なる、別の通知先情報が存在しない場合は(S78:No)、S79の処理をスキップし、S80の処理に移行する。
そして、S76の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在するかを判定し(S80)、S76の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在する場合は(S80:Yes)、S76の処理で読み取った通知イベントリスト13b1〜13b3の中から、カウント値が0である通知先情報を全て削除する(S81)。カウント値が0である通知先情報は、通知が終了した不要なデータであるため、それをRAM13から削除することにより、RAM13を使用する他の処理が、RAM13を有効に利用することができる。
一方、S76の処理で読み取った通知イベントリスト13b1〜13b3の中に、カウント値が0である通知先情報が存在しない場合は(S80:No)、S81の処理をスキップし、S82の処理に移行する。
そして、通知端末リストメモリ13b内の全ての端末情報を読み取ったかを判定し(S82)、通知端末リストメモリ13b内の全ての端末情報を読み取った場合は(S82:Yes)、この有効期限確認処理(S9)を終了する。一方、通知端末リストメモリ13b内の全ての端末情報を読み取っていない場合は(S82:No)、S71の処理に戻り、上述したS71〜82の各処理を繰り返す。
この図13のフローチャートの有効期限確認処理(S9)により通知端末リストメモリ13aに記憶される各端末情報(図4(a)参照)の有効期限を確認し、有効期限が経過している端末情報を、通知端末リストメモリ13aと通知イベントリストメモリ13bとから削除することができる。よって、その有効期限内に限り各PC31に、イベント情報を通知することができる。
有効期限確認処理(S9)の終了後は、図7のS9の処理へ戻り、S2〜9の各処理を繰り返す。
ここで、図14,15を参照して、MFP1によって作成される通知先情報の内容の一例と、各端末A,Bに対して行われるイベント情報の通知の一例とについて説明する。図14(a)から(d)は、ステータスイベント通知イベントリスト13b1の内容の一例を示している。図14(a)は、通知先情報が何も記憶されていない状態のステータスイベント通知イベントリスト13b1の内容を示している。本具体例では、予め端末A(図1参照)から、MFP1に対して、イベント種類がステータスイベントであるサブスクライブ要求が通知されており、ステータスイベント通知端末リスト13a1に、「端末Aの端末情報X」を記憶されている(図3(a)参照)。そして、MFP1のカバー開閉検出センサ20aが、カバーオープンを検出し、続いて、カバークローズを検出し、そして、その後に、記録用紙検出センサ21bが、用紙切れを検出した場合である。また、端末Bは、カバー開閉検出センサ20aが、カバーオープンを検出した後であって、カバークローズを検出する前に、イベント種類がステータスイベントのサブスクライブ要求を行っている。
MFP1において、「カバーオープンイベント」が発生すると、MFP1は、端末Aに「カバーオープンイベントに対応するイベント情報」を通知するために、通知先情報を作成する。この場合に、MFP1によって作成される通知先情報は、イベント名である「カバーオープンイベント」と、イベント情報である「カバーオープンイベントに対応したイベント情報」と、カバーオープンイベントのイベント種類(図5(a)参照)に対応するステータスイベント通知端末リスト13a1に記憶されている端末情報の数を示すカウント値である「1」と、カバーオープンイベントAのイベント種類(図5(a)参照)に対応するステータスイベント通知端末リスト13a1に記憶されている「端末Aの端末情報X」とにより構成されている。
そして、作成された「カバーオープンイベント」の通知先情報は、図14(b)に示すように、ステータスイベント通知イベントリスト13b1の「イベントリストエンド」の直前に挿入される。そして、「イベントリストスタート」に通知先情報が連なり、通知先情報に「イベントリストエンドが」連なる。通知先情報がステータスイベント通知イベントリスト13a1に挿入されると、MFP1は、挿入された通知先情報に記憶されているイベント情報を、その通知先情報に記憶されている端末情報Xの端末Aに対して通知を行う。
ここで、端末B(図1参照)から、MFP1に対して、イベント種類がステータスイベントであるサブスクライブ要求が通知される。すると、MFP1は、ステータスイベント通知端末リスト13a1に、「端末Bの端末情報Y」を記憶し、MFP1は端末Bに対して、サブスクライブ要求を受理したことを通知する(図3(a)参照)。よって、ステータスイベント通知端末リスト13a1には、「端末Aの端末情報X」と「端末Bの端末情報Y」とが記憶されることとなる。この端末Bへのイベント情報の通知は、このサブスクライブ要求を受理した後に発生したイベントに関するイベント情報の通知から行われる。すなわち、端末Bへのイベント情報の通知は、次に発生する「カバークローズイベント」から通知される。
MFP1において、「カバークローズイベント」が発生すると、MFP1は、端末Aと端末Bとに「カバークローズイベントに対応するイベント情報」を通知するために、通知先情報を作成する。この場合に、MFP1によって作成される通知先情報は、イベント名である「カバークローズイベント」と、イベント情報である「カバークローズイベントに対応したイベント情報」と、カバークローズイベントのイベント種類(図5(a)参照)に対応するステータスイベント通知端末リスト13a1に記憶されている端末情報の数を示すカウント値である「2」と、カバークローズイベントのイベント種類(図5(a)参照)に対応するステータスイベント通知端末リスト13a1に記憶されている「端末Bの端末情報Y」とにより構成されている(図14(c)参照)。
作成された「カバークローズイベント」の通知先情報のカウント値は、イベントの発生した時に、ステータスイベント通知端末リスト13a1に記憶されている端末情報の数であるので、「2」とされる。この作成された通知先情報には、端末情報として「端末Bの端末情報Y」しか含まれていないが、それは、既に作成されている通知先情報に「端末Aの端末情報X」が含まれているからである。
そして、作成された「カバークローズイベント」の通知先情報は、ステータスイベント通知イベントリスト13b1の「イベントリストエンド」の直前に挿入される。つまり、「イベントリストスタート」に通知先情報(カバーオープンイベント)が連なり、通知先情報(カバーオープンイベント)に通知先情報(カバークローズイベント)が連なり、通知先情報(カバーオープンイベント)に「イベントリストエンド」が連なる。そして、MFP1は、挿入された通知先情報に記憶されるイベント情報を、その通知先情報に記憶される端末情報Yの端末Bに対して通知を行う。さらに、「用紙切れイベント」が発生すると、「用紙切れイベント」に対応する通知先情報が生成され、「イベントリストエンド」の直前に挿入される。このとき通知先情報のカウント値は、端末情報として、「端末Aの端末情報X」および「端末Bの端末情報Y」に関する端末情報の数「2」が設定される(図14(c)参照)。
ここで、図14(d)に示すように、先に発生した「カバーオープンイベント」のイベント情報が、端末Aに通知されると、通知が完了した通知先情報である「端末Aの端末情報X」が、その通知先情報から、次に連なる通知先情報に移されると共に、通知が完了した通知先情報のカウント値が1減算される。そして、MFP1は、端末Aに対して、「カバークローズイベント」のイベント情報を通知する。
そして、カウント値が「0」となった通知先情報(カバーオープンイベント)(図14(d)参照)は、図15(a)に示すように、MFP1によって、ステータスイベント通知イベントリスト13b1から削除される。
ここで、後で発生した「カバークローズイベント」のイベント情報が、端末Aに通知されると、図15(b)に示すように、通知が完了した通知先情報である「端末Aの端末情報X」が、「用紙切れイベント」に関する通知先情報に移動する。また、「カバークローズイベント」の通知先情報のカウント値が1減算される。
端末Bに対して所定回数(例えば、2回)接続を失敗した場合、ステータスイベント通知端末リスト13a1から、「端末Bの端末情報Y」が削除される。そして、ステータイベント通知イベントリスト13b1の通知先情報(カバークローズイベント)から、「端末Bの端末情報Y」が削除され、その通知先情報のカウント値が1減算される。さらに、「用紙切れイベント」に関する通知先情報のカウント値も1減算される。すると、図15(c)に示すように、「カバークローズイベント」の通知先情報のカウント値が0となり、「用紙切れイベント」の通知先情報のカウント値が「1」となる。そして、「カバークローズイベント」の通知先情報が、ステータスイベント通知イベントリスト13b1から削除される。そして、端末Aに対して、「用紙切れイベント」の通知が完了すると、その通知先情報から端末情報が削除され、カウント値が0となる。通知先情報から端末情報が削除されるのは、後続に連なる通知先情報がないからである。そして、「用紙切れイベント」の通知先情報がステータスイベント通知イベントリスト13b1から削除される(図15(d)参照)。
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
例えば、上記実施形態では、PC31からMFP1に対して通知されるサブスクライブ要求から情報(ID情報、URL情報、有効期限情報(実時間として抽出される))が抽出され、それが端末情報として通知端末リストメモリ13aに記憶されているが、そのサブスクライブ要求に含まれるURLがホスト名である場合に、IPアドレスに変換してから端末情報として記憶しても良い。MPF1とPC31とがTCP/IPプロトコルに基づくデータ通信を行っている場合は、MFP1がPC31に対してイベント情報を通知するために、ホスト名がIPアドレスに変換されてから通知が行われる。ホスト名は、MFP1がDNSサーバと呼ばれるコンピュータに問い合わせを行うことで、IPアドレスに変換しているが、イベント情報を通知する度に問い合わせをするよりも、予めIPアドレスに変換して記憶しておくことで、イベント情報の通知を円滑に行うことができる。
また、上記実施形態では、通知端末リストメモリ13aに記憶する端末情報の数に制限はないが、MFP1のCPU11の演算処理能力や、LAN200のデータ通信速度などに応じて、端末情報の記憶数を制限しても良い。その制限することで、通知できない通知処理が多く発生した場合でも、さらにイベント情報の通知の遅延を抑制することができる。特に、端末情報の記憶数が制限されている場合に、本実施形態の発明を適用すると、通知ができないPC31の端末情報が削除されるので、MFP1とのデータ通信が可能な複数のPC31により、MFP1を有効に利用することができる。
また、上記実施形態では、MFP1は、装置内で同じイベント種類のイベントが複数発生した場合に、それぞれのイベント情報を、イベントの発生した順序に従って各PC(端末A,B)に通知するが、イベント種類に関係なく、イベントの発生した順序に従って、全てのイベント情報を各PC(端末A,B)に通知してもよい。
なお、通知先情報には、通知先となる端末情報をすべてを設定しておき、通知が完了するごとにポインタを移動する構成であってもよい。
本発明の実施形態におけるMFPとPCとの外観構成を示した斜視図である。 MFPとPCとの電気的構成を示すブロック図である。 MFPとPCとの間で送受信されるデータの流れを概略的に示したイメージ図である サブスクライブ要求の内容とアンサブスクライブ要求の内容と端末情報の内容とを概略的に示したイメージ図である。 イベント種類と、MFPで発生するイベントとについて示した表である。 (a)〜(c)は、それぞれの通知イベントリストの内容の一例を示すイメージ図である。(d)は、通知先情報の内容の一例を示すイメージ図である。 MFPのメイン処理を示すフローチャートである。 MFPのイベントリスト追加処理を示すフローチャートである。 MFPの受信データ処理を示すフローチャートである。 MFPのイベントリスト端末情報削除処理を示すフローチャートである。 MFPのイベントリスト更新処理を示すフローチャートである。 MFPの接続失敗端末情報削除処理を示すフローチャートである。 MFPの有効期限確認処理を示すフローチャートである。 ステータスイベント通知イベントリストに挿入される通知先情報の流れの一例を示すイメージ図である。 ステータスイベント通知イベントリストから削除される通知先情報の流れの一例を示すイメージ図である。
符号の説明
1 MFP(情報処理装置)
11 CPU(イベント検出手段)
13a 通知端末リストメモリ(記憶手段)
13b 通知イベントリストメモリ(順序情報記憶手段、通知先記憶手段、通知先数記憶手段)
20a カバー開閉検出センサ(イベント検出手段)
21a インク残量検出センサ(イベント検出手段)
21b 記録用紙検出センサ(イベント検出手段)
S14、S15 イベント情報生成手段
S22、S23 要求受信手段
S37、S38、S49、S50、S68、S69、S80、S81 イベント情報削除手段
S44 判断手段
S45、S46、S47 変更手段
S46 第1減算手段
S17 通知手段
S65 通知先削除手段
S65 第2減算手段
S66、S67 第3減算手段

Claims (6)

  1. 自装置の状態変化により発生する複数のイベントを監視し、発生したイベントに応じたイベント情報をクライアントに通知する情報処理装置において、
    前記イベント情報をイベントが発生した順序でクライアントに通知するための順序情報を記憶する順序情報記憶手段と、
    前記イベント情報を通知するクライアントを記憶する通知先記憶手段と、
    その通知先記憶手段に記憶されたクライアントに対し、イベント情報を通知する通知手段と、
    前記通知手段により、一のイベント情報の通知が成功したかを判断する判断手段と、
    前記通知手段により、その一のイベント情報の通知が成功したと判断したことを条件として、前記順序情報記憶手段に記憶された順序情報にしたがい、その一のイベント情報に対応するイベントの次に発生したイベントに応じたイベント情報を通知する変更手段とを備えていることを特徴とする情報処理装置。
  2. クライアントからイベント情報の通知要求を受信する要求受信手段と、
    その要求受信手段により通知要求を受信したクライアントを記憶する記憶手段と、
    イベントの発生を検出するイベント検出手段と、
    そのイベント検出手段によりイベントの発生が検出された場合に、その検出されたイベントに応じたイベント情報を生成するイベント情報生成手段と、を備え、
    前記通知先記憶手段は、前記イベント検出手段によりイベントが検出された際に、前記記憶手段に記憶されているクライアントを、その検出されたイベントに応じたイベント情報の通知対象として記憶することを特徴とする請求項1記載の情報処理装置。
  3. 前記通知手段は、複数のクライアントに対して、それぞれイベント情報を通知可能であって、
    前記通知先記憶手段に記憶されたクライアントの数を、イベント情報毎に記憶する通知先数記憶手段と、
    前記通知手段により一のクライアントへのイベント情報の通知が成功すると、そのイベント情報に関するクライアントの数を、前記通知先数記憶手段から、通知が完了したクライアントの数だけ減算する第1減算手段とを備えることを特徴とする請求項1または2記載の情報処理装置。
  4. 前記通知先数記憶手段に記憶されたクライアントの数が0のイベント情報を前記通知先記憶手段から削除するイベント情報削除手段とを備えていることを特徴とする請求項3記載の情報処理装置。
  5. 前記判断手段により、前記イベント情報の通知が失敗したと判断した場合に、そのイベント情報における前記通知先記憶手段から、通知が失敗したと判断されたクライアントを削除する通知先削除手段と、
    その通知先削除手段により削除されるクライアントに通知するイベント情報について、前記通知先数記憶手段に記憶された前記クライアントの数から1を減算する第2減算手段と、
    前記順序情報記憶手段に記憶される順序情報により示される通知の順序において、前記通知が失敗したと判断したイベント情報より後に通知するイベント情報について、前記通知先数記憶手段に記憶された前記各イベント情報のクライアントの数からそれぞれ1を減算する第3減算手段とを備えることを特徴とする請求項1乃至4のいずれかに記載の情報処理装置。
  6. 自装置の状態変化により発生する複数のイベントを監視し、発生したイベントに応じたイベント情報をクライアントに通知するコンピュータを、
    前記イベント情報をイベントが発生した順序でクライアントに通知するための順序情報を記憶する順序情報記憶手段、
    前記イベント情報を通知するクライアントを記憶する通知先記憶手段、
    その通知先記憶手段に記憶されたクライアントに対し、イベント情報を通知する通知手段、
    前記通知手段により、一のイベント情報の通知が成功したかを判断する判断手段、
    前記通知手段により、その一のイベント情報の通知が成功したと判断したことを条件として、前記順序情報記憶手段に記憶された順序情報にしたがい、その一のイベント情報に対応するイベントの次に発生したイベントに応じたイベント情報を通知する変更手段として機能させるための情報処理プログラム。
JP2007095460A 2007-03-30 2007-03-30 情報処理装置および情報処理プログラム Active JP4962099B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007095460A JP4962099B2 (ja) 2007-03-30 2007-03-30 情報処理装置および情報処理プログラム
EP08250716.1A EP1976258B1 (en) 2007-03-30 2008-03-03 Information processing apparatus and computer usable medium therefor
US12/076,574 US8381232B2 (en) 2007-03-30 2008-03-20 Information processing apparatus and computer usable medium therefor
CN2008100907244A CN101277354B (zh) 2007-03-30 2008-03-31 信息处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007095460A JP4962099B2 (ja) 2007-03-30 2007-03-30 情報処理装置および情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2008258673A true JP2008258673A (ja) 2008-10-23
JP4962099B2 JP4962099B2 (ja) 2012-06-27

Family

ID=39618950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007095460A Active JP4962099B2 (ja) 2007-03-30 2007-03-30 情報処理装置および情報処理プログラム

Country Status (4)

Country Link
US (1) US8381232B2 (ja)
EP (1) EP1976258B1 (ja)
JP (1) JP4962099B2 (ja)
CN (1) CN101277354B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010260198A (ja) * 2009-04-30 2010-11-18 Brother Ind Ltd 印刷装置
JP2012203842A (ja) * 2011-03-28 2012-10-22 Panasonic Corp 情報処理装置
JP2012231399A (ja) * 2011-04-27 2012-11-22 Kyocera Document Solutions Inc 通信装置および通信システム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5353591B2 (ja) * 2009-09-15 2013-11-27 株式会社リコー プロジェクタ、プロジェクタシステム、制御方法、及び制御プログラム
JP5994331B2 (ja) * 2012-03-29 2016-09-21 ブラザー工業株式会社 画像読取装置および画像読取方法
US9792317B2 (en) * 2013-05-03 2017-10-17 Kony, Inc. Accelerated data integrity through broker orchestrated peer-to-peer data synchronization
CN103577594A (zh) * 2013-11-13 2014-02-12 广州市久邦数码科技有限公司 一种锁屏界面信息推送系统及方法
CN107634929A (zh) * 2016-07-18 2018-01-26 中兴通讯股份有限公司 业务处理方法及装置
JP7120806B2 (ja) * 2018-05-18 2022-08-17 シャープ株式会社 原稿読取装置、画像形成装置、ガイダンス通知方法及び制御プログラム
JP7401339B2 (ja) * 2020-02-20 2023-12-19 株式会社Pfu 画像処理システム及び画像処理方法
JP7545633B2 (ja) * 2020-08-04 2024-09-05 京セラドキュメントソリューションズ株式会社 印刷ジョブ送信装置および印刷ジョブ送信プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222148A (ja) * 2001-01-25 2002-08-09 Pfu Ltd ファイル順序制御プログラムおよび記録媒体
JP2005072834A (ja) * 2003-08-22 2005-03-17 Nippon Telegr & Teleph Corp <Ntt> モバイルアドホックネットワークシステムとモバイルアドホックネットワーク制御方法とプログラム
JP2006087058A (ja) * 2004-09-17 2006-03-30 Ricoh Co Ltd 画像処理装置およびその状態情報通知方法と画像処理システム並びにプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5925108A (en) * 1995-11-03 1999-07-20 Novell, Inc. Event notification in a computer system
JPH1127342A (ja) 1997-06-30 1999-01-29 Nec Corp ネットワーク情報整合方式および整合システム
US6502128B1 (en) 1999-10-01 2002-12-31 Hewlett-Packard Company Server and a method for communicating event messages from the server connected to a peripheral device and a client computer
US7472396B2 (en) * 2001-05-18 2008-12-30 Qualcomm Incorporated Extensible event notification mechanism
JP3841023B2 (ja) * 2002-06-07 2006-11-01 ブラザー工業株式会社 プリンタの状態報知システム及び通知端末装置
US7676562B2 (en) * 2004-01-20 2010-03-09 Microsoft Corporation Computer system for accessing instrumentation information
US20060155824A1 (en) * 2005-01-11 2006-07-13 Tetsuro Motoyama Method and system for extracting information from networked devices using the HTTP protocol and precondition information
JP2008012868A (ja) * 2006-07-07 2008-01-24 Canon Inc 記録装置、情報処理装置及びそれらの制御方法、記録システム、プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222148A (ja) * 2001-01-25 2002-08-09 Pfu Ltd ファイル順序制御プログラムおよび記録媒体
JP2005072834A (ja) * 2003-08-22 2005-03-17 Nippon Telegr & Teleph Corp <Ntt> モバイルアドホックネットワークシステムとモバイルアドホックネットワーク制御方法とプログラム
JP2006087058A (ja) * 2004-09-17 2006-03-30 Ricoh Co Ltd 画像処理装置およびその状態情報通知方法と画像処理システム並びにプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010260198A (ja) * 2009-04-30 2010-11-18 Brother Ind Ltd 印刷装置
JP2012203842A (ja) * 2011-03-28 2012-10-22 Panasonic Corp 情報処理装置
JP2012231399A (ja) * 2011-04-27 2012-11-22 Kyocera Document Solutions Inc 通信装置および通信システム

Also Published As

Publication number Publication date
US8381232B2 (en) 2013-02-19
CN101277354B (zh) 2012-05-30
EP1976258B1 (en) 2018-02-07
CN101277354A (zh) 2008-10-01
US20080244618A1 (en) 2008-10-02
JP4962099B2 (ja) 2012-06-27
EP1976258A1 (en) 2008-10-01

Similar Documents

Publication Publication Date Title
JP4962099B2 (ja) 情報処理装置および情報処理プログラム
JP4403135B2 (ja) Webサービス利用システム
JP5834550B2 (ja) 情報処理装置、データ管理システム、及びデータ管理プログラム
JP2005063411A (ja) 印刷処理装置、画像処理装置、文書管理装置、印刷処理システム、印刷処理装置の制御方法、印刷処理装置の制御プログラム及び記録媒体
JP2006260272A (ja) 操作対象識別システム、端末装置、デバイス、サーバ装置、及びプログラム
JP2010079831A (ja) 通信システム及び通信制御プログラム
JP4780019B2 (ja) 情報処理装置および情報処理プログラム
JP2008097531A (ja) ネットワーク装置,データ提供場所提供方法、データ提供場所提供プログラム及び記録媒体
JP2011124957A (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
JP2016144157A (ja) 操作画面提供システム、中継装置、操作画面提供装置及びプログラム
JP3762402B2 (ja) データ処理装置及び方法
JP2007213419A (ja) 情報処理装置、セッションの制御方法、及びプログラム
JP2010109650A (ja) 情報処理装置及びこれを含む画像形成システム
JP4730604B2 (ja) 画像形成装置
JP2007134843A (ja) 通信端末、遠隔操作方法および遠隔操作プログラム
JP2008282311A (ja) ネットワーク装置およびデータ更新方法
JP6493055B2 (ja) 情報処理装置及びプログラム
JP4929142B2 (ja) データ処理装置及びその制御方法、コンピュータプログラム
JP2010081017A (ja) コンテンツのタイトルを表示する通信装置
JP6075432B2 (ja) 情報処理装置、データ管理システム、及びデータ管理プログラム
JP2016143370A (ja) 情報処理装置、情報処理システム及びプログラム
JP2014216817A (ja) 情報端末管理システム
JP5393558B2 (ja) 画像形成装置
JP2019057796A (ja) 画像処理装置およびその制御方法、並びにプログラム
JP2008294792A (ja) 複合機

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120203

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120312

R150 Certificate of patent or registration of utility model

Ref document number: 4962099

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150406

Year of fee payment: 3