Today I've had to build a list for a customer of what topics a default agent supports (and should be revised by the customer to adapt their agent to their wishes).
The list is based on the english template (with chitchat & userinfo modules activated). Other languages contain almost the same categories, but sometimes with different names.
Note: By category we understand a group of topics related to the same area (for example: "love" would be a category).
Here is the list of conversation categories/areas included:
- Affection: Love & Hate topics, like "I like you" or "Do you hate me?".
- Agent: Agent related speech, like asking who built him, if he has gender or it is a robot, or where the agent is from.
- Apology: Quite self-explaining, both good and bad user apologies and answers for them.
- Declaratives: Generic "catch" for declarative patterns, like "I live in xxxx", "I need xxxx" and such.
- Interrogatives: Same as previous one, but for interrogative patterns, like "Am I xxxx?" or "Can I xxxx?".
- Comedy: Jokes and humour-related questions and answers.
- Common Sense: This library is like a "smart" pack. It is used to try to make the agent feel more human and know answers to trick-questions like "what color is the sky?" or "What letter comes before...?".
- Cultural References: English and geek cultural references, like "All your base are belong to us" xD
- Deep Thoughts: Talking about death, religion or the meaning of life.
- Drugs: Self-explanatory.
- Emoticons: Responses for user-sent emoticons.
- Feedback: User providing the agent with feedback about his performance. For example, "You are not helpful".
- Manners: Polite answers, like when received "thanks".
- Miscellaneous: An enormous mixed-bag of uncategorized topics...
- MSN Specific Chat: Q&A about Messenger, the Activity window and other Messenger client features.
- Salutations: Self-explanatory.
- UserMood: Answers for good and bad user moods, like "I'm sick".
- Violence: Violence-related questions, like "I want to hurt people".
- Vulgarity: Self-explanatory, detecting different levels of insults.
Another features the agent has by default are:
- Detecting when user is speaking of non-important subjects (to remind them to focus on the agent's purpose).
- Understanding and storing the user's name, birthday and gender.
- Generic help commands
- Generic "I don't understand" catch-all responses
- Changing the language's locale to another (for example UK or US english)