This is a small python script that uses Google Text To Speech API to identify what you say, and if it is one of three questions ("how are you", "what time is it", "where is") it gives canned responses. This is along the lines of the beginnings of very simple expert system, and seems like a fairly cool project to give someone when they are learning to program. This isn't exactly what I expected from a personal assistant called Jarvis, however.
jarvis.py", line 53, in <module>
data = recordAudio()
File "jarvis2.py", line 19, in recordAudio
audio = r.listen(source)
File "/Users/user/anaconda/lib/python2.7/site-packages/speech_recognition/__init__.py", line 377, in listen
buffer = source.stream.read(source.CHUNK, exception_on_overflow = False)
TypeError: read() got an unexpected keyword argument 'exception_on_overflow'
$ chmod +x jarvis.py
$ brew doctor
$ brew update
$ brew install python3
$ pip install --upgrade pip
$ pip3 install --upgrade pip setuptools
$ pip3 install --upgrade gTTS
$ pip install --upgrade gTTS
$ brew install portaudio
$ pip3 install pyaudio
$ pip install SpeechRecognition
$ brew install flac
$ brew install mpg321
$ ./jarvis.py
Hi Mike, what can I do for you?
Say something!
You said: how are you
I am fine
Say something!
^
I used the cached script and after installing the various Python libs as it complained got it working. A neat little kit. Now I need to make it always running and listening for my command. "Jarvis?" "yes, sir?" "Jarvis, <commands>"
To have it awaken and process follow on commands.
Only process when the double Jarvis exchange has occurred. And then keep on processing, waiting for more leading "Jarvis, <command>"
Putting this onto a RaspberryPi would be cool.
Could even train it verbally. "Jarvis, 'let's try something new'"
This is such a cool little simple toy with great potential.