Building a Siri Like Application on iOS
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


Building a Siri Like Application on iOS



A siri like application to find near by hotel, restaurants using Nuance Mobile SDK.

A siri like application to find near by hotel, restaurants using Nuance Mobile SDK.



Total Views
Views on SlideShare
Embed Views



4 Embeds 27 12 11 3 1



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Building a Siri Like Application on iOS Presentation Transcript

  • 1. iOS Dev Scout - May Meetup Building A Siri-like Application Subhransu Behera (Subh) - iOS Application Architect in SAP Twitter : @subhransu Blog : Email : subhransu.behera@sap.comWednesday, May 30, 12
  • 2. About Me • iOS and Ruby Developer • Have passion for Mobile, Web and Smart TV Apps. • Started as a Linux Developer, fell in love with Ruby, happily married to iOS • M.S. in Software Systems from BITS, Bachelors in Information Technology from BPUT, Graduated from Founder Institute • Worked both in early stage startup and fortune 500 companies including one from MIT, Media-Labs. Currently working SAP APJ Mobility CoE making enterprises run their mobile Apps.Wednesday, May 30, 12
  • 3. When “Siri” Came !Wednesday, May 30, 12
  • 4. No Official Siri APIs Yet • Needed to use it for an Electric Vehicle Application • There are few Open Source SDK: • OpenEars: • iSpeech: • Dragon Speech Kit (Nuance) : http:// task=homeWednesday, May 30, 12
  • 5. Why Nuance? • Multiple language support (Supports speech recognition in 23 international languages) • They Make “Voice” really work. • Suggestion and Recommendation engine is pretty strong. • Have both Speech-to-Text and Text-to-Speech capabilities • Supports Multiple Platforms (iOS, Android, Windows Phone) • They are the guys behind Siri?Wednesday, May 30, 12
  • 6. Tiers & PricingWednesday, May 30, 12
  • 7. Free for 90 DaysWednesday, May 30, 12
  • 8. 1. Signup and Download Dragon Mobile SDK from Nuance Developer Portal http://dragonmobile.nuancemobiledeveloper.comWednesday, May 30, 12
  • 9. Get Application Key from EmailWednesday, May 30, 12
  • 10. Class Class References SKRecognizer - Manages entire recognition process including recording and server communication SKRecognition - Contains recognition results returned from SKRecognizer SKVocalizer - Defines server based text to speech implementation SpeechKit - Core class providing setup and utility methods. Meant for Core Networking, Recognition, Audio System componentsWednesday, May 30, 12
  • 11. Protocols Protocol References SKRecognizerDelegate - Defines the messages sent to a delegate of the SKRecognizer class SKVocalizerDelegate - Defines the methods sent by SKVocalizer class during speech synthesis process SpeechKitDelegate - Defines the messages sent to a delegate object registered as part of the call to setupWithID.Wednesday, May 30, 12
  • 12. How it WorksWednesday, May 30, 12
  • 13. Recognizing SpeechWednesday, May 30, 12
  • 14. Sample Speech Recognition AppWednesday, May 30, 12
  • 15. Step-by-step Guide • Open the file Classes/DMRecognizerViewController. Replace the SpeechKitApplicationKey[] value with your key. • In the setupWithID:host:port:useSSL:delegate:`` method, replace the ID parameter with your ID. • You should also verify that the host and port provided to that method match the host and port provided in the portal. • You can now run the application: connect your device and select Build and Run. Main Recognition ViewWednesday, May 30, 12
  • 16. Main Recognizer View This view has 4 sections • Voice Interface contains a multi-purpose button for controlling the recognition process and has a result field. • Recognition Type allows for the selection between the two default recognition models: search and dictation. • Audio Level provides a basic VU meter display. • Alternatives displays the complete list of recognition results.Wednesday, May 30, 12
  • 17. Recognition Logic 1. On viewDidLoad of main view, Speech Kit 4. On a successful completion, the method framework is configured by calling recognizer:didFinishWithResults: returns with setupWithID:host:port:useSSL:delegate an SKRecognition object that contains the list of method. recognition results. 2. On tap of "Record" button, a new SKRecognizer is 5. The top result, retrieved with the firstResult created with the method, is listed in text box. The complete list of initWithType:detection:language:delegate: results, accessed through the results property, is method. displayed in the large text field. 3. When the recording finishes, the delegate method 6. If an error occurs, the method recognizerDidFinishRecording: is called, and the recognizer:didFinishWithError:suggestion: is button is updated. called, and both the error and suggestion methods are presented to the user.Wednesday, May 30, 12
  • 18. Recognition with SuggestionsWednesday, May 30, 12
  • 19. Let’s build our Own AppWednesday, May 30, 12
  • 20. Download Source-code from: Nearby Restaurants Nearby Stations Speak “Restaurant” or “Station” to find nearby resultsWednesday, May 30, 12
  • 21. Twitter Search App Using Nuance, May 30, 12
  • 22. Thank You Twitter : @subhransu Blog : Email : subhransu.behera@sap.comWednesday, May 30, 12