eSEAT: rtcmd
Simple Wiki Based Contents Management System
ソフトウェア関連 >> RTコンポーネント関連 >> eSEAT_v2.5 >> eSEATのファイル構成クラスについて >> eSEAT: rtcmd

eSEAT: rtcmdコマンドの使い方

rtcmdコマンドは、eSEATに付属のOpenRTM-aistのRTCのコネクションの生成、アクティベート、デアクティベートや各ポートの情報取得などの基本的なオペレーションを行うためのユーティリティソフトです。
rtshellのように高機能ではないのですが、最低限のオペレーションを実行することができます。
なお、rtcmdでコマンドの補完機能を使うには、readlineモジュールが必要です。Windowsで使うときは、PyReadlineを PyPIでインストールしてください。(setup_py2.pyに必要モジュールになっています)

rtcmdの起動

setup_py2.pyでインストールすれば、/usr/local/bin (Windowsでは、<PythonのHome>\Scripts)にインストールされます。
起動は、下記の通りです。
 # rtcmd
Welcome to RtCmd
=>
ただし、NameServerが起動済みでないとエラーになります。Linuxの場合には、通常、OSの起動時にNameServerも起動していますが、Ubuntu18.04では不具合があるそうです。また、Windowsでも自動起動していませんので、手動で起動する必要があります。

rtcmdでできること

rtcmdでは、RTCの簡単な操作を行うことができます。<tab>キーでコマンドの補完機能も使えますので、プロンプトが表示されたら<tab>を押下すればコマンドの一覧が表示されます。
補完機能は、Windowsでは正しく動作しない場合があります。ヒストリー機能は正常に動作しています。
主なコマンドは以下の通りです。
list
localhostのNameServerにアクセスして、RTCの一覧を取得し、表示します。'-l'オプションで詳細表示(ポートやコネクションの同時表示)になります。また、アクティベートしているRTCには、末尾に '*'が付加されます。NameServerに名前があってRTCが落ちている場合(皆さんは、Zonbeと呼んでいますが)は、'[]'で囲まれています。
get_ports <RTC名>
指定されたRTCのポートの一覧とプロパティのが表示されます。
get_state <RTC名>
指定されたRTCの状態(Activate or Deactivate)が表示されます。
get_connectors <RTC名>:<ポート名>
現在接続中のコネクションの一覧が表示されます。
get_connection <RTC1>:<Port> <RTC2>:<Port>
指定した2つのポート間のコネクションを表示します。
connect <RTC1>:<Port> <RTC2>:<Port>
指定した2つのポート間のコネクションを生成します。
disconnect <RTC1>:<Port> <RTC2>:<Port>
指定した2つのポート間のコネクションを切断します。
activate <RTC1>[ <RTC2> <RTC3> ...]
指定されたRTC群の状態をActivateにします。
deactivate <RTC1>[ <RTC2> <RTC3>...]
指定されたRTC群の状態をDeactivateにします。
terminate<RTC1>[ <RTC2> <RTC3> ...]
指定されたRTC群の状態を終了させます。
unbind <Name>
Nameで指定された名前をNameServerから除去します。
bye
rtcmdを終了します。