MiyabiTane/jsk_pr2eusのdeco_with_robotブランチ
詳細は以下2つのリポジトリ
Dialogflowを用いてテキストから13種の表情を割り当てる▷facial_expression/text_to_expression
Webページで眉毛を作る▷facial_expression/web_nodejs
ノートPC内で全て試せる簡単な試し方。
dialogflow_task_executive
をビルドしていなければビルドする
$ mkdir -p eyebrows_ws/src
$ cd eyebrows_ws/src
$ git pull https://github.com/jsk-ros-pkg/jsk_3rdparty.git
$ cd ../
$ catkin b dialogflow_task_executive
$ source ~/eyebrows_ws/devel/setup.bash
- dialogflowのjsonファイルをダウンロードし、<json_path>の場所に置く。それぞれのコマンドを別ターミナルで実行する
$ cd facial_expression/text_to_expression
$ python dialogflow_run.py --json-path <json_path> --no-sample
# 送信した内容をロボットに喋らせたい場合は
# $ python dialogflow_run.py --json-path <json_path> --no-sample --with-speak
$ cd facial_expression/web_nodejs/ver_13types
$ python run.py --no-roscore
-
2つのWebページにアクセスする▷ http://localhost:3000/lbrow, http://localhost:3000/rbrow
-
任意のテキストをPublishする。以下は"嬉しい"を送る例。Webページ上の眉毛の動きが変化する。
$ rostopic pub -1 /text std_msgs/String "data: '嬉しい'"
※文章の内容によっては動きが変化しない場合がある。
Chaplusの雑談APIを使用。
-
公式ページにメールアドレスを登録してAPI Keyを入手する。
-
chaplus_rosリポジトリをcloneした後、apikey.jsonの値を入手したものに書き換える。
{"apikey": "0123456789"}
- launchファイル内に以下を記述する。
<!-- add ChaPlus -->
<arg name="chatbot_engine" default="Chaplus" />
<node pkg="chaplus_ros" type="chaplus_ros_custom.py" name="chaplus_ros"
output="screen" >
<rosparam subst_value="true">
chatbot_engine: $(arg chatbot_engine)
</rosparam>
</node>
/request
をSubscribeして/response
をPubrishする。型はどちらもstd_msgs/String
- エージェントのタイプや、特定の質問に対する返答を指定したい場合など、APIをカスタマイズしたい場合はcustom.jsonを書き換える。詳細と書き換え方は雑談応答API公式ページの一番下に載っているサンプルコードを参考にする。