(57)【要約】【課題】サーバ装置からコンテンツを取得し、これを周辺機器として接続された外部記憶装置に蓄積する通信装置であって、外部ネットワーク端末から、この記憶装置が利用される環境下でも、取得したコンテンツを記憶装置に適切に蓄積可能な通信装置を提供する。【解決手段】本装置では、コンテンツの取得・記録タイミングが到来した際（Ｓ６４０でＹｅｓ）、コンテンツの書込先となるＵＳＢデバイスが外部ネットワーク端末に占有されているかを判断し（Ｓ６５０）、占有されている場合には更に、ＵＳＢデバイスに対する最終アクセス時刻から一定時間が経過しているか否かを判断する（Ｓ７１０）。そして、一定時間が経過している場合には、外部ネットワーク端末とＵＳＢデバイスとの接続を解除し（Ｓ７３０）、その後、本装置をＵＳＢデバイスに接続する（Ｓ７４０）。この後、取得したコンテンツを、ＵＳＢデバイスに書き込む（Ｓ７５０）。【選択図】図１２
2008067346.tif 000002
【特許請求の範囲】
【請求項１】
端末装置が接続されたネットワークとの接続用のインタフェースとしての第１インタフェース、及び、外部記憶装置とのローカル接続用のインタフェースとしての第２インタフェースを備えると共に、自装置内の処理主体から入力される指令に従って前記第２インタフェースに接続された外部記憶装置を制御する機能としての内部制御機能と、前記第１インタフェースを通じてネットワーク上の他装置から入力される指令に従って前記第２インタフェースに接続された外部記憶装置を制御する機能としての外部制御機能と、を備える通信装置であって、
外部からの指令に従い、前記内部制御機能及び外部制御機能のいずれか一方を、排他的に有効にする切替手段と、
前記外部記憶装置に記憶させる書込対象のデータを、前記第１インタフェースを通じ、ネットワーク上のサーバ装置から取得するデータ取得手段と、
前記切替手段により内部制御機能が有効にされているか、又は、外部制御機能が有効にされているかを判断する判断手段と、
前記判断手段により前記外部制御機能が有効にされていると判断されると、前記外部制御機能を無効にして前記内部制御機能を有効にする自動切替手段と、
前記内部制御機能が有効であることを条件として、前記データ取得手段が取得した前記書込対象のデータを、前記外部記憶装置に書き込むデータ記録手段と、
を備えることを特徴とする通信装置。
【請求項２】
前記自動切替手段により前記内部制御機能が有効にされた状態で、更に、所定条件が満足された場合、前記内部制御機能を無効にし、前記外部制御機能を有効にする復帰手段
を備えることを特徴とする請求項１記載の通信装置。
【請求項３】
前記復帰手段は、前記データ記録手段によるデータ書込動作が完了したことを、前記所定条件として、動作することを特徴とする請求項２記載の通信装置。
【請求項４】
前記復帰手段は、前記外部記憶装置が最後に利用されてから一定時間が経過したことを、前記所定条件として、動作することを特徴とする請求項２記載の通信装置。
【請求項５】
前記データ取得手段は、所定の取得タイミングで、前記書込対象のデータを取得し、
前記判断手段は、前記データ取得手段によるデータの取得タイミングに合わせて、前記内部制御機能又は外部制御機能のいずれが有効であるかを判断する共に、前記外部記憶装置が最後に利用されてから一定時間が経過したか否かを判断する構成にされ、
前記自動切替手段は、前記判断手段により、前記外部制御機能が有効で、且つ、前記一定時間が経過していると判断された場合、前記外部制御機能を無効にして前記内部制御機能を有効にする一方、前記判断手段により、前記外部制御機能が有効で、且つ、前記一定時間が経過していないと判断された場合には、前記外部制御機能を有効の状態に維持する構成にされていることを特徴とする請求項１〜請求項４のいずれかに記載の通信装置。
【請求項６】
端末装置が接続されたネットワークとの接続用のインタフェースとしての第１インタフェース、及び、外部記憶装置とのローカル接続用のインタフェースとしての第２インタフェースを備えると共に、自装置内の処理主体から入力される指令に従って前記第２インタフェースに接続された外部記憶装置を制御する機能としての内部制御機能と、前記第１インタフェースを通じてネットワーク上の他装置から入力される指令に従って前記第２インタフェースに接続された外部記憶装置を制御する機能としての外部制御機能と、を備える通信装置のコンピュータに、
外部からの指令に従い、前記内部制御機能及び外部制御機能のいずれか一方を、排他的に有効にする切替手段と、
前記外部記憶装置に記憶させる書込対象のデータを、前記第１インタフェースを通じ、ネットワーク上のサーバ装置から取得するデータ取得手段と、
前記切替手段により内部制御機能が有効にされているか、又は、外部制御機能が有効にされているかを判断する判断手段と、
前記判断手段により前記外部制御機能が有効にされていると判断されると、前記外部制御機能を無効にして前記内部制御機能を有効にする自動切替手段と、
前記内部制御機能が有効であることを条件として、前記データ取得手段が取得した前記書込対象のデータを、前記外部記憶装置に書き込むデータ記録手段
としての機能を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークインタフェース、及び、周辺機器接続用のインタフェースを備える通信装置に関する。
【背景技術】
【０００２】
従来、ネットワークインタフェース及び周辺機器を接続可能なインタフェースを備える通信装置としては、ＬＡＮ（Local Area Network）インタフェース及びＵＳＢ（Universal Serial Bus）インタフェースを備えるディジタルカラー複合機が知られている（例えば、特許文献１参照）。
【０００３】
また、ＵＳＢデバイスの制御技術としては、ＵＳＢデバイスの接続機器において、機器内で動作する処理主体（アプリケーションソフトウェア等）からの指令に従い、ＵＳＢデバイスを制御する技術の他、ネットワークを通じてＵＳＢデバイスを制御する技術が知られている（例えば、非特許文献１参照）。
【０００４】
ネットワークを通じてＵＳＢデバイスを制御する技術としては、特に、ＵＳＢ  ＯＶＥＲ  ＩＰ（登録商標）といわれる技術が知られている。ＵＳＢ  ＯＶＥＲ  ＩＰ（登録商標）技術は、ＵＳＢデバイスに伝送すべきＵＳＢデータを、ＩＰパケットでカプセル化し、ＩＰネットワーク経由で、これを、ＵＳＢデバイスの接続機器に伝送して、ＵＳＢデバイスの接続機器とは別の通信装置から、ＩＰネットワーク経由で、周辺機器を制御するものである。
【特許文献１】特開２００５−１１００８６号公報
【非特許文献１】”silex technology : Japan Site”、[online]、  ［平成１８年８月３日検索］、インターネット  ＜URL:http://www.silex.jp/japan/products/network/usb/sx2000u2.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、ＬＡＮインタフェース等のネットワークインタフェース（以下、「第１インタフェース」という。）及びＵＳＢインタフェース等の機器相互を直結するためのローカルインタフェース（以下、「第２インタフェース」という。）のように異なるインタフェースを備える、ディジタルカラー複合機等の通信装置においては、第２インタフェースに接続された外部記憶装置にデータを書き込もうとしても、第１インタフェース経由で、この外部記憶装置が占有されている間、自装置内部の処理主体からは、この外部記憶装置に対し、データを書き込むことができないといった問題があった。
【０００６】
即ち、従来の技術では、通信装置内部の処理主体により、サーバ装置から書込対象のデータを取得しても、外部記憶装置が、ネットワーク上の端末装置により占有されている間、上記通信装置では、取得したデータを、この外部記憶装置に記録することができないといった問題があった。
【０００７】
本発明は、こうした問題に鑑みなされたものであり、ネットワーク上のサーバ装置から取得したデータを、上記種類の外部記憶装置に、適切に書き込み可能な通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
かかる目的を達成するためになされた請求項１記載の通信装置は、端末装置が接続されたネットワークに接続されるネットワーク接続用のインタフェースとしての第１インタフェース、及び、外部記憶装置とのローカル接続用のインタフェースとしての第２インタフェースを備えると共に、自装置内の処理主体から入力される指令に従って第２インタフェースに接続された外部記憶装置を制御する機能としての内部制御機能と、第１インタフェースを通じてネットワーク上の他装置から入力される指令に従って第２インタフェースに接続された外部記憶装置を制御する機能としての外部制御機能と、を備える通信装置であって、切替手段と、データ取得手段と、判断手段と、自動切替手段と、データ記録手段と、を備えるものである。
【０００９】
切替手段は、ユーザインタフェース等を介して入力される外部からの指令に従い、内部制御機能及び外部制御機能の内、いずれか一方のみを有効する。一方、データ取得手段は、外部記憶装置に記憶させる書込対象のデータを、第１インタフェースを通じ、ネットワーク上のサーバ装置（インターネット上のウェブサーバ等）から取得し、データ記録手段は、内部制御機能を通じて、上記データ取得手段が取得した書込対象のデータ（ウェブコンテンツ等）を、外部記憶装置に書き込む。
【００１０】
但し、データ記録手段によりデータを外部記憶装置に書き込む際には、内部制御機能が有効になっている必要があるため、判断手段は、切替手段により内部制御機能が有効にされているか、又は、外部制御機能が有効にされているかを判断する。例えば、判断手段は、データ記録手段によって、書込対象のデータが外部記憶装置に書き込まれる際、外部制御機能が有効にされているかを判断する。
【００１１】
そして、当該通信装置では、判断手段により外部制御機能が有効にされていると判断されると、自動切替手段が、外部制御機能を無効にし、内部制御機能を有効にする。そして、データ記録手段は、内部制御機能が有効であることを条件として、データ取得手段が取得した書込対象のデータを、外部記憶装置に書き込む。
【００１２】
このように、本発明の通信装置では、ネットワーク上の他装置に外部記憶装置が割り当てられ、通信装置内部からは外部記憶装置が利用できない状態のときに、データ取得手段が書込対象のデータを取得する場合、自動切替手段が、外部制御機能を無効にして、内部制御機能を有効にすることで、外部記憶装置を、当該通信装置から利用可能にし、データ記録手段から、外部記憶装置に、データ取得手段が取得したデータを書き込めるようにする。
【００１３】
従って、本発明によれば、第１インタフェースを介してネットワーク上の端末装置が外部記憶装置を利用している環境下でも、サーバ装置から取得したデータを、外部記憶装置に適切に書き込むことができる。
【００１４】
また、請求項２記載の通信装置は、自動切替手段により内部制御機能が有効にされた状態で、所定条件が満足されると、内部制御機能を無効にし、外部制御機能を有効にする復帰手段を、請求項１記載の通信装置に設けたものである。この通信装置によれば、自動切替手段により無効となった外部制御機能を、自動で再び有効にすることができ、ユーザにとっては、大変便利である。
【００１５】
具体的に、復帰手段は、データ記録手段によるデータ書込動作が完了したことを条件として、内部制御機能を無効にし、外部制御機能を有効にする構成にすることができる（請求項３）。復帰手段がこのように構成された通信装置によれば、自動切替手段により外部制御機能を無効にした目的であるデータ記録手段によるデータ書込動作が完了した時点で、外部制御機能を再び有効にするので、外部記憶装置を利用するネットワーク上の端末装置に対し、あまり影響を与えることなく、一時的に、通信装置内部へ外部記憶装置を割り当てて、この外部記憶装置にデータを書き込むことができる。
【００１６】
また、請求項４記載の通信装置は、請求項２記載の通信装置に、次の復帰手段を設けたものである。即ち、請求項４記載の通信装置では、復帰手段が、外部記憶装置が最後に利用されてから一定時間が経過したことを条件として、内部制御機能を無効にし、外部制御機能を有効にする。
【００１７】
このように復帰手段が構成された通信装置によれば、外部記憶装置の断続的な利用が落ち着いた後に、内部制御機能を無効にし、外部制御機能を有効にするので、外部制御機能及び内部制御機能の有効／無効が頻繁に切り替わることを、抑制することができる。
【００１８】
また、データ取得手段及びデータ記録手段が、高頻度に繰返しネットワーク上のサーバ装置からデータを取得して、これを外部記憶装置に書き込む場合などには、請求項５記載のように通信装置を構成するとよい。
【００１９】
請求項５記載の通信装置は、データ取得手段が、所定の取得タイミングで、書込対象のデータを取得し、判断手段が、データ取得手段によるデータの取得タイミングに合わせて、内部制御機能又は外部制御機能が有効にされているかを判断する共に、外部記憶装置が最後に利用されてから一定時間が経過したか否かを判断する構成にされたものである。
【００２０】
この通信装置における自動切替手段は、判断手段により、外部制御機能が有効で、且つ、上記一定時間が経過していると判断された場合、外部制御機能を無効にして内部制御機能を有効にする一方、判断手段により、外部制御機能が有効で、且つ、一定時間が経過していないと判断された場合には、外部制御機能を有効の状態に維持する。
【００２１】
即ち、この通信装置では、外部記憶装置が、ネットワーク上の端末装置により継続的に利用されている場合、データ取得手段によるデータの取得タイミングが到来しても、外部記憶装置を通信装置に割り当てることなく、ネットワーク上の端末装置に外部記憶装置を割り当てた状態のままとする。
【００２２】
従って、この通信装置によれば、外部制御機能及び内部制御機能の有効／無効が頻繁に切り替わることによる不都合の発生を防止することができ、好適に外部記憶装置を、通信装置内部及びネットワーク上の端末装置から利用することができる。
【００２３】
また、上述した通信装置が備える各手段としての機能は、プログラムにより、コンピュータに実現させることができる。
請求項６記載の発明は、上記第１インタフェース及び第２インタフェースを備えると共に、上記内部制御機能及び外部制御機能を備える通信装置のコンピュータに、外部からの指令に従い、内部制御機能及び外部制御機能のいずれか一方を、排他的に有効にする切替手段と、外部記憶装置に記憶させる書込対象のデータを、第１インタフェースを通じ、ネットワーク上のサーバ装置から取得するデータ取得手段と、切替手段により内部制御機能が有効にされているか、又は、外部制御機能が有効にされているかを判断する判断手段と、判断手段により外部制御機能が有効にされていると判断されると、外部制御機能を無効にして内部制御機能を有効にする自動切替手段と、内部制御機能が有効であることを条件として、データ取得手段が取得した書込対象のデータを、外部記憶装置に書き込むデータ記録手段としての機能を実現させるためのプログラムである。このプログラムを、通信装置のコンピュータに実行させれば、請求項１記載の通信装置と同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施例について、図面と共に説明する。
［１．各装置の概略説明］
図１は、本発明が適用されたディジタル複合機１の構成を表すブロック図である。本実施例の複合機１は、コピー機能、プリンタ機能、スキャナ機能、ファクシミリ機能、ＵＳＢデバイスサーバ機能、及び、コンテンツ収集機能を有し、制御部１０にて、各種処理を実行することにより、上述の機能を実現する。
【００２５】
具体的に、複合機１は、制御部１０の他、印刷部２１、読取部２３、ＦＡＸ通信部２５、操作部２７、表示部２９、ＵＳＢホストコントローラ３１、ＵＳＢルートハブ３３、ＬＡＮインタフェース３５を備え、これらを用い、上述の機能を実現する。
【００２６】
制御部１０は、各種プログラムを実行するＣＰＵ１１、各種プログラムを記憶するＲＯＭ１３、作業用メモリとしてのＲＡＭ１５、及び、設定情報等を記憶するＥＥＰＲＯＭ１７を備え、ＣＰＵ１１にて、プログラムを実行することにより、装置内各部を統括制御し、各種機能を実現する。
【００２７】
印刷部２１は、レーザプリンタ方式又はインクジェット方式にて、用紙に画像を形成するものであり、制御部１０に制御されて、給紙部（図示せず）から用紙を取り込み、この用紙に、制御部１０から与えられた画像データに対応する画像を印刷する。この印刷部２１は、コピー機能、プリンタ機能、ファクシミリ機能を実現する際に用いられる。
【００２８】
また、読取部２３は、載置部（図示せず）に載置された原稿を光学的に読み取り、読取画像を表す画像データを生成するものである。この読取部２３は、制御部１０に制御されて、原稿を読み取り、生成した画像データを制御部１０に提供する。この読取部２３は、コピー機能、ファクシミリ機能、スキャナ機能を実現する際に用いられる。
【００２９】
また、ＦＡＸ通信部２５は、制御部１０から与えられた画像データを、ファクシミリ信号により、公衆電話回線網（ＰＳＴＮ）を通じ、外部のファクシミリ装置に送信すると共に、外部のファクシミリ装置から、公衆電話回線網（ＰＳＴＮ）を通じて送信されてきたファクシミリ信号を、制御部１０が取扱い可能な画像データに変換して、ファクシミリ送受信を実現する。
【００３０】
その他、操作部２７は、ユーザが操作可能な各種キーを有し、キーを通じてユーザの操作を受け付け、その操作内容を制御部１０に通知する構成にされている。また、表示部２９は、液晶ディスプレイからなり、制御部１０に制御されて、各種情報を、ユーザに向け、文字又は画像の形態で表示する。
【００３１】
また、ＵＳＢホストコントローラ３１及びＵＳＢルートハブ３３は、ＵＳＢインタフェースを構成するものであり、ＵＳＢホストコントローラ３１は、制御部１０に制御されて、ＵＳＢ方式の通信信号（物理信号）を生成し、これをＵＳＢルートハブ３３に出力すると共に、ＵＳＢデバイス５からＵＳＢルートハブ３３を介して送信されてくる通信信号を受信して、ＵＳＢルートハブ３３に接続された各ＵＳＢデバイス５と通信し、制御部１０から入力されるＵＳＢデータを、このＵＳＢデータが宛先とするＵＳＢデバイス５に送信すると共に、ＵＳＢデバイス５から受信したＵＳＢデータを、制御部１０に入力する。また、ＵＳＢルートハブ３３は、ＵＳＢホストコントローラ３１からの出力を分岐する構成にされ、各分岐先にＵＳＢコネクタＣＮを備え、このＵＳＢコネクタＣＮに、複数のＵＳＢデバイス５を接続可能な構成にされている。
【００３２】
尚、本実施例では、上述のコンテンツ収集機能に用いられる音楽プレーヤ５０が、ＵＳＢデバイス５として、ＵＳＢコネクタＣＮに接続される。このコンテンツ収集機能に用いられる音楽プレーヤ５０は、ＭＰＥＧ方式の音楽データ等を再生可能なディジタルプレーヤであり、音楽データを記憶するための記憶部として、半導体メモリ製や磁気記録型の記憶部５０ａを備える。また、ＵＳＢデバイス５としては、音楽プレーヤ５０の他、ＵＳＢメモリ等の携帯型記憶装置を挙げることができ、コンテンツとしては、ウェブページや、サーバ装置から提供されるテキストデータ、音楽データ、音声データ、画像データ、映像データ等を挙げることができる。
【００３３】
その他、複合機１が備えるＬＡＮインタフェース３５は、複合機１が設置されるオフィスのローカルエリアネットワークＮＴに接続され、制御部１０に制御されて、ネットワークＮＴ内のノードと通信する。具体的に、本実施例のローカルエリアネットワークＮＴは、ＩＰ（インターネットプロトコル）ネットワークとして構成され、このネットワークＮＴ内には、複合機１のＵＳＢデバイス５をネットワークＮＴ経由で制御可能な機能を有するパーソナルコンピュータ（以下、「ＰＣ」とする。）７０と、ネットワークＮＴを広域ネットワークとしてのインターネットに接続するルータＲＴと、が設けられている。
【００３４】
ルータＲＴより先のインターネットには、周知のように、文字コンテンツや、静止画コンテンツ、動画コンテンツ、音楽（音声）コンテンツ等を配信するサーバ装置ＳＶが設けられており、複合機１は、ＬＡＮインタフェース３５を通じて、インターネット上のサーバ装置ＳＶから、各種コンテンツを取得する構成にされている。
【００３５】
即ち、このＬＡＮインタフェース３５は、上述のコンテンツ収集機能を実現する際や、ＵＳＢデバイスサーバ機能を実現する際に用いられる。ＵＳＢデバイスサーバ機能とは、複合機１に接続されたＵＳＢデバイス５を、ネットワークＮＴ経由で利用可能にする機能のことである。
【００３６】
図２は、ＵＳＢデバイスサーバ機能に関する説明図である。ＵＳＢデバイスサーバ機能は、制御部１０によりソフトウェア的に実現されるため、図２（ａ）では、制御部１０にて実行される各プログラムの関係、及び、プログラムとハードウェアとの関係を、ブロック図で示す。
【００３７】
本実施例の複合機１は、ＵＳＢデバイスサーバ機能の他に、制御部１０にて実行されるアプリケーションソフトウェアからの指令に従って、ＵＳＢデバイス５を制御する内部制御機能を有し、各機能は、ＵＳＢ管理プログラム１０７により切り替えられて実現される。尚、本実施例では、複合機１のアプリケーションソフトウェアとして、サーバ装置ＳＶからコンテンツを収集し音楽プレーヤ５０に収集したコンテンツを記録する機能を有したソフトウェア（以下、「コンテンツ収集ソフト」と称する。）１０９が、複合機１にインストールされている。
【００３８】
具体的に、制御部１０は、ＵＳＢデバイスサーバ機能を実現するに当たって、ＵＳＢＩＰ１０１、デバイスブリッジ１０３ａ、ＵＳＢホストコントローラドライバ１０５の各プログラムを実行する。デバイスブリッジ１０３ａは、ＵＳＢデバイスサーバ機能を実現する際、ＵＳＢドライバ１０３ｂに代えてロードされ、ＣＰＵ１１により実行される。換言すると、ＵＳＢデバイスサーバ機能に代えて内部制御機能を実現する際、ＣＰＵ１１は、デバイスブリッジ１０３ａに代えて、ＵＳＢドライバ１０３ｂをロードして実行する。
【００３９】
ＵＳＢＩＰ１０１は、ＬＡＮインタフェース３５を通じてネットワークＮＴから受信したＩＰパケットが内包するＵＳＢデータを、ＩＰパケットから抽出し、このＵＳＢデータを、ＵＳＢデータが宛先とするＵＳＢデバイス５に対応するデバイスブリッジ１０３ａに入力すると共に、デバイスブリッジ１０３ａから入力されたＵＳＢデータを、ＩＰパケット化して、これをネットワークＮＴに送出するプログラム（所謂、ＵＳＢ  ＯＶＥＲ  ＩＰ（登録商標）プログラム）である。
【００４０】
このＵＳＢＩＰ１０１に対しては、ＵＳＢ管理プログラム１０７により、ＩＰアドレスとＵＳＢデバイス５との対応関係が設定され、これにより、ＵＳＢデバイス５からデバイスブリッジ１０３ａ経由で入力されたＵＳＢデータは、当該ＵＳＢデバイス５に対応付けられたＩＰアドレスに対応する外部ＰＣ７０に送信され、外部ＰＣ７０からのＩＰパケット化されたＵＳＢデータは、対応するＵＳＢデバイス５に伝送され、外部ＰＣ７０−ＵＳＢデバイス５間のＵＳＢデータの授受が実現される。
【００４１】
また、デバイスブリッジ１０３ａは、ＵＳＢＩＰ１０１−ＵＳＢホストコントローラドライバ１０５間のＵＳＢデータの中継を行うものであり、ＵＳＢＩＰ１０１から入力されたＵＳＢデータを、ＵＳＢホストコントローラドライバ１０５に伝送すると共に、ＵＳＢホストコントローラドライバ１０５から入力されたＵＳＢデータを、ＵＳＢＩＰ１０１に伝送する機能を有する。
【００４２】
この他、ＵＳＢホストコントローラドライバ１０５は、入力された送信対象のＵＳＢデータを、ＵＳＢホストコントローラ３１を制御して、ＵＳＢホストコントローラ３１から下流（ＵＳＢルートハブ３３側）の伝送路に物理信号として出力し、上記ＵＳＢデータが宛先とするＵＳＢデバイス５に、このＵＳＢデータを送信すると共に、ＵＳＢデバイス５からＵＳＢルートハブ３３を通じて送信されてきたＵＳＢデータを、ＵＳＢホストコントローラ３１を介して受信して、ＵＳＢデータ送信元のＵＳＢデバイス５に対応するＵＳＢドライバ１０３ｂ又はデバイスブリッジ１０３ａに、受信したＵＳＢデータを伝送する機能を有する。
【００４３】
また、デバイスブリッジ１０３ａに代えて、内部制御機能の実現時にロードされるＵＳＢドライバ１０３ｂは、周知のように、ＵＳＢデバイス５を制御するためのプログラムであり、ＵＳＢデバイス５を利用する複合機１のアプリケーションソフトウェアからの指令に従って、その指令に対応する操作をＵＳＢデバイス５に加えるためのＵＳＢデータ（制御データ）を生成し、これをＵＳＢホストコントローラドライバ１０５経由でＵＳＢデバイス５に送信すると共に、ＵＳＢデバイス５からＵＳＢホストコントローラドライバ１０５経由で送信されてきたＵＳＢデータを、アプリケーションソフトウェアに提供するものである。
【００４４】
即ち、複合機１では、内部制御機能の実現時、ＵＳＢドライバ１０３ｂがロードされて、図２（ｂ）に示すように、ＵＳＢドライバ１０３ｂ、ＵＳＢホストコントローラドライバ１０５からなるＵＳＢデバイス５の制御系が構築される。一方、ＵＳＢデバイスサーバ機能の実現時には、ＵＳＢドライバ１０３ｂではなくデバイスブリッジ１０３ａがロードされて、図２（ｃ）に示すように、ＵＳＢＩＰ１０１、デバイスブリッジ１０３ａ、ＵＳＢホストコントローラドライバ１０５からなるＵＳＢデバイス５の制御系が構築される。
【００４５】
尚、上述したように、デバイスブリッジ１０３ａ及びＵＳＢドライバ１０３ｂは、ＵＳＢ管理プログラム１０７によって、ＵＳＢデバイス５毎に、切り替えられてロードされる。また、切替は、例えば、ＥＥＰＲＯＭ１７に記憶されたデバイス共有テーブルＴＢＬ１の共有設定情報に基づいて、行われる。図３は、ＥＥＰＲＯＭ１７が記憶するデバイス共有テーブルＴＢＬ１の構成を表す説明図である。
【００４６】
図３に示すように、ＥＥＰＲＯＭ１７が記憶するデバイス共有テーブルＴＢＬ１は、ＵＳＢデバイス毎の共有設定情報からなる。即ち、制御部１０は、ＵＳＢデバイス毎に設けられた共有設定情報ｄｅｖ１〜ｄｅｖＮに基づき、各ＵＳＢデバイス５を、対応ＵＳＢデバイス５の共有設定情報ｄｅｖｉ（ｉ＝１〜Ｎ）が示す設定情報に従って、制御する。
【００４７】
尚、共有設定情報ｄｅｖｉ（ｉ＝１〜Ｎ）は、当該共有設定情報に対応するＵＳＢデバイス５に割り当てられたデバイスＩＤと、ＵＳＢバージョン番号、デバイスクラス、ベンダＩＤ、及び、プロダクトＩＤを表すデバイス情報と、モード指定情報と、接続許可ホスト情報とからなる。
【００４８】
モード指定情報は、「共有モード」及び「非共有モード」のいずれかの値を採るものであり、モード指定情報が「共有モード」を示す場合、制御部１０は、対応するＵＳＢデバイス５に対してＵＳＢデバイスサーバ機能を働かせ、このＵＳＢデバイス５をネットワークＮＴ上の端末装置から利用できるようにする。一方、モード指定情報が「非共有モード」を示す場合、制御部１０は、対応するＵＳＢデバイス５に対して内部制御機能を働かせ、このＵＳＢデバイス５を、自装置内でのみ利用可能とする。
【００４９】
また、接続許可ホスト情報は、モード指定情報が「共有モード」の場合にのみ有効に機能するものであり、許可ホスト数情報と、接続許可ホスト毎のアドレスユーザ情報と、からなる。尚、ここでいう接続許可ホストとは、ＵＳＢデバイスサーバ機能を通じたネットワークＮＴ経由でのＵＳＢデバイス５の利用を許可されたネットワークＮＴ上の端末装置のことである。
【００５０】
許可ホスト数情報は、当該ＵＳＢデバイス５のネットワークＮＴ経由の利用が許可された接続許可ホストの数を表す情報であり、この数は、アドレスユーザ情報の個数に一致する。また、接続許可ホスト毎のアドレスユーザ情報は、接続許可ホストのＭＡＣアドレスと、この接続許可ホストからのＵＳＢデバイス５の利用が許可されたユーザのリストと、からなる。尚、このユーザリストは、ＵＳＢデバイス５の利用が許可されたユーザの名称が列挙されてなる。
【００５１】
この共有設定情報は、ＵＳＢデバイスの初回接続時に、ＵＳＢ管理プログラム１０７によって、ＥＥＰＲＯＭ１７が記憶するデバイス共有テーブルＴＢＬ１に生成・登録され、その後、操作部２７を通じて入力されるユーザからの指示に従って編集され、更新される。
【００５２】
続いて、複合機１に接続されたＵＳＢデバイス５を利用可能なＰＣ７０の構成について説明する。図４は、ＰＣ７０の構成を表すブロック図である。
本実施例のＰＣ７０は、周知のＰＣ７０と同様のハードウェア構成にされており、制御部８０と、各種プログラムを記憶するハードディスク装置９１と、液晶ディスプレイ等からなる表示部９３と、キーボードやポインティングデバイス等からなる操作部９５と、ＬＡＮインタフェース９７と、を備える。
【００５３】
ＬＡＮインタフェース９７は、複合機１と同一のネットワークＮＴに接続され、複合機１と通信可能な構成にされている。また、制御部８０は、各種プログラムを実行するＣＰＵ８１、ブートプログラム等を記憶するＲＯＭ８３、作業用メモリとしてのＲＡＭ８５を備え、ＣＰＵ８１にて各種プログラムを実行することにより、装置内各部を統括制御し、各種機能を実現する。例えば、制御部８０は、ＬＡＮインタフェース９７を介して、複合機１と通信し、複合機１に画像データを送信して、複合機１に、送信した画像データに基づく画像を、用紙に印刷させる。
【００５４】
その他、制御部８０は、自装置にインストールされたアプリケーションソフトウェアからの指令に従って、複合機１に接続されたＵＳＢデバイス５を、ネットワーク経由で制御する。例えば、制御部８０は、自装置にインストールされた音楽再生ソフトウェアからの指令に従って、複合機１に接続された音楽プレーヤ５０を、ネットワーク経由で制御し、音楽プレーヤ５０が記憶するコンテンツを、ネットワーク経由で読み出して、例えば、音楽コンテンツを再生処理する。
【００５５】
図５は、ＰＣ７０の制御部８０が、ネットワーク経由でＵＳＢデバイス５を制御するに当たって、実行するプログラムに関する説明図であり、制御部８０が実行する各プログラムの関係、及び、プログラムとハードウェアとの関係をブロック図で示したものである。
【００５６】
具体的に、制御部８０は、ネットワーク経由でＵＳＢデバイス５を制御するに当たって、ＵＳＢドライバ８０１、仮想ＵＳＢホストコントローラドライバ８０３、ＵＳＢＩＰ８０５の各プログラムを実行する。
【００５７】
ＵＳＢＩＰ８０５は、ＬＡＮインタフェース９７を通じてネットワーク経由で受信したＩＰパケットが内包するＵＳＢデータを、ＩＰパケットから抽出して、仮想ＵＳＢホストコントローラドライバ８０３に入力すると共に、仮想ＵＳＢホストコントローラドライバ８０３から入力されたＵＳＢデータを、ＩＰパケット化して、ＵＳＢデータが宛先とするＵＳＢデバイス５が接続された複合機１に送信するプログラム（所謂、ＵＳＢ  ＯＶＥＲ  ＩＰ（登録商標）プログラム）である。
【００５８】
このＵＳＢＩＰ８０５に対しては、リモートデバイス管理プログラム８０７により、ＵＳＢデバイス５と、このＵＳＢデバイス５を有する複合機１のＩＰアドレスとの対応関係が設定され、これにより、複合機１に接続されたＵＳＢデバイス５と、当該ＰＣ７０との通信が実現される。
【００５９】
また、仮想ＵＳＢホストコントローラドライバ８０３は、ＵＳＢドライバ８０１−ＵＳＢＩＰ８０５間のＵＳＢデータを中継するプログラムであり、ＵＳＢＩＰ８０５から入力されたＵＳＢデータを、送信元のＵＳＢデバイス５に対応するＵＳＢドライバ８０１に入力すると共に、ＵＳＢドライバ８０１から入力されたＵＳＢデータを、ＵＳＢＩＰ８０５に入力するものである。
【００６０】
また、ＵＳＢドライバ８０１は、ＵＳＢデバイス５を制御するためのプログラムであり、ＵＳＢデバイス５を利用するアプリケーションソフトウェアからの指令に従って、その指令に対応する操作をＵＳＢデバイス５に加えるためのＵＳＢデータ（制御データ）を生成し、これを仮想ＵＳＢホストコントローラドライバ８０３経由でネットワークＮＴ上のＵＳＢデバイス５に送信すると共に、ネットワークＮＴ上のＵＳＢデバイス５から送信されてきたＵＳＢデータを、仮想ＵＳＢホストコントローラドライバ８０３経由で受け取り、これをアプリケーションソフトウェアに提供するものである。
【００６１】
その他、リモートデバイス管理プログラム８０７は、上記対応関係の設定と共に、ＵＳＢデバイス５に対する接続要求、接続解除要求等を、ユーザからの指示に従って、複合機１に送信する機能を有する。
【００６２】
以上、ＰＣ７０及び複合機１に関し、装置構成の概略を説明したが、続いて複合機１で実現される処理を、具体的に説明する。
［２．ディジタル複合機のＵＳＢ管理プログラムによって実現される処理］
上述したようにＵＳＢ管理プログラム１０７は、複合機１に接続された各ＵＳＢデバイス５に対し、ＵＳＢデバイス毎に、ＵＳＢデバイスサーバ機能及び内部制御機能のいずれか一方を働かせる機能を有するが、この機能は、以下に説明する処理によって実現される。
【００６３】
図６は、ＵＳＢコネクタＣＮにＵＳＢデバイス５が接続されると、ＵＳＢ管理プログラム１０７に従って、制御部１０が実行する接続受付処理を表すフローチャートである。
制御部１０は、接続受付処理を開始すると、まず、ＵＳＢデバイス５からデバイスディスクリプタを取得するためにＵＳＢドライバをロードして（Ｓ１１０）、今回ＵＳＢコネクタＣＮに接続されたＵＳＢデバイス５からデバイスディスクリプタを取得する（Ｓ１２０）。その後、Ｓ１１０でロードしたＵＳＢドライバをアンロードする（Ｓ１２５）。周知のように、デバイスディスクリプタは、ＵＳＢデバイス５のデバイス情報を示すものであり、ＵＳＢバージョン番号やデバイスクラス、ベンダＩＤ、プロダクトＩＤ等が記述されてなるものである。
【００６４】
また、Ｓ１２５の処理を終えると、制御部１０は、取得したデバイスディスクリプタが示す情報に基づき、ＥＥＰＲＯＭ１７が記憶するデバイス共有テーブルＴＢＬ１において、今回接続されたＵＳＢデバイス５の共有設定情報を検索し（Ｓ１３０）、対応する共有設定情報がない場合には（Ｓ１４０でＮｏ）、Ｓ１５０に移行し、対応する共有設定情報がある場合には（Ｓ１４０でＹｅｓ）、Ｓ１６０に移行する。
【００６５】
尚、ＥＥＰＲＯＭ１７が記憶するデバイス共有テーブルＴＢＬ１に、今回接続されたＵＳＢデバイス５の共有設定情報が存在するか否かは、デバイス共有テーブルＴＢＬ１に登録された各共有設定情報が有するデバイス情報に基づいて判断する。即ち、Ｓ１２０で取得したデバイスディスクリプタが示すＵＳＢバージョン番号、デバイスクラス、ベンダＩＤ及びプロダクトＩＤと同一のデバイス情報を示す共有設定情報が、デバイス共有テーブルＴＢＬ１に登録されている場合、制御部１０は、今回接続されたＵＳＢデバイス５の共有設定情報がデバイス共有テーブルＴＢＬ１に存在すると判断し、そうでない場合には、対応する共有設定情報が存在しないと判断する。
【００６６】
Ｓ１５０に移行すると、制御部１０は、デバイス共有テーブルＴＢＬ１に、今回接続されたＵＳＢデバイス５の共有設定情報を、登録する。具体的には、デバイスＩＤとして、このＵＳＢデバイス５に割り当てたＩＤを記述し、デバイス情報として、デバイスディスクリプタが示すＵＳＢバージョン番号、デバイスクラス、ベンダＩＤ及びプロダクトＩＤを記述し、モード指定情報として、「非共有モード」を記述し、接続許可ホスト情報として、空の情報を設定してなる共有設定情報を生成し、これをデバイス共有テーブルＴＢＬ１に登録する。また、このようにして共有設定情報を、デバイス共有テーブルＴＢＬ１に登録すると、制御部１０は、Ｓ１６０に移行する。
【００６７】
Ｓ１６０に移行すると、制御部１０は、ＲＡＭ１５が記憶する接続デバイステーブルＴＢＬ２に、今回接続されたＵＳＢデバイス５の接続デバイス情報を登録する。図７は、ＲＡＭ１５が記憶する接続デバイステーブルＴＢＬ２の構成を表す説明図である。
【００６８】
接続デバイステーブルＴＢＬ２は、ＵＳＢコネクタＣＮに接続されたＵＳＢデバイス５の情報を管理するものであり、ＵＳＢコネクタＣＮに接続されたＵＳＢデバイス毎に、接続デバイス情報を有する。即ち、この接続デバイステーブルＴＢＬ２には、Ｓ１６０の処理により、ＵＳＢコネクタＣＮにＵＳＢデバイス５が接続される度、接続されたＵＳＢデバイス５の接続デバイス情報が登録される。
【００６９】
具体的に、接続デバイス情報は、接続されたＵＳＢデバイス５のデバイスＩＤと、このＵＳＢデバイス５に「共有モード」及び「非共有モード」のいずれが設定されているかを表すモード情報と、ＵＳＢデバイス５への最終アクセス時刻の情報と、接続ホスト情報と、ＵＳＢデバイス５を前回占有していたネットワークＮＴ上の端末装置のＭＡＣアドレスである前接続ホストＭＡＣアドレスの情報と、を有する。
【００７０】
尚、接続ホスト情報は、現在において、該当ＵＳＢデバイス５を占有するネットワークＮＴ上の端末装置のＭＡＣアドレス、及び、このＵＳＢデバイス５を利用するユーザ名の情報からなる。
【００７１】
詳述すると、Ｓ１６０において、制御部１０は、今回接続されたＵＳＢデバイス５の共有設定情報ｄｅｖｉに基づき、共有設定情報が示すモードと同一のモードを表す値（「共有モード」又は「非共有モード」）を、モード情報として記した接続デバイス情報であって、接続ホスト情報、最終アクセス時刻及び前接続ホストＭＡＣアドレスの情報を、空情報とした接続デバイス情報を生成し、これを接続デバイステーブルＴＢＬ２に登録する。
【００７２】
また、Ｓ１６０での処理を終えると、制御部１０は、当該接続受付処理を終了する。
続いて、ＵＳＢデバイス５に対する接続要求を処理するために、制御部１０が、ＵＳＢ管理プログラム１０７に基づいて実行する接続要求受付処理について説明する。図８は、接続要求が発生すると、制御部１０が実行する接続要求受付処理を表すフローチャートである。
【００７３】
接続要求受付処理を開始すると、制御部１０は、接続要求元がネットワークＮＴ上の端末装置であるか否かを判断する（Ｓ２１０）。
そして、接続要求元がネットワークＮＴ上の端末装置ではなく自装置のアプリケーションソフトウェアであると判断すると（Ｓ２１０でＮｏ）、Ｓ２３０にて、接続要求されたＵＳＢデバイス５に適合するＵＳＢドライバ１０３ｂをロードして、接続要求されたＵＳＢデバイス５の制御系として、ＵＳＢドライバ１０３ｂを用いたＵＳＢデバイス５の制御系を構築する。その後、当該接続要求受付処理を終了する。但し、自装置のアプリケーションソフトウェアから接続要求があった時点で、既に対応するＵＳＢデバイス５のＵＳＢドライバ１０３ｂ又はデバイスブリッジ１０３ａがロードされ、接続要求されたＵＳＢデバイス５の制御系が構築されている場合には、Ｓ２３０で何ら処理を実行することなく、当該接続要求受付処理を終了する。
【００７４】
一方、Ｓ２１０において、接続要求元がネットワークＮＴ上の端末装置であると判断すると（Ｓ２１０でＹｅｓ）、制御部１０は、接続要求元が、予めＵＳＢデバイス５の利用を許可された接続許可ホスト及びユーザに該当する正当な者であるか否かを判断する（Ｓ２４０）。尚、この判断は、ＥＥＰＲＯＭ１７に記録されたデバイス共有テーブルＴＢＬ１に基づいて行われる。
【００７５】
即ち、制御部１０は、Ｓ２４０において、接続要求されたＵＳＢデバイス５の共有設定情報ｄｅｖｉを参照し、参照した共有設定情報が示すモードが「共有モード」であるかを判断する。そして、参照した共有設定情報が示すモードが「共有モード」ではない場合、接続要求元が正当な者ではないと判断する。
【００７６】
一方、参照した共有設定情報が示すモードが「共有モード」である場合には、その共有設定情報が示す接続許可ホスト情報に基づき、接続要求元がＵＳＢデバイス５の利用を許可された接続許可ホスト及びユーザに該当するかを判断する。尚、接続要求には、接続要求元のＭＡＣアドレス及びユーザ名の情報が付加されており、上記判断は、接続要求に付加された情報と、接続許可ホスト情報との比較により行う。
【００７７】
但し、本実施例では、共有設定情報が示すモードが「共有モード」であるにも拘わらず、接続許可ホスト情報が空情報である場合、ＵＳＢデバイス５が全ての端末装置に開放されているとして取り扱い、接続要求に付加されたＭＡＣアドレス及びユーザ名の情報によらず、全ての端末装置に対し、接続要求元が正当な者であると判断する。
【００７８】
そして、参照した共有設定情報に基づき、接続要求元が正当な者ではないと判断すると（Ｓ２４０でＮｏ）、制御部１０は、当該接続要求受付処理を終了し、正当な者であると判断すると（Ｓ２４０でＹｅｓ）、Ｓ２５０に移行する。尚、本実施例では、Ｓ２４０での判断時に、接続要求されたＵＳＢデバイス５についての制御系が既に構築されており、ＵＳＢデバイス５が他の者に占有されている場合、接続要求元が正当なものではないと取り扱って、当該接続要求受付処理を終了する。
【００７９】
また、Ｓ２５０に移行すると、制御部１０は、デバイスブリッジ１０３ａをロードして、今回接続要求があったＵＳＢデバイス５の制御系として、デバイスブリッジ１０３ａを用いたＵＳＢデバイス５の制御系（図２（ｃ）参照）を構築する。また、Ｓ２５０でデバイスブリッジ１０３ａをロードした後には、ＵＳＢＩＰ１０１に対して、接続要求元のＩＰアドレスと接続要求されたＵＳＢデバイス５との対応関係を設定し（Ｓ２６０）、接続要求されたＵＳＢデバイス５と接続要求元の端末装置とをＵＳＢ通信可能に接続する。
【００８０】
また、Ｓ２６０での処理を終えると、制御部１０は、接続要求されたＵＳＢデバイス５の接続デバイス情報を、接続デバイステーブルＴＢＬ２において編集し、該当接続デバイス情報を構成する接続ホスト情報を、今回接続要求してきた端末装置のＭＡＣアドレスとユーザ名とからなる情報に更新すると共に、最終アクセス時刻を現在時刻に更新する（Ｓ２７０）。その後、当該接続要求受付処理を終了する。
【００８１】
続いて、一度構築されたＵＳＢデバイス５の制御系の解除を要求する接続解除要求を処理するために、制御部１０が、ＵＳＢ管理プログラム１０７に基づいて実行する接続解除要求受付処理について説明する。図９は、接続解除要求が発生すると、制御部１０が実行する接続解除要求受付処理を表すフローチャートである。
【００８２】
接続解除要求受付処理を開始すると、制御部１０は、接続解除要求が正当な要求であるか否かを判断する（Ｓ３１０）。具体的に、接続解除要求が示す接続解除対象のＵＳＢデバイス５が、非共有モードで動作している場合、制御部１０は、自装置内のアプリケーションソフトウェアから発生した接続解除要求を、正当な要求と取り扱い、ネットワークＮＴ経由で受信した接続解除要求を、正当でない要求として取り扱う。
【００８３】
また、接続解除要求が示す接続解除対象のＵＳＢデバイス５が、共有モードで動作している場合、制御部１０は、自装置内のアプリケーションソフトウェアから発生した接続解除要求及び接続解除対象のＵＳＢデバイス５に接続中の端末装置から、ネットワークＮＴ経由で受信した接続解除要求を、正当な要求であると取り扱い、非接続中のネットワークＮＴ上の端末装置から受信した接続解除要求を、正当でない要求であるとして取り扱う。
【００８４】
そして、接続解除要求が正当な要求ではないと判断すると（Ｓ３１０でＮｏ）、制御部１０は、Ｓ３３０以降の処理を実行することなく、当該接続解除要求受付処理を終了する。
【００８５】
一方、接続解除要求が正当な要求であると判断すると（Ｓ３１０でＹｅｓ）、制御部１０は、接続解除要求が、ネットワークＮＴ上の端末装置が占有するＵＳＢデバイス５に対する接続解除要求であるか否かを判断し（Ｓ３３０）、接続解除要求が、ネットワークＮＴ上の端末装置が占有するＵＳＢデバイス５に対する接続解除要求であると判断すると（Ｓ３３０でＹｅｓ）、このＵＳＢデバイス５の制御系を構成するデバイスブリッジ１０３ａをアンロードして（Ｓ３４０）、デバイスブリッジ１０３ａを用いたＵＳＢデバイス５の制御系を一旦解除し、当該ＵＳＢデバイス５を利用していたネットワークＮＴ上の端末装置から、ＵＳＢデバイス５を使えないようにする。
【００８６】
また、Ｓ３４０での処理を終えると、制御部１０は、接続デバイステーブルＴＢＬ２における接続解除要求のあったＵＳＢデバイス５の接続デバイス情報が内包する接続ホスト情報をクリアして、接続解除要求のあったＵＳＢデバイス５に対応する接続デバイス情報を更新する（Ｓ３５０）。その後、当該接続解除要求受付処理を終了する。
【００８７】
一方、Ｓ３３０において、接続解除要求が、ネットワークＮＴ上の端末装置が占有するＵＳＢデバイス５に対する接続解除要求ではないと判断すると（Ｓ３３０でＮｏ）、このＵＳＢデバイス５の制御系を構成するＵＳＢドライバ１０３ｂをアンロードして（Ｓ３６０）、ＵＳＢドライバ１０３ｂを用いたＵＳＢデバイス５の制御系を一旦解除し、ＵＳＢデバイス５を利用できないようにする。そして、この処理を終えると、当該接続解除要求受付処理を終了する。
【００８８】
尚、接続解除要求がデバイスブリッジ１０３ａもＵＳＢドライバ１０３ｂもロードされていない接続解除済のＵＳＢデバイス５に対する接続要求である場合には、Ｓ３３０でＮｏと判断して、Ｓ３６０で何ら処理を実行することなく、当該接続解除要求受付処理を終了する。
【００８９】
また、当該複合機１のＵＳＢコネクタＣＮに接続されたＵＳＢデバイス５は、上述の接続解除を受けて、ＵＳＢコネクタＣＮから取外し可能な状態となるわけであるが、制御部１０は、ＵＳＢコネクタＣＮからＵＳＢデバイス５が外された場合に必要な処理を実行するため、図１０に示す取外受付処理も実行する。尚、図１０は、複合機１のＵＳＢコネクタＣＮからＵＳＢデバイス５が取り外されると、制御部１０が実行する取外受付処理を表すフローチャートである。
【００９０】
取外受付処理を開始すると、制御部１０は、ＵＳＢコネクタＣＮより取り外されたＵＳＢデバイス５の接続デバイス情報を特定する（Ｓ４１０）。また、この処理を終えると、Ｓ４１０により特定された接続デバイス情報を、接続デバイステーブルＴＢＬ２から削除する（Ｓ４２０）。その後、当該取外受付処理を終了する。
【００９１】
その他、本実施例におけるＵＳＢ管理プログラム１０７は、接続デバイステーブルＴＢＬ２の各接続デバイス情報が示す最終アクセス時刻を更新する機能を有する。この機能は、制御部１０が、ＵＳＢ管理プログラム１０７に基づき実行する最終アクセス時刻更新処理にて実現される。尚、図１１は、制御部１０が実行する最終アクセス時刻更新処理を表すフローチャートである。この最終アクセス時刻更新処理は、ＵＳＢデバイス５に対するアクセス（書込／読出のアクセス）があると、制御部１０により実行される。
【００９２】
最終アクセス時刻更新処理を開始すると、制御部１０は、接続デバイステーブルＴＢＬ２内で、アクセスのあったＵＳＢデバイス５の接続デバイス情報を特定する（Ｓ５１０）。また、この処理を終えると、Ｓ５２０に移行し、アクセスのあったＵＳＢデバイス５の接続デバイス情報が示す最終アクセス時刻を、現在時刻に更新する。その後、当該最終アクセス時刻更新処理を終了する。制御部１０は、このような処理を実行することにより、逐次、最終アクセス時刻を更新し、接続デバイス情報に、各ＵＳＢデバイス５への最終アクセス時刻を記す。
【００９３】
以上、ＵＳＢ管理プログラム１０７により実現される処理について説明したが、続いて、コンテンツ収集機能に係る処理について説明する。
［３．ディジタル複合機のコンテンツ収集ソフトによって実現される処理］
上述したコンテンツ収集機能は、複合機１にインストールされたコンテンツ収集ソフト１０９を、制御部１０が実行することにより、実現される。具体的に、この機能は、コンテンツ収集ソフト１０９に基づいて、制御部１０が、図１２に示す処理を実行することにより実現される。図１２は、制御部１０が繰返し実行するコンテンツ更新管理処理を表すフローチャートである。
【００９４】
コンテンツ更新管理処理を開始すると、制御部１０は、まず、参照番号ｋを初期化し、ｋ＝０に設定する（Ｓ６１０）。その後、参照番号ｋが、ＥＥＰＲＯＭ１７が記憶するコンテンツ更新情報テーブルＴＢＬ３（図１３参照）において登録されたコンテンツ更新情報のインデックス番号の最大値Ｍより大きいか否かを判断し（Ｓ６２０）、大きいと判断すると（Ｓ６２０でＹｅｓ）、当該コンテンツ更新管理処理を終了する。一方、参照番号が最大値Ｍ以下であると判断すると（Ｓ６２０でＮｏ）、Ｓ６３０に移行する。
【００９５】
図１３は、ＥＥＰＲＯＭ１７が記憶するコンテンツ更新情報テーブルＴＢＬ３の構成を表す説明図である。このコンテンツ更新情報テーブルＴＢＬ３は、コンテンツ取得先のサーバ装置ＳＶが有するＲＳＳデータのＵＲＬが記述されてなるものであり、初回のＵＲＬ登録時に、ＥＥＰＲＯＭ１７に生成される。換言すると、コンテンツ更新管理処理は、このコンテンツ更新情報テーブルＴＢＬ３が生成された後、実行される。
【００９６】
図１３に示すように、コンテンツ更新情報テーブルＴＢＬ３は、ＲＳＳデータの取得先ＵＲＬ毎に、コンテンツ更新情報を有する。
コンテンツ更新情報は、ＲＳＳデータによる配信コンテンツの書込先ＵＳＢデバイスを表すデバイスＩＤの情報と、ＲＳＳデータの取得先ＵＲＬと、最後にＲＳＳデータの配信コンテンツを取得してコンテンツを書込先ＵＳＢデバイスに書き込んだ時刻である最終更新時刻の情報と、次回ＲＳＳデータの配信コンテンツを取得して書込先ＵＳＢデバイスに書き込むべき時刻である次回更新時刻の情報と、からなる。尚、コンテンツ更新情報テーブルＴＢＬ３においては、これらのコンテンツ更新情報のインデックス番号が、コンテンツ更新情報テーブルＴＢＬ３に登録されたコンテンツ更新情報の順に、値０から順に割り当てられている。
【００９７】
また、コンテンツ更新情報テーブルＴＢＬ３には、ユーザからの指示に基づいて、コンテンツ更新情報が登録されるが、このとき、コンテンツ更新情報は、最終更新時刻及び次回更新時刻が空の状態で生成され、コンテンツ更新情報テーブルＴＢＬ３に登録される。
【００９８】
このような構成のコンテンツ更新情報テーブルＴＢＬ３を参照して、参照番号ｋが値Ｍ以下であると判断すると（Ｓ６２０でＮｏ）、コンテンツ更新情報テーブルＴＢＬ３においては、Ｓ６３０以降の処理が未処理のコンテンツ更新情報が存在するということであるため、制御部１０は、Ｓ６３０にて、コンテンツ更新情報テーブルＴＢＬ３における参照番号ｋに一致するインデックス番号ｋのコンテンツ更新情報を、読み出す。
【００９９】
そして、この処理を終えると、制御部１０は、現在時刻が、インデックス番号ｋのコンテンツ更新情報が示す次回更新時刻を、経過しているか否かを判断する（Ｓ６４０）。そして、現在時刻が、インデックス番号ｋのコンテンツ更新情報が示す次回更新時刻を経過していると判断すると（Ｓ６４０でＹｅｓ）、Ｓ６４５に移行し、経過していないと判断すると（Ｓ６４０でＮｏ）、Ｓ７８０に移行する。
【０１００】
Ｓ６４５に移行すると、制御部１０は、インデックス番号ｋのコンテンツ更新情報が示すデバイスＩＤに対応するコンテンツの書込先ＵＳＢデバイスが、ＵＳＢコネクタＣＮに接続されているか否かを判断し、ＵＳＢコネクタＣＮに、書込先ＵＳＢデバイスが接続されていると判断すると（Ｓ６４５でＹｅｓ）、Ｓ６５０に移行し、接続されていないと判断すると（Ｓ６４５でＮｏ）、Ｓ７８０に移行する。尚、Ｓ６４５では、接続デバイステーブルＴＢＬ２に書込先ＵＳＢデバイスの接続デバイス情報が登録されているか否かを判断することにより、ＵＳＢコネクタＣＮに、書込先ＵＳＢデバイスが接続されているか否かを判断する。
【０１０１】
また、Ｓ６５０に移行すると、制御部１０は、インデックス番号ｋのコンテンツ更新情報が示すデバイスＩＤに対応する上記書込先ＵＳＢデバイスが、ネットワークＮＴ上の端末装置に占有されているか否かを判断する。即ち、接続デバイステーブルＴＢＬ２を参照して、書込先ＵＳＢデバイスの接続ホスト情報に、接続中ホストのＭＡＣアドレスが登録されているかを判断する。
【０１０２】
そして、書込先ＵＳＢデバイスが、ネットワークＮＴ上の端末装置に占有されていないと判断すると（Ｓ６５０でＮｏ）、制御部１０は、Ｓ６６０に移行し、書込先ＵＳＢデバイスが自装置にて占有されているか否かを判断する。即ち、書込先ＵＳＢデバイスに対して内部制御機能が働いているか否かを判断する。
【０１０３】
そして、書込先ＵＳＢデバイスが自装置にて占有されていると判断すると（Ｓ６６０でＹｅｓ）、制御部１０は、Ｓ７００に移行して、図１４に示すコンテンツ更新処理を実行することで、インターネット上のサーバ装置ＳＶからコンテンツを取得し、書込先ＵＳＢデバイスに、コンテンツを書き込む。尚、本実施例における書込先ＵＳＢデバイスは、音楽再生、静止画・動画再生、及び、テキスト文書の表示が可能な携帯型の音楽プレーヤ５０であるものとする。また、Ｓ７００での処理を終えると、制御部１０は、Ｓ７８０に移行する。
【０１０４】
一方、Ｓ６６０で、書込先ＵＳＢデバイスが自装置にて占有されていないと判断すると（Ｓ６６０でＮｏ）、制御部１０は、Ｓ６７０に移行し、書込先ＵＳＢデバイスに対応するＵＳＢドライバ１０３ｂをロードして、図２（ｂ）に示す制御系を構築し、自装置と書込先ＵＳＢデバイスとを論理接続し、コンテンツ収集ソフト１０９から書込先ＵＳＢデバイスを利用できるようにする。
【０１０５】
また、この処理を終えると、制御部１０は、Ｓ６８０に移行し、図１４に示すコンテンツ更新処理を実行することで、インターネット上のサーバ装置ＳＶからコンテンツを取得し、書込先ＵＳＢデバイスに、コンテンツを書き込む。
【０１０６】
また、Ｓ６８０においてコンテンツ更新処理を終了すると、制御部１０は、Ｓ６９０に移行し、Ｓ６７０で読み出したＵＳＢドライバ１０３ｂをアンロードして、書込先ＵＳＢデバイスの制御系を解除し、自装置と書込先ＵＳＢデバイスとの論理接続を解除する。また、この処理を終えると、制御部１０は、Ｓ７８０に移行する。
【０１０７】
この他、制御部１０は、Ｓ６５０において、書込先ＵＳＢデバイスが、ネットワークＮＴ上の端末装置に占有されていると判断すると（Ｓ６５０でＹｅｓ）、Ｓ７１０に移行して、現時点で、書込先ＵＳＢデバイスの接続デバイス情報が示す最終アクセス時刻から予め定められた一定時間が経過しているか否かを判断する。そして、最終アクセス時刻から一定時間が経過していないと判断すると（Ｓ７１０でＮｏ）、Ｓ７８０に移行する。
【０１０８】
一方、最終アクセス時刻から一定時間が経過していると判断すると（Ｓ７１０でＹｅｓ）、制御部１０は、Ｓ７２０に移行し、現在書込先ＵＳＢデバイスを占有している接続ホストのＭＡＣアドレスを、前接続ホストＭＡＣアドレスとして、書込先ＵＳＢデバイスの接続デバイス情報に書き込む。
【０１０９】
また、この処理を終えると、制御部１０は、Ｓ７３０に移行して、書込先ＵＳＢデバイスのデバイスブリッジ１０３ａをアンロードして、書込先ＵＳＢデバイスの制御系を一旦解除することで、接続ホストと書込先ＵＳＢデバイスとの接続を解除する。その後、Ｓ７４０に移行する。
【０１１０】
また、Ｓ７４０に移行すると、制御部１０は、書込先ＵＳＢデバイスに対応するＵＳＢドライバ１０３ｂをロードして、図２（ｂ）に示す書込先ＵＳＢデバイスの制御系を構築して、自装置と書込先ＵＳＢデバイスとを論理的に接続する。また、この際には、書込先ＵＳＢデバイスの接続ホスト情報を、クリアする。
【０１１１】
この他、Ｓ７４０での処理を終えると、制御部１０は、Ｓ７５０に移行し、図１４に示すコンテンツ更新処理を実行することで、インターネット上のサーバ装置ＳＶからコンテンツを取得し、書込先ＵＳＢデバイスに、コンテンツを書き込む。また、Ｓ７５０での処理を終えると、Ｓ７６０に移行して、Ｓ７４０でロードしたＵＳＢドライバ１０３ｂをアンロードし、自装置と書込先ＵＳＢデバイスとの論理的な接続を解除することで、書込先ＵＳＢデバイスを開放する。
【０１１２】
また、Ｓ７６０での処理を終えると、制御部１０は、Ｓ７７０に移行し、Ｓ７３０でアンロードした書込先ＵＳＢデバイスのデバイスブリッジ１０３ａをロードして、前接続ホストと書込先ＵＳＢデバイスとを再接続する。その後、Ｓ７８０に移行する。
【０１１３】
また、Ｓ７８０に移行すると、制御部１０は、参照番号ｋを１加算し（Ｓ７８０）、加算後の参照番号ｋが、最大値Ｍより大きいか否かを判断し（Ｓ６２０）、参照番号ｋが最大値Ｍより大きいと判断すると（Ｓ６２０でＹｅｓ）、当該コンテンツ更新管理処理を終了する。一方、参照番号ｋが最大値Ｍ以下である場合には（Ｓ６２０でＮｏ）、前段階でのＳ７８０におけるカウントアップ後の参照番号ｋに一致するインデックス番号ｋのコンテンツ更新情報を、読み出し（Ｓ６３０）、Ｓ６４０以降の処理を実行する。
【０１１４】
制御部１０は、このようにしてコンテンツ更新管理処理を実行するが、このコンテンツ更新管理処理のＳ６８０，Ｓ７００，Ｓ７５０においては、以下に説明する内容のコンテンツ更新処理を実行する。図１４は、制御部１０が実行するコンテンツ更新処理を表すフローチャートである。
【０１１５】
コンテンツ更新処理を開始すると、制御部１０は、前段階で読み出したインデックス番号ｋのコンテンツ更新情報が示すＲＳＳデータ取得先のＵＲＬに従い、ＵＲＬに対応するＲＳＳデータを、ネットワークＮＴを通じて、サーバ装置ＳＶから取得する（Ｓ８１０）。
【０１１６】
また、この処理を終えると、制御部１０は、ＲＳＳデータを構成するＩＴＥＭ要素を、Ｓ８３０以降にて、全て処理したか否かを判断し、処理していないと判断すると（Ｓ８２０でＮｏ）、Ｓ８３０に移行して、未処理のＩＴＥＭ要素を、一つ処理対象に選択し、選択した処理対象のＩＴＥＭ要素を解釈して（Ｓ８４０）、ＩＴＥＭ要素に対応する配信コンテンツが映像又は音声コンテンツであるか否かを、判断する（Ｓ８５０）。尚、配信コンテンツが映像又は音声コンテンツであるか否かは、例えば、ＩＴＥＭ要素内にｅｎｃｌｏｓｕｒｅ要素が付加されているか否かで判断することができる。
【０１１７】
そして、ＩＴＥＭ要素に対応する配信コンテンツが映像又は音声コンテンツであると判断すると（Ｓ８５０でＹｅｓ）、ＩＴＥＭ要素が示すコンテンツ取得先のＵＲＬから、映像又は音声コンテンツを取得し（Ｓ８６０）、この取得コンテンツを、書込先ＵＳＢデバイスの記憶部５０ａに書き込む（Ｓ８６５）。
【０１１８】
尚、図１５は、配信コンテンツが音声コンテンツであるＩＴＥＭ要素を有するＲＳＳデータの一例を示した説明図である。
また、Ｓ８６５での処理を終えると、制御部１０は、Ｓ８２０に移行して、再び、ＲＳＳデータを構成するＩＴＥＭ要素を、全て処理したか否かを判断する。そして、全ＩＴＥＭ要素を処理したと判断すると（Ｓ８２０でＹｅｓ）、Ｓ９００に移行し、全ＩＴＥＭ要素を処理していないと判断すると（Ｓ８２０でＮｏ）、Ｓ８３０に移行する。
【０１１９】
この他、Ｓ８５０において、処理対象のＩＴＥＭ要素に対応する配信コンテンツが映像又は音声コンテンツではないと判断すると（Ｓ８５０でＮｏ）、制御部１０は、Ｓ８８０に移行し、ＩＴＥＭ要素内のｔｉｔｌｅ要素及びｄｅｓｃｒｉｐｔｉｏｎ要素、及び、ＲＳＳデータが有するｃｈａｎｎｅｌ要素内のｔｉｔｌｅ要素、ｄｅｓｃｒｉｐｔｉｏｎ要素、ｃｏｐｙｒｉｇｈｔ要素、及び、ｐｕｂＤａｔｅ要素等に基づいて、配信コンテンツの要約文を表す印刷用画像データを生成する。尚、図１６下段は、ＲＳＳデータが図１６上段に示す構成にされている場合に、Ｓ８８０で生成する印刷用画像データの例を示した図である。
【０１２０】
また、この処理を終えると、制御部１０は、Ｓ８８５に移行して、Ｓ８８０で生成した印刷用画像データを印刷処理する。その他、Ｓ８８５での処理を終えると、制御部１０は、Ｓ８９０に移行し、印刷用画像データと同様にして、ＩＴＥＭ要素内のｔｉｔｌｅ要素及びｄｅｓｃｒｉｐｔｉｏｎ要素、及び、ＲＳＳデータが有するｃｈａｎｎｅｌ要素内のｔｉｔｌｅ要素、ｄｅｓｃｒｉｐｔｉｏｎ要素、ｃｏｐｙｒｉｇｈｔ要素、及び、ｐｕｂＤａｔｅ要素等に基づいて、配信コンテンツの要約文を表す画面表示用データを生成する。尚、ここで生成する画面表示用データは、書込先ＵＳＢデバイスの表示画面にコンテンツの要約文を表示するためのデータのことである。
【０１２１】
また、この処理を終えると、制御部は、Ｓ８９５に移行して、Ｓ８９０で生成した配信コンテンツの要約文を表す画面表示用データを、書込先ＵＳＢデバイスの記憶部５０ａに書き込む。その後、制御部は、Ｓ８２０に移行して、再び、ＲＳＳデータを構成するＩＴＥＭ要素を、全て処理したか否かを判断する。そして、全ＩＴＥＭ要素を処理したと判断すると（Ｓ８２０でＹｅｓ）、Ｓ９００に移行する。
【０１２２】
また、Ｓ９００に移行すると、制御部１０は、コンテンツ更新情報テーブルＴＢＬ３におけるインデックス番号ｋのコンテンツ更新情報において、最終更新時刻を、現在時刻に設定すると共に、次回更新時刻を、現在時刻に当該ＲＳＳデータのｔｔｌ要素が示す時間分を加算した未来の時刻に設定して、インデックス番号ｋのコンテンツ更新情報を更新する。尚、周知のようにＲＳＳデータのｔｔｌ要素が示す時間は、当該ＲＳＳデータが示す記事の有効期間を表す時間である。本実施例では、このｔｔｌ要素が示す時間分経過した時刻を、次回更新時刻に設定することで、効率的にＲＳＳデータをチェックする。
【０１２３】
また、Ｓ９００での処理を終えると、制御部１０は、当該コンテンツ更新処理を終了する。
［４．まとめ］
以上、本実施例の複合機１の構成について説明したが、この複合機１では、ユーザにより指定されたモードを表すモード指定情報、及び、接続要求に基づいて、制御部１０が、各ＵＳＢデバイスに対し、ＵＳＢデバイスサーバ機能及び内部制御機能のいずれか一方を働かせる。
【０１２４】
そして、ＵＳＢデバイスサーバ機能では、ＬＡＮインタフェース３５を通じてネットワークＮＴ上の端末装置から入力されるＵＳＢデータ（ＵＳＢデバイス５に対する制御データ）を、ＵＳＢホストコントローラ３１を介してＵＳＢデバイス５に伝送することで、ネットワークＮＴ上の端末装置からの指令に従い、ＵＳＢデバイス５を制御する。対して、内部制御機能では、自装置内部の処理主体（アプリケーションソフトウェア）からの指令に従い、ＵＳＢホストコントローラ３１を介してＵＳＢデバイス５を制御する。
【０１２５】
また、この複合機１においては、コンテンツ収集ソフト１０９により、制御部１０が、ＬＡＮインタフェース３５を通じて、外部サーバ装置ＳＶからコンテンツを取得し、自装置に接続された音楽プレーヤ５０に、これを記録する。また、制御部１０は、コンテンツ収集ソフト１０９により取得したコンテンツを、音楽プレーヤ５０に書き込む際、音楽プレーヤ５０がネットワークＮＴ上の端末装置に占有されていないかどうか判断し、音楽プレーヤ５０がネットワークＮＴ上の端末装置に占有されている場合には、音楽プレーヤ５０とネットワークＮＴ上の端末装置の接続を解除して、音楽プレーヤ５０と自装置とを論理接続し、コンテンツ収集ソフト１０９から音楽プレーヤ５０への制御系を構築することで、コンテンツ収集ソフト１０９が収集したコンテンツを音楽プレーヤ５０に書き込めるようにする。
【０１２６】
従って、本実施例によれば、ネットワークＮＴ上の端末装置が音楽プレーヤ５０を長期に占有する環境下でも、サーバ装置ＳＶから取得したコンテンツを、逐次、音楽プレーヤ５０に蓄積することができる。
【０１２７】
また、本実施例では、コンテンツ収集ソフト１０９により収集したコンテンツの音楽プレーヤ５０への書込が終了次第、自装置と音楽プレーヤ５０との接続を解除し、音楽プレーヤ５０と前回の接続ホストとを再接続して、コンテンツ収集ソフト１０９のために変更したＵＳＢデバイス５の制御系を元の状態に戻すので、ネットワークＮＴ上の端末装置に対し、あまり影響を与えることなく、一時的に、コンテンツ収集ソフト１０９に音楽プレーヤ５０を割り当てて、この音楽プレーヤ５０にコンテンツを蓄積することができる。
【０１２８】
また、本実施例では、コンテンツ更新情報テーブルＴＢＬ３に登録されているＲＳＳデータ取得先ＵＲＬが多数に及ぶなどの理由で、断続的にサーバ装置ＳＶから、コンテンツが収集される場合に、毎度、ネットワークＮＴ上の端末装置とＵＳＢデバイス５との接続を解除すると、端末装置によるＵＳＢデバイス５の使い勝手が悪く可能性があることから、コンテンツの取得タイミングが到来した時点で、コンテンツの書込先のＵＳＢデバイスが最後に使われてから一定時間が経過したか否かを判断し、一定時間が経過していない場合には、端末装置とＵＳＢデバイス５との接続を解除しないようにし、コンテンツの書込を諦めるようにした。
【０１２９】
即ち、本実施例では、コンテンツの取得タイミングが到来しても、ネットワークＮＴ上の端末装置が、その時点においてＵＳＢデバイス５を現に実効的に使用している場合には、端末装置とＵＳＢデバイス５との接続を優先するようにした。従って、本実施例によれば、コンテンツの取得タイミングが断続的に到来する場合でも、ネットワークＮＴ上の端末装置に対し、あまり影響を与えることなく、適切に、コンテンツを、音楽プレーヤ５０に蓄積することができる。
【０１３０】
例えば、ネットワークＮＴ上の端末装置がＵＳＢデバイス５を用いて所定の処理を実行しようとしている場合であって、その処理が長時間に及ぶ場合、コンテンツの取得タイミングが到来する度に、端末装置とＵＳＢデバイス５との接続を解除してしまうと、上記の処理を実現することができなくなってしまうが、本実施例によれば、このようなことがなく、ネットワークＮＴ上の端末装置に対し、あまり影響を与えることなく、適切に、コンテンツを、音楽プレーヤ５０に蓄積することができる。
【０１３１】
一方、本実施例では、ネットワークＮＴ上の端末装置が有効にＵＳＢデバイス５を使用しておらず単に占有している場合のとき、この接続を解除して、コンテンツの書込を行うので、ネットワークＮＴ上の端末装置が、不必要にＵＳＢデバイスを長期に渡り占有することにより、複合機１のコンテンツ収集ソフト１０９にてＵＳＢデバイス５が使用できなくなるのを防止することができる。
【０１３２】
また、コンテンツの取得タイミングが頻繁に到来する等の理由で、一度、復帰させた端末装置とＵＳＢデバイスとの接続を、再度解除するといった動作を頻繁に行うと、切替に係る処理時間が増えて、音楽プレーヤ５０を、コンテンツ収集ソフト１０９及び端末装置のいずれからも利用できない時間が長くなる。従って、コンテンツの音楽プレーヤ５０への書込のために、音楽プレーヤ５０を自装置にて占有した場合には、暫くの間、音楽プレーヤ５０を自装置から開放しないようにしてもよい（第一変形例）。
【０１３３】
［５．第一変形例］
図１７は、第一変形例における複合機１の制御部１０が、図１２に示すコンテンツ更新管理処理に代え、繰返し実行するコンテンツ更新管理処理を表すフローチャートである。また、図１８は、第一変形例の制御部１０が、コンテンツ収集ソフト１０９に基づき、繰返し実行する接続時間管理処理を表すフローチャートである。
【０１３４】
以下に説明する第一変形例の複合機１は、制御部１０が実行するコンテンツ更新管理処理の内容が異なること、及び、制御部１０が図１８に示す接続時間管理処理を実行することを除けば、上記実施例の複合機１と同一構成であるので、以下では、図１７及び図１８を用い、制御部１０が実行するコンテンツ更新管理処理及び接続時間管理処理を、選択的に説明する。
【０１３５】
図１７に示すように、第一変形例では、コンテンツ更新管理処理として、図１２に示すコンテンツ更新管理処理から、Ｓ６９０、Ｓ７６０及びＳ７７０の各ステップを除いた処理を実行する。即ち、第一変形例では、コンテンツを書込先ＵＳＢデバイスに書き込むために、書込先ＵＳＢデバイスのＵＳＢドライバ１０３ｂをロードし、この書込先ＵＳＢデバイスと自装置とを論理接続した後（Ｓ６７０，Ｓ７４０）、この接続を解除することなく維持した状態で、Ｓ７８０に移行し、後続の処理を実行する。本変形例におけるコンテンツ更新管理処理の内容は、上述した点以外、図１２に示すコンテンツ更新管理処理と同内容である。従って、ここでは、図１７において、図１２に示す各ステップと同内容の処理を行う各ステップに、同一ステップ番号を付し、これ以上の詳細なコンテンツ更新管理処理の説明を省略する。
【０１３６】
続いて、制御部１０が繰返し実行する接続時間管理処理について説明する。この接続時間管理処理は、コンテンツ更新管理処理において行われた書込先ＵＳＢデバイスと自装置との接続を、解除するものである。
【０１３７】
図１８に示す接続時間管理処理を開始すると、制御部１０は、まず参照番号ｊを初期化し、ｊ＝０に設定する（Ｓ９１０）。その後、参照番号ｊが、接続デバイステーブルＴＢＬ２（図７参照）に登録された接続デバイス情報のインデックス番号の最大値Ｊより大きいか否かを判断し、大きいと判断すると（Ｓ９２０でＹｅｓ）、当該接続時間管理処理を終了する。一方、参照番号ｊが最大値Ｊ以下であると判断すると（Ｓ９２０でＮｏ）、Ｓ９３０に移行する。
【０１３８】
Ｓ９３０に移行すると、制御部１０は、接続デバイステーブルＴＢＬ２における参照番号ｊに一致するインデックス番号ｊの接続デバイス情報を読み出し、現在時刻が、インデックス番号ｊの接続デバイス情報が示す最終アクセス時刻から一定時間以上経過した時刻であるか否かを判断する（Ｓ９４０）。
【０１３９】
そして、現在時刻が、インデックス番号ｊの接続デバイス情報が示す最終アクセス時刻から一定時間以上経過した時刻であると判断すると（Ｓ９４０でＹｅｓ）、Ｓ９５０に移行し、最終アクセス時刻から一定時間以上経過していないと判断すると（Ｓ９４０でＮｏ）、Ｓ９９０に移行する。
【０１４０】
Ｓ９５０に移行すると、制御部１０は、書込先ＵＳＢデバイスが自装置にて占有されているか否かを判断する。即ち、書込先ＵＳＢデバイスに対して内部制御機能が働いているか否かを判断する。
【０１４１】
そして、書込先ＵＳＢデバイスが自装置にて占有されていると判断すると（Ｓ９５０でＹｅｓ）、Ｓ９５５に移行し、書込先ＵＳＢデバイスが自装置にて占有されていないと判断すると（Ｓ９５０でＮｏ）、Ｓ９９０に移行する。
【０１４２】
また、Ｓ９５５に移行すると、制御部１０は、読み出したインデックス番号ｊの接続デバイス情報に、前接続ホストＭＡＣアドレスが記されているか否かを判断し、前接続ホストＭＡＣアドレスが記されていると判断すると（Ｓ９５５でＹｅｓ）、Ｓ９６０に移行し、前接続ホストＭＡＣアドレスが記されていないと判断すると（Ｓ９５５でＮｏ）、Ｓ９９０に移行する。
【０１４３】
Ｓ９６０に移行すると、制御部１０は、書込先ＵＳＢデバイスに対応するＵＳＢドライバ１０３ｂをアンロードして、自装置と書込先ＵＳＢデバイスとの接続を解除する。そして、この処理を終えると、書込先ＵＳＢデバイスに対応するデバイスブリッジ１０３ａをロードして、デバイスブリッジ１０３ａによるＵＳＢデバイスの制御系を構築し、前接続ホストと書込先ＵＳＢデバイスとを再接続する（Ｓ９７０）。その後、接続デバイステーブルＴＢＬ２におけるインデックス番号ｊの接続デバイス情報において、前接続ホストＭＡＣアドレスの情報をクリアし（Ｓ９８０）、Ｓ９９０に移行する。また、Ｓ９９０に移行すると、制御部１０は、参照番号ｊを１加算した値に変更し、その後、この最新の参照番号ｊを用いて、Ｓ９２０以降の処理を行う。
【０１４４】
以上、第一変形例の複合機１について説明したが、第一変形例によれば、コンテンツ更新管理処理により、ＵＳＢデバイス５がネットワークＮＴ上の端末装置と接続された状態から複合機１との接続に切り替えられた後、このＵＳＢデバイス５が利用されていない状態が一定時間以上続くと、複合機１が、このＵＳＢデバイス５と自装置との接続を解除し、このＵＳＢデバイス５とネットワークＮＴ上の端末装置の接続を再確立する。換言すると、第一変形例では、ＵＳＢデバイス５が利用されていない状態で一定時間以上が経過するまでは、複合機１が、ＵＳＢデバイス５を自装置にて占有する。
【０１４５】
従って、第一変形例によれば、コンテンツの取得タイミングが断続的に高頻度で到来する場合に、制御系の切替が頻繁に行われて、切替に係る処理時間が増え、ＵＳＢデバイス５を、複合機１及びネットワークＮＴ上の端末装置のいずれの装置からも利用できない時間が長くなり、ＵＳＢデバイス５の使い勝手が悪くなるのを抑制することができる。
【０１４６】
尚、第一変形例の接続時間管理処理では、コンテンツ更新管理処理のＳ６７０で行った複合機１とＵＳＢデバイス５との論理接続を解除しないが、この接続については、例えば、当該ＵＳＢデバイス５に対する最終アクセス時刻から一定時間が経過した状態で、ネットワークからの接続要求があったときに、制御部１０の処理によって、解除すればよい。
【０１４７】
また、上記実施例（第一変形例を含む）では、コンテンツ更新情報を複合機１に対してのみ登録するようにしたが、コンテンツ更新情報を、複合機１のみに登録する程度であると、音楽プレーヤ５０を外に持ち出し、外出先の別の複合機１を通じてコンテンツを取得しようとした際に、ユーザが、当該別の複合機１を操作して、改めてコンテンツ更新情報を、当該別の複合機１に登録する必要があり、不便である。
【０１４８】
従って、音楽プレーヤ５０に取り込むコンテンツについては、それに対応するコンテンツ更新情報を、音楽プレーヤに登録しておき、音楽プレーヤ５０が接続されると、音楽プレーヤ５０からコンテンツ更新情報を読み出して、この情報に基づき、コンテンツをサーバ装置ＳＶから取得し、これを音楽プレーヤ５０に書き込むように、複合機１を構成するとよい（第二変形例）。
【０１４９】
［６．第二変形例］
図１９は、第二変形例において、複合機１の制御部１０が、図６に示す接続受付処理に代えて、実行する接続受付処理を表すフローチャートである。また、図２０（ａ）は、第二変形例において、音楽プレーヤ５０が記憶部５０ａに記憶するコンテンツ更新情報テーブルＴＢＬ４の構成を表す説明図である。その他、図２０（ｂ）は、複合機１が、ＥＥＰＲＯＭ１７に記憶されたコンテンツ更新情報テーブルＴＢＬ３と、音楽プレーヤ５０から読み出したコンテンツ更新情報テーブルＴＢＬ４とに基づき、ＲＡＭ１５に生成するコンテンツ更新情報テーブルＴＢＬ５の構成を表す説明図である。
【０１５０】
第二変形例は、第一変形例に対して、複合機１に接続される音楽プレーヤ５０が一部異なる構成にされ、制御部１０が実行する処理の内容が一部変更された程度のものであるため、以下では、第二変形例について、第一変形例と異なる構成（処理の内容）を、選択的に説明することにし、その他の説明については省略するものとする。
【０１５１】
第二変形例の複合機１に接続される音楽プレーヤ５０は、第一変形例とは異なり、記憶部５０ａにコンテンツ更新情報テーブルＴＢＬ４を記憶し、ユーザ操作に従って、ユーザが所望するコンテンツについてのコンテンツ更新情報を生成し、これをコンテンツ更新情報テーブルＴＢＬ４に登録する構成にされている。
【０１５２】
このコンテンツ更新情報テーブルＴＢＬ４は、複合機１がＥＥＰＲＯＭ１７に記憶するコンテンツ更新情報テーブルＴＢＬ３と同様、ＲＳＳデータの取得先ＵＲＬ毎に、コンテンツ更新情報を有した構成にされ、コンテンツ更新情報は、ＲＳＳデータの取得先ＵＲＬと、コンテンツの最終更新時刻の情報と、次回更新時刻の情報と、から構成されている。
【０１５３】
一方、複合機１は、このコンテンツ更新情報テーブルＴＢＬ４を、図１９に示す接続受付処理によって、音楽プレーヤ５０から読み出し、その後、このコンテンツ更新情報テーブルＴＢＬ４の情報に基づき、サーバ装置ＳＶからコンテンツを取得し、取得コンテンツを、音楽プレーヤ５０に書き込む構成にされている。
【０１５４】
具体的に、複合機１の制御部１０は、ＵＳＢコネクタＣＮにＵＳＢデバイス５が接続されると、図１９に示す接続受付処理を開始し、この接続受付処理を開始すると、まず、ＵＳＢドライバをロードし（Ｓ１１０）、ＵＳＢコネクタＣＮに接続されたＵＳＢデバイス５からデバイスディスクリプタを取得する（Ｓ１２０）。
【０１５５】
その後、Ｓ１２３に移行し、接続されたＵＳＢデバイス５から、コンテンツ更新情報テーブルＴＢＬ４を読み出し、これをＲＡＭ１５に生成されたコンテンツ更新情報テーブルＴＢＬ５に登録する。その後、Ｓ１２５に移行する。
【０１５６】
尚、本変形例では、複合機１の起動時に、制御部１０の動作により、ＥＥＰＲＯＭ１７のコンテンツ更新情報テーブルＴＢＬ３が、ＲＡＭ１５に書き込まれ、コンテンツ更新情報テーブルＴＢＬ５が生成される。
【０１５７】
コンテンツ更新情報テーブルＴＢＬ５は、図２０（ｂ）に示すように、コンテンツ更新情報テーブルＴＢＬ３，ＴＢＬ４の集合体として構成され、コンテンツ更新情報テーブルＴＢＬ３，ＴＢＬ４毎に、テーブル取得元情報が付されてなる。即ち、本変形例では、複合機１の起動時、制御部１０の動作により、ＥＥＰＲＯＭ１７内のコンテンツ更新情報テーブルＴＢＬ３が、値「−１」とのテーブル取得元情報と共に、ＲＡＭ１５に書き込まれ、ＲＡＭ１５に、コンテンツ更新情報テーブルＴＢＬ５が生成される。尚、テーブル取得元情報は、テーブル取得元デバイスのデバイスＩＤを表すものであり、図２０（ｂ）において、値「−１」は、テーブル取得元が複合機１であることを、値「０」は、テーブル取得元が、現在、複合機１に接続されているデバイスＩＤが「０」のＵＳＢデバイス５であることを、値「１」は、テーブル取得元が、現在、複合機１に接続されているデバイスＩＤが「１」のＵＳＢデバイス５であること、を表す。
【０１５８】
即ち、Ｓ１２３では、接続されたＵＳＢデバイス５（音楽プレーヤ５０）から読み出したコンテンツ更新情報テーブルＴＢＬ４に対し、コンテンツの書込先ＵＳＢデバイスを表す情報及びテーブル取得元情報として、当該ＵＳＢデバイス５のデバイスＩＤを付加してなるデータを、ＲＡＭ１５のコンテンツ更新情報テーブルＴＢＬ５に追加することによって、上記読み出したコンテンツ更新情報テーブルＴＢＬ４を、コンテンツ更新情報テーブルＴＢＬ５に登録する。この際には、コンテンツ更新情報テーブルＴＢＬ５に追加した各コンテンツ更新情報に対し、シーケンシャルなインテックス番号を付す。
【０１５９】
但し、Ｓ１２３では、接続されたＵＳＢデバイス５がコンテンツ更新情報テーブルＴＢＬ４を有するＵＳＢデバイス５、即ち、上述の音楽プレーヤ５０である場合に限って、ＵＳＢデバイス５からコンテンツ更新情報テーブルＴＢＬ４を読み出し、これをＲＡＭ１５のコンテンツ更新情報テーブルＴＢＬ５に登録する。換言すると、接続されたＵＳＢデバイス５が上述の音楽プレーヤ５０でない場合、制御部１０は、Ｓ１２３の処理を実質的に実行せずに、Ｓ１２５に移行する。
【０１６０】
また、Ｓ１２５に移行すると、制御部１０は、Ｓ１１０でロードしたＵＳＢドライバをアンロードし（Ｓ１２５）、その後、上述の実施例と同様に、Ｓ１３０〜Ｓ１６０の処理を実行する。そして、Ｓ１６０での処理を終えると、当該接続受付処理を終了する。このようにして、本変形例では、接続受付処理により、複合機１に接続された音楽プレーヤ５０から、コンテンツ更新情報テーブルＴＢＬ４を取り込む。
【０１６１】
一方、本変形例の複合機１は、図１７に示すコンテンツ更新管理処理に代えて、図２１に示すコンテンツ更新管理処理を実行することにより、コンテンツ収集機能を実現し、音楽プレーヤ５０から取り込んだコンテンツ更新情報テーブルＴＢＬ４の内容に従って、コンテンツを取得し、これを対応する音楽プレーヤ５０に書き込む。尚、図２１は、本変形例の複合機１における制御部１０が実行するコンテンツ更新管理処理を表すフローチャートである。本変形例の複合機１における制御部１０は、所定時間毎に繰返し、図２１に示すコンテンツ更新管理処理を実行する。
【０１６２】
制御部１０は、このコンテンツ更新管理処理を開始すると、まず、参照番号ｋを初期化して、ｋ＝０に設定し（Ｓ１０１０）、その後、ＵＳＢコネクタＣＮに接続されたＵＳＢデバイス５が存在するか否かを判断する（Ｓ１０１５）。そして、ＵＳＢコネクタＣＮに接続されたＵＳＢデバイス５が存在しないと判断すると（Ｓ１０１５でＮｏ）、当該コンテンツ更新管理処理を一旦終了し、ＵＳＢコネクタＣＮに接続されたＵＳＢデバイス５が存在すると判断すると（Ｓ１０１５でＹｅｓ）、Ｓ１０２０に移行する。
【０１６３】
Ｓ１０２０に移行すると、制御部１０は、ＲＡＭ１５のコンテンツ更新情報テーブルＴＢＬ５を参照して、参照番号ｋが、コンテンツ更新情報テーブルＴＢＬ５におけるコンテンツ更新情報のインデックス番号の最大値Ｍｓより大きいか否かを判断し、最大値Ｍｓより大きいと判断すると（Ｓ１０２０でＹｅｓ）、Ｓ１１３０に移行し、参照番号が最大値Ｍｓ以下であると判断すると（Ｓ１０２０でＮｏ）、Ｓ１０３０に移行する。
【０１６４】
また、Ｓ１０３０に移行すると、制御部１０は、参照番号ｋに一致するインデックス番号ｋのコンテンツ更新情報を、コンテンツ更新情報テーブルＴＢＬ５から読み出し、現在時刻が、読み出したコンテンツ更新情報が示す次回更新時刻を経過しているか否かを判断する（Ｓ１０４０）。そして、現在時刻が、次回更新時刻を経過していると判断すると（Ｓ１０４０でＹｅｓ）、Ｓ１０５０に移行し、経過していないと判断すると（Ｓ１０４０でＮｏ）、Ｓ１１２０に移行する。
【０１６５】
また、Ｓ１０５０に移行すると、制御部１０は、インデックス番号ｋのコンテンツ更新情報が示す書込先ＵＳＢデバイスのデバイスＩＤが値「−１」であるか否かを判断する。
尚、第二変形例における複合機１は、コンテンツの書込先として、ユーザから、全音楽プレーヤ５０との指定を受け付けることが可能な構成にされ、全音楽プレーヤ５０が指定されると、書込先ＵＳＢデバイスのデバイスＩＤを表す情報として、値「−１」を記したコンテンツ更新情報を、コンテンツ更新情報テーブルＴＢＬ３に、登録する構成にされている。Ｓ１０５０では、読み出したインデックス番号ｋのコンテンツ更新情報が、この種のコンテンツ更新情報であるか否かを判断する。
【０１６６】
そして、インデックス番号ｋのコンテンツ更新情報が示す書込先ＵＳＢデバイスのデバイスＩＤが値「−１」であると判断すると（Ｓ１０５０でＹｅｓ）、Ｓ１０９０に移行し、値「−１」でないと判断すると（Ｓ１０５０でＮｏ）、Ｓ１０６０に移行する。
【０１６７】
また、Ｓ１０６０に移行すると、制御部１０は、インデックス番号ｋのコンテンツ更新情報が示すコンテンツの書込先ＵＳＢデバイスを、転送先ＵＳＢデバイスに設定して、転送先ＵＳＢデバイスが、ＵＳＢコネクタＣＮに接続されているか否かを判断し（Ｓ１０７０）、ＵＳＢコネクタＣＮに転送先ＵＳＢデバイスが接続されていると判断すると（Ｓ１０７０でＹｅｓ）、Ｓ１０８０に移行し、接続されていないと判断すると（Ｓ１０７０でＮｏ）、Ｓ１１２０に移行する。具体的に、Ｓ１０７０では、接続デバイステーブルＴＢＬ２に転送先ＵＳＢデバイスの接続デバイス情報が登録されているか否かを判断することにより、ＵＳＢコネクタＣＮに、転送先ＵＳＢデバイスが接続されているか否かを判断する。
【０１６８】
そして、Ｓ１０８０に移行すると、制御部１０は、更新管理メイン処理を実行する。尚、Ｓ１０８０で実行する更新管理メイン処理は、第一変形例におけるＳ６５０〜Ｓ７５０（図１７参照）の処理と同様である。但し、更新管理メイン処理では、Ｓ６５０〜Ｓ７５０でいう書込先ＵＳＢデバイス（書込先デバイス）を「転送先ＵＳＢデバイス」に置き換えて、第一変形例におけるＳ６５０〜Ｓ７５０に対応した処理を実行し、Ｓ７８０に移行する代わりに、当該更新管理メイン処理を終了する。
【０１６９】
即ち、Ｓ１０８０で実行する更新管理メイン処理では、Ｓ１０６０で設定された転送先ＵＳＢデバイスが、ネットワークＮＴ上の端末装置に占有されているか否かを判断し（Ｓ６５０）、端末装置に占有されている場合には（Ｓ６５０でＹｅｓ）、転送先ＵＳＢデバイスの接続デバイス情報が示す最終アクセス時刻から一定時間が経過しているか否かを判断する（Ｓ７１０）。
【０１７０】
そして、転送先ＵＳＢデバイスの接続デバイス情報が示す最終アクセス時刻から一定時間が経過していると判断するか（Ｓ７１０でＹｅｓ）、転送先ＵＳＢデバイスが、ネットワークＮＴ上の端末装置に占有されていないと判断すると（Ｓ６５０でＮｏ）、制御部１０は、コンテンツ更新処理（図１４参照）を実行して（Ｓ６８０，Ｓ７００，Ｓ７５０）、インデックス番号ｋのコンテンツ更新情報が示すＵＲＬに従い、当該ＵＲＬに対応するＲＳＳデータを、ネットワークＮＴを通じて、サーバ装置ＳＶから取得し、このＲＳＳデータから得られるコンテンツを、転送先ＵＳＢデバイスに書き込む（Ｓ８６５，Ｓ８９５）。また、コンテンツ更新情報テーブルＴＢＬ５におけるインデックス番号ｋのコンテンツ更新情報を更新する（Ｓ９００）。このようにして、Ｓ１０８０での処理を終えると、制御部１０は、Ｓ１１２０に移行する。
【０１７１】
この他、デバイスＩＤが値「−１」であると判断して（Ｓ１０５０でＹｅｓ）、Ｓ１０９０に移行すると、制御部１０は、接続デバイステーブルＴＢＬ２に登録された音楽プレーヤ５０の一つを、転送先ＵＳＢデバイスに選択した後、Ｓ１１００にて、更新管理メイン処理を実行する。
【０１７２】
尚、Ｓ１１００で実行する更新管理メイン処理は、基本的に、Ｓ１０８０で実行する更新管理メイン処理と同じである。即ち、Ｓ１１００では、Ｓ１０９０で設定された転送先ＵＳＢデバイスに関して、Ｓ６５０〜Ｓ７５０の処理を実行することにより、転送先ＵＳＢデバイスが、ネットワークＮＴ上の端末装置に占有されていない場合（Ｓ６５０でＮｏ）又は転送先ＵＳＢデバイスの接続デバイス情報が示す最終アクセス時刻から一定時間が経過している場合（Ｓ７１０でＹｅｓ）には、コンテンツ更新処理（図１４参照）を実行し（Ｓ６８０，Ｓ７００，Ｓ７５０）、インデックス番号ｋのコンテンツ更新情報が示すＵＲＬに従い、当該ＵＲＬに対応するＲＳＳデータを、ネットワークＮＴを通じて、サーバ装置ＳＶから取得し、このＲＳＳデータから得られるコンテンツを、転送先ＵＳＢデバイスに書き込む。また、コンテンツ更新情報テーブルＴＢＬ５におけるインデックス番号ｋのコンテンツ更新情報を更新する（Ｓ９００）。
【０１７３】
また、Ｓ１１００での処理を終えると、制御部１０は、Ｓ１１１０に移行して、接続デバイステーブルＴＢＬ２に登録された音楽プレーヤ５０の全てをＳ１０９０で転送先ＵＳＢデバイスに選択したか否かを判断し、Ｓ１０９０で音楽プレーヤ５０の全てを転送先ＵＳＢデバイスに選択していないと判断すると（Ｓ１１１０でＮｏ）、Ｓ１０９０に移行し、未選択の音楽プレーヤ５０の一つを、転送先ＵＳＢデバイスに選択して、再び、Ｓ１１００で更新管理メイン処理を実行する。
【０１７４】
このようにして、Ｓ１０５０でデバイスＩＤが「−１」であると判断した場合には、複合機１に接続された全ての音楽プレーヤ５０に対して、同一のコンテンツを書き込む。そして、全音楽プレーヤ５０に対して個別の上記更新管理メイン処理を実行し終えると、Ｓ１１１０でＹｅｓと判断して、Ｓ１１２０に移行する。尚、この繰返し処理に当っては、毎回、コンテンツをネットワークを通じて取得するのではなく、最初に取得したコンテンツを一時記憶しておき、このコンテンツを各音楽プレーヤ５０に書き込むようにしてもよい。また、Ｓ１１００で実行する更新管理メイン処理に限っては、コンテンツ更新処理におけるＳ８８０，Ｓ８８５の処理を実行しないようにしてもよい。
【０１７５】
また、Ｓ１１２０に移行すると、制御部１０は、参照番号ｋを１加算した後（ｋ←ｋ＋１）、Ｓ１０２０に移行する。そして、加算後の参照番号ｋが、最大値Ｍｓより大きいか否かを判断し、参照番号ｋが最大値Ｍｓより大きい場合には（Ｓ１０２０でＹｅｓ）、Ｓ１１３０に移行し、参照番号ｋが最大値Ｍｓ以下である場合には（Ｓ１０２０でＮｏ）、Ｓ１０３０で、次のインデックス番号ｋのコンテンツ更新情報を読み出し、このコンテンツ更新情報について、Ｓ１０４０以降の処理を実行する。
【０１７６】
一方、Ｓ１１３０に移行すると、制御部１０は、図２２に示すテーブル更新処理を実行することにより、Ｓ１０１０〜Ｓ１１２０で更新されたＲＡＭ１５のコンテンツ更新情報テーブルＴＢＬ５の内容を、複合機１に接続された各音楽プレーヤ５０のコンテンツ更新情報テーブルＴＢＬ４及びＥＥＰＲＯＭ１７に記録されたコンテンツ更新情報テーブルＴＢＬ３に反映させる。
【０１７７】
具体的に、Ｓ１１３０でテーブル更新処理を開始すると、制御部１０は、コンテンツ更新情報テーブルＴＢＬ５が有するテーブル取得元情報が値「−１」の各コンテンツ更新情報の内容を、ＥＥＰＲＯＭ１７に記憶されたコンテンツ更新情報テーブルＴＢＬ３の対応するコンテンツ更新情報にコピーすることにより、コンテンツ更新情報テーブルＴＢＬ３が有する各情報を、コンテンツ更新情報テーブルＴＢＬ５の対応する情報と一致させるように、更新する（Ｓ１１３１）。
【０１７８】
また、この処理を終えると、制御部１０は、コンテンツ更新情報テーブルＴＢＬ５に記述されたテーブル取得元情報に基づき、テーブル取得元ＵＳＢデバイスの一つを、更新対象ＵＳＢデバイスに選択し（Ｓ１１３３）。この更新対象ＵＳＢデバイスが自装置で占有されているか否かを判断する。即ち、更新対象ＵＳＢデバイスに対して内部制御機能が働いているか否かを判断する。
【０１７９】
そして、更新対象ＵＳＢデバイスが自装置で占有されていると判断すると（Ｓ１１３５でＹｅｓ）、制御部１０は、Ｓ１１３７に移行し、更新対象ＵＳＢデバイスが記憶部５０ａに記憶するコンテンツ更新情報テーブルＴＢＬ４を、ＲＡＭ１５のコンテンツ更新情報テーブルＴＢＬ５に基づき、更新する。
【０１８０】
即ち、更新対象ＵＳＢデバイスが有するコンテンツ更新情報テーブルＴＢＬ４の各情報を、コンテンツ更新情報テーブルＴＢＬ５の対応情報、換言すると、テーブル取得元情報が更新対象ＵＳＢデバイスのデバイスＩＤとなっているコンテンツ更新情報群と、内容が一致するように、更新する。
【０１８１】
また、このようにしてＳ１１３７での処理を終えるか、Ｓ１１３５でＮｏと判断すると、制御部１０は、Ｓ１１３９に移行して、コンテンツ更新情報テーブルＴＢＬ５が示すテーブル取得元ＵＳＢデバイスの全てをＳ１１３３で更新対象ＵＳＢデバイスに選択したか否かを判断し、全てを更新対象ＵＳＢデバイスに選択していないと判断すると（Ｓ１１３９でＮｏ）、Ｓ１１３３に移行して、未選択のテーブル取得元ＵＳＢデバイスの一つを、更新対象ＵＳＢデバイスに選択し、選択した更新対象ＵＳＢデバイスについて、後続の処理を実行する。
【０１８２】
一方、Ｓ１１３９にて全てを更新対象ＵＳＢデバイスに選択したと判断すると（Ｓ１１３９でＹｅｓ）、制御部１０は、当該テーブル更新処理を終了する。このようにして、テーブル更新処理では、ＥＥＰＲＯＭ１７のコンテンツ更新情報テーブルＴＢＬ３を、コンテンツ更新情報テーブルＴＢＬ５の内容に合わせて更新すると共に、ＲＡＭ１５のコンテンツ更新情報テーブルＴＢＬ５に取り込まれた各音楽プレーヤ５０のコンテンツ更新情報テーブルＴＢＬ４を、コンテンツ更新情報テーブルＴＢＬ５の内容に合わせて更新する。
【０１８３】
また、テーブル更新処理を終了した後には、コンテンツ更新管理処理を一旦終了し、所定時間後、再び、当該コンテンツ更新管理処理をＳ１０１０から実行することにより、定期的に、ネットワークからコンテンツを取得し、これを音楽プレーヤ５０に書き込む。
【０１８４】
尚、複合機１に接続されているＵＳＢデバイス５がＵＳＢコネクタＣＮから外された場合、制御部１０は、図１０に示す取外受付処理（Ｓ４１０、Ｓ４２０）を実行すると共に、テーブル取得元情報が示す値が、Ｓ４１０において特定された接続デバイス（ＵＳＢデバイス５）のデバイスＩＤに一致するレコードを、ＲＡＭ１５のコンテンツ更新情報テーブルＴＢＬ５から削除する。これにより、本変形例では、ＲＡＭ１５の不要なデータがＲＡＭ１５上に記憶され続けることを防止する。
【０１８５】
以上、第二変形例の複合機１について説明したが、この変形例では、音楽プレーヤ５０にてコンテンツ更新情報テーブルＴＢＬ４を保持するようにし、音楽プレーヤ５０が複合機１に接続された場合には、複合機１にて、このコンテンツ更新情報テーブルＴＢＬ４を読み出し、読み出したコンテンツ更新情報テーブルＴＢＬ４の内容に基づき、コンテンツを外部のサーバ装置ＳＶから取得して、これをテーブル取得元の音楽プレーヤ５０に書き込むようにした。
【０１８６】
従って、本変形例によれば、ユーザは、外出先のオフィスやホテル等に複合機１が設置してある場合、この複合機１に、持参の音楽プレーヤ５０を接続する程度で、外出先の複合機１に細かな設定操作を行わなくても、必要なコンテンツを、音楽プレーヤ５０にダウンロードすることができる。よって、この複合機１を普及させれば、ユーザは、複合機１を通じて様々な場所でコンテンツを取得することができ、このコンテンツを移動しながら楽しむことができる。
【０１８７】
その他、本変形例によれば、複合機１に対して、全音楽プレーヤ５０をコンテンツ書込先ＵＳＢデバイスに指定してコンテンツ更新情報を登録することができ、複合機１に接続された全ての音楽プレーヤ５０に対してコンテンツを書き込むことができるので、複合機１の所有者は、ユーザに対して広告したいコンテンツを配信するＵＲＬを記述したコンテンツ更新情報を、全音楽プレーヤ５０を書込対象として指定して登録しておく程度で、当該複合機１を利用する不特定ユーザに対し、コンテンツを通じ、商品やサービス等を宣伝することができる。
【０１８８】
従って、本変形例によれば、公共の場所への複合機１の設置を促すことができ、複合機１の所有者及び利用者の双方にとって利益のある新しい情報提供システムを提供することができる。
【０１８９】
［７．他の実施例］
以上に、第一及び第二変形例を含む本発明の実施例について説明したが、本発明は、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、上記実施例では、ディジタル複合機に本発明を適用した例を示したが、本発明は、その他の通信装置に適用することができる。
【０１９０】
また、上記実施例では、配信コンテンツが音声／映像コンテンツでないＩＴＥＭ要素に関して、ＩＴＥＭ要素毎に、コンテンツの要約文を印刷するようにしたが、コンテンツの要約文の印刷は、ＲＳＳデータ毎に、該当するＩＴＥＭ要素の一群に対して、まとめて行われても良い。
【０１９１】
この他、上記実施例では、定期的に、コンテンツ更新管理処理を実行するようにしたが、ユーザによっては、すぐさまコンテンツの更新が望まれる場合もあるので、複合機１の操作部２７には、コンテンツ更新ボタンを設けると共に、制御部１０には、図２３に示す強制更新処理を実行させて、コンテンツ更新ボタンが押下操作された場合には（Ｓ１２１０でＹｅｓ）、直ちに、コンテンツ更新管理処理を実行するように（Ｓ１２２０）、複合機１を構成してもよい。
【０１９２】
［８．特許請求の範囲に記載の発明と実施例との対応関係］
本発明の第１インタフェースは、ＬＡＮインタフェース３５に相当し、第２インタフェースは、ＵＳＢホストコントローラ３１及びＵＳＢルートハブ３３からなるＵＳＢインタフェースに相当し、外部記憶装置は、音楽プレーヤ５０に相当する。また、切替手段は、接続受付処理及び接続要求受付処理並びに接続解除要求受付処理により実現され、データ取得手段及びデータ記録手段は、コンテンツ更新処理により実現され、判断手段は、Ｓ６５０，Ｓ６６０，Ｓ７１０より実現されている。また、自動切替手段は、Ｓ７２０〜Ｓ７４０により実現され、復帰手段は、Ｓ７６０〜Ｓ７７０又は接続時間管理処理により実現されている。
【図面の簡単な説明】
【０１９３】
【図１】本発明が適用されたディジタル複合機１の構成を表すブロック図である。
【図２】制御部１０により実現されるＵＳＢデバイスサーバ機能の説明図である。
【図３】デバイス共有テーブルＴＢＬ１の構成を表す説明図である。
【図４】ＰＣ７０の構成を表すブロック図である。
【図５】制御部８０により実現される機能の説明図である。
【図６】制御部１０が実行する接続受付処理を表すフローチャートである。
【図７】接続デバイステーブルＴＢＬ２の構成を表す説明図である。
【図８】制御部１０が実行する接続要求受付処理を表すフローチャートである。
【図９】制御部１０が実行する接続解除要求受付処理を表すフローチャートである。
【図１０】制御部１０が実行する取外受付処理を表すフローチャートである。
【図１１】制御部１０が実行する最終アクセス時刻更新処理を表すフローチャートである。
【図１２】制御部１０が実行するコンテンツ更新管理処理を表すフローチャートである。
【図１３】コンテンツ更新情報テーブルＴＢＬ３の構成を表す説明図である。
【図１４】制御部１０が実行するコンテンツ更新処理を表すフローチャートである。
【図１５】ＲＳＳデータの一例を示した説明図である。
【図１６】ＲＳＳデータの一例、及び、この例に対応する印刷画像の例を示した説明図である。
【図１７】変形例の制御部１０が実行するコンテンツ更新管理処理を表すフローチャートである。
【図１８】変形例の制御部１０が実行する接続時間管理処理を表すフローチャートである。
【図１９】第二変形例の制御部１０が実行する接続受付処理を表すフローチャートである。
【図２０】第二変形例において音楽プレーヤ５０が記憶するコンテンツ更新情報テーブルＴＢＬ４の構成を表す説明図（ａ）及び複合機１がＲＡＭ１５に記憶するコンテンツ更新情報テーブルＴＢＬ５の構成を表す説明図（ｂ）である。
【図２１】第二変形例の制御部１０が実行するコンテンツ更新管理処理を表すフローチャートである。
【図２２】第二変形例の制御部１０が実行するテーブル更新処理を表すフローチャートである。
【図２３】制御部１０が実行する強制更新処理を表すフローチャートである。
【符号の説明】
【０１９４】
１…複合機、５…ＵＳＢデバイス、１０，８０…制御部、１１，８１…ＣＰＵ、１３，８３…ＲＯＭ、１５，８５…ＲＡＭ、１７…ＥＥＰＲＯＭ、２１…印刷部、２３…読取部、２５…ＦＡＸ通信部、２７，９５…操作部、２９，９３…表示部、３１…ＵＳＢホストコントローラ、３３…ＵＳＢルートハブ、３５，９７…ＬＡＮインタフェース、５０…音楽プレーヤ、５０ａ…記憶部、７０…ＰＣ、１０１，８０５…ＵＳＢＩＰ、１０３ａ…デバイスブリッジ、１０３ｂ，８０１…ＵＳＢドライバ、１０５…ＵＳＢホストコントローラドライバ、１０７…ＵＳＢ管理プログラム、１０９…コンテンツ収集ソフト、８０３…仮想ＵＳＢホストコントローラドライバ、８０７…リモートデバイス管理プログラム、ＮＴ…ネットワーク、ＳＶ…サーバ装置
【図１】
2008067346.tif 000003
【図２】
2008067346.tif 000004
【図３】
2008067346.tif 000005
【図４】
2008067346.tif 000006
【図５】
2008067346.tif 000007
【図６】
2008067346.tif 000008
【図７】
2008067346.tif 000009
【図８】
2008067346.tif 000010
【図９】
2008067346.tif 000011
【図１０】
2008067346.tif 000012
【図１１】
2008067346.tif 000013
【図１２】
2008067346.tif 000014
【図１３】
2008067346.tif 000015
【図１４】
2008067346.tif 000016
【図１５】
2008067346.tif 000017
【図１６】
2008067346.tif 000018
【図１７】
2008067346.tif 000019
【図１８】
2008067346.tif 000020
【図１９】
2008067346.tif 000021
【図２０】
2008067346.tif 000022
【図２１】
2008067346.tif 000023
【図２２】
2008067346.tif 000024
【図２３】
2008067346.tif 000025