AWS Alexa Smart Home Skill: introduzione e avvio – 1

Spread the love

Ho acquistato un dispositivo Alexa e da allora non voglio più premere un pulsante e desidero trasformare tutti i miei dispositivi a controllo vocale. Se la mia connessione internet smette di funzionare io non esisto più.

Amazon AWS Smart Home Skill introduction
Amazon AWS Smart Home Skill introduction

Ma dopo questo disclaimer vorrei iniziare ad aiutarti a connettere il tuo dispositivo personalizzato al tuo account AWS personale. Per questa parte farò riferimento a un vecchio tutorial esistente fornito ma non aggiornato da Amazon.

Per prima cosa dobbiamo capire quali parti esamineremo in questo progetto.

Alexa Smart Home Skill position
Alexa Smart Home Skill position

Andremo a creare la nostra personale Alexa SmartHome Skill per interagire con Alexa, quindi memorizzeremo le informazioni su DynamoDB.

Ho creato un tutorial specifico per DynamoDB, se vuoi puoi iniziare da quel tutorial “DynamoDB con JavaScript SDK v2 e v3”.

Devi sapere che una Skill Smart Home è diversa da una Skill, la differenza principale è che non è necessario aprire la Skill per funzionare, puoi eseguire direttamente il comando (come “Alexa accendi la luce”) ma come puoi capire hai qualche limitazione, la prima è che puoi usare solo un set di comandi specificati da un’interfaccia.

  • BrightnessController
  • ColorController
  • ColorTemperatureController
  • InventoryLevelSensor
  • InventoryUsageSensor
  • PercentageController
  • PowerController
  • PowerLevelController
  • SceneController
  • TemperatureSensor
  • ThermostatController
  • TimeHoldController

E qualche controller generico

  • ModeController
  • RangeController
  • ToggleController

Ci sono altri 2 set di interfacce, ma non ne leggiamo ora.

Per funzionare una Skill ha bisogno di un back-end, il back-end è una funzione lambda, che puoi vedere come un servizio REST ma con elementi e funzioni personalizzati. Svilupperemo quel lambda in AWS JavaScript Framework 3.

Prerequisiti

Devi creare gli account.

Codice e risorse

Prima crea una cartella, per me creo

alexa-skill-manage-relay-nodejs

Ottieni il setup-template.txt file da

https://github.com/xreef/alexa-skill-manage-relay-nodejs/raw/main/setup-template.txt

e rinomina in setup.txt.

Il file dovrebbe contenere:

[Login with Amazon Client ID]
amzn1.application-oa2-client.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

[Login with Amazon Client Secret]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

[Alexa Skill Application ID]
amzn1.ask.skill.XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

[AWS Lambda ARN]
arn:aws:lambda:us-east-1:XXXXXXXXXXXX:function:skill-sample-language-smarthome-switch

[Redirect URLs]
https://pitangui.amazon.com/api/skill/link/XXXXXXXXXXXXXX
https://layla.amazon.com/api/skill/link/XXXXXXXXXXXXXX
https://alexa.amazon.co.jp/api/skill/link/XXXXXXXXXXXXXX

[DynamoDB table]
XXXXXXX

[Device end point]
XXXXXXXX

Installa strumenti opzionali

L’utilizzo di questi strumenti è facoltativo in quanto utili, ma non obbligatori.

NodeJS

Puoi scrivere direttamente il codice su AWS, ma è meglio se scarichi NodeJS.

Git

Git 2.0 o superiore è richiesto solo se si desidera clonare il codice sorgente localmente. Dalla riga di comando, puoi verificare se git è installato eseguendo il comando:

git --version

Se non è installato correttamente o non è una versione successiva alla 2.0, visita https://git-scm.com/downloads per scaricare e installare una versione adeguata alla tua piattaforma.

Interfaccia a riga di comando di Alexa Skills Kit (ASK CLI)

Questa ASK CLI può essere utilizzata per creare, distribuire e mantenere le Skill di Alexa. Se hai già installato ASK CLI puoi verificarne la versione eseguendo il comando:

ask --version

Ai fini di questo esempio, la versione ask deve essere 1.3.1 o successiva.

Recupera il codice sorgente tramite Git

Se hai git installato sulla tua workstation, puoi usare le seguenti istruzioni per recuperare il codice sorgente nella tua directory di lavoro.

  1. Dalla riga di comando, accedi alla directory di lavoro creata prima: alexa-skill-manage-relay-nodejs;
  2. Esegui il seguente comando per scaricare il codice sorgente in una directory:
git clone https://github.com/xreef/alexa-skill-manage-relay-nodejs.git

Ottieni il codice sorgente tramite download

Se non hai git installato, scarica e decomprimi il contenuto zippato dell’esempio da  https://github.com/xreef/alexa-skill-manage-relay-nodejs/archive/master.zip  nella directory di lavoro:  alexa-skill-manage-relay-nodejs.

Grazie

  1. AWS Alexa Smart Home Skill: introduzione e avvio
  2. AWS Alexa Smart Home Skill: crea la Skill e gestisci la sicurezza
  3. AWS Alexa Smart Home Skill: crea la Lambda e gestisci la sicurezza
  4. AWS Alexa Smart Home Skill: configurare la Lambda per la skill
  5. AWS Alexa Smart Home Skill: configurare il database DynamoDB
  6. AWS Alexa Smart Home Skill: caricare codice di esempio e testare la Lambda
  7. AWS Alexa Smart Home Skill: testa la tua Skill in sviluppo e gestisci i log

Spread the love

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *