Join the Bot Libre open source project at BotLibre.org
Self, AIML, and scripting

AIML wild card example not working

by joker_don posted Feb 20 2017, 1:48

<aiml>
    <category>
        <pattern>* HELLO *</pattern>
        <template>Hello to you too</template>
    </category>
</aiml>

Should "Hello" respond with "Hello to you too" or should it only give the response when you have "randomWord hello randomWord" because the latter is what i experiencing with a blank slate bot. Should the * also man nothing? Also this bot simply repeats anything you tell it, how can i stop it doing that and give it a library of sentences to use in the event of no valid programmed response?

Thankyou


by joker_don posted Feb 20 2017, 5:15

use ^ instead of * then it works and you can set new default responses were you review your bots chat history ect


Thumbs up: 0, thumbs down: 0, stars: 0.0
Views: 1693, today: 0, week: 1, month: 19

by admin posted Feb 20 2017, 8:03
I think you answered your own question.
Correct, in AIML * mean "one or many" words, and ^ means "zero or many" words.

Bot Libre has a "default" response that you can set in your bot. You can set multiple default responses and the bot will use one at random. If the bot has no default response, it will repeat the users question back to them (mimic them).
AIML has no direct concept of a default response, but you can set a "*" pattern to define a default response in AIML.

Thumbs up: 0, thumbs down: 0, stars: 0.0
Views: 1794, today: 1, week: 3, month: 20

Id: 15541421
Posted: Feb 20 2017, 1:48
Updated: Feb 20 2017, 7:59
Replies: 2
Views: 2406, today: 1, week: 4, month: 23
0 0 0.0/5