Verbinden eines Bots mit Alexa

GILT FÜR: SDK v4

Sie können Ihren Bot so konfigurieren, dass er mit Benutzern über benutzerdefinierte Alexa-Skills kommuniziert. In diesem Artikel wird beschrieben, wie Sie mithilfe der Alexa Developer Console Alexa-Skills erstellen, Ihren Bot mit Ihrem Alexa-Skill in Azure verbinden und Ihren Bot in Alexa testen.

Voraussetzungen

  • Ein Azure-Abonnement. Wenn Sie noch nicht über ein Abonnement verfügen, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.
  • Ein Bot, der in Azure veröffentlicht wurde, den Sie mit Alexa verbinden möchten.
  • Ein Amazon-Konto.

Wichtig

Der Bot muss das Bot Framework SDK Version 4.8 oder höher verwenden. Wenn Sie bereits über einen Bot verfügen, müssen Sie möglicherweise die SDK-Version aktualisieren.

Erstellen eines Alexa-Skills

  1. Melden Sie sich bei der Alexa Developer Console an, und wählen Sie Skill erstellen.

  2. Auf der nächsten Seite:

    1. Geben Sie einen Namen für Ihren neuen Skill ein.
    2. Stellen Sie sicher, dass Modell auswählen, um Skill hinzuzufügenauf benutzerdefiniert eingestellt ist.
    3. Stellen Sie sicher, dass die Methode wählen, um Back-End-Ressourcen Ihres Skills auf selbst Bereitstellen eingestellt ist.
    4. Klicken Sie auf Skill erstellen.

    Choose model and hosting

  3. Auf der nächsten Seite:

    1. Stellen Sie sicher, dass Vorlage auswählen auf von vorne beginnen eingestellt ist.
    2. Klicken Sie auf Auswählen.

    Choose a template

  4. Wählen Sie auf Ihrem Skill-Dashboard unter InteraktionsmodellJSON-Editor.

  5. Im JSON-Editor:

    1. Ersetzen Sie den vorhandenen Inhalt mit dem folgenden 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. Ändern Sie für invocationName<Ihren Skill-Aufruf-Namen> auf den Namen, den Benutzer nutzen werden, um Ihren Skill in Alexa aufzurufen. Wenn beispielsweise der Aufrufname Ihres Skills „Adapterhelfer“ lautet, könnte ein Benutzer sagen: „Alexa, starte den Adapterhelfer“, um den Skill zu starten.

    3. Ersetzen Sie im values Array unter typesdie drei Instanzen von <example-phrase> Ausdrücken, die Benutzer sagen können, um Ihren Skill aufzurufen. Wenn ein Benutzer beispielsweise sagt: „Alexa, der Adapterhelfer soll mir Details zum Alexa-Adapter geben“, könnte ein Beispielausdruck „Details zum Alexa-Adapter geben“ sein.

  6. Wählen Sie Modell speichern und dann Modell erstellen. Dadurch wird die Konfiguration Ihres Skills auf Alexa aktualisiert.

Konfigurieren Sie Ihren Bot in Azure

Um diesen Schritt abzuschließen, benötigen Sie Ihre Alexa Skill ID. Sie erhalten Ihre ID über die URL im Alexa-Portal oder indem Sie die Alexa Developer Console aufrufen und dort auf Skill-ID anzeigen klicken. Ihre Alexa-Skill-ID sollte einen Wert wie „amzn1.ask.skill. <some-guid>“ aufweisen.

  1. Öffnen Sie das Azure-Portal.
  2. Öffnen Sie das Azure Bot-Ressourcen-Blatt für Ihren Bot.
  3. Öffnen Sie Kanäle und wählen Sie Alexa.
  4. Geben Sie in der Alexa-Kanalkonfiguration die Informationen ein, die Sie im vorherigen Schritt kopiert haben.
    1. Geben Sie in Skill-ID eingeben die Alexa Skill-ID ein, die Sie aus der Alexa Developer Console kopiert haben.
    2. Wählen Sie Anwenden.
    3. Kopieren Sie den Azure-generierten Alexa-Dienstendpunkt-URI.

Aktualisieren Sie Ihre Alexa Bot-Registrierung

  1. Melden Sie sich bei der Alexa Developer Console an.

  2. Suchen und öffnen Sie die Konfigurationsseite für Ihren Skill.

  3. Wählen Sie Endpunkt.

  4. Wählen Sie für den Dienstendpunkttyp HTTPS aus.

  5. Als Standardregion:

    1. Geben Sie den Alexa-Dienstendpunkt-URI ein, den Sie aus dem Azure-Portal kopiert haben.
    2. Wählen Sie Mein Entwicklungsendpunkt ist eine Unterdomäne einer Domäne mit einem Platzhalterzertifikat von einer Zertifizierungsstelle.

    Set service endpoint and endpoint type

  6. Wählen Sie Endpunktespeichern.

Ihren Skill testen und veröffentlichen

Wenn Sie ein Alexa-Gerät besitzen, können Sie Ihren Skill testen, bevor Sie ihn veröffentlichen.

Informationen zum Testen und Veröffentlichen Ihres Skills auf ihrer Plattform finden Sie in der Entwicklerdokumentation des Alexa-Skills-Kit für benutzerdefinierte Sprachmodelle .

Weitere Informationen

Weitere Informationen zu Alexa Skills finden Sie in der Amazon-Entwicklerdokumentation:

Benutzerauthentifizierung in Alexa

Die Benutzerauthentifizierung in Alexa erfolgt durch Einrichten und Verwenden von Account Linking auf dem Alexa Skill. Weitere Informationen finden Sie unter Grundlegendes zur Kontoverknüpfung für Alexa Skills. Sie können eine Kontoverknüpfung anfordern, wenn der Benutzer den Skill aktiviert, oder Sie können sie als Teil eines Konversastionsflusses anfordern.

Wenn Sie die Benutzerauthentifizierung als Teil der Unterhaltung hinzufügen:

  1. Fügen Sie eine Anmelde-Karte für die ausgehende Aktivität an. Dies wird in Alexa in eine LinkAccount-Karte konvertiert, die den Benutzer auffordert, sich mit der Alexa-App anzumelden.

  2. Wenn der Benutzer sein Konto erfolgreich mit der App verknüpft, ist ein Token für nachfolgende Anforderungen in den Kanaldaten verfügbar.

Nächste Schritte