Voice Commands -- AI -- Samantha
Voice commands are a part of this program that I neglected for a long time. The code was there, but nothing was built around it, aside from a few commands for demonstration purposes. And I eventually broke those one day and never even noticed. However, voice commands are now a bigger part of DriveLine. From early on, DriveLine could read text out loud. Combining voice input and voice output brings us a concept that I'm calling "Auditory Interaction". See what I did there?
There will be three parts to this explanation.
Part 1 is the concept.
Part 2 is the list of commands and responses.
Part 3 is the technical "how it works" explanation.
I would like to introduce you to Samantha. She's inside your CarPC. She knows everything that DriveLine knows, and then a little bit more thanks to the internet. Depending on the devices you have connected to your PC, she knows where you are, where you might be going, how long it's been since you shut down or started up the PC, the time of day, the weather, your name, her name, the files in your playlist, the temperature of your engine, and other things. She can perform simple tasks, and answer some questions. A lot more can (and will) be added to her functionality, but this is the start.
This is the list of commands. If Samantha's code is all working correctly, then none of the commands need to be spoken exactly. For example, you could say "show playlist" or "show me the playlist" or "show the playlist screen" and any of those would result in Samantha displaying the Playlist screen. The idea is that you can speak to her the way you would speak to a normal person. You don't need to speak like a robot. And neither should she. Here's a basic list of the commands/keywords she understands and some explanations. This list will continue to expand.
First, the simple commands that don't really do anything.
"What time is it"
"What day is it"
"Where am I", "Where are we"
"Who are you", "Who am I"
"How are you", "How do you feel"
More complex commands:
Eject - This tells Samantha to eject a drive.
examples: "Eject the D drive", "Eject drive D", "Eject D"
Directions / Navigate - This command will tell Samantha to retrieve directions from the internet to a particular location.
examples: "Navigate home", "Directions to work"
Play - This will tell Samantha to play a different song. This is probably the most complex command.
examples (Media): "Play next song by Green Day", "Play previous favorite", "Play random song", "Play random Green Day song", "Play random favorite"
exmaples (Radio): ----- I still need to program this.
Switch - This switches media sources.
examples: "Switch to dab radio", "Switch to media", "Switch to current playlist"
Dim / Darken - This will decrease the brightness of the screen.
examples: "dim the screen", "darken the display", "dim the monitor"
Undim / Brighten - This will increase the brightness of the screen.
examples: "undim the display", "brighten the screen"
Weather / Forecast - Samantha will tell you about the weather.
exmaples: "how is the weather", "what is the forecast for Tuesday"
Show - This tells the skin to display a different screen.
examples: "show the playlist", "show the map"
Repeat - Samantha will repeat the last thing she said.
examples: "Repeat that", "Repeat the last thing you said"
There are a few more commands that I am testing, and I probably need suggestions for other commands to add.
More info to come..