(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0023】
以下、本発明の実施形態を図面に基づいて説明する。
【0024】
<1.第1実施形態>
<1−1.システム概要>
図1は、遠隔操作システム1の構成を示す概略図である。
【0025】
図1に示すように遠隔操作システム1は、画像形成装置10と外部端末50とを備えて形成されている。ここでは、画像形成装置10として、MFP(マルチ・ファンクション・ペリフェラル(Multi-Functional Peripheral))が例示される。
【0026】
画像形成装置10と外部端末50とは、ネットワーク108を介して互いに接続される。ネットワーク108は、LAN(Local Area Network)およびインターネットなどによって構成される。また、ネットワーク108に対する接続態様は、有線接続であってもよく、或いは無線接続であってもよい。たとえば、画像形成装置10はネットワーク108に対して有線接続され、外部端末50はネットワーク108に対して無線接続される。
【0027】
遠隔操作システム1においては、画像形成装置10に対する各種の操作を外部端末50を用いて行うことが可能である。すなわち、外部端末50は、画像形成装置10を遠隔操作することが可能である。
【0028】
画像形成装置10は、ウエブサーバ30としても機能する。外部端末50のウエブブラウザ80は、当該ウエブサーバ30との間で各種の情報(MFP10に関する装置情報等)を授受し、当該各種の情報を表示することが可能である。また、ウエブブラウザ80は、操作者からの各種の操作入力を受け付け、当該操作入力に応じた設定内容等をウエブサーバ30に送信し、MFP10の設定内容等を変更することも可能である。
【0029】
この遠隔操作システム1は、ウエブサーバ30とウエブブラウザ80とを用いて構築されるシステムであることから、ウエブアプリケーションシステムとも称される。
【0030】
<1−2.MFPの構成>
図2は、MFP10の概略構成を示す機能ブロック図である。MFP10は、スキャン機能、コピー機能、ファクシミリ機能およびボックス格納機能などを備える装置(複合機とも称する)である。
【0031】
また、MFP10は、ウエブサーバ30としても機能する。ウエブサーバ30の各種のウエブページデータ(詳細には、当該ウエブサーバ30からウエブブラウザ80に送信される各種のウエブページデータ(例えば、110,210,230(後述)))は、格納部5に格納されている。各ウエブページデータは、各種のページ記述言語(HTML(HyperText Markup Language)等)およびスクリプト言語(JavaScript(登録商標)等)によって記述されている。
【0032】
図2の機能ブロック図に示すように、MFP10は、画像読取部2、印刷出力部3、通信部4、格納部5、操作部6およびコントローラ9等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。
【0033】
画像読取部2は、MFP10の所定の位置に載置された原稿を光学的に読み取って(すなわちスキャンして)、当該原稿の画像データ(原稿画像ないしスキャン画像とも称する)を生成する処理部である。この画像読取部2は、スキャン部であるとも称される。
【0034】
印刷出力部3は、印刷対象に関するデータに基づいて紙などの各種の媒体に画像を印刷出力する出力部である。なお、印刷出力部3は、各種の媒体上に画像を形成する画像形成部とも称される。
【0035】
通信部4は、公衆回線等を介したファクシミリ通信を行うことが可能な処理部である。さらに、通信部4は、ネットワーク108を介したネットワーク通信を行うことも可能である。このネットワーク通信では、たとえば、TCP/IP(Transmission Control Protocol / Internet Protocol)等の各種のプロトコルが利用される。当該ネットワーク通信を利用することによって、MFP10は、所望の相手先(たとえば、外部端末50)との間で各種のデータを授受することが可能である。通信部4は、各種データを送信する送信部4aと各種データを受信する受信部4bとを有する。
【0036】
格納部5は、ハードディスクドライブ(HDD)等の記憶装置で構成される。格納部5は、各操作画面の画像データ等を記憶する。
【0037】
操作部6は、MFP10に対する操作入力を受け付ける操作入力部6aと、各種情報の表示出力を行う表示部6bとを備えている。
【0038】
このMFP10においては、略板状の操作パネル6c(
図1参照)が設けられている。また、操作パネル6cは、その正面側にタッチパネル25(
図1参照)を有している。タッチパネル25は、操作入力部6aの一部としても機能するとともに、表示部6bの一部としても機能する。タッチパネル25は、液晶表示パネルに各種センサ等が埋め込まれて構成され、各種情報を表示するとともに操作者からの各種の操作入力を受け付けることが可能である。
【0039】
コントローラ9は、MFP10に内蔵され、MFP10を統括的に制御する制御装置である。コントローラ9は、CPUおよび各種の半導体メモリ(RAMおよびROM)等を備えるコンピュータシステムとして構成される。コントローラ9は、CPUにおいて、ROM(例えば、EEPROM)内に格納されている所定のソフトウエアプログラム(以下、単にプログラムとも称する)を実行することによって、各種の処理部を実現する。なお、当該プログラム(詳細にはプログラムモジュール群)は、USBメモリなどの可搬性の記録媒体、あるいはネットワーク108等を介してMFP10にインストールされてもよい。
【0040】
図2に示すように、コントローラ9は、上記プログラムの実行により、通信制御部11と入力制御部12と表示制御部13と動作制御部15とを含む各種の処理部を実現する。
【0041】
通信制御部11は、他の装置(外部端末50等)との間の通信動作を制御する処理部である。たとえば、通信制御部11は、通信部4等と協働して、外部端末50におけるタッチパネル75の表示用画像(詳細にはそのデータ)等を外部端末50に送信する。
【0042】
入力制御部12は、操作入力部6a(タッチパネル25等)に対する操作入力動作を制御する制御部である。たとえば、入力制御部12は、タッチパネル25に表示された操作画面に対する操作入力を受け付ける動作を制御する。
【0043】
表示制御部13は、表示部6b(タッチパネル25等)における表示動作を制御する処理部である。表示制御部13は、MFP10を操作するための操作画面等をタッチパネル25に表示させる。
【0044】
動作制御部15は、ウエブサーバ機能に関連する動作を制御する処理部である。たとえば、動作制御部15は、ウエブブラウザ80とのセッション(通信セッション)を管理する動作を制御する。また、動作制御部15は、ウエブブラウザ80からのリクエストに応じて、自装置(MFP10)の状態情報を取得し、当該状態情報をウエブブラウザ80に送信する動作を制御する。
【0045】
<1−3.外部端末の構成>
つぎに外部端末(遠隔操作装置とも称する)50の構成について説明する。
【0046】
外部端末50は、他の装置との間でのネットワーク通信が可能な携帯式の情報入出力端末装置である。ここでは、外部端末50として、タブレット型端末を例示する。ただし、これに限定されず、外部端末50は、スマートフォンであってもよく、パーソナルコンピュータなどであってもよい。また、外部端末50は、携帯式の装置であってもよく、据置型の装置であってもよい。
【0047】
図3は、外部端末50の概略構成を示す機能ブロック図である。
【0048】
外部端末50は、
図3の機能ブロック図に示すように、通信部54、格納部55、操作部56およびコントローラ59等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。
【0049】
通信部54は、ネットワーク108を介したネットワーク通信を行うことが可能である。このネットワーク通信では、たとえば、TCP/IP(Transmission Control Protocol / Internet Protocol)等の各種のプロトコルが利用される。当該ネットワーク通信を利用することによって、外部端末50は、所望の相手先(画像形成装置10等)との間で各種のデータを授受することが可能である。通信部54は、各種データを送信する送信部54aと各種データを受信する受信部54bとを有する。
【0050】
格納部55は、不揮発性の半導体メモリ等の記憶装置で構成される。格納部55には、MFP10から送信されてきた各種の画像データ(操作画面の表示用データ等)が一時的に格納される。
【0051】
操作部56は、外部端末50に対する入力を受け付ける操作入力部56aと、各種情報の表示出力を行う表示部56bとを備えている。この外部端末50においては、液晶表示パネルに圧電センサ等が埋め込まれて構成されたタッチパネル75(
図1参照)が設けられている。詳細には、略板状の外部端末50の正面側において、その周縁部(枠部)を除くほぼ全面にわたってタッチパネル75が設けられている。このタッチパネル75は、操作入力部56aの一部としても機能するとともに、表示部56bの一部としても機能する。タッチパネル75においては操作画面が表示され、当該操作画面に対する操作者(ユーザとも称する)からの操作入力が受け付けられる。
【0052】
コントローラ59は、外部端末50に内蔵され、外部端末50を統括的に制御する制御装置である。コントローラ59は、CPUおよび各種の半導体メモリ(RAMおよびROM)等を備えるコンピュータシステムとして構成される。コントローラ59は、CPUにおいて、記憶部(半導体メモリ等)内に格納されている所定のソフトウエアプログラム(以下、単にプログラムとも称する)を実行することによって、各種の処理部を実現する。なお、当該プログラムは、USBメモリなどの可搬性の記録媒体、あるいはネットワーク108等を介して外部端末50にインストールされるようにしてもよい。
【0053】
当該プログラムは、たとえば、ウエブブラウザアプリケーションプログラム(以下、単に「ウエブブラウザ」あるいは「ブラウザ」とも称する)80である。当該ウエブブラウザ80は、各種のウエブサーバ(MFP10に内蔵されたウエブサーバ30を含む)との間で各種のデータを授受し、各種の画面を外部端末50のタッチパネル75に表示する。
【0054】
当該ウエブブラウザ80は、レンダリングエンジンおよびスクリプトエンジンを備えており、ウエブサーバから送信されてきたHTMLデータおよびスクリプトデータ等に基づいて、各種の画面等を外部端末50のタッチパネル75に表示するとともに各種の処理を実行することが可能である。
【0055】
<1−4.比較例に係る動作>
以下では、第1実施形態に係る動作について説明する前に、比較例に係る技術について
図19〜
図21を参照しながら説明する。
【0056】
図19および
図20は、比較例に係る動作を示す概念図であり、
図21は、比較例に係る動作例を示すタイミングチャートである。
【0057】
まず、外部端末50の操作者は、外部端末50のタッチパネル75(
図1)に表示される表示画面(ウエブブラウザ80の表示画面)に対してログイン情報を入力し、外部端末50からMFP10(ウエブサーバ30)へと当該ログイン情報が送信される。MFP10は、外部端末50からのログイン情報と正規のログイン情報との同一性を確認すると、外部端末50の操作者のログインを許可する。このようにして、外部端末50の操作者は、MFP10にリモートログインする。また、MFP10(ウエブサーバ30)は、通信セッション管理情報を作成し、当該外部端末50と自装置10との通信セッションの制御動作を開始する。端的に言えば、ウエブサーバ30とウエブブラウザ80とのセッションが開始される。なお、後述するように、MFP10は、外部端末50(ウエブブラウザ80)から一定期間に亘ってリクエストが受信されないときには、当該外部端末50(ウエブブラウザ80)との通信セッションを切断する。
【0058】
その後、外部端末50は、ウエブページ100(109)を表示するため、
図21の冒頭部分に示すように、MFP10に対してHTTPリクエスト(ウエブページ100に関するデータ送信依頼とも称される)を送信する。具体的には、MFP10のウエブサーバ30内の特定URL(Uniform Resource Locator)を指定して、HTTPリクエストが送信される。当該特定URLは、ウエブページ100に関するホスト名、パス名およびファイル名(たとえば、「page0.html」)を有して構成される。
【0059】
MFP10(ウエブサーバ30)は、このHTTPリクエストに応答して、ウエブページ109のウエブページデータ(詳細にはデータファイル)119(「page0.html」)をHTTPレスポンスとして外部端末50に送信する。
【0060】
外部端末50(ウエブブラウザ80)は、ウエブサーバ30から受信したウエブページデータ119に基づいて、ウエブページ109をタッチパネル75に表示する。たとえば、後述する
図9のウエブページ100と同様のウエブページ109が、タッチパネル75に表示される(
図19の左側参照)。
【0061】
なお、このウエブページ109には、ポップアップページ(子ページ)を表示させるためのボタン120(129)(
図19)が配置されている。ウエブページ109に関するウエブページデータ119には、ボタン129を表示するためのデータ(ページ記述言語による記述)が含まれるとともに、当該ボタン129の押下に応答して呼び出されるべきポップアップページ(子ページ)200のURLを示すデータが含まれている。また、ウエブページデータ119には、スクリプトC1も含まれている。
【0062】
また、外部端末50のウエブブラウザ80は、ウエブページデータ119内に含まれているスクリプトC1(たとえば、JavaScript(登録商標)によるスクリプト)を実行する。このスクリプトC1は、ライブチェック用リクエスト(ウエブブラウザ80が「生きている」(動作している)ことを通知するために利用されるリクエスト)を定期的にMFP10に送信する機能を有するスクリプトである。ウエブブラウザ80は、スクリプトC1を実行することによって、所定時間Δt1間隔でライブチェック用リクエストをMFP10(ウエブサーバ30)に送信する。
【0063】
一方、MFP10(ウエブサーバ30)の動作制御部15は、
図7に示すような通信セッションの管理動作を実行する。
【0064】
具体的には、まずステップS11においてタイマーによる計時が開始される。
【0065】
次のステップS12においては、ウエブブラウザ80からのリクエスト(ライブチェック用リクエスト)が受信されたか否かが判定される。
【0066】
当該リクエストが受信されたと判定されると、処理はステップS14に進む。
【0067】
ステップS14ではタイマー値がリセットされ、処理は再びステップS12に戻り、通信セッションが維持されたまま処理が継続される。
【0068】
一方、当該リクエストが受信されていないと判定される場合には、処理はステップS13に進む。ステップS13では、タイマー値(タイマーによるカウント値)がタイムアウト値(Δt1(たとえば30秒)に相当するカウント値)に到達したか否かが判定される。
【0069】
タイマー値がタイムアウト値を超えていないと判定されると、再びステップS12に戻る。
【0070】
一方、タイマー値がタイムアウト値を超えていると判定されると、ステップS15に進む。ステップS15では、外部端末50(ウエブブラウザ80)とMFP10(ウエブサーバ30)との通信セッションが切断されるとともに、当該通信セッションに関するセッション管理情報が削除される。
【0071】
このように、MFP10の動作制御部15は、外部端末50のウエブブラウザ80からのリクエストを定期的に受信することによって、当該ウエブブラウザ80が動作中であること(「生きていること」)を確認する。具体的には、ウエブブラウザ80において、親ページ100(ここではウエブページ109)がアクティブ状態で表示されている場合には、当該親ページ100内のリクエスト用のスクリプトC1による定期的なリクエスト送信動作が継続される。この場合、MFP10動作制御部15は、当該ウエブブラウザ80が動作中であることを確認し、当該ウエブブラウザ80(外部端末50)との通信セッションを維持する。
【0072】
一方、ウエブブラウザ80が終了すると、当該スクリプトC1による定期的なリクエスト送信動作は停止される。MFP10動作制御部15は、外部端末50のウエブブラウザ80からの定期的リクエストが一定期間受信されないときには、当該ウエブブラウザ80が動作中ではないと判定し、当該ウエブブラウザ80(外部端末50)との通信セッションを切断する。
【0073】
さて、その後、親ページ100(ウエブページ109)内に配置されているボタン120(129)が操作者によって押下されると、ポップアップページ200(209)が表示される(
図19の右側参照)。
【0074】
具体的には、ボタン129が操作者によって押下されると、ウエブページデータ119(「page0.html」)内の記述に基づいて、ウエブサーバ30内の別のURLを指定して、HTTPリクエストがウエブブラウザ80から送信される。当該別のURLは、ウエブページ209を表示するためのウエブページデータ(データファイル)219に関するホスト名、パス名およびファイル名(たとえば、「popup.html」)を有して構成される。
【0075】
MFP10(ウエブサーバ30)は、このHTTPリクエストに応答して、ウエブページ209のウエブページデータ219(「popup.html」)をHTTPレスポンスとして外部端末50に送信する。
【0076】
外部端末50(ウエブブラウザ80)は、受信したウエブページデータ219に基づいて、ウエブページ209をタッチパネル75に表示する。たとえば、
図10のウエブページ200と同様のウエブページがポップアップページ209としてタッチパネル75に表示される(
図19の右側も参照)。
【0077】
ここにおいて、外部端末50においては、タブレット端末用OS(オペレーティングシステム)が実装されており、ウエブブラウザ80は当該タブレット端末用OS上で動作する。このタブレット端末用OS上で動作するウエブブラウザ80においては、消費電力低減等の目的のため、複数のウエブページがオープンされる場合において、最も新しくオープンされた単一のウエブページのみが有効化され、他のウエブページは、非有効化される。換言すれば、単一のウエブページがアクティブページに設定され、他のウエブページは非アクティブページに設定される。
【0078】
このような事情のため、ポップアップページ209が最新ページとして表示されると、ポップアップページ209がアクティブページに設定される一方、元のウエブページ109は非アクティブページに設定される。換言すれば、ポップアップウエブページ209がアクティブページとして表示されると、当該ポップアップウエブページ(子ページとも称する)を呼び出した呼出元のウエブページ109(親ページとも称する)は、非アクティブ状態に変更される。
【0079】
その結果、ウエブページ109内のスクリプトC1の動作が停止する。すなわち、ライブチェック用リクエストの定期的な送信が停止する。上述のように、MFP10は、外部端末50のブラウザ80からの定期的なライブチェック用リクエストが一定期間受信されないときには、ブラウザ80との通信セッションを切断する。詳細には、最後のライブチェック用リクエストの送受信時点から一定時間(たとえば、1分〜数分)が経過すると、外部端末50とMFP10との通信セッションが切断される。
【0080】
外部端末50とMFP10との通信セッションが切断されてしまうと、外部端末50とMFP10との通信を再開するために、外部端末50の操作者はログイン操作等を再度行うことを求められる。しかしながら、このような操作を再度行うことは煩わしく非効率的である。
【0081】
そこで、この実施形態では、親ページ100内のリクエストスクリプトC1が動作しないことに起因する上記のような問題を、次述するように、子ページ200にて新たなリクエストスクリプトC2を動作させることなどによって解消する。なお、以下では、子ページ200にて動作する新たなリクエストスクリプトC2は、子ページ200の表示内容を記述したデータファイル210とは別のデータファイル230に記述される。すなわち、子ページ200は複数のデータファイルを有して構成され、当該複数のデータファイルのいずれかに新たなリクエストスクリプトC2が記述される。そのような態様について例示する。
【0082】
<1−5.本実施形態に係る動作>
つぎに、第1実施形態に係る本システム1の動作について、
図4〜
図10を参照しながら説明する。
図4および
図5は、本システム1における動作を示す概念図である。
図6は、本システム1における動作例を示すタイミングチャートであり、
図7は、MFP10(ウエブサーバ30)における通信セッションの管理動作を示すフローチャートである。
図8は、ベースファイル230(後述)の一例を示す図である。ベースファイル230は、或るウエブページ100から別のウエブページ200が呼び出される際に、外部端末50からMFP10へのHTTPリクエストに応じて、MFP10から外部端末50に送信されるデータファイル(ページ記述言語(ここではHTML)等で記述されたデータファイル)である。
図9は、ウエブページ100の一例を示す図であり、
図10は、ウエブページ200の一例を示す図である。なお、ウエブページ200は、ウエブページ100に対するユーザ操作に応じて呼び出されポップアップ表示されるウエブページであり、ウエブページ100は親ページ(あるいは呼出元ページ)などとも称され、ウエブページ200は子ページ(あるいは呼出先ページ)などとも称される。
【0083】
まず、上記比較例と同様にして、外部端末50の操作者は、MFP10にリモートログインする。
【0084】
その後、
図6の冒頭部分に示すように、外部端末50は、或るウエブページ100(101)(
図9)を表示するため、MFP10に対してHTTPリクエストを送信する。具体的には、MFP10(ウエブサーバ30)内の特定URLを指定して、HTTPリクエストが外部端末50から画像形成装置10に送信される。当該特定URLは、ウエブページ100のウエブページデータ110(111)(
図5も参照)に関するホスト名、パス名およびファイル名(たとえば、「page1.html」)を有して構成される。
【0085】
MFP10(ウエブサーバ30)は、このHTTPリクエストに応答して、ウエブページ101のウエブページデータ110(111)(「page1.html」)をHTTPレスポンスとして外部端末50に送信する。
【0086】
外部端末50(ウエブブラウザ80)は、受信したウエブページデータ(詳細にはデータファイル)111に基づいて、ウエブページ101をタッチパネル75に表示する。たとえば、
図9に示すようなウエブページ101がタッチパネル75に表示される(
図4の左側参照)。
図9のウエブページ101は、「グループ宛先」の登録画面を有するウエブページであり、MFP10のスキャン動作(および/またはファクシミリ送信動作)における「グループ宛先」を外部端末50を用いて登録する際などに利用される。
【0087】
なお、このウエブページ101(
図9)には、ポップアップページ200(201)(
図10)を表示させるためのボタン120(121)(
図4も参照)が配置されている。ウエブページ100に関するウエブページデータ110には、ボタン120を表示するためのデータ(ページ記述言語による記述)が含まれるとともに、当該ボタン120が押下されたときに呼び出されるべきポップアップページ(子ページ)200のURLを示すデータが含まれている。また、ウエブページデータ110には、スクリプトC1も含まれている。
【0088】
また、外部端末50のウエブブラウザ80は、ウエブページデータ111内に含まれているスクリプトC1(たとえば、JavaScript(登録商標)によるスクリプト)を実行する。ウエブブラウザ80は、スクリプトC1を実行することによって、所定時間Δt1間隔でライブチェック用リクエストをMFP10に送信する。換言すれば、外部端末50(ウエブブラウザ80)は、スクリプトC1を受信した後、当該スクリプトC1に基づく定期的リクエストをウエブサーバ30宛に自動的に送信する。
【0089】
その後、親ページ100(ここではウエブページ101)内に配置されているボタン120(121)が操作者によって押下されると、ポップアップページ200(201)(
図10)が表示される(
図4の右側参照)。
図10のポップアップページ(ウエブページ)201は、「短縮宛先一覧」の表示画面を有している。
【0090】
具体的には、ボタン121が操作者によって押下されると、ウエブページデータ111(「page1.html」)内の記述に基づいて、外部端末50は、ウエブサーバ30内の別のURLを指定して、HTTPリクエストを送信する(
図6の中段付近参照)。当該別のURLは、別のウエブページに関するウエブページデータ(詳細にはデータファイル)230(231)(
図8)に関するホスト名、パス名およびファイル名(ここでは、「base.html」)を有して構成される。この実施形態では、ウエブページ200の表示内容が記述されたデータファイル210自身ではなく、データファイル230が先ず呼び出される。データファイル230は、ベースファイルあるいはベースデータファイルなどとも称される。
【0091】
MFP10は、ブラウザから送信されてくる当該HTTPリクエスト(換言すれば、新ページ呼出指令(ポップアップページ表示指令))に応答して、ウエブページデータ230(「base.html」)をウエブブラウザ80に送信する。
【0092】
この実施形態では、ポップアップページ201は、データファイル211(「popup.html」)とデータファイル230(231)(ここでは、「base.html」)との2つのデータファイル等を用いて構成される。
【0093】
データファイル211は、ウエブページ201を表示するためのデータであり、ウエブページ201の表示内容が記述されたデータである。
【0094】
一方、データファイル230(231)は、ウエブページ(親ページ)101とは別のウエブページ(子ページ)201に関するデータファイルであり、ページ記述言語(HTML等)およびスクリプト(JavaScript(登録商標)等)によって記述されている。ただし、データファイル230は、ウエブページ201の表示内容自体を記述する記載を有していない。データファイル230は、ウエブページ201の表示内容に依拠しないデータファイルである。標準化(汎用化)されたデータファイル230を用いることによって、スクリプトC2を含む子ページを容易に構築することが可能である。
【0095】
図5に示すように、このデータファイル230は、読込用スクリプトBを有している。この読込用スクリプトBを介して、ウエブページ201の表示内容を記述した本来のデータファイル211(ページ表示用のデータファイル)が読み込まれ、ウエブページ201が表示される。
【0096】
具体的には、たとえば
図8のページデータ110のスクリプト記述領域内の部分P1に記述された読込用スクリプトB、およびページデータ110の本体(ボディ)記述領域内の部分P2におけるインラインフレームに関する記述等に基づいて、変数popupURLに設定されたURLが、ウエブページ201の内部に表示されるデータとして読み込まれる。なお、ここでは、変数popupURLは、親ページ101のデータファイル111(
図4)内において、データファイル211のURLを示す内容に設定されているものとする(具体的には、popupURL=(ホスト名+パス名+)”popup.html”)。そして、データファイル230において当該変数popupURLの値(URL)が参照され、当該変数popupURLの値として設定されたデータファイル211「popup.html」の表示内容を含むウエブページ201が表示される。
【0097】
詳細には、読込用スクリプトB等が動作することによって、ウエブブラウザ80(外部端末50)からウエブサーバ30(MFP10)に対してリクエストが送信され、当該リクエストに応答して、データファイル211(「popup.html」)がレスポンスとして外部端末50に送信される。そして、外部端末50(ウエブブラウザ80)は、受信したデータファイル211に基づいて、ウエブページ201をタッチパネル75に表示する。たとえば、
図10のポップアップページ201がタッチパネル75に表示される(
図4の右側も参照)。この結果、上記比較例と同様にポップアップ画面201がオープンされる。
【0098】
ここにおいて、
図5に示すように、このデータファイル230(231)は、スクリプトC2(C21)をも有している。そして、当該スクリプトC2(たとえば、JavaScript(登録商標)によるスクリプト)もが実行される。このスクリプトC2は、スクリプトC1と同様の機能を有するスクリプト(ライブチェック用スクリプト)であり、ライブチェック用リクエストを定期的にMFP10に送信する機能を有する。より詳細には、当該スクリプトC2は、ウエブブラウザ80からウエブサーバ30への定期的なリクエストをポップアップウエブページの表示中に自動的に送信するスクリプトである。スクリプトC2による定期的リクエストは、スクリプトC1による定期的リクエストと同じ機能を有する。
【0099】
ウエブブラウザ80は、スクリプトC2を実行することによって、所定時間Δt1間隔でライブチェック用リクエストをMFP10に送信する(
図6の下段部分参照)。
【0100】
より詳細には、
図8における部分P3,P4,P5の記述に基づいて、ウエブページ201において、ライブチェック用スクリプトC2が定期的に動作する。具体的には、部分P3で定義された関数「LiveCheck」が、部分P5に記載されるように30秒ごとに実行される。なお、
図8の部分P4に記載されるように、より詳細には、データファイル230(「base.html」)から別データファイル(「livecheck_data.html」)が参照される。データファイル「livecheck_data.html」が定期的にリロード(部分P3参照)されることによって、外部端末50(ウエブブラウザ80)からMFP10(ウエブサーバ30)に対して定期的なリクエストが送信され、当該リクエストに対するレスポンスがMFP10から外部端末50に返信される。なお、
図6では、当該リクエストに対するレスポンスの図示を省略している。
【0101】
このようにして、外部端末50は、スクリプトC2を受信した後、当該スクリプトC2に基づく定期的リクエストをウエブサーバ30宛に自動的に送信する。換言すれば、子ページ(ウエブページ201)の表示中において、所定時間Δt1間隔で(スクリプトC1に代えて)スクリプトC2が実行され、ライブチェック用リクエストが定期的にMFP10に送信される。
【0102】
一方、MFP10の動作制御部15は、上述の
図7と同様の動作を実行する。
【0103】
ここにおいて、この実施形態においては、上述のように、外部端末50は、スクリプトC1の停止に起因してスクリプトC1による定期的リクエストを送信しないときであっても、スクリプトC2による定期的リクエストを定期的に送信する。その結果、MFP10は、スクリプトC1による定期的リクエストを受信しないときであっても、スクリプトC2による定期的リクエストを定期的に受信する。
【0104】
そして、MFP10の動作制御部15は、ウエブブラウザ80からのスクリプトC1による定期的リクエストが一定期間受信されないときであっても、ウエブブラウザ80からのスクリプトC2による定期的リクエストが一定期間内に受信されるときには、ウエブブラウザ80との通信セッションを維持する。
【0105】
したがって、親ページ100(101)が非アクティブになり且つ子ページ200(201)がアクティブになると親ページ101のリクエストスクリプトC1が動作しないことに起因して外部端末50とMFP10との通信セッションが切断されてしまう問題、を解消することが可能である。
【0106】
また、上記実施形態においては、子ページ200のスクリプトC2は、子ページ200を表示するための表示用データ(HTML文書の特定部分(特定領域))内において混在して記載されるのではなく、当該表示用データとは独立して記載されている。換言すれば、子ページ200を表示するための表示用データと当該子ページ200のスクリプトC2とは、それぞれブロック化され互いに独立した部分に記述されている。より具体的には、子ページ200を表示するためのデータファイル211(「popup.html」)自体には新たなスクリプトC2は記述されておらず、当該新たなスクリプトC2はデータファイル211とは別のデータファイル230(231)に記述されている。
【0107】
そして、ウエブサーバ30は、子ページ200の呼出指令(新ページ呼出指令)に対して、子ページ200に関するデータが分散して記述された複数のデータファイル211,230等のうち、読込用スクリプトBが記述されたデータファイル(ベースファイルとも称する)230をまずウエブブラウザ80に送信する。その後、当該ベースファイル230に記述されている読込用スクリプトBに基づいてウエブブラウザ80から送信されてくる送信要求(データファイル211の送信要求)に対して、当該データファイル211をウエブブラウザ80に送信する。そして、ウエブブラウザ80は、当該データファイル211に規定されている内容に基づいて子ページ200を表示する。すなわち、データファイル230に記述された読込用スクリプトBにより表示用データファイル211が読み込まれることなどによって、表示用データファイル211に規定されている表示内容が子ページ200の表示画面に表示される。
【0108】
換言すれば、ウエブサーバ30は、子ページ200の呼出指令(新ページ呼出指令)に応じて、子ページ200に関するデータのうち読込用スクリプトBを含むデータをウエブブラウザ80に送信し読込用スクリプトBをウエブブラウザ80に実行させる。ウエブサーバ30は、読込用スクリプトBをウエブブラウザ80にて実行させることによって、表示用データファイル211(子ページ200の表示用データファイル)をウエブブラウザ80に読み込ませ(参照させ)当該表示用データファイル211に基づく子ページ200をウエブブラウザ80に表示させる。
【0109】
特に、スクリプトC2,Bに関する追加部分は表示用データファイル211とは異なるデータファイル230等に記述されるため、表示用データファイル211には変更を加えずに済む。換言すれば、子ページ200のデータに対する追加変更部分は、元の表示用データファイル211とは分離して設けられ、元のデータファイルに対する変更を最小限に留めることが可能である。なお、親ページ100に関する変更は最小限の内容(呼出先ページを指定する変数値の追加等)に止まる。
【0110】
このように、データファイル230においてスクリプトC2を追加することにより、子ページ200の表示中に当該スクリプトC2による定期的リクエストの実行が実現され得る。また、データファイル230において読込用スクリプトBを追加し当該読込用スクリプトBを用いて表示用データファイル211を読み込むことにより、親ページ100に関する変更を最小限の内容(変数値の追加等)に止めつつ且つ元の表示用データファイル211に変更を加えること無く、子ページ200を表示することができる。
【0111】
また、複数組の親子ページ(100,200)に関して、上記のような動作を行わせる場合において、上述のデータファイル230を利用することが好ましい。これによれば、複数の子ページの各表示用データファイル(上記データファイル211と同様の複数の表示用データファイル)自体には変更を加えること無く、複数の子ページのそれぞれに関して、スクリプトC2を容易に追加するともに各表示用データファイルに基づく表示を容易に行うことが可能である。特に、複数の子ページのそれぞれに関して共通の(同一の)データファイル230を利用することによって、各子ページを容易に変更(再構築)することが可能である。
【0112】
<1−6.変形例>
上記第1実施形態においては、親ページ100のボタン120が押下されると、新たなデータファイル「base.html」が常に読み込まれる態様が例示されている。換言すれば、親ページ100は、外部端末50のウエブブラウザ80の種類に依拠することなく、常にファイル「base.html」を読み込む態様が例示されている。
【0113】
しかしながら、本発明はこれに限定されない。たとえば、外部端末50のウエブブラウザ80の種類に応じて、読込対象のファイルが変更されるようにしてもよい。より詳細には、ウエブブラウザ80がパーソナルコンピュータのブラウザであるかタブレット端末のブラウザであるかに応じて、元のデータファイル211(「popup.html」)が読み込まれるか、新たなデータファイル230(「base.html」)が読み込まれるかが変更されるようにしてもよい。
【0114】
図11は、このような変形例に係る動作を実行するデータファイル110(115)(「page1.html」)を示す図である。なお、ここでは、ウエブブラウザ80が「ActiveX」をサポートするか否かに応じて、当該ウエブブラウザ80がパーソナルコンピュータのブラウザであるか或いはタブレット端末のブラウザであるか、が判定されている。
【0115】
図11の冒頭部分(特に第1行〜第5行)に示すように、ウエブブラウザ80がパーソナルコンピュータのブラウザであるかタブレット端末のブラウザであるかに応じて、互いに異なる値が変数popupURL2に設定され、当該変数popupURL2に設定されたページデータに基づくページがオープンされる。
【0116】
具体的には、ウエブブラウザ80がタブレット端末のブラウザ(タブレット端末用OS(「アンドロイド(Android)」(登録商標)等)で実行されるブラウザ)であると判定されるときには、変数popupURL2に「base.html」が設定され、新ページ呼出指令の後に、データファイル「base.html」が呼び出され、上記第1実施形態と同様の動作が実現される。これにより、上記第1実施形態と同様の効果を得ることが可能である。
【0117】
一方、ウエブブラウザ80がパーソナルコンピュータのブラウザ(パーソナルコンピュータ用OS(「ウインドウズ(Windows)」(登録商標)等)で実行されるブラウザ)であると判定されるときには、変数popupURL2に「popup.html」が設定され、新ページ呼出指令の後に、データファイル「popup.html」が呼び出される。具体的には、新ページ呼出指令に応答して、スクリプトC2を含まないデータ(データファイル211のみを含むデータ)が(上述のスクリプトC2を含むデータに代えて)ウエブサーバ30からウエブブラウザ80に送信される。そして、データファイル211に基づいてウエブページ201がウエブブラウザ80に表示される。端的に言えば、上記比較例と同様の動作が実現される。ただし、ウエブブラウザ80はパーソナルコンピュータのブラウザであるため、子ページがポップアップ表示された後も親ページ内のスクリプトC1は継続して実行可能であり、上述のような問題は発生しない。換言すれば、データファイル230(「base.html」)により呼び出されるスクリプトC2が定期的に実行されなくても、元のスクリプトC1が定期的に実行されるため、通信セッションの接続は継続される。すなわち、通信セッションは(意に反して)切断されずに済む。また、子ページのスクリプトC2と親ページのスクリプトC1との双方が動作する場合に比べて、通信トラフィックを抑制することも可能である。
【0118】
<2.第2実施形態>
上記第1実施形態においては、ライブチェック用リクエストがウエブサーバ30への定期的なリクエストとして送信される態様が例示されている。
【0119】
この第2実施形態においては、MFP10の装置状態情報を要求するリクエストがウエブサーバ30への定期的なリクエストとして送信される態様を例示する。以下、第1実施形態との相違点を中心に説明する。
【0120】
図12および
図13は、第2実施形態に係るシステム1(1Bとも称する)における動作を示す概念図である。
図14は、本システム1Bにおける動作例を示すタイミングチャートである。
図15は、データファイル230(232)(「base2.html」)を示す図である。データファイル232は、或るウエブページ(親ページ)100(102)から別のウエブページ(子ページ)200(202)が呼び出される際に、外部端末50からMFP10へのHTTPリクエストに応じて、MFP10から外部端末50に送信されるデータファイルである。
図16は、MFP10によって随時更新されるデータファイル(「status.html」)を示す図である。
図17は、ウエブページ102の一例を示す図であり、
図18は、ウエブページ202の一例を示す図である。ここでは、ウエブページ102は、MFP10の装置状態情報を表示する親ページであり、ウエブページ202は、その一部の詳細情報を表示する子ページである。
【0121】
以下、第2実施形態に係る本システム1の動作について、
図12〜
図18を参照しながら説明する。
【0122】
まず、上記第1実施形態等と同様にして、外部端末50の操作者は、MFP10にリモートログインする。
【0123】
その後、
図14の冒頭部分に示すように、外部端末50は、或るウエブページ100(102)(
図17)を表示するため、MFP10に対してHTTPリクエストを送信する。具体的には、MFP10のウエブサーバ30内の特定URLを指定して、HTTPリクエストが外部端末50から画像形成装置10に送信される。当該特定URLは、ウエブページ102のデータファイル110(112)(
図13も参照)に関するホスト名、パス名およびファイル名(たとえば、「page21.html」)を有して構成される。なお、
図17のウエブページ102は、MFP10の装置状態情報を表示するウエブページであり、MFP10の装置状態を確認する際などに利用される。
【0124】
MFP10(ウエブサーバ30)は、このHTTPリクエストに応答して、ウエブページ102のデータファイル112(「page21.html」)をHTTPレスポンスとして外部端末50に送信する。
【0125】
外部端末50(ウエブブラウザ80)は、受信したデータファイル112に基づいて、ウエブページ102(
図17)をタッチパネル75に表示する。なお、このウエブページ102(
図17)には、ポップアップページ200(202)(
図18)を表示させるためのボタン120(122)(
図12も参照)が配置されている。
【0126】
また、外部端末50のウエブブラウザ80は、データファイル112内に含まれているスクリプトC21を実行する。このスクリプトC21は、MFP10の装置状態情報を要求するリクエスト(状態情報更新用リクエストとも称する)を定期的にMFP10に送信する機能を有するスクリプトである。ウエブブラウザ80は、スクリプトC21を実行することによって、所定時間Δt1間隔で状態情報更新用リクエストをMFP10に送信する。当該状態情報更新用リクエストに応答して、ウエブサーバ30はウエブブラウザ80に対して、自装置(MFP)10の装置状態情報(トナーの残量情報および用紙の有無等に関する情報等)を送信する。ウエブブラウザ80は、ウエブサーバ30から受信した情報に基づき、ウエブページ102における装置状態表示部分(ウエブページ102のボタン122内に設けられた装置状態情報欄(「用紙有無」欄)等を含む)の内容を更新する。このような更新動作は、ウエブページ102の表示期間中において、所定時間Δt1間隔で繰り返し実行される。
【0127】
その後、親ページ102内に配置されているボタン122が操作者によって押下されると、子ページ202(
図18)が表示される(
図12の右側参照)。
図18の子ページ(ポップアップページ)202は、MFP10の「給紙トレイ」の状態(各トレイの用紙サイズ、用紙種別および用紙残量等)を詳細に示す表示部分(表示領域)を有している。
【0128】
具体的には、ボタン122が操作者によって押下されると、データファイル112(「page21.html」)内の記述に基づいて、外部端末50は、ウエブサーバ30内の別のURLを指定して、HTTPリクエストを送信する。当該別のURLは、別のウエブページに関するデータファイル230(232)に関するホスト名、パス名およびファイル名(ここでは、「base2.html」)を有して構成される。
【0129】
MFP10は、ブラウザから送信されてくる当該HTTPリクエスト(換言すれば、新ページ呼出指令(ポップアップページ表示指令))に応答して、データファイル232をウエブブラウザ80に送信する。
【0130】
この実施形態では、ウエブページ(子ページ)202は、データファイル212(「popup2.html」)とデータファイル232(「base2.html」)との2つのデータファイル等を用いて構成される。
【0131】
データファイル212は、ウエブページ202を表示するためのデータであり、ウエブページ202の表示内容が記述されたデータである。
【0132】
一方、データファイル232は、ウエブページ(親ページ)102とは別のウエブページ(子ページ)202に関するデータであり、ページ記述言語(HTML等)およびスクリプト(JavaScript(登録商標)等)によって記述されている。ただし、データファイル232は、上述のデータファイル231と同様に、ウエブページ202の表示内容自体を記述する記載を有していない。データファイル232は、ウエブページ202の表示内容に依拠しないデータである。
【0133】
図13に示すように、このデータファイル232は、読込用スクリプトB2を有している。この読込用スクリプトB2を介して、ウエブページ202の表示内容を記述した(本来の)データファイル212が読み込まれ、ウエブページ202が表示される。
【0134】
具体的には、たとえば
図15のページデータ112内の部分P21に記述された読込用スクリプトB2、およびページデータ112の本体(ボディ)記述領域内の部分P22におけるインラインフレームに関する記述等に基づいて、変数popupURLに設定されたURLが、ウエブページ202の内部に表示されるデータとして読み込まれる。なお、ここでは、変数popupURLは、親ページ102のデータファイル112(
図13)内において、データファイル212のURLを示す内容に設定されているものとする(具体的には、popupURL=(ホスト名+パス名+)”popup2.html”)。そして、データファイル232において当該変数popupURLの値(URL)が参照され、当該変数popupURLの値として設定されたデータファイル212「popup2.html」の表示内容を含むウエブページ202が表示される。
【0135】
詳細には、読込用スクリプトB2等が動作することによって、ウエブブラウザ80(外部端末50)からウエブサーバ30(MFP10)に対してリクエストが送信され、当該リクエストに応答して、データファイル212(「popup2.html」)がレスポンスとして外部端末50に送信される。そして、外部端末50(ウエブブラウザ80)は、受信したデータファイル212に基づいて、ウエブページ202(
図18)をタッチパネル75に表示する。
【0136】
ここにおいて、
図13に示すように、このデータファイル232は、スクリプトC2(C22)をも有している。そして、子ページ202の表示中において当該スクリプトC22が実行される。このスクリプトC22は、MFP10の装置状態情報の送信要求(状態情報更新用リクエスト)を定期的にMFP10に送信する機能を有するスクリプトである。ウエブブラウザ80は、スクリプトC22を実行することによって、所定時間Δt1間隔で状態情報更新用リクエストをMFP10に送信する。
【0137】
より詳細には、
図15における部分P23,P24,P25,P26の記述に基づいて、ウエブページ202において、状態情報取得用スクリプトC22が定期的に動作する。具体的には、部分P23で定義された関数「StatusUpdate」が、部分P25に記載されるように30秒ごとに実行される。
【0138】
図15の部分P26に記載されるように、データファイル232(「base2.html」)から別のデータファイル(「status.html」)が呼び出される。当該データファイル「status.html」は、MFP10の装置状態(トナーの残量情報および用紙の有無等に関する情報等)が記述されたファイルであり、MFP10によって別途に随時更新されている。
図16は、当該データファイル「status.html」の一例を示す図である。
図16に示すように、当該データファイル「status.html」の中には、用紙の有無に関する要素「<div id="child_status">用紙無し</div>」(部分P31参照)等が記述されている。なお、「用紙無し」と記載されている部分には、MFP10の用紙状態に応じて、「用紙有り」および「用紙無し」のいずれかが記述される。
【0139】
また、親ページのデータファイル112においては、たとえば「用紙の有無」に関する要素「parent_status」を定義する記述(<div id="parent_status">用紙あり</div>)が存在する。
【0140】
さらに、
図15の部分P24に示すように、親ページ内の当該要素「parent_status」に対して、データファイル「status.html」内の要素「child_status」の内容が反映される。このような状態で、さらに
図15の部分P23で定義された関数「StatusUpdate」が、部分P25に記載されるように30秒ごとに実行される。
【0141】
このようにして、所定時間Δt1間隔でスクリプトC22が実行され、状態情報更新用リクエストが定期的にMFP10に送信される。
【0142】
一方、MFP10の動作制御部15は、ウエブブラウザ80からの定期的リクエスト(状態情報更新用リクエスト)に応答して、MFP10の状態情報をウエブブラウザ80に送信する。具体的には、MFP10の状態情報を含むデータファイル「status.html」がウエブサーバ30からウエブブラウザ80に送信される。
【0143】
このようにして、ウエブブラウザ80(外部端末50)は、MFP10の状態情報を定期的に(所定時間Δt1間隔で)受信する。
【0144】
そして、ウエブブラウザ80は、受信したデータファイル「status.html」をリロードする。また、ウエブブラウザ80は、
図15の部分P24に示されるように、データファイル「status.html」内の要素「child_status」に記述された状態情報(「用紙の有無」(換言すれば「用紙切れの有無」)に関する情報)を、親ページの要素「parent_status」の表示内容に反映する。これにより、親ページ102のボタン122内の表示内容は、定期的に適切に更新される。なお、ここでは、親ページ102のボタン122内の表示内容の更新について説明しているが、これに限定されず、親ページ102内の他の要素も同様にして更新されるようにしてもよい。
【0145】
ここにおいて、親ページにて「用紙切れ」の有無に関する情報の表示領域が設けられている場合において、仮に、当該表示領域の表示内容を定期的に更新するスクリプトが親ページのみに設けられているときには、次のような問題が生じる。すなわち、ウエブブラウザにより表示されていた親ページから子ページが呼び出され、子ページがアクティブになり且つ親ページが非アクティブになると親ページの装置情報更新用のスクリプトが動作せず、子ページの表示中には親ページの装置情報が更新されない、との問題が生じ得る。より詳細には、たとえば親ページから呼び出された子ページが親ページに並べて配置される場合において、非アクティブ状態の親ページはユーザにより視認され得るにもかかわらず、当該親ページに表示された状態情報は更新されず最新の状態情報を反映できない。この結果、親ページ内の装置情報欄は、最新の状態(現在の状態)とは異なる内容を表示してしまう。
【0146】
これに対して、上記第2実施形態においては、親ページ202から子ページ102を呼び出す新ページ呼出指令(ポップアップページ表示指令)がウエブブラウザ80からウエブサーバ30に送信されると、当該新ページ呼出指令に応答して、上述のデータファイル232を含むデータがウエブサーバ30からウエブブラウザ80に送信される。このデータファイル232は、ウエブブラウザ80からウエブサーバ30への定期的なリクエストを子ページ102の表示中に自動的に送信するスクリプトC22、を含む。スクリプトC22は、送信先のウエブブラウザ80において動作し、当該スクリプトC22に従って定期的リクエスト(状態情報更新用リクエスト)がウエブブラウザ80からウエブサーバ30に送信される。ウエブサーバ30は、状態情報更新用リクエストに応答して、MFP10の装置状態情報を含むデータをレスポンスとしてウエブブラウザ80に送信する。また、ウエブブラウザ80は、ウエブサーバ30から受信した装置状態情報に基づいて、親ページの装置情報表示領域の表示内容を最新の内容に更新する。なお、
図14においては、状態情報更新用リクエストに対するレスポンスの図示を省略している。
【0147】
特に、ウエブサーバ30は、ウエブブラウザ80からの親ページ102による定期的リクエスト(スクリプトC21による状態情報更新用リクエスト)が一定期間受信されないときであっても、ウエブブラウザ80からの子ページ202による定期的リクエスト(スクリプトC22による状態情報更新用リクエスト)が当該一定期間内に受信されるときには、子ページのスクリプトC22による状態情報更新用リクエストに応答してMFP10の状態情報をウエブブラウザ80に送信する。また、ウエブサーバ30は、ウエブブラウザ80からの状態情報更新用リクエストに応答してMFP10の状態情報を受信し、当該状態情報に基づいて、親ページ102の表示内容を更新する。
【0148】
したがって、ウエブブラウザにより表示されていた親ページから子ページが呼び出され、子ページがアクティブになり且つ親ページが非アクティブになったときであっても、(親ページ内の装置情報更新用スクリプトは動作しないものの、)子ページに埋め込まれた装置情報更新用スクリプトが動作する。その結果、親ページがアクティブでないときであっても親ページの装置情報を更新することが可能である。
【0149】
このように、第2実施形態によれば、上述のような問題を解消することが可能である。
【0150】
なお、親ページから呼び出される全ての子ページに関して、上記と同様の動作が行われるようにしてもよいが、これに限定されない。具体的には、親ページから呼び出される全ての子ページのうちの一部のページに関しては、子ページによる定期的リクエストを自動的に送信するスクリプトC2が実行されないようにしてもよい。
【0151】
換言すれば、そのウエブページデータがウエブサーバ30に格納される複数組の親子ページ(100,200)のうち、上記のようなウエブページ102,202で構成される1組の親子ページとは異なる特定の親子ページに関しては、当該スクリプトC2が実行されないようにしてもよい。たとえば、当該特定の親子ページのうちの親ページは、ハードウエア故障の有無を示すウエブページであり、且つ、当該特定の親子ページのうちの子ページは、当該ハードウエア故障に関連する内容を示すウエブページである場合に、当該スクリプトC2が実行されないようにしてもよい。具体的には、ウエブサーバ30は、親ページから子ページを呼び出すページ呼出指令(ウエブブラウザ80から送信されてくる子ページ呼出指令)に応答して、次述するようなレスポンスデータをウエブブラウザ80に送信すればよい。当該レスポンスデータは、ウエブブラウザ80からウエブサーバ30への定期的なリクエスト(状態情報更新用リクエスト)を当該子ページの表示中に自動的に送信するスクリプト、を含まないように構成されればよい。
【0152】
ハードウエア故障の場合には、復旧までに比較的長い時間を要するため、比較的早期に装置状態が変更される可能性は低い。そのような場合には、状態更新を行うスクリプトC22を実行しないことによって、余分な通信トラフィックの発生を回避することが可能である。また、MFP10(および外部端末50)のリソースを浪費することも回避することが可能である。
【0153】
また、この第2実施形態に関しても、第1実施形態に対する改変と同様の改変が行われても良い。たとえば、外部端末50のウエブブラウザ80の種類に応じて、読込対象のファイルが変更されるようにしてもよい。
【0154】
<3.変形例等>
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
【0155】
たとえば、上記各実施形態においては、子ページ200用のデータファイルとして、子ページ200の表示内容を記述したデータファイル210とは別にデータファイル230がさらに設けられ、当該データファイル230に定期的スクリプトCが記述される態様が例示されているが、本発明はこれに限定されない。
【0156】
具体的には、子ページ200の表示内容を記述したデータファイル210自体に、上述の定期的スクリプトCと同様の機能を有するスクリプトが記述されるようにしてもよい。ただし、標準化の観点からは、上記各実施形態のように、データファイル210とは別のデータファイル230を設け、当該データファイル230に定期的スクリプトCが記述されることが好ましい。換言すれば、子ページ200は、複数のデータファイルによって構成されてもよく、単一のデータファイルによって構成されてもよい。また、子ページ200に関する当該複数のデータファイルは、新ページ呼出指令に応答して順次に(非同時に)送付されるようにしてもよく、あるいは、新ページ呼出指令に応答して同時に送付されるようにしてもよい。なお、親ページ100に関しても同様である。