Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
functions Added links to be able to view full versions of search result documents May 1, 2019
public fix(Scrolling Chat Container): move layout to flex based May 20, 2019
readme_images Update demo gif Oct 19, 2018
test Updated all instances of assistant simple to assistant intermediate Oct 16, 2018
training Added Image response type to Banker Booking pathway Nov 14, 2018
.cfignore Add integration tests, fixes #63 (#64) Nov 29, 2016
.env.example chore: Update dependencies (#11) Feb 18, 2019
.eslintignore first commit May 25, 2016
.eslintrc.yml Add integration tests, fixes #63 (#64) Nov 29, 2016
.gitattributes Add end-of-line normalization Mar 28, 2017
.gitignore Added links to be able to view full versions of search result documents May 1, 2019
.travis.yml Updated all instances of assistant simple to assistant intermediate Oct 16, 2018
CONTRIBUTING.md Updated all instances of assistant simple to assistant intermediate Oct 16, 2018
LICENSE first commit May 25, 2016
Procfile Add integration tests, fixes #63 (#64) Nov 29, 2016
README.md fix: Update readme links May 1, 2019
app.js Added links to be able to view full versions of search result documents May 1, 2019
casper-runner.js feat: Refactored Code to support Assistant V2 (#6) Dec 10, 2018
manifest.yml Added links to be able to view full versions of search result documents May 1, 2019
package-lock.json Added links to be able to view full versions of search result documents May 1, 2019
package.json Added links to be able to view full versions of search result documents May 1, 2019
server.js build: Update dependencies Jul 13, 2018

README.md

🚀 Watson Assistant (formerly Conversation) Sample Application

This Node.js app demonstrates the Watson Assistant service in a simple interface engaging in simulated banking tasks, utilising features such as cloud functions and actions.

Travis semantic-release

Demo

You can view a demo of this app.

Please note this app uses the Watson Assistant V2 API. To access a version of the V1 app, you can go to v1.1.0.

If you need more information about the V1 API, you can go to the Watson Assistant V1 API page.

Prerequisites

  1. Sign up for an IBM Cloud account.
  2. Download the IBM Cloud CLI.
  3. Create an instance of the Watson Assistant service and get your credentials:
    • Go to the Watson Assistant page in the IBM Cloud Catalog.
    • Log in to your IBM Cloud account.
    • Click Create.
    • Click Show to view the service credentials.
    • Copy the apikey value, or copy the username and password values if your service instance doesn't provide an apikey.
    • Copy the url value.

Configuring the application

  1. In your IBM Cloud console, open the Watson Assistant service instance

  2. Click the Import workspace icon in the Watson Assistant service tool. Specify the location of the workspace JSON file in your local copy of the app project:

    <project_root>/training/banking_workspace.json

  3. Select Everything (Intents, Entities, and Dialog) and then click Import. The car dashboard workspace is created.

  4. Click the menu icon in the upper-right corner of the workspace tile, and then select View details.

  5. Click the Copy icon to copy the workspace ID to the clipboard.

    Steps to get credentials

  6. In the application folder, copy the .env.example file and create a file called .env

    cp .env.example .env
    
  7. Open the .env file and add the service credentials that you obtained in the previous step. The Watson SDK automaticaly locates the correct enviromental variables for either username, password, and url or the apikey and url credentials found in the .env file.

    Example .env file that configures the apikey and url for a Watson Assistant service instance hosted in the US East region:

    ASSISTANT_IAM_APIKEY=X4rbi8vwZmKpXfowaS3GAsA7vdy17Qh7km5D6EzKLHL2
    ASSISTANT_URL=https://gateway-wdc.watsonplatform.net/assistant/api
    
    • If your service instance uses username and password credentials, add the ASSISTANT_USERNAME and ASSISTANT_PASSWORD variables to the .env file.

    Example .env file that configures the username, password, and url for a Watson Assistant service instance hosted in the US South region:

    ASSISTANT_USERNAME=522be-7b41-ab44-dec3-g1eab2ha73c6
    ASSISTANT_PASSWORD=A4Z5BdGENrwu8
    ASSISTANT_URL=https://gateway.watsonplatform.net/assistant/api
    

    However, if your credentials contain an IAM API key, copy the apikey and url to the relevant fields.

      {
        "apikey": "ca2905e6-7b5d-4408-9192-e4d54d83e604",
        "iam_apikey_description": "Auto generated apikey during resource-key ...",
        "iam_apikey_name": "auto-generated-apikey-62b71334-3ae3-4609-be26-846fa59ece42",
        "iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Manager",
        "iam_serviceid_crn": "crn:v1:bluemix:public:iam...",
        "url": "https://gateway-syd.watsonplatform.net/assistant/api"
      }
    ASSISTANT_IAM_APIKEY=ca2905e6-7b5d-4408-9192-e4d54d83e604
    ASSISTANT_IAM_URL=https://gateway-syd.watsonplatform.net/assistant/api
    
  8. Add the ASSISTANT_ID to the previous properties

    ASSISTANT_ID=522be-7b41-ab44-dec3-g1eab2ha73c6
    

Running locally

  1. Install the dependencies

    npm install
    
  2. Run the application

    npm start
    
  3. View the application in a browser at localhost:3000

Deploying to IBM Cloud as a Cloud Foundry Application

  1. Login to IBM Cloud with the IBM Cloud CLI

    ibmcloud login
    
  2. Target a Cloud Foundry organization and space.

    ibmcloud target --cf
    
  3. Edit the manifest.yml file. Change the name field to something unique.
    For example, - name: my-app-name.

  4. Deploy the application

    ibmcloud app push
    
  5. View the application online at the app URL.
    For example: https://my-app-name.mybluemix.net

License

This sample code is licensed under Apache 2.0.
Full license text is available in LICENSE.

Contributing

See CONTRIBUTING.

Open Source @ IBM

Find more open source projects on the IBM Github Page.

You can’t perform that action at this time.