(57)【要約】      （修正有）【課題】汎用性を損なうことなく、リモートコンソールのキー入力操作の自動化を実現する。【解決手段】サーバ等の電子装置１０を、通信媒体７０を介して遠隔操作するリモートコンソール装置２０において、電子装置１０を制御するためのリモートコンソールプログラム４０に対するキー入力操作、表示部３１へのコンソールメッセージの表示出力を、操作プログラム５０によって読み書きされる入力ファイル６１、出力ファイル６２に置き換え、制御ファイル６３を介してリモートコンソールプログラム４０と操作プログラム５０とが同期をとることで、リモートコンソールプログラム４０におけるユーザ入出力を自動化する。【選択図】図１
2007213192.tif 000002
【特許請求の範囲】
【請求項１】
電子装置を遠隔操作するリモートコンソールプログラムを記憶する記憶手段と、
前記リモートコンソールプログラムの操作インタフェースを代替するファイルと、
前記ファイルを介して前記リモートコンソールプログラムに接続され、前記ファイルに対する情報の読み書き操作によって、前記リモートコンソールプログラムによる前記電子装置の前記遠隔操作を自動化する操作プログラムを記憶する記憶手段と、
を含むことを特徴とするリモートコンソール装置。
【請求項２】
請求項１記載のリモートコンソール装置において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、
前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含むことを特徴とするリモートコンソール装置。
【請求項３】
請求項１記載のリモートコンソール装置において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含み、
前記操作プログラムは、前記入力ファイルに、前記電子装置に送信すべきコマンド文字列、データ文字列、空データの少なくとも一つからなる第１文字列を書き込み、前記制御ファイルに前記第１文字列の送信依頼を示す第２文字列を書き込む機能を備え、
前記リモートコンソールプログラムは、前記第２文字列に基づいて、前記入力ファイルの前記第１文字列に、前記キーボード入力における入力区切りを示す改行コードを付加して前記電子装置に送出する機能を備えたことを特徴とするリモートコンソール装置。
【請求項４】
電子装置を遠隔操作するための操作インタフェースを提供するリモートコンソールプログラムと操作プログラムを、前記操作インタフェースを代替するファイルを介して接続する第１ステップと、
前記操作プログラムが前記ファイルに対して情報の読み書き操作を行うことにより、前記リモートコンソールプログラムを介した前記電子装置の前記遠隔操作を自動的に行う第２ステップと、
を含むことを特徴とする遠隔操作方法。
【請求項５】
電子装置を遠隔操作するための操作インタフェースをファイルで代替する機能と、
前記ファイルを介して他の操作プログラムとの間で授受される情報を用いて前記電子装置の前記遠隔操作を自動的に実行する機能と、
をコンピュータに実現させることを特徴とするリモートコンソールプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遠隔操作技術に関し、たとえば、情報処理装置、ネットワーク装置等の様々な電子装置の遠隔操作、監視、動作試験等に適用して有効な技術に関する。
【背景技術】
【０００２】
情報化社会の進展に伴って、たとえば、分散配置された多数の情報処理装置が情報ネットワークを介して複雑に結合された態様で運用されることが一般化している。このため、個々の情報処理装置や、情報ネットワークにおける中継機器に代表されるネットワーク装置等の多様な電子装置の遠隔操作や遠隔監視が、システムの効率的な運用を実現する上で不可欠となっている。
【０００３】
従来、情報ネットワーク経由で電子装置を遠隔操作する技術として、たとえば、ｔｅｌｅｎｅｔプロトコルのクライアント機能を備えたリモートコンソールプログラムを、ディスプレイやキーボードを備えたパーソナルコンピュータ等に実装して遠隔操作端末（リモートコンソール）として用いることが知られている。
【０００４】
すなわち、リモートコンソールプログラムが操作用インタフェースとして提供する操作画面（ディスプレイ）への情報表示とキーボード入力を介して、操作者がキーボードからのコマンドの投入、コマンド実行結果の目視確認、或いはエラーメッセージなどの目視判断により、管理対象であるサーバ装置やネットワーク機器等の電子装置の遠隔操作を行う方法がとられている。
【０００５】
しかし、電子装置の遠隔操作では、ディスプレイやキーボード等の操作インタフェースに対する定型的な入出力操作の反復等を伴うものも多く、操作者による手入力では、操作者の負担が大きい。
【０００６】
このため、たとえば、特許文献１では、コンソール入力キーボード装置に、キー入力操作を定義した動作定義ファイルを格納したメモリカードを着脱する機構を設け、キー入力操作を自動化しようとする技術が開示されている。しかし、この場合には、メモリカードに対応した特殊なキーボードが必要となり、汎用性に欠ける、という技術的課題がある。
【０００７】
また、特許文献２には、ＳＮＭＰを用いた統合ネットワーク管理プログラムにおけるシステムメッセージ自動化インタフェースのためのコマンドリストの作成を、簡易なパネル入力にて実現しようとする技術が開示されている。
【０００８】
しかし、この特許文献２の場合にも、パネル入力という煩瑣な作業が必要なことには変わりがない。さらに、当該パネルはコマンドリストの作成専用に設けられたものであってキーボードのような汎用的な入力手段とは異なり、やはり汎用性に欠ける、という技術的課題がある。
【特許文献１】特開２００１−３５６９３２号公報
【特許文献２】特開平５−１１３９５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の目的は、汎用性を損なうことなく、リモートコンソールのキー入力操作の自動化を実現することが可能な技術を提供することにある。
本発明の他の目的は、汎用性を損なうことなく、リモートコンソールの複雑かつ多様なキー入力操作を必要とする電子装置の遠隔操作、遠隔保守、遠隔監視、異常判定、自動復旧等の自動化を実現することが可能な技術を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の第１の観点は、電子装置を遠隔操作するリモートコンソールプログラムを記憶する記憶手段と、
前記リモートコンソールプログラムの操作インタフェースを代替するファイルと、
前記ファイルを介して前記リモートコンソールプログラムに接続され、前記ファイルに対する情報の読み書き操作によって、前記リモートコンソールプログラムによる前記電子装置の前記遠隔操作を自動化する操作プログラムを記憶する記憶手段と、
を含むリモートコンソール装置を提供する。
【００１１】
本発明の第２の観点は、電子装置を遠隔操作するための操作インタフェースを提供するリモートコンソールプログラムと操作プログラムを、前記操作インタフェースを代替するファイルを介して接続する第１ステップと、
前記操作プログラムが前記ファイルに対して情報の読み書き操作を行うことにより、前記リモートコンソールプログラムを介した前記電子装置の前記遠隔操作を自動的に行う第２ステップと、
を含む遠隔操作方法を提供する。
【００１２】
本発明の第３の観点は、電子装置を遠隔操作するための操作インタフェースをファイルで代替する機能と、
前記ファイルを介して他の操作プログラムとの間で授受される情報を用いて前記電子装置の前記遠隔操作を自動的に実行する機能と、
をコンピュータに実現させるリモートコンソールプログラムを提供する。
【００１３】
上述のように、従来は、サーバ等の電子装置と接続されたリモートコンソールの入出力操作は、オペレータが手作業で行う必要があった。
これに対して、本発明では、たとえば、制御対象の電子装置に対するコマンドの送信、電子装置側のコマンド実行結果の確認、非同期なイベントメッセージの監視などを、操作プログラムからファイルを介してリモートコンソールプログラムの動作を制御することによって自動的に行うことが可能となり、オペレータ作業の自動化を実現できる。
【００１４】
また、キー入力の自動化のために特別な構造のキーボードやタッチパネル等の専用の入力機器は全く不要であり、汎用性が損なわれることもない。
すなわち、本発明によれば、特別なハードウェアを必要とすることなく、リモートコンソールプログラムの操作インタフェースに対する入出力操作を代替するファイルを介して操作プログラム側から操作を行うことができる。このため、ファイルを読み書きする操作プログラムを準備することで、汎用性を損なうことなく、電子装置の遠隔操作のためのコンソール操作のすべてを完全に自動化することが可能となる。
【００１５】
また、制御対象のサーバ装置等の電子装置に組み込まれた擬似故障発生機能や、外部から電子装置に印加される擬似故障信号などと連携して、電子装置のテスト時における擬似故障の発生、ログデータの収集、電子装置の復旧処理などの自動化が可能となる。
【００１６】
また、ネットワーク機器などの電子装置のコンソールインタフェースと接続することで、ネットワーク機器などの各種設定を変更しながらの動作試験を自動的に行うことが可能となる。
【００１７】
あるいは、運用中のサーバ装置等の電子装置からリモートコンソールプログラムに出力されるコンソールメッセージを、ファイルを介して監視する操作プログラムを準備することで、電子装置の異常状発生時に異常状態を判断して復旧処理などを自動化することができる。
【発明の効果】
【００１８】
本発明によれば、汎用性を損なうことなく、リモートコンソールのキー入力操作の自動化を実現することが可能となる。
また、汎用性を損なうことなく、リモートコンソールの複雑かつ多様なキー入力操作を必要とする電子装置の遠隔操作、遠隔保守、遠隔監視、異常判定、自動復旧等の自動化を実現することが可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照しながら、本発明の実施の形態について詳細に説明する。
図１は、本発明の一実施の形態である遠隔操作方法を実施するリモートコンソール装置およびリモートコンソールプログラムの作用の一例を示す概念図である。
【００２０】
図２は、本実施の形態のリモートコンソール装置の構成の一例を示すブロック図である。
まず、図２を参照して本実施の形態のリモートコンソール装置の構成例を説明する。
【００２１】
本実施の形態のリモートコンソール装置２０は、中央処理装置２１、主記憶２２、外部記憶装置２３、表示部２４、ユーザ入力装置２５、ネットワークインタフェース２６、を含んでいる。
【００２２】
中央処理装置２１は、主記憶２２に格納されたオペレーティングシステム３０を実行することでリモートコンソール装置２０の全体を制御する。
主記憶２２は、たとえば半導体メモリで構成されている。この主記憶２２には、基本ソフトウェアであるオペレーティングシステム３０と、このオペレーティングシステム３０の配下で稼働するリモートコンソールプログラム４０、操作プログラム５０が格納されている。
【００２３】
本実施の形態では、中央処理装置２１が、オペレーティングシステム３０の制御下で稼働するリモートコンソールプログラム４０、操作プログラム５０を実行することで、後述のような電子装置１０の遠隔操作を実現する。
【００２４】
外部記憶装置２３は、不揮発性の記憶媒体を有する記憶装置で構成されている。本実施の形態の場合には、この外部記憶装置２３には、リモートコンソールプログラム４０と操作プログラム５０との間における情報の授受に用いられる入力ファイル６１、出力ファイル６２、制御ファイル６３が格納される。
【００２５】
特に図示しないが、オペレーティングシステム３０、リモートコンソールプログラム４０、操作プログラム５０は、外部記憶装置２３に格納されている。そして、必要に応じて主記憶２２に読み込まれて、中央処理装置２１によって実行される。
【００２６】
表示部２４は、オペレーティングシステム３０、リモートコンソールプログラム４０、操作プログラム５０等のソフトウェアの実行に際して発生する情報、および電子装置１０から到来するメッセージを、必要に応じて可視化して、リモートコンソール装置２０を操作するユーザに提示する。
【００２７】
ユーザ入力装置２５は、たとえばキーボード、マウス等の情報入力装置で構成され、リモートコンソール装置２０を操作するユーザによる情報入力に用いられる。
ネットワークインタフェース２６は、たとえばＬＡＮインタフェース等の通信媒体７０を用いた通信インタフェースを提供する。通信媒体７０は有線通信媒体、無線通信媒体のいずれでもよい。
【００２８】
本実施の形態の場合には、リモートコンソール装置２０は、通信媒体７０を介して電子装置１０と接続されることにより、電子装置１０の遠隔操作を行う。
図１に例示されるように、本実施の形態では、サーバやネットワーク機器等の制御対象の電子装置１０と通信媒体７０を介して接続されたリモートコンソール装置２０に、リモートコンソールプログラム４０と、このリモートコンソールプログラム４０を操作する操作プログラム５０を実装している。
【００２９】
そして、この操作プログラム５０から、入力ファイル６１、出力ファイル６２、制御ファイル６３を介してリモートコンソールプログラム４０を制御することにより、リモートコンソールプログラム４０から電子装置１０に対するコンソール操作を自動化する。
【００３０】
図３および図４は、本実施の形態におけるリモートコンソール装置２０（リモートコンソールプログラム４０）と、制御対象である電子装置１０との接続形態を示す概念図である。
【００３１】
図３は、電子装置１０のコンソールインタフェース１１とリモートコンソール装置２０を、直接、ＬＡＮインタフェース（ｔｅｌｎｅｔプロトコル）等の通信媒体７０で接続する場合を示している。この接続形態は、図１に例示されている。
【００３２】
図４は、電子装置１０のコンソールインタフェース１１がシリアルインタフェースの場合であり、この場合はシリアルインタフェース／ＬＡＮインタフェース変換を行う通信媒体変換装置７１を介することで本実施の形態のリモートコンソールプログラム４０と接続する。
【００３３】
すなわち、通信媒体変換装置７１は、ＬＡＮインタフェース７１ａとシリアルインタフェース７１ｂを備えており、リモートコンソール装置２０とはＬＡＮインタフェース７１ａ、通信媒体７０を介して接続され、電子装置１０とはシリアルインタフェース７１ｂ、シリアル通信媒体７２を介して接続される。
【００３４】
図１に例示されるように、本実施の形態のリモートコンソール装置２０において、リモートコンソールプログラム４０と、接続先の電子装置１０は、上述の図３又は図４の形態で接続される。
【００３５】
電子装置１０の側のサーバプログラム１２が、たとえばｔｅｌｎｅｔサーバ等の場合には、リモートコンソールプログラム４０は、ｔｅｌｎｅｔクライアントとして機能する。
なお、電子装置１０とリモートコンソール装置２０の間の接続インタフェースとしては、ｔｅｌｎｅｔプロトコルに限らない。たとえば、制御対象の電子装置１０がネットワーク機器の場合には、ＳＮＭＰ（Simple Network Management Protocol）等のプロトコルを用いることもできる。
【００３６】
操作プログラム５０は、入力ファイル６１と出力ファイル６２と制御ファイル６３を介して、リモートコンソールプログラム４０と接続される。
リモートコンソールプログラム４０は、コンソール操作中に電子装置１０から受信した受信メッセージ６２ａ等のデータは、表示部２４のターミナルウィンドウ３１に表示する。
【００３７】
また、受信メッセージ６２ａの出力先をターミナルウィンドウ３１から出力ファイル６２に切り替えることもできる。
リモートコンソールプログラム４０は、電子装置１０を制御するためにユーザ入力装置２５から入力されるコンソール操作入力の入力元を、入力ファイル６１、制御ファイル６３に切り替えることが可能である。
【００３８】
また、リモートコンソールプログラム４０は、制御ファイル６３に対しては、自プログラムの動作状態を出力することも可能である。
このように、本実施の形態では、操作プログラム５０から、入力ファイル６１、出力ファイル６２、制御ファイル６３を読み書きすることで、リモートコンソールプログラム４０のコンソール操作を、操作プログラム５０から制御する。
【００３９】
図５を参照して、本実施の形態におけるリモートコンソールプログラム４０と操作プログラム５０による入力ファイル６１、出力ファイル６２、制御ファイル６３に対するアクセス方法の一例について説明する。
【００４０】
入力ファイル６１は、リモートコンソールプログラム４０および操作プログラム５０によって同時にオープンされて共有される。
リモートコンソールプログラム４０は、入力ファイル６１に対して読み取り（“ｒｅａｄ”）のみ可能である。
【００４１】
操作プログラム５０は、入力ファイル６１に対して書き込み（“ｗｒｉｔｅ”）のみ可能である。
本実施の形態の場合、操作プログラム５０は、入力ファイル６１に対して、コマンド６１ａ、データ６１ｂ、予約語６１ｃ、等の情報を書き込む。
【００４２】
コマンド６１ａは、制御対象の電子装置１０に特定の動作を行わせるために当該電子装置１０に送信される命令である。
データ６１ｂは、制御対象の電子装置１０に送信される文字列等のデータである。
【００４３】
本実施の形態の場合、コマンド６１ａおよびデータ６１ｂの場合には、リモートコンソールプログラム４０は、改行コード（キーボードのＣＲ（改行）キーの押下に相当）を末尾に付加して、電子装置１０に送信する機能を備えている。
【００４４】
予約語６１ｃは、リモートコンソールプログラム４０によって解釈されることによって、当該リモートコンソールプログラム４０に特定の動作を行わせる情報である。
本実施の形態の場合、予約語６１ｃとしては、特定の制御コードをリモートコンソールプログラム４０から電子装置１０に送信させるための、“ＣＴＬ−Ａ”、．．．、“ＣＴＬ−Ｚ”、“ＢＲＥＡＫ”、“ＥＳＣ”、等が設けられている。
【００４５】
たとえば、予約語６１ｃの“ＣＴＬ−Ａ”は、キーボード等のユーザ入力装置２５において、ＣＴＬキーとＡキーを同時に押下した場合にリモートコンソールプログラム４０に入力される制御コードを、リモートコンソールプログラム４０の内部で自動的に発生させる。
【００４６】
同様に、“ＢＲＥＡＫ”、“ＥＳＣ”は、キーボードのＢＲＥＡＫキー、ＥＳＣキーをそれぞれ押下した時にリモートコンソールプログラム４０に入力される制御コードを、リモートコンソールプログラム４０の内部で自動的に発生させる。
【００４７】
また、予約語６１ｃとして、リモートコンソールプログラム４０から出力ファイル６２に対するコンソールメッセージの書き込みの開始／停止を制御するための、出力フラグ６２ｂを操作するための“ＯＮ”、“ＯＦＦ”がある。
【００４８】
また、予約語６１ｃとして、リモートコンソールプログラム４０の動作を終了させるための“ＥＮＤ”がある。
出力ファイル６２は、リモートコンソールプログラム４０および操作プログラム５０によって同時にオープンされて共有される。
【００４９】
リモートコンソールプログラム４０は、電子装置１０から受信した受信メッセージ６２ａ等の情報を出力ファイル６２に書き込む動作（“ｗｒｉｔｅ”）のみ可能である。この受信メッセージ６２ａの書き込み動作の可否は、上述の予約語６１ｃの“ＯＮ”、“ＯＦＦ”で制御される出力フラグ６２ｂによって決定される。
【００５０】
なお、リモートコンソールプログラム４０は、出力フラグ６２ｂが“ＯＮ”で、受信メッセージ６２ａを出力ファイル６２に出力する場合でも、常時、この受信メッセージ６２ａをターミナルウィンドウ３１に表示してもよい。この場合には、電子装置１０やリモートコンソールプログラム４０の動作状態をユーザが常に目視で監視できる、という利点がある。
【００５１】
操作プログラム５０は、この出力ファイル６２に対して読み出し動作（“ｒｅａｄ”）のみ可能である。
制御ファイル６３は、リモートコンソールプログラム４０および操作プログラム５０によって同時にオープンされて共有される。
【００５２】
リモートコンソールプログラム４０および操作プログラム５０は、制御ファイル６３に対して書き込み動作（“ｗｒｉｔｅ”）および読み出し動作（“ｒｅａｄ”）の双方が可能である。
【００５３】
リモートコンソールプログラム４０は、操作プログラム５０からの指示の受け付け可能な状態を示す状態表示文字列６３ｂ（“ａｃｃｅｐｔ”）を制御ファイル６３に書き込む。
【００５４】
操作プログラム５０は、この状態表示文字列６３ｂを制御ファイル６３から読み出すことで、リモートコンソールプログラム４０の状態を知ることができる。
また、操作プログラム５０は、処理依頼文字列６３ａを制御ファイル６３に対して書き込み、リモートコンソールプログラム４０は、この処理依頼文字列６３ａの読み出しを行う。
【００５５】
本実施の形態の場合、処理依頼文字列６３ａとしては、“ｃｍｄ”と“ｃｔｌ”が設けられている。
“ｃｍｄ”は、操作プログラム５０から入力ファイル６１に書き込まれた文字列を、コマンド６１ａやデータ６１ｂとして、改行コードを付加した後に電子装置１０に送信することをリモートコンソールプログラム４０に指示する文字列である。
【００５６】
“ｃｔｌ”は、操作プログラム５０から入力ファイル６１に書き込まれた文字列を、予約語６１ｃとして解釈し、対応する動作の実行をリモートコンソールプログラム４０に指示する文字列である。
【００５７】
以下、本実施の形態の作用について説明する。
リモートコンソール装置２０の表示部２４には、オペレーティングシステム３０によってターミナルウィンドウ３１が開かれている。
【００５８】
このターミナルウィンドウ３１に、リモートコンソールプログラム４０および操作プログラム５０の起動コマンド入力することで、リモートコンソールプログラム４０および操作プログラム５０が起動され、図１のような実行状態となる。
【００５９】
実行中のリモートコンソールプログラム４０から出力されるメッセージや、接続先の電子装置１０から到来する受信メッセージ６２ａは、ターミナルウィンドウ３１に表示され、後述のように、必要に応じて出力ファイル６２に格納される。
【００６０】
図６は、リモートコンソールプログラム４０の動作の一例を示すフローチャートである。
ターミナルウィンドウ３１から、リモートコンソールプログラム４０のプログラム名および引数（接続先の電子装置１０、ｕｓｅｒＩＤ、パスワード、等）を入力することによりリモートコンソールプログラム４０が起動されると、引数で指定されたサーバ等の電子装置１０への接続を試行する（ステップ４０１）。
【００６１】
接続が失敗した場合には、リモートコンソールプログラム４０は、エラー終了する（ステップ４２１）。
接続が成功すると（ステップ４０２）、リモートコンソールプログラム４０は、電子装置１０からの受信メッセージ６２ａを受信し（ステップ４０３）、“ｌｏｇｉｎ：”の受信メッセージ６２ａに対応して（ステップ４０４）、前記引数で指定されたｕｓｅｒＩＤを電子装置１０に送信する（ステップ４０５）。
【００６２】
このステップ４０２〜４０５が、処理ブロックＳ１０１である。
引き続いて、受信メッセージ６２ａとして“ｐａｓｓｗｏｒｄ”を受信したら（ステップ４０６）、前記引数で指定されたパスワードを電子装置１０に送信し（ステップ４０７）、電子装置１０とコネクションを確立する。
【００６３】
このステップ４０６〜４０７が、処理ブロックＳ１０２である。
次に、リモートコンソールプログラム４０は、制御ファイル６３に状態表示文字列６３ｂとして“ａｃｃｅｐｔ”を書き込むことで、操作プログラム５０からの処理依頼を受付可能な状態にする（ステップ４０８）。
【００６４】
その後、電子装置１０からのメッセージの受信（ステップ４０９）、接続状態の確認（ステップ４１０、ステップ４２２）、表示部２４のターミナルウィンドウ３１への受信メッセージ６２ａの表示を行う（ステップ４１１）。
【００６５】
このとき、操作プログラム５０からの指定によって出力ファイル６２にメッセージを出力する出力フラグ６２ｂがＯＮであれば（ステップ４１２）、出力ファイル６２に受信メッセージ６２ａを書き出す（ステップ４１３）。
【００６６】
そして、制御ファイル６３を読み（ステップ４１４）、制御ファイル６３に操作プログラム５０からの処理依頼があるかを確認して（ステップ４１５）、処理依頼がなければ、ステップ４０９に戻って、電子装置１０からのメッセージ受信と操作プログラム５０からの処理依頼の確認を繰り返す。
【００６７】
すなわち、ステップ４１５の判定において、ステップ４０８で制御ファイル６３にリモートコンソールプログラム４０から書き込まれた状態表示文字列６３ｂとしての“ａｃｃｅｐｔ”がそのまま残っている場合には、操作プログラム５０からの処理依頼はないと判定される。
【００６８】
処理依頼があれば入力ファイル６１を読み込み（ステップ４１６）、制御ファイル６３の文字列から処理内容を判定する（ステップ４１７）。
すなわち、ステップ４１７において、操作プログラム５０から制御ファイル６３に処理依頼文字列６３ａとして“ｃｍｄ”が書き込まれていた場合には、操作プログラム５０から入力ファイル６１に書き込まれている文字列（この場合、電子装置１０に送信されるコマンド６１ａまたはデータ６１ｂ）に改行コードを付加して（ステップ４１８）、電子装置１０に送信し（ステップ４２０）、ステップ４０８に戻る。
【００６９】
ステップ４１７において、操作プログラム５０から制御ファイル６３に処理依頼文字列６３ａとして“ｃｔｌ”が書き込まれていた場合には、操作プログラム５０から入力ファイル６１に書き込まれている予約語６１ｃを判別する（ステップ４２３）。
【００７０】
そして、予約語６１ｃが“ＣＴＬ−Ａ”．．．“ＢＲＥＡＫ”、“ＥＳＣ”等の制御コードの場合には入力ファイル６１の文字列（予約語６１ｃ）を対応する制御コードに変換して（ステップ４１９）、電子装置１０に送信し（ステップ４２０）、ステップ４０８に戻る。
【００７１】
ステップ４２３において、入力ファイル６１の文字列（予約語６１ｃ）が、“ＯＮ”、“ＯＦＦ”の場合には、出力ファイル６２に受信メッセージ６２ａを出力するか、出力しないかの出力フラグ６２ｂを設定し（ステップ４２４）、ステップ４０８に戻る。
【００７２】
なお、出力フラグ６２ｂを“ＯＮ”に設定する場合には、出力ファイル６２のｏｐｅｎ処理を行い、出力フラグ６２ｂを“ＯＦＦ”に設定する場合には、出力ファイル６２のｃｌｏｓｅ処理を実行する。
【００７３】
ステップ４２３において、入力ファイル６１の文字列（予約語６１ｃ）が、“ＥＮＤ”の場合には、電子装置１０とのコネクショ切断後に（ステップ４２５）、リモートコンソールプログラム４０を終了する（ステップ４２６）。
【００７４】
なお、上述のステップ４２２の再接続では、ｕｓｅｒＩＤ／パスワードの送信処理は行わない。電子装置１０からの“ｌｏｇｉｎ：”、“ｐａｓｓｗｏｒｄ：”のプロンプト（受信メッセージ６２ａ）を操作プログラム５０に提示することで再接続されたか否かを操作プログラム５０に判断させる。
【００７５】
一方、図７は、リモートコンソールプログラム４０を操作する操作プログラム５０からサーバ等の電子装置１０にコマンドを送信する動作の一例を示すフローチャートである。
操作プログラム５０は、上述のリモートコンソールプログラム４０におけるステップ４０７の終了後（電子装置１０による処理ブロックＳ１０１〜１０２の認証終了後）に起動される。
【００７６】
操作プログラム５０は、制御ファイル６３を読んで（ステップ５０１）、リモートコンソールプログラム４０から“ａｃｃｅｐｔ”が書き込まれていれば（受付可能状態であれば）（ステップ５０２）、入力ファイル６１に、電子装置１０からの受信メッセージ６２ａを出力ファイル６２に出力することを指示する予約語６１ｃとして“ＯＮ”の文字列を書き込んだ後（ステップ５０３）、制御ファイル６３に処理依頼文字列６３ａとして“ｃｔｌ”を書き込む（ステップ５０４）。
【００７７】
ここまでの、ステップ５０１〜５０４は、後述の処理ブロックＳ１０３の準備である。
なお、リモートコンソールプログラム４０から制御ファイル６３に書き込まれる“ａｃｃｅｐｔ”は、操作プログラム５０が読み出した後、次の処理依頼文字列６３ａとして“ｃｍｄ”または“ｃｔｌ”を書き込む。これにより、上述の図６のステップ４１５のように、操作プログラム５０が制御ファイル６３から“ａｃｃｅｐｔ”を読み出したことを、リモートコンソールプログラム４０の側から知ることができる。
【００７８】
そして、操作プログラム５０は制御ファイル６３を読み（ステップ５０５）、リモートコンソールプログラム４０の側から“ａｃｃｅｐｔ”が書き込まれるのを待つ（ステップ５０６）。
【００７９】
そして、リモートコンソールプログラム４０が受け付け可能状態となったなら、操作プログラム５０は、入力ファイル６１に空データ（“”）を書き込み（ステップ５０７）、制御ファイル６３に処理依頼文字列６３ａとしてコマンド送信依頼を示す“ｃｍｄ”を書き込む（ステップ５０８）。
【００８０】
その後、操作プログラム５０は、出力ファイル６２を読み、電子装置１０からのプロンプト“＃”が書き込まれているか判別し（ステップ５１０）、プロンプト文字列により、電子装置１０におけるコマンド終了とコマンドの実行結果を判定する。
【００８１】
すなわち、ステップ５１０で電子装置１０からプロンプト“＃”の応答がない場合は、所定時間（たとえば１秒）だけ待ち（ステップ５２６）、ｔｉｍｅｏｕｔカウンタをカウントアップし（ステップ５２７）、ｔｉｍｅｏｕｔカウンタがオーバーフローしない間（ステップ５２８）、ステップ５０９、ステップ５１０、ステップ５２６、ステップ５２７を反復して電子装置１０からのプロンプトを待つ。
【００８２】
なお、ステップ５２８でｔｉｍｅｏｕｔカウンタがオーバーフローした場合には、電子装置１０の側の異常と判断し、必要に応じて、所定のリトライ処理を行う（ステップ５２９）。
【００８３】
ステップ５０５〜５１０が、処理ブロックＳ１０３である。この処理ブロックＳ１０３では、電子装置１０からリモートコンソールプログラム４０に応答されるプロンプト“＃”を出力ファイル６２に書き出させて、操作プログラム５０が次のコマンド送信の送信契機を得る。
【００８４】
ステップ５１０で、電子装置１０からのプロンプト“＃”の応答があった場合には、操作プログラム５０は、制御ファイル６３を読み（ステップ５１１）、リモートコンソールプログラム４０から“ａｃｃｅｐｔ”が書き込まれる（リモートコンソールプログラム４０が受け付け可能な状態となる）まで待つ（ステップ５１２）。
【００８５】
その後、操作プログラム５０は、入力ファイル６１に“ＯＦＦ”を書き込み（ステップ５１３）、制御ファイル６３に“ｃｔｌ”を書き込む（ステップ５１４）。
これにより、リモートコンソールプログラム４０による受信メッセージ６２ａの出力ファイル６２への書き込みを停止し、出力ファイル６２には、電子装置１０におけるコマンドの実行結果（この場合には、空データの送信に対して応答されたプロンプト“＃”）だけを記録する。
【００８６】
そして、操作プログラム５０は、制御ファイル６３を読み（ステップ５１５）、リモートコンソールプログラム４０から“ａｃｃｅｐｔ”が書き込まれる（リモートコンソールプログラム４０が受け付け可能な状態となる）まで待つ（ステップ５１６）。
【００８７】
次に、操作プログラム５０は、別の処理の受信メッセージ６２ａを出力ファイル６２に記録するために、入力ファイル６１に“ＯＮ”を書き込み（ステップ５１７）、制御ファイル６３に“ｃｔｌ”を書き込み（ステップ５１８）、リモートコンソールプログラム４０において出力フラグ６２ｂを“ＯＮ”にする処理の完了を待つ（ステップ５１９、ステップ５２０）。
【００８８】
ステップ５１１〜５１８は、後述の処理ブロックＳ１０５、Ｓ１０５の準備である。出力ファイル６２の内容をコマンドの実行結果だけにするために、出力フラグ６２ｂを一度ＯＦＦにして出力ファイル６２をクリアする。
【００８９】
その後、別の処理として、電子装置１０に、たとえば“ｌｓ  −ｌ”のコマンドを実行させるべく、操作プログラム５０は、入力ファイル６１に“ｌｓ  −ｌ”を書き込み（ステップ５２１）、制御ファイル６３に“ｃｍｄ”を書き込む（ステップ５２２）。
【００９０】
このステップ５１９〜５２２の処理ブロックＳ１０４は、“ｌｓ  −ｌ”コマンドを、電子装置１０に送る処理である。
なお、この“ｌｓ”コマンドは、電子装置１０に対してファイルリストの取得を指示するコマンドであり、引数の“−ｌ”は、個々のファイルの詳細な情報の取得を指示するオプションである。
【００９１】
そして、操作プログラム５０は、出力ファイル６２を読み（ステップ５２３）、受信メッセージ６２ａの最後にプロンプト“＃”が記録されていたら（ステップ５２４）、電子装置１０において正常に“ｌｓ  −ｌ”のコマンドの実行が終了したものと判定し、出力ファイル６２に格納されている、当該コマンドの実行結果を処理する（ステップ５２５）。
【００９２】
ステップ５２３〜５２５の処理ブロックＳ１０５は、上述の処理ブロックＳ１０４で実行されたコマンドの実行結果を出力ファイル６２に得る。
上述の処理ブロックＳ１０４の直前の準備処理で、一旦、出力ファイル６２の出力がＯＦＦにされているため、出力ファイル６２の“ｌｓ  −ｌ”コマンドの前に、プロンプト“＃”が出力されないため、確実に、次のプロンプト“＃”（図８の出力例の最下行の“＃”）を待って、次の処理に移行することができる。
【００９３】
なお、ステップ５２４では、プロンプト“＃”を所定の時間だけ待つ処理（ステップ５３０）を、所定の回数だけ反復する（ステップ５３１、ステップ５３２）ことは、上述のステップ５２６〜ステップ５２８と同様である。
【００９４】
図８は、このステップ５２１〜ステップ５２５における出力ファイル６２の記録内容の一例を示す説明図である。
この場合、出力ファイル６２には、電子装置１０からの“ｌｓ  −ｌ”のコマンドの実行指示のエコーバックと、実行結果のファイルリスト（この場合、３個のファイル）と、コマンド終了後に電子装置１０から返されたプロンプト“＃”が、受信メッセージ６２ａとして記録されている。
【００９５】
図９および図１０は、上述の図６に例示されるリモートコンソールプログラム４０の動作、および図７に例示される操作プログラム５０の動作を対応付けて例示したシーケンス図である。
【００９６】
この図９および図１０には、操作プログラム５０が、入力ファイル６１、出力ファイル６２、制御ファイル６３を介してリモートコンソールプログラム４０を制御することで、リモートコンソールプログラム４０によるサーバ等の電子装置１０の遠隔操作を実行することを示している。
【００９７】
なお、図９および図１０において、図６および図７と対応する処理には、同一のステップ番号を付して、重複した説明は割愛する。
以上詳述したように本実施の形態では、たとえば、ｔｅｌｎｅｔクライアント等のリモートコンソールプログラム４０の操作インタフェースとして、操作プログラム５０から読み書きされる入力ファイル６１、出力ファイル６２、制御ファイル６３等のファイルを用いる。
【００９８】
これにより、これらファイルを介して受信メッセージ６２ａ等のコンソールメッセージの内容を操作プログラム５０から判断でき、操作プログラム５０が判断した内容により、各種のコマンド、データ、制御コードなどを、リモートコンソールプログラム４０を介して、接続先のサーバ装置等の電子装置１０に対して送出することが可能となる。
【００９９】
この結果、リモートコンソールプログラム４０によるコンソール操作を操作プログラム５０により自動化できる効果がある。
すなわち、本実施の形態のリモートコンソール装置２０の場合には、特別な構造のキーボードやタッチパネル等の入力手段を必要とすることなく、すなわち、汎用性を損なうことなく、リモートコンソール装置２０のユーザ入力装置２５におけるキー入力操作の自動化を実現することが可能となる。
【０１００】
また、汎用性を損なうことなく、リモートコンソールの複雑かつ多様なキー入力操作を必要とする電子装置の遠隔操作、遠隔保守、遠隔監視、異常判定、自動復旧、疑似故障試験の実施等の自動化を実現することが可能となる。
なお、本発明は、上述の実施の形態に例示した構成に限らず、その趣旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【０１０１】
（付記１）
電子装置を遠隔操作するリモートコンソールプログラムを記憶する記憶手段と、
前記リモートコンソールプログラムの操作インタフェースを代替するファイルと、
前記ファイルを介して前記リモートコンソールプログラムに接続され、前記ファイルに対する情報の読み書き操作によって、前記リモートコンソールプログラムによる前記電子装置の前記遠隔操作を自動化する操作プログラムを記憶する記憶手段と、
を含むことを特徴とするリモートコンソール装置。
（付記２）
付記１記載のリモートコンソール装置において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、
前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含むことを特徴とするリモートコンソール装置。
（付記３）
付記１記載のリモートコンソール装置において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含み、
前記操作プログラムは、前記入力ファイルに、前記電子装置に送信すべきコマンド文字列、データ文字列、空データの少なくとも一つからなる第１文字列を書き込み、前記制御ファイルに前記第１文字列の送信依頼を示す第２文字列を書き込む機能を備え、
前記リモートコンソールプログラムは、前記第２文字列に基づいて、前記入力ファイルの前記第１文字列に、前記キーボード入力における入力区切りを示す改行コードを付加して前記電子装置に送出する機能を備えたことを特徴とするリモートコンソール装置。
（付記４）
付記１記載のリモートコンソール装置において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含み、
前記リモートコンソールプログラムは、前記キーボード入力で発生される制御コードの種別を示す予約語としての第１文字列を認識する機能を備え、
前記操作プログラムによって入力ファイルに前記予約語を書き込み、前記制御ファイルに前記制御コードの送信依頼を示す第２文字列を書き込むことで、前記制御コードを前記リモートコンソールプログラムから前記電子装置に送出することを特徴とするリモートコンソール装置。
（付記５）
付記１記載のリモートコンソール装置において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含み、
前記リモートコンソールプログラムは、前記出力ファイルに対する前記電子装置から到来するメッセージの書き出し処理の可否を示す予約語としての第１文字列を認識する機能を備え、
前記操作プログラムから前記入力ファイルに前記予約語を書き込み、前記制御ファイルに処理依頼を示す第２文字列を書き込むことで、前記出力ファイルに対する前記メッセージの書き出しの可否を制御することを特徴とするリモートコンソール装置。
（付記６）
付記１記載のリモートコンソール装置において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含み、
前記リモートコンソールプログラムは、当該リモートコンソールプログラムを終了させる予約語としての第１文字列を認識する機能を備え、
前記操作プログラムから前記入力ファイルに前記予約語を書き込み、前記制御ファイルに処理依頼を示す第２文字列を書き込むことで、前記リモートコンソールプログラムと前記電子装置とのコネクションを切断した後、前記リモートコンソールプログラムを終了させることを特徴とするリモートコンソール装置。
（付記７）
付記１記載のリモートコンソール装置において、
前記リモートコンソールプログラムは、当該リモートコンソールプログラムを起動した操作画面上に、前記電子装置および／または前記操作プログラムとの間で授受される情報を含むコンソールメッセージを常時表示する機能を備えたことを特徴とするリモートコンソール装置。
（付記８）
電子装置を遠隔操作するための操作インタフェースを提供するリモートコンソールプログラムと操作プログラムを、前記操作インタフェースを代替するファイルを介して接続する第１ステップと、
前記操作プログラムが前記ファイルに対して情報の読み書き操作を行うことにより、前記リモートコンソールプログラムを介した前記電子装置の前記遠隔操作を自動的に行う第２ステップと、
を含むことを特徴とする遠隔操作方法。
（付記９）
付記８記載の遠隔操作方法において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、
前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含むことを特徴とする遠隔操作方法。
（付記１０）
付記８記載の遠隔操作方法において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含み、
前記第２ステップでは、
前記操作プログラムが、前記入力ファイルに、前記電子装置に送信すべき第１文字列を書き込み、前記制御ファイルに前記第１文字列の送信依頼を示す第２文字列を書き込み、
前記リモートコンソールプログラムが、前記第２文字列に基づいて、前記第１文字列に、前記キーボード入力における入力区切りを示す改行コードを付加して前記電子装置に送出することを特徴とする遠隔操作方法。
（付記１１）
付記８記載の遠隔操作方法において、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含み、
前記第２ステップでは、
前記操作プログラムが、予約語からなる第１文字列を前記入力ファイルに書き込み、前記制御ファイルに前記予約語の処理依頼を示す第２文字列を書き込むことで、前記リモートコンソールプログラムに前記予約語に応じた動作を実行させることを特徴とする遠隔操作方法。
（付記１２）
付記８記載の遠隔操作方法において、
前記第２ステップでは、
前記リモートコンソールプログラムは、前記電子装置に対する情報送信時に、前記電子装置からの処理終了通知を待たずに、前記ファイルを介した前記操作プログラムとの間の前記情報の授受を再開することを特徴とする遠隔操作方法。
（付記１３）
付記８記載の遠隔操作方法において、
前記第２ステップでは、
前記リモートコンソールプログラムと前記電子装置との接続が切れた場合、前記リモートコンソールプログラムが前記電子装置に対して再接続を一定間隔で試行することで、前記リモートコンソールプログラムと前記電子装置との接続を維持することを特徴とする遠隔操作方法。
（付記１４）
電子装置を遠隔操作するための操作インタフェースをファイルで代替する機能と、
前記ファイルを介して他の操作プログラムとの間で授受される情報を用いて前記電子装置の前記遠隔操作を自動的に実行する機能と、
をコンピュータに実現させることを特徴とするリモートコンソールプログラム。
（付記１５）
付記１４記載のリモートコンソールプログラムにおいて、
前記操作インタフェースは、キーボード入力およびディスプレイ表示を含み、前記ファイルは、前記キーボード入力に相当する入力ファイルと、前記ディスプレイ表示に相当する出力ファイルと、前記リモートコンソールプログラムと前記操作プログラムとの同期をとる制御ファイルとを含むことを特徴とするリモートコンソールプログラム。
（付記１６）
付記１４記載のリモートコンソールプログラムにおいて、
さらに、前記操作プログラムから前記ファイルに書き込まれた文字列に改行コードを付加して前記電子装置に送出する機能を前記コンピュータに実現させることを特徴とするリモートコンソールプログラム。
（付記１７）
付記１４記載のリモートコンソールプログラムにおいて、
さらに、前記操作プログラムから前記ファイルに書き込まれた予約語からなる第１文字列、および前記予約語の処理依頼を示す第２文字列に基づいて、前記予約語に応じた動作を前記コンピュータに実現させることを特徴とするリモートコンソールプログラム。
【図面の簡単な説明】
【０１０２】
【図１】本発明の一実施の形態である遠隔操作方法を実施するリモートコンソール装置およびリモートコンソールプログラムの作用の一例を示す概念図である。
【図２】本発明の一実施の形態であるリモートコンソール装置の構成の一例を示すブロック図である。
【図３】本発明の一実施の形態であるリモートコンソール装置と、制御対象である電子装置との接続形態の一例を示す概念図である。
【図４】本発明の一実施の形態であるリモートコンソール装置と、制御対象である電子装置との接続形態の変形例を示す概念図である。
【図５】本発明の一実施の形態であるリモートコンソール装置におけるリモートコンソールプログラムと操作プログラムとの間に介在する各種ファイルに対するアクセス方法の一例を示す概念図である。
【図６】本発明の一実施の形態であるリモートコンソール装置におけるリモートコンソールプログラムの動作の一例を示すフローチャートである。
【図７】本発明の一実施の形態であるリモートコンソール装置における操作プログラムの動作の一例を示すフローチャートである。
【図８】本発明の一実施の形態であるリモートコンソール装置における出力ファイルの記録内容の一例を示す説明図である。
【図９】本発明の一実施の形態であるリモートコンソール装置における操作プログラムおよび操作プログラムの動作の一例を示すシーケンス図である。
【図１０】本発明の一実施の形態であるリモートコンソール装置における操作プログラムおよび操作プログラムの動作の一例を示すシーケンス図である。
【符号の説明】
【０１０３】
１０  電子装置
１１  コンソールインタフェース
１２  サーバプログラム
２０  リモートコンソール装置
２１  中央処理装置
２２  主記憶（記憶手段）
２３  外部記憶装置
２４  表示部
２５  ユーザ入力装置
２６  ネットワークインタフェース
３０  オペレーティングシステム
３１  ターミナルウィンドウ
４０  リモートコンソールプログラム
５０  操作プログラム
６１  入力ファイル
６１ａ  コマンド（第１文字列）
６１ｂ  データ（第１文字列）
６１ｃ  予約語（第１文字列）
６２  出力ファイル
６２ａ  受信メッセージ
６２ｂ  出力フラグ
６３  制御ファイル
６３ａ  処理依頼文字列（第２文字列）
６３ｂ  状態表示文字列（第２文字列）
７０  通信媒体
７１  通信媒体変換装置
７１ａ  ＬＡＮインタフェース
７１ｂ  シリアルインタフェース
７２  シリアル通信媒体
【図１】
2007213192.tif 000003
【図２】
2007213192.tif 000004
【図３】
2007213192.tif 000005
【図４】
2007213192.tif 000006
【図５】
2007213192.tif 000007
【図６】
2007213192.tif 000008
【図７】
2007213192.tif 000009
【図８】
2007213192.tif 000010
【図９】
2007213192.tif 000011
【図１０】
2007213192.tif 000012