Projekte erstellen

<ph type="x-smartling-placeholder">
</ph> <ph type="x-smartling-placeholder"></ph>

Ein Actions-Projekt fasst alle Ihre Aktionen in einem einzigen Container zusammen. Ich dieses Projekt in Actions on Google veröffentlichen, damit Google Assistant weiß, und dialogorientiert.

<ph type="x-smartling-placeholder">
</ph> Actions-Projektkomponenten
Abbildung 1: Projektstruktur für Aktionen

Sie verwenden die folgenden Komponenten auf niedriger Ebene, um Ihr Actions-Projekt zu erstellen:

  • Einstellungen und Ressourcen definieren Projektmetadaten und Ressourcen wie Projektsymbole. Google verwendet diese Informationen, um Ihre Aktionen an das Assistant-Verzeichnis übertragen, damit Nutzer .

  • Intents stellen eine auszuführende Aufgabe dar, z. B. einige Nutzereingabe oder Systemereignis, das verarbeitet werden muss. Die häufigste Art von Intents, die Sie verwenden, sind User Intents. Mit diesen Intents können Sie Wortgruppen, die auf natürliche Weise durch das NLU (Natural Language Understanding) erweitert werden viele weitere ähnliche Wortgruppen in die Suchmaschine ein. Der NLU verwendet die Aggregation diese Wortgruppen zum Trainieren eines Sprachmodells, das Assistant verwendet, um Nutzer Eingabe. Wenn während einer Unterhaltung eine Nutzereingabe mit der Sprache des Intents übereinstimmt -Modell, sendet die Assistant-Laufzeit den Intent an deine Aktion, damit sie und den Nutzenden antworten.

  • Mit Typen können Sie strukturierte Daten aus Nutzereingaben extrahieren. Von Trainingsformulierungen mit Typen annotiert, kann die NLU relevante, strukturierte Daten Daten für Sie, sodass Sie keine offenen Eingaben parsen müssen.

  • Scenes-Prozess-Intents und die wichtigsten Logikausführer für deine Aktionen. Sie können Slot-Füllung ausführen, bedingte Logik auswerten, an den Nutzer senden und sogar externe Webdienste aufrufen, Geschäftslogik. In Kombination mit Intents bieten dir Szenen eine wirkungsvolle Möglichkeit, bestimmte Nutzereingaben oder Systemereignisse zu erkennen und entsprechende Logik.

  • Mit Prompts werden statische oder dynamische Antworten definiert, mit denen Sie den Nutzenden antworten.

  • Mit Webhooks können Sie zusätzliche Arbeit an Webdienste delegieren. (Auftragsausführung), z. B. das Validieren von Daten oder das Generieren von Prompts. Meine Aktionen mit der Auftragsausführung über ein JSON-basiertes Webhook-Protokoll kommunizieren.

  • Mit der Funktion Interactive Canvas können Sie mit Web-Apps, die HTML, CSS und JavaScript nutzen.

Projekt erstellen

Sie müssen ein Projekt in der Actions Console erstellen, bevor Sie für die Entwicklung Google Assistant So erstellst du ein Projekt:

  1. Rufen Sie die Actions Console auf.
  2. Klicken Sie auf Neues Projekt.
  3. Geben Sie einen Namen für Ihr Projekt ein und klicken Sie auf Projekt erstellen.
  4. Wählen Sie im Bildschirm Welche Art von Aktion möchten Sie erstellen? die Option wählen Sie eine Kategorie aus, die am besten zu Ihrem Projekt passt, und klicken Sie auf Weiter.
  5. Wählen Sie auf dem Bildschirm How do you want to build it (Wie möchten Sie es erstellen) eine Build-Methode aus. und klicken Sie auf Jetzt erstellen. Sie können beispielsweise mit einer leeren Projekt oder anhand einer Stichprobe.
<ph type="x-smartling-placeholder">

Lokales Actions SDK-Projekt erstellen

Nachdem Sie ein Actions-Projekt in der Actions Console erstellt haben, können Sie und initialisieren Sie ein Projekt in Ihrer lokalen Entwicklungsumgebung.

So initialisieren Sie ein Actions SDK-Projekt aus einem vorhandenen Actions-Projekt: diese Schritte:

  1. Erstellen Sie in Ihrem lokalen Dateisystem ein leeres Verzeichnis für das Actions-Projekt.
  2. Erstellen Sie in diesem leeren Verzeichnis ein sdk-Verzeichnis.
  3. Ändern Sie das Arbeitsverzeichnis in das Verzeichnis sdk in Ihrem Terminal.

Mit einem leeren Projekt beginnen

Wenn Sie mit dem leeren Projekt beginnen möchten, das Sie gerade in der Console erstellt haben, führen Sie gactions pull --project-id <my-project-id> aus.

$ mkdir myAction
$ cd myAction
$ mkdir sdk
$ cd sdk
$ gactions pull --project-id my-project-id
Pulling your project files from Draft for a project id: "my-project-id"
✔ Done. You should see the files written in path/to/myAction/sdk

Mit einem Beispielprojekt beginnen

Wenn Sie mit einem Beispielprojekt beginnen möchten, führen Sie gactions init <sample name> aus.

$ mkdir actions-test
$ cd actions-test
$ mkdir sdk
$ cd sdk
$ gactions init question
Writing sample files for question.
✔ Done. Please checkout the following documentation - https://developers.google.com/assistant/conversational/build on the next steps on how to get started.

Projektinformationen definieren

Die Einstellungen und Ressourcen Ihres Projekts definieren Informationen über Ihr Projekt wie Unterstützung von Features und Oberflächen, unterstützte Sprachen, Anzeigename, Beschreibung Logos und mehr. In der folgenden Tabelle werden die wichtigsten Einstellungen und Ressourcen beschrieben. die Sie bereitstellen. Actions on Google verwendet diese Informationen zur Bereitstellung und Veröffentlichung Ihres Projekts im Assistant Verzeichnis.

Name Beschreibung
Verzeichnisdaten Stellt Informationen bereit, damit Actions on Google Ihre in das Assistant-Verzeichnis. Umfasst Metadaten und Beschreibungen Projekt und Bildressourcen für Logos und Bannerbilder.
Geografische Ausrichtung Konfiguriert die Sprachen, in denen deine Aktionen verfügbar sind.
Oberflächenfunktionen Konfiguriert die Oberflächen, auf denen deine Aktionen verfügbar sind.
Informationen zum Unternehmen Gibt Kontaktinformationen für Ihr Unternehmen an.
Markenverifizierung Verknüpfe eine Website oder Android-App, die dir gehört, um zusätzliche Vorteile zu erhalten wie reservierte Aufrufnamen und Websiteverknüpfungen in deinen Aktionen.
Release Konfiguriert verschiedene Test- und Produktions-Releases für deine Aktion für Tests und die Produktion.
Assistant-Links Erlaube Nutzern, deine Aktionen über deine Web-Properties aufzurufen.

So definieren Sie Projektinformationen:

  1. Definiere globale Einstellungen für dein Actions-Projekt in sdk/settings/settings.yaml. Weitere Informationen finden Sie in der Referenz zu den Einstellungen. für unterstützte Werte.

    Das folgende Snippet zeigt eine Beispieldatei für sdk/settings/settings.yaml:

    accountLinking:
      enableAccountCreation: true
      linkingType: GOOGLE_SIGN_IN
    category: GAMES_AND_TRIVIA
    projectId: my-project-id
    ...
    

    <ph type="x-smartling-placeholder">
  2. Legen Sie Einstellungen fest, die je nach Sprache des Nutzers variieren können, z. B. Aufrufwortgruppen in verschiedenen Sprachen) in einer sdk/settings/<locale>/settings.yaml-Datei, Ersetzen Sie locale durch Ihre Zielsprache.

    Weitere Informationen finden Sie im Abschnitt LocalizedSettings Referenzdokumentation zu unterstützten Werten.

    Das folgende Snippet ist ein Beispiel für Einstellungen auf Englisch, die in einem sdk/settings/en/settings.yaml-Datei:

    localizedSettings:
      developerEmail: developer@developers.com
      developerName: Developer Name
      displayName: My Display Name
      fullDescription: full description of the action
      largeBannerImage: https://path/to/large/banner
      privacyPolicyUrl: http://path/to/privacy/policy
      sampleInvocations:
      - Talk to My Display Name
      shortDescription: short description of the action
      smallLogoImage: https://path/to/small/logo
      voice: female_1
    ...
    

Ressourcen hinzufügen

Sie können Ressourcen wie Image-Dateien, Audiodateien und Zeichenfolgen in Ihrem Actions-Projekt erstellen und in Konfigurationsdateien darauf verweisen (z. B. Prompt) Definitionen oder Bedingungen) mithilfe der systemdefinierten Variable $resources.

Projektressourcen werden unter resources/ gespeichert und jeder Ressourcentyp ist einem Ordner im Verzeichnis zugewiesen ist.

Sie können Ressourcen lokalisieren, indem Sie sprachspezifische Ordner in der Ressource erstellen Typ "Ordner". So können Sie z. B. spanische Versionen Ihrer Zeichenfolgen in resources/strings/es/<filename>.yaml

Bilder

Bilddateien werden in resources/images/ gespeichert und Sie können darauf verweisen mit $resources.images.<name of the image file without file extension>. Folgende Dateiendungen sind zulässig:

  • gif
  • png
  • jpg
  • jpeg

Wenn beispielsweise die englische Version des kleinen Logos in resources/images/en/square.png und die englische Version des großen Banners ist bzw. in resources/images/en/landscape.jpg gespeichert, sdk/settings/en/settings.yaml aus dem vorherigen Beispiel wird zu:

localizedSettings:
  developerEmail: developer@developers.com
  developerName: Developer Name
  displayName: My Display Name
  fullDescription: full description of the action

  largeBannerImage: $resources.images.landscape
  privacyPolicyUrl: http://path/to/privacy/policy
  sampleInvocations:
  - Talk to My Display Name
  shortDescription: short description of the action

  smallLogoImage: $resources.images.square
  voice: female_1
...

Audiodateien

Audiodateien werden in resources/audio/ gespeichert und Sie können darauf verweisen mit $resources.audio.<name of the audio file without file extension>.

Folgende Dateiendungen sind zulässig:

  • mp3
  • mpeg

So können Sie beispielsweise auf Audioaufnahmen in Prompts verweisen:

candidates:
  - first_simple:
      variants:
        - speech: your speech response
    content:
      media:
        mediaType: audio
        mediaObjects:
          - name: media name
            description: media description
            url: $resources.audio.intro

Strings

Strings werden in resources/strings/ als .yaml-Dateien gespeichert. Jede Datei enthält Eine Zuordnung von Stringschlüsseln und zugehörigen Werten, die einzelne Strings oder Listen sein können von Zeichenfolgen. Sie können auf die Werte verweisen, indem Sie $resources.strings.<name of the image file without file extension>.<key> für einzelne Zeichenfolgenwerte oder um einen Zufallswert aus einer Liste zu erhalten, und $resources.strings.<name of the image file without file extension>.<key>.<numerical index> für einen bestimmten Stringwert innerhalb einer Liste.

Wenn Sie z. B. Ressourcenstrings für die Stringlokalisierung verwenden, sdk/settings/en/settings.yaml aus dem vorherigen Beispiel könnte so aussehen:

localizedSettings:
  developerEmail: developer@developers.com
  developerName: $resources.strings.appinfo.developerName
  displayName: $resources.strings.appinfo.displayName
  fullDescription: $resources.strings.appinfo.fullDescription
  largeBannerImage: $resources.images.landscape
  privacyPolicyUrl: $resources.strings.appinfo.privacyPolicyUrl
  sampleInvocations:
  - $resources.strings.invocations.sample
  shortDescription: $resources.strings.appinfo.shortDescription
  smallLogoImage: $resources.images.square
  voice: female_1
...

Projekte im Simulator testen

Die Actions Console bietet einen Simulator für die Vorschau Ihrer Aktionen. Die können Sie Informationen zur Fehlerbehebung einsehen, Gerätefunktionen einstellen, Sprache und mehr.

Abbildung 3. Die Hauptbereiche des Simulators: (1) Nutzereingabe, (2) Geräteansicht, (3) Optionen und Einstellungen sowie (4) Unterhaltungsprotokoll.

So testen Sie ein Projekt:

  1. Führen Sie gactions deploy preview aus, um die Aktion in der Vorschau bereitzustellen und aktivieren Sie Tests im Simulator.
  2. Öffnen Sie die URL in der Befehlsausgabe, um auf den Simulator zuzugreifen.
$ gactions deploy preview
Deploying your project files to your Actions console preview for a project id: "my-project". This may take a few minutes.
Sending configuration files
Waiting for server to respond.
✔ Done. You can now navigate to the Actions Console simulator to test your changes: http://console.actions.google.com/project/my-project/simulator?disableAutoPreview