botium-connector-witai
v0.0.3
Published
Botium Connector for wit.ai
Downloads
13
Readme
Botium Connector for for wit.ai
This is a Botium connector for testing your wit.ai projects.
Did you read the Botium in a Nutshell articles? Be warned, without prior knowledge of Botium you won't be able to properly use this library!
How it works
Botium connects to your wit.ai using its Wit Node.js SDK. It extracts the NLP information for using with Botium and it's NLP asserters.
You can assert composite entities too:
INTENT <CompositeEntityName>.<EntityName>
or just
INTENT <CompositeEntityName>
and
INTENT_CONFIDENCE <CompositeEntityConfidence>
It can be used as any other Botium connector with all Botium Stack components:
Requirements
- Node.js and NPM
- a wit.ai app
- a project directory on your workstation to hold test cases and Botium configuration
Install Botium and wit.ai Connector
When using Botium CLI:
> npm install -g botium-cli
> npm install -g botium-connector-witai
> botium-cli init
> botium-cli run
When using Botium Bindings:
> npm install -g botium-bindings
> npm install -g botium-connector-witai
> botium-bindings init mocha
> npm install && npm run mocha
When using Botium Box:
Already integrated into Botium Box, no setup required
Connecting wit.ai app to Botium
Process is very simple, you just need the wit.ai server access token. After creating your app, you can find your access token in the app's Settings tab.
Create a botium.json with this URL in your project directory:
{
"botium": {
"Capabilities": {
"PROJECTNAME": "<whatever>",
"CONTAINERMODE": "witai",
"WITAI_TOKEN": "..."
}
}
}
Botium setup is ready, you can begin to write your BotiumScript files.
How to start sample
There is a small demo in samples with Botium Bindings.
Install the packages, and run the test:
> cd ./samples/
> npm install && npm test
Supported Capabilities
Set the capability CONTAINERMODE to witai to activate this connector.
WITAI_TOKEN
Get it from the app's Settings tab in the wit.ai console
WITAI_CONTEXT
Default: empty
Context JSON object for wit.ai, see here for details and format.
WITAI_APIVERSION
Default: empty
The API version to use instead of the recommended one
Open Issues and Restrictions
- For wit.ai the entity role is an alias for name. You can assert an entity just with alias:
INTENT <EntityRole>
- If wit.ai does not recognizes any intent (utterance is not recognized, or utterance has no intent) then Botium will add a none intent:
INTENT none
- wit.ai supports more intents for a utterance, but Botium does not.