Meet Anna, my custom Voice Assistant.
Anna currently supports English and German. Feel free to add LUIS models in other languages. Please don't forget to update the code accordingly.
Alamofire was used to make REST API calls easier and avoid boilerplate code
Bing Speech-to-Text, LUIS & Bing Text-to-Speech were used for audio processing
If you're using this app within 2 days of attending one of my talks the provided Azure subscription keys and LUIS URL will work. Otherwise you'll have to use your own subscription keys and LUIS URL. Subscription keys can be generated here: Azure Portal, a LUIS URL can be generated here: LUIS.
The subscription key and LUIS URL constants can be found in the top section of ViewController.swift.
Please remove &q=
from the very end of the LUIS domain. &q=
will later be appended by the app.
Before you can compile the app, you'll need to install Alamofire. Using CocoaPods to do so is highly recommended.
Use terminal to execute the following commands:
if Cocoapods isn't installed or you're not sure, execute
sudo gem install cocoapods
Once CocoaPods is installed, execute
cd ~/Path/To/Folder/Containing/VoiceAssistant-iOS
pod install
Open VoiceAssistant-iOS.xcworkspace
Provide a Team under Target Signing
The app should now compile.
Note: Please use VoiceAssistant-iOS.xcworkspace
only.
VoiceAssistant-iOS.xcodeproj
doesn't include CocoaPods and will therefore not work.
The model information is located in VoiceAssistantDemo.json
in each respective language's folder in the folder LUIS
.
Visit LUIS and click "import new app".
-Replace LUIS URL with App ID and subscription Key
-Fix Start/Stop button Outlet