-
Notifications
You must be signed in to change notification settings - Fork 22
Xatkit Options
Xatkit supports several options that can be set through its configuration file. This article describes the available options of the Xatkit Runtime component and their possible values (note that platform-specific options are detailed in the platform's wiki articles).
Xatkit Tip: starting Xatkit from environment variables
Xatkit can be started without a
.properties
file, and use the environment variables to retrieve its property values. This is interesting in a Docker context, where environment variables can be easily set for each Docker instance. In this case the environment variables must be upper cased,.
must be replaced by_
, and properties containing relative paths should be refactored into absolute paths. For example,xatkit.execution.model = ./MyExecutionModel.xmi
should be defined as the environment variableXATKIT_EXECUTION_MODEL = <absolute path to MyExecutionModel.xmi>
.
The only exceptions are
xatkit.libraries.custom.<alias name>
andxatkit.platforms.custom.<alias name>
that should be replaced byXATKIT_LIBRARIES_CUSTOM_<alias name>
andXATKIT_PLATFORMS_CUSTOM_<alias name>
with<alias names>
being strictly equal (including case) to the ones defined in the execution file.
These options affect Xatkit behavior independently of the selected intent recognition provider and platforms.
Key | Values | Description | Constraint |
---|---|---|---|
xatkit.execution.model |
String | The path of the execution model to run. This path can be relative or absolute. | Mandatory |
xatkit.message.delay |
Integer | The delay (in milliseconds) to wait before sending message | Optional (default 0 ) |
xatkit.recognition.enable_monitoring |
Boolean | Allows to enable/disable intent recognition monitoring | Optional (default true ) |
xatkit.data.directory |
String | The path of the directory used to store execution data | Optional (default ./data ) |
xatkit.server.port |
Integer | The port used by the Xatkit server to receive events and expose services | Optional (default 5000) |
xatkit.server.public_url |
String | The public URL of the deployed Xatkit server. This value is used to deploy the admin test bot and connect it to the running Xatkit instance. | Optional (the bot will be accessible at http://localhost:5000 if not specified) |
xatkit.platforms.custom.XXX |
String |
XXX must be the name of a platform alias used in the execution model, and the property value is the path of the platform's .xmi file. This option allows to decouple the execution model from custom platform location, easing their deployment in production environments (where paths are typically different). Note that custom platforms imported using absolute paths do not need to specify this property. |
Mandatory if the execution model contains platform aliases |
xatkit.libraries.custom.XXX |
String |
XXX must be the name of an intent library alias used in the execution model, and the property value is the path of the library's .xmi file. This option allows to decouple the execution model from custom libraries location, easing their deployment in production environments (where paths are typically different). Note that custom libraries imported using absolute paths do not need to specify this property. |
Mandatory if the execution model contains library aliases |
xatkit.platforms.abstract.XXX |
String |
XXX must be an abstract platform name, and the property value the path attribute of the concrete platform to use. For example, the property xatkit.platforms.abstract.ChatPlatform = com.xatkit.plugins.slack.platform.SlackPlatform will start a bot using the implementing the chat platform actions with Slack. |
Mandatory if the execution model uses actions from abstract platforms |
xatkit.event.matcher.print_builder |
Boolean | Debug option that can be enabled to log the content of the EventInstanceBuilder before building the matched EventInstance . This method allows to check the received JSON payload representing the event. |
Optional (default false ) |
These options allow to customize the underlying DialogFlow intent recognition provider. Note that mandatory options only concern bots using a DialogFlow intent recognition provider.
Key | Values | Description | Constraint |
---|---|---|---|
xatkit.dialogflow.projectId |
String | The project ID of the DialogFlow agent used by the bot (see here for more information) | Mandatory |
xatkit.dialogflow.credentials.path |
String | The path of the DialogFlow's credential file that grants access to the agent (see here for more information) | Mandatory |
xatkit.dialogflow.language |
String (DialogFlow language code) | The language used by the DialogFlow agent | Optional (default en-US ) |
xatkit.dialogflow.clean_on_startup |
Boolean | Deletes all the registered intents and entities when starting the bot. This option allows to easily (re)-deploy bots under development, but also triggers a full re-training of the underlying agent each time the bot is started. | Optional (default false ) |
xatkit.dialogflow.intent.loading |
Boolean | Allows to disable intent loading from the DialogFlow agent. This option is used to reduce the number of queries sent to the DialogFlow API when running Jarvis tests. Warning: disabling intent loading can create consistency issues between the DialogFlow agent and the Jarvis runtime and should not be used in production. Note: this option is automatically set to false if jarvis.dialogflow.clean_on_startup is true . |
Optional (default true ) |
xatkit.dialogflow.entity.loading |
Boolean | Allows to disable entity loading from the DialogFlow agent. This option is used to reduce the number of queries sent to the DialogFlow API when running Jarvis tests. Warning: disabling entity loading can create consistency issues between the DialogFlow agent and the Jarvis runtime and should be not used in production. Note: this option is automatically set to false if jarvis.dialogflow.clean_on_startup is true . |
Optional (default true ) |
xatkit.dialogflow.context.merge |
Boolean | Allows to specify whether to merge Jarvis runtime's contexts into the DialogFlow agent. This option is enabled by default to ensure consistency between the local context and the DialogFlow one. However, bots not using local context and/or Jarvis events can disable this option to improve performances and reduce the number of calls on the DialogFlow API. | Optional (default true ) |
xatkit.dialogflow.followup.lifespan |
Integer | Allows to change the default lifespan used for followup intent's out contexts | Optional (default 2 ) |
- Getting Started
- Configuring your bot
- Integrating an Intent Recognition Provider
- Adding a bot to your website
- Deploying on Slack
- Basic concepts
- Intents and Entities
- States, Transitions, and Context
- Default and Local Fallbacks
- Core Library