Le abilità personalizzate possono acquisire testo e inviarlo all'API della tua abilità.
Se non hai familiarità con il funzionamento di Alexa Skills, ecco un breve riepilogo:
Innanzitutto, registra la tua abilità su Amazon , fornendo uno schema di intenti e espressioni di esempio . Lo schema di intenti definisce quali azioni possono essere eseguite e gli slot per i dati personalizzati da inviare all'API. Le espressioni di esempio forniscono esempi di come un utente può attivare ogni intento.
Quando l'utente attiva la tua abilità, Alexa proverà ad abbinare ciò che ha detto a una delle espressioni di esempio della tua abilità. Se si fa incontro, invierà una richiesta HTTPS al server per chiedere una risposta.
Il tuo server fornisce una risposta (se tutto va bene) e quindi Alexa fornirà un feedback all'utente che ha attivato la tua abilità.
Lo AMAZON.LITERAL
slot consente di accettare praticamente qualsiasi input. Nota che attualmente è supportato solo nella regione inglese (USA): le competenze inglese (Regno Unito) e tedesco non possono essere utilizzate AMAZON.LITERAL
.
Il tuo schema di intenti potrebbe assomigliare a questo:
{
"intents": [
{
"intent": "SaveTodo",
"slots": [
{
"name": "Todo",
"type": "AMAZON.LITERAL"
}
]
}
]
}
E le tue espressioni di esempio potrebbero essere così:
SaveTodo remind me to {fetch the shopping|Todo}
SaveTodo remind me to {write my English essay|Todo}
SaveTodo remind me to {buy some dog food tomorrow|Todo}
Durante l'utilizzo AMAZON.LITERAL
, è necessario fornire molte espressioni di esempio, almeno un campione per ogni possibile lunghezza di input, ma idealmente di più. La documentazione di Amazon suggerisce che dovresti puntare a centinaia di campioni per slot in cui puoi accettare vari tipi di input.
Sembra un po 'noioso, ma se non lo fai, è improbabile che la tua abilità riconosca bene il testo. Potresti forse generare espressioni di esempio dai dati dei clienti (purché le informazioni personali vengano rimosse in anticipo!) In modo che le espressioni più comuni siano nei tuoi campioni — sospetto che Alexa sia leggermente distorta nel riconoscere espressioni simili ai campioni.
Amazon scoraggia AMAZON.LITERAL
comunque gli slot e preferirebbe che tu utilizzassi tipi di slot personalizzati , che richiedono di elencare i possibili input. È importante ricordare che:
Un tipo di slot personalizzato non equivale a un'enumerazione. I valori esterni all'elenco possono comunque essere restituiti se riconosciuti dal sistema di comprensione della lingua parlata. Sebbene l'input per un tipo di slot personalizzato sia ponderato rispetto ai valori nell'elenco, non è vincolato solo agli elementi nell'elenco. Il codice deve ancora includere la convalida e il controllo degli errori quando si utilizzano i valori degli slot.