如何使用对话框启动 NAO 的行为?

How to launch a NAO's behaviour by using dialog?

我找到了一种通过在 Choregraphe 中创建对话框来启动行为的方法,但它不起作用。

对话框脚本如下:

u(keyword / key sentence): robot_response (optional) 
^start(applicationID/behaviour_1) 
^wait(applicationID/behaviour_1)

机器人(NAO,版本2.8.6.23)捕捉到我的关键字,说出预期的响应,但行为没有开始:机器人进入待机状态,我必须经常重新启动它。无论如何,该应用程序似乎 运行ning(通过查看活动内容)。我尝试 运行 手动操作该行为并且效果很好,所以我不明白我做错了什么...

PS:应用程序和对话框都安装在机器人应用程序上,当然。

你的其他行为是否使用对话?可能发生的情况是 applicationID/behaviour_1 尝试开始收听/激活对话,但立即失败,因为已经有对话 运行ning(您向我们展示的对话)。

^start 用于简单的行为,如动画,如果你想用它自己的逻辑实际启动另一个 activity 等。你应该使用 ^switchFocus 而不是 ^start - 什么这样做的目的是停止您当前进行此对话的行为(因此,不需要 ^wait),然后开始一个新的对话。这仅在自主生命处于活动状态时有效 - 自主生命的工作是协调活动,以便在给定时间只有一个处于活动状态,以防止由一种行为中的一些背景代码引起的错误导致另一种行为出现问题。

(“活动”基本上是旨在成为“顶级”的行为,例如应用程序或游戏,而不是像动画这样的小东西,在后台 运行 很好)