Dela via


Anslut en robot till Alexa

GÄLLER FÖR: SDK v4

Du kan konfigurera roboten så att den kommunicerar med personer via en anpassad Alexa-färdighet. Den här artikeln beskriver hur du skapar en Alexa-färdighet med Hjälp av Alexa Developer Console, ansluter din robot till din Alexa-färdighet i Azure och testar din robot i Alexa.

Förutsättningar

  • En Azure-prenumeration. Om du inte redan har ett skapar du ett kostnadsfritt konto innan du börjar.
  • En robot publicerad i Azure som du vill ansluta till Alexa.
  • Ett Amazon-konto.

Viktigt!

Roboten måste använda Bot Framework SDK version 4.8 eller senare. Om du har en befintlig robot kan du behöva uppdatera SDK-versionen och publicera om roboten.

Skapa en Alexa-färdighet

  1. Logga in på Alexa Developer Console och välj Skapa kompetens.

  2. På nästa sida:

    1. Ange ett namn på den nya färdigheten.
    2. Kontrollera att Välj en modell som ska läggas till i din kompetens är inställt på Anpassad.
    3. Kontrollera att Välj en metod som värd för dina kunskapers serverdelsresurser är inställd på Etablera din egen.
    4. Välj Skapa färdighet.

    Choose model and hosting

  3. På nästa sida:

    1. Kontrollera att Välj en mall är inställd på Start från början
    2. Klicka på Välj.

    Choose a template

  4. På instrumentpanelen för kunskaper under Interaktionsmodell väljer du JSON-redigerare.

  5. I JSON-redigeraren:

    1. Ersätt det befintliga innehållet med följande JSON.

      {
          "interactionModel": {
              "languageModel": {
                  "invocationName": "<your-skill-invocation-name>",
                  "intents": [
                      {
                          "name": "GetUserIntent",
                          "slots": [
                              {
                                  "name": "phrase",
                                  "type": "phrase"
                              }
                          ],
                          "samples": [
                              "{phrase}"
                          ]
                      },
                      {
                          "name": "AMAZON.StopIntent",
                          "samples": []
                      }
                  ],
                  "types": [
                      {
                          "name": "phrase",
                          "values": [
                              {
                                  "name": {
                                      "value": "<example-phrase>"
                                  }
                              },
                              {
                                  "name": {
                                      "value": "<example-phrase>"
                                  }
                              },
                              {
                                  "name": {
                                      "value": "<example-phrase>"
                                  }
                              }
                          ]
                      }
                  ]
              }
          }
      }
      
    2. För invocationNameändrar du <ditt kunskapsanropsnamn> till det namn som användarna ska använda för att anropa din skicklighet på Alexa. Om ditt kunskapsanropsnamn till exempel var "adapter helper" kan en användare säga "Alexa, starta adapterhjälpen" för att starta färdigheten.

    3. I matrisen values under typesersätter du de tre instanserna av <example-phrase> med fraser som användarna kan säga för att utlösa din skicklighet. Om en användare till exempel säger "Alexa, be adapterhjälparen att ge mig information om alexa-adaptern" kan ett exempelfras vara "ge mig information om alexa-adaptern".

  6. Välj Spara modell och välj sedan Skapa modell. Detta uppdaterar din färdighets konfiguration på Alexa.

Konfigurera din robot i Azure

För att slutföra det här steget behöver du ditt Alexa Skill ID. Hämta ID:t antingen från URL:en i Alexa-portalen eller genom att gå till Alexa Developer Console och välja Kopiera kunskaps-ID. Ditt Alexa Skill ID bör vara ett värde som "amzn1.ask.skill.<some-guid>".

  1. Öppna Azure Portal.
  2. Öppna bladet Azure Bot-resurs för din robot.
  3. Öppna Kanaler och välj Alexa.
  4. I Alexa Channel Configuration anger du den information som du kopierade i föregående steg.
    1. I Ange kunskaps-ID anger du det Alexa-kunskaps-ID som du kopierade från Alexa Developer Console.
    2. Välj Använd.
    3. Kopiera den Azure-genererade Tjänstslutpunkts-URI:n för Alexa.

Uppdatera din Alexa-robotregistrering

  1. Logga in på Alexa Developer Console.

  2. Hitta och öppna konfigurationssidan för din färdighet.

  3. Välj Slutpunkt.

  4. För Tjänstslutpunktstyp väljer du HTTPS.

  5. För standardregion:

    1. Ange den Azure-tjänstslutpunkts-URI som du kopierade från Azure-portalen.
    2. I listrutan väljer du Min utvecklingsslutpunkt är en underdomän för en domän som har ett jokerteckencertifikat från en certifikatutfärdare.

    Set service endpoint and endpoint type

  6. Välj Spara slutpunkter.

Testa och publicera dina kunskaper

Om du äger en Alexa-enhet kan du testa din skicklighet innan du publicerar den.

Mer information om hur du testar och publicerar dina kunskaper på deras plattform finns i utvecklardokumentationen för Alexa Skills Kit för anpassade röstmodellkunskaper .

Ytterligare information

Mer information om Alexa-färdigheter finns i Amazon Developer-dokumentationen:

Användarautentisering i Alexa

Användarautentisering i Alexa görs genom att konfigurera och använda Kontolänkning på Alexa-färdigheten. Mer information finns i Förstå kontolänkning för Alexa-kunskaper. Du kan kräva kontolänkning när användaren aktiverar kunskapen, eller så kan du kräva det som en del av ett konversationsflöde.

Om du lägger till användarautentisering som en del av konversationen:

  1. Bifoga ett inloggningskort för den utgående aktiviteten. Detta konverteras till ett Alexa LinkAccount-kort som uppmanar användaren att logga in med hjälp av Alexa-appen.

  2. Om användaren länkar sitt konto till appen är en token sedan tillgänglig för efterföljande begäranden i kanaldata.

Nästa steg