Skip to content

Installation & Usage

Brendan Grant edited this page Jul 6, 2018 · 1 revision

Because this Lambda function relies on reverse engineered code, it is unlikley that Amazon or GM would allow it to be published to the Alexa Skills catalog, however that doesn't stop you from deploying your own version and running it yourself.

Note: This document assumes you already have an free AWS account, an Amazon Alexa product, as well as an Alexa developer account.

First, go to https://developer.amazon.com/alexa/console/ask and click the Create Skill button.

Enter a skill name (this is for your reference only) and select the Custom model.

Click on the Invocation menu item on the left and enter a Skill Invocation Name. This can be anything you want to describe what you will ask to do things. Examples include "mike's car", "my chevy", "the lemon"

Next, click on the Add button to add some new intents.

You should add 3 new ones:

  • start
  • lock
  • unlock

For each of these, enter the name and click Create custom intent you will need to provide some sample utterances which might be said, such as the following for start:

  • start car
  • start my car
  • start the car
  • start the chevy

Repeat this process for all 3 intents, then click the Save Model button.

If things were successful, click the Build Model button and wait for it to complete.

On the left menu, scroll down and select Endpoint, then choose AWS Lambda. Leave this page open and proceed with the later instructions in a new window, as the information here will be required later.

Now comes the tricker part, setting up the AWS Lambda which actually calls into OnStar.

Log in to the AWS Developer Console, and select Lambda from the Compute list (or go here to be brought to the us-west-2 page for it: https://us-west-2.console.aws.amazon.com/lambda/home?region=us-west-2#/functions)

Click the Create function button and give your function any name you like.

Set the Runtime to "C# (.NET Core 2.0)"

Set the Role to "Create a custom role", which should launch a nw window. Choose lambda_basic_execution and a new Role Policy and click Allow. Back on the Lambda setup page, choose lambda_basic_execution and click the Create function button.

Choose Alexa Skills kit on the designer list, then scroll down to specify the Alexa skill id, this is available back on the Alexa Skills setup page.

Specify the Skill ID for your defined skill and click the Add button, followed by the Save button.

Change the Handler to: AWS.OnStar::AWS.OnStar.Function::CommandVehical and click Save again.

todo: upload code.

At the top of the Lambda settings page, copy the ARN value and paste it into the default region textbox of the Alexa Skill endpoint configuration page and click Save Endpoints.

Now we are nearly ready to test things. From the Alexa skill dashboard, choose the Test tab and toggle the slider to enable Test for your new skill.

Type a command, such as "ask my car to start" where "my car" was the name of the skill you chose earlier.

Clone this wiki locally