Below is a demonstration of a virtual assistant. As of December 2015 Google has closed their free image and video search API, so her range is now limited to maps, translations and a few other things (full list below). She extracts a few variables from these requests such as the action (image or video), the topic (a fork or the beatles) and a facial expression (serious or smiling). Her API callback function contacts the appropriate external API and shows the results.
What she understands
Our virtual assistant accepts many variations on the following commands. Replace the italicised text with the thing you want to see or translate. She shows different facial expressions with each command, and can understand repeat commands which use pronouns like it and him. She uses YouTube for videos, Microsoft for translations and Google for images, searches, maps, definitions, calculations and people:
- Translation: translate hello into French, what’s tree in German
- Translate again: how about pie
- Translate into another language: what is it in Dutch
- Map: show me a map of london, where is etretat
- Calculations: calculate 3+2, figure out (7-10)^4
- Definitions: define oodles, what does spatula mean
Download the spreadsheet
You can download the spreadsheet to see how a demonstration like this is put together. (The spreadsheet still contains image and video references in case another API becomes available in future.) Notice how the inputs set $action$ and $search$ variables, which are then used to call a Javascript function which handles all the communication with the various APIs.