The Customer Engagement Analytics Demo brings IBM Watson Tone Analyzer and IBM Watson Discover services together for customer engagement analytics. It provides visual insights on chat quality monitoring, customer satisfaction measurement, agent performance evaluation and customer engagement tracking.
-
You need a Bluemix account. If you don't have one, sign up. Experimental Watson services are free to use.
-
Download and install the Cloud-foundry CLI tool if you haven't already.
-
Edit the
manifest.yml
file and change<application-name>
to something unique. The name you use determines the URL of your application. For example,<application-name>.mybluemix.net
.
applications:
- name: <application-name>
memory: 512MB
- Connect to Bluemix with the command line tool.
cf api https://api.ng.bluemix.net
cf login
- Create and retrieve service keys to access the Tone Analyzer service:
cf create-service tone_analyzer standard my-ta-service
cf create-service-key my-ta-service myKey
cf service-key my-ta-service myKey
- Create and retrieve service keys to access the Discovery service:
cf create-service discovery standard my-discovery-service
cf create-service-key my-discovery-service myKey
cf service-key my-discovery-service myKey
-
Create an environment and a collection using your Discovery service keys.
-
Create a
.env
file in the root directory by copying the sample.env.example
file using the following command:
cp .env.example .env
You will update the .env
with the information you retrieved in steps 5, 6 and 7
The .env
file will look something like the following:
MY_TONE_ANALYZER_USERNAME=<username>
MY_TONE_ANALYZER_PASSWORD=<password>
MY_DISCOVERY_USERNAME=<username>
MY_DISCOVERY_PASSWORD=<password>
MY_ENVIRONMENT_ID=<environment_id>
MY_COLLECTION_ID=<collection_id>
- Install the dependencies your application need:
npm install
- Skip this step if you will use the default conversations provided for this demo under the public/data/conversations folder. If you prefer to load the demo with your own data, please follow instruction.txt and replace 'input_sample.csv' under the public/data/ folder by your own data; also remove all default data under the public/data/conversations folder. Then run the processing script:
npm run analyzeTones
-
Go to Disovery Tooling and select your Discovery collection. Upload all JSON files under the resources/conversations folder.
-
Start the application locally:
npm start
- Point your browser to http://localhost:3000.
- Optional: Push the application to Bluemix:
cf push
After completing the steps above, you are ready to test your application. Start a browser and enter the URL of your application.
<your application name>.mybluemix.net
For more details about developing applications that use Watson Developer Cloud services in Bluemix, see Getting started with Watson Developer Cloud and Bluemix.
-
The main source of troubleshooting and recovery information is the Bluemix log. To view the log, run the following command:
cf logs <application-name> --recent
-
For more details about the service, see the documentation for the Tone Analyzer service and the documentation for the Discovery service.
This sample code is licensed under Apache 2.0.
See CONTRIBUTING.
Find more open source projects on the IBM Github Page
Sample web applications that include this package may be configured to track deployments to IBM Bluemix and other Cloud Foundry platforms. The following information is sent to a Deployment Tracker service on each deployment:
- Node.js package version
- Node.js repository URL
- Application Name (
application_name
) - Space ID (
space_id
) - Application Version (
application_version
) - Application URIs (
application_uris
) - Labels of bound services
- Number of instances for each bound service and associated plan information
This data is collected from the package.json
file in the sample application and the VCAP_APPLICATION
and VCAP_SERVICES
environment variables in IBM Bluemix and other Cloud Foundry platforms. This data is used by IBM to track metrics around deployments of sample applications to IBM Bluemix to measure the usefulness of our examples, so that we can continuously improve the content we offer to you. Only deployments of sample applications that include code to ping the Deployment Tracker service will be tracked.