This is an extension of the IBM Watson Dialog service Dialog starter application that also incorporates the Speech JS SDK to allow for voice interactions.
**This application requires a dialog file to be preloaded. You can use the** [dialog-tool](https://github.com/watson-developer-cloud/dialog-tool) **to create a dialog.**Give it a try! Click the button below to fork into IBM DevOps Services and deploy your own copy of this application on Bluemix.
-
Create a Bluemix account. Sign up in Bluemix or use an existing account. Watson services in beta are free to use.
-
Download and install the Cloud-foundry CLI tool.
-
Edit the
manifest.ymlfile and replace<application-name>with a unique name for your copy of the application. The name that you specify determines the application's URL, such as<application-name>.mybluemix.net.
```none
applications:
- services:
- dialog-service
- stt-service
- tts-service
name: <application-name>
command: node app.js
path: .
memory: 256M
```
- Connect to Bluemix by running the following commands in the command-line tool:
```sh
$ cf api https://api.ng.bluemix.net
$ cf login -u <your-Bluemix-ID>
```
- Create the Dialog & Speech services in Bluemix by running the following commands:
```sh
$ cf create-service dialog standard dialog-service
$ cf create-service speech_to_text standard stt-service
$ cf create-service text_to_speech standard tts-service
```
- Push it live by running the following command:
```sh
$ cf push
```
- Add your
DIALOG_IDand restage the app:
```sh
$ cf se <application-name> DIALOG_ID <dialog-id>
$ cf restage <application-name>
```
If you don't have a dialog_id you can create one using the dialog-tool
The application uses Node.js and npm, so you must download and install them as part of the following steps.
You must also have a bluemix account and service instances created and bound to an application in order to obtain credentials. See steps 1-6 above, or click the "Deploy to Bluemix" button which automates that process.
- Copy the
username,password, andurlcredentials from your Dialog and Speech services in Bluemix. To see the credentials, run the following command, where<application-name>is the unique name you specified:
```sh
$ cf env <application-name>
```
The following example shows credentials for the Dialog service:
```sh
System-Provided:
{
"VCAP_SERVICES": {
"dialog": [{
"credentials": {
"url": "<url>",
"password": "<password>",
"username": "<username>"
},
"label": "dialog",
"name": "dialog-service",
"plan": "standard"
}]
}
}
```
Copy these credentials into your code:
* The Dialog credentials go into `app.js`.
* The Speech to Text credentials go into `stt-token.js`.
* The Text to Speech credentials go into `tts-token.js`.
- Go to the project folder in a terminal and run the
npm installcommand. - Start the application by running
node app.js. - Open
http://localhost:3000to see the running application.
To troubleshoot your Bluemix app the main useful source of information are the logs, to see them, run:
$ cf logs <application-name> --recentThis sample code is licensed under Apache 2.0. Full license text is available in LICENSE. This sample uses jquery which is licensed under MIT.
See CONTRIBUTING.
Find more open source projects on the IBM Github Page