Code Monkey home page Code Monkey logo

britboy70 / alexa-auto-sdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alexa/alexa-auto-sdk

1.0 0.0 0.0 12.77 MB

The Alexa Auto SDK is for automotive OEMs to integrate Alexa directly into vehicles.

Home Page: https://developer.amazon.com/alexa-voice-service/alexa-auto-sdk

License: Apache License 2.0

Shell 0.83% C++ 82.98% Pascal 0.07% BitBake 0.28% BlitzBasic 0.01% CMake 2.76% C 3.59% Java 9.05% PHP 0.12% Dockerfile 0.03% Python 0.03% JavaScript 0.19% CSS 0.02% HTML 0.03% Makefile 0.02%

alexa-auto-sdk's Introduction

Get Started with the Alexa Auto SDK

The Alexa Auto SDK contains essential client-side software required to integrate Alexa into the automobile. It is modular and abstract, providing a runtime engine for communicating with the Alexa service as well as interfaces that allow you to implement platform-specific behavior such as audio input, media playback, template and state rendering, phone control, and navigation. The Auto SDK also includes two sample applications (one for C++ and one for Android) that demonstrate how to use the Auto SDK interfaces and allow you to test interactions before integration.

To get started with the Auto SDK, follow these basic steps:

Important! You need to register for an Amazon Developer Account and create an Alexa device and security profile to use the Alexa Auto SDK.

  1. Clone the alexa-auto-sdk repository into your project and build the Auto SDK package.

  2. Install the built package on your target hardware.

  3. Create and configure an instance of the Engine. For details, see the C++ or Android Core module documentation.

  4. Extend the Auto SDK interfaces by creating a custom handler for each interface that you want to implement and registering the handler with the Engine. The Auto SDK modules provide platform interfaces and runtime Engine support for different capabilities:

    • Core (for C++ or Android) - enables you to implement core features such as system audio input and output integration, logging, location, and network information. The services are used by components in other modules and are required by the Alexa Auto SDK.
    • Alexa (for C++ or Android) - enables you to implement Alexa features, including speech input and output, Alexa audio playback management, authorization, equalizer control, template and state rendering, local media sources, alerts, notifications, and Do Not Disturb (DND)).
    • Navigation (for C++ or Android) - enables Alexa to interface with the onboard navigation system.
    • Phone Call Controller (for C++ or Android) - enables Alexa to interface with the onboard telephony system.
    • Address Book (for C++ or Android) - enables you to augment the communications and navigation capabilities of Alexa with user data such as phone contacts and/or navigation favorites.
    • CBL (for C++ or Android) - enables you to implement the Code-Based Linking (CBL) mechanism of acquiring Login with Amazon (LWA) access tokens.
    • Alexa Presentation Language (APL) (for C++ or Android) - enables your application to support APL directives and events for devices with graphical user interface (GUI) support.
    • Car Control (for C++ or Android) - enables your application to build a custom vehicle-control experience that allows the user to voice-control vehicle features using Alexa.
    • Messaging (for C++ or Android) - enables your application to interface with the Short Message Service (SMS) capabilities of a connected phone using Alexa.
  5. Start the Engine using the start() command.

  6. Use the Sample App (C++ or Android) to see how the Auto SDK works and to test end-to-end functionality.

Additional functionality (for example, Car Control, SMS, AmazonLite Wake Word, Alexa Communications, Local Voice Control (LVC), Device Client Metrics (DCM), and Voice Chrome for Android) is available with help from your Amazon Solutions Architect (SA) or Partner Manager.

Release Notes and Known Issues

For a summary of feature enhancements, updates, and resolved and known issues, see the the Auto SDK Change Log.

Note: Android Sample App, C++ Sample App, and Automotive Grade Linux (AGL) Alexa Voice Agent release notes are provided in their respective READMEs.

Migration Guide

For guidelines on migrating Auto SDK versions, see the Migration Guide.

Learn More

For Auto SDK API documentation, see the interface reference documentation:

For UX design requirements, recommendations, and best practices, see the Alexa Automotive design documentation.

Important Considerations

Security Best Practices

All Alexa products are required to follow the Security Best Practices for Alexa. When building an Alexa experience using the Alexa Auto SDK, additionally adhere to the following security principles:

  • Protect configuration files for the Auto SDK Engine from tampering and inspection.
  • Protect configuration parameters, such as those found in Auto SDK Engine configuration files, from tampering and inspection, including but not limited to the following: SQLite database files, Unix Domain Sockets, wake word models, and metrics sink files.
  • Protect components used for the Local Voice Control (LVC) extension, including associated LVC language model packages (Linux) and APKs (Android), from tampering and inspection, including but not limited to the following: Unix Domain Sockets, model directories, skill and service executables, prompts and assets JSON files, and all files configuring these components.
  • Follow additional SDK security best practices outlined here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.