This project is for an entry in the 2016 Palm Beach Hackathon - http://hackathon.palmbeachtech.org/
The goal for this entry is to creatively solve the River Center's (http://lrdrivercenter.org/) and the Science Center's (https://www.sfsciencecenter.org/) need to have interactive, interesting exhibits while getting feedback from visitors.
This app walks visitors through a guided tour of exhibits, using artificial intelligence (IBM Watson), to best choose which exhibits match visitors' interests. Visitors are able to talk to a virtual guide and be directed to their interest, audibly. The virtual guide can also ask the visitor questions while at an exhibit, thus getting valuable feedback. The virtual guide will store the feedback along with a tone analysis of the visitor to determine if they were confused, happy, intrigued, angry, while at the exhibit.
The app makes use of the following technologies:
- IBM Watson for AI
- Conversation AI
- Tone Analyzer AI
- Text to Speech AI
- Speech to Text AI
- NodeJS for hosting the web app as well as serving up API's
- API Connect's Loopback framework for creating API's in Node
- A simple in-memory, flat file database to store survey results
- Web app (HTML/CSS/JS)
You'll need NodeJS and NPM installed. You'll also need an IBM Bluemix account to use Watson (it's free).
git clone
or download this reponpm install
- Create a
credentials.js
file in the root of the project and supply the appropriate keys (there is a samplecredentials.sample.js
you can rename and use). node .
- Visit
localhost:3000/
for the website. Visitlocalhost:3000/explorer
for the API docs
You'll also need to train Watson on how he can help your users. Here are some screenshots of examples
of the setup for this entry. You can also use the sample-watson-conversation-workspace.json
file to import
settings in to your Watson Conversation workspace (should get you up and running quickly). Note that this workspace
will have data for things in the everglades: animals, concepts, etc. of the everglades.
NOTE: You might need to create a ./uploads
folder if you experience an error that it doesn't exist.
Open Source, Apache 2.0 license. Please see LICENSE.md