Galatea DM 1.0に同梱されている追加サブモジュールについて説明する.これらは,PerlおよびRubyで記述されており,改変は容易である.
Galatea DMはこれらの追加サブモジュールを利用している.Galatea DMの改良に伴って,追加サブモジュールに関しても改良や拡張,仕様変更が行なわれる予定である.
Galatea DMの補助機能として,Galateaの各種機能をテストできるGUI版Galatea Monitorが提供される.
DMが使用している構成でAMを実行し,Galatea Monitorを用いて各サブモジュールのテストが可能である.
$ cd /home/demo/galatea-v3.0 $ cd AM $ perl ./AgentManager.pl -C ../DM/Modules/am4dm.conf
Galatea Monitorの画面は,メニューバーと,上下2つのログ表示画面から構成される.
Galatea Monitorの各メニュー項目の機能は以下の通りである.
SNDは,指定された音声ファイルを再生するサブモジュールである.
このモジュールの仕様は実験的なものであり,将来変更される可能性がある.
SNDは内部処理で/usr/bin/play
を使用している.
コマンドset Play
の値にファイル名の絶対パスを与える.再生開始と再生終了の時点でtell start
およびtell end
を送信する.
to @SND set Play = /usr/share/sndconfig/sample.au From @SND tell start /usr/share/sndconfig/sample.au From @SND tell end /usr/share/sndconfig/sample.au
PARは,音声合成の出力開始と同期して,複数のコマンドを逐次実行するサブモジュールである.
このモジュールの仕様は実験的なものであり,将来変更される可能性がある.
コマンドset Init = 1
は,出力リストの初期化を行なう.
コマンドset Cmd = sleep XXX
は,出力リストの末尾に,一定時間のウェイトを行なう命令を追加する.
コマンドset Cmd = to @XXX XXX
は,出力リストの末尾に,他のサブモジュールに対する出力命令を追加する.
出力リストの実行は,SSMからのSSMSpeak.stat = SPEAKING
を受信することによって開始する.
to @PAR set Init = 1 to @PAR set Cmd = sleep 1.0 to @PAR set Cmd = to @FSM set FaceExp = HAPPY 1 100 1000 to @PAR set Cmd = sleep 1.4 to @PAR set Cmd = to @FSM set FaceExp = SAD 1 100 1000 to @PAR set Cmd = sleep 2.0 to @PAR set Cmd = to @FSM set FaceMot = NOD 1 to @AM-MCL set Speak = 私には、うれしいことも、悲しいことも、いろいろあります。
GUIは,音声認識と併用してユーザにボタンを押すといった操作を行なわせるサブモジュールである.数字ボタンと,値を変更可能な命令ボタン(F1-F8)を備える.
このモジュールの仕様は実験的なものであり,将来変更される可能性がある.
GUIは標準では無効になっている.有効化するにはDM/Modules/am4dm.confを変更すること.
module:GUI commands:cd ../DM/Modules ; ruby ./GUI.rb
コマンドset Text
は,テキスト表示部分に表示する文字列を指定する.
コマンドset F1
,set F2
などは,命令ボタンに表示する文字列と,命令ボタンが押された時にGalatea DMに送信する文字列を指定する.
to @GUI set Text = message to @GUI set F1 = 5分 ゴフン
SIMおよびDM-MCLは,Galatea DMや他の追加サブモジュールの処理を支援する補助的なサブモジュールである.
これらのモジュールは実験的なものであり,完成度が高くなった時点で仕様を公開する予定である.