0.0.3 • Published 3 years ago

botium-connector-oracleda v0.0.3

Weekly downloads
59
License
MIT
Repository
-
Last release
3 years ago

Botium Connector for Oracle Digital Assistant

NPM

Codeship Status for codeforequity-at/botium-connector-oracleda npm version license

This is a Botium connector for testing your Oracle Digital Assistant chatbot.

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 the API of your Oracle Digital Assistant chatbot.

It can be used as any other Botium connector with all Botium Stack components:

Requirements

  • Node.js and NPM
  • a Oracle Digital Assistant bot
  • a project directory on your workstation to hold test cases and Botium configuration

Install Botium and Oracle Digital Assistant Connector

When using Botium CLI:

> npm install -g botium-cli
> npm install -g botium-connector-oracleda
> botium-cli init
> botium-cli run

When using Botium Bindings:

> npm install -g botium-bindings
> npm install -g botium-connector-oracleda
> botium-bindings init mocha
> npm install && npm run mocha

When using Botium Box:

Already integrated into Botium Box, no setup required

Connecting Oracle Digital Assistant chatbot to Botium

Process is very simple, you have to know just the Webhook URL and the Secret Key for your chatbot.

Create a botium.json with this URL and Secret in your project directory:

{
  "botium": {
    "Capabilities": {
      "PROJECTNAME": "<whatever>",
      "CONTAINERMODE": "oracleda",
      "ORACLE_WEBHOOK_URL": "...",
      "ORACLE_WEBHOOK_SECRET": "..."
    }
  }
}

To check the configuration, run the emulator (Botium CLI required) to bring up a chat interface in your terminal window:

> botium-cli emulator

Botium setup is ready, you can begin to write your BotiumScript files.

How to start samples

There is a small demo in samples with Botium Bindings. It uses real Oracle Digital Assistant API.

Real Oracle Digital Assistant API sample

  • Setup your Oracle Digital Assistant in oracle cloud (In the example there are test cases for CbPizzaBot, which can be pulled from the Digital Assistant store.)
  • Install the dependencies and botium-core as peerDependency:
    > npm install && npm install --no-save botium-core
  • Navigate into the sample/real directory
    • Install the dependencies
      > cd ./samples/real
      > npm install
    • Adapt botium.json in the sample directory:
      • Change Webhook URL
      • Change Webhook secret
    • Start inbound-proxy (it will listen on http://127.0.0.1:45100/):
      > npm run inbound
    • In your Oracle Digital Assistant you need to set Outgoing Webhook URI according to the previous step set up inbound-proxy url. (To make this localhost url public you can use e.g. ngrok)
    • Finally run the test
      >  npm test

Supported Capabilities

Set the capability CONTAINERMODE to oracleda to activate this connector.

ORACLE_WEBHOOK_URL

Oracle Digital Assistant channel webhook url

ORACLE_WEBHOOK_SECRET

Oracle Digital Assistant channel secret key

ORACLE_USER_ID

Optionally you are able to set a unique identifier for the user.

ORACLE_PROFILE

Optionally you are able to set properties that represent the user, like firstName and lastName.