Xây dựng dự án

Dự án Actions sẽ gộp tất cả Hành động của bạn vào một vùng chứa duy nhất. Bạn xuất bản dự án này lên Actions on Google để Trợ lý Google biết cách khám phá và gọi ra trải nghiệm trò chuyện của bạn.

các thành phần của dự án hành động
Hình 1. Cấu trúc dự án hành động

Bạn sẽ sử dụng các thành phần cấp thấp sau đây để xây dựng dự án Actions:

  • Phần Cài đặt và tài nguyên xác định siêu dữ liệu của dự án và các tài nguyên như biểu tượng dự án. Google sử dụng thông tin này để xuất bản Hành động của bạn sang thư mục Trợ lý để người dùng có thể khám phá và gọi chúng.

  • Ý định thể hiện một nhiệm vụ cần thực hiện, chẳng hạn như một số hoạt động đầu vào của người dùng hoặc một sự kiện của hệ thống cần xử lý. Loại phổ biến nhất ý định bạn sẽ sử dụng là ý định của người dùng. Các ý định này cho phép bạn khai báo hoạt động huấn luyện cụm từ được mở rộng tự nhiên bằng NLU (hiểu ngôn ngữ tự nhiên) để thêm nhiều cụm từ tương tự khác. NLU sử dụng thông tin tổng hợp của các cụm từ này để huấn luyện một mô hình ngôn ngữ mà Trợ lý sử dụng để khớp với người dùng đầu vào. Trong một cuộc trò chuyện, nếu một số hoạt động đầu vào của người dùng khớp với ngôn ngữ của ý định mô hình, môi trường thời gian chạy của Trợ lý sẽ gửi ý định đến Hành động của bạn để Trợ lý có thể sẽ xử lý dữ liệu đó và phản hồi người dùng.

  • Loại cho phép bạn trích xuất dữ liệu có cấu trúc từ hoạt động đầu vào của người dùng. Theo khi chú thích các cụm từ huấn luyện bằng loại, NLU có thể trích xuất các cụm từ có cấu trúc, có liên quan cho bạn, vì vậy bạn không phải phân tích cú pháp đầu vào mở.

  • Scenes xử lý ý định và là người thực thi logic chính cho Hành động của bạn. Chúng có thể lấp đầy chỗ trống, đánh giá logic có điều kiện, trả về lời nhắc cho người dùng và thậm chí là gọi điện đến các dịch vụ web bên ngoài để thực hiện logic kinh doanh. Cùng với ý định, các cảnh sẽ mang đến cho bạn một cách hiệu quả để phát hiện hoạt động đầu vào cụ thể của người dùng hoặc các sự kiện của hệ thống và thực hiện các sự kiện tương ứng logic.

  • Lời nhắc xác định phản hồi tĩnh hoặc động mà bạn sử dụng để trả lời người dùng.

  • Webhook cho phép bạn uỷ quyền thêm công việc cho các dịch vụ web (phương thức thực hiện), chẳng hạn như xác thực dữ liệu hoặc tạo câu lệnh. Hành động của bạn giao tiếp với phương thức thực hiện của bạn thông qua một giao thức webhook dựa trên JSON.

  • Canvas tương tác giúp bạn tạo quảng cáo và trải nghiệm phong phú với các ứng dụng web sử dụng HTML, CSS và JavaScript.

Tạo một dự án

Bạn phải tạo một dự án trong bảng điều khiển Actions trước khi có thể phát triển cho Trợ lý Google. Cách tạo dự án:

  1. Chuyển đến Bảng điều khiển Actions.
  2. Nhấp vào Dự án mới.
  3. Nhập tên cho dự án của bạn rồi nhấp vào Create Project (Tạo dự án).
  4. Trong màn hình Bạn muốn tạo loại hành động nào?, hãy chọn một danh mục thể hiện tốt nhất dự án của bạn, rồi nhấp vào Tiếp theo.
  5. Trong màn hình Bạn muốn tạo ứng dụng như thế nào, hãy chọn cách tạo và nhấp vào Bắt đầu xây dựng. Ví dụ: bạn có thể bắt đầu bằng một nhãn trống dự án hoặc với một mẫu.

Tạo một dự án SDK Actions cục bộ

Sau khi tạo một dự án Actions trong Bảng điều khiển Actions, bạn có thể khởi chạy một dự án trong môi trường phát triển cục bộ của bạn.

Để khởi chạy dự án SDK Actions từ một dự án Actions hiện có, hãy làm theo các bước sau:

  1. Tạo một thư mục trống cho dự án Actions trên hệ thống tệp cục bộ của bạn.
  2. Trong thư mục trống này, hãy tạo một thư mục sdk.
  3. Thay đổi thư mục đang hoạt động thành thư mục sdk trong thiết bị đầu cuối.

Bắt đầu với một dự án trống

Nếu bạn muốn bắt đầu từ dự án trống mà bạn vừa tạo trong bảng điều khiển, chạy gactions pull --project-id <my-project-id>.

$ 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

Bắt đầu với một dự án mẫu

Nếu bạn muốn bắt đầu từ một dự án mẫu, hãy chạy gactions init <sample name>.

$ 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.

Xác định thông tin dự án

Các chế độ cài đặt và tài nguyên của dự án xác định thông tin về dự án của bạn như hỗ trợ về tính năng và nền tảng, ngôn ngữ được hỗ trợ, tên hiển thị, nội dung mô tả, biểu trưng và nhiều nội dung khác. Bảng sau đây mô tả các chế độ cài đặt và tài nguyên chính mà bạn cung cấp. Actions on Google sử dụng thuộc tính này thông tin để triển khai và xuất bản dự án lên Trợ lý thư mục.

Tên Mô tả
Thông tin trong thư mục Cung cấp thông tin để Actions on Google có thể xuất bản dự án vào thư mục Trợ lý. Bao gồm siêu dữ liệu và nội dung mô tả chi tiết về tài nguyên dự án và hình ảnh cho biểu trưng và ảnh biểu ngữ.
Nhắm mục tiêu theo vị trí Định cấu hình ngôn ngữ mà Hành động của bạn sử dụng.
Khả năng của nền tảng Định cấu hình các nền tảng hiển thị Hành động của bạn.
Thông tin chi tiết về công ty Nêu rõ thông tin liên hệ của công ty.
Xác minh thương hiệu Kết nối một trang web hoặc ứng dụng Android mà bạn sở hữu để nhận thêm lợi ích chẳng hạn như tên lời gọi dành riêng và liên kết trang web trong Hành động.
Bản phát hành Thiết lập các bản phát hành thử nghiệm và phát hành công khai cho Hành động của bạn để thử nghiệm và sản xuất.
Đường liên kết đến Trợ lý Cho phép người dùng gọi Hành động từ các thuộc tính web của bạn.

Cách xác định thông tin dự án:

  1. Xác định chế độ cài đặt chung cho dự án Actions (Hành động) trong sdk/settings/settings.yaml. Xem tài liệu tham khảo về Cài đặt tài liệu về các giá trị được hỗ trợ.

    Đoạn mã sau đây cho thấy một tệp sdk/settings/settings.yaml mẫu:

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

  2. Xác định các chế độ cài đặt có thể khác nhau tuỳ theo ngôn ngữ của người dùng (ví dụ: các cụm từ của lời gọi bằng nhiều ngôn ngữ) trong tệp sdk/settings/<locale>/settings.yaml, thay thế locale bằng ngôn ngữ đích.

    Xem LocalizedSettings tài liệu tham khảo về các giá trị được hỗ trợ.

    Đoạn mã sau đây là ví dụ về chế độ cài đặt tiếng Anh được xác định trong Tệp sdk/settings/en/settings.yaml:

    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
    ...
    

Thêm tài nguyên

Bạn có thể lưu trữ các tài nguyên như tệp hình ảnh, tệp âm thanh và chuỗi trong Dự án Thao tác và tham chiếu đến các thao tác đó từ các tệp cấu hình (ví dụ: lời nhắc định nghĩa hoặc điều kiện) bằng cách sử dụng biến $resources do hệ thống xác định.

Tài nguyên dự án được lưu trữ trong resources/ và mỗi loại tài nguyên là đã gán một thư mục trong thư mục.

Bạn có thể bản địa hoá tài nguyên bằng cách tạo thư mục dành riêng cho từng ngôn ngữ trong tài nguyên Ví dụ: bạn có thể lưu trữ phiên bản tiếng Tây Ban Nha của các chuỗi trong resources/strings/es/<filename>.yaml.

Hình ảnh

Tệp hình ảnh được lưu trữ trong resources/images/ và bạn có thể tham khảo cùng với $resources.images.<name of the image file without file extension>. Các đuôi tệp được phép là:

  • gif
  • png
  • jpg
  • jpeg

Ví dụ: nếu phiên bản tiếng Anh của biểu trưng nhỏ được lưu trong resources/images/en/square.png và phiên bản tiếng Anh của biểu ngữ lớn là được lưu lần lượt vào resources/images/en/landscape.jpg, sdk/settings/en/settings.yaml trong ví dụ trước sẽ trở thành:

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
...

Tệp âm thanh

Các tệp âm thanh được lưu trữ trong resources/audio/ và bạn có thể tham khảo cùng với $resources.audio.<name of the audio file without file extension>.

Các đuôi tệp được phép là:

  • mp3
  • mpeg

Ví dụ: Bạn có thể tham chiếu bản ghi âm trong các câu lệnh:

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

Chuỗi

Chuỗi được lưu trữ trong resources/strings/ dưới dạng tệp .yaml. Mỗi tệp chứa bản đồ các khoá chuỗi và các giá trị được liên kết, có thể là một chuỗi hoặc danh sách chuỗi. Bạn có thể tham chiếu các giá trị bằng cách sử dụng $resources.strings.<name of the image file without file extension>.<key> cho các giá trị một chuỗi hoặc để nhận một giá trị ngẫu nhiên từ một danh sách và $resources.strings.<name of the image file without file extension>.<key>.<numerical index> cho một giá trị chuỗi cụ thể trong danh sách.

Ví dụ: sử dụng chuỗi tài nguyên để bản địa hoá chuỗi, sdk/settings/en/settings.yaml trong ví dụ trước có thể trở thành:

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
...

Kiểm thử dự án trong trình mô phỏng

Bảng điều khiển Actions cung cấp một trình mô phỏng để xem trước Actions của bạn. Chiến lược phát hành đĩa đơn trình mô phỏng cho phép bạn xem thông tin gỡ lỗi, thiết lập khả năng của thiết bị, mô phỏng ngôn ngữ, v.v.

Hình 3. Các khu vực chính của trình mô phỏng: (1) hoạt động đầu vào của người dùng, (2) chế độ xem thiết bị, (3) chế độ và chế độ cài đặt, và (4) nhật ký trò chuyện.

Cách kiểm thử một dự án:

  1. Chạy gactions deploy preview để triển khai Hành động của bạn thành "bản xem trước" và bật trong trình mô phỏng.
  2. Mở URL trong dữ liệu đầu ra của lệnh để truy cập vào Trình mô phỏng.
$ 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