Programming Voice Interfaces

Book description

Get a step-by-step guide for developing voice interfaces for applications and devices connected to the Internet of Things. By allowing consumers to use natural human interactions, you can avoid awkward methods of input and interactivity to provide them with elevated user experiences. This practical book is ideal for software engineers who build applications for the Web, smartphones, as well as embedded systems that dominate the IoT space.

  • Integrate voice interfaces with internet connected devices and sensors
  • Learn how to integrate with existing voice interfaces
  • Understand when to use a voice over other Natural User Interface technologies
  • Build a prototype with tools such as Raspberry Pi, solderless breadboards, jumper cables, sensors, Arduino, Visual Studio, and other tools
  • Use cloud services such as Azure and AWS to integrate voice with your existing or new web service end-points

Publisher resources

View/Submit Errata

Table of contents

  1. Preface
    1. Who Should Read This Book
    2. Conventions Used in This Book
    3. O’Reilly Safari
    4. How to Contact Us
    5. Acknowledgments
  2. 1. Introduction to Voice Interfaces and the IoT
    1. Welcome to a NUI World
    2. Voice All the Things!
    3. What Is NLP?
      1. Speech-to-Text (STT)
      2. Text-to-Speech (TTS)
      3. PLS, SSML, and Other Acronyms
    4. Experience Design
      1. Purpose
      2. One-Off Versus Conversational
      3. Conversation Flows
      4. Sample Utterances
      5. Speech Synthesis Markup Language (SSML)
      6. When to Use Visual Cues
      7. Additional Design Considerations
    5. Decisions, Decisions...
  3. 2. Existing APIs and Libraries
    1. Amazon Alexa
      1. Alexa Skills Kit (ASK)
      2. Alexa Voice Service (AVS)
      3. Amazon Lex
      4. Amazon Polly
    2. Microsoft Cognitive Services, Cortana, and More
    3. Google Cloud Speech API
    4. Other Notable Services
    5. Technical Architecture
      1. Conceptual Architecture
      2. Application Architecture
    6. Conclusion
  4. 3. Getting Started with AVS
    1. Tools and Things
    2. Preparing Your Pi
    3. Amazon AVS Configuration
      1. Navigating the Amazon Developer Console
      2. AVS Setup
    4. Get the Code!
    5. But How Does It All Work?
      1. Working with a Button and LEDs
      2. What’s in the Resources Directory?
      3. Customizing the Success Page
      4. Deeper Look at the AVS Requests
    6. Conclusion
  5. 4. Iterate: Evolve the Prototype
    1. Why Iterate?
    2. Intents, Utterances, Slots, and Invocation Names
      1. Amazon Alexa Requests and Responses
    3. Create Your Own API
      1. Alexa “Hello, World” in Node.js
    4. Amazon Developer Portal
    5. Testing Custom Skills on Your Device
    6. What’s Next?
      1. Account Linking
      2. State Management
      3. Bigger Picture
  6. 5. A Different Approach Using IoT Core and API.AI
    1. IoT Core
    2. Tools and Things
    3. Preparing Your Pi
    4. Welcome to API.AI
      1. Building an API.AI Agent
    5. Building Our UWP App
      1. The Plan
      2. The Code
      3. Deploying and Testing
    6. What’s Next?
  7. 6. What Else Can We Do?
    1. Adding More Inputs
    2. Going to Production
      1. Security Concerns
      2. Quality Management
      3. Support
    3. What’s Next?
  8. Index

Product information

  • Title: Programming Voice Interfaces
  • Author(s): Walter Quesada, Bob Lautenbach
  • Release date: October 2017
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 9781491956069