Build your own chatbot on the Innovation Day
#Prerequisite
-
Register your Bluemix account
-
Register your Github account
-
Fork this repository and https://github.com/ChristiaL/IOTCar and deploy the nodejs web application
#Getting started
-
Create application of
Liberty for Java
onBluemix
-
Connect
Liberty for Java
withWatson Conversation
,Speech to Text
andText to Speech
services -
Click on
Conversation
from theConnections
tab and click onLaunch tool
to open the website of IBM Watson Conversation, then click onLogin with IBM ID
to signin -
Setup a
Workspace
ofWatson Conversation
and define dialogs (We will do it together on the Innovation Day)
#Bluemix DevOps guide
-
Register your Github account
-
Fork this repository and https://github.com/ChristiaL/IOTCar and deploy the nodejs web application
-
Go to
Overview
of theLiberty for Java
application, findContinuous Delivery
panel, and click onEnable
button -
Click on
Create Toolchain from Template
for the first time you enable the Toolchains, and click onSimple Cloud Foundry toolchain
-
Click on
GitHub
button to Authorize the access to theGitHub
, then you'll be navigated toGitHub
website -
On the
GitHub
, click onAuthorize application
button to grant the access from Bluemix DevOps service -
Type
Github
password to confirm the operation -
After authorization, select
Existing
as Repository type, and forkedGithub URL
as Source repository URL, then click onCreate
button -
Verify configurations to ensure the Pipeline deploys on right runtime with the correct application name
-
On this step, assuming you have already created one Watson Conversation, so switch back to Watson Conversation website, copy
Workspace ID
from the createdWorkspace
by clicking on the menu on the top right of theWorkspace panel
, then click onView details
and copy theWorkspace ID
-
Switch back to
DevOps service
and click onEclipse Orion Web IDE
, and selectmanifest.yml
for editing. Changename
to your app name then updateCONVERSATION_WORKSPACE_ID
to copiedWorkspace ID
-
Click
File
menu and selectSave
-
Click on
Git
tab on the left, add commit comments and click onCommit
button, after that click onPush
button to update changes on theGitHub
-
Go back to toolchain then click on
Delivery Pipeline
, clickRun Stage
icon and wait for the build and deployment process -
Go back to the app and launch it after the deployment is done
Start chatting using text or microphone with your personal Chatbot and Enjoy!
#Setup local environment (Optional) Installation
- Install Bluemix and CF CLI
- Install Eclipse Java EE IDE for Web Developers as your IDE (Download)
- Install latest JavaEE SDK or JavaSE SDK
- Install Tomcat 9 and add it into
Eclipse
as a new Server
Run Chatbot application locally
- Run git command or download the source code here
git clone [email protected]:CognitiveBuild/Chatbot.git
- Import Chatbot into your Eclipse workspace
- Add credentials into the file:
/Chatbot/src/com/ibm/cto/Consts.java
// Sample only, please USE YOUR CREDENTIALS instead
public String TEXT_TO_SPEECH_USERNAME = "9a5bfa13-624f-436e-8af1-fc677a59a123";
public String TEXT_TO_SPEECH_PASSWORD = "berqyZXJ2J7f";
public String SPEECH_TO_TEXT_USERNAME = "af3a6ecc-2f35-4672-2595-35e15bcd758a";
public String SPEECH_TO_TEXT_PASSWORD = "KQ3itZUslHsc";
public String CONVERSATION_USERNAME = "134f9b10-7d4a-4e4f-92a0-7372f67331f7";
public String CONVERSATION_PASSWORD = "ijMoZB1vCVW6";
public String CONVERSATION_WORKSPACE_ID = "1e28d5ef-7506-4e76-814e-e83f3cbe6816";
- Right click on the
Chatbot
project, chooseRun As
>Run on Server
, then chooseTomcat v9.0 Server at localhost
to openhttp://localhost:8080/Chatbot/
and see the running application - Deploy your Chatbot on the Bluemix
- Right click on the Chatbot project, choose
Export
>WAR file
, then save theWAR file
intoDestination
- Run
bluemix
andcf
command to deploy theWAR file
on the Bluemix, please referGetting Started
section of theLiberty for Java
. And this is an example of the shell command
cd your_new_directory
bluemix api https://api.ng.bluemix.net
bluemix login -u your_name -o your_organization -s your_space
cf push your_app_name -p your_war_file_directory/your_war_file.war
#Dependencies
- Apache Common Codec
- Apache HTTP Client
- FastJSON
- Watson Java SDK
- Watson Speech JavaScript SDK
#Issues
- Watson JavaScript Speech SDK does not support Safari
- The way of obtaining token is not secured, do not use it on Production
#License Copyright 2016 GCG GBS CTO Office under the Apache 2.0 license.