JP2007156614A - ローカルデバイスが接続される制御装置におけるメニューデータの生成 - Google Patents

ローカルデバイスが接続される制御装置におけるメニューデータの生成 Download PDF

Info

Publication number
JP2007156614A
JP2007156614A JP2005347874A JP2005347874A JP2007156614A JP 2007156614 A JP2007156614 A JP 2007156614A JP 2005347874 A JP2005347874 A JP 2005347874A JP 2005347874 A JP2005347874 A JP 2005347874A JP 2007156614 A JP2007156614 A JP 2007156614A
Authority
JP
Japan
Prior art keywords
menu
type
configuration information
unit
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005347874A
Other languages
English (en)
Other versions
JP4844105B2 (ja
Inventor
Yuuki Dogo
勇樹 堂後
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005347874A priority Critical patent/JP4844105B2/ja
Publication of JP2007156614A publication Critical patent/JP2007156614A/ja
Application granted granted Critical
Publication of JP4844105B2 publication Critical patent/JP4844105B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】接続されるローカルデバイスに応じたメニューデータを容易に生成することのできる技術を提供する。
【解決手段】制御装置は、ページ画面を表すページ画面データを準備して、ネットワークを介して接続されるコンピュータに提供する。制御装置は、ページ画面内に表現されるメニューを表すメニューデータを準備するメニューデータ準備部を含む。メニューデータ準備部は、ローカルデバイスからメニュー構成情報を取得するメニュー構成情報取得部と、メニュー構成情報を用いてメニューデータを生成するメニューデータ生成部と、を備える。メニュー構成情報は、メニューに表示されて、ローカルデバイスに格納されたコンテンツを示す項目と、項目に関連付けられて、ローカルデバイスに格納されたコンテンツの所在を示すアドレスと、を含む。
【選択図】 図1

Description

本発明は、ローカルデバイスが接続される制御装置におけるメニューデータの生成の技術に関する。
ネットワークを利用した印刷システムでは、例えば、プリンタがUSBケーブルを介してプリントサーバに接続され、プリントサーバとクライアントコンピュータとがLANなどのネットワークを介して接続される。
上記のような印刷システムでは、通常、プリントサーバは、Webサーバの機能を有しており、プリントサーバ内に格納されたプリントサーバやプリンタに関するコンテンツデータを用いて、Webページ画面をクライアントコンピュータに提供する。Webページ画面には、通常、複数のコンテンツに対応する複数の項目を含むメニューが含まれている。クライアントコンピュータのユーザは、メニュー内のいずれかの項目を選択することによって、プリントサーバやプリンタに関する所望のコンテンツを取得することができる。
特開2004−318842号公報
しかしながら、従来では、プリントサーバに接続されるプリンタが他のローカルデバイスに変更されても、Webページ画面内のメニューは変更されなかった。換言すれば、従来では、プリントサーバに接続されるローカルデバイスに応じて、メニューを生成することは困難であった。これは、従来では、メニューの変更には、プリントサーバの構成を変更する必要があるためである。
なお、上記の問題は、印刷システムだけでなく、ローカルデバイスを含む他のネットワークシステムにおいても同様に発生し得る。
本発明は、上述の課題を解決するためになされたものであり、接続されるローカルデバイスに応じたメニューデータを容易に生成することを目的とする。
上述の課題の少なくとも一部を解決するため、本発明の第1の装置は、ネットワークに接続される制御装置であって、
前記ネットワークを介して接続されるコンピュータと通信するための第1の通信部と、
前記ネットワークを介さずに接続されるローカルデバイスと通信するための第2の通信部と、
ページ画面を表すページ画面データを準備して、前記ページ画面データを前記第1の通信部を介して前記コンピュータに提供するためのページ画面データ提供部と、
を備え、
前記ページ画面データ提供部は、
前記ページ画面のうちの少なくとも一部に表現されるメニューを表すメニューデータを準備するメニューデータ準備部を含み、
前記メニューデータ準備部は、
前記第2の通信部を介して前記ローカルデバイスから、第1種のメニュー構成情報を取得するメニュー構成情報取得部であって、前記第1種のメニュー構成情報は、前記メニューに表示されて、前記ローカルデバイスに格納された第1種のコンテンツデータによって表される第1種のコンテンツを示す第1種の項目と、前記第1種の項目に関連付けられて、前記ローカルデバイスに格納された前記第1種のコンテンツデータの所在を示す第1種のアドレスと、を含む、前記メニュー構成情報取得部と、
前記メニュー構成情報取得部から受け取った前記第1種のメニュー構成情報を用いて、前記メニューデータを生成するメニューデータ生成部と、
を備えることを特徴とする。
ローカルデバイスには、第1種のコンテンツデータが格納されていると共に、第1種のメニュー構成情報が格納されている。このため、制御装置は、ローカルデバイスに含まれる第1種のコンテンツに関する第1種のメニュー構成情報を該ローカルデバイスから取得することができ、この結果、制御装置は、接続されるローカルデバイスに応じたメニューデータを容易に生成することができる。
上記の装置において、
前記メニュー構成情報取得部は、
前記第2の通信部に接続された前記ローカルデバイスを検出するための検出部を備え、
前記メニュー構成情報取得部は、前記検出部によって前記ローカルデバイスが検出された場合に、前記第1種のメニュー構成情報を取得することが好ましい。
上記の装置において、
前記メニュー構成情報取得部は、以前に検出された前記ローカルデバイスが前記検出部によって検出されない場合には、取得済みの前記第1種のメニュー構成情報を用いて前記メニューデータが生成されないように処理を実行することが好ましい。
こうすれば、以前に検出されたローカルデバイスが検出されない場合には、該ローカルデバイスの第1種のメニュー構成情報を用いてメニューデータが生成されないため、制御装置は、接続されるローカルデバイスに応じたメニューデータを容易に生成することが可能となる。
上記の装置において、
前記第1のメニュー構成情報は、さらに、前記メニューに表示されて、前記第1種の項目が属する第1種のカテゴリを含んでおり、
前記メニューデータ生成部は、前記メニューにおいて、前記第1種の項目が前記第1種のカテゴリ内に表示されるように、前記メニューデータを生成することが好ましい。
こうすれば、メニューに、カテゴリ毎に区分して項目を表示することができる。
上記の装置において、
前記ページ画面データ提供部は、さらに、
前記コンピュータによって前記第1種のアドレスが指定された場合に、前記第2の通信部を介して、前記第1種のアドレスによって特定される前記第1種のコンテンツデータを前記ローカルデバイスから取得するコンテンツデータ準備部を備えることが好ましい。
こうすれば、コンピュータによって第1種のアドレスが指定されたときに、ローカルデバイスに格納された第1種のコンテンツデータをコンピュータに提供することができる。
上記の装置において、
前記メニューデータ準備部は、さらに、
第2のメニュー構成情報を準備するメニュー構成情報準備部であって、前記第2種のメニュー構成情報は、前記メニューに表示されて、前記制御装置に格納された第2種のコンテンツデータによって表される第2種のコンテンツを示す第2種の項目と、前記第2種の項目に関連付けられて、前記制御装置に格納された前記第2種のコンテンツデータの所在を示す第2種のアドレスと、を含む、前記メニュー構成情報準備部を備え、
前記メニューデータ生成部は、さらに、前記メニュー構成情報準備部から受け取った前記第2のメニュー構成情報を用いて、前記メニューデータを生成するようにしてもよい。
こうすれば、ローカルデバイスに含まれる第1種のコンテンツに関する第1種のメニュー構成情報と、制御装置に含まれる第2種のコンテンツに関する第2種のメニュー構成情報と、を用いて、メニューデータを生成することができる。
上記の装置において、
前記第2の通信部は、複数の前記ローカルデバイスと通信可能であり、
前記メニューデータ準備部は、さらに、
前記メニュー構成情報取得部による前記第1種のメニュー構成情報の取得に先行して、前記ローカルデバイスに、他のローカルデバイスから取得した他の第1種のメニュー構成情報を通知する通知部を備えることが好ましい。
こうすれば、複数のローカルデバイスが同一の第1種のメニュー構成情報を有する場合に、注目ローカルデバイスが他のローカルデバイスの第1種のメニュー構成情報に応じて、注目ローカルデバイスの第1種のメニュー構成情報を変更すれば、複数の同一の第1種のメニュー構成情報を用いてメニューデータを生成せずに済む。換言すれば、複数のローカルデバイスが同一の第1種のメニュー構成情報を有する場合にも、互いに異なる第1種のメニュー構成情報を用いてメニューデータを生成することができる。
本発明の第2の装置は、ネットワーク装置であって、
上記のいずれかに記載の前記制御装置と、
前記ローカルデバイスと、
を備えることを特徴とする。
上記の装置において、
前記ローカルデバイスは、
予め準備された前記第1種のメニュー構成情報を前記メニュー構成情報取得部に供給するためのメニュー構成情報供給部を備えており、
前記メニュー構成情報供給部は、
前記予め準備された前記第1種のメニュー構成情報の供給に先行して、前記通知部から、前記他のローカルデバイスの前記他の第1種のメニュー構成情報を受け取り、
前記予め準備された第1種のメニュー構成情報が前記他の第1種のメニュー構成情報と同じである場合には、前記予め準備された第1種のメニュー構成情報を変更して、前記変更済みの第1種のメニュー構成情報を前記メニュー構成情報取得部に提供することが好ましい。
この発明は、種々の形態で実現することが可能であり、制御装置および該制御装置における制御方法、ローカルデバイスおよび該ローカルデバイスにおける制御方法、制御装置とローカルデバイスとを含むネットワーク装置および該ネットワーク装置における制御方法、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
次に、本発明の実施の形態を実施例に基づき以下の順序で説明する。
A.ネットワークシステムの構成:
A−1.デバイスサーバの構成:
A−2.ローカルデバイスの構成:
A−3.クライアントコンピュータの構成:
B.通信処理:
C.前処理:
A.ネットワークシステムの構成:
図1は、ネットワークシステムの構成を示す説明図である。ネットワークシステムは、デバイスサーバ100と、プリンタ200と、クライアントコンピュータ(以下、単に「クライアント」とも呼ぶ)300と、を備えている。デバイスサーバ100とクライアント300とは、LANなどのネットワークNWを介して互いに接続されている。また、デバイスサーバ100とプリンタ200とは、USBケーブルを介して互いに接続されている。
なお、本実施例では、デバイスサーバ100とプリンタ200とは異なる筐体に収納されているが、共通の筐体に収納されていてもよい。
図1に示すように、デバイスサーバ100には、ストレージ装置400などの他のローカルデバイスも接続可能である。この場合には、他のローカルデバイスは、独立した筐体に収納されていてもよいし、上記の共通の筐体に収納されていてもよい。
なお、本実施例におけるデバイスサーバ100が本発明における制御装置に相当し、プリンタ200やストレージ装置400などがローカルデバイスに相当する。また、デバイスサーバ100とデバイスサーバに接続されるローカルデバイスとがネットワーク装置に相当する。
A−1.デバイスサーバの構成:
デバイスサーバ100(図1)は、CPU110と、ROMやRAMなどのメモリ120と、ネットワークインタフェース(IF)部142と、USBホストインタフェース(IF)部148と、を備えている。
ネットワークIF部142は、ネットワークNWを介してクライアント300と通信するためのインタフェースである。
USBホストIF部148は、USBケーブルを介してプリンタ200などのローカルデバイスと通信するためのインタフェースである。USBホストIF部148は、複数のUSBポートを有しており、該複数のUSBポートには、複数のローカルデバイスを接続可能である。
メモリ120には、Webサーバ部122と、第1の通信制御部132と、第2の通信制御部134と、の機能を有するコンピュータプログラムが格納されている。各部の機能は、CPU110が各コンピュータプログラムを実行することによって実現される。なお、各部の機能を有するコンピュータプログラムは、例えば、CD−ROMなどのコンピュータ読み取り可能な記録媒体に記録された形態で提供される。
第1の通信制御部132は、ネットワークIF部142を介して、第1種のプロトコルに従った通信データを送受信する機能を有する。本実施例では、第1種のプロトコルとして、HTTP(Hyper Text Transfer Protocol)プロトコルが採用されている。第1の通信制御部132は、HTTPサーバの処理を実行する機能を有しており、HTTPライブラリ(後述する)を備えている。また、第1の通信制御部132は、TCPおよび/またはUDP層の処理と、IP層の処理と、を実行する機能を有する。
なお、本実施例では、第1種のプロトコルとして、HTTPプロトコルが利用されているが、これに代えて、他のプロトコル(例えば、FTP(File Transfer Protocol)プロトコル)が利用されてもよい。
第2の通信制御部134は、USBホストIF部148を介して、第2種のプロトコルに従った通信データを送受信する機能を有する。なお、本実施例では、第2種のプロトコルとして、第1種のプロトコルと異なる独自のプロトコルが採用されている。以下では、該独自のプロトコルを「内部プロトコル」とも呼ぶ。
Webサーバ部122は、第1の通信制御部132がクライアント300から受信したHTTPリクエストに含まれるURLに基づいて、コンテンツデータ(HTMLファイル)を準備する機能を有する。なお、コンテンツデータは、第1の通信制御部132が生成するHTTPレスポンス内に挿入されて、クライアント300に送信される。
Webサーバ部122は、サーバWebサービス部124と、デバイス管理サービス部126と、メニューサービス部128と、を備えている。
サーバWebサービス部124は、複数のコンテンツを表す複数のコンテンツデータ(HTMLファイル)を備えている。サーバWebサービス部124が有するコンテンツデータは、デバイスサーバ100に関連するコンテンツ(例えばネットワークに関するコンテンツ)を表している。サーバWebサービス部124は、第1の通信制御部132からHTTPリクエストに含まれるURLが通知されると、該URLによって特定されるコンテンツデータを準備して、第1の通信制御部132に渡す。
また、サーバWebサービス部124は、リンク情報(後述する)と、URL情報(後述する)と、を備えている。サーバWebサービス部124は、リンク情報をメニューサービス部128に登録し、URL情報を第1の通信制御部132のHTTPライブラリに登録する。
デバイス管理サービス部126は、第1の通信制御部132からHTTPリクエストに含まれるURLが通知されると、該URLによって特定されるコンテンツデータ(HTMLファイル)を準備して、第1の通信制御部132に渡す。具体的には、デバイス管理サービス部126は、第1の通信制御部132から与えられたURLを、デバイスサーバ100に接続されたプリンタなどのローカルデバイスに通知し、ローカルデバイスからコンテンツデータ(HTMLファイル)を取得することによって、コンテンツデータを準備する。なお、後述するように、デバイス管理サービス部126は、管理テーブルTBを備えており、管理テーブルTBを参照して、第1の通信制御部132から与えられたURLを、適切なローカルデバイスに通知する。
また、デバイス管理サービス部126は、プリンタ200などのローカルデバイスから受け取ったリンク情報(後述する)をメニューサービス部128に登録し、ローカルデバイスから受け取ったURL情報(後述する)を第1の通信制御部132のHTTPライブラリに登録する。
メニューサービス部128は、第1の通信制御部132からHTTPリクエストに含まれるURLが通知されると、該URLによって特定されるコンテンツデータ(HTMLファイル)を準備して、第1の通信制御部132に渡す。なお、メニューサービス部128が準備するコンテンツデータは、Webページのうちの少なくとも一部に表現されるメニューを表すメニューデータである。なお、メニューは、後述するように、サーバWebサービス部124が有する複数のコンテンツに対応する複数の項目と、各ローカルデバイスのデバイスWebサービス(例えば、プリンタ200のデバイスWebサービス部224)が有する複数のコンテンツに対応する複数の項目と、を含んでいる。
本実施例では、デバイスサーバ100には、3つのサービス部124,126,128が含まれている。このため、第1の通信制御部132は、HTTPリクエストに含まれるURL(注目URL)を、3つのサービス部のうちのいずれかに通知する必要がある。具体的には、注目URLがサーバWebサービス部124に格納されたコンテンツデータを示している場合には、第1の通信制御部132は、注目URLをサーバWebサービス部124に通知する。同様に、注目URLがプリンタ200のデバイスWebサービス部224に格納されたコンテンツデータを示している場合には、第1の通信制御部132は、注目URLをデバイス管理サービス部126に通知する。また、注目URLがメニューサービス部128によって準備されるメニューデータを示している場合には、第1の通信制御部132は、注目URLをメニューサービス部128に通知する。
上記のように、注目URLを適切なサービス部に通知するために、本実施例では、第1の通信制御部(HTTPサーバ)132は、HTTPライブラリを備えている。第1の通信制御部132は、各サービス部124,126,128から受け取ったURL情報を、HTTPライブラリ内に登録する。HTTPライブラリ内では、URL情報と、該URL情報を登録したサービス部とが対応付けられている。第1の通信制御部132は、HTTPライブラリを参照することによって、HTTPリクエスト内に含まれる注目URLを、適切なサービス部に通知することができる。
なお、本実施例におけるネットワークIF部142が本発明における第1の通信部に相当し、USBホストIF部148が第2の通信部に相当する。そして、本実施例におけるWebサーバ122部が本発明におけるページ画面データ提供部とメニューデータ準備部とに相当する。
また、デバイス管理サービス部126が本発明におけるメニュー構成情報取得部と検出部とコンテンツデータ準備部と通知部とに相当し、メニューサービス部128が本発明におけるメニューデータ生成部に相当する。そして、サーバWebサービス部が本発明におけるメニュー構成情報準備部に相当する。
さらに、デバイス管理サービス部126からメニューサービス部128に与えられるリンク情報が、第1種のメニュー構成情報に相当する。サーバWebサービス部124からメニューサービス部128に与えられるリンク情報が本発明における第2種のメニュー構成情報に相当する。
A−2.ローカルデバイスの構成:
プリンタ200(図1)は、CPU210と、ROMやRAMなどのメモリ220と、USBデバイスインタフェース(IF)部248と、プリンタエンジン250と、を備えている。
USBデバイスIF部248は、USBケーブルを介してデバイスサーバ100と通信するためのインタフェースである。
メモリ220には、処理実行部222と、通信制御部232と、の機能を有するコンピュータプログラムが格納されている。
通信制御部232は、USBデバイスIF部248を介して、第2種のプロトコル(内部プロトコル)に従った通信データを送受信する機能を有する。なお、通信制御部232の機能は、USBクラスドライバによって実現される。
処理実行部222は、通信制御部232が取得した内部プロトコルに従った通信データに基づいて、種々の処理を実行する。例えば、処理実行部222は、プリンタエンジン250を制御して、印刷を実行させる。
特に、本実施例では、処理実行部222は、前述のデバイスWebサービス部224を備えている。デバイスWebサービス部224は、複数のコンテンツを表す複数のコンテンツデータ(HTMLファイル)を備えている。なお、デバイスWebサービス部224が有するコンテンツデータは、プリンタ200に関連するコンテンツを表している。デバイスWebサービス部224は、通信制御部232を介して、デバイスサーバ100のデバイス管理サービス部126からURLが通知される、該URLによって特定されるコンテンツデータを準備して、デバイス管理サービス部126に供給する。
また、デバイスWebサービス部224は、リンク情報(後述する)と、URL情報(後述する)と、を備えている。デバイスWebサービス部224は、リンク情報とURL情報とを、デバイス管理サービス部126に供給する。
デバイスサーバ100に接続される他のローカルデバイス(例えばストレージ装置400)も、プリンタ200と同様に、デバイスWebサービス部(例えば424)を備えている。
なお、本実施例におけるデバイスWebサービス部が本発明におけるメニュー構成情報供給部に相当する。
A−3.クライアントコンピュータの構成:
クライアント300は、図1に示すように、Webブラウザ310を備えており、デバイスサーバ100から提供されたWebページをWebブラウザ310によって準備されるWebブラウザ画面に表示する。
B.通信処理:
図2は、図1のネットワークシステムで行われる通信処理の一例を示すフローチャートである。以下では、デバイスサーバ100にプリンタ200のみが接続されている場合を想定して説明する。
ステップS102では、クライアント300は、トップページ(Webページ)の提供を要求する。具体的には、クライアント300のユーザは、Webブラウザ画面を介して、デバイスサーバ100が有するトップページを指定して、該トップページを表すコンテンツデータの提供を要求する。
ステップS104では、デバイスサーバ100は、要求されたトップページを表すコンテンツデータを準備して、該コンテンツデータをクライアント300に供給する。
ステップS106では、クライアント300は、デバイスサーバ100からトップページを表すコンテンツデータを取得し、Webブラウザ画面内にトップページを表示する。
図3は、ステップS106(図2)でWebブラウザ画面に表示されるトップページWP1を示す説明図である。このトップページWP1には、3つのフィールドF1〜F3が含まれている。第1のフィールドF1には、見出し画像が表示されている。第2のフィールドF2には、複数の項目を含むメニューMNが表示されている。メニューMNには、デバイスサーバ100が提供可能な複数のコンテンツに対応する複数の項目と、デバイスサーバに接続されたプリンタ200が提供可能な複数のコンテンツに対応する複数の項目と、が含まれている。各項目には、対応するコンテンツを表すコンテンツデータの所在を示すURLが関連付けられている。第3のフィールドF3には、第2のフィールドF2で選択された項目に対応するコンテンツが表示される。なお、図3では、未だいずれの項目も選択されていないため、第3のフィールドF3には、有意なコンテンツは表示されていない。
図3に示すように、メニューMN内に含まれる複数の項目は、カテゴリ毎に配置されている。具体的には、図3のメニューMNには、2つの大カテゴリ「情報」,「設定」が含まれており、各大カテゴリには、2つの小カテゴリ「ネットワーク」,「プリンタ」が含まれている。
なお、図3に示すトップページWP1を表示する際には、実際には、ステップS102〜S106において以下の処理が実行されている。
まず、クライアント300は、トップページを表すコンテンツデータの所在を示すURL(メインURL)を含むHTTPリクエストをデバイスサーバ100に送信する。デバイスサーバ100の第1の通信制御部132は、HTTPライブラリを参照して、メインURLをサーバWebサービス部124に通知する。サーバWebサービス部124は、メインURLによって特定されるコンテンツデータ(メインコンテンツデータ)を準備する。第1の通信制御部132は、メインコンテンツデータを含むHTTPレスポンスをクライアント300に送信する。なお、メインコンテンツデータには、トップページWP1内の第1ないし第3のフィールドF1〜F3に表示されるべき第1ないし第3のコンテンツの所在を示す第1ないし第3のサブURLが含まれている。
次に、クライアント300は、第1ないし第3のサブURLをそれぞれ含む3つのHTTPリクエストをデバイスサーバ100に送信する。デバイスサーバ100の第1の通信制御部132は、HTTPライブラリを参照して、第1および第3のサブURLをサーバWebサービス部124に通知する。サーバWebサービス部124は、第1および第3のサブURLによって特定される2つのコンテンツデータ(サブコンテンツデータ)を準備する。また、デバイスサーバ100の第1の通信制御部132は、HTTPライブラリを参照して、第2のサブURLをメニューサービス部128に通知する。メニューサービス部128は、第2のサブURLによって特定されるコンテンツデータ(メニューデータ)を準備する。第1の通信制御部132は、上記の3つのコンテンツデータをそれぞれ含む3つのHTTPレスポンスをクライアント300に送信する。
この結果、ステップS106において、Webブラウザ画面内には、3つのフィールドF1〜F3に3つのコンテンツが含まれるトップページWP1が表示される。
ステップS112(図2)では、クライアント300は、第1のコンテンツの提供を要求する。具体的には、ステップS112では、クライアント300のユーザは、トップページWP1(図3)内のメニューMNの中から、1つの項目を選択することによって、選択された項目に対応するコンテンツの提供を要求する。ここでは、大カテゴリ「情報」および小カテゴリ「ネットワーク」に属する項目「基本情報」が選択された場合を想定する。このとき、クライアント300は、項目「基本情報」に対応する第1のコンテンツデータの所在を示す第1のURLを含むHTTPリクエストをデバイスサーバ100に送信する。
ステップS114では、デバイスサーバ100は、項目「基本情報」に対応する第1のコンテンツデータを準備して、第1のコンテンツデータをクライアント300に供給する。
具体的には、デバイスサーバ100の第1の通信制御部132は、HTTPライブラリを参照して、HTTPリクエストに含まれる第1のコンテンツデータの所在を示す第1のURLをサーバWebサービス部124に通知する。サーバWebサービス部124は、第1のURLによって特定される第1のコンテンツデータを準備する。そして、第1の通信制御部132は、第1のコンテンツデータを含むHTTPレスポンスをクライアント300に送信する。
ステップS116では、クライアント300は、デバイスサーバ100から第1のコンテンツデータを取得し、Webブラウザ画面内に第1のコンテンツデータによって表される「基本情報」の内容を表示する。
図4は、ステップS116(図2)でWebブラウザ画面に表示される「基本情報」ページWP2を示す説明図である。図4は、図3とほぼ同じであるが、第3のフィールドF3が変更されている。第3のフィールドF3には、「基本情報」の内容が表示されている。これにより、クライアント300のユーザは、デバイスサーバ100のネットワークに関する基本情報を知ることができる。なお、図4では、基本情報には、「管理者」や「設置場所」、「インタフェースカード型番」、「MACアドレス」などが含まれている。
なお、図4に示す「基本情報」ページWP2は、図3に示すトップページWP1の第3のフィールドF3に表示されるコンテンツを変更することによって、作成される。この説明から分かるように、本実施例では、ステップS116において、第3のフィールドF3に表示されるコンテンツを表すコンテンツデータのみが取得され、第1および第2のフィールドF1,F2に表示されるコンテンツを表すコンテンツデータは取得されない。ただし、これに代えて、ステップS116において、各フィールドF1〜F3に表示される3つのコンテンツを表す3つのコンテンツデータが取得されるようにしてもよい。
ステップS122(図2)では、クライアント300は、第2のコンテンツの提供を要求する。具体的には、ステップS122では、クライアント300のユーザは、「基本情報」ページWP2(図4)内のメニューMNの中から、他の1つの項目を選択することによって、選択された項目に対応するコンテンツの提供を要求する。ここでは、大カテゴリ「情報」および小カテゴリ「プリンタ」に属する項目「デバイス情報」が選択された場合を想定する。このとき、クライアント300は、項目「デバイス情報」に対応する第2のコンテンツデータの所在を示す第2のURLを含むHTTPリクエストをデバイスサーバ100に送信する。
ステップS124では、デバイスサーバ100は、項目「デバイス情報」に対応する第2のコンテンツデータを準備して、第2のコンテンツデータをクライアント300に供給する。
具体的には、デバイスサーバ100の第1の通信制御部132は、HTTPライブラリを参照して、HTTPリクエストに含まれる第2のコンテンツデータの所在を示す第2のURLをデバイス管理サービス部126に通知する。デバイス管理サービス部126は、第2のURLによって特定される第2のコンテンツデータを準備する。そして、第1の通信制御部132は、第2のコンテンツデータを含むHTTPレスポンスをクライアント300に送信する。
ただし、項目「デバイス情報」に対応する第2のコンテンツデータは、デバイス管理サービス部126内に格納されておらず、プリンタ200内に格納されている。このため、ステップS124aでは、デバイス管理サービス部126は、プリンタ200に第2のコンテンツの提供を要求する。具体的には、デバイス管理サービス部126は、第1の通信制御部132から受け取った第2のURLを、第2の通信制御部134を介して、プリンタ200に通知する。そして、ステップS124bにおいて、デバイス管理サービス部126は、第2の通信制御部134を介して、プリンタ200から第2のコンテンツデータを取得する。
ステップS126では、プリンタ200のデバイスWebサービス部224は、ステップS124aで通知された第2のURLによって特定される第2のコンテンツデータを準備する。そして、デバイスWebサービス部224は、第2のコンテンツデータをデバイスサーバ100に送信する。
ステップS128では、クライアント300は、デバイスサーバ100から第2のコンテンツデータを取得し、Webブラウザ画面内に第2のコンテンツデータによって表される「デバイス情報」の内容を表示する。
図5は、ステップS128(図2)でWebブラウザ画面に表示される「デバイス情報」ページWP3を示す説明図である。図5は、図3,図4とほぼ同じであるが、第3のフィールドF3が変更されている。第3のフィールドF3には、「デバイス情報」の内容が表示されている。これにより、クライアント300のユーザは、プリンタ200に関するデバイス情報を知ることができる。なお、図5では、デバイス情報には、「型番」や「シリアル番号」、「用紙サイズ」、「印刷解像度」などが含まれている。
C.前処理:
本実施例では、図2の通信処理を実現するために、前処理が実行される。
サーバWebサービス部124は、自己が有するリンク情報をメニューサービス部128に登録すると共に、自己が有するURL情報を第1の通信制御部132のHTTPライブラリに登録する。また、メニューサービス部128は、自己が有するURL情報を第1の通信制御部132のHTTPライブラリに登録する。
上記の前処理によって、メニューサービス部128には、サーバWebサービス部124に含まれるリンク情報が登録される。また、第1の通信制御部132のHTTPライブラリには、サーバWebサービス部124に含まれるURL情報と、メニューサービス部128に含まれるURL情報と、が登録される。
ここで、リンク情報は、図3〜図5に示すメニューMN内に表示される項目(文字列:例えば「基本情報」)と、該項目に対応するコンテンツを表すコンテンツデータの所在を示すURLと、を含む。なお、URLは、対応する項目に関連付けられている。また、本実施例では、リンク情報は、メニューMN内に表示され、項目が属するカテゴリを含んでいる。なお、カテゴリは、図3〜図5のメニューMN内に示す「情報」や「設定」などの大カテゴリや、「ネットワーク」や「プリンタ」などの小カテゴリを意味する。例えば、項目「基本情報」は、大カテゴリ「情報」および小カテゴリ「ネットワーク」に属している。これにより、メニューMN内において、項目「基本情報」は、大カテゴリ「情報」および小カテゴリ「ネットワーク」に属する項目として表示される。換言すれば、カテゴリは、項目の配置を示している。
また、URL情報は、コンテンツを表すコンテンツデータの所在を示すURLを含む。
なお、本実施例では、上記の前処理は、例えば、デバイスサーバ100に最初に電源が投入される際に実行される。しかしながら、上記の前処理は、省略可能である。この場合には、メニューサービス部128に、サーバWebサービス部124に含まれるリンク情報を予め登録しておくと共に、HTTPライブラリに、サーバWebサービス部124に含まれるURL情報とメニューサービス部128に含まれるURL情報とを予め登録しておけばよい。
デバイス管理サービス部126は、前処理として、各ローカルデバイスに含まれるリンク情報をメニューサービス部128に登録すると共に、各ローカルデバイスに含まれるURL情報を第1の通信制御部132のHTTPライブラリに登録する。
図6は、デバイス管理サービス部126によって実行される前処理の手順を示すフローチャートである。なお、デバイス管理サービス部126によって実行される前処理は、前述のサーバWebサービス部124およびメニューサービス部128による前処理の後に実行される。また、図6の処理は、USBホストIF部148に設けられた接続ポート毎に実行される。
ステップS202では、デバイス管理サービス部126は、ローカルデバイスを検出する。具体的には、デバイス管理サービス部126は、USBホストIF部148に設けられた特定の接続ポートに動作可能なローカルデバイス、換言すれば、電源がオン状態のローカルデバイスが接続されているか否かを、所定の時間毎に検出する(ポーリング)。ローカルデバイスが検出されるとステップS203に進み、検出されない場合には、ステップS222に進む。
ステップS203では、デバイス管理サービス部126は、検出されたローカルデバイス(以下「対象ローカルデバイス」とも呼ぶ)から、該ローカルデバイスの種類(例えばプリンタの型番)を取得する。
ステップS204では、デバイス管理サービス部126は、管理テーブルTBを参照して、特定のポートで検出された対象ローカルデバイスが、検出済みか否かを判断する。具体的には、管理テーブルTBには、接続ポート毎に、各接続ポートで検出されたローカルデバイスの種類が登録されている。デバイス管理サービス部126は、管理テーブルTBを参照して、特定の接続ポートで検出された対象ローカルデバイスの種類が、該特定の接続ポートに対して既に登録されているローカルデバイスの種類と一致するか否かを判断する。一致する場合には、対象ローカルデバイスは既に検出済みであると判断され、図6の処理が終了する。一方、一致しない場合には、対象ローカルデバイスは初めて検出されたと判断され、ステップS205に進む。
なお、特定の接続ポートで過去にローカルデバイスが検出されていない場合には、管理テーブルTB内には、該特定のポートに対してローカルデバイスの種類は登録されていない。したがって、この場合には、ステップS204において、対象ローカルデバイスは初めて検出されたと判断される。
また、デバイスサーバ100の電源がオフ状態の間に、特定の接続ポートに接続された第1のローカルデバイスが第2のローカルデバイス(対象ローカルデバイス)に変更された場合には、既に、特定の接続ポートで第1のローカルデバイスが検出されている。このため、管理テーブルTB内には、該特定のポートに対して該第1のローカルデバイス(例えばスキャナ)の種類が登録されている。したがって、この場合にも、ステップS204において、第2のローカルデバイス(例えばプリンタ)は初めて検出されたと判断される。なお、この場合には、後述するステップS224〜S228と同様に、第1のローカルデバイスに関する情報は、削除される。
ステップS205では、デバイス管理サービス部126は、管理テーブルTB内の特定の接続ポートに対して、ステップS203で取得した対象ローカルデバイスの種類を登録する。
ステップS206では、デバイス管理サービス部126は、対象ローカルデバイスに、登録済み情報を通知する。登録済み情報は、登録済みリンク情報と、登録済みURL情報と、を含んでいる。登録済みリンク情報は、メニューサービス部128に既に登録されているすべてのリンク情報である。登録済みURL情報は、第1の通信制御部132のHTTPライブラリに既に登録されているすべてのURL情報である。
また、ステップS206では、デバイス管理サービス部126は、対象ローカルデバイスに、登録すべき情報の提供を要求する。登録ずべき情報は、対象ローカルデバイスが有するリンク情報とURL情報とを意味している。以下では、対象ローカルデバイスがプリンタ200である場合を想定して説明する。
ステップS208では、デバイス管理サービス部126は、対象ローカルデバイス(プリンタ)200のデバイスWebサービス部224から登録すべきリンク情報を受け取り、該リンク情報をメニューサービス部128に登録する。また、デバイス管理サービス部126は、メニューサービス部128に、該リンク情報と共に、管理テーブルTBに登録された接続ポート情報を登録する。なお、接続ポート情報は、特定の接続ポートを示す識別情報と対象ローカルデバイスの種類とを含んでいる。
ステップS208の処理が実行される際には、対象ローカルデバイス200のデバイスWebサービス部224は、ステップS206で与えられた登録済みリンク情報を参照して、自己が有する登録すべきリンク情報(原リンク情報)と登録済みリンク情報とが一致するか否かを判断する。一致しない場合には、デバイスWebサービス部224は、原リンク情報をそのままデバイス管理サービス部126に送信する。一方、一致する場合には、デバイスWebサービス部224は、原リンク情報を変更して、変更済みのリンク情報をデバイス管理サービス部126に送信する。なお、リンク情報の変更については、後述する。
ステップS210では、デバイス管理サービス部126は、対象ローカルデバイス200のデバイスWebサービス部224から登録すべきURL情報を受け取り、該URL情報を第1の通信制御部132のHTTPライブラリに登録する。また、デバイス管理サービス部126は、HTTPライブラリに、該URL情報と共に、管理テーブルTBに登録された接続ポート情報を登録する。
ステップS210の処理が実行される際には、対象ローカルデバイス200のデバイスWebサービス部224は、ステップS206で与えられた登録済みURL情報を参照して、自己が有する登録すべきURL情報(原URL情報)と登録済みURL情報とが一致するか否かを判断する。一致しない場合には、デバイスWebサービス部224は、原URL情報をそのままデバイス管理サービス部126に送信する。一方、一致する場合には、デバイスWebサービス部224は、原URL情報を変更して、変更済みのURL情報をデバイス管理サービス部126に送信する。なお、URL情報の変更については、後述する。
また、ステップS210では、デバイス管理サービス部126は、管理テーブルTBに、対象ローカルデバイス200から受け取ったURL情報を登録する。この結果、管理テーブルTB内の特定の接続ポートには、対象ローカルデバイスの種類と、対象ローカルデバイスから与えられたURL情報と、が対応付けて登録されている。
ステップS210の処理が終了したときには、メニューサービス部128には、サーバWebサービス部124に含まれるリンク情報と、対象ローカルデバイス200のデバイスWebサービス部224に含まれるリンク情報と、が登録されている。
また、ステップS210の処理が終了したときには、第1の通信制御部132のHTTPライブラリ内には、サーバWebサービス部124に含まれるURL情報と、対象ローカルデバイス200のデバイスWebサービス部224に含まれるURL情報と、メニューサービス部128に含まれるURL情報と、が登録されている。なお、前述したように、HTTPライブラリには、URL情報に対応付けて、該URL情報を登録したサービス部を示す情報が登録される。例えば、HTTPライブラリには、対象ローカルデバイス200のデバイスWebサービス部224に含まれるURL情報と、該URL情報を登録したデバイス管理サービス部126を示す情報と、が対応付けて登録されている。
各サービス部124,126,128による上記の前処理が終了すると、図2に示す通信処理の実行が可能となる。
具体的には、第1の通信制御部132は、登録済みのURL情報を利用して、HTTPリクエストに含まれるURLを、3つのサービス部124,126,128のうちの適切なサービス部に通知することができる。換言すれば、3つのサービス部124,126,128がURL情報をHTTPライブラリに登録することによって、第1の通信制御部132は、HTTPライブラリを参照して、クライアント300から受け取ったHTTPリクエストに含まれるURLを、3つのサービス部124,126,128のうちの適切なサービス部に通知することができる。
そして、デバイス管理サービス部126は、第1の通信制御部132からHTTPリクエストに含まれるURLを受け取ると、管理テーブルTBを参照して、複数の接続ポートのうちの1つの接続ポートを選択することができる。そして、デバイス管理サービス部126は、該URLを、選択された接続ポートに接続されたローカルデバイスに通知することができる。
また、メニューサービス部128は、登録済みのリンク情報を利用して、メニューMNを表すメニューデータを生成することができる。換言すれば、サーバWebサービス部124とデバイス管理サービス部126とがメニューサービス部128にリンク情報を登録することによって、メニューサービス部128は、複数の項目を含むメニューMN(図3〜図5)を表すメニューデータを生成することができる。なお、メニューMNには、デバイスサーバ100内のサーバWebサービス部124に含まれるコンテンツに対応する複数の項目と、プリンタ200内のデバイスWebサービス部224に含まれるコンテンツに対応する複数の項目と、が含まれる。
特に、本実施例では、メニューデータは、図6のステップS202で検出されたローカルデバイスに応じて動的に生成される。具体的には、デバイス管理サービス部126によってプリンタ200が検出されると、プリンタ200に含まれる複数のコンテンツに対応する複数の項目が追加されたメニューデータが生成される。
なお、図6では、プリンタ200が検出された場合について説明したが、他の接続ポートにおいて他のローカルデバイス(例えばストレージ装置400)が検出された場合にも同様にメニューデータが生成される。
図7は、ストレージ装置400が検出された場合に、ステップS106(図2)でWebブラウザ画面に表示されるトップページWP1aを示す説明図である。図7は、図3とほぼ同じであるが、第2のフィールドF2に表示されたメニューMNaが変更されている。メニューMNaの大カテゴリ「情報」,「設定」には、それぞれ、小カテゴリ「ストレージ」が追加されている。そして、各小カテゴリ「ストレージ」内には、複数の項目が含まれている。
このように、本実施例では、デバイスサーバ100の構成を変更することなく、より具体的には、デバイスサーバ100内のコンテンツデータやメニューデータをネットワークの管理者等が変更することなく、検出されたローカルデバイスに応じて、動的にメニューMNを作成することができる。
ところで、ローカルデバイスが使用不能になった場合、例えば、ローカルデバイスの電源がオフ状態に設定された場合や、ローカルデバイスの接続が切断された場合にも、メニューMNを変更する必要がある。以下では、プリンタ200が使用不能になった場合を想定する。
ステップS202(図6)で説明したように、特定の接続ポートにおいてローカルデバイスが検出されない場合には、ステップS222に進む。
ステップS222では、デバイス管理サービス部126は、過去に該特定の接続ポートにおいて何らかのローカルデバイスが検出されたか否かを判断する。具体的には、デバイス管理サービス部126は、管理テーブルTBを参照して、該特定の接続ポートに対してローカルデバイスの種類が登録されているか否かを調べる。登録されていない場合には、デバイス管理サービス部126は、特定の接続ポートには、以前からローカルデバイスが接続されていなかったと判断して、図6の処理を終了する。一方、登録されている場合には、デバイス管理サービス部126は、以前接続されていた対象ローカルデバイス200が使用不能な状態になったと判断して、ステップS224に進む。
ステップS224では、デバイス管理サービス部126は、メニューサービス部128に登録された対象ローカルデバイス200のリンク情報(対象リンク情報)を削除する。具体的には、ステップS208で説明したように、メニューサービス部128には、対象リンク情報と共に、接続ポート情報が登録されている。このため、デバイス管理サービス部126は、管理テーブルTBに登録された接続ポート情報を利用して、対象リンク情報を特定することができ、この結果、メニューサービス部128から対象リンク情報を削除することができる。なお、この際、対象リンク情報に対応付けられた接続ポート情報もメニューサービス部128から削除される。
ステップS226では、デバイス管理サービス部126は、第1の通信制御部132のHTTPライブラリに登録された対象ローカルデバイス200のURL情報(対象URL情報)を削除する。具体的には、ステップS210で説明したように、HTTPライブラリには、対象URL情報と共に、接続ポート情報が登録されている。このため、デバイス管理サービス部126は、管理テーブルTBに登録された接続ポート情報を利用して、対象URL情報を特定することができ、この結果、HTTPライブラリから対象URL情報を削除することができる。なお、この際、対象URL情報に対応付けられた接続ポート情報もHTTPライブラリから削除される。
ステップS228では、デバイス管理サービス部126は、管理テーブルTB内の特定の接続ポートに対応付けて登録されたローカルデバイスの種類(ステップS205参照)を削除する。また、この際、デバイス管理サービス部126は、管理テーブルTB内の特定の接続ポートに対応付けて登録されたURL情報(ステップS210参照)も削除する。
ステップS222〜S228の処理(より具体的にはステップS224の処理)を実行することによって、メニューサービス部128は、使用不能なローカルデバイスに関する不要なリンク情報を利用せずに、不要な項目や、URL、カテゴリを含まないメニューデータを生成することができる。この結果、クライアント300のユーザは、メニューMNにおいて、コンテンツを取得可能な項目のみを選択することができると共に、コンテンツを取得不能な項目を選択せずに済む。
また、ステップS222〜S228の処理(より具体的にはステップS226,S228の処理)を実行することによって、デバイス管理サービス部126は、HTTPライブラリおよび管理テーブルTBに残存する不要な情報に起因して、誤動作せずに済む。
なお、本実施例では、デバイス管理サービス部126は、ローカルデバイスの検出処理(ステップS202)を行うことによって、ステップS224〜S228において、メニューサービス部128と、第1の通信制御部132のHTTPライブラリと、デバイス管理サービス部126の管理テーブルTBと、から不要な情報を削除している。しかしながら、これに代えて、ローカルデバイスの電源がオフ状態に設定されたときに、ローカルデバイスが、デバイス管理サービス部126に該ローカルデバイスに関する不要な情報を削除するように依頼してもよい。ただし、本実施例のようにすれば、ローカルデバイスの接続が突然切断される場合にも、該ローカルデバイスに関する不要な情報を確実に削除することができるという利点がある。
ところで、デバイスサーバ100のUSBホストIF部148に設けられた複数の接続ポートには、同一機種の複数のローカルデバイスが接続される場合がある。同一機種の複数のローカルデバイスのデバイスWebサービス部は、通常、同一のリンク情報と、同一のURL情報と、を有している。この場合にも、同一機種の各ローカルデバイスのリンク情報は、区別された状態でメニューサービス部128に登録され、同一機種の各ローカルデバイスのURL情報は、区別された状態で第1の通信制御部132のHTTPライブラリに登録される必要がある。
そこで、本実施例では、ステップS206において、デバイス管理サービス部126は、対象ローカルデバイスに、登録済み情報(登録済みリンク情報および登録済みURL情報)を供給している。
図8は、同一機種の2台のプリンタ200,500がデバイスサーバ100に接続された場合のネットワークシステムを示す説明図である。なお、図8は、図1とほぼ同じであるが、ストレージ装置400に代えて、プリンタ500が利用されている。図8では、デバイスサーバ100に、第1のプリンタ200が既に接続されており、第1のプリンタ200と同一機種の第2のプリンタ500がさらに接続される場合を想定している。なお、第2のプリンタ500は、第1のプリンタ200と同じ構成を有しており、デバイスWebサービス部524を含んでいる。
デバイスサーバ100には第1のプリンタ200が既に接続されているため、第1のプリンタ200が有する第1のリンク情報は、既に、メニューサービス部128に登録されている。このため、第2のプリンタ500のデバイスWebサービス部524は、ステップS206で与えられた登録済みの第1のリンク情報と、自己が有する登録すべき第2のリンク情報(原リンク情報)と、が一致すると判断する。そして、第2のプリンタ500のデバイスWebサービス部524は、第2のリンク情報(原リンク情報)を変更して、変更済みリンク情報をデバイスサーバ100のデバイス管理サービス部126に送信する。具体的には、第2のプリンタ500のデバイスWebサービス部524は、第2のリンク情報(原リンク情報)に含まれる原URL(例えば.../Printer/...)を変更して、変更済みURL(例えば.../Printer2/...)を生成する。また、第2のプリンタ500のデバイスWebサービス部524は、第2のリンク情報(原リンク情報)に含まれるカテゴリ名(例えば「プリンタ」)を変更して、変更済みカテゴリ名(例えば「プリンタ2」)を生成する。
こうすれば、デバイスサーバ100に同一のリンク情報を有する複数のプリンタが接続される場合にも、メニューサービス部128にはプリンタ毎に互いに異なるリンク情報が登録されるため、メニューサービス部128は、該互いに異なるリンク情報を用いてメニューデータを生成することができる。
図9は、第2のプリンタ500(図8)が検出された場合に、ステップS106(図2)でWebブラウザ画面に表示されるトップページWP1bを示す説明図である。図9は、図3とほぼ同じであるが、第2のフィールドF2に表示されたメニューMNbが変更されている。メニューMNbの大カテゴリ「情報」,「設定」には、それぞれ、小カテゴリ「プリンタ2」が追加されている。そして、各小カテゴリ「プリンタ2」内には、「プリンタ」と同一の複数の項目が含まれている。このメニューMNbを利用すれば、クライアント300のユーザは、同一機種の2台のプリンタ200,500を区別して、一方のプリンタに関する項目を容易に選択して、目的のコンテンツを取得することができる。
同様に、デバイスサーバ100には第1のプリンタ200が既に接続されているため、第1のプリンタ200が有する第1のURL情報は、既に、第1の通信制御部132のHTTPライブラリに登録されている。このため、第2のプリンタ500のデバイスWebサービス部524は、ステップS206で与えられた登録済みの第1のURL情報と、自己が有する登録すべき第2のURL情報(原URL情報)と、が一致すると判断する。そして、第2のプリンタ500のデバイスWebサービス部524は、第2のURL情報(原URL情報)を変更して、変更済みURL情報をデバイスサーバ100のデバイス管理サービス部126に送信する。具体的には、第2のプリンタ500のデバイスWebサービス部524は、第2のURL情報(原URL情報)に含まれる原URL(例えば.../Printer/...)を変更して、変更済みURL(例えば.../Printer2/...)を生成する。
こうすれば、デバイスサーバ100に同一のURL情報を有する複数のプリンタが接続される場合にも、プリンタ毎に互いに異なるURL情報がHTTPライブラリに登録されるため、この結果、デバイス管理サービス部126は、HTTPリクエストに含まれるURLに基づいて、適切なプリンタからコンテンツデータを取得することができる。
以上説明したように、本実施例では、ローカルデバイスに関するコンテンツデータは、ローカルデバイスに格納されている。また、ローカルデバイスは、メニューMNの生成に必要なリンク情報を有している。そして、デバイスサーバ100は、ローカルデバイスに格納されたコンテンツに関するリンク情報を該ローカルデバイスから取得する。この結果、デバイスサーバ100は、接続されるローカルデバイスに応じたメニューデータを容易に生成することができる。
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
(1)上記実施例では、メニューサービス部128は、リンク情報の登録内容が変更されたときに、より具体的には、新たなリンク情報が登録されたり、登録済みのリンク情報が削除されたりしたときに、メニューデータを作成しているが、これに代えて、第1の通信制御部132からメニューデータの所在を示すURLの通知を受け取ったときに、メニューデータを作成するようにしてもよい。ただし、上記実施例のようにすれば、第1の通信制御部132からメニューデータの所在を示すURLの通知を受け取った際に、迅速にメニューデータを第1の通信制御部132に渡すことができ、この結果、クライアント300に迅速にメニューMNを提供することができるという利点がある。
(2)上記実施例では、デバイス管理サービス部126は、ステップS224において、メニューサービス部128に登録された不要なリンク情報を削除しているが、これに代えて、不要なリンク情報を削除せずに利用を禁止するようにしてもよい。
一般には、デバイス管理サービス部126は、以前に検出されたローカルデバイスが検出されない場合に、該ローカルデバイスの取得済みのリンク情報を用いてメニューデータが生成されないように所定の処理を実行すればよい。
(3)上記実施例では、図6のステップS206においてデバイス管理サービス部126は、対象ローカルデバイスに、メニューサービス部128に既に登録されているすべてのリンク情報と、HTTPライブラリに既に登録されているすべてのURL情報と、を通知している。しかしながら、対象ローカルデバイスが有するリンク情報およびURL情報は、通常、デバイスサーバ100が有するリンク情報およびURL情報と異なっている。したがって、ステップS206では、デバイス管理サービス部126は、対象ローカルデバイスに、メニューサービス部128に既に登録されているローカルデバイスのリンク情報と、HTTPライブラリに既に登録されているローカルデバイスのURL情報と、を通知するようにしてもよい。
一般には、デバイス管理サービス部126は、ローカルデバイスからのリンク情報の取得に先行して、該ローカルデバイスに、他のローカルデバイスから取得した他のリンク情報を通知すればよい。
(4)上記実施例では、図6のステップS206〜S208で説明したように、デバイスサーバ100に同一のリンク情報と同一のURL情報とを有する複数のローカルデバイスが接続された場合には、ローカルデバイスがリンク情報およびURL情報を変更している。しかしながら、これに代えて、まず、デバイスサーバ100(より具体的にはデバイス管理サービス部126)がローカルデバイスからリンク情報とURL情報とを取得して変更し、変更済みのリンク情報と変更済みのURL情報とをそれぞれメニューサービス部128とHTTPライブラリとに登録するようにしてもよい。この場合には、デバイスサーバ100は、変更済みのリンク情報と変更済みのURL情報とをローカルデバイスに供給する。
(5)上記実施例では、Webサーバ部122は、3つのサービス部124,126,128を備えているが、サーバWebサービス部124は省略可能である。
また、上記実施例では、Webサーバ部122は、1つのデバイス管理サービス部126を備えているが、これに代えて、USBホストIF部148に設けられた複数の接続ポートに対応する複数のデバイス管理サービス部を備えていてもよい。
さらに、上記実施例では、Webサーバ部122は、3つのサービス部124,126,128を備えているが、これに代えて、3つのサービス部124,126,128の機能を有する唯一の統合サービス部を備えていてもよい。こうすれば、3つのサービス部124,126,128にURLを通知する際に利用されるHTTPライブラリを省略可能である。
(6)上記実施例では、ローカルデバイスとしてプリンタやストレージ装置が利用されているが、これに代えて、他のローカルデバイスが利用されてもよい。他のローカルデバイスとしては、スキャナや、ファクシミリを利用可能である。また、他のローカルデバイスとしては、複数の機能(印刷,スキャナ等)を有する複合機を利用可能である。
なお、クライアント300のユーザは、メニューMNを介して、デバイスサーバ100に接続された種々のローカルデバイスに対して、種々の処理を実行させることができる。例えば、ストレージ装置に格納された画像データのリストを提供させたり、ストレージ装置に格納されたいずれかの画像データをプリンタに出力させたりすることができる。また、スキャナが取得した画像データをプリンタに出力させたり、該画像データをストレージ装置に格納させたりすることができる。さらに、ファクシミリが受信した画像データをプリンタに出力させたり、該画像データをストレージ装置に格納させたり、ストレージ装置に格納された画像データをファクシミリに送信させたりすることができる。
(7)上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
ネットワークシステムの構成を示す説明図である。 図1のネットワークシステムで行われる通信処理の一例を示すフローチャートである。 ステップS106(図2)でWebブラウザ画面に表示されるトップページWP1を示す説明図である。 ステップS116(図2)でWebブラウザ画面に表示される「基本情報」ページWP2を示す説明図である。 ステップS128(図2)でWebブラウザ画面に表示される「デバイス情報」ページWP3を示す説明図である。 デバイス管理サービス部126によって実行される前処理の手順を示すフローチャートである。 ストレージ装置400が検出された場合に、ステップS106(図2)でWebブラウザ画面に表示されるトップページWP1aを示す説明図である。 同一機種の2台のプリンタ200,500がデバイスサーバ100に接続された場合のネットワークシステムを示す説明図である。 第2のプリンタ500(図8)が検出された場合に、ステップS106(図2)でWebブラウザ画面に表示されるトップページWP1bを示す説明図である。
符号の説明
100…デバイスサーバ
110…CPU
120…メモリ
122…Webサーバ部
124…サーバWebサービス部
126…デバイス管理サービス部
128…メニューサービス部
132…第1の通信制御部
134…第2の通信制御部
142…ネットワークIF部
148…USBホストIF部
200…プリンタ
210…CPU
220…メモリ
222…処理実行部
224…デバイスWebサービス部
232…通信制御部
248…USBデバイスIF部
250…プリンタエンジン
300…クライアント
310…Webブラウザ
400…ストレージ装置
424…デバイスWebサービス部
500…プリンタ
524…デバイスWebサービス部
NW…ネットワーク

Claims (12)

  1. ネットワークに接続される制御装置であって、
    前記ネットワークを介して接続されるコンピュータと通信するための第1の通信部と、
    前記ネットワークを介さずに接続されるローカルデバイスと通信するための第2の通信部と、
    ページ画面を表すページ画面データを準備して、前記ページ画面データを前記第1の通信部を介して前記コンピュータに提供するためのページ画面データ提供部と、
    を備え、
    前記ページ画面データ提供部は、
    前記ページ画面のうちの少なくとも一部に表現されるメニューを表すメニューデータを準備するメニューデータ準備部を含み、
    前記メニューデータ準備部は、
    前記第2の通信部を介して前記ローカルデバイスから、第1種のメニュー構成情報を取得するメニュー構成情報取得部であって、前記第1種のメニュー構成情報は、前記メニューに表示されて、前記ローカルデバイスに格納された第1種のコンテンツデータによって表される第1種のコンテンツを示す第1種の項目と、前記第1種の項目に関連付けられて、前記ローカルデバイスに格納された前記第1種のコンテンツデータの所在を示す第1種のアドレスと、を含む、前記メニュー構成情報取得部と、
    前記メニュー構成情報取得部から受け取った前記第1種のメニュー構成情報を用いて、前記メニューデータを生成するメニューデータ生成部と、
    を備えることを特徴とする制御装置。
  2. 請求項1記載の制御装置であって、
    前記メニュー構成情報取得部は、
    前記第2の通信部に接続された前記ローカルデバイスを検出するための検出部を備え、
    前記メニュー構成情報取得部は、前記検出部によって前記ローカルデバイスが検出された場合に、前記第1種のメニュー構成情報を取得する、制御装置。
  3. 請求項2記載の制御装置であって、
    前記メニュー構成情報取得部は、以前に検出された前記ローカルデバイスが前記検出部によって検出されない場合には、取得済みの前記第1種のメニュー構成情報を用いて前記メニューデータが生成されないように処理を実行する、制御装置。
  4. 請求項1ないし3のいずれかに記載の制御装置であって、
    前記第1のメニュー構成情報は、さらに、前記メニューに表示されて、前記第1種の項目が属する第1種のカテゴリを含んでおり、
    前記メニューデータ生成部は、前記メニューにおいて、前記第1種の項目が前記第1種のカテゴリ内に表示されるように、前記メニューデータを生成する、制御装置。
  5. 請求項1ないし4のいずれかに記載の制御装置であって、
    前記ページ画面データ提供部は、さらに、
    前記コンピュータによって前記第1種のアドレスが指定された場合に、前記第2の通信部を介して、前記第1種のアドレスによって特定される前記第1種のコンテンツデータを前記ローカルデバイスから取得するコンテンツデータ準備部を備える、制御装置。
  6. 請求項1ないし5のいずれかに記載の制御装置であって、
    前記メニューデータ準備部は、さらに、
    第2のメニュー構成情報を準備するメニュー構成情報準備部であって、前記第2種のメニュー構成情報は、前記メニューに表示されて、前記制御装置に格納された第2種のコンテンツデータによって表される第2種のコンテンツを示す第2種の項目と、前記第2種の項目に関連付けられて、前記制御装置に格納された前記第2種のコンテンツデータの所在を示す第2種のアドレスと、を含む、前記メニュー構成情報準備部を備え、
    前記メニューデータ生成部は、さらに、前記メニュー構成情報準備部から受け取った前記第2のメニュー構成情報を用いて、前記メニューデータを生成する、制御装置。
  7. 請求項1ないし6のいずれかに記載の制御装置であって、
    前記第2の通信部は、複数の前記ローカルデバイスと通信可能であり、
    前記メニューデータ準備部は、さらに、
    前記メニュー構成情報取得部による前記第1種のメニュー構成情報の取得に先行して、前記ローカルデバイスに、他のローカルデバイスから取得した他の第1種のメニュー構成情報を通知する通知部を備える、制御装置。
  8. ネットワーク装置であって、
    請求項1ないし6のいずれかに記載の前記制御装置と、
    前記ローカルデバイスと、
    を備えることを特徴とするネットワーク装置。
  9. ネットワーク装置であって、
    請求項7記載の前記制御装置と、
    前記ローカルデバイスと、
    を備え、
    前記ローカルデバイスは、
    予め準備された前記第1種のメニュー構成情報を前記メニュー構成情報取得部に供給するためのメニュー構成情報供給部を備えており、
    前記メニュー構成情報供給部は、
    前記予め準備された前記第1種のメニュー構成情報の供給に先行して、前記通知部から、前記他のローカルデバイスの前記他の第1種のメニュー構成情報を受け取り、
    前記予め準備された第1種のメニュー構成情報が前記他の第1種のメニュー構成情報と同じである場合には、前記予め準備された第1種のメニュー構成情報を変更して、前記変更済みの第1種のメニュー構成情報を前記メニュー構成情報取得部に提供する、ネットワーク装置。
  10. ネットワークを介して接続されるコンピュータと通信するための第1の通信部と、前記ネットワークを介さずに接続されるローカルデバイスと通信するための第2の通信部と、を備える制御装置によって実行される制御方法であって、
    ページ画面を表すページ画面データを準備して、前記ページ画面データを前記第1の通信部を介して前記コンピュータに提供するためのページ画面データ提供工程を備え、
    前記ページ画面データ提供工程は、
    前記ページ画面のうちの少なくとも一部に表現されるメニューを表すメニューデータを準備するメニューデータ準備工程を含み、
    前記メニューデータ準備工程は、
    前記第2の通信部を介して前記ローカルデバイスから、第1種のメニュー構成情報を取得するメニュー構成情報取得工程であって、前記第1種のメニュー構成情報は、前記メニューに表示されて、前記ローカルデバイスに格納された第1種のコンテンツデータによって表される第1種のコンテンツを示す第1種の項目と、前記第1種の項目に関連付けられて、前記ローカルデバイスに格納された前記第1種のコンテンツデータの所在を示す第1種のアドレスと、を含む、前記メニュー構成情報取得工程と、
    前記メニュー構成情報取得工程で得られた前記第1種のメニュー構成情報を用いて、前記メニューデータを生成するメニューデータ生成工程と、
    を備えることを特徴とする制御方法。
  11. ネットワークを介して接続されるコンピュータと通信するための第1の通信部と、前記ネットワークを介さずに接続されるローカルデバイスと通信するための第2の通信部と、を備える制御装置に制御を実行させるためのコンピュータプログラムあって、
    ページ画面を表すページ画面データを準備して、前記ページ画面データを前記第1の通信部を介して前記コンピュータに提供するためのページ画面データ提供機能を、前記制御装置に実現させ、
    前記ページ画面データ提供機能は、
    前記ページ画面のうちの少なくとも一部に表現されるメニューを表すメニューデータを準備するメニューデータ準備機能を含み、
    前記メニューデータ準備機能は、
    前記第2の通信部を介して前記ローカルデバイスから、第1種のメニュー構成情報を取得するメニュー構成情報取得機能であって、前記第1種のメニュー構成情報は、前記メニューに表示されて、前記ローカルデバイスに格納された第1種のコンテンツデータによって表される第1種のコンテンツを示す第1種の項目と、前記第1種の項目に関連付けられて、前記ローカルデバイスに格納された前記第1種のコンテンツデータの所在を示す第1種のアドレスと、を含む、前記メニュー構成情報取得機能と、
    前記メニュー構成情報取得機能によって得られた前記第1種のメニュー構成情報を用いて、前記メニューデータを生成するメニューデータ生成機能と、
    を含むことを特徴とするコンピュータプログラム。
  12. 請求項11記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2005347874A 2005-12-01 2005-12-01 ローカルデバイスが接続される制御装置におけるメニューデータの生成 Expired - Fee Related JP4844105B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005347874A JP4844105B2 (ja) 2005-12-01 2005-12-01 ローカルデバイスが接続される制御装置におけるメニューデータの生成

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005347874A JP4844105B2 (ja) 2005-12-01 2005-12-01 ローカルデバイスが接続される制御装置におけるメニューデータの生成

Publications (2)

Publication Number Publication Date
JP2007156614A true JP2007156614A (ja) 2007-06-21
JP4844105B2 JP4844105B2 (ja) 2011-12-28

Family

ID=38240930

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005347874A Expired - Fee Related JP4844105B2 (ja) 2005-12-01 2005-12-01 ローカルデバイスが接続される制御装置におけるメニューデータの生成

Country Status (1)

Country Link
JP (1) JP4844105B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010087681A (ja) * 2008-09-30 2010-04-15 Brother Ind Ltd ウェブサーバ機能を有するプリンタ
JP2010087682A (ja) * 2008-09-30 2010-04-15 Brother Ind Ltd ウェブサーバ機能を有するプリンタ
JP2012048467A (ja) * 2010-08-26 2012-03-08 Brother Ind Ltd デバイス、ヘルプサーバ、及びプログラム
JP2013250892A (ja) * 2012-06-01 2013-12-12 Canon Inc 情報処理装置、情報処理方法およびプログラム
JP2014102620A (ja) * 2012-11-19 2014-06-05 Brother Ind Ltd 通信中継プログラム、及び、通信中継装置
US8836972B2 (en) 2008-09-30 2014-09-16 Brother Kogyo Kabushiki Kaisha Printer having web server function
US9927781B2 (en) 2012-08-31 2018-03-27 Kabushiki Kaisha Toshiba Management of a graphical user interface to be displayed on a display of an image forming apparatus

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000357145A (ja) * 1999-06-15 2000-12-26 Canon Inc ネットワークデバイス管理装置および方法
JP2000357138A (ja) * 1999-06-16 2000-12-26 Canon Inc ネットワークデバイスの管理装置および管理方法、記憶媒体
JP2004078359A (ja) * 2002-08-12 2004-03-11 Niigata Canotec Co Inc ネットワーク装置、及びデバイスの共有方法
JP2005167988A (ja) * 2003-11-13 2005-06-23 Canon Inc 画像処理システムおよび制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000357145A (ja) * 1999-06-15 2000-12-26 Canon Inc ネットワークデバイス管理装置および方法
JP2000357138A (ja) * 1999-06-16 2000-12-26 Canon Inc ネットワークデバイスの管理装置および管理方法、記憶媒体
JP2004078359A (ja) * 2002-08-12 2004-03-11 Niigata Canotec Co Inc ネットワーク装置、及びデバイスの共有方法
JP2005167988A (ja) * 2003-11-13 2005-06-23 Canon Inc 画像処理システムおよび制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010087681A (ja) * 2008-09-30 2010-04-15 Brother Ind Ltd ウェブサーバ機能を有するプリンタ
JP2010087682A (ja) * 2008-09-30 2010-04-15 Brother Ind Ltd ウェブサーバ機能を有するプリンタ
US8836972B2 (en) 2008-09-30 2014-09-16 Brother Kogyo Kabushiki Kaisha Printer having web server function
US9049316B2 (en) 2008-09-30 2015-06-02 Brother Kogyo Kabushiki Kaisha Printer having web server function
US9131082B2 (en) 2008-09-30 2015-09-08 Brother Kogyo Kabushiki Kaisha Printer having web server function
JP2012048467A (ja) * 2010-08-26 2012-03-08 Brother Ind Ltd デバイス、ヘルプサーバ、及びプログラム
US9489218B2 (en) 2010-08-26 2016-11-08 Brother Kogyo Kabushiki Kaisha Device and help server
JP2013250892A (ja) * 2012-06-01 2013-12-12 Canon Inc 情報処理装置、情報処理方法およびプログラム
US9996482B2 (en) 2012-06-01 2018-06-12 Canon Kabushiki Kaisha Information processing apparatus, information processing method and storage medium
US9927781B2 (en) 2012-08-31 2018-03-27 Kabushiki Kaisha Toshiba Management of a graphical user interface to be displayed on a display of an image forming apparatus
JP2014102620A (ja) * 2012-11-19 2014-06-05 Brother Ind Ltd 通信中継プログラム、及び、通信中継装置
US9734437B2 (en) 2012-11-19 2017-08-15 Brother Kogyo Kabushiki Kaisha Communication relaying technology and communication relaying apparatus

Also Published As

Publication number Publication date
JP4844105B2 (ja) 2011-12-28

Similar Documents

Publication Publication Date Title
JP5691668B2 (ja) ウェブページ内のプリンタ検出
JP4810318B2 (ja) ポートモニタプログラム、データ処理方法、情報処理装置、及び記憶媒体
JP2005242994A (ja) サービス提供装置、情報処理装置、サービス提供方法、情報処理方法、サービス提供プログラム、情報処理プログラム及び記録媒体
JP4844105B2 (ja) ローカルデバイスが接続される制御装置におけるメニューデータの生成
EP2490119A2 (en) Printing system, control method, information processing apparatus, device driver program, and installer program
JP2008027153A (ja) 情報処理プログラム、情報処理装置および情報処理方法
JP5413077B2 (ja) 情報処理システム、画像形成装置、情報処理装置、情報処理方法、及びプログラム
JP2011065368A (ja) 印刷制御装置、印刷制御方法、及びコンピュータプログラム
EP2133788A1 (en) Generation of output data processable by data outputting apparatus
JP2004234218A (ja) 画像形成処理システム
US9880792B2 (en) Management system, information processing device, and management method
JP2010123115A (ja) コンピューティング機器、ウェブページコンテンツ管理方法およびコンピュータ読み取り可能な媒体
US20180285467A1 (en) Web server
CN109299607A (zh) 驱动程序安全检测方法、装置和图像形成系统
JP2006285840A (ja) 文書管理システム
JP5369782B2 (ja) 画像形成装置、情報処理方法、及びプログラム
JP6135215B2 (ja) 画像形成装置、ネットワークシステム、方法およびプログラム
JP2007259413A (ja) 画像処理装置、画像処理方法およびプログラム
TW201404116A (zh) 輸出管理裝置、輸出管理系統及輸出管理方法
JP5982778B2 (ja) 情報処理装置、印刷システム、印刷方法、及びプログラム
JP4709125B2 (ja) 情報処理装置及び印刷処理システム
JP2009146358A (ja) ネットワークデバイス管理システム
JP5935384B2 (ja) 印刷装置の管理装置、印刷装置管理システムおよびプログラム
JP5495197B2 (ja) データ中継装置、画像形成方法、プログラムおよび記録媒体
JP2013196259A (ja) データ処理装置、データ処理システムおよびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110823

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110913

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110926

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

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4844105

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees