如何在一个月的某一天使用条件标签触发响应



我在一个月的某一天让我的aiml聊天机器人做出响应时遇到了问题。

我在僵尸网络上制作聊天机器人。我在我的aiml聊天机器人中尝试了这个代码,但没有成功。

<pattern>date</pattern>
<template>
<think><set name="day of the month"><date format="%B %d"/></set></think>
<condition name="day of the month">
<li value="December 29">it's the twenty ninth.</li>
<li value="November 06">it's the sixth. How are you?</li>
</condition>

预期结果是第二十九次
实际上aiml聊天机器人没有响应。

这是有效的AIML,应该有效。它在Pandorabots.com 上运行良好

修改你的类别(如下所示(,使其显示你的谓词,你可以看到"月的哪一天"设置为什么。我的建议是省略谓词名称中的空格,将其设置为"月的那一天",甚至只设置为"天",因为Botlibre可能不喜欢带空格的谓词。

<category>
<pattern>date</pattern>
<template>
<set name="day of the month"><date format="%B %d"/></set>
<condition name="day of the month">
<li value="December 29">it's the twenty ninth.</li>
<li value="November 07">it's the seventh. How are you?</li>
<li>day of the month = <get name="day of the month"/></li>
</condition>
</template>
</category>

AIML提示我建议您使用<条件>总是包括一个catchall<李>正如我上面所做的。这样,如果没有匹配的东西,你的机器人至少会做出回应,而不是让用户挂起。

最新更新