open class BotDefinitionBase : BotDefinition
(source)
Base implementation of BotDefinition.
<init> |
Constructor intended to be used by an enum. BotDefinitionBase(botId: String, stories: Array<out StoryDefinition>)
Base implementation of BotDefinition. BotDefinitionBase(botId: String, namespace: String, stories: List<StoryDefinition>, nlpModelName: String = botId, unknownStory: StoryDefinition = defaultUnknownStory, helloStory: StoryDefinition? = null, goodbyeStory: StoryDefinition? = null, noInputStory: StoryDefinition? = null, botDisabledStory: StoryDefinition? = null, botEnabledStory: StoryDefinition? = null, userLocationStory: StoryDefinition? = null, handleAttachmentStory: StoryDefinition? = null, eventListener: EventListener = EventListenerBase(), keywordStory: StoryDefinition = defaultKeywordStory, flowDefinition: DialogFlowDefinition? = null) |
botDisabledStory |
To manage deactivation. open val botDisabledStory: StoryDefinition? |
botEnabledStory |
To manage reactivation. open val botEnabledStory: StoryDefinition? |
botId |
The main bot id. Must be different for each bot. open val botId: String |
defaultUnknownAnswer |
The default unknown answer. open val defaultUnknownAnswer: I18nLabelValue |
eventListener |
To handle custom events. open val eventListener: EventListener |
flowDefinition |
open val flowDefinition: DialogFlowDefinition? |
goodbyeStory |
The goodbye story. Used when closing the conversation. open val goodbyeStory: StoryDefinition? |
handleAttachmentStory |
The story that handles ai.tock.bot.engine.action.SendAttachment action. If it's null, current intent is used. open val handleAttachmentStory: StoryDefinition? |
helloStory |
The hello story. Used for first interaction with no other input. open val helloStory: StoryDefinition? |
keywordStory |
To handle keywords - used to bypass nlp. open val keywordStory: StoryDefinition |
namespace |
The namespace of the bot. It has to be the same namespace than the NLP models. open val namespace: String |
nlpModelName |
The name of the main nlp model. open val nlpModelName: String |
noInputStory |
The no input story. When user does nothing! open val noInputStory: StoryDefinition? |
stories |
The list of each stories. open val stories: List<StoryDefinition> |
unknownStory |
The unknown story. Used where no valid intent is found. open val unknownStory: StoryDefinition |
userLocationStory |
The story that handles ai.tock.bot.engine.action.SendLocation action. If it's null, current intent is used. open val userLocationStory: StoryDefinition? |
toString |
open fun toString(): String |
defaultKeywordStory |
The default keywordStory. val defaultKeywordStory: SimpleStoryDefinition |
defaultUnknownStory |
The default unknownStory. val defaultUnknownStory: SimpleStoryDefinition |
deleteKeywordHandler |
The default handler used to delete the current user. fun deleteKeywordHandler(bus: BotBus, sendEnd: Boolean = true): Unit |
endTestContextKeywordHandler |
The default handler used to cleanup test context. fun endTestContextKeywordHandler(bus: BotBus, sendEnd: Boolean = true): Unit |
getKeyword |
Returns a (potential) keyword from the BotBus. fun getKeyword(bus: BotBus): String? |
handleWithKeywordListeners |
fun handleWithKeywordListeners(bus: BotBus, keyword: String?): Boolean |
testContextKeywordHandler |
The default handler used to handle test context initialization. fun testContextKeywordHandler(bus: BotBus, sendEnd: Boolean = true): Unit |
newBusMock |
Provides a mock initialized with the specified StoryDefinition. fun BotDefinition.newBusMock(testContext: TestContext = currentTestContext, story: StoryDefinition = testContext.defaultStoryDefinition(this), connectorType: ConnectorType = testContext.defaultConnectorType(), locale: Locale = testContext.defaultLocale(), userId: PlayerId = testContext.defaultPlayerId()): BotBusMock |
newBusMockContext |
Provides a mock context initialized with the specified StoryDefinition. fun BotDefinition.newBusMockContext(testContext: TestContext = currentTestContext, story: StoryDefinition = testContext.defaultStoryDefinition(this), connectorType: ConnectorType = testContext.defaultConnectorType(), locale: Locale = testContext.defaultLocale(), userId: PlayerId = testContext.defaultPlayerId(), botId: PlayerId = PlayerId("bot", PlayerType.bot), action: Action = SendSentence(userId, this.botId, botId, ""), userInterfaceType: UserInterfaceType = UserInterfaceType.textChat, userPreferences: UserPreferences = UserPreferences(locale = locale)): BotBusMockContext |
startNewBusMock |
Provides a mock initialized with the specified StoryDefinition and starts the story. fun BotDefinition.startNewBusMock(testContext: TestContext = currentTestContext, story: StoryDefinition = testContext.defaultStoryDefinition(this), connectorType: ConnectorType = testContext.defaultConnectorType(), locale: Locale = testContext.defaultLocale(), userId: PlayerId = testContext.defaultPlayerId()): BotBusMock |
SimpleBotDefinition |
A simple BotDefinition. class SimpleBotDefinition : BotDefinitionBase |