Download アプリケーション開発ガイド

Transcript
Developer Documentation
アプリケーション開発ガイド
(SPC/PAPPS 共通)
© 2012 FUJISOFT INCORPORATED. All rights reserved.
目 次
1.はじめに ..................................................................... 2
1.1 本 書 対 象 者 ................................................................................... 2
1.2 PALRO システムソフトウェアのバージョン..................................................... 2
1.3 事 前 準 備 ..................................................................................... 2
2.なにを作 ろう? .............................................................. 3
3.アプリケーションに必 要 なファイルを用 意 しよう ............................ 4
3.1 アプリケーションに必 要 なファイル ............................................................. 4
4.プログラミングしよう ......................................................... 6
4.1 ヘッダファイルを作 成 する ..................................................................... 6
4.2 ソースファイルを作 成 する ..................................................................... 7
4.3 makefile を作 成 する......................................................................... 9
4.4 プログラムファイルを作 成 する .............................................................. 10
5.PALRO にインストールしよう ............................................ 11
5.1 インストールのための準 備 .................................................................. 11
5.2 インストールする ............................................................................ 12
5.3 テストする ................................................................................... 13
5.4 アンインストールする ........................................................................ 13
6.PALRO Garden に公 開 しよう ......................................... 14
7.アプリケーションを拡 張 しよう ............................................. 15
7.1 アプリケーションに個 別 情 報 を追 加 したい .................................................. 15
7.2 プライベート会 話 ファイルを使 用 したい ...................................................... 19
1
1.はじめに
本 書 は、Sapie Program Component(以 降 、SPC)、および PALRO Applications(以 降 、
PAPPS)の開 発 ならびにインストールについて説 明 します。
また、本 書 ではサンプルを使 用 して説 明 しますが、明 記 しない限 り SPC を対 象 としています。PAPPS
については、別 冊 ” PAPI(PALRO Application Programming Interface) リファレンス ” 、
” SAPI(Sapie Application Programming I nterface) リファレンス ” ならびに、開 発 環 境
【 アプリケーション開 発 用 VMware イメージ 】 に含 まれるサンプルソースを参 照 してください。
特長
SPC
PAPPS
(Sapie Program Component)
(PALRO Applications)
話 す・聞 く・歩 くなどの命 令 をシーケン
プリミティブな API(PAPI/SAPI)で、独
シャルに記 述 するシ ンプルなインターフ
自 に PALRO を制 御 するインターフェー
ェースで、簡 単 に機 能 を追 加 可 能
スが提 供 され、複 雑 な機 能 を追 加 可 能
難易度
やさしい
難 しい
高い
低い
バージョン差 異
による互 換 性
1.1 本 書 対 象 者
本 書 は PALRO の使 用 方 法 について既 に知 識 のある方 を前 提 としています。
加 えて、以 下 の項 目 の有 識 者 を対 象 としています。
 プログラミング言 語 C++
 Ubuntu Linux 上 でのソフトウェア開 発 経 験
1.2 PALRO システムソフトウェアのバージョン
本 書 の内 容 は、PALRO システムソフトウェアバージョン 3.2 を対 象 としています。
1.3 事 前 準 備
(1) 開 発 環 境 の構 築
詳 細 は、PALRO Garden の 【 デベロッパー 】 - 【 ドキュメント 】 内 の ” アプリケー
ション開 発 環 境 構 築 ガイド ” を参 照 してください。
アプリケーション開 発 用 VMware イメージ には、PAPPS のサンプルソ
ースが含 まれています。PAPPS 開 発 の際 は、参 考 にしてください。
インストール先 : /usr/local/src/papps/
(2) PALRO Application Studio のインストール
詳 細 は PALRO Garden の 【 デベロッパー 】 - 【 ドキュメント 】 内 の ” PALRO
Application Studio ガイド ” を参 照 してください。
2
2.なにを作ろう?
誰 をどうやって驚 かせましょうか?
どんな風 に喜 んでもらいましょうか?
あなたにそ のア プリケーションの イメージ と、ちょっとした Linux と C/C++の知 識 、それと
PALRO さえあれば、今 まで誰 も体 験 したことのないような驚 きをあなたが提 供 することがで
きるのです。
アプリケーション(SPC) を開 発 することで、PALRO に簡 単 にオリジナルの機 能 を追 加 することがで
きます。
人 を見 たり、手 を動 かして話 すなどの基 本 的 な動 作 は、すべてシステムソフト ウェアが代 行 するた め、
開 発 者 は機 能 だけを考 えれば良 いことになります。
SPC が提 供 する機 能 については、別 冊 ” SPC(Sapie Program Component) リファレンス ”
を参 照 してください。
本 書 では、【 SampleComponent 】 という名 前 のサンプルアプリケーションを例 に、SPC の作 り
方 を説 明 します。
SampleComponent は、以 下 の動 きをするアプリケーションです。
(1) PALRO に 『 テストやって。 』 と話 しかけると、
(2) 顔 の LED に「 P 」と表 示 され、
(3) 左 腕 を上 にあげて、
(4) 「ぼくの名 前 はパルロです。」と発 話 する。
テストやって。
ぼくの名前は
パルロです。
3
3.アプリケーションに必要なファイルを用意しよう
なにを作 るか決 まったら、PALRO のアプリケーションを構 成 するファイルを用 意 します。
PAPPS についても同 様 に、必 要 なファイルを用 意 します。
3.1 アプリケーションに必 要 なファイル
PALRO のアプリケーションを構 成 するファイルを以 下 に示 します。
SampleComponent では、下 記 の「(1) (2) (3) (4) (5)」を使 用 します。
(1)
プログラムファイル(必 須 )
アプリケーションの実 行 ファイルです。作 成 方 法 については ” 本 書 4. プログラミングし
よう ” を参 照 してください。
(2)
アプリケーションコンフィグファイル(必 須 )
アプリケーションをインストールする際 に必 要 な登 録 情 報 や、アプリケーションの動 作 に必
要 な設 定 値 を定 義 した XML 形 式 のファイルです。詳 細 は、別 冊 ” PALRO Application
Studio ガイド ” を参 照 してください。
(3)
トリガーワードファイル(任 意 )
アプリケーションを起 動 するためのトリガーワードを定 義 したテキスト形 式 のファイルです。
アプリケーションの起 動 を音 声 で行 う場 合 に必 要 です。詳 細 は、別 冊 ” PALRO
Application Studio ガイド ” を参 照 してください。
SampleComponent 用 のア プリケーシ ョンコンフィグファイル、およびトリガ ー
ワードファイルを作 成 する場 合 、PALRO Application Studio の設 定 項 目 は
以 下 のように設 定 してください。
項目
設定内容
アプリケーション名
SampleComponent と入 力 する
カテゴリ
指 定 なしを選 択 する
※ カテゴリを入 力 すると、PALRO がゲームやクイズを提 案 す
るときに、開 発 したアプリケーションが選 ばれる可 能 性 があ
ります。
4
項目
設定内容
SPC/PAPPS
SPC(Sapie Program Component)を選 択 する
※ PAPPS の場 合 は、【 PAPPS 】 を選 択
タイトル
PALRO Sample と入 力 する
読み
パルロサンプルと入 力 する
アプリケーションのトリガーワ
チェックを入 れる
ードを作 成 する
始 めるときのトリガーワード
テスト を やって/して と入 力 する
終 わるときのトリガーワード
チェックを入 れない
(4)
PALRO LED ファイル(任 意 )
PALRO の顔 の LED の表 示 内 容 を定 義 したファイルです。詳 細 は、別 冊 ” PALRO
Application Studio ガイド ” を参 照 してください。
SampleComponent で使 用 する PALRO LED ファイルは、
SampleLED.led という名 前 で作 成 します。なお、PALRO Garden の 【 デ
ベロッパー 】 - 【 ドキュメント 】 - 【 アプリケーション開 発 ガイド 】 にある
【 本 書 で使 用 した PALRO LED ファイルはこちら 】 からダウンロードすること
もできます。
(5)
PALRO モーションファイル(任 意 )
PALRO の動 きを定 義 したファイルです。バンザイや敬 礼 など特 定 の動 作 や、ダンスなどを
PALRO に実 行 させる際 に必 要 です。詳 細 は、別 冊 ” PALRO Motion Editor ガイド ”
を参 照 してください。
SampleComponent で使 用 する PALRO モーションファイルは、
SampleMotion.act という名 前 で作 成 します。なお、PALRO Garden の
【 デベロッパー 】 - 【 ドキュメント 】 - 【 アプリケーション開 発 ガイド 】 に
ある 【 本 書 で使 用 した PALRO モーションファイルはこちら 】 からダウンロ
ードすることもできます。
(6)
プライベート会 話 データファイル(任 意 、PAPPS 専 用 )
アプリケーションが専 用 で使 用 する会 話 データを定 義 したテキスト形 式 のファイルです。ア
プリケーションの実 行 中 に独 自 の会 話 を行 う PAPPS を作 成 する場 合 に必 要 です。
SPC を開 発 する場 合 は、専 用 の AP I が用 意 されていますので、プライベート会 話 データフ
ァイルを作 成 する必 要 はありません。作 成 方 法 については ” 本 書 7.2 プライベート会
話 ファイルを使 用 したい ” を参 照 してください。
5
4.プログラミングしよう
アプリケーションに必 要 なファイルが準 備 できたら、SampleComponent のプログラムファイルを
作 成 します。
プログラムソースの文 字 コードは、必 ず UTF-8N(BOM 無 し)を使 用 してくださ
い。これ以 外 の文 字 コードでは、正 しく動 作 しない場 合 があります。
ここで説 明 していない SPC の内 容 については、別 冊 ” SPC(Sapie Program
Component) リファレンス ” を参 照 してください。
4.1 ヘッダファイルを作 成 する
ヘッダファイルの内 容 を以 下 に記 載 します。この内 容 を SampleComponent.h というファイ
ル名 で保 存 してください。
#ifndef _SAMPLE_COMPONENT_H_
#define _SAMPLE_COMPONENT_H_
// ヘッダファイル ····················································· (1)
#include <spc/spcbase.h>
using namespace spc;
// 作 成 する SPC のクラス ··········································· (2)
class CSampleComponent : SPCBase {
public:
// コンストラクタ
CSampleComponent();
// デストラクタ
~CSampleComponent();
// SPC 実 行 開 始 イベント ································· (3)
void onInitialize();
};
#endif // _SAMPLE_COMPONENT_H_
6
(1)
SPC 作 成 用 のヘッダファイルです。
(2)
SPC は、SPCBase クラスを継 承 して作 成 します。このクラスには、発 話 要 求 、質 問 要 求 、
歩 行 要 求 など、PALRO の基 本 機 能 を実 行 するためのメソッドが定 義 されています。
(3)
onInitialize 関 数 は、SPC の起 動 前 に一 度 だけ実 行 されるコールバック関 数 です。
SPCBase クラスには、この他 にも顔 認 識 や動 体 検 知 時 などに実 行 されるコールバック関
数 が定 義 されています。
4.2 ソースファイルを作 成 する
ソースファイルの内 容 を以 下 に記 載 します。この内 容 を SampleComponent.cpp というフ
ァイル名 で保 存 してください。
#include "SampleComponent.h"
// SPC のインスタンスを定 義 する ········································ (1)
CSampleComponent spcApp;
// コンストラクタ
CSampleComponent::CSampleComponent() {
}
// デストラクタ
CSampleComponent::~CSampleComponent() {
}
//SPC 初 期 化 イベント ···················································· (2)
void CSampleComponent::onInitiali ze() {
// 顔 の LED 表 示 ············································· (3)
startLED("/usr/palro/etc/apl/SampleComponent/SampleLED.led");
// モーションを実 行 ············································ (4)
makeMotion("/usr/palro/etc/apl/SampleComponent/SampleMotion.act");
// 発 話 ························································ (5)
speak("こんにちは、ぼくの名 前 は、パルロです ");
// SPC の終 了 ················································ (6)
exitComponent();
}
7
(1)
作 成 する CSampleComponent クラスのインスタンスを、「spcApp」という名 前 で定 義
してください。これは、SPC ライブラリが開 発 者 の作 成 した関 数 を呼 び出 すための規 約 で
す。
(2)
SPC の処 理 は、SPCBase クラスで定 義 されたコールバック関 数 をオーバーライドして作
成 します。
(3)
startLED 関 数 (顔 の LED の表 示 )には、PALRO LED ファイルのパスを指 定 します。
SampleComponent で使 用 する PALRO LED ファイルは、インストールすると以 下 のパ
スに格 納 されます。詳 しくは、” 本 書 5. PALRO にインストールしよう ” を参 照 してくださ
い。
インストール先 : /usr/palro/etc/apl/SampleComponent/
(4)
makeMotion(モーションの実 行 )には、PALRO モーションファイルのパスを指 定 します。
SampleComponent で使 用 する PALRO モーションファイルは、「(3)の PALRO LED フ
ァイル」と同 じ場 所 にインストールされます。
(5)
speak 関 数 (発 話 )には、発 話 したい文 字 列 を指 定 してください。
(6)
exitComponent 関 数 は、SPC を終 了 するための関 数 です。
exitComponent 関 数 を 呼 び 出 さ な くて も 、 シ ステ ム ソ フ ト ウ ェア が自 動 的 に
SPC の実 行 を中 止 する場 合 があります。(PALRO が持 ち上 げられた場 合 など)
8
4.3 makefile を作 成 する
SampleComponent の makefile を以 下 に記 載 します。この内 容 を makefile というファイ
ル名 で保 存 してください。
OUTPUT_DIR=.
MOD_NAME=SampleComponent
MOD_SRC=SampleComponent.cpp
MOD_LIB=$(OUTPUT_DIR)/$(MOD_NAME)
MOD_OBJ=$(MOD_SRC:.cpp=.o)
DEP=$(MOD_SRC:.cpp=.d)
INC_PATH=-I./
CFLAGS=-Wall -c -Wno-deprecated
LFLAGS=-Wl
LIB_PATH=-L/usr/local/lib/
LIB_FILE=-lspcif -lspc ······································································ (1)
all:release
release:CFLAGS+=-O3
release:$(MOD_LIB)
debug:CFLAGS+=-g
debug:$(MOD_LIB)
$(MOD_LIB):$(MOD_OBJ)
[TAB]$(CXX) $(LFLAGS) -o $@ $(MOD_OBJ) $(LIB_PATH) $(LIB_FILE ) ······· (2)
.cpp.o:
[TAB]$(CXX) $(CFLAGS) $(INC_PATH) -MMD -MP -MF"$(@:%.o=%.d)" -o"$@" "$<"
clean:
[TAB]rm -f $(MOD_OBJ) $(MOD_LIB) $(DEP ) ········································ (2)
-include $(DEP)
9
(1)
SPC の実 行 に必 要 なライブラリとして、「libspcif」および、「libspc」を指 定 します。
(2)
「 [TAB] 」には、タブ文 字 を入 力 してください。
4.4 プログラムファイルを作 成 する
作 成 したヘッダファイル、ソースファイル、makefile を同 じディレクトリに格 納 し、以 下 のコマンド
を実 行 してください。
$ make
SampleComponent という名 前 のプログラムファイルが作 成 されれば完 了 です。
10
5.PALRO にインストールしよう
ここでは、開 発 したプログラムファイル(SampleComponent)を PALRO にインストールするため
の手 順 を説 明 します。
PAPPS についても同 様 の手 順 でインストールおよび実 行 することができます。
5.1 インストールのための準 備
アプリケーションをインストールするために、必 要 なファイルを準 備 します。
以 下 に、” 本 書 4. プログラムミングしよう ” で開 発 した SampleComponent を例 にファ
イル構 成 を示 します。
[ アプリケーション名 ]
├ SampleComponent
├ [ etc ]
|
├ SampleComponent.conf.xml
|
├ SampleComponent.ukb
|
├ SampleLED.led
|
├ SampleMotion.act
|
└ その他 のファイル(音 楽 ファイルなど)
└ [ src ]
├ SampleComponent.cpp
├ SampleComponent.h
└ makfile
※ [] はフォルダー
[ etc ]フォルダーに格 納 されたファイルは、全 て PALRO にインストールされま
す。アプリケーションで必 要 なファイルは、全 てここに格 納 してください。
インストール先 : /usr/palro/etc/apl/(プログラムファイル名 )/
プログラムソースを他 の開 発 者 またはユーザーに公 開 する場 合 は、[ src ]フォ
ルダーに格 納 してください。
11
5.2 インストールする
アプリケーションのインストールは、PALRO Application Studio を使 用 します。詳 細 は、別
冊 ” PALRO Application Studio ガイド ” を参 照 してください。
PALRO Application Studio を起 動 したのち、 【 インストール 】 画 面 にて必 要 な項 目 を入
力 してください。
【 パッケージの生 成 】 を実 行 したのち 【 PALRO へのインストール 】 をクリックすると、アプ
リケーションが PALRO にインストールされます。
項目
設定内容
プログラムファイル
プログラムファイル を指 定 する
※ ここでは、SampleComponent を指 定
アプリケーションプロパティの
” 本 書 5.1 インストールのための準 備 ” で作 成 した
保 存 フォルダー
[ etc ]フォルダーを指 定 する
ソースファイルの保 存 フォルダ
” 本 書 5.1 インストールのための準 備 ” で作 成 した
ー
[ src ]フォルダーを指 定 する
※ プログラムソースを公 開 する場 合 のみ必 要
12
5.3 テストする
アプリケーションのインストールが完 了 したら、実 際 に動 作 を確 認 できます。
SampleComponent では、” 本 書 3.1 アプリケーションに必 要 なファイル ” でトリガーワー
ド「テスト を やって/して」を設 定 したので、PALRO に 『 テストやって 』 と話 しかければ、
SampleComponent が起 動 します。
テストやって。
また、開 発 したアプリケーションをテストしたい場 合 は、PALRO Application Studio でデバッ
グ用 のログが表 示 できます。詳 細 は、別 冊 ” PALRO Application Studio ガイド ” を参 照
してください。
5.4 アンインストールする
インストールしたアプリケーションは、PALRO コントロールパネルを使 用 してアンインストールし
ます。詳 細 は、別 冊 ” 取 扱 説 明 書 【基 本 操 作 】 ” を参 照 してください。
PALRO コントロールパネルの 【 アプリケーション 】 をクリックし、一 覧 の中 から削 除 したいア
プリケーションの 【 削 除 】 をクリックしてください。
プログラムファイルを修 正 して 再 度 インストールする 場 合 、アンインスト ールする
必 要 はありません。” 本 書 5.2 インストールする ” に従 ってインスト ールして
ください。
13
6.PALRO Garden に公開しよう
開 発 したアプリケーションは PALRO Garden にアップロードすることで、他 の開 発 者 またはユーザー
に公 開 することができます。 あなたが開 発 したオリジナルのアプリケーションを、たくさんの人 に使 って
もらいましょう。
詳 細 は、PALRO Garden の 【 デベロッパー 】 - 【 ドキュメント 】 内 の ” アプリケーションアッ
プロードガイド ” を参 照 してください。
ア ッ プ ロ ー ド す る ア プ リ ケ ー シ ョ ン は 、 事 前 に PALRO Application
Studio を使 用 して十 分 に動 作 確 認 したのち、アップロードしてください。
14
7.アプリケーションを拡張しよう
ここでは、開 発 したアプリケーションを拡 張 する方 法 を説 明 します。
7.1 アプリケーションに個 別 情 報 を追 加 したい
PALRO コントロールパネルを使 用 すると、アプリケーションの動 作 パラメータなどを設 定 するこ
とができます。ここでは、PAPPS のサンプルアプリケーションである PALRO Count Sheep
を例 に、アプリケーションの設 定 項 目 を追 加 する方 法 を説 明 します。
PALRO Count Sheep は、アプリケーション開 発 用 VMware イメージ に
含 まれています。
インストール先 : /usr/local/src/papps/CountSheep/
また、PALRO Garden の 【 デベロッパー 】 - 【 ドキュメント 】 - 【 アプ
リ ケ ー シ ョ ン 開 発 ガ イ ド 】 に あ る 【 本 書 で 使 用 し た PALRO Count
Sheep はこちら 】 からもダウンロードできます。
PALRO Count Sheep は、ユーザーが設 定 した最 大 値 まで、羊 または執 事 を数 える、という
アプリケーションです。アプリケーションに設 定 項 目 を持 たせるには、アプリケーションコンフィ
グファイルを編 集 し、設 定 する項 目 を記 述 する必 要 があります。
PALRO Count Sheep は、以 下 の二 点 をユーザーが設 定 できるようにしています。
 カウントする最 大 値 (以 下 の設 定 例 : <title>数 え上 げ数 </title>)
 数 える対 象 (以 下 の設 定 例 : <title>数 え上 げ対 象 </title>)
これらの設 定 項 目 を記 述 した、アプリケーション コンフィグファイルの内 容 は以 下 の通 りです。
設 定 例 の網 掛 け部 分 は、PALRO Application Studio で自 動 的 に作
成 されるため、詳 細 説 明 を省 略 します。
15
<?xml version="1.0" encoding="utf-8"?>
<palro_application name="CountSheepApp" version="3.2.0" rele
asedate="2012/11/09" type="PAPPS" mode="transient" appk ind
="other" language="ja">
<title>PALRO Count Sheep</title>
<titlespk> カウントシープ</titlespk>
<description>PAPPSでアプリケーションコンフィグファイルを読 み込 むサンプ
ルアプリケーションです。</description>
<section order="1" name="common">
…(1)
<title>動 作 設 定 </title>
…(2)
<description></descriptio n>
…(3)
<configuration order="1" name="count" display="yes" modi
…(4)
fy="yes" conftype="text" formtype="text">
<title>数 え上 げ数 </title>
…(5)
<description>幾 つまで数 え上 げるかを設 定 します。(1~10)</descr
iption>
…(6)
<value>10</value>
…(7)
<defaultvalue>10</defaultvalue>
…(8)
</configuration>
<configuration order="2" name="kind" display="yes" modif
y="yes" conftype="text" formtype="text">
<title>数 え上 げ対 象 </title>
<description>0:ひつじ 1:しつじ</description>
…(9)
<value>0</value>
<defaultvalue>0</defaultvalue>
</configuration>
</section>
</palro_application>
:自 動 生 成 された部 分
16
タグ
(1)section
属性
設定内容
設 定 項 目 の大 分 類 を定 義 します。
大 分 類 は複 数 定 義 できますが、以 下 の属 性 値 を重 複 させることはできません。
order
【 コントロールパネル 】 - 【 アプリケーション 】 - 【 設
定 】 で表 示 される順 序 を定 義 します。複 数 の大 分 類 を定
義 した場 合 、ここで指 定 した値 が小 さい順 に表 示 されます。
※ 半 角 数 字 を使 用 します。
name
システムソフトウェアが大 分 類 を識 別 するための識 別 子 を
定 義 します。
※ 半 角 数 字 を使 用 し、他 の大 分 類 と重 複 しない識 別 子 を
定 義 します。
(2)tit le
大 分 類 の名 称 を定 義 します。
(3)description
大 分 類 の説 明 を定 義 します。
(4)configuration
設 定 項 目 の小 分 類 を定 義 します。
小 分 類 は複 数 定 義 できま すが、以 下 の属 性 値 を 重 複 させる こと はできま せ
ん。
order
【 コントロールパネル 】 - 【 アプリケーション 】 - 【 設
定 】 での表 示 で、大 分 類 の中 での表 示 順 序 を定 義 しま
す。複 数 の小 分 類 を定 義 した場 合 、ここで指 定 した値 が小
さい順 に表 示 されます。
※ 半 角 数 字 を使 用 します。
name
システムソフトウェアが小 分 類 を識 別 するための識 別 子 を
定 義 します。
※ 半 角 数 字 を使 用 し、他 の小 分 類 と重 複 しない識 別 子 を
定 義 します。
display
小 分 類 を表 示 する場 合 は yes を、表 示 しない場 合 は
no を定 義 します。
modify
設 定 項 目 の変 更 可 否 を定 義 します。現 在 は yes (変 更
可 能 ) のみ対 応 しているため、yes を定 義 します。
conftype
設 定 項 目 のタイプを定 義 します。現 在 は text (テキストボ
ックス) のみ対 応 しているため、text を定 義 します。
formattype
入 力 できるフォーマットを定 義 します。現 在 は text (テキス
ト入 力 ) のみ対 応 しているため、text を定 義 します。
(5)tit le
小 分 類 の名 称 を定 義 します。
(6)description
小 分 類 の説 明 文 を定 義 します。
(7)value
【 コントロー ルパネル 】 - 【 ア プ リケー ション 】 - 【 設 定 】 で表 示 さ れる
画 面 で入 力 された値 を保 持 します。
(8)defaultvalue
将 来 拡 張 用 のタグです。定 義 する必 要 はありません。
(9)configuration
「(4) ~ (8)」と同 様 に、二 つ目 以 降 の小 分 類 を定 義 します。
17
編 集 したアプリケーションコンフィグファイルをインストールし、【 PALRO コントロールパネ
ル 】 の 【 アプリケーション 】 から 【 PALRO Count Sheep 】 の 【 設 定 】 選 択 する
と、記 述 した設 定 項 目 が表 示 されます。
また、アプリケーション(SPC)から設 定 値 を取 得 する場 合 は、loadConfig 関 数 を使 用 します。
上 記 の例 での[数 え上 げ数 ]を取 得 するには、以 下 のように記 述 します。
loadConfig(”common”, ”count”, value);
第 一 引 数 に大 分 類 名 、第 二 引 数 に小 分 類 名 を指 定 すると、第 三 引 数 に設 定 値 が返 ります。
詳 細 は、別 冊 ” SPC(Sapie Program Component) リファレンス ” を参 照 してください。
18
7.2 プライベート会 話 ファイルを使 用 したい
プライベート会 話 データファイルは、トリガーワードにより起 動 されたアプリケーションが専 用 で使
用 する会 話 のデータを定 義 するもので、PAPPS を作 成 する際 に使 用 することができます。例 え
ば、アプリケーションの処 理 中 に、質 問 をする場 面 があった場 合 、プライベート会 話 データファイ
ルに音 声 認 識 させる言 葉 を定 義 することで、専 用 の音 声 認 識 を行 うことができます。尚 、 SPC
を作 成 する場 合 は、専 用 の API が用 意 されていますので、プライベート会 話 データファイルを作
成 する必 要 はありません。
7.2.1 プライベート会 話 データファイル作 成 時 の注 意 点
作 成 時 は以 下 の点 に注 意 し、テキストエディターで作 成 します。

漢 字 コード: EUC_JP

改 行 コード: LF(0x0a)

全 て全 角 文 字 で記 載

項 目 間 はタブ区 切 り

拡 張 子 :.ukb

ファイル名 : アプリケーション名 _private.ukb (例 : MyApp_private.ukb)
7.2.2 プライベート会 話 データファイルで定 義 する内 容
プライベート会 話 データファイルでは、以 下 の情 報 を定 義 します。
①
ユーザー辞 書
以 下 で示 す、③ ユーザー発 話 に指 定 する文 の “読 み”をカタカナで指 定 します。全
てのユーザー発 話 について、1 行 1文 で“読 み”を指 定 してください。また、ひとつ
の文 に、複 数 の“読 み”を指 定 することができます。
②
会 話 タイトル
会 話 のタイトルを定 義 します。
③
ユーザー発 話
ユーザーが PALRO に話 しかける言 葉 です。
※ ひとつの会 話 タイトルの中 で、同 じ言 葉 を使 用 することはできません。
④
回 答 テキスト
上 記 ③ で指 定 したユーザー発 話 を音 声 認 識 した際 にアプリケーションが受 け取 る
ことができるテキストデータです。ユーザー発 話 に対 して PALRO が答 える処 理 に
使 うなど、自 由 に使 用 することができます。
19
⑤
回答付加情報
上 記 ③で指 定 したユーザー発 話 を音 声 認 識 した際 に対 応 するアプリケーション名
と、そのアプリケーションに引 き渡 す情 報 です。以 下 のフォーマットに従 い記 載 す
る必 要 があります。
文 字 列 の先 頭 に、/A=アプリケーション名 / と記 載 してくだい。上 記 ③で指 定 した
ユーザー発 話 の音 声 認 識 を行 った際 、ここで指 定 されたアプリケーションに音 声
認 識 したことを通 知 します。/A=アプリケーション名 / 以 降 は任 意 の文 字 列 を記
載 することができます。
※ 記 述 例 : /A=MyApp/ JAPAN
7.2.3 プライベート会 話 データファイル作 成 例
映 画 情 報 をお知 らせするアプリケーション(MyApp)が以 下 の流 れの会 話 を実 現 する場
合 の作 成 例 を示 します。
【発 話 の流 れ】
PALRO の発 話
ユーザーの発 話
① パルロ、上 映 中 映 画 教 えて
わかりました!どの国 の映 画 がお好 み
ですか?
② -1 日 本 /日 本 映 画 /邦 画
日 本 ですね。しばらくお待 ちください。
(日 本 の映 画 を回 答 する場 合 )
② -2 アメリカ/洋 画
アメリカですね。しばらくお待 ちください。
(アメリカ映 画 を回 答 する場 合 )
現 在 上 映 している映 画 は、・・・・・
『パルロ、上 映 中 映 画 教 えて』は、アプリケーションを起 動 するためのトリガーワードのた
め、ここでは説 明 を省 きます。上 記 例 の② -1 は、日 本 の映 画 を教 えてほしい場 合 に、ユ
ーザーが回 答 する言 葉 です。この例 では、『日 本 』『日 本 映 画 』『邦 画 』の3種 類 を想 定 し
ています。② -2 は、アメリカの映 画 を教 えてほしい場 合 です。この内 容 を定 義 する例 を以
下 に説 明 します。
20
日 本 [tab]ニホン[tab]ニッポン[LF]
※1
日 本 映 画 [tab]ニホンエイガ[tab]ニホンノエイガ[tab]ニッポンノエイガ[LF]
邦 画 [tab]ホウガ[LF]
アメリカ[tab]アメリカ[LF]
洋 画 [tab]ヨウガ[LF]
[LF]
映 画 情 報 [LF]
※2
日 本 [tab]日 本 映 画 [tab]邦 画 [LF]
※4
日 本 ですね。しばらくお待 ちください。[tab]/A=MyApp/ JAPAN [LF]
※5
アメリカ[tab]洋 画 [LF]
※6
アメリカですね。しばらくお待 ちください。[tab]/A=MyApp/ USA [LF]
※7
※3
※ 1) ユーザー辞 書 を登 録 します。この例 では、ユーザー発 話 である「日 本 」に対 し読 み
を2通 り定 義 しています。これは、指 定 した2通 りの読 みのうち、どれを発 話 しても
認 識 させる指 定 になります。また、「日 本 映 画 」に対 しても同 様 に読 みを3通 り定
義 しています。このように、ひとつの文 の読 みを1行 で複 数 指 定 できます。
※ 2) ユーザー辞 書 と会 話 タイトルの間 に1行 の空 行 を入 れてください。
※ 3) 会 話 タイトルを任 意 の内 容 で登 録 してください。
※ 4) ユーザー発 話 を登 録 します。同 じ意 味 として解 釈 する文 を複 数 指 定 することがで
きます。ここで指 定 した文 に対 しては、前 述 のユーザー辞 書 に読 みを登 録 する必
要 があります。
※ 5) 回 答 テキストと付 加 情 報 を1行 で登 録 します。
※ 6)~※ 7) 記 載 方 法 は、※ 4)、※ 5)と同 様 で、ユーザー発 話 の行 と回 答 テキスト・付
加 情 報 の行 を交 互 に指 定 できます。この例 では、日 本 や邦 画 を音 声 認 識 した際 、
アプリケーション(MyApp)は、回 答 文 として「日 本 ですね。しばらくお待 ちくださ
い。」を、付 加 情 報 として、「/A=MyApp/ JAPAN」を受 け取 ることができます。ま
た、アメリカや洋 画 を音 声 認 識 した際 、回 答 文 として「アメリカですね。しばらくお
待 ちください。」を、付 加 情 報 として、「/A=MyApp/ USA」を受 け取 ることができ
ます。
・製 品 仕 様 および本 書 の内 容 は予 告 なしに変 更 される場 合 があります。
・PALRO は、富 士 ソフト株 式 会 社 の登 録 商 標 です。その他 、記 載 されている会 社 名 、製 品 名 などは、各
社 の商 標 または登 録 商 標 です。
21
アプリケーションの開 発 に関 する技 術 的 な「Q&A」ホームページ
ア プリケーシ ョンの開 発 者 様 からよくあるお問 い合 わせと解 決 法 に
関 する情 報 を、以 下 のホームページで確 認 できます。
http://www.palrogarden.net/tecfaq/
アプリケーションの開 発 に関 する技 術 的 なお問 い合 わせ
PALRO Garden: http://www.palrogarden.net
パルロセンター
MAIL:[email protected]
富 士 ソフト株 式 会 社 〒231-8008 横 浜 市 中 区 桜 木 町 1-1
22