-
Notifications
You must be signed in to change notification settings - Fork 22
Home
Model your bot once, deploy everywhere
Xatkit has been created to reduce boilerplate code, complex API understanding, and platform-specific deployment of your bots. Xatkit helps you focus on what really matters: the conversation logic you want to embed in your chatbot.
To do so, we have baked a chatbot-specific modeling language to specify user intentions, receive events, and bind them to computable actions. The produced chatbot specification is handled by the Xatkit Runtime Engine, which automatically manages its deployment and execution.
1- Build the latest version of Xatkit
2- Setup the environment variable
Windows
Execute xatkit/install-windows.bat
with administrative rights
Ubuntu
Execute xatkit/install-linux.sh
3- Navigate to xatkit/bin
and start the example digital assistant
The example assistant is a basic web-based bot that greets users, it is defined in xatkit/examples/GreetingsBot
.
Windows
./start-xatkit-windows.sh ../examples/GreetingsBots/GreetingsBot/GreetingsBot.properties
Ubuntu
./start-xatkit-linux.sh ../examples/GreetingsBots/GreetingsBot/GreetingsBot.properties
The console will log some initialization information, and after a few seconds you should see the following message:
You can test your chatbot here http://localhost:5000/admin (note that the bots behavior can be slightly different on the test page than when it is deployed on a server)
Open your browser and navigate to http://localhost:5000/admin to test your deployed web-based bot! Remember this bot is just a greetings bot to test your installation so beyond saying 'Hi', the bot will respond to everything else with the default answer!. Also, to simplify its configuration, this sample bot just uses regular expression to match your intent but you could easily configure it to use a real NLP such as DialogFlow
Xatkit supports 11 platforms (and counting) such as Slack, Github, React ... You can find the full list of supported platform in our wiki.
There are also additional platforms built and supported by the community, you can find them on this dedicated article.
If you have created your own Xatkit platform we will be happy to add it to the list, just drop us an email with a link to your awesome work!
Congratulations, you just started your first Xatkit digital assistant!
You can now have a look at the tutorial to learn how assistants are defined with the Xatkit language, or if you are already familiar with it you can take a look at the documentation for additional information on Xatkit capabilities.
You can build your local version of Xatkit using the following commands:
1 - Clone this repository and initialize its submodules
git clone https://github.com/xatkit-bot-platform/xatkit.git
git submodule update --init --recursive
2 - Run the installation script
# Linux users
./install-linux.sh
# Windows users: execute the following bat file with administrative rights
./install-windows.bat
3 - Run the build script
./build.sh --all --skip-tests --product
Your local version of Xatkit is built in the build
directory, you can install it and run the Greetings bot by following these instructions.
Note: the git submodule
command will initialize Xatkit submodules with the latest stable version of Xatkit. If you want to use the development version, or if you need advanced configuration in your build you can check this detailed article from our wiki.
If you experience any issue with Xatkit you can open an issue on our tracker and we will be happy to help you! Note that we may move your issue to a different repository based on the impacted components.
You want to contribute to Xatkit? We would love to hear from you and provide all the assistance we can! Any contribution is appreciated. And it doesn't even need to be a code contribution, just spreading the word and/or starring and watching this repo will be useful!.
Feel free to reach out to share with us any idea you may have (e.g. creating a new platform).
And don't forget to let us know if you're using Xatkit. We are always very interested in knowing how people are using Xatkit and how we can better serve them.
- 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