(57)【特許請求の範囲】
【請求項１】
ターゲットアプリケーションのインターフェイスを備え、このインターフェイスは、ユーザによって選択される複数の動作を備え、
ユーザによるインターフェイスの複数の動作の選択に関するデータをモニタするとともに、モニタされたデータのログを形成するように構成されたモニタリングユニットを備え、モニタされたデータのログはアブストラクトクラスの形態を成し、
モニタされたデータのログを含むアブストラクトから得られたオブジェクトを受けるとともに、モニタされたデータのログの通信を行なうように構成された通信ユニットと、
通信ユニットがモニタされたデータのログを通信する前に、ユーザによって実行されるターゲットアプリケーションの使用回数であるセッション数を設定するセッティングユニットと、を備え、
前記通信ユニットは、前記ターゲットアプリケーションが前記セッティングユニットにより設定された前記セッション数の回数だけ使用された後に、モニタされたデータのログの通信を行ない、
前記アブストラクトクラスは、前記データにアクセスするため、および前記モニタリングユニットと前記通信ユニットとの間のインタフェースのために定義されたものであり、第１の導出クラスおよび第２の導出クラスを有し、第１の導出クラスは、前記ターゲットアプリケーションの１回ごとの使用である１セッションごとに前記モニタされたデータが送信される旨を示すデータを記憶し、第２の導出クラスは、前記セッション数の回数だけ使用された後に前記モニタされたデータが送信される旨を示すデータを記憶することを特徴とするシステム。
【請求項２】
ターゲットアプリケーションがソフトウエアアプリケーションであり、インターフェイスがソフトウエアアプリケーションのディスプレイ画面であることを特徴とする請求項１に記載のシステム。
【請求項３】
ターゲットアプリケーションが画像形成装置であり、インターフェイスが画像形成装置の操作パネルであることを特徴とする請求項１に記載のシステム。
【請求項４】
ターゲットアプリケーションが電気製品であり、インターフェイスが電気製品の操作パネルであることを特徴とする請求項１に記載のシステム。
【請求項５】
ユーザがターゲットアプリケーションを終了したときに、通信ユニットはモニタされたデータのログを送ることを特徴とする請求項１に記載のシステム。
【請求項６】
通信ユニットは、モニタされたデータのログをインターネットメールによって通信することを特徴とする請求項１〜５のいずれか一つに記載のシステム。
【請求項７】
ターゲットアプリケーション手段のインターフェイス手段を備え、このインターフェイス手段は、ユーザによって選択される複数の動作を提供し、
ユーザによるインターフェイス手段の複数の動作の選択に関するデータをモニタするとともに、モニタされたデータのログを形成するためのモニタリング手段を備え、モニタされたデータのログはアブストラクトクラスの形態を成し、
モニタされたデータのログを含むアブストラクトから得られたオブジェクトを受けるとともに、モニタされたデータのログの通信を行なうための通信手段と、
通信手段がモニタされたデータのログを通信する前に、ユーザによって実行されるターゲットアプリケーションの使用回数であるセッション数を設定するセッティング手段と、を備え、
前記通信手段は、前記ターゲットアプリケーションが前記セッティングユニットにより設定された前記セッション数の回数だけ使用された後に、モニタされたデータのログの通信を行ない、
前記アブストラクトクラスは、前記データにアクセスするため、および前記モニタリング手段と前記通信手段との間のインタフェースのために定義されたものであり、第１の導出クラスおよび第２の導出クラスを有し、第１の導出クラスは、前記ターゲットアプリケーションの１回ごとの使用である１セッションごとに前記モニタされたデータが送信される旨を示すデータを記憶し、第２の導出クラスは、前記セッション数の回数だけ使用された後に前記モニタされたデータが送信される旨を示すデータを記憶することを特徴とするシステム。
【請求項８】
ターゲットアプリケーション手段がソフトウエアアプリケーションであり、インターフェイス手段がソフトウエアアプリケーションのディスプレイ画面であることを特徴とする請求項７に記載のシステム。
【請求項９】
ターゲットアプリケーション手段が画像形成装置であり、インターフェイス手段が画像形成装置の操作パネルであることを特徴とする請求項７に記載のシステム。
【請求項１０】
ターゲットアプリケーション手段が電気製品であり、インターフェイス手段が電気製品の操作パネルであることを特徴とする請求項７に記載のシステム。
【請求項１１】
ユーザがターゲットアプリケーション手段を終了したときに、通信手段はモニタされたデータのログを送ることを特徴とする請求項７に記載のシステム。
【請求項１２】
通信手段は、モニタされたデータのログをインターネットメールによって通信することを特徴とする請求項７〜１１のいずれか一つに記載のシステム。
【請求項１３】
ターゲットアプリケーションのインターフェイスの使用をモニタする方法であって、前記インターフェイスがユーザによって選択される複数の動作を有している方法において、
モニタリング手段が、ユーザによるインターフェイスの複数の動作の選択に関するデータをモニタするステップを備え、
モニタされたデータのログを形成するステップを備え、モニタされたデータのログはアブストラクトクラスの形態を成し、
通信手段が、モニタされたデータのログを含むアブストラクトから得られたオブジェクトを受けるとともに、モニタされたデータのログの通信を行なう通信ステップと、
通信ステップがモニタされたデータのログを通信する前に、ユーザによって実行されるターゲットアプリケーションの使用回数であるセッション数を設定するセッティング手段ステップと、を備え、
前記通信ステップは、前記ターゲットアプリケーションが前記セッティングユニットにより設定された前記セッション数の回数だけ使用された後に、モニタされたデータのログの通信を行ない、
前記アブストラクトクラスは、前記データにアクセスするため、および前記モニタリング手段と前記通信手段との間のインタフェースのために定義されたものであり、第１の導出クラスおよび第２の導出クラスを有し、第１の導出クラスは、前記ターゲットアプリケーションの１回ごとの使用である１セッションごとに前記モニタされたデータが送信される旨を示すデータを記憶し、第２の導出クラスは、前記セッション数の回数だけ使用された後に前記モニタされたデータが送信される旨を示すデータを記憶することを特徴とする方法。
【請求項１４】
ターゲットアプリケーションがソフトウエアアプリケーションであり、インターフェイスがソフトウエアアプリケーションのディスプレイ画面であることを特徴とする請求項１３に記載の方法。
【請求項１５】
ターゲットアプリケーションが画像形成装置であり、インターフェイスが画像形成装置の操作パネルであることを特徴とする請求項１３に記載の方法。
【請求項１６】
ターゲットアプリケーションが電気製品であり、インターフェイスが電気製品の操作パネルであることを特徴とする請求項１３に記載の方法。
【請求項１７】
ユーザがターゲットアプリケーションを終了したときに、通信ステップはモニタされたデータのログを送ることを特徴とする請求項１３に記載の方法。
【請求項１８】
通信ステップは、モニタされたデータのログをインターネットメールによって通信することを特徴とする請求項１３〜１７のいずれか一つに記載の方法。
【請求項１９】
請求項１３〜１８までの方法をコンピュータに実行させるプログラムを記録したコンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アプリケーションユニットのターゲットアプリケーションのユーザによる使用をモニタすることができるとともに、モニタされた使用のデータを容易、かつ効率的に通信することができるアプリケーションユニットモニタリング装置に関する。
【０００２】
【従来の技術】
コンピュータの使用の増大に伴って、ソフトウエアの開発は明らかに重要なビジネスになってきている。ソフトウエアの評価においては、ユーザがソフトウエアアプリケーションをどのように使用しているかを正確にモニタすることが有益である。一例として、どのコマンドがユーザによって頻繁に使用されるかを知ることは、ソフトウエア開発者にとって役立つ。
【０００３】
また、人間がやりとりを行なう装置の設計においては、ユーザがそのような装置とどのようにやりとりを行なうかをモニタすることが望ましい。一例として、コピー機やファクシミリ機やプリンタやスキャナのような画像形成装置、電子レンジ、ＶＣＲ、デジタルカメラ、携帯電話、パームトップコンピュータのような電気製品の制御パネルをユーザがどのように使用するのかをモニタすることが望ましい。
【０００４】
また、ユーザによるインターネットの使用がますます増加している。ユーザがインターネットをどのように利用しているか、特に、ユーザが所定のウェブページ等をどのように使用しているかは、重大な関心事である。インターネットのユーザによるそのような使用をモニタすることもまた重要になってきている。
【０００５】
【発明が解決しようとする課題】
ソフトウエアアプリケーション等の所定のアプリケーションや、ユーザによって操作されるインターフェイスを有する装置や、ウェブページ等をユーザがどのように利用しているかを決定することが望ましい場合には、アプリケーションユニットユーザによる使用がモニタされなければならないだけでなく、ユーザによる使用のモニタリングによって得られる情報が所望の場所に有効に通信されなければならない。
【０００６】
本発明の目的は、アプリケーションユニットのターゲットアプリケーションのユーザによる使用をモニタするための新規、かつ有効なシステムを提供することである。
【０００７】
本発明の、さらなる目的は、アプリケーションユニットのターゲットアプリケーションのユーザによる使用のモニタリングによって得られるデータを所望の場所に通信するための新規なシステムを提供することである。
【０００８】
本発明の、さらなる目的は、モニタされた使用情報をモニタリングユニットから送信ユニットに有効に通信する方法を提供することである。
【０００９】
【課題を解決するための手段】
アプリケーションユニットのターゲットアプリケーションのユーザインターフェイスの使用をモニタすることによって、本発明のこれらの目的および他の目的が達成される。一例として、このようなモニタリングは、ユーザによる制御下にあるコンピュータやワークステーション上で実行されるソフトウエアプログラム、コピー機やファクシミリ機やプリンタやスキャナのような画像形成装置、電子レンジ、ＶＣＲ、デジタルカメラ、携帯電話、パームトップコンピュータのような電気製品の制御パネルの使用、ユーザインターフェイスを有する任意の他の装置やシステムの使用をモニタすることができる。
【００１０】
本発明の、さらなる特徴として、アプリケーションユニットのターゲットアプリケーションのユーザによる使用のモニタリングによって得られたデータは、集められて記憶された後、インターネット電子メールによって所望の場所に通信される。電子メール通信の使用により、そのようなデータの通信に伴うコストが減少する。ユーザがアプリケーションユニットのターゲットアプリケーションを終了する度毎に、あるいは、ユーザがアプリケーションユニットのターゲットアプリケーションを所定回数使用して終了した後など、いくつかの場合に、データを所望の場所に送信することができる。
【００１１】
添付図面を関連付けて考慮しながら以下の詳細な説明を参照して本発明をさらに理解すれば、本発明に関する完全な認識とそれに付随する多くの利益とが容易に得られる。
【００１２】
【発明の実施の形態】
図面を参照すると、同一の符号は複数の図面の全体にわたって同一もしくは対応する部分を示している。これらの図面のうち、特に図１を参照すると、ここには、様々な機械や、機械の動作をモニタし、診断し、制御するためのコンピュータが示されている。
【００１３】
図１において、ローカルエリア・ネットワーク（ＬＡＮ）のような第１のネットワーク１６は、コンピュータ・ワークステーション１７，１８，２０，２２に接続されている。これらのワークステーションは、ＩＢＭパーソナルコンピュータと互換性のある装置、ユニックスをベースとするコンピュータ、アップルマッキントッシュを含む任意のタイプのコンピュータとすることが可能である。また、デジタルコピー機／プリンタ２４とファクシミリ装置２８とプリンタ３２とがネットワーク１６に接続されている。装置２４，２８，３２とワークステーション１７，１８，２０，２２とが機械もしくはモニタ装置として示されているが、後述する任意の装置を含む他のタイプの装置が機械もしくはモニタ装置として使用されてもよい。
【００１４】
また、ファクシミリサーバ（図示せず）がネットワーク１６に接続されていても良く、また、ファクシミリサーバが電話やＩＳＤＮ（統合デジタル通信網）やケーブル接続を有していてもよい。デジタルコピー機／プリンタ２４とファクシミリ装置２８とプリンタ３２とがネットワーク１６に接続されていることに加え、これらの装置が従来の電話やＩＳＤＮやケーブル接続２６，３０，３４を含んでいてもよい。後述するように、ビジネスオフィス機械あるいはビジネス装置２４，２８，３２は、ネットワーク１６を介したインターネットを通じて、あるいは、直接的な電話やＩＳＤＮ、無線やケーブル接続によって、モニタリング装置として示されているリモートモニタリング・診断・制御ステーションと通信を行なう。
【００１５】
図１において、インターネットは一般に１０で示されている。インターネット１０は、１２Ａから１２Ｉで示される相互に接続された複数のコンピュータおよびルータを含んでいる。インターネットにわたって通信を行なう方法は、ＮＩＣ．ＤＤＮ．ＭＩＬまたはＦＴＰ  ＮＩＳＣ．ＳＲＩ．ＣＯＭでＦＴＰによって得られるＲＦＣ文書を通じて知られている。ＴＣＰ／ＩＰに関する通信は、たとえば、１９９４年にアディソン・ウェズリー社からスティーブンスによって出版され、かつ参照することによって本願に組み入れられる本  "ＴＣＰ／ＩＰ  Ｉｌｌｕｓｔｒａｔｅｄ "，Ｖｏｌ．１，Ｔｈｅ  Ｐｒｏｔｏｃｏｌｓに述べられている。
【００１６】
図１において、インターネット１０とネットワーク１６との間にはファイアウォール１４が接続されている。ファイアウォールは、認可されたコンピュータだけをインターネットを介してネットワークもしくは他のコンピュータにアクセスできるようにする装置である。ファイアウォールは、既知であり、また、市販された装置もしくはソフトウエアであり、たとえばサン・マイクロシステムズ株式会社からのＳｕｎＳｃｒｅｅｎを含んでいる。同様に、インターネット１０とネットワーク５２との間にはファイアウォール５０が接続されている。また、インターネット１０とワークステーション４２との間にもファイアウォール４０が接続されている。
【００１７】
ネットワーク５２は、従来のネットワークであり、複数のワークステーション５６，６２，６８，７４を有している。これらのワークステーションは、マーケティング部、製造部、デザインエンジニアリング部、顧客サービス部のように、会社内の異なる部門であってもよい。ネットワーク５２を介して接続されたワークステーションの他に、ネットワーク５２に直接に接続されていないワークステーション４２がある。ディスク４６に記憶されたデータベースの情報は、適当な暗号化やインターネットにおけるプロトコルを使用して、ネットワーク５２に直接に接続されるワークステーションで共有されてもよい。
【００１８】
また、ワークステーション４２は、電話回線やＩＳＤＮやケーブル４４への直接的な接続部を有しており、ディスク４６内のデーダベースは電話回線やＩＳＤＮやケーブルを介してアクセスされてもよい。本発明によって使用されるケーブルは、一般にテレビの番組編成を送るために使用されるケーブルを使用して実行されても良く、コンピュータ等とともに一般に使用されるデジタルデータの高速通信のために設けられるケーブルは、所望の任意のタイプのケーブルを使用して実行されてもよい。
【００１９】
ビジネスオフィス機械２４，２８，３２の情報は、ディスク４６，５４，５８，６４，７０，７６内に記憶された１以上のデータベースに記憶されてもよい。顧客サービス部、マーケティング部、製造部、デザインエンジニアリング部のそれぞれは、それ自身のデータベースを有していても良く、また、１以上のデータベースを共有してもよい。データベースを記憶するために使用される各ディスクは、ハードディスクや光ディスクのような不揮発性メモリである。
【００２０】
また、データベースは、固体記憶装置や半導体記憶装置を含む任意の記憶装置に記憶されてもよい。一例として、ディスク６４はマーケティングデータベースを有し、ディスク５８は製造データベースを有し、ディスク７０はエンジニアリングデータベースを有し、ディスク７６は顧客サービスデータベースを有している。あるいは、ディスク５４，４６は１以上のデータベースを記憶している。
【００２１】
ワークステーション５６，６２，６８，７４，４２がインターネットに接続されていることに加え、これらのワークステーションは、モニタされ診断され制御される機械に安全な接続を提供するとともに通信の接続モード時に使用されるケーブル、電話回線、ＩＳＤＮへの接続部を有していてもよい。また、インターネット、電話、ＩＳＤＮ、ケーブルのうちの一つが適切に働いていない場合には、他の一つが通信のために自動的に使用される。
【００２２】
本発明の特徴は、機械と機械を診断・制御するコンピュータとの間で、コネクションレス型通信（たとえばインターネット電子メール）もしくは伝送を使用することである。送信される電子メールは、通信の接続モードを使用して実行されてもよい。１９９４年にジョージ・マクダニエルによって出されたコンピューティングのＩＢＭ辞書において、コネクションレス型伝送は、データのシングルユニットをソースサービスアクセスポイントから１以上の宛先サービスアクセスポイントへと接続を達成することなく伝送することであると定義されている。
【００２３】
また、ＩＢＭ辞書において、コネクション型伝送は、データの複数のユニットをソースサービスアクセスポイントから１以上の宛先サービスアクセスポイントへと接続を介して伝送することであると定義されている。接続は、データ搬送およびリリースされた、つぎのデータ搬送の前に達成される。コネクション型およびコネクションレス型操作に関する別の情報は、１９９０年にウイリアム・スターリングによって出され、かつ参照することにより本願に組み込まれるＨａｎｄｂｏｏｋ  ｏｆ  Ｃｏｍｐｕｔｅｒ−Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｔａｎｄａｒｄｓ，Ｖｏｌ．１の第２版に記述されている。ＤＴＥ（データ端末装置）から他のＤＴＥにデータを送信するため、固有の識別子もしくはアドレスが各ＤＴＥのために設けられる。この固有の識別子もしくはアドレスは、コネクション型通信およびコネクションレス型通信の両方で使用可能である。
【００２４】
図２は、図１に示されたデジタルコピー機／プリンタ２４の機械的なレイアウトを示している。図２中、１０１はスキャナのためのファン、１０２はレーザプリンタとともに使用されるポリゴンミラー、１０３はレーザ（図示せず）からの光を平行にするために使用されるＦθレンズである。符号１０４は、スキャナからの光を検知するためのセンサを示している。１０５はスキャナからの光をセンサ１０４に合焦するためのレンズであり、１０６は感光体ドラム１３２上の像を消去するために使用される除電ランプである。充電コロナユニット１０７と現像ローラ１０８とが設けられている。符号１０９は走査される文書を図解するために使用されるランプを示しており、１１０，１１１，１１２は光をセンサ１０４に向けて反射するために使用されるミラーを示している。
【００２５】
ドラムミラー１１３は、ポリゴンミラー１０２から生じる光を感光体ドラム１３２に反射するために使用される。符号１１４は、デジタルコピー機／プリンタの充電領域を冷却するために使用されるファンを示しており、１１５は第１のペーパカセット１１７から紙を供給するために使用される第１の給紙ローラであり、１１６は手動供給テーブルである。同様に、１１８は第２のカセット１１９のための第２の給紙ローラである。符号１２０はリレーローラを示しており、１２１はレジストローラである。１２２は複写濃度センサであり、１２３は搬送／分離コロナユニットである。符号１２４はクリーニングユニットであり、１２５は吸出しファン、１２６は搬送ベルトを示し、１２７は加圧ローラ、１２８は出口ローラである。符号１２９はトナーを紙に定着させるために使用される加熱ローラであり、１３０は排気ファン、１３１はデジタルコピー機を駆動するために使用されるメインモータである。
【００２６】
図３は、図２に示される電子部品のブロック図を示している。ＣＰＵ１６０は、マイクロプロセッサであり、システムコントローラとして作用する。デジタルコピー機の操作パラメータを含む動的に変化する情報を記憶するためにランダムアクセスメモリ１６２が設けられている。読み出し専用メモリ１６４は、デジタルコピー機を作動するために使用されるプログラムコードと、型番やコピー機の製造番号や初期設定パラメータのようなコピー機（定常状態データ）を表示する情報とを記憶する。
【００２７】
デジタルコピー機と外部装置との通信を許容するマルチポート通信インターフェイス１６６が設けられている。符号１６８は、電話、ＩＳＤＮ、ケーブルラインを示しており、１７０はネットワークを示している。マルチポート通信インターフェイスの、さらなる情報は図４に示されている。インターフェイスコントローラ１７２は操作パネル１７４をシステムバス１８６に接続するために使用される。操作パネル１７４は、コピーボタンや、コピーの数、縮小／拡大、暗／明のようなコピーの動作を制御するためのキーを含むデジタルコピー機に見られる標準入出力装置を有している。また、デジタルコピー機のパラメータやメッセージを使用者に表示するために、操作パネル１７４内に液晶ディスプレイを設けてもよい。
【００２８】
記憶インターフェイス１７６は記憶装置をシステムバス１８６に接続する。記憶装置は、従来のＥＥＰＲＯＭやディスク１８２によって置き換えることが可能なフラッシュメモリ１７８を含んでいる。ディスク１８２は、ハードディスク、光ディスク、フロッピーディスクドライブを含んでいる。デジタルコピー機に増設の記憶装置を接続可能にする接続部１８０が記憶インターフェイス１７６に接続されている。フラッシュメモリ１７８は、コピー機の寿命を超えて希に変化するデジタルコピー機のパラメータを表わす半定常状態データを記憶するために使用される。そのようなパラメータは、デジタルコピー機の構成やオプションを含んでいる。オプションインターフェイス１８４は、外部インターフェイスのような増設ハードウエアをデジタルコピー機に対して接続可能にする。クロック／タイマー１８７は、時間と日付の両方のトラックを維持するとともに経過時間を測定するために使用される。
【００２９】
図３の左側には、デジタルコピー機を形作る様々なセクションが示されている。符号２０２は、ソーターであり、デジタルコピー機から出力された物を仕分けするために使用されるアクチュエータやセンサを有している。送受切換器２００は、デジタルコピー機によるデュープレックス（両面印刷）動作の実行を可能にし、従来のセンサやアクチュエータを有している。デジタルコピー機は、多数の用紙を保持するペーパートレイのデジタルコピー機への使用を可能にする大容量のトレイユニット１９８を有している。大容量のトレイユニット１９８は従来のセンサやアクチュエータを有している。
【００３０】
給紙コントローラ１９６は、デジタルコピー機内への給紙動作およびデジタルコピー機を通じた給紙動作を制御するために使用される。スキャナ１９４は、像をデジタルコピー機内へと走査するために使用され、照明やミラー等の従来の走査部材を有している。また、スキャナセンサは、スキャナがホームポジションに位置しているかを決定するためにホームポジションセンサのように使用され、また、走査ランプの適当な動作を確保するためにランプサーミスタのように使用される。プリンタ／イメージャー１９２は、デジタルコピー機から出力された物を印刷するとともに、従来のレーザプリント機構やトナーセンサや複写濃度センサを有している。ヒューザ１９０は、高温ローラを使用して文書にトナーを融合させるために使用され、出口センサや、ヒューザ１９０が過熱しないようにするサーミスタや、オイルセンサを有している。また、オプショナルユニットインターフェイス１８８は、自動原稿送り装置のようなオプション要素や、異なるタイプのソーター／コレーター、デジタルコピー機に付加できる他の要素に接続するために使用される。
【００３１】
図４は、マルチポート通信インターフェイス１６６の詳細を示している。デジタルコピー機は、印刷される情報を送受信するセントロニクスインターフェイス２２０、ケーブルにわたって高速接続を有するケーブルモデムユニット２２１、ＳＣＳＩインターフェイス２２２、電話回線１６８Ａに接続する従来の電話インターフェイス２２４、ＩＳＤＮ回線１６８Ｂに接続するＩＳＤＮインターフェイス２２６、ＲＳ−２３２インターフェイス２２８、ＬＡＮ１７０に接続するＬＡＮインターフェイス２３０を通じて外部装置と通信を行なってもよい。ローカルエリア・ネットワークと電話回線の両方に接続する単一の装置は、Ｍｅｇａｈｅｒｔｚから市販されており、イーサネット・モデムとして知られている。
【００３２】
ＣＰＵや他のマイクロプロセッサや回路は、デジタルコピー機の各センサの状態をモニタするモニタリングプロセスを実行し、また、デジタルコピー機を制御及び操作するために使用されるコードの命令を実行するためにシーケンスプロセスが使用される。また、デジタルコピー機の全体の動作を制御するために中央システム制御プロセスが実行され、デジタルコピー機に接続された外部装置との信頼性のある通信を確保するために通信プロセスが使用される。システム制御プロセスは、図３のＲＯＭ１６４のような定常状態メモリやフラッシュメモリ１７８やディスク１８２のような半定常メモリ内へのデータの記憶をモニタして制御し、あるいは、ＲＡＭ１６２やフラッシュメモリ１７８やディスク１８２のような揮発性メモリもしくは不揮発性メモリ内に記憶される動態データをモニタして制御する。また、定常状態（静態）データは、フラッシュメモリ１７８もしくはディスク１８２のいずれかを含む不揮発性メモリのようなＲＯＭ１６４以外の装置に記憶されてもよい。
【００３３】
以上の説明はデジタルコピー機についてのものであるが、本発明は、他のビジネスオフィス機械や、アナログコピー機、ファクシミリ機、スキャナ、プリンタ、ファクシミリサーバのような装置や、他のビジネスオフィス機械、あるいは、電子レンジ、ＶＣＲ、デジタルカメラ、携帯電話、パームトップコンピュータのようなユーザがインターフェイスで接続する電気製品に等しく適用できる。また、本発明は、コネクション型通信もしくはコネクションレス型通信や電子メールを使用して動作する他のタイプの機械、ガスや水道を含む計量システムや電気計量システム、自動販売機のような機械、あるいは、自動車のように機械的な動作を果たすとともに監視が必要で機能を果たす他の任意の装置を含んでいる。モニタリングする特殊な目的の機械やコンピュータの他に、本発明は、モニタされたり制御されたりする装置である多目的なコンピュータをモニタして制御して診断するために使用することができる。
【００３４】
図５は、異なる装置とサブシステムとがインターネット１０に接続された本発明の他のシステム図を示している。しかしながら、本発明の一部としてこれらの装置やサブシステムを有している必要はないが、図５に示される任意の個々のコンピュータやサブシステムは本発明の一部を成している。また、図１に示される要素が図５に示されるインターネット１０に接続されていてもよい。図５において、イントラネット２５２にはファイアウォール２５０が接続されている。イントラネット２５２に接続されるコンピュータや装置のうちの一つは、内部にデータ２５６を有し或いはデータ２５６が接続されたサービスマシン２５４である。データ２５６はデータベースフォーマット内に記憶されていてもよい。
【００３５】
データ２５６は、履歴、動作（性能）、誤動作（故障）、動作や故障やセットアップに関する統計的な情報およびモニタされる装置の構成部品やオプション装置を含む他の任意の情報を有している。サービスマシン２５４は、データを送信するためにモニタされる装置を必要とする装置やコンピュータとして、あるいは、遠隔制御や診断テストがモニタされる装置に関して行なわれる必要がある装置やコンピュータとして与えられてもよい。サービスマシン２５４は、任意のタイプの装置として与えられても良く、また、好ましくは、多目的コンピュータのようなコンピュータ化された装置を使用して与えられる。
【００３６】
図５の他のサブシステムは、ファイアウォール２５８と、イントラネット２６０と、イントラネット２６０に接続されたプリンタ２６２とを有している。このサブシステムにおいて、イントラネット２６０（あるいは異なるタイプのコンピュータネットワーク）とプリンタ２６２との間には別個の多目的コンピュータが接続されてはいないが、プリンタ２６２によって（同様に、コピー機２８６によって）電子メールメッセージを送受信する機能は、回路やマイクロプロセッサやプリンタ２６２内に設けられ或いはプリンタ２６２に装着される他の任意のタイプのハードウエアによって満たされている。
【００３７】
他のタイプのサブシステムは、インターネットサービスプロバイダ（接続サービス業者）２６４の使用の使用を含んでいる。インターネットサービスプロバイダ２６４は、アメリカ・オンライン、ネットコム、コンピュサーブ、ニフティサーブ、インターネットサービスプロバイダ・エロルス（Ｅｒｏｌｓ）のような既知の営利会社を含む任意のタイプのインターネットサービスプロバイダや任意の他のインターネットサービスプロバイダであってもよい。
【００３８】
このサブシステムにおいて、コンピュータ２６６は、たとえば、電話回線モデム、ケーブルモデム、ＩＳＤＮ（統合デジタル通信網）回線やＡＤＳＬ（非同期デジタル加入者回線）にわたって使用されるモデムのように任意のタイプの配線を使用するモデム、フレームリレー通信を使用するモデム、任意のデジタルもしくはアナログモデム、電波モデムのようなハイヤレスモデム、光ファイバモデム、赤外光波を使用する装置のようなモデムを介して、インターネットサービスプロバイダ２６４に接続されている。また、コンピュータ２６６にはビジネスオフィス装置２６８が接続されている。ビジネスオフィス装置２６８（および図５に示される任意の他の装置）に代わるものとして、デジタルコピー機、任意のタイプの電気製品、セキュリティーシステム、電気のような需要計器、水道やガスの需要計器、ここに示された任意の他の装置のように、異なるタイプの機械がモニタされ制御されてもよい。
【００３９】
また、図５には、ネットワーク２７４に接続されたファイアウォール２７０が示されている。ネットワーク２７４は、たとえばイーサネット・ネットワークのような任意のタイプのコンピュータネットワークとして与えられてもよい。ネットワークを制御するために使用可能なネットワークソフトは、ノーベルやマイクロソフトから市販されているソフトウエアを含む任意の所望のネットワークソフトを含んでいる。望ましい場合には、ネットワーク２７４はイントラネットとして与えられてもよい。ネットワーク２７４に接続されたコンピュータ２７２は、ビジネスオフィス装置２７８から情報を得るために使用されても良く、また、ネットワークに接続される様々な機械に生じる問題を示すレポートやネットワーク２７４に接続される装置の毎月の使用レポートといったようなレポートを形成するために使用されてもよい。
【００４０】
この実施例においては、ビジネスオフィス装置２７８とネットワーク２７４との間にコンピュータ２７６が接続されている。このコンピュータは、ネットワークから電子メール通信を受けるとともに、適当なコマンドやデータもしくは任意の他の情報をビジネスオフィス装置２７８に転送する。ビジネスオフィス装置２７８がコンピュータ２７６に接続されていると述べてきたが、ビジネスオフィス装置とコンピュータとの間で配線接続が行なわれる必要はなく、ビジネスオフィス装置２７８とコンピュータ２７６との間の通信は、電波接続や赤外線接続のような光接続あるいは光ファイバの使用を介したものを含む配線方法もしくは無線方法を使用して行なわれてもよい。
【００４１】
同様に、図５に示された様々なネットワークやイントラネットのそれぞれは、電波ネットワークのようなワイヤレスネットワークの構築を通じたものを含む任意の所望の方法を使用して構築されてもよい。ここに述べられているワイヤレス通信は、拡散コードを使用する技術を含むスペクトラム拡散技術や、ワールドワイドウェブサイトｗｗｗ．ｂｌｕｅｔｏｏｔｈ．ｃｏｍに記述され、かつ参照することによって本願に組み込まれるブルートゥース明細に開示されている度数ホッピングワイヤレスネットワークのような度数ホッピング技術を使用して行われてもよい。
【００４２】
図５に示される他のサブシステムは、ファイアウォール２８０と、イントラネット２８４と、イントラネット２８４に接続されたコンピュータ２８２と、コピー機２８６とを有している。コンピュータ２８２は、レポートを形成するために使用されても良く、また、診断手続きもしくは制御手続きを要求するために使用されてもよい。これらの診断・制御手続きは、コピー機２８６や図５に示される他の任意の装置もしくは図５とともに使用される他の任意の装置に関して行なわれてもよい。図５には複数のファイアウォールが示されているが、複数のファイアウォールがただのオプション装置であることが好ましく、したがって、望ましい場合には、本発明はファイアウォールを使用しないで動作されてもよい。
【００４３】
図６は、アプリケーションユニット３００を示している。アプリケーションユニット３００は構成要素３０２，３０４，３０６，３０８，３１０，３１２，３１４，３１６，３１８を有する一般的な電子メール交換システムに接続されている。これらの構成要素は、従来の方法で実現されても良く、また、後述するスティーブンスの図２８．１から採用されている。アプリケーションユニット３００はここに述べられた任意の装置であっても良く、ユーザ端末３０２は図５に示されたコンピュータ２７６のような図示された任意のコンピュータに対応していてもよい。図６には送信者としてユーザ端末３０２が示されているが、図６において送受信機能が逆になっていてもよい。
【００４４】
また、望ましい場合には、ユーザ端末はなくてもよい。ユーザ端末３０２にはユーザエージェント３０４が接続されている。ユニックスに関する一般的なユーザエージェントは、ＭＨ、バークレイメイル、Ｅｌｍ、Ｍｕｓｈを含んでいる。ユーザエージェントは、送られる電子メールメッセージを形成し、また、望ましい場合には、これらのメッセージをキュー３０６に送られるようにする。送られるメールは、メッセージトランスファエージェント（ＭＴＡ）３０８に転送される。ユニックスシステムに共通のＭＴＡはセンドメールである。
【００４５】
一般に、メッセージトランスファエージェント３０８，３１２は、ＴＣＰ（伝送通信プロトコル）接続やＴＣＰ／ＩＰ（インターネットプロトコル）接続もしくはプロトコルを使用して通信のやりとりを行なう。メッセージトランスファエージェント３０８，３１２間の通信は、インターネットにわたって行なわれてもよいが、ローカルエリア・ネットワークや広域ネットワークやイントラネットのような任意のネットワーク接続を含む任意のタイプの接続にわたって行なわれてもよい。また、メッセージトランスファエージェント３０８，３１２間で任意の所望の通信が使用されてもよい。
【００４６】
メッセージトランスファエージェント３１２からの電子メールメッセージは、ユーザのメールボックス３１４に記憶されてユーザエージェント３１６に伝送され、最終的に、受信端末として機能するユーザ端末３１８に伝送される。
【００４７】
ＴＣＰはコネクション型伝送を提供する。しかしながら、通常、送信端末３０２と受信端末３１８との間で直接的な接続は起きからたがって、二つのユーザ間もしくは二つの端末間で考えると、電子メールメッセージの伝送はコネクションレス型通信と見なされてもよい。しかし、ＭＴＡ間の伝送を考慮すると、この通信は、通常、コネクション型通信である。
【００４８】
インターネットは多数の人々や組織によってアクセス可能なネットワークであるため、インターネットは安全であると見なされていからたがって、インターネットにわたって送信されたメッセージは、このメッセージを秘密に維持するために暗号化されなければならない。暗号化メカニズムは、既知であり、本発明において使用できるように市販されている。たとえば、Ｃライブラリ関数や暗号は、ユニックスオペレーティングシステムとの使用のため、サンマイクロコンピュータから市販されており、また、暗号化ルーチンや復号化ルーチンは、既知であり、本発明において使用できるように市販されている。
【００４９】
図６の一般的な構造に代わるものとして、ユーザ端末およびメッセージトランスファエージェントとして機能する単一のコンピュータを使用してもよい。図７に示されるように、アプリケーションユニット３００は、メッセージトランスファエージェント３０８を有するコンピュータ３０１に接続されている。望ましい場合には、ユーザエージェント３０４や送信メールのキュー３０６を含む図６の送信側の他の構成要素が、図７のコンピュータ３０１内に設けられていてもよい。
【００５０】
さらに他の構造が図８に示されている。この構造において、メッセージトランスファエージェント３０８はアプリケーションユニット３００の一部として形成されている。また、メッセージトランスファエージェント３０８はＴＣＰ接続３１０によってメッセージトランスファエージェント３１２に接続されている。図８のこの実施例は、アプリケーションユニット３００がＴＣＰ接続３１０に接続されて電子メール機能を有している場合を示している。図８の、この実施例の一般的な例は、アプリケーションユニット３００がＲＦＣ２３０５（インターネットメールを使用するファクシミリの簡単な形態）の電子メール機能をもつファクシミリ機である。
【００５１】
図９は、メールを送信する他の実施を示しており、スティーブンスの図２８．３に基づいている。図９は両端部にリレーシステムを有する電子メールシステムを示している。図９の配置によって、一つの組織の一つのシステムはメイルハブ（ｍａｉｌ  ｈｕｂ）として働くことができる。図９において、二つのユーザエージェント３０４，３１６間には４つのＭＴＡが接続されている。これらのＭＴＡは、ローカルＭＴＡ３２２と、リレーＭＴＡ３２８と、リレーＭＴＡ３３２と、ローカルＭＴＡ３４０とを含んでいる。メールメッセージのために使用される最も一般的なプロトコルはＳＭＴＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）である。このＳＭＴＰを本発明に使用してもよいが、任意の所望のメイルプロトコルを使用してもよい。
【００５２】
図９において、３２０は送信ホストを示している。この送信ホストは、ユーザ端末３０２と、ユーザエージェント３０４と、ローカルＭＴＡ３２２とを有している。アプリケーションユニット３００は、送信ホスト３２０に接続され、あるいは、送信ホスト３２０内に含まれている。他のケースとして、ホスト機能がアプリケーションユニット３００内に構築される一つの機械内にアプリケーションユニット３００および送信ホスト３２０を設けることもできる。他のローカルＭＴＡはローカルＭＴＡ３２４，３２６を含んでいる。送受信されるメールはリレーＭＴＡ３２８のメールキュー３３０内に入れられてもよい。メッセージはＴＣＰ接続３１０を通じて伝送される。この場合、ＴＣＰ接続３１０は、たとえばインターネットであっても良く、あるいは、任意の他のタイプのネットワークもしくは接続であってもよい。
【００５３】
送信されたメッセージは、リレーＭＴＡ３３２によって受けられ、望ましい場合には、メイルキュー３３４内に記憶される。その後、メールは、受信ホスト３４２のローカルＭＴＡ３４０に転送される。メールは、一つ以上のユーザメイルボックス３１４内に置かれても良く、その後、ユーザエージェント３１６に転送され、最終的にユーザ端末３１８に転送される。望ましい場合には、ユーザは端末にいる必要はなく、メールはユーザのやりとりなく直接に端末に転送されてもよい。受信側の他のローカルＭＴＡはＭＴＡ３３８、ローカルＭＴＡ３３６を含んでいる。これらのＭＴＡは、それ自身のメールボックスと、ユーザエージェントと端末とを有している。
【００５４】
図５のコンピュータ２６６，２７６を含む本発明によって使用される様々なコンピュータは、図１０に示されるように実施されてもよい。また、好ましくは図５のサービスマシン２５４やコンピュータ２７２，２８２を含む本発明によって使用される任意の他のコンピュータも図１０に示されるコンピュータと同様な形態で実施されてもよい。しかしながら、図１０に示される全ての要素がこれらのコンピュータのそれぞれに必要とされるわけではない。
【００５５】
図１０において、コンピュータ３６０はＣＰＵ３６２を有しており、このＣＰＵ３６２は、たとえばインテルやモトローラや日立やＮＥＣといった会社から市販されているマイクロプロセッサを含む任意のタイプのプロセッサとして与えられてもよい。ＲＡＭ３６４のようなワーキングメモリや無線装置３６８と通信を行なうワイヤレスインターフェイス３６６が設けられている。インターフェイス３６６と装置３６８との間の通信は、たとえば電波や光波のような任意の無線媒体を使用してもよい。電波は、符号分割多元接続（ＣＤＡ）通信のようなスペクトラム拡散技術を使用して、あるいは、ブルートゥース明細（規格）に開示されているような度数ホッピング技術を使用して実施されてもよい。
【００５６】
ＲＯＭ３７０およびフラッシュメモリ３７１が設けられているが、ＥＰＲＯＭやＥＥＰＲＯＭのような任意の他のタイプの不揮発性メモリがフラッシュメモリ３７１に加えて或いはフラッシュメモリ３７１に代えて使用されてもよい。入力コントローラ３７２はこれに接続されたキーボード３７４とマウス３７６とを有している。シリアルインターフェイス３７８がシリアルデバイス３８０に接続されている。また、パラレルインターフェイス３８２がパラレルデバイス３８４に接続され、ユニバーサル・シリアルバス・インターフェイス３８６がユニバーサル・シリアルバス・デバイス３８８に接続され、また、一般にファイアワイヤデバイスと称されているＩＥＥＥ１３９４デバイス４００がＩＥＥＥ１３９４インターフェイス３９８に接続されている。コンピュータ３６０の様々な要素はシステムバス３９０によって接続されている。ディスクコントローラ３９６はフロッピディスクドライブ３９４とハードディスクドライブ３９２とに接続されている。
【００５７】
通信コントローラ４０６によって、コンピュータ３６０は、他のコンピュータと通信を行なうことができるとともに、たとえば電話回線４０２やネットワーク４０４にわたって電子メールメッセージを送ることができる。Ｉ／Ｏ（入力／出力）コントローラ４０８は、たとえばＳＣＳＩ（Ｓｍａｌｌ  ＣｏｍｐｕｔｅｒＳｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）バスを使用して、プリンタ４１０およびハードディスク４１２に接続されている。また、ディスプレイコントローラ４１６がＣＲＴ（ブラウン管）４１４に接続されているが、液晶ディスプレイ、発光ダイオードディスプレイ、プラズマディスプレイ等の任意の他のタイプのディスプレイが使用されてもよい。
【００５８】
本発明の一つの特徴は、アプリケーションユニットのターゲットアプリケーションのユーザによる使用をモニタすることである。この場合のアプリケーションユニットなる用語は、ユーザがやりとりして制御するシステムのことであり、ターゲットアプリケーションとは、ユーザによって制御されるアプリケーションユニットの提供物のことである。たとえば、アプリケーションユニットは一般にコンピュータであっても良く、また、ターゲットアプリケーションは、たとえば、ワードプロセッサや、たとえばコンピュータスクリーン上でポインタを移動させることにより、またソフトウエアプログラムに所定の機能を行なわせる所定のコマンドアイコンをクリックすることによってユーザが操作するコンピュータのランニングであってもよい。
【００５９】
このような意味で、本発明のアプリケーションユニットは、ソフトウエアプログラムを走らせる図１の任意のワークステーション１７，１８，２０，２２，５６，６２，６８，７４，４２やソフトウエアプログラムを走らせる図７のコンピュータ３０１等を引き合いに出すことができる。また、アプリケーションユニットとしては、図１および図２のデジタルコピー機／プリンタ２４、ファクシミリ機２８、プリンタ３２のいずれかのような画像形成装置を引き合いに出すこともできる。この例において、これらの装置アプリケーシュンユニットのそれぞれは、ユーザがやりとりをして装置アプリケーションユニットを制御するために使用する操作パネル１７４（図３参照）のようなユーザインターフェイスを有している。
【００６０】
本発明は、そのような操作パネル上でユーザが選択する制御をモニタすることができる。さらなる例として、アプリケーションユニットは、操作パネルを有する電子レンジのような電気製品であってもよい。また、アプリケーションユニットとしては、ユーザがやりとりをするソフトウエアを含む他の任意の装置を引き合いに出すこともできる。この場合のターゲットアプリケーションは、ユーザがやりとりを行なうソフトウエアの一つの特徴だけを指してもよい。
【００６１】
本発明の一つの特徴は、アプリケーションユニットのそのようなターゲットアプリケーションのユーザによる使用をモニタすることであり、また、モニタされた使用のデータを有効に通信することである。一般に、このようなデータは、図６や図７のコンピュータ３０１あるいは図８のアプリケーションユニット３００による電子メールによって伝送される。アプリケーションユニットのターゲットアプリケーションのユーザによる使用のこのデータは、その後、たとえばソフトウエア開発の向上や、画像形成装置のような装置の使用をモニタする場合、電気製品やソフトウエアに関するユーザの問題の発見、頻繁に使用されるアプリケーションユニットの特徴の発見など、様々に利用することができる。
【００６２】
図１１は、本発明の様々な要素を示している。特に、図１１は、ユーザインターフェイス５１０を持つターゲットアプリケーション５０５を有するアプリケーションユニット３００を示している。このユーザインターフェイス５１０は、ユーザがターゲットアプリケーション５０５を制御するためのインターフェイスである。前述したように、一つの一般的な例において、ターゲットアプリケーション５０５は、たとえばこの明細書の図１に示されたワークステーション１７，１８，２０，２２のうちの一つのソフトウエアプログラムランニングであってもよい。この場合、ユーザインターフェイス５１０は、これらのワークステーションのうちの一つのモニタのディスプレイであってもよい。このようなターゲットアプリケーションの例が図１２にさらに詳細に示されている。
【００６３】
図１２は、ワークステーション１７，１８，２０，２２のうちの一つのモニタ６００を示している。ターゲットアプリケーションのこの例においては、複数のファンクションキー６０５がモニタ６００上に表示され、ユーザは、たとえばマウスを用いてポインタの位置を変更することによって、またそのようなファンクションキーの一つをクリックすることによって、これらのファンクションキーにアクセスすることができる。他の例として、モニタ６００がタッチパッドである場合には、ユーザはファンクションキー６０５のうちの一つをタッチすることによってソフトウエアアプリケーションユニットを制御することができる。この場合、本発明は、ユーザがファンクションキー６０５のうちの一つをクリックもしくはタッチする毎にモニタするとともに、その後の通信に関するユーザの使用等のデータを記録する。
【００６４】
他の例として、前述したように、アプリケーションユニット３００は、図１に示されるデジタルコピー機／プリンタ２６、ファクシミリ機２８、プリンタ３２のような画像形成装置であってもよい。この場合、ユーザインターフェイス５１０は、画像形成装置を制御するためにユーザが操作するタッチスクリーンや複数のキーを有する操作パネル（たとえば図３の操作パネル１７４）の形態を成していてもよい。アプリケーションユニット３００がデジタルコピー機／プリンタ２６やファクシミリ機２８やプリンタ３２の形態を成す場合のユーザインターフェイス５１０の特別の例が図１３に示されている。この場合、本発明は、ユーザが制御ボタンのうちの一つを押す度にモニタするとともに、その後の通信に関するユーザの使用等のデータを記録する。
【００６５】
図１３は、画像形成装置のためのユーザインターフェイスの例を詳細に示している。図１３は、そのようなユーザインターフェイス７００を示しており、ユーザインターフェイス７００は一つの例として図３の操作パネルに対応している。図１３に示されるように、そのような操作パネル７００はタッチスクリーン７０５を有しており、操作者がタッチスクリーン７０５の異なる部分をタッチすることによって選択できる様々なコマンドがタッチスクリーン７０５上に現れてもよい。また、操作パネル７００は、１０個のキーパッド７１０と様々な他の制御ボタン７１５とを有していてもよい。画像形成装置の場合、たとえば、用紙サイズを選択するために、倍率を変更するために、所望画像の暗度を変更するために、制御ボタン７１５がコマンド（命令）されてもよい。
【００６６】
図１１のアプリケーションユニット３００が画像形成装置であり、かつユーザインターフェイス５１０が図１３に示されるように操作パネル７００である場合、本発明は、図１３に示されるコマンドのユーザによる選択をモニタできる。図１３に示される操作パネル７００を変更して、電子レンジ、デジタルカメラ、携帯電話、パームトップコンピュータ等のようなユーザがやりとりを行なう電気製品のための操作パネルとしてもよい。
【００６７】
図１２および図１３は、本発明が適用可能な図１１のアプリケーションユニット３００およびユーザインターフェイス５１０の例を示している。様々なタイプのユーザインターフェイスを有する様々なタイプのアプリケーションユニットに本発明が方向付けられていることは当業者であれば容易に分かるはずである。基本的に、本発明は、ユーザインターフェイスを有し、かつユーザがユーザインターフェイスをどのように使用しているかをモニタすることが望ましい任意の装置に適用可能である。
【００６８】
図１１に示されるように、本発明は、さらに、モニタリング・ロギングブロック５１５と送信ブロック５２０とを有している。モニタリング・ロギングブロック５１５は、ユーザによるユーザインターフェイス５１０の使用をモニタするとともに、そのようにモニタされた使用のデータを記録もしくはログする。指定された時間に、ユーザによるユーザインターフェイス５１０の使用のログデータが送信ブロック５２０に送信される。その後、送信ブロック５２０はモニタされた使用データを指定された部分に通信する。モニタリング・ロギングブロック５１５は、アプリケーションユニット３００を有する装置内もしくは他のシステム制御要素内で実施することができる。送信ブロックは、図８のアプリケーションユニットを有する装置内もしくはアプリケーションユニットが取り付けられる図７のコンピュータ３０１内で実施することができる。また、本発明は、コンピュータが読むことができる媒体上に記憶されるコンピュータ制御コードの形態を成すことも可能である。
【００６９】
図１４は、アプリケーションユニットの部分の全体のシステム図を示している。図１６から図２２は、図１１に示されたモニタリング・ロギングブロック５１５および送信ブロック５２０内で実行される操作を示している。特に、図１２から図１７には、１９９９年にアディソン・ウェズリーから出版されたＢｏｏｃｈらによる" Ｔｈｅ  Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ  Ｕｓｅｒ  Ｇｕｉｄｅ" に記載されているようなユニファイド・モデル言語を使用するオブジェクト指向フォーマットにおける操作とシステムとが示されている。
【００７０】
図１２Ａにおいて、オブジェクトＭＢ１３００はモニタされるターゲットアプリケーションを示している。図１２Ａの破線ブロックはモニタ機能を担うオブジェクトを含んでおり、したがって、全体としてモニタリングブロックオブジェクト１２００を示している。ＣモニタリングＩＦオブジェクト１３０５はターゲットアプリケーションＭＢ１３００のモニタリング機能を実行する。Ｃ使用ログオブジェクト１３１５は、ＣモニタリングＩＦオブジェクト１３０５によって得られるモニタデータをロギングする機能を有する。Ｃ使用ログオブジェクト１３１５は、システム情報を得るためにシステムオブジェクト１３２５とやりとりを行ない、また、ログデータのための記憶装置であるＣ使用データオブジェクト１３３０とやりとりを行なう。
【００７１】
使用データ送信管理オブジェクト１３１０はＣモニタリングＩＦオブジェクト１３０５とやりとりを行なう。この使用データ送信管理オブジェクト１３１０は、ＣモニタリングＩＦオブジェクト１３０５によってモニタされる際に、使用者によるターゲットアプリケーションＭＢ１３００の使用に関するモニタデータの送信を制御する。この使用データ送信管理オブジェクト１３１０は、送信されるデータを修正可能なＣ使用情報オブジェクト１７３０と、送信されるデータを記憶可能なログファイルオブジェクト１６０５と、ログファイルオブジェクト１６０５へのデータをエンコードし、かつログファイルオブジェクト１６０５からのデータをデコードする使用データエンコーダ・デコーダオブジェクト１６１０とそれぞれやりとりを行なう。また、使用データ送信管理オブジェクト１３１０は、送信されるデータを送信ブロックオブジェクト１６００に与える。
【００７２】
図１５は、図１４のシステム内で実行される全体の操作を示している。特に、図１５に示されるように、モニタリングブロックオブジェクト１２００は、それ全体として、送信ブロックオブジェクト１６００に対して送信使用データ機能を呼び出すとともに、Ｃ使用情報を送信ブロックオブジェクト１６００に与える。Ｃ使用情報は、モニタされたターゲットアプリケーション５０５の使用情報である。この操作指令によって、送信ブロックオブジェクト１６００は、モニタリングブロックオブジェクト１２００から与えられたＣ使用情報を送る。
【００７３】
図１４および図１５に示された様々なオブジェクトによって行なわれる操作について図１６から図２２を参照しながら詳細に説明する。図１６から図２２において、様々な機能が数字とコロンとで表されている。この符号（名称）は、様々な操作が平行して、また時間を異にして行なわれるため、様々な操作の順序を示している。
【００７４】
図１６は、本発明において実行されるスタートモニタリング制御を示している。図１６に示されるように、ターゲットアプリケーションＭＢが始動すると、ＭＢオブジェクト１３００はＣモニタリングＩＦオブジェクト１３０５のスタートモニタリング機能を呼び出す。この操作は、ユーザインターフェイス５１０のユーザによる使用に対応するデータのロギングが開始することを示している。その後、ＣモニタリングＩＦオブジェクト１３０５は使用データ送信管理オブジェクト１３１０のトリガ情報セット機能を呼び出す。この操作によって、ログデータが送信ブロック５２０によって何時送信されるべきかを示すトリガ情報がセットされる。このトリガ情報がどのようにセットされるかについて、図１７を参照しながら、以下、詳細に説明する。
【００７５】
図１６に示されるように、ＣモニタリングＩＦオブジェクト１３０５は、さらに、Ｃ使用ログオブジェクト１３１５からログスタートデータ機能を呼び出す。この操作は、使用データ送信管理オブジェクト１３１０のトリガ情報セット機能の呼び出しと平行して或いはトリガ情報セット機能の呼び出し後に実行することができる。
【００７６】
Ｃ使用ログオブジェクト１３１５は、その後、Ｃ時間オブジェクト１３２０の現時間取得機能を呼び出す。その後、Ｃ時間オブジェクト１３２０はＣ時間データをＣ使用ログオブジェクト１３１５に戻す。戻されたＣ時間データは、モニタリングの開始時間のデータである。したがって、この操作によって、開始時間を示すデータがＣ使用ログオブジェクト１３１５に送られ、結果として、モニタされるターゲットアプリケーション５０５のユーザインターフェイス５１０のユーザによる使用開始時間を決定することができる。
【００７７】
Ｃ使用ログオブジェクト１３１５は、その後、Ｃ使用データオブジェクト１３３０の開始時間セット機能を呼び出すとともに、開始時間のＣ時間データをＣ使用データオブジェクト１３３０に送る。つぎの操作で、Ｃ使用ログオブジェクト１３１５はシステムオブジェクト１３２５の累積使用取得機能を呼び出し、システムオブジェクト１３２５はＵＩＮＴデータをＣ使用ログオブジェクト１３１５に戻す。この操作で、Ｃ使用ログオブジェクト１３１５は、モニタされるターゲットアプリケーションのユーザによる使用回数をシステムオブジェクト１３２５から得る。そして、システムオブジェクト１３２５はタイプＵＩＮＴの整数値を戻す。したがって、この操作で、ターゲットアプリケーション５０５が複数回使用されれば、この複数回の使用を反映させるためにＣ使用ログオブジェクト１３１５が書き換えられる。
【００７８】
その後、Ｃ使用ログオブジェクト１３１５は、累積使用セット機能を呼び出し、値を増加させた後にＵＩＮＴデータをＣ使用データオブジェクト１３３０に送る。また、Ｃ使用ログオブジェクト１３１５はシステムオブジェクト１３２５のシステムＩＤ取得機能を呼び出し、その後、システムオブジェクト１３２５はシステムの識別子を示すＣ文字列データをＣ使用ログオブジェクト１３１５に戻す。システムの識別子は、ターゲットアプリケーション５０５がランニングされている環境を示している。この識別子の目的は、異なるシステムからの使用データを整理することである。また、Ｃ使用ログオブジェクト１３１５は、Ｃ使用データオブジェクト１３３０のシステムＩＤセット機能を呼び出し、システムの識別子を示すＣ文字列データをＣ使用データオブジェクト１３３０に送る。
【００７９】
図１７は、トリガ形式をセットする特定の制御動作を示している。トリガ形式は、モニタされるユーザインターフェイス５１０の使用のログデータが送信ブロック５２０から何時送られたのかを示す。特に、前述したように、本発明においては、ユーザインターフェイス５１０のユーザによる使用をモニタできる。この場合、いろいろなときに、モニタされたデータを送信ブロック５２０によって送ることができる。一つの操作は、ユーザがターゲットアプリケーション５０５を終了する度に、モニタされた使用データを送信ブロック５２０によって送信することである。
【００８０】
たとえば、ターゲットアプリケーション５０５がユーザがランニングするソフトウエアである場合、ユーザが終了ファンクションをクリックもしくはタッチする度に、モニタされたログデータが送信ブロック５２０によって送信される。また、これに代えて、ユーザは、ターゲットアプリケーション５０５を所定のセッション数使用した後にだけ、モニタされた使用データが送信ブロック５２０から送信されるようにセッティングすることができる。たとえば、ユーザがターゲットアプリケーション５０５を５回使用した後だけ送信ブロック５２０からモニタされた使用データが送信されるように、ユーザが設定でき、あるいは、初期設定動作によって設定することができる。図１７は、トリガ機能をセットする制御動作を示している。
【００８１】
図１７において、ＭＢオブジェクト１３００はＣモニタリングＩＦオブジェクト１３０５のトリガ形式セット送信機能を呼び出し、また、続いて、ＣモニタリングＩＦオブジェクト１３０５は使用データ送信管理オブジェクト１３１０のトリガ形式セット送信機能を呼び出す。その後、使用データ送信管理オブジェクト１３１０は、システムオブジェクト１３２５のトリガ形式セット送信機能を呼び出し、システムオブジェクト１３２５にＵＩＮＴデータを与える。この場合のＵＩＮＴデータは、ターゲットアプリケーション５０５を所定のセッション数使用した後にモニタされた使用データを送信ブロック５２０に送信するためのトリガ形式を示すデータである。本発明のこれらのステップによって行なわれるこの操作によりトリガ形式がセットされ、その結果、ユーザがターゲットアプリケーション５０５を所定のセッション数使用した後に、トリガが送信ブロック５２０に送られて、モニタされたログデータが指定された場所に送られる。
【００８２】
前述したように、本発明の、さらなる操作として、送信ブロック５２０にトリガを与える前に実行されるセッション数をＭＢオブジェクト１３００によって設定することができ、あるいは、初期設定によって設定してもよい。一例として、ＭＢオブジェクト１３００は、ターゲットアプリケーションを５回使用する度毎にモニタされたログデータを送信するような設定を与えることができる。
【００８３】
この操作において、複数のセッション後にトリガ形式が送られる前述した操作が実行された後、ＭＢオブジェクト１３００はさらにＣモニタリングＩＦオブジェクト１３０５のセッション数セット機能を呼び出し、続いて、ＣモニタリングＩＦオブジェクト１３０５が使用データ送信管理オブジェクト１３１０のセッション数セット機能を呼び出して使用データ送信管理オブジェクト１３１０にＵＩＮＴデータを送り、続いて、使用データ送信管理オブジェクト１３１０がシステムオブジェクト１３２５のセッション数セット機能を呼び出してシステムオブジェクト１３２５にＵＩＮＴデータを送る。この場合、ＵＩＮＴデータは、送信ブロック５２０にトリガを送る前に実行されるセッション数の初期設定もしくはＭＢオブジェクトの設定を示している。したがって、システムオブジェクト１３２５は、トリガを送る前にセッションが何回実行されなければならないかを示すＵＩＮＴデータを記憶する。
【００８４】
図１８および図１９は、ユーザがユーザインターフェイス５１０を使用した際に呼び出されるターゲットアプリケーションのモニタリング機能の流れを示している。すなわち、これらの図は、たとえばユーザがターゲットアプリケーションとしてのソフトウエアアプリケーション内のコマンドを「クリック」した際あるいはユーザが電気製品や画像形成装置等の操作パネルのボタンを押した際に本発明において実行される実際のモニタリング動作およびロギング操作を示している。
【００８５】
図１８において、モニタされるターゲットアプリケーション５０５のユーザインターフェイス５１０からユーザが特定のコマンドを選択すると、ＭＢオブジェクト１３００は、ＣモニタリングＩＦオブジェクト１３０５のコマンド使用機能を呼び出すとともに、ユーザによって選択されたユーザインターフェイス５１０のコマンドもしくは機能の名前を示すＣ文字列データをＣモニタリングＩＦオブジェクト１３０５に送る。その後、ＣモニタリングＩＦオブジェクト１３０５は、Ｃ使用ログオブジェクト１３１５のコマンド使用ログ機能を呼び出すとともに、Ｃ文字列データをＣ使用ログオブジェクト１３１５に送る。
【００８６】
この機能は、ユーザによって選択されたユーザインターフェイス５１０のコマンドもしくは機能のデータをログするようにＣ使用ログオブジェクト１３１５に指示する。その後、Ｃ使用ログオブジェクト１３１５は、Ｃ使用データオブジェクト１３３０にＣ文字列データを送るとともに、Ｃ使用データオブジェクト１３３０のコマンド使用アップデート機能を呼び出す。その後、Ｃ使用データオブジェクト１３３０は、選択されてモニタされたコマンドもしくは機能の名前が存在しない場合、すなわち、名前が予め選択されずその後に記憶される場合には、その度数をもって名前を記憶し、あるいは、名前が存在する場合、すなわち、名前が予め選択されその後に記憶される場合には、名前に対応する度数を増加する。
【００８７】
図１９のコマンド使用の流れは、Ｃ使用ログオブジェクト１３１５がＣ時間オブジェクト１３２０の現時間取得機能を呼び出し、それに応じて、Ｃ時間オブジェクト１３２０が現在の時間を示すＣ時間データをＣ使用ログオブジェクト１３１５に送る点を除き、図１８のそれと同じである。その後、Ｃ時間データは、Ｃ使用データオブジェクト１３３０に送られる。図１９に示される動作においては、モニタされるターゲットアプリケーション５０５のユーザインターフェイス５１０のコマンドがユーザによって選択されることが記録されるだけでなく、そのようなコマンドが選択される時間も記録される。
【００８８】
すなわち、図１８の操作において、記録されるデータは、ユーザによって選択されたユーザインターフェイス５１０のコマンドデータだけであるが、図１９のコマンド使用動作は、それに加えて、ユーザインターフェイス５１０のコマンドがユーザによって選択された時間のデータも記録する。
【００８９】
図２０および図２１は、ユーザインターフェイス５１０のユーザによる使用のモニタリングを停止する動作を示している。ユーザがターゲットアプリケーション５０５を終了したときに、ユーザインターフェイス５１０のユーザによる使用のモニタリングを停止することができる。たとえば、ターゲットアプリケーション５０５がワークステーション上でランニングするソフトウエアである場合、ユーザが実行されているプログラムを終了したときにモニタリングを停止することができる。ターゲットアプリケーション５０５が電気製品や画像形成装置等の操作パネルである場合、コピー機のスタートボタンのような特定のアイコン／ボタンが押されたときにモニタリングを停止することができる。
【００９０】
また、所定時間後、あるいは、ユーザがターゲットアプリケーションを所定時間使用しなくなった後などに、モニタリングを停止することができる。また、ターゲットアプリケーション５０５がコピー機やファクシミリ機やプリンタやスキャナのような画像形成装置である場合、あるいは、電子レンジ、ＶＣＲ、デジタルカメラ、携帯電話、パームトップコンピュータのような電気製品である場合、ユーザインターフェイス５１０のユーザによる使用のモニタリングを停止するための同様な状態が実行され得る。同様に、そのような状況において、モニタリングは、ユーザが終了コマンドを入力した時、所定時間後、あるいは、ユーザがターゲットアプリケーションを所定時間使用しなくなった後などに、停止することができる。
【００９１】
図２０において、ユーザがＭＢオブジェクト１３００を終了すると、ＭＢオブジェクト１３００は、最初に、ＣモニタリングＩＦオブジェクト１３０５のモニタリング停止機能を呼び出す。その後、ＣモニタリングＩＦオブジェクト１３０５はＣ使用ログオブジェクト１３１５のログデータ停止機能を呼び出す。これにより、Ｃ使用ログオブジェクト１３１５は、ユーザによるユーザインターフェイス５１０の使用データの記録を停止する。その後、Ｃ使用ログオブジェクト１３１５はＣ時間オブジェクト１３２０の現時間取得機能を呼び出し、その後、Ｃ時間オブジェクト１３２０は現在の時間を示すＣ時間データをＣ使用ログオブジェクト１３１５に戻す。この現在の時間は、ユーザによるインターフェイス５１０の使用のモニタリングが停止された時間を示している。
【００９２】
その後、Ｃ使用ログオブジェクト１３１５はＣ使用データオブジェクト１３３０の開始時間取得機能を呼び出し、その後、Ｃ使用データオブジェクト１３３０はモニタが開始された記憶時間を示すＣ時間データを戻す。これらの動作後、Ｃ使用ログオブジェクト１３１５は、モニタリングの開始時間のデータとモニタリングが停止した現在の時間とを有している。これにより、Ｃ使用ログオブジェクト１３１５は、ユーザインターフェイス５１０のユーザによる使用がモニタされている継続時間を決定することができる。その後、Ｃ使用ログオブジェクト１３１５は、Ｃ使用データオブジェクト１３３０の継続時間セット機能を呼び出し、この継続時間セット機能とともにＵＩＮＴデータを送る。
【００９３】
すなわち、この場合、ＵＩＮＴデータは、ユーザによるユーザインターフェイス５１０の使用がモニタされている継続時間を示している。また、Ｃ使用ログオブジェクト１３１５は、Ｃ使用データオブジェクト１３３０の累積使用取得機能を呼び出し、その後、Ｃ使用データオブジェクト１３３０は要求されたデータをＵＩＮＴデータとして戻す。その後、Ｃ使用ログオブジェクト１３１５は、このＵＩＮＴデータをシステムオブジェクト１３２５に送るとともに、システムオブジェクト１３２５の累積使用セット機能を呼び出す。これにより、つぎにモニタリング動作が実行されるときに、モニタリングセッションの実行回数の値が現在の実行回数よりも一つ大きくなる。
【００９４】
また、ＣモニタリングＩＦオブジェクト１３０５はＣ使用ログオブジェクト１３１５の使用データ取得機能を呼び出し、続いて、Ｃ使用ログオブジェクト１３１５はＣ使用データをＣモニタリングＩＦオブジェクト１３０５に戻す。このデータは、システムＩＤ、累積使用、開始時間、使用継続時間、コマンド、度数を含む記憶された全てのモニタリングデータを含んでいる。その後、ＣモニタリングＩＦオブジェクト１３０５は、使用データ送信管理オブジェクト１３１０の使用データトリガ送信機能を呼び出すとともにＣ使用データを送る。
【００９５】
その後、使用データ送信管理オブジェクト１３１０はシステムオブジェクト１３２５のトリガ形式取得送信機能を呼び出し、続いて、システムオブジェクト１３２５は使用データ送信管理オブジェクト１３１０にＥＸＩＴデータを戻す。戻されたＥＸＩＴ値は、ユーザがターゲットアプリケーションを終了する度にモニタされたデータが送信ブロックオブジェクト１６００に送られることを意味している。その後、使用データ送信管理オブジェクト１３１０は、送信ブロックオブジェクト１６００の使用データ送信機能を通じて、ユーザによるユーザインターフェイス５１０の使用データの全てを示すＣ使用情報を送る。その後、送信ブロックオブジェクト１６００は、指定された場所にデータを送信する機能を実行し、その後、使用データ送信管理オブジェクト１３１０に確認信号ＹＥＳを戻す。
【００９６】
図２０に示される動作は、ユーザがターゲットアプリケーション５０５を終了した際のトリガリングに基づいて使用データが送られる動作に対応している。
【００９７】
図２１に示されるモニタリング停止動作は、この動作において所定回数のセッション後に使用データが送信ブロックオブジェクト１６００によって送られる点を除き、図２０に示されるそれと同じである。前述したように、本発明の一つの特徴として、モニタされた使用データは、ユーザがターゲットアプリケーション５０５を使用する所定のセッション回数後に、電子メールによって送ることができる。図２１に示される動作は、そのような所定のセッション回数後に使用データを送ることに対応している。図２１において実行される動作１から９は図２０において実行されたと同様であるため、ここでは、これらを重複して繰り返し説明しない。図２１に示されるモニタリング停止動作においては、システムオブジェクト１３２５のトリガ形式取得送信機能を呼び出してＳＳＥＳＳＩＯＮを戻した後に、使用データ送信管理オブジェクト１３１０がシステムオブジェクト１３２５のセッション回数取得機能を呼び出す。
【００９８】
この動作により、この動作中にモニタされたデータを送信する前に終了したセッション回数を示すデータであってユーザによって予めセットされたデータが得られる。図１７にしめされるように、セッション回数はシステムオブジェクト１３２５内でセットすることができる。その後、システムオブジェクト１３２５は、その後にデータが送られるセッションの回数を示すＵＩＮＴデータを使用データ送信管理オブジェクト１３１０に戻す。その後、使用データ送信管理オブジェクト１３１０は、Ｃ使用データを送り、ログファイルオブジェクト１６０５の使用データ記憶機能を呼び出す。この場合、所定のセッション回数が実行されていないと、セッションからのデータはログファイルオブジェクト１６０５によって不揮発性メモリに記憶される。
【００９９】
その後、ログファイルオブジェクト１６０５は、使用データエンコーダデコーダオブジェクト１６１０に対して使用データエンコード機能を呼び出すとともに、Ｃ使用データおよびログファイルを送る。この動作によって、そのようなデータがエンコードされ、たとえば、記憶処理を早めるためにそのようなデータが圧縮され、また、エンコードされた使用データがログファイル内に記憶される。適当な数のセッションが完了すると、その後、使用データ送信管理オブジェクト１３１０は、送信ブロックオブジェクト１６００に対して使用データ送信機能を呼び出すとともにＣ使用情報を送る。その後、送信ブロックオブジェクト１６００は、使用データ送信管理オブジェクト１３１０にデータを送るとともに、確認データＹＥＳを使用データ送信管理オブジェクト１３１０に戻す。
【０１００】
図２２は、図２０および図２１の送信ブロックオブジェクト１６００内で実行される動作を示している。
【０１０１】
図２２に示される符号（名称）を伴ったステップは、図２０の符号１０を伴うステップおよび図２１の符号１２を伴うステップに対応している。このステップにおいて、モニタリングブロックオブジェクト１６１５は、送信メールトリガオブジェクト１７００の使用データ送信機能を呼び出すとともに、送信メールトリガオブジェクト１７００に対してＣ使用情報引き出しデータ１を送る。また、送信メールトリガオブジェクト１７００は、情報を送信した後、モニタリングブロックオブジェクト１６１５に対して確認信号ＹＥＳを戻す。
【０１０２】
その後、送信メールトリガオブジェクト１７００は、入力パックオブジェクト１７１０にＣ使用情報引出しデータ１を送るとともに、入力パックオブジェクト１７１０の変換機能を呼び出す。その後、入力パックオブジェクト１７１０は、Ｃ使用情報引出しデータ１を、異なるフォーマットデータのＣ使用情報引出しデータ２に変換する。このＣ使用情報引出しデータ２は、その後、送信メールトリガオブジェクト１７００に送られる。このように変換する理由は、異なる送信トリガにしたがってモニタリングブロックから送信ブロックへと通過する任意の異なるデータフォーマットを収容するためである。変換後、データフォーマットは送信ブロックオブジェクト１６００内で同一となる。
【０１０３】
その後、入力パックオブジェクト１７１０は、Ｃ使用情報引き出し１オブジェクト１７１５のＸＸＸ取得機能を呼び出す。その後、Ｃ使用情報引き出し１オブジェクト１７１５は、入力パックオブジェクト１７１０へ要求されたＸＸＸデータを戻す。ＸＸＸによって示されるデータの例は、システムＩＤ、累積使用、開始時間、継続時間、コマンド使用データである。
【０１０４】
その後、送信メールトリガオブジェクト１７００は、Ｃ使用情報引出しデータ２をセキュリティー／データエンコードオブジェクト１７２０に送るとともに、セキュリティー／データエンコードオブジェクト１７２０のエンコード機能を呼び出す。その後、セキュリティー／データエンコードオブジェクト１７２０は、使用情報引出しデータ２をエンコードするとともに、テキストファイルもしくはＣ文字列データを送信メールトリガオブジェクト１７００に戻す。すなわち、テキストファイルもしくはＣ文字列データは、送信メールトリガオブジェクト１７００に戻されるセキュリティーエンコードデータである。本発明のこのような動作により、使用データを電子メールによって送る前に暗号化でき、これにより、セキュリティを確保することができる。
【０１０５】
その後、セキュリティー／データエンコードオブジェクト１７２０はＣ使用情報引き出し２オブジェクト１７２５からＸＸＸ取得機能を呼び出し、これに応じて、符号３を伴うステップでなされたと同様に、要求されたＸＸＸデータがＣ使用情報引き出し２オブジェクト１７２５からセキュリティー／データエンコードオブジェクト１７２０に戻される。
【０１０６】
その後、送信メールトリガオブジェクト１７００は、エンコードされて暗号化されたデータのＣ文字列もしくはテキストファイルをメール送信オブジェクト１７０５に送るとともに、このデータをメールする機能を呼び出す。その後、メール送信オブジェクト１７０５は、暗号化されたデータを送るとともに、その後、メール送信オブジェクト１７０５がデータを送ったことを示す確認信号ＹＥＳを送信メールトリガオブジェクト１７００に戻す。
【０１０７】
図１５を参照して前述したように、本発明において、モニタリングブロックオブジェクト１２００は、送信ブロックオブジェクト１６００の使用データ送信機能を呼び出すとともに、Ｃ使用情報を送信ブロックオブジェクト１６００に送る。Ｃ使用情報は著しく変化することができる。特に、前述したように、モニタリングブロックオブジェクト１２００から送信ブロックオブジェクト１６００に送られた情報は、異なったトリガ情報と、送信ブロックオブジェクト１６００から情報が送られる前に実行されるターゲットアプリケーション５０５のセッション数に関する異なった情報とに依存している。
【０１０８】
その結果、送信ブロックオブジェクト１６００によって送られるデータのサイズやデータの構造が変化する。一例として、前述したような本発明の一つの特徴において、モニタリングブロックオブジェクト１２００から生じたモニタデータは、モニタされたターゲットアプリケーション５０５の各使用の後に送信ブロックオブジェクト１６００によって送ることができる。他の選択として、モニタされたターゲットアプリケーション５０５の所定回数のセッション、たとえば５回のセッションが実行された後に、モニタされたデータを送信ブロックオブジェクト１６００によって送ることもできる。これら二つの異なる例において、送信ブロックオブジェクト１６００によって送られるデータの量およびデータの構造は著しく変化する。
【０１０９】
モニタリングブロックオブジェクト１２００から送られる異なるデータにアドレスするための一つの選択は、送信ブロックオブジェクト１６００内の異なるアルゴリズムを異なるタイプのデータのために提供することである。しかしながら、このようなタイプのシステムでは、モニタリングブロックオブジェクト１２００から与えられる異なる形態のデータの全てにアドレスするアルゴリズムを要求すると、送信ブロックオブジェクト１６００が非常に複雑になる。異なる形態のデータにアドレスする送信ブロックオブジェクト１６００に伴うさらなる欠点は、モニタリングブロックオブジェクト１２００のモニタリング動作に変化が生じる度に送信ブロックオブジェクト１６００を更新（書き換え）しなければならないという点である。
【０１１０】
本発明におけるもう一つの特徴は、モニタリングブロックオブジェクト１２００からのデータ出力の違いに対して送信ブロックオブジェクト１６００をトランスペアレントにするという点である。
【０１１１】
すなわち、さらなる特徴として、本発明は、送信ブロックオブジェクト１６００内に重要な書き換えを要求する複雑なアルゴリズムを必要とすることなく、モニタリングブロックオブジェクト１２００からの異なるデータサイズや構造の出力の全てに対してアドレスできるアプローチをさらに使用してもよい。特に、本発明は、モニタリングブロックオブジェクト１２００と送信ブロックオブジェクト１６００とをインターフェイス接続するためにアブストラクト・クラスを規定するシステムを使用してもよい。本発明のこの動作によって、送信ブロックオブジェクト１６００をモニタリングブロックオブジェクト１２００から送られるＣ使用情報の内容から分離することができる。
【０１１２】
すなわち、本発明のこのようなアプローチによって、送信ブロックオブジェクト１６００は、モニタリングブロックオブジェクト１２００から送られるＣ使用情報の全てを同じように取り扱うとともに、データがどのように表されるのか、Ｃ使用情報内にどのくらいの量のデータが含まれているのか、すなわち、Ｃ使用情報内にデータのセッションがいくつ含まれているのか、データの構造がいくつ含まれているのか等について決定する必要がなくなる。特に、図１５に示されるように、本発明においては、モニタリングブロックオブジェクト１２００から送信ブロックオブジェクト１６００に送られるＣ使用情報がアブストラクト・クラスである。
【０１１３】
図２３は、図１５のアブストラクトクラスＣ使用情報１８００のクラス図である。このアブストラクトクラスＣ使用情報１８００は、二つのクラス、すなわち、１セッションに関するＣ使用データ１８０５とＣ使用データインログファイル１８１０とを得るために使用される。図２３のＣ使用情報アブストラクトクラス１８００にリストアップされた機能は単なる仮想機能である。
【０１１４】
これは、図１５の使用データ送信機能の呼び出しのポインタがアブストラクトクラスＣ使用情報１８００を指し示した際、特に、１セッションに関するＣ使用データ１８０５またはＣ使用データインログファイル１８１０といった導出クラスの一方を指し示した際に、実行される実際の機能が対応するこれらのクラス内で規定される機能であることを意味する。アブストラクトクラスを使用するさらなる詳細は、１９９７年アディソン・ウェズリーのＢｊａｒｎｅ  Ｓｔｒｏｕｓｔｒｕｐによる第３版  Ｔｈｅ  Ｃ＋＋  Ｐｒｏｇｒａｍｍｉｎｇ  Ｌａｎｇｕａｇｅの３４から３７頁に記載されており、これを参照することによって本願に組み入れられる。
【０１１５】
１セッションに関するＣ使用データ１８０５という導出クラスは、ターゲットアプリケーション５０５の各セッション後すなわちユーザがモニタされたターゲットアプリケーション５０５を終了する度毎に送信ブロックオブジェクト１６００からモニタ情報が送られる導出クラスである。Ｃ使用データインログファイル１８１０は、かつてモニタされた複数の使用セッション、たとえば５回のセッションに関するモニタ情報が送信ブロックオブジェクト１６００から送られる導出クラスである。
【０１１６】
図２３に示されるように、Ｃ使用情報アブストラクトクラス１８００は、得られたクラスに基づいて変化する異なる機能を有している。この機能は、つぎのセッションデータの取得、ユーザＩＤの取得、累積セッション数の取得、セッションン開始時間の取得、セッション継続時間の取得、セッションに関するコマンド使用データマップの取得を含んでいる。また、図２３は、これらの機能の宣言書を示している。
【０１１７】
アブストラクトクラスＣ使用情報１８００に関する前述した機能は全て最初に０に設定される仮想機能であり、０に設定されることによって、これらは単なる仮想機能にされる。これらの機能が行なうことは、アブストラクトクラスＣ使用情報１８００によって規定されず、１セッションに関するＣ使用データ１８０５およびＣ使用データインログファイル１８１０という導出クラスによって規定される。すなわち、１セッションに関するＣ使用データ１８０５およびＣ使用データインログファイル１８１０という導出クラスは、前述した機能の仕方を示している。
【０１１８】
図２４は、図２３のＣ使用情報アブストラクトクラス１８００内で規定された機能の使用を示している。すなわち、図２４は、モニタリングブロックオブジェクト１２００によって送られる必要な情報を抽出するために、送信ブロックオブジェクト１６００内で実行される動作を示している。図２４に示される動作において、オブジェクトポインタは、Ｃ使用情報オブジェクトに対するポインタであり、実際には、１セッションに関するＣ使用データ１８０５またはＣ使用データインログファイル１８１０という導出クラスのいずれか一方のオブジェクトに対するポインタである。仮想機能のようなオブジェクトのＣ使用情報部分をポインタのユーザが使用する限り、１セッションに関するＣ使用データ１８０５およびＣ使用データインログファイル１８１０の両者に関してＣ使用情報を使用する場合に情報のロスは生じない。
【０１１９】
送信ブロックオブジェクト１６００は、Ｃ使用情報オブジェクトを見込んでいるだけであり、導出クラスについては分からない。１セッションに関するＣ使用データ１８０５という導出クラスは、ＤＲＡＭのようなメモリに関する情報を含んでいる。一方、導出クラスとしてのＣ使用データインログファイル１８１０は、複数のセッションのためのファイルに関する情報を含んでいる。
【０１２０】
図２４に示される動作により、送信ブロックオブジェクト１６００は、送られたデータのセッション数や構造を知る必要なく、同一の方法でデータにアクセスすることができる。送信ブロックオブジェクト１６００において、オブジェクトに対して受けられたポインタはＣ使用情報アブストラクトクラス１８００に関するものである。モニタリングブロックオブジェクト１２００は、何の情報が送られたのかを知っており、適当なポインタをオブジェクトに割り当て、その後、そのような情報を送信ブロックオブジェクト１６００に送る。
【０１２１】
さらに詳細には、図２４に示されるように、第１のステップＳ５では、利用できるデータがあるかどうかを決定するために、オブジェクトポインタの次セッションデータ取得機能が呼び出される。ステップＳ５において、データが存在すること即ち使用がモニタされているターゲットアプリケーション５０５をユーザが使用していることを示すＹＥＳがとられると、その後、動作はステップＳ１０に進む。このステップＳ１０では、ユーザＩＤ取得機能を呼び出して、一方の導出クラスに対するオブジェクトポインタからユーザＩＤが得られる。
【０１２２】
その後、ステップＳ１５において、ユーザＩＤは、メッセージ内すなわち送信ブロックオブジェクト１６００によって送られるデータパッケージ内に置かれる。その後、動作はステップＳ２０に進む。このステップ２０では、導出クラスに対するオブジェクトポインタによって呼び出される累積セッション数取得機能に基づいて、セッション数が決定される。その後、ステップＳ２５において、セッション数がメッセージ内に置かれる。その後、ステップＳ３０において、セッション開始時間取得機能を呼び出して、導出クラスに対するオブジェクトポインタから開始時間が得られる。その後、ステップＳ３５において、開始時間がメッセージ内に置かれる。
【０１２３】
その後、動作はステップＳ４０に進む。このステップＳ４０では、セッション継続時間取得機能を呼び出して、オブジェクトポインタによりモニタリングの継続時間が決定される。その後、ステップＳ４５において、継続時間がメッセージ内に置かれる。その後、動作はステップＳ５０に進む。このステップＳ５０では、セッションコマンド使用データマップ取得機能を呼び出して、モニタリングからの使用情報がオブジェクトポインタによって得られる。その後、ステップＳ５５において、使用情報がメッセージ内に置かれる。
【０１２４】
その後、動作はステップＳ６０に進む。このステップＳ６０では、再び、次セッションデータ取得機能を呼び出して、ターゲットアプリケーション５０５のモニタリングからの、さらなるデータがあるかどうかがオブジェクトポインタによって決定される。このステップＳ６０で、さらなるデータがないことを示すＮＯがとられると、その後、動作はステップＳ７０に進む。このステップＳ７０では、現時点で電子メールによって送信すべきメッセージが全て揃い、かつ送信できる状態になっている旨のメッセージが戻される。また、ステップＳ６０でＹＥＳがとられると、その後、動作はステップＳ２０に戻され、その後、セッション数、開始時間、継続時間、ターゲットアプリケーション５０５のつぎのセッションに関する使用情報を得る。
【０１２５】
最初のステップＳ５での決定がＮＯである場合には、動作がステップＳ６５に進む。このステップＳ６５では、不足しているデータ情報が情報メッセージ内に置かれ、その後、動作がステップＳ７０に進む。すなわち、ステップＳ５で最初に次セッションデータ取得機能が呼び出される。ステップＳ５でＮＯが戻されると、送るデータがなくなる。その結果、電子メールされるメッセージは不足情報を示すデータを含んでいる。
【０１２６】
図２５は、ターゲットアプリケーション５０５のコマンドの使用に向けられた情報を記憶するための構造マップを示している。図２５において用語「キー」はコマンド名に対応しており、用語「値」はそのコマンドを呼び出す度数すなわちコマンドが呼び出される回数に対応している。Ｃ＋＋言語は、マップを含む標準的なテンプレートライブラリを提供する。マップはキーと値とを伴う図２５の表である。コマンドの使用順序が重要である場合には、キーの縦列は開始からの時間情報を含むことができ、また、値の縦列はコマンドの名前を含む。
【０１２７】
図２６は、モニタリングブロックオブジェクト１２００が１セッションに関するＣ使用データ１８０５という導出クラスのポインタを送る方法を示しており、図２７は、Ｃ使用データインログファイル１８１０という導出クラスのポインタを送るためのモニタリングブロックオブジェクト１２００の動作を示している。
【０１２８】
図２６に示されるように、最初に、ＣモニタリングＩＦオブジェクト１３０５は、図２０に示されると同様に、使用データ送信管理オブジェクト１３１０から使用データトリガ送信機能を呼び出し、同時に、使用データ送信管理オブジェクト１３１０に対してＣ使用データを送る。その後、使用データ送信管理オブジェクト１３１０は、それ自身の使用データパッケージ形成機能を呼び出して、Ｃ使用データ終了パッケージオブジェクト２１００を形成する。Ｃ使用データ終了パッケージオブジェクト２１００は、モニタされた使用データを１セッションに関するＣ使用データオブジェクト１８０５内に置く機能を果たす。
【０１２９】
その後、使用データ送信管理オブジェクト１３１０は、それ自身を形成するために、Ｃ使用データ終了パッケージオブジェクト２１００のＣ使用データ終了パッケージ機能を呼び出し、続いて、１セッションに関するＣ使用データ導出オブジェクトクラス１８０５を形成するために、Ｃ使用データ終了パッケージオブジェクト２１００が１セッションに関するＣ使用データ機能を呼び出す。その後、使用データ送信管理オブジェクト１３１０は、Ｃ使用データ終了パッケージオブジェクト２１００から使用データパッケージ機能を呼び出すとともに、Ｃ使用データ終了パッケージオブジェクト２１００にＣ使用データを送る。この呼び出しに応じて、Ｃ使用データ終了パッケージオブジェクト２１００は、１セッションに関するＣ使用データオブジェクト１８０５から使用データセット機能を呼び出すとともに、Ｃ使用データオブジェクト１８０５にＣ使用データを送る。
【０１３０】
その後、使用データ送信管理オブジェクト１３１０は、それ自身、データ送信準備機能を呼び出し、データが送信される状態にあるときには、その機能呼び出しに応じて肯定的なＹＥＳを形成する。ここで、使用データ送信管理オブジェクト１３１０はＣ使用データ終了パッケージオブジェクト２１００からパッケージ使用データ取得機能を呼び出し、これに応じて、１セッションに関するＣ使用データを使用データ送信管理オブジェクト１３１０に送る。その後、使用データ送信管理オブジェクト１３１０は、送信ブロックオブジェクト１６００の使用データ送信機能を呼び出すとともに、Ｃ使用情報を送信ブロックオブジェクト１６００に送る。その後、送信ブロックオブジェクト１６００は、確認のＹＥＳ信号を使用データ送信管理オブジェクト１３１０に送ることによって、この情報が送られたことを確認する。
【０１３１】
図２６に示される動作において、使用データ送信管理オブジェクト１３１０は、たとえば図１４，２０，２１で説明したように、トリガ形式の信号を受ける。図２６に示される動作を実行することによって、モニタリングブロックオブジェクト１２００は、１セッションに関するＣ使用データ導出クラス１８０５のポインタを送ることができ、その結果、送信ブロックオブジェクト１６００の動作は、モニタされているターゲットアプリケーション５０５の使用に関するデータを電子メールによって送る。
【０１３２】
図２７に示される動作においては、図２６で実行されたと同様の複数のステップが実行される。図２７に示されるように、モニタリングブロックオブジェクト１２００内で実行される動作において、ＣモニタリングＩＦオブジェクト１３０５は、まず最初に、使用データトリガ送信機能を呼び出すとともに、使用データ送信管理オブジェクト１３１０にＣ使用データを送る。これに応じて、使用データ送信管理オブジェクト１３１０は、それ自身の使用データパッケージ形成機能を呼び出して、Ｃ使用データＳセッションパッケージオブジェクト２２００を形成する。Ｃ使用データＳセッションパッケージオブジェクト２２００は、ターゲットアプリケーション５０５の複数のセッションのモニタされた使用データをＣ使用データインログファイルオブジェクト１８１０内にパッケージングする機能を果たす。
【０１３３】
その後、使用データ送信管理オブジェクト１３１０は、Ｃ使用データＳセッションパッケージオブジェクト２２００から使用データパッケージ機能を呼び出すとともに、Ｃ使用データＳセッションパッケージオブジェクト２２００にＣ使用データを送る。Ｃ使用データＳセッションパッケージオブジェクト２２００は、モニタされた使用データをＣ使用データインログファイルオブジェクト１８１０内にパッケージングする。これに応じて、Ｃ使用データＳセッションパッケージオブジェクト２２００は、確認のＹＥＳ信号を使用データ送信管理オブジェクト１３１０に送り、使用データをパッケージングできることを示す。
【０１３４】
その後、Ｃ使用データＳセッションパッケージオブジェクト２２００がＣ使用データオブジェクト１３３０からシステムＩＤ取得機能を呼び出し、続いて、Ｃ使用データオブジェクト１３３０がＣ使用データＳセッションパッケージオブジェクト２２００に対してシステムＩＤを有するＣ文字列を送り戻す。その後、Ｃ使用データＳセッションパッケージオブジェクト２２００は、Ｃ使用データインログファイル導出クラスオブジェクト１８１０からシステムＩＤセット機能を呼び出すとともに、Ｃ使用データインログファイル導出クラスオブジェクト１８１０に対してＣ文字列データを送る。
【０１３５】
その後、Ｃ使用データＳセッションパッケージオブジェクト２２００は、ログファイルオブジェクト１６０５から使用データ記憶機能を呼び出すともに、Ｃ使用データをログファイルオブジェクト１６０５に送る。その後、ログファイルオブジェクト１６０５は、確認のＹＥＳ信号をＣ使用データＳセッションパッケージオブジェクト２２００に戻す。その後、Ｃ使用データＳセッションパッケージオブジェクト２２００は、Ｃ使用データインログファイル導出クラスオブジェクト１８１０からログファイルセット機能を呼び出すとともに、ＣログファイルデータをＣ使用データインログファイル導出クラスオブジェクト１８１０に送る。
【０１３６】
これらの動作中、使用データ送信管理オブジェクト１３１０は、それ自身に対してデータ送信準備機能を連続的に呼び出し、データを送信できる状態になると、確認信号ＹＥＳを形成する。その後、使用データ送信管理オブジェクト１３１０がＣ使用データＳセッションパッケージオブジェクト２２００からパッケージ使用データ取得機能を呼び出すとともに、これに応じて、Ｃ使用データＳセッションパッケージオブジェクト２２００がＣ使用データインログファイルデータを使用データ送信管理オブジェクト１３１０に送る。その後、使用データ送信管理オブジェクト１３１０は、送信ブロックオブジェクト１６００に対して使用データ送信機能を呼び出すとともに、Ｃ使用情報を送信ブロックオブジェクト１６００に送る。その後、送信ブロックオブジェクト１６００は、ＹＥＳ信号を使用データ送信管理オブジェクト１３１０に送ることによってこのデータが送られたことを確認する。
【０１３７】
図２７の動作において、使用データ送信管理オブジェクト１３１０は、たとえば１２Ｂ，１６Ａ，１６Ｂに示されるように、トリガ情報を受ける。図２７に示される動作において、使用データ送信管理オブジェクト１３１０は、複数のセッションのデータ、たとえば前述した例では５セッションのデータを含む使用データを送信ブロックオブジェクト１６００に与える。その後、送信ブロックオブジェクト１６００は、複数のセッションに関するそのデータを電子メールによって送る。
【０１３８】
本発明のこのような動作において、モニタリングブロックオブジェクト１２００は、送信ブロックオブジェクト１６００に対してトランスペアレントな様々な機能を果たす。すなわち、送信ブロックオブジェクト１６００は、モニタリングブロックオブジェクト１２００から与えられたデータとは無関係に同じ動作を行なう。本発明のこのような構造や動作の結果、送信ブロックオブジェクト１６００は非常に簡単になる。さらに、装置内で実行される動作時に何らかの変化が必要とされる場合、たとえば、本発明においてはセッション数が変化する場合、そのような変化は送信ブロックオブジェクト１６００に対してトランスペアレントであり、したがって、そのような変化をモニタリングブロックオブジェクト１２００に組み込むために送信ブロックオブジェクト１６００が書き換えられる必要はなくなる。
【０１３９】
前述した動作において、本発明は、ターゲットアプリケーションの一部であるユーザインターフェイスのユーザによる使用をモニタするための制御動作を提供する。また、本発明のこのような動作によって、モニタされた使用データを記憶することができるとともに、適当に選択された回数でこの使用データをインターネットメールにより送信することができる。モニタされた使用データのこのような送信は一般に時間を気にする情報ではないため、インターネットメールはそのような送信源として便利である。
【０１４０】
また、このようなデータを通信するためにインターネットメールシステムを使用すると、送信コストを大幅に低減することができる。また、本発明においては、書き込まれた使用データがインターネットメールによって送信されるため、インターネットメールによって送信される使用データを分析するようにプログラムされている他のコンピュータシステムに対して、書き込まれた使用データを自動的に送ることができる。このような動作は本発明によって可能であり、この動作によって、使用データのモニタリング効率および分析効率が大幅に向上する。
【０１４１】
好ましい実施において、本発明はコンピュータを使用し、このコンピュータは、それが取り付けられる装置とは異なる別個のハウジングを有している。これにより、新たなハードウエアコストが減少するように、所望の処理を行なう既存のコンピュータを既に有する装置に対して本発明を安価に実施することが可能になる。このような構成によって、ハードウエアを変更することなく本発明をその装置に対して実施することができる。しかしながら、望ましい場合には、装置に接続される別個のコンピュータに加えて或いは別個のコンピュータに代えて、モニタされたり制御されたりする装置内に適当な処理能力およびデータ記憶能力を付加することによって、本発明を実施してもよい。
【０１４２】
本出願は、参照することによって本出願に組み込まれる相互に参照される特許および特許出願に開示された概念に関連しているとともに、この概念上に構築されている。本特許出願は、関連出願に開示されている発明を含むことを意図しているだけでなく、本出願および関連出願のそれぞれに開示されている個々の実施例の様々な特徴や機能の組み合わせを含むことも意図している。すなわち、関連出願もしくは関連特許のうちの一つに開示された特徴を本発明に開示されている概念に容易に適用しても良く、また、１以上の他の出願に開示されている概念をその他の出願に開示されている概念や特徴に適用してもよい。また、電子メールメッセージは送信だけのために使用されてもよい。この場合、ここに開示された他の通信モードや関連する特許および特許出願に開示されている通信モードのうちの一つのような異なる一つの通信モードを使用して、他の方向での通信が行なわれる。
【０１４３】
コンピュータ技術の当業者において明らかなように、多目的デジタルコンピュータや本明細書の技術にしたがってプログラムされたマイクロプロセッサを使用して、本発明を都合よく実施してもよい。ソフトウエア技術の当業者において明らかなように、熟練したプログラマーであれば、この開示の技術に基づいて適当なソフトウエアコーディングを容易に作成することができる。当業者にとって明らかなように、アプリケーションの特定の集積回路を準備することによって、あるいは、従来のコンポーネント回路の適当なネットワークを相互に接続することによって、本発明を実施してもよい。
【０１４４】
本発明は、コンピュータをプログラムして本発明のプロセスを達成するために使用可能な命令を含む記憶媒体であるコンピュータ・プログラム・プロダクトを含んでいる。記憶媒体は、フロッピーディスクや光ディスクやＣＤ−ＲＯＭや光磁気ディスクを含む任意のタイプのディスクや、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード、光カード、電子命令を記憶するのに適した任意のタイプの媒体を含んでいるが、これらに限定されない。
【０１４５】
無論、前述した技術の観点から、多数の別個の修正や変更を本発明に加えることができる。したがって、添付の特許請求の範囲内であれば、ここに特に記述された以外の別の方法で本発明を実施できることは言うまでもない。
【０１４６】
（関連出願の相互参照）
本出願は、" Ａｐｐｌｉｃａｔｉｏｎ  Ｕｎｉｔ  Ｍｏｎｉｔｏｒｉｎｇ  ａｎｄ  Ｒｅｐｏｒｔｉｎｇ  Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ" と題されて１９９９年５月１３日に出願された米国特許出願０９／３１１，１４８、" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ｗｉｔｈ  ａ  Ｄｅｖｉｃｅ  Ａｔｔａｃｈｅｄ  ｔｏ  Ｃｏｍｐｕｔｅｒ  Ｕｓｉｎｇ  Ｅｌｅｃｔｒｏｎｉｃ  Ｍａｉｌ  Ｍｅｓｓａｇｅｓ" と題されて１９９８年１１月１７日に出願された米国特許出願０９／１９２，５８３、" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｄｉａｇｎｏｓｉｓ  ａｎｄ  Ｃｏｎｔｒｏｌ  ｏｆ  Ｍａｃｈｉｎｅｓ  Ｕｓｉｎｇ  ＣｏｎｎｅｃｔｉｏｎｌｅｓｓＭｏｄｅｓ  Ｈａｖｉｎｇ  Ｄｅｌｉｖｅｒｙ  Ｍｏｎｉｔｏｒｉｎｇ  ａｎｄ  ａｎ  Ａｌｔｅｒｎａｔｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｍｏｄｅ" と題されて１９９７年６月２６日に出願された米国特許出願０８／８８３，４９２、" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｔｏ  Ｄｉａｇｎｏｓｅ  ａ  Ｂｕｓｉｎｅｓｓ  Ｏｆｆｉｃｅ  Ｄｅｖｉｃｅ  Ｂａｓｅｄ  ｏｎ  Ｏｐｅｒａｔｉｎｇ  Ｐａｒａｍｅｔｅｒｓ  Ｓｅｔ  ｂｙ  ａ  Ｕｓｅｒ" と題されて１９９７年３月１９日に出願され、かつ現在米国特許出願５，８８７，２１６である米国特許出願０８／８２０，６３３、" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｄｉａｇｎｏｓｉｓ  ａｎｄ  Ｃｏｎｔｒｏｌ  ｏｆ  ＭａｃｈｉｎｅｓＵｓｉｎｇ  Ｃｏｎｎｅｃｔｉｏｎｌｅｓｓ  Ｍｏｄｅｓ  ｏｆ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ" と題されて１９９６年１０月１６日に出願された米国特許出願０８／７３３，１３４、" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｃｏｎｔｒｏｌｌｉｎｇ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  ｗｉｔｈ  Ｍａｃｈｉｎｅｓ  Ｕｓｉｎｇ  Ｍｕｌｔｉｐｌｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｆｏｒｍａｔｓ" と題されて１９９６年３月２９日に出願され、かつ現在米国特許ＵＳＰ５，８１８，６０３号である米国特許出願０８／６２４，２２８、" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｄｉａｇｎｏｓｉｓ  ａｎｄ  Ｃｏｎｔｒｏｌ  ｏｆ  Ｍａｃｈｉｎｅｓ  Ｕｓｉｎｇ  Ｃｏｎｎｅｃｔｉｏｎ  ａｎｄ  Ｃｏｎｎｅｃｔｉｏｎｌｅｓｓ  Ｍｏｄｅｓ  ｏｆ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ" と題されて１９９５年６月５日に出願され、かつ現在米国特許ＵＳＰ５，８１９，１１０号である米国特許出願０８／４６３，００２の分割出願で、かつ" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｄｉａｇｎｏｓｉｓ  ａｎｄ  Ｃｏｎｔｒｏｌ  ｏｆ  Ｍａｃｈｉｎｅｓ  Ｕｓｉｎｇ  Ｃｏｎｎｅｃｔｉｏｎ  ａｎｄ  Ｃｏｎｎｅｃｔｉｏｎｌｅｓｓ  Ｍｏｄｅｓ  ｏｆ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ" と題されて１９９６年１０月３０日に出願された米国特許出願０８／７３８，６５９および米国特許出願０８／７３８，４６１、" Ｍｅｔｈｏｄ  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｃｏｎｔｒｏｌｌｉｎｇ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  ｗｉｔｈ  Ｂｕｓｉｎｅｓｓ  Ｏｆｆｉｃｅ  Ｄｅｖｉｃｅｓ" と題されて１９８７年５月７日に出願され、かつ現在米国特許ＵＳＰ５，７７４，６７８号である米国特許出願０８／８５２，４１３に関連している。米国特許出願��８／８５２，４１３は、" Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｃｏｎｔｒｏｌｌｉｎｇ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ｗｉｔｈ  Ｂｕｓｉｎｅｓｓ  Ｏｆｆｉｃｅ  Ｄｅｖｉｃｅｓ" と題されて１９９６年８月１５日に出願され、かつ現在米国特許ＵＳＰ５，６４９，１２０号である米国特許出願０８／６９８，０６８の継続出願であり、米国特許出願０８／６９８，０６８は１９９５年１１月２２日に出願された米国特許出願０８／５６２，１９２の継続出願であり、米国特許出願０８／５６２，１９２は" Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｃｏｎｔｒｏｌｌｉｎｇ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ｗｉｔｈ  Ｂｕｓｉｎｅｓｓ  Ｏｆｆｉｃｅ  Ｄｅｖｉｃｅｓ" と題されて１９９５年６月６日に出願され、かつ現在米国特許ＵＳＰ５，５４４，２８９号である米国特許出願０８／４７３，７８０の継続出願であり、米国特許出願０８／４７３，７８０は" Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｃｏｎｔｒｏｌｌｉｎｇ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ｗｉｔｈ  Ｂｕｓｉｎｅｓｓ  Ｏｆｆｉｃｅ  Ｄｅｖｉｃｅｓ" と題されて１９９５年４月２４日に出願され、かつ現在米国特許ＵＳＰ５，５３７，５５４号である米国特許出願０８／４２６，６７９の継続出願であり、米国特許出願０８／４２６，６７９は" Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｃｏｎｔｒｏｌｌｉｎｇ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ｗｉｔｈ  Ｂｕｓｉｎｅｓｓ  Ｏｆｆｉｃｅ  Ｄｅｖｉｃｅｓ" と題されて１９９４年７月２８日に出願され、かつ現在米国特許ＵＳＰ５，４１２，７７９号である米国特許出願０８／２８２，１６８の継続出願であり、米国特許出願０８／２８２，１６８は１９９２年６月１９日に出願され、かつ現在放棄されている米国特許出願０７／９０２，４６２の継続出願であり、米国特許出願０７／９０２，４６２は１９９０年７月６日に出願され、かつ現在放棄されている米国特許出願０７／５４９，２７８の継続出願である。以上の各出願の開示内容はこれらを参照することによって本願に組み込まれる。
【０１４７】
【発明の効果】
以上説明したとおり、この発明にかかるアプリケーションユニットモニタリング・レポーティングシステムおよび方法、並びに記憶媒体によれば、アプリケーションユニットのターゲットアプリケーションのユーザによる使用をモニタするための新規、かつ有効なシステムを提供することができる。また、アプリケーションユニットのターゲットアプリケーションのユーザによる使用のモニタリングによって得られるデータを所望の場所に通信するための新規なシステムを提供することができる。さらに、モニタされた使用情報をモニタリングユニットから送信ユニットに有効に通信する方法を提供することができる。
【図面の簡単な説明】
【図１】インターネットを介してコンピュータのネットワークとデータベースとに接続された三つのネットワークビジネスオフィス機械を示す図である。
【図２】デジタルコピー機／プリンタの構成部品を示す図である。
【図３】図２に示されるデジタルコピー機／プリンタの電子部品を示す図である。
【図４】図３に示されるマルチポート通信インターフェイスの詳細を示す図である。
【図５】ビジネスオフィス装置がネットワークに接続されたコンピュータに接続された他のシステム構成およびネットワークに直接に接続された装置を示す図である。
【図６】電子メールを使用して装置に対して情報を通信する方法をフォーマットするブロック図である。
【図７】装置に接続されるコンピュータがメッセージトランスファエージェントとして働く電子メールを使用した他の通信方法を示す図である。
【図８】アプリケーションユニットが電子メール機能を有する電子メールを使用した他の通信方法を示す図である。
【図９】インターネットを通じてメッセージを送信する他の方法を示す図である。
【図１０】装置に接続され、かつ電子メールメッセージを通信するために使用される好適なコンピュータを示す図である。
【図１１】本発明のアプリケーションユニットのターゲットアプリケーションにモニタリング・ロギングブロックと送信ブロックとを接続したフォーマットを示すブロック図である。
【図１２】本発明が適用可能なアプリケーションユニットの一例を示す図である。
【図１３】本発明が適用可能なアプリケーションユニットの第２の例を示す図である。
【図１４】本発明において実行されるオブジェクトの全体図である。
【図１５】本発明のモニタリングブロックと送信ブロックとの間で送信されるアブストラクトクラスの情報を示す図である。
【図１６】本発明において実行されるモニタリング動作の開始を示す図である。
【図１７】トリガ形式およびセッション数を設定する本発明の動作を示す図である。
【図１８】本発明で実行可能なコマンド使用動作を示す図である。
【図１９】本発明で実行可能なコマンド使用動作を示す図である。
【図２０】本発明で実行可能なモニタリング停止動作を示す図である。
【図２１】本発明で実行可能なモニタリング停止動作を示す図である。
【図２２】本発明で実行可能な送信制御動作を示す図である。
【図２３】本発明におけるアブストラクトおよび導出クラスの構造を示す図である。
【図２４】アブストラクトクラスからのデータのアクセスに向けられた本発明で実行可能な動作を示すフローチャートである。
【図２５】アブストラクトクラスによって使用される構造を示す図である。
【図２６】アブストラクトクラスの第１の導出クラスに関して本発明で実行される動作を示す図である。
【図２７】アブストラクトクラスの第２の導出クラスに関して本発明で実行される第２の動作を示す図である。
【符号の説明】
１０  インターネット
１４  ファイアウォール
２４  デジタルコピー機／プリンタ
２８  ファクシミリ機
３２  プリンタ
４０  ファイアウォール
５０  ファイアウォール
１６６  マルチポート通信インターフェイス
１７２  インターフェイスコントローラ
１７４  操作パネル
１７６  記憶インターフェイス
１７８  フラッシュメモリ
１８４  オプションインターフェイス
１８７  クロック／タイマー
１８８  オプショナルユニットインターフェイス
１９０  ヒューザ
１９２  プリンタ／イメージャー
１９４  スキャナ
１９６  給紙コントローラ
１９８  大容量のトレイユニット
２００  送受切換器
２０２  ソーター
２２０  セントロニクスインターフェイス
２２１  ケーブルモデムユニット
２２２  ＳＣＳＩインターフェイス
２２４  電話インターフェイス
２２６  ＩＳＤＮインターフェイス
２２８  ＲＳ−２３２インターフェイス
２３０  ＬＡＮインターフェイス
２５０  ファイアウォール
２５２  イントラネット
２５４  サービスマシン
２５８  ファイアウォール
２６０  イントラネット
２６２  プリンタ
２６４  インターネットサービスプロバイダ
２６６  コンピュータ
２６８  ビジネスオフィス装置
２７０  ファイアウォール
２７２  コンピュータ
２７４  ネットワーク
２７６  コンピュータ
２７８  ビジネスオフィス装置
２８０  ファイアウォール
２８２  コンピュータ
２８４  イントラネット
２８６  コピー機
３００  アプリケーションユニット
３０１  コンピュータ
３０２  ユーザ端末（送信者）
３０４  ユーザエージェント
３０６  送信されるメールのキュー
３０８  メッセージトランスファエージェント
３１０  ＴＣＰ接続
３１２  メッセージトランスファエージェント
３１４  ユーザのメールボックス
３１６  ユーザエージェント
３１８  ユーザ端末（受信者）
３２０  送信ホスト
３２２  ローカルＭＴＡ
３２４  ローカルＭＴＡ
３２６  ローカルＭＴＡ
３２８  リレーＭＴＡ
３３０  メールキュー内
３３２  リレーＭＴＡ
３３４  メールキュー内
３３６  ローカルＭＴＡ
３３８  ローカルＭＴＡ
３４０  ローカルＭＴＡ
３４２  受信ホスト
３６０  コンピュータ
３６２  ＣＰＵ
３６６  ワイヤレスインターフェイス
３６８  無線装置
３７１  フラッシュメモリ
３７２  入力コントローラ
３７４  キーボード
３７６  マウス
３７８  シリアルインターフェイス
３８０  シリアルデバイス
３８２  パラレルインターフェイス
３８４  パラレルデバイス
３８６  ユニバーサル・シリアルバス・インターフェイス
３８８  ユニバーサル・シリアルバス・デバイス
３９０  システムバス
３９２  ハードディスクドライブ
３９４  フロッピディスクドライブ
３９６  ディスクコントローラ
４００  ＩＥＥＥ１３９４デバイス
４０２  電話回線
４０４  ネットワーク
４０６  通信コントローラ
４０８  Ｉ／Ｏ（入力／出力）コントローラ
４１０  プリンタ
４１４  ＣＲＴ（ブラウン管）
４１６  ディスプレイコントローラ
５０５  ターゲットアプリケーション
５１０  ユーザインターフェイス
５１５  モニタリング・ロギングブロック
５２０  送信ブロック
【図１】
0004094803.tif 000002
【図２】
0004094803.tif 000003
【図３】
0004094803.tif 000004
【図４】
0004094803.tif 000005
【図５】
0004094803.tif 000006
【図６】
0004094803.tif 000007
【図７】
0004094803.tif 000008
【図８】
0004094803.tif 000009
【図９】
0004094803.tif 000010
【図１０】
0004094803.tif 000011
【図１１】
0004094803.tif 000012
【図１２】
0004094803.tif 000013
【図１３】
0004094803.tif 000014
【図１４】
0004094803.tif 000015
【図１５】
0004094803.tif 000016
【図１６】
0004094803.tif 000017
【図１７】
0004094803.tif 000018
【図１８】
0004094803.tif 000019
【図１９】
0004094803.tif 000020
【図２０】
0004094803.tif 000021
【図２１】
0004094803.tif 000022
【図２２】
0004094803.tif 000023
【図２３】
0004094803.tif 000024
【図２４】
0004094803.tif 000025
【図２５】
0004094803.tif 000026
【図２６】
0004094803.tif 000027
【図２７】
0004094803.tif 000028