Files

Wrapper สำหรับรายการไฟล์

การแสดง JSON
{

  // Union field file_type can be only one of the following:
  "configFiles": {
    object (ConfigFiles)
  },
  "dataFiles": {
    object (DataFiles)
  }
  // End of list of possible types for union field file_type.
}
ช่อง
ฟิลด์การรวม file_type สามารถส่งไฟล์ไปยังเซิร์ฟเวอร์ได้ทีละประเภทเท่านั้น ไฟล์การกำหนดค่าหรือไฟล์ข้อมูล file_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
configFiles

object (ConfigFiles)

รายการไฟล์การกำหนดค่า ซึ่งรวมถึงไฟล์ Manifest, การตั้งค่า, กลุ่มทรัพยากรของโมเดลการโต้ตอบ และอื่นๆ

dataFiles

object (DataFiles)

รายการไฟล์ข้อมูล ซึ่งรวมถึงรูปภาพ ไฟล์เสียง ซอร์สโค้ดของ Cloud Function

ConfigFiles

Wrapper สำหรับไฟล์การกำหนดค่าที่ซ้ำกัน ช่องที่ซ้ำต้องไม่อยู่ในช่องใดช่องหนึ่ง

การแสดง JSON
{
  "configFiles": [
    {
      object (ConfigFile)
    }
  ]
}
ช่อง
configFiles[]

object (ConfigFile)

ไฟล์การกำหนดค่าหลายไฟล์

ConfigFile

แสดงไฟล์เดียวซึ่งมีข้อมูลที่มีโครงสร้าง นักพัฒนาแอปจะกำหนดโปรเจ็กต์ส่วนใหญ่ได้โดยใช้การกำหนดค่าที่มีโครงสร้าง ซึ่งรวมถึงการดำเนินการ การตั้งค่า การดำเนินการให้เสร็จสมบูรณ์

การแสดง JSON
{
  "filePath": string,

  // Union field file can be only one of the following:
  "manifest": {
    object (Manifest)
  },
  "actions": {
    object (Actions)
  },
  "settings": {
    object (Settings)
  },
  "webhook": {
    object (Webhook)
  },
  "intent": {
    object (Intent)
  },
  "type": {
    object (Type)
  },
  "entitySet": {
    object (EntitySet)
  },
  "globalIntentEvent": {
    object (GlobalIntentEvent)
  },
  "scene": {
    object (Scene)
  },
  "staticPrompt": {
    object (StaticPrompt)
  },
  "accountLinkingSecret": {
    object (AccountLinkingSecret)
  },
  "resourceBundle": {
    object
  }
  // End of list of possible types for union field file.
}
ช่อง
filePath

string

เส้นทางสัมพัทธ์ของไฟล์การกำหนดค่าจากรูทของโปรเจ็กต์ในโครงสร้างไฟล์ SDK ไฟล์แต่ละประเภทด้านล่างมีเส้นทางของไฟล์ที่อนุญาต เช่น settings/settings.yaml

ฟิลด์การรวม file โดยไฟล์การกำหนดค่าแต่ละประเภทควรมีช่องที่สอดคล้องกันในไฟล์ใดไฟล์หนึ่ง file ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
manifest

object (Manifest)

ไฟล์ Manifest ไฟล์เดียว เส้นทางไฟล์ที่อนุญาต: manifest.yaml

actions

object (Actions)

ไฟล์การดำเนินการเดียวที่กำหนดการดำเนินการทั้งหมดไว้ เส้นทางไฟล์ที่อนุญาต: actions/{language}?/actions.yaml

settings

object (Settings)

ค่ากำหนดรายการเดียว ซึ่งรวมถึงการตั้งค่าที่ไม่สามารถแปลได้และการตั้งค่าสำหรับภาษาเริ่มต้นของโปรเจ็กต์ (หากระบุ) สำหรับไฟล์ลบล้างภาษา ระบบจะป้อนข้อมูลเฉพาะช่อง localizedSettings เส้นทางไฟล์ที่อนุญาต: settings/{language}?/settings.yaml โปรดทราบว่าไฟล์การตั้งค่าที่ไม่ใช่การแปลภาษา settings/settings.yaml ต้องมีอยู่ในคำขอขั้นตอนการเขียน

webhook

object (Webhook)

คำจำกัดความของเว็บฮุคเดียว เส้นทางไฟล์ที่อนุญาต: webhooks/{WebhookName}.yaml

intent

object (Intent)

คำจำกัดความของความตั้งใจเดียว เส้นทางไฟล์ที่อนุญาต: custom/intents/{language}?/{IntentName}.yaml

type

object (Type)

คำจำกัดความประเภทเดียว เส้นทางไฟล์ที่อนุญาต: custom/types/{language}?/{TypeName}.yaml

entitySet

object (EntitySet)

คำจำกัดความของชุดเอนทิตีเดียว เส้นทางไฟล์ที่อนุญาต: custom/entitySets/{language}?/{EntitySetName}.yaml

globalIntentEvent

object (GlobalIntentEvent)

คำจำกัดความของเหตุการณ์ Intent ส่วนกลางรายการเดียว เส้นทางไฟล์ที่อนุญาต: custom/global/{GlobalIntentEventName}.yaml ชื่อไฟล์ (GlobalIntentEventName) ควรเป็นชื่อของ Intent ที่เหตุการณ์ Intent แบบโกลบอลนี้สอดคล้องกับ

scene

object (Scene)

คำจำกัดความของฉากเดียว เส้นทางไฟล์ที่อนุญาต: custom/scenes/{SceneName}.yaml

staticPrompt

object (StaticPrompt)

คำจำกัดความของข้อความแจ้งแบบคงที่รายการเดียว เส้นทางไฟล์ที่อนุญาต: custom/prompts/{language}?/{StaticPromptName}.yaml

accountLinkingSecret

object (AccountLinkingSecret)

ข้อมูลเมตาที่สอดคล้องกับรหัสลับไคลเอ็นต์ที่ใช้ในการลิงก์บัญชี เส้นทางไฟล์ที่อนุญาต: settings/accountLinkingSecret.yaml

resourceBundle

object (Struct format)

กลุ่มทรัพยากรเดียว ซึ่งเป็นการจับคู่จากสตริงไปยังสตริงหรือรายการสตริง คุณใช้แพ็กเกจทรัพยากรเพื่อแปลสตริงในพรอมต์แบบคงที่ได้ เส้นทางไฟล์ที่อนุญาต: resources/strings/{language}?/{multiple directories}?/{BundleName}.yaml

ไฟล์ Manifest

มีข้อมูลที่ "ถ่ายโอนได้" เช่น ไม่เจาะจงโปรเจ็กต์ใดโปรเจ็กต์หนึ่ง และย้ายไปมาระหว่างโปรเจ็กต์ได้

การแสดง JSON
{
  "version": string
}
ช่อง
version

string

เวอร์ชันของรูปแบบไฟล์ รูปแบบไฟล์เวอร์ชันปัจจุบันคือ 1.0 เช่น "1.0"

การดำเนินการ

แสดงรายการการดำเนินการที่กำหนดไว้ในโปรเจ็กต์

การแสดง JSON
{
  "custom": {
    string: {
      object (CustomAction)
    },
    ...
  }
}
ช่อง
custom

map (key: string, value: object (CustomAction))

แมปจาก Intent ไปยังการดำเนินการที่กำหนดเองเพื่อกำหนดค่าการเรียกใช้สำหรับโปรเจ็กต์ โดย Intent ของคำขออาจเป็นระบบหรือ Intent แบบกำหนดเองที่กำหนดไว้ในแพ็กเกจ "custom/intent/" Intent ทั้งหมดที่ระบุไว้ที่นี่ (Intent ของระบบและ Intent ที่กำหนดเอง) ต้องมีไฟล์ Intent ที่เกี่ยวข้องในแพ็กเกจ "custom/Global/"

ออบเจ็กต์ที่มีรายการคู่ "key": value ตัวอย่างเช่น { "name": "wrench", "mass": "1.3kg", "count": "3" }

CustomAction

รายละเอียดเกี่ยวกับการกระทำแบบกำหนดเอง

การแสดง JSON
{
  "engagement": {
    object (Engagement)
  }
}
ช่อง
engagement

object (Engagement)

กลไกการมีส่วนร่วมที่เชื่อมโยงกับการดำเนินการเพื่อช่วยผู้ใช้ปลายทางสมัครรับข้อความ Push และการอัปเดตรายวัน โปรดทราบว่าชื่อ Intent ที่ระบุในการอัปเดตรายวัน/การกำหนดค่าช่องข้อความ Push ต้องตรงกับ Intent ที่สัมพันธ์กับการดำเนินการนี้เพื่อให้ผู้ใช้ปลายทางสมัครรับข้อมูลอัปเดตเหล่านี้

การมีส่วนร่วม

กำหนดกลไกการมีส่วนร่วมที่เชื่อมโยงกับการกระทำนี้ วิธีนี้ช่วยให้ผู้ใช้ปลายทางสมัครรับข้อความ Push และการอัปเดตรายวันได้

การแสดง JSON
{
  "title": string,
  "pushNotification": {
    object (PushNotification)
  },
  "actionLink": {
    object (ActionLink)
  },
  "assistantLink": {
    object (AssistantLink)
  },
  "dailyUpdate": {
    object (DailyUpdate)
  }
}
ช่อง
title

string

ชื่อของการมีส่วนร่วมที่จะส่งไปยังผู้ใช้ปลายทางเพื่อขอสิทธิ์รับการอัปเดต ข้อความแจ้งที่ส่งถึงผู้ใช้ปลายทางเพื่อรับข้อมูลอัปเดตรายวันจะมีลักษณะเป็น "คุณต้องการให้ฉันส่ง {title}" รายวันในเวลาใด และสำหรับข้อความ Push จะมีลักษณะเป็น "ฉันส่งข้อความ Push สำหรับ {title}" ได้ไหม ช่องนี้แปลได้

pushNotification

object (PushNotification)

การตั้งค่าข้อความ Push ที่รองรับการมีส่วนร่วมนี้

dailyUpdate

object (DailyUpdate)

การตั้งค่าการอัปเดตรายวันที่การมีส่วนร่วมนี้รองรับ

PushNotification

กำหนดการตั้งค่าข้อความ Push ที่การมีส่วนร่วมนี้รองรับ

DailyUpdate

กำหนดการตั้งค่าการอัปเดตรายวันที่รองรับการมีส่วนร่วมนี้

การตั้งค่า

แสดงการตั้งค่าของโครงการ Actions ที่ไม่ระบุภาษา แท็กถัดไป: 22

การแสดง JSON
{
  "projectId": string,
  "defaultLocale": string,
  "enabledRegions": [
    string
  ],
  "disabledRegions": [
    string
  ],
  "category": enum (Category),
  "usesTransactionsApi": boolean,
  "usesDigitalPurchaseApi": boolean,
  "usesInteractiveCanvas": boolean,
  "usesHomeStorage": boolean,
  "designedForFamily": boolean,
  "containsAlcoholOrTobaccoContent": boolean,
  "keepsMicOpen": boolean,
  "surfaceRequirements": {
    object (SurfaceRequirements)
  },
  "testingInstructions": string,
  "localizedSettings": {
    object (LocalizedSettings)
  },
  "accountLinking": {
    object (AccountLinking)
  },
  "selectedAndroidApps": [
    string
  ]
}
ช่อง
projectId

string

รหัสโปรเจ็กต์ Actions

defaultLocale

string

ภาษาซึ่งเป็นค่าเริ่มต้นสำหรับโปรเจ็กต์ สำหรับไฟล์ทั้งหมดยกเว้นใน resources/ ที่ไม่มีภาษาในเส้นทาง ระบบจะระบุแหล่งที่มาของข้อมูลที่แปลแล้วว่ามาจาก defaultLocale นี้ สำหรับไฟล์ภายใต้ resources/ ไม่มีภาษาหมายความว่าทรัพยากรนั้นใช้ได้กับทุกภาษา

enabledRegions[]

string

แสดงภูมิภาคที่ผู้ใช้เรียกใช้การดำเนินการของคุณได้ ซึ่งอิงตามสถานที่ที่ผู้ใช้มีอยู่ ไม่สามารถตั้งค่าได้ หากตั้งค่า disabledRegions ไว้ หากไม่ได้ระบุทั้ง enabledRegions และ disabledRegions ผู้ใช้จะเรียกใช้การดำเนินการของคุณในทุกภูมิภาคได้ แต่ละภูมิภาคจะแสดงโดยใช้ชื่อมาตรฐานของเป้าหมายตามภูมิศาสตร์ของ AdWords ดู https://developers.google.com/adwords/api/docs/appendix/geotargeting ตัวอย่างเช่น - "เยอรมนี" - "กานา" - "กรีซ" - "เกรเนดา" - "สหราชอาณาจักร" - "สหรัฐอเมริกา" - "หมู่เกาะขนาดเล็กรอบนอกของสหรัฐอเมริกา" - "อุรุกวัย"

disabledRegions[]

string

แสดงภูมิภาคที่การดำเนินการของคุณถูกบล็อก โดยอิงตามสถานที่ที่ผู้ใช้อยู่ ไม่สามารถตั้งค่าได้ หากตั้งค่า enabledRegions ไว้ แต่ละภูมิภาคจะแสดงโดยใช้ชื่อมาตรฐานของเป้าหมายตามภูมิศาสตร์ของ AdWords ดู https://developers.google.com/adwords/api/docs/appendix/geotargeting ตัวอย่างเช่น - "เยอรมนี" - "กานา" - "กรีซ" - "เกรเนดา" - "สหราชอาณาจักร" - "สหรัฐอเมริกา" - "หมู่เกาะขนาดเล็กรอบนอกของสหรัฐอเมริกา" - "อุรุกวัย"

category

enum (Category)

หมวดหมู่สำหรับโปรเจ็กต์ Actions นี้

usesTransactionsApi

boolean

การดำเนินการใช้ธุรกรรมได้หรือไม่ (เช่น การจอง รับคำสั่งซื้อ ฯลฯ) หากเป็นเท็จ ระบบจะพยายามใช้ Transaction API ไม่สำเร็จ

usesDigitalPurchaseApi

boolean

การดำเนินการสามารถทำธุรกรรมสำหรับสินค้าดิจิทัลได้หรือไม่

usesInteractiveCanvas

boolean

กำหนดว่าการดำเนินการใช้ Canvas แบบอินเทอร์แอกทีฟหรือไม่

usesHomeStorage

boolean

การดำเนินการใช้ฟีเจอร์พื้นที่เก็บข้อมูลในบ้านหรือไม่

designedForFamily

boolean

เนื้อหาการดำเนินการออกแบบเพื่อครอบครัว (DFF) หรือไม่

containsAlcoholOrTobaccoContent

boolean

การดําเนินการมีเนื้อหาเกี่ยวกับแอลกอฮอล์หรือยาสูบหรือไม่

keepsMicOpen

boolean

การดำเนินการอาจเปิดไมค์ทิ้งไว้โดยไม่มีการแจ้งเตือนที่ชัดเจนในระหว่างการสนทนาหรือไม่

surfaceRequirements

object (SurfaceRequirements)

ข้อกำหนดของแพลตฟอร์มที่แพลตฟอร์มไคลเอ็นต์ต้องรองรับเพื่อเรียกใช้ Actions ในโปรเจ็กต์นี้

testingInstructions

string

วิธีการทดสอบรูปแบบอิสระสำหรับผู้ตรวจสอบการดำเนินการ (เช่น วิธีการลิงก์บัญชี)

localizedSettings

object (LocalizedSettings)

การตั้งค่าที่แปลแล้วสำหรับภาษาเริ่มต้นของโปรเจ็กต์ ภาษาเพิ่มเติมทั้งหมดควรมีไฟล์การตั้งค่าของตัวเองในไดเรกทอรีของตัวเอง

accountLinking

object (AccountLinking)

อนุญาตให้ผู้ใช้สร้างหรือลิงก์บัญชีผ่านการลงชื่อเข้าใช้ Google และ/หรือบริการ OAuth ของคุณเอง

selectedAndroidApps[]

string

แอป Android ที่เลือกให้เข้าถึงการซื้อใน Google Play สำหรับธุรกรรม รายการนี้เป็นตัวเลือกจากแอป Android ที่เชื่อมต่อกับโปรเจ็กต์การดำเนินการเพื่อยืนยันการเป็นเจ้าของแบรนด์และเปิดใช้ฟีเจอร์เพิ่มเติม ดูข้อมูลเพิ่มเติมได้ที่ https://developers.google.com/assistant/console/brand-verification

หมวดหมู่

ตัวเลือกหมวดหมู่สำหรับโปรเจ็กต์การดำเนินการ

Enum
CATEGORY_UNSPECIFIED ไม่รู้จัก / ไม่ระบุ
BUSINESS_AND_FINANCE หมวดหมู่ธุรกิจและการเงิน
EDUCATION_AND_REFERENCE หมวดหมู่การศึกษาและข้อมูลอ้างอิง
FOOD_AND_DRINK อาหารและเครื่องดื่ม
GAMES_AND_TRIVIA หมวดหมู่เกมและเบ็ดเตล็ด
HEALTH_AND_FITNESS หมวดหมู่สุขภาพและการออกกำลังกาย
KIDS_AND_FAMILY หมวดหมู่เด็กและครอบครัว
LIFESTYLE หมวดหมู่ไลฟ์สไตล์
LOCAL หมวดหมู่ท้องถิ่น
MOVIES_AND_TV ภาพยนตร์และรายการทีวี
MUSIC_AND_AUDIO หมวดหมู่เพลงและเสียง
NEWS หมวดหมู่ข่าว
NOVELTY_AND_HUMOR หมวดหมู่แปลกใหม่และขำขัน
PRODUCTIVITY หมวดหมู่ประสิทธิภาพการทำงาน
SHOPPING หมวดหมู่ช็อปปิ้ง
SOCIAL หมวดหมู่โซเชียล
SPORTS หมวดหมู่กีฬา
TRAVEL_AND_TRANSPORTATION หมวดหมู่การเดินทางและการขนส่ง
UTILITIES หมวดหมู่สาธารณูปโภค
WEATHER หมวดหมู่สภาพอากาศ
HOME_CONTROL หมวดหมู่ระบบควบคุมอุปกรณ์ในบ้าน

SurfaceRequirements

มีชุดข้อกำหนดที่แพลตฟอร์มไคลเอ็นต์ต้องรองรับเพื่อเรียกใช้ Actions ในโปรเจ็กต์

การแสดง JSON
{
  "minimumRequirements": [
    {
      object (CapabilityRequirement)
    }
  ]
}
ช่อง
minimumRequirements[]

object (CapabilityRequirement)

ชุดความสามารถขั้นต่ำที่จำเป็นต่อการเรียกใช้การดำเนินการในโปรเจ็กต์ หากแพลตฟอร์มใดองค์ประกอบหนึ่งขาดไป การดำเนินการนั้นจะไม่ทริกเกอร์

CapabilityRequirement

หมายถึงข้อกำหนดเกี่ยวกับความพร้อมใช้งานของความสามารถที่ระบุ

การแสดง JSON
{
  "capability": enum (SurfaceCapability)
}
ช่อง
capability

enum (SurfaceCapability)

ประเภทของความสามารถ

SurfaceCapability

ชุดความสามารถของพื้นผิวที่เป็นไปได้

Enum
SURFACE_CAPABILITY_UNSPECIFIED ไม่รู้จัก / ไม่ระบุ
AUDIO_OUTPUT Surface รองรับเอาต์พุตเสียง
SCREEN_OUTPUT Surface รองรับการแสดงผลหน้าจอ/ภาพ
MEDIA_RESPONSE_AUDIO Surface รองรับเสียงการตอบสนองของสื่อ
WEB_BROWSER Surface รองรับเว็บเบราว์เซอร์
ACCOUNT_LINKING Surface รองรับการลิงก์บัญชี
INTERACTIVE_CANVAS Surface รองรับ Canvas แบบอินเทอร์แอกทีฟ
HOME_STORAGE Surface รองรับพื้นที่เก็บข้อมูลในบ้าน

LocalizedSettings

แสดงการตั้งค่าของโครงการ Actions ที่เจาะจงสำหรับภาษาของผู้ใช้ ในตัวอย่างนี้ ผู้ใช้หมายถึงผู้ใช้ปลายทางที่เรียกใช้การดำเนินการของคุณ ข้อความนี้แปลได้

การแสดง JSON
{
  "displayName": string,
  "pronunciation": string,
  "shortDescription": string,
  "fullDescription": string,
  "smallLogoImage": string,
  "largeBannerImage": string,
  "developerName": string,
  "developerEmail": string,
  "termsOfServiceUrl": string,
  "voice": string,
  "voiceLocale": string,
  "privacyPolicyUrl": string,
  "sampleInvocations": [
    string
  ],
  "themeCustomization": {
    object (ThemeCustomization)
  }
}
ช่อง
displayName

string

ต้องระบุ ชื่อที่แสดงเริ่มต้นของโปรเจ็กต์ Actions นี้ (หากไม่มีคําแปล)

pronunciation

string

ต้องระบุ การออกเสียงชื่อที่แสดงเพื่อเรียกภายในบริบทของเสียง (เสียงพูด)

shortDescription

string

ต้องระบุ คำอธิบายแบบย่อเริ่มต้นสำหรับโปรเจ็กต์ Actions (หากไม่มีคำแปล) จำนวนอักขระสูงสุด 80 อักขระ

fullDescription

string

ต้องระบุ คำอธิบายแบบยาวตามค่าเริ่มต้นสำหรับโปรเจ็กต์การดำเนินการ (หากไม่มีคำแปล) จำนวนอักขระสูงสุด 4,000 ตัว

smallLogoImage

string

ต้องระบุ รูปภาพสี่เหลี่ยมจัตุรัสเล็กขนาด 192 x 192 พิกเซล ควรระบุเป็นการอ้างอิงไปยังรูปภาพที่เกี่ยวข้องในไดเรกทอรี resources/images/ เช่น $resources.images.foo (ไม่มีส่วนขยาย) สำหรับรูปภาพใน resources/images/foo.jpg เมื่อทำงานกับโปรเจ็กต์ที่ดึงจากคอนโซล ระบบอาจใช้ URL ที่ Google จัดการ ไม่อนุญาตให้ใช้ URL จากแหล่งที่มาภายนอก

largeBannerImage

string

ไม่บังคับ รูปภาพแนวนอนขนาดใหญ่ขนาด 1920 x 1080 พิกเซล ควรระบุเป็นการอ้างอิงไปยังรูปภาพที่เกี่ยวข้องในไดเรกทอรี resources/images/ เช่น $resources.images.foo (ไม่มีส่วนขยาย) สำหรับรูปภาพใน resources/images/foo.jpg เมื่อทำงานกับโปรเจ็กต์ที่ดึงจากคอนโซล ระบบอาจใช้ URL ที่ Google จัดการ ไม่อนุญาตให้ใช้ URL จากแหล่งที่มาภายนอก

developerName

string

ต้องระบุ ชื่อของนักพัฒนาแอปที่จะแสดงต่อผู้ใช้

developerEmail

string

ต้องระบุ อีเมลสำหรับติดต่อของนักพัฒนาแอป

termsOfServiceUrl

string

ไม่บังคับ URL ข้อกำหนดในการให้บริการ

voice

string

ต้องระบุ ประเภทเสียงของ Google Assistant ที่ผู้ใช้ได้ยินเมื่อโต้ตอบกับ Actions ของคุณ ค่าที่รองรับคือ "ชาย_1", "ชาย_2", "หญิง_1" และ "หญิง_2"

voiceLocale

string

ไม่บังคับ ภาษาสำหรับเสียงที่ระบุ หากไม่ได้ระบุ ระบบจะใช้ภาษาของ Assistant แก่ผู้ใช้ หากระบุไว้ ภาษาเสียงต้องมีภาษาหลักเหมือนกับภาษาที่ระบุใน LocalizedSettings

privacyPolicyUrl

string

ต้องระบุ URL ของนโยบายความเป็นส่วนตัว

sampleInvocations[]

string

ไม่บังคับ ตัวอย่างวลีคำขอที่แสดงเป็นส่วนหนึ่งของคำอธิบายโปรเจ็กต์ Actions ในไดเรกทอรี Assistant วิธีนี้จะช่วยให้ผู้ใช้ทราบวิธีใช้งาน

themeCustomization

object (ThemeCustomization)

ไม่บังคับ การปรับแต่งธีมสำหรับคอมโพเนนต์ภาพของการดำเนินการของคุณ

ThemeCustomization

รูปแบบที่ใช้กับการ์ดที่แสดงให้ผู้ใช้เห็น

การแสดง JSON
{
  "backgroundColor": string,
  "primaryColor": string,
  "fontFamily": string,
  "imageCornerStyle": enum (ImageCornerStyle),
  "landscapeBackgroundImage": string,
  "portraitBackgroundImage": string
}
ช่อง
backgroundColor

string

สีพื้นหลังของการ์ด ทำหน้าที่เป็นโฆษณาสำรองหากนักพัฒนาแอปไม่ได้ให้ background_image หรือ background_image ไม่เหมาะกับบางแพลตฟอร์ม ตัวอย่างการใช้: #FAFAFA

primaryColor

string

ระบบจะใช้สีธีมหลักของการดำเนินการเพื่อกำหนดสีข้อความของชื่อ สีพื้นหลังของรายการการทำงานสำหรับการ์ด Actions on Google ตัวอย่างการใช้: #FAFAFA

fontFamily

string

ชุดแบบอักษรที่จะใช้เป็นชื่อของการ์ด แบบอักษรที่รองรับ: - Sans Serif - Sans Serif Medium - Sans Serif Bold - Sans Serif Black - Sans Serif Condensed - Sans Serif Condensed Medium - Serif - Serif Bold - Monospace - Cursive - Sans Serif ขนาดเล็ก

imageCornerStyle

enum (ImageCornerStyle)

รูปแบบเส้นขอบของรูปภาพเบื้องหน้าของการ์ด เช่น ใช้ได้กับรูปภาพเบื้องหน้าของการ์ดพื้นฐานหรือการ์ดภาพสไลด์

landscapeBackgroundImage

string

โหมดแนวนอน (ขั้นต่ำ 1920x1200 พิกเซล) ควรระบุเป็นการอ้างอิงไปยังรูปภาพที่เกี่ยวข้องในไดเรกทอรี resources/images/ เช่น $resources.images.foo (ไม่มีส่วนขยาย) สำหรับรูปภาพใน resources/images/foo.jpg เมื่อทำงานกับโปรเจ็กต์ที่ดึงจากคอนโซล จะสามารถใช้ URL ที่ Google จัดการได้

portraitBackgroundImage

string

โหมดแนวตั้ง (ขั้นต่ำ 1200x1920 พิกเซล) ควรระบุเป็นการอ้างอิงไปยังรูปภาพที่เกี่ยวข้องในไดเรกทอรี resources/images/ เช่น $resources.images.foo (ไม่มีส่วนขยาย) สำหรับรูปภาพใน resources/images/foo.jpg เมื่อทำงานกับโปรเจ็กต์ที่ดึงจากคอนโซล จะสามารถใช้ URL ที่ Google จัดการได้

ImageCornerStyle

อธิบายวิธีแสดงผลเส้นขอบของรูปภาพ

Enum
IMAGE_CORNER_STYLE_UNSPECIFIED ไม่ระบุ / ไม่ระบุ
CURVED มุมกลมมนสำหรับรูปภาพ
ANGLED มุมสี่เหลี่ยมผืนผ้าสำหรับรูปภาพ

AccountLinking

AccountLinking ช่วยให้ Google แนะนำผู้ใช้ให้ลงชื่อเข้าใช้บริการเว็บของแอปได้

สําหรับประเภทการลิงก์ Google Sign-In และ OAuth + Google Sign In นั้น Google จะสร้างรหัสไคลเอ็นต์ที่ระบุแอปให้ Google ("รหัสไคลเอ็นต์ที่ Google ออกไปยัง Actions" ใน UI ของ Console) ช่องนี้เป็นแบบอ่านอย่างเดียวและตรวจสอบได้โดยไปที่หน้าการลิงก์บัญชีของ Console UI ดูที่ https://developers.google.com/assistant/identity/google-sign-in

หมายเหตุ: สำหรับการตั้งค่าการลิงก์บัญชีทุกประเภท (ยกเว้น Google Sign-In) คุณต้องระบุชื่อผู้ใช้และรหัสผ่านของบัญชีทดสอบใน Settings.testing_instructions เพื่อให้ทีมตรวจสอบตรวจสอบแอปได้ (ผู้ใช้จะไม่เห็น)

การแสดง JSON
{
  "enableAccountCreation": boolean,
  "linkingType": enum (LinkingType),
  "authGrantType": enum (AuthGrantType),
  "appClientId": string,
  "authorizationUrl": string,
  "tokenUrl": string,
  "scopes": [
    string
  ],
  "learnMoreUrl": string,
  "useBasicAuthHeader": boolean
}
ช่อง
enableAccountCreation

boolean

ต้องระบุ หากเป็น true ผู้ใช้จะได้รับอนุญาตให้ลงชื่อสมัครใช้บัญชีใหม่ผ่านเสียง หากเป็น false คุณจะสร้างบัญชีได้เฉพาะในเว็บไซต์ของคุณเท่านั้น เลือกตัวเลือกนี้หากคุณต้องการแสดงข้อกำหนดในการให้บริการหรือขอความยินยอมจากผู้ใช้ระหว่างการลงชื่อสมัครใช้ LinkType จะเป็น GOOGLE_SIGN_IN ไม่ได้หากเป็น false linkType จะเป็น OAUTH ไม่ได้เมื่อเป็น true

linkingType

enum (LinkingType)

ต้องระบุ ประเภทการลิงก์ที่จะใช้ ดูรายละเอียดเพิ่มเติมเกี่ยวกับประเภทการลิงก์ได้ที่ https://developers.google.com/assistant/identity

authGrantType

enum (AuthGrantType)

ไม่บังคับ ระบุประเภทการตรวจสอบสิทธิ์สำหรับ OAUTH LinkingType

appClientId

string

ไม่บังคับ รหัสไคลเอ็นต์ที่แอปออกให้ Google นี่คือรหัสไคลเอ็นต์ OAuth2 ที่ระบุ Google สำหรับบริการของคุณ ตั้งค่าเมื่อใช้ OAuth เท่านั้น

authorizationUrl

string

ไม่บังคับ ปลายทางสำหรับหน้าเว็บการลงชื่อเข้าใช้ที่รองรับรหัส OAuth2 หรือขั้นตอนโดยปริยาย URL ต้องใช้ HTTPS ตั้งค่าเมื่อใช้ OAuth เท่านั้น

tokenUrl

string

ไม่บังคับ ปลายทาง OAuth2 สำหรับการแลกเปลี่ยนโทเค็น URL ต้องใช้ HTTPS หากไม่ได้ตั้งค่าไว้เมื่อใช้ OAuth ที่มีการให้สิทธิ์ IMPLICIT เป็นประเภทการลิงก์เท่านั้น ตั้งค่าเมื่อใช้ OAuth เท่านั้น

scopes[]

string

ไม่บังคับ รายการสิทธิ์ที่ผู้ใช้ต้องให้ความยินยอมเพื่อใช้บริการ ตั้งค่าเมื่อใช้ OAuth เท่านั้น ตรวจสอบว่าได้ระบุข้อกำหนดในการให้บริการในส่วน LocalizedSettings.terms_of_service_url หากระบุช่องนี้

learnMoreUrl

string

ไม่บังคับ นี่คือหน้าเว็บในบริการของคุณซึ่งอธิบายสิทธิ์ที่ผู้ใช้ให้กับ Google ตั้งค่าเมื่อใช้ OAuth และ Google Sign-In เท่านั้น ตรวจสอบว่าได้ระบุข้อกำหนดในการให้บริการในส่วน LocalizedSettings.terms_of_service_url หากระบุช่องนี้

useBasicAuthHeader

boolean

ไม่บังคับ หากเป็นค่าจริง อนุญาตให้ Google ส่งรหัสไคลเอ็นต์และข้อมูลลับผ่านส่วนหัวการตรวจสอบสิทธิ์พื้นฐานของ HTTP มิฉะนั้น Google จะใช้รหัสไคลเอ็นต์และข้อมูลลับภายในเนื้อหาของโพสต์ ตั้งค่าเมื่อใช้ OAuth เท่านั้น ตรวจสอบว่าได้ระบุข้อกำหนดในการให้บริการในส่วน LocalizedSettings.terms_of_service_url หากระบุช่องนี้

LinkingType

ประเภทของการลิงก์บัญชีที่จะดำเนินการ

Enum
LINKING_TYPE_UNSPECIFIED ไม่ระบุ
GOOGLE_SIGN_IN ประเภทการลิงก์ Google Sign In หากใช้การเชื่อมโยงประเภทนี้ คุณไม่จำเป็นต้องตั้งค่าช่องที่เกี่ยวข้องกับ OAuth ด้านล่าง
OAUTH_AND_GOOGLE_SIGN_IN ประเภทการลิงก์ OAuth และ Google Sign In
OAUTH ประเภทการลิงก์ OAuth

AuthGrantType

ประเภทการให้สิทธิ์ OAuth2 ที่ Google ใช้เพื่อแนะนำผู้ใช้ให้ลงชื่อเข้าใช้บริการเว็บของแอป

Enum
AUTH_GRANT_TYPE_UNSPECIFIED ไม่ระบุ
AUTH_CODE การให้สิทธิ์รหัสการให้สิทธิ์ ต้องระบุทั้ง URL การตรวจสอบสิทธิ์และ URL โทเค็นเพื่อการเข้าถึง
IMPLICIT การให้สิทธิ์รหัสโดยนัย เพียงแต่คุณต้องระบุ URL การตรวจสอบสิทธิ์

เว็บฮุค

ข้อมูลเมตาสำหรับเว็บฮุคประเภทต่างๆ หากใช้ inlineCloudFunction ซอร์สโค้ดต้องอยู่ในไดเรกทอรีที่มีชื่อเดียวกันกับค่าสำหรับคีย์ executeFunction ตัวอย่างเช่น ค่า my_webhook สำหรับคีย์ executeFunction จะมีโครงสร้างโค้ดเป็น - /webhooks/my_webhook.yaml - /webhooks/my_webhook/index.js - /webhooks/my_webhook/package.json

การแสดง JSON
{
  "handlers": [
    {
      object (Handler)
    }
  ],

  // Union field webhook_type can be only one of the following:
  "httpsEndpoint": {
    object (HttpsEndpoint)
  },
  "inlineCloudFunction": {
    object (InlineCloudFunction)
  }
  // End of list of possible types for union field webhook_type.
}
ช่อง
handlers[]

object (Handler)

รายการเครื่องจัดการสำหรับเว็บฮุคนี้

ฟิลด์การรวม webhook_type รองรับเว็บฮุคเพียงประเภทเดียวเท่านั้น webhook_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
httpsEndpoint

object (HttpsEndpoint)

ปลายทาง HTTPS ของเว็บฮุคที่กำหนดเอง

inlineCloudFunction

object (InlineCloudFunction)

ข้อมูลเมตาสำหรับ Cloud Function ที่ทำให้ใช้งานได้จากโค้ดในโฟลเดอร์เว็บฮุค

ตัวจัดการ

ประกาศชื่อเครื่องจัดการ Webhoook เว็บฮุคลงทะเบียนเครื่องจัดการได้หลายตัว คุณสามารถเรียกเครื่องจัดการเหล่านี้จากหลายที่ในโปรเจ็กต์ Actions ของคุณ

การแสดง JSON
{
  "name": string
}
ช่อง
name

string

ต้องระบุ ชื่อของเครื่องจัดการ ต้องไม่ซ้ำกันในเครื่องจัดการทั้งหมดในโปรเจ็กต์ Actions คุณตรวจสอบชื่อของเครื่องจัดการนี้เพื่อเรียกใช้ฟังก์ชันที่ถูกต้องในซอร์สโค้ด Fulfillment

HttpsEndpoint

ปลายทาง REST ที่จะแจ้งหากคุณไม่ได้ใช้เครื่องมือแก้ไขในบรรทัด

การแสดง JSON
{
  "baseUrl": string,
  "httpHeaders": {
    string: string,
    ...
  },
  "endpointApiVersion": integer
}
ช่อง
baseUrl

string

URL ฐาน HTTPS สำหรับปลายทาง Fulfillment (ไม่รองรับ HTTP) ชื่อเครื่องจัดการจะต่อท้ายเส้นทาง URL ฐานหลังเครื่องหมายโคลอน (ทำตามคู่มือสไตล์ใน https://cloud.google.com/apis/design/custom_methods) เช่น URL ฐาน "https://gactions.service.com/api" จะได้รับคำขอที่มี URL "https://gactions.service.com/api:{method}"

httpHeaders

map (key: string, value: string)

แมปของพารามิเตอร์ HTTP ที่จะรวมไว้ในคำขอ POST

ออบเจ็กต์ที่มีรายการคู่ "key": value ตัวอย่างเช่น { "name": "wrench", "mass": "1.3kg", "count": "3" }

endpointApiVersion

integer

เวอร์ชันของโปรโตคอลที่ปลายทางใช้ นี่คือโปรโตคอลที่ใช้ร่วมกันตามประเภท Fulfillment ทั้งหมดและใช้กับ Fulfillment ประเภท Google เท่านั้น

InlineCloudFunction

เก็บข้อมูลเมตาของ Cloud Function แบบอินไลน์ที่ทำให้ใช้งานได้จากโฟลเดอร์เว็บฮุค

การแสดง JSON
{
  "executeFunction": string
}
ช่อง
executeFunction

string

ชื่อของจุดแรกเข้าของ Cloud Function ค่าของช่องนี้ควรตรงกับชื่อของเมธอดที่ส่งออกจากซอร์สโค้ด

ความตั้งใจ

Intent จะแมปข้อมูลจากผู้ใช้ปลายเปิดกับออบเจ็กต์ที่มีโครงสร้าง ระบบจะจับคู่วลีที่พูดกับ Intent ด้วย Natural Language Understanding (NLU) ของ Google การจับคู่ Intent จะทริกเกอร์เหตุการณ์ในการออกแบบการสนทนาเพื่อให้การสนทนาของผู้ใช้ดำเนินไปได้ ชื่อ Intent จะระบุไว้ในชื่อไฟล์

การแสดง JSON
{
  "parameters": [
    {
      object (IntentParameter)
    }
  ],
  "trainingPhrases": [
    string
  ]
}
ช่อง
parameters[]

object (IntentParameter)

รายการพารามิเตอร์ภายในวลีการฝึก ต้องกำหนดพารามิเตอร์ทั้งหมดที่นี่เพื่อใช้ในวลีการฝึก

trainingPhrases[]

string

วลีการฝึกช่วยให้ NLU ของ Google จับคู่ Intent กับข้อมูลที่ผู้ใช้ป้อนได้โดยอัตโนมัติ ยิ่งมีวลีที่ไม่ซ้ำกันมาก ก็ยิ่งมีโอกาสจับคู่ความตั้งใจนี้มากขึ้น ต่อไปนี้เป็นรูปแบบของส่วนวลีที่ใช้ฝึกซึ่งมีคำอธิบายประกอบ โปรดทราบว่าช่อง auto เป็นช่องที่ไม่บังคับและลักษณะการทำงานเริ่มต้นเมื่อไม่ได้ระบุ auto จะเทียบเท่ากับ auto=false ($<paramName> '<sample text>' auto=<true or false>) auto = true หมายความว่าส่วนได้รับการใส่คำอธิบายประกอบอัตโนมัติโดย NLU auto = false หมายความว่าส่วนที่มีคำอธิบายประกอบโดยผู้ใช้ โดยจะเป็นค่าเริ่มต้นเมื่อไม่ได้ระบุอัตโนมัติ เช่น "จองเที่ยวบินจาก ($source 'San Francisco' auto=false) ไป ($dest 'Vancouver')"

IntentParameter

คำจำกัดความของพารามิเตอร์ที่สามารถใช้ภายในวลีการฝึก

การแสดง JSON
{
  "name": string,

  // Union field parameter_type can be only one of the following:
  "type": {
    object (ClassReference)
  },
  "entitySetReferences": {
    object (EntitySetReferences)
  }
  // End of list of possible types for union field parameter_type.
}
ช่อง
name

string

ต้องระบุ ชื่อที่ไม่ซ้ำกันของพารามิเตอร์ Intent ใช้ได้ในเงื่อนไขและการตอบสนองต่อพารามิเตอร์ Intent ในการอ้างอิงที่ NLU ดึงข้อมูลด้วย $intent.params.[name].resolved

ฟิลด์การรวม parameter_type ประเภทของพารามิเตอร์ Intent parameter_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
type

object (ClassReference)

ไม่บังคับ ประกาศประเภทข้อมูลของพารามิเตอร์นี้ ไม่ควรตั้งค่านี้สำหรับ Intent ในตัว

entitySetReferences

object (EntitySetReferences)

ไม่บังคับ การอ้างอิงชุดของเอนทิตีที่อนุญาตสำหรับพารามิเตอร์ Intent นี้ ใช้ได้เฉพาะกับพารามิเตอร์ของ Intent ในตัว การอ้างอิงเหล่านี้จะชี้ไปยังชุดเอนทิตีในไดเรกทอรี "custom/entitySets"

ClassReference

การอ้างอิงไปยังคลาสที่ใช้ในการประกาศประเภทของฟิลด์หรือค่าที่แสดงผล นอกจากนี้ Enum ยังเป็นคลาสอีกประเภทหนึ่งที่อ้างอิงถึงได้โดยใช้ ClassReference

การแสดง JSON
{
  "name": string,
  "list": boolean
}
ช่อง
name

string

ต้องระบุ ชื่อประเภทในตัวหรือประเภทที่กำหนดเองของพารามิเตอร์ ตัวอย่าง: PizzaToppings, actions.type.Number

list

boolean

ไม่บังคับ ระบุว่าประเภทข้อมูลแสดงรายการค่าหรือไม่

EntitySetReferences

การอ้างอิงชุดเอนทิตีสำหรับพารามิเตอร์ Intent

การแสดง JSON
{
  "entitySetReferences": [
    {
      object (EntitySetReference)
    }
  ]
}
ช่อง
entitySetReferences[]

object (EntitySetReference)

ต้องระบุ การอ้างอิงชุดเอนทิตีสำหรับพารามิเตอร์ Intent

EntitySetReference

การอ้างอิงชุดเอนทิตีที่อนุญาตสำหรับพารามิเตอร์ Intent นี้

การแสดง JSON
{
  "entitySet": string
}
ช่อง
entitySet

string

ต้องระบุ ระบุการรวบรวมเอนทิตีที่เฉพาะเจาะจงเพื่อพิจารณาสำหรับพารามิเตอร์ที่ระบุ คำจำกัดความชุดเอนทิตีที่เกี่ยวข้องควรแสดงอยู่ในไดเรกทอรี custom/entitySets/

Type

การประกาศประเภทที่กำหนดเอง ไม่ใช่การประกาศประเภทในตัว คุณกำหนดประเภทให้กับสล็อตในฉากหรือพารามิเตอร์ของวลีการฝึกของ Intent ได้ ในทางปฏิบัติอาจมองว่าประเภทเป็น Enum หมายเหตุ ชื่อประเภทจะระบุอยู่ในชื่อไฟล์

การแสดง JSON
{
  "exclusions": [
    string
  ],

  // Union field sub_type can be only one of the following:
  "synonym": {
    object (SynonymType)
  },
  "regularExpression": {
    object (RegularExpressionType)
  },
  "freeText": {
    object (FreeTextType)
  }
  // End of list of possible types for union field sub_type.
}
ช่อง
exclusions[]

string

ชุดของคำ/วลีพิเศษที่ไม่ควรจับคู่กันตามประเภท หมายเหตุ: หากคำ/วลีถูกจับคู่กับประเภท แต่แสดงเป็นการยกเว้น คำ/วลีจะไม่แสดงผลในผลการแยกพารามิเตอร์ ช่องนี้แปลได้

ฟิลด์การรวม sub_type การเลือกประเภทย่อยตามประเภทของการจับคู่ที่จะทำ sub_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
synonym

object (SynonymType)

ประเภทคำพ้องความหมาย ซึ่งเป็น enum โดยพื้นฐานแล้ว

regularExpression

object (RegularExpressionType)

ประเภทนิพจน์ทั่วไป อนุญาตการจับคู่นิพจน์ทั่วไป

freeText

object (FreeTextType)

ประเภท FreeText

SynonymType

พิมพ์ที่ตรงกับข้อความตามชุดคำพ้องความหมาย

การแสดง JSON
{
  "matchType": enum (MatchType),
  "acceptUnknownValues": boolean,
  "entities": {
    string: {
      object (Entity)
    },
    ...
  }
}
ช่อง
matchType

enum (MatchType)

ไม่บังคับ ประเภทการทำงานของคีย์เวิร์ดสำหรับคำพ้องความหมาย

acceptUnknownValues

boolean

ไม่บังคับ เมื่อตั้งค่าเป็น "จริง" การเลือกนี้จะจับคู่คำหรือวลีที่ไม่รู้จักตามข้อมูลการฝึกอินพุตและความตั้งใจโดยรอบ เช่น สินค้าที่อาจเพิ่มลงในรายการของชำ

entities

map (key: string, value: object (Entity))

ต้องระบุ แมปที่มีชื่อของเอนทิตีคำพ้องความหมาย

ออบเจ็กต์ที่มีรายการคู่ "key": value ตัวอย่างเช่น { "name": "wrench", "mass": "1.3kg", "count": "3" }

MatchType

ประเภทการจับคู่ที่รายการในประเภทนี้จะใช้ วิธีนี้จะทำให้มั่นใจว่าประเภททั้งหมดใช้วิธีการจับคู่เดียวกัน และอนุญาตให้มีการจับคู่รูปแบบต่างๆ สำหรับการจับคู่คำพ้องความหมาย (เช่น คลุมเครือกับตรงทั้งหมด) หากค่าเป็น UNSPECIFIED ระบบจะกำหนดค่าเริ่มต้นเป็น EXACT_MATCH

Enum
UNSPECIFIED ค่าเริ่มต้นคือ EXACT_MATCH
EXACT_MATCH ค้นหาคำพ้องความหมายหรือชื่อที่ตรงกันทั้งหมด
FUZZY_MATCH ยาวกว่า EXACT_MATCH ค้นหาการจับคู่ที่คล้ายกันและรายการที่ตรงกันทั้งหมด

เอนทิตี

แสดงฟิลด์เอนทิตีคำพ้องความหมายที่มีรายละเอียดของรายการรายการเดียวภายในประเภท

การแสดง JSON
{
  "display": {
    object (EntityDisplay)
  },
  "synonyms": [
    string
  ]
}
ช่อง
display

object (EntityDisplay)

ไม่บังคับ เอนทิตีจะแสดงรายละเอียด

synonyms[]

string

ไม่บังคับ รายการคำพ้องความหมายสำหรับเอนทิตี ช่องนี้แปลได้

EntityDisplay

องค์ประกอบที่จะแสดงบนผืนผ้าใบเมื่อมีการดึงเอนทิตีประเภทหนึ่งๆ จากคำค้นหา เกี่ยวข้องกับแอปที่เปิดใช้ Canvas เท่านั้น ข้อความนี้แปลได้

การแสดง JSON
{
  "iconTitle": string,
  "iconUrl": string
}
ช่อง
iconTitle

string

ไม่บังคับ ชื่อไอคอน

iconUrl

string

ต้องระบุ URL ของไอคอน

RegularExpressionType

พิมพ์ที่ตรงกับข้อความตามนิพจน์ทั่วไป ข้อความนี้แปลได้

การแสดง JSON
{
  "entities": {
    string: {
      object (Entity)
    },
    ...
  }
}
ช่อง
entities

map (key: string, value: object (Entity))

ต้องระบุ แมปชื่อของเอนทิตีที่แต่ละรายการมีสตริงนิพจน์ทั่วไป

ออบเจ็กต์ที่มีรายการคู่ "key": value ตัวอย่างเช่น { "name": "wrench", "mass": "1.3kg", "count": "3" }

เอนทิตี

แสดงออบเจ็กต์เอนทิตีที่มีนิพจน์ทั่วไปที่ใช้สำหรับการเปรียบเทียบ

การแสดง JSON
{
  "display": {
    object (EntityDisplay)
  },
  "regularExpressions": [
    string
  ]
}
ช่อง
display

object (EntityDisplay)

ไม่บังคับ องค์ประกอบที่จะแสดงบนผืนผ้าใบเมื่อแยกเอนทิตีออกจากการค้นหาแล้ว เกี่ยวข้องกับแอปที่เปิดใช้ Canvas เท่านั้น

regularExpressions[]

string

ต้องระบุ ใช้ไวยากรณ์นิพจน์ทั่วไป RE2 (ดูรายละเอียดเพิ่มเติมได้ที่ https://github.com/google/re2/wiki/Syntax)

FreeTextType

พิมพ์ที่ตรงกับข้อความใดก็ได้หากบริบทของคำโดยรอบใกล้เคียงกับตัวอย่างการฝึกที่ให้ไว้

การแสดง JSON
{
  "display": {
    object (EntityDisplay)
  }
}
ช่อง
display

object (EntityDisplay)

ไม่บังคับ องค์ประกอบที่จะแสดงบนผืนผ้าใบเมื่อแยกเอนทิตีออกจากการค้นหาแล้ว เกี่ยวข้องกับแอปที่เปิดใช้ Canvas เท่านั้น

EntitySet

ชุดเอนทิตีอธิบายชุดเอนทิตีที่กำหนดไว้ล่วงหน้าซึ่งเป็นค่าของพารามิเตอร์ Intent ในตัว สามารถอ้างอิงชุดเอนทิตีจากentitySet ในพารามิเตอร์ Intent ในตัวได้

การแสดง JSON
{
  "entities": [
    {
      object (Entity)
    }
  ]
}
ช่อง
entities[]

object (Entity)

ต้องระบุ รายการเอนทิตีที่ชุดเอนทิตีนี้รองรับ

เอนทิตี

เอนทิตีที่เป็นแหล่งที่มาของค่าพารามิเตอร์ Intent ในตัว

การแสดง JSON
{
  "id": string
}
ช่อง
id

string

ต้องระบุ รหัสของเอนทิตี ดูรายการพารามิเตอร์ Intent ในตัวและเอนทิตีที่รองรับได้ที่ https://developers.google.com/assistant/conversational/build/built-in-intents

GlobalIntentEvent

กำหนดเครื่องจัดการ Intent ส่วนกลาง เหตุการณ์ Intent ส่วนกลางจะกำหนดขอบเขตให้กับโปรเจ็กต์ Actions ทั้งโปรเจ็กต์ และอาจลบล้างโดยเครื่องจัดการ Intent ในโหมด ชื่อ Intent ต้องไม่ซ้ำกันภายในโปรเจ็กต์ Actions

คุณสามารถจับคู่ Intent ส่วนกลางได้ทุกเมื่อในระหว่างเซสชัน ซึ่งทำให้ผู้ใช้เข้าถึงขั้นตอนทั่วไปได้ เช่น "ขอความช่วยเหลือ" หรือ "กลับบ้าน" นอกจากนี้ยังใช้เพื่อทํา Deep Link ผู้ใช้ไปยังขั้นตอนที่เฉพาะเจาะจงเมื่อเรียกใช้การดําเนินการได้ด้วย

โปรดทราบว่าชื่อ Intent จะระบุอยู่ในชื่อไฟล์

การแสดง JSON
{
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
ช่อง
transitionToScene

string

ไม่บังคับ ฉากปลายทางที่การสนทนาควรข้ามไป สถานะของฉากปัจจุบันจะถูกทำลายเมื่อเปลี่ยน

handler

object (EventHandler)

ไม่บังคับ ตัวแฮนเดิลเหตุการณ์ซึ่งจะทำงานเมื่อตรงกับ Intent ควรดำเนินการก่อนเปลี่ยนเป็นฉากปลายทาง มีประโยชน์ในการสร้างข้อความแจ้งเพื่อตอบสนองต่อเหตุการณ์

EventHandler

กำหนดเครื่องจัดการที่จะดำเนินการหลังจากเหตุการณ์ ตัวอย่างเหตุการณ์คือเหตุการณ์ที่อิงตามเงื่อนไขและความตั้งใจในฉาก

การแสดง JSON
{
  "webhookHandler": string,

  // Union field prompt can be only one of the following:
  "staticPrompt": {
    object (StaticPrompt)
  },
  "staticPromptName": string
  // End of list of possible types for union field prompt.
}
ช่อง
webhookHandler

string

ชื่อเครื่องจัดการเว็บฮุคที่จะเรียกใช้

ฟิลด์การรวม prompt คุณสามารถแทรกหรืออ้างอิงพรอมต์ด้วยชื่อก็ได้ prompt ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
staticPrompt

object (StaticPrompt)

ข้อความแจ้งแบบคงที่ในบรรทัด อาจมีการอ้างอิงไปยังทรัพยากรสตริงในกลุ่ม

staticPromptName

string

ชื่อของข้อความแจ้งแบบคงที่ที่จะเรียกใช้

StaticPrompt

แสดงรายชื่อตัวเลือกข้อความแจ้ง โดยระบบจะเลือก 1 รายการเป็นพรอมต์เพื่อแสดงในคำตอบต่อผู้ใช้ ข้อความนี้แปลได้

การแสดง JSON
{
  "candidates": [
    {
      object (StaticPromptCandidate)
    }
  ]
}
ช่อง
candidates[]

object (StaticPromptCandidate)

รายการพรอมต์คำที่รอการพิจารณาที่จะส่งให้ลูกค้า แต่ละพรอมต์จะมีตัวเลือกสำหรับพิจารณาว่าจะใช้งานเมื่อใด ระบบจะส่งตัวเลือกแรกที่ตรงกับคำขอและไม่สนใจตัวเลือกที่เหลือ

StaticPromptCandidate

แสดงตัวเลือกข้อความแจ้งแบบคงที่

การแสดง JSON
{
  "selector": {
    object (Selector)
  },
  "promptResponse": {
    object (StaticPromptResponse)
  }
}
ช่อง
selector

object (Selector)

ไม่บังคับ เกณฑ์ที่ระบุว่าข้อความแจ้งนี้ตรงกับคำขอหรือไม่ หากตัวเลือกว่างเปล่า ระบบจะทริกเกอร์ข้อความแจ้งนี้เสมอ

promptResponse

object (StaticPromptResponse)

การตอบกลับพรอมต์ที่เชื่อมโยงกับตัวเลือก

ตัวเลือก

กำหนดเกณฑ์ว่าข้อความแจ้งจะตรงกับคำขอหรือไม่

การแสดง JSON
{
  "surfaceCapabilities": {
    object (SurfaceCapabilities)
  }
}
ช่อง
surfaceCapabilities

object (SurfaceCapabilities)

ชุดความสามารถของพื้นผิวที่ต้องการ

SurfaceCapabilities

แสดงแพลตฟอร์มที่ผู้ใช้ใช้ในการส่งคำขอไปยังการดำเนินการ

การแสดง JSON
{
  "capabilities": [
    enum (Capability)
  ]
}
ช่อง
capabilities[]

enum (Capability)

ต้องระบุ ความสามารถของแพลตฟอร์มที่ส่งคำขอไปยังการดำเนินการ

ความสามารถ

ความสามารถของแพลตฟอร์มอุปกรณ์รองรับ ณ เวลาที่ขอ

Enum
UNSPECIFIED ความสามารถของพื้นผิวที่ไม่ระบุ
SPEECH อุปกรณ์สามารถพูดคุยกับผู้ใช้ผ่านการอ่านออกเสียงข้อความหรือ SSML
RICH_RESPONSE อุปกรณ์แสดงการตอบสนองที่สมบูรณ์ได้ เช่น การ์ด รายการ และตาราง
LONG_FORM_AUDIO อุปกรณ์เล่นสื่อเสียงแบบยาว เช่น เพลงและพอดแคสต์ ได้
INTERACTIVE_CANVAS อุปกรณ์แสดงการตอบกลับ Canvas แบบอินเทอร์แอกทีฟได้
HOME_STORAGE อุปกรณ์รองรับการบันทึกและเรียกข้อมูลพื้นที่เก็บข้อมูลในบ้านได้

StaticPromptResponse

หมายถึงการตอบกลับที่มีโครงสร้างเพื่อส่งให้ผู้ใช้ เช่น ข้อความ, คำพูด, การ์ด, ข้อมูลใน Canvas, ชิปคำแนะนำ เป็นต้น

การแสดง JSON
{
  "firstSimple": {
    object (StaticSimplePrompt)
  },
  "content": {
    object (StaticContentPrompt)
  },
  "lastSimple": {
    object (StaticSimplePrompt)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (StaticLinkPrompt)
  },
  "override": boolean,
  "canvas": {
    object (StaticCanvasPrompt)
  }
}
ช่อง
firstSimple

object (StaticSimplePrompt)

ไม่บังคับ คำตอบแรกที่เป็นเสียงและข้อความเท่านั้น

content

object (StaticContentPrompt)

ไม่บังคับ เนื้อหา เช่น การ์ด รายการ หรือสื่อที่จะแสดงให้ผู้ใช้เห็น

lastSimple

object (StaticSimplePrompt)

ไม่บังคับ คำตอบสุดท้ายด้วยเสียงและข้อความเท่านั้น

suggestions[]

object (Suggestion)

ไม่บังคับ คำแนะนำที่จะแสดงแก่ผู้ใช้ ซึ่งจะปรากฏที่ตอนท้ายของคำตอบเสมอ หากช่อง append ในพรอมต์ที่มีคือ true ระบบจะเพิ่มชื่อที่กำหนดในช่องนี้ไปยังชื่อที่กำหนดไว้ในพรอมต์คำแนะนำที่กำหนดไว้ก่อนหน้าและระบบจะนำค่าที่ซ้ำออก

override

boolean

ไม่บังคับ โหมดสำหรับวิธีการรวมข้อความนี้กับข้อความที่กำหนดไว้ก่อนหน้า true จะล้างข้อความที่กำหนดไว้ก่อนหน้าทั้งหมด (ข้อความแรกและที่เรียบง่ายสุดท้าย เนื้อหา ลิงก์คำแนะนำ และ Canvas) แล้วเพิ่มข้อความที่กำหนดไว้ในพรอมต์นี้ false จะเพิ่มข้อความที่กำหนดไว้ในข้อความแจ้งนี้ลงในข้อความที่กำหนดไว้ในคำตอบก่อนหน้า การตั้งค่าช่องนี้เป็น false จะเปิดใช้การต่อท้ายบางช่องใน "พรอมต์อย่างง่าย", ข้อความแจ้งคำแนะนำ และข้อความแจ้งของ Canvas (ส่วนหนึ่งของพรอมต์เนื้อหา) ด้วย ข้อความเนื้อหาและลิงก์จะถูกเขียนทับเสมอหากกำหนดไว้ในพรอมต์ ค่าเริ่มต้นคือ false

canvas

object (StaticCanvasPrompt)

คำตอบที่จะใช้สำหรับประสบการณ์การใช้งาน Canvas แบบอินเทอร์แอกทีฟ

StaticSimplePrompt

หมายถึงข้อความแจ้งง่ายๆ ที่จะส่งไปยังผู้ใช้

การแสดง JSON
{
  "variants": [
    {
      object (Variant)
    }
  ]
}
ช่อง
variants[]

object (Variant)

รายการตัวแปรที่เป็นไปได้

รูปแบบ

แสดงตัวแปรที่เป็นส่วนหนึ่งของพรอมต์แบบง่าย

การแสดง JSON
{
  "speech": string,
  "text": string
}
ช่อง
speech

string

ไม่บังคับ แสดงคำพูดที่จะพูดกับผู้ใช้ โดยอาจเป็น SSML หรือการอ่านออกเสียงข้อความ โดยค่าเริ่มต้น คำพูดจะต่อท้ายคำพูดของข้อความแจ้งแบบง่ายก่อนหน้า หากช่อง override ในพรอมต์ที่มีคือ true คำพูดที่กำหนดในช่องนี้จะลบล้างเสียงพูดของข้อความแจ้งแบบง่ายก่อนหน้า

text

string

ไม่บังคับ ข้อความที่จะแสดงในลูกโป่งแชท ไม่เช่นนั้นจะใช้การแสดงผลของช่องคำพูดด้านบน จำกัดอักขระไม่เกิน 640 ตัว โดยค่าเริ่มต้น ระบบจะใส่ข้อความต่อท้ายข้อความในข้อความแจ้งแบบง่ายก่อนหน้า หากช่อง override ในพรอมต์ที่มีคือ true ข้อความที่กำหนดในช่องนี้จะลบล้างข้อความในข้อความแจ้งแบบง่ายก่อนหน้า

StaticContentPrompt

ตัวยึดตำแหน่งสำหรับส่วนเนื้อหาของ StaticPrompt

การแสดง JSON
{

  // Union field content can be only one of the following:
  "card": {
    object (StaticCardPrompt)
  },
  "image": {
    object (StaticImagePrompt)
  },
  "table": {
    object (StaticTablePrompt)
  },
  "media": {
    object (StaticMediaPrompt)
  },
  "list": {
    object (StaticListPrompt)
  },
  "collection": {
    object (StaticCollectionPrompt)
  },
  "collectionBrowse": {
    object (StaticCollectionBrowsePrompt)
  }
  // End of list of possible types for union field content.
}
ช่อง
ฟิลด์การรวม content แสดงเนื้อหาได้ในพรอมต์ได้เพียงประเภทเดียวเท่านั้น content ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
card

object (StaticCardPrompt)

บัตรพื้นฐาน

image

object (StaticImagePrompt)

รูปภาพ

table

object (StaticTablePrompt)

การ์ดตาราง

media

object (StaticMediaPrompt)

คำตอบที่ระบุชุดสื่อที่จะเล่น

list

object (StaticListPrompt)

การ์ดสำหรับนำเสนอรายการตัวเลือกที่มี

collection

object (StaticCollectionPrompt)

การ์ดที่แสดงรายการตัวเลือก

collectionBrowse

object (StaticCollectionBrowsePrompt)

การ์ดที่แสดงคอลเล็กชันหน้าเว็บเพื่อเปิด

StaticCardPrompt

การ์ดพื้นฐานสำหรับการแสดงข้อมูลบางอย่าง เช่น รูปภาพและ/หรือข้อความ

การแสดง JSON
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (StaticImagePrompt)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (StaticLinkPrompt)
  }
}
ช่อง
title

string

ไม่บังคับ ชื่อโดยรวมของการ์ด

subtitle

string

ไม่บังคับ คำบรรยายของการ์ด

text

string

ต้องระบุ ข้อความส่วนเนื้อหาของการ์ดที่ต้องใช้ เว้นแต่จะมีรูปภาพ รองรับไวยากรณ์มาร์กดาวน์บางส่วนสำหรับการจัดรูปแบบ

image

object (StaticImagePrompt)

ไม่บังคับ รูปภาพหลักของการ์ด ความสูงกำหนดตายตัวที่ 192dp

imageFill

enum (ImageFill)

ไม่บังคับ วิธีการเติมสีพื้นหลังรูปภาพ

button

object (StaticLinkPrompt)

ไม่บังคับ ปุ่มที่คลิกได้ที่จะแสดงในการ์ด

StaticImagePrompt

รูปภาพที่แสดงในการ์ด

การแสดง JSON
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
ช่อง
url

string

ต้องระบุ URL แหล่งที่มาของรูปภาพ รูปภาพต้องเป็น JPG, PNG และ GIF (เคลื่อนไหวและไม่เคลื่อนไหว) เช่น https://www.agentx.com/logo.png

alt

string

ต้องระบุ ข้อความอธิบายรูปภาพที่จะใช้สำหรับการช่วยเหลือพิเศษ เช่น โปรแกรมอ่านหน้าจอ

height

integer

ไม่บังคับ ความสูงของรูปภาพเป็นพิกเซล

width

integer

ไม่บังคับ ความกว้างของรูปภาพเป็นพิกเซล

ImageFill

ตัวเลือกการแสดงรูปภาพที่อาจมีผลต่อการนำเสนอรูปภาพ ควรใช้เมื่อสัดส่วนภาพของรูปภาพไม่ตรงกับสัดส่วนภาพของคอนเทนเนอร์รูปภาพ

Enum
UNSPECIFIED ไม่ได้ระบุ ImageFill
GRAY เติมช่องว่างระหว่างอิมเมจและคอนเทนเนอร์อิมเมจด้วยแถบสีเทา
WHITE เติมช่องว่างระหว่างอิมเมจและคอนเทนเนอร์อิมเมจด้วยแถบสีขาว
CROPPED มีการปรับขนาดรูปภาพให้ความกว้างและความสูงของภาพตรงกันหรือเกินขนาดของคอนเทนเนอร์ ซึ่งอาจครอบตัดด้านบนและด้านล่างของรูปภาพหากความสูงของรูปภาพที่ปรับขนาดมากกว่าความสูงของคอนเทนเนอร์ หรือครอบตัดด้านซ้ายและด้านขวาของรูปภาพหากความกว้างของรูปภาพที่ปรับขนาดมากกว่าความกว้างของคอนเทนเนอร์ ซึ่งคล้ายกับ "โหมดซูม" ในทีวีแบบจอกว้างเมื่อเล่นวิดีโอ 4:3

StaticLinkPrompt

กำหนดลิงก์ที่จะแสดงเป็นชิปคำแนะนำและผู้ใช้สามารถเปิดได้

การแสดง JSON
{
  "name": string,
  "open": {
    object (OpenUrl)
  }
}
ช่อง
name

string

ชื่อของลิงก์

open

object (OpenUrl)

กำหนดพฤติกรรมเมื่อผู้ใช้เปิดลิงก์

OpenUrl

กำหนดพฤติกรรมเมื่อผู้ใช้เปิดลิงก์

การแสดง JSON
{
  "url": string,
  "hint": enum (UrlHint)
}
ช่อง
url

string

ฟิลด์ URL ซึ่งอาจเป็นรายการใดรายการหนึ่งต่อไปนี้: - http/https urls สำหรับการเปิดแอปหรือหน้าเว็บที่ลิงก์ไปยังแอป

hint

enum (UrlHint)

ระบุคำแนะนำสำหรับประเภท URL

UrlHint

คำแนะนำ URL ประเภทต่างๆ

Enum
HINT_UNSPECIFIED ไม่ระบุ
AMP URL ที่ชี้ไปยังเนื้อหา AMP โดยตรง หรือไปยัง Canonical URL ซึ่งอ้างถึงเนื้อหา AMP ผ่าน <link rel="amphtml">

StaticTablePrompt

การ์ดตารางสำหรับแสดงตารางข้อความ

การแสดง JSON
{
  "title": string,
  "subtitle": string,
  "image": {
    object (StaticImagePrompt)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (StaticLinkPrompt)
  }
}
ช่อง
title

string

ไม่บังคับ ชื่อโดยรวมของตาราง ต้องตั้งค่าหากมีการตั้งค่าคำบรรยาย

subtitle

string

ไม่บังคับ ชื่อรองของตาราง

image

object (StaticImagePrompt)

ไม่บังคับ รูปภาพที่เชื่อมโยงกับตาราง

columns[]

object (TableColumn)

ไม่บังคับ ส่วนหัวและการจัดคอลัมน์

rows[]

object (TableRow)

ไม่บังคับ ข้อมูลแถวของตาราง ระบบรับประกันว่า 3 แถวแรกจะแสดง แต่แถวอื่นๆ อาจถูกตัดออกในบางพื้นผิว โปรดทดสอบด้วยเครื่องมือจำลองเพื่อดูว่าแถวใดจะแสดงขึ้นในพื้นผิวหนึ่งๆ ในแพลตฟอร์มที่รองรับความสามารถ WEB_BROWSER คุณจะนำผู้ใช้ไปยังหน้าเว็บที่มีข้อมูลเพิ่มเติมได้

button

object (StaticLinkPrompt)

ไม่บังคับ ปุ่ม

TableColumn

อธิบายคอลัมน์ในตาราง

การแสดง JSON
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
ช่อง
header

string

ข้อความส่วนหัวของคอลัมน์

align

enum (HorizontalAlignment)

การจัดข้อความแนวนอนของคอลัมน์เนื้อหา หากไม่ระบุ เนื้อหาจะอยู่ในแนวเดียวกับขอบที่ด้านหน้า

HorizontalAlignment

การจัดแนวเนื้อหาภายในเซลล์

Enum
UNSPECIFIED ไม่ได้ระบุ HorizontalAlignment
LEADING ขอบที่นำหน้าของเซลล์ โดยตัวเลือกนี้คือค่าเริ่มต้น
CENTER เนื้อหาจะอยู่ในแนวกึ่งกลางของคอลัมน์
TRAILING เนื้อหาจะอยู่ในแนวเดียวกับขอบด้านท้ายของคอลัมน์

TableRow

อธิบายแถวในตาราง

การแสดง JSON
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
ช่อง
cells[]

object (TableCell)

เซลล์ในแถวนี้ ระบบรับประกันว่าเซลล์ 3 เซลล์แรกจะแสดง แต่เซลล์อื่นอาจถูกตัดในบางพื้นผิว โปรดทดสอบด้วยเครื่องมือจำลองเพื่อดูว่าเซลล์ใดจะแสดงสำหรับพื้นผิวที่ระบุ

divider

boolean

ระบุว่าควรมีตัวแบ่งหลังแต่ละแถวหรือไม่

TableCell

อธิบายเซลล์ในแถว

การแสดง JSON
{
  "text": string
}
ช่อง
text

string

เนื้อหาข้อความของเซลล์

StaticMediaPrompt

มีข้อมูลเกี่ยวกับสื่อ เช่น ชื่อ, คำอธิบาย, URL ฯลฯ รหัสถัดไป: 11

การแสดง JSON
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ],
  "repeatMode": enum (RepeatMode)
}
ช่อง
mediaType

enum (MediaType)

ประเภทสื่อของคําตอบนี้

startOffset

string (Duration format)

ออฟเซ็ตเริ่มต้นของออบเจ็กต์สื่อแรก

ระยะเวลาเป็นวินาทีโดยมีตัวเลขเศษส่วนไม่เกิน 9 หลัก ลงท้ายด้วย "s" เช่น "3.5s"

optionalMediaControls[]

enum (OptionalMediaControls)

ประเภทตัวควบคุมสื่อที่ไม่บังคับซึ่งเซสชันการตอบสนองของสื่อนี้รองรับได้ หากตั้งค่าไว้ ระบบจะส่งคำขอไปที่ 3p เมื่อเกิดเหตุการณ์สื่อบางอย่างขึ้น หากไม่ได้ตั้งค่าไว้ 3p ยังต้องจัดการประเภทการควบคุมเริ่มต้น 2 ประเภท ได้แก่ FINISHED และ FAILED

mediaObjects[]

object (MediaObject)

รายการออบเจ็กต์สื่อ

repeatMode

enum (RepeatMode)

โหมดเล่นซ้ำสำหรับรายการออบเจ็กต์สื่อ

MediaType

ประเภทสื่อของคําตอบนี้

Enum
MEDIA_TYPE_UNSPECIFIED ค่าไม่ได้ระบุ
AUDIO ไฟล์เสียง
MEDIA_STATUS_ACK ตอบกลับเพื่อรับทราบรายงานสถานะสื่อ

OptionalMediaControls

ประเภทการควบคุมสื่อที่การตอบสนองของสื่ออาจรองรับ (ไม่บังคับ)

Enum
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED ค่าที่ไม่ได้ระบุไว้
PAUSED เหตุการณ์ที่หยุดชั่วคราว ทริกเกอร์เมื่อผู้ใช้หยุดสื่อชั่วคราว
STOPPED หยุดกิจกรรมแล้ว ทริกเกอร์เมื่อผู้ใช้ออกจากเซสชัน 3p ระหว่างการเล่นสื่อ

MediaObject

แสดงออบเจ็กต์สื่อเดี่ยว

การแสดง JSON
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
ช่อง
name

string

ชื่อของออบเจ็กต์สื่อนี้

description

string

คำอธิบายของออบเจ็กต์สื่อนี้

url

string

URL ที่ชี้ไปยังเนื้อหาสื่อ

image

object (MediaImage)

รูปภาพที่จะแสดงกับการ์ดสื่อ

MediaImage

รูปภาพที่จะแสดงใน MediaPrompt

การแสดง JSON
{

  // Union field image can be only one of the following:
  "large": {
    object (StaticImagePrompt)
  },
  "icon": {
    object (StaticImagePrompt)
  }
  // End of list of possible types for union field image.
}
ช่อง
ฟิลด์การรวม image อนุญาตให้ใช้ MediaImage ได้เพียงประเภทเดียวเท่านั้น image ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
large

object (StaticImagePrompt)

ภาพขนาดใหญ่ เช่น ปกอัลบั้ม ฯลฯ

icon

object (StaticImagePrompt)

ไอคอนรูปภาพขนาดเล็กที่แสดงทางด้านขวาจากชื่อ มีขนาด 36x36 dp

RepeatMode

ประเภทของโหมดเล่นซ้ำสำหรับรายการออบเจ็กต์สื่อ

Enum
REPEAT_MODE_UNSPECIFIED เทียบเท่ากับการปิด
OFF สิ้นสุดเซสชันสื่อที่จุดสิ้นสุดของออบเจ็กต์สื่อรายการสุดท้าย
ALL วนซ้ำไปยังจุดเริ่มต้นของออบเจ็กต์สื่อรายการแรกเมื่อมาถึงจุดสิ้นสุดของออบเจ็กต์สื่อรายการสุดท้าย

StaticListPrompt

การ์ดสำหรับนำเสนอรายการตัวเลือกที่มี

การแสดง JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
ช่อง
title

string

ไม่บังคับ ชื่อของรายการ

subtitle

string

ไม่บังคับ คำบรรยายของรายการ

items[]

object (ListItem)

ต้องระบุ รายการ

ListItem

รายการในรายการ

การแสดง JSON
{
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object (StaticImagePrompt)
  }
}
ช่อง
key

string

ต้องระบุ คีย์ NLU ที่ตรงกับชื่อคีย์เข้าถึงในประเภทที่เชื่อมโยง เมื่อแตะรายการแล้ว คีย์นี้จะถูกโพสต์กลับไปเป็นพารามิเตอร์ตัวเลือกตัวเลือก

title

string

ต้องระบุ ชื่อของสินค้า เมื่อแตะ ข้อความนี้จะถูกโพสต์กลับไปยังการสนทนาแบบคำต่อคำเหมือนกับว่าผู้ใช้ได้พิมพ์ข้อความลงไป แต่ละชื่อต้องไม่ซ้ำกันในชุดรายการ

description

string

ไม่บังคับ ข้อความส่วนเนื้อหาของสินค้า

image

object (StaticImagePrompt)

ไม่บังคับ รูปภาพสินค้า

StaticCollectionPrompt

การ์ดสำหรับนำเสนอคอลเล็กชันตัวเลือกที่มีให้เลือก

การแสดง JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
ช่อง
title

string

ไม่บังคับ ชื่อคอลเล็กชัน

subtitle

string

ไม่บังคับ ชื่อรองของคอลเล็กชัน

items[]

object (CollectionItem)

ต้องระบุ รายการคอลเล็กชัน

imageFill

enum (ImageFill)

ไม่บังคับ ประเภทตัวเลือกการแสดงรูปภาพ

CollectionItem

รายการในคอลเล็กชัน

การแสดง JSON
{
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object (StaticImagePrompt)
  }
}
ช่อง
key

string

ต้องระบุ คีย์ NLU ที่ตรงกับชื่อคีย์เข้าถึงใน Type ที่เกี่ยวข้อง เมื่อแตะรายการแล้ว คีย์นี้จะถูกโพสต์กลับไปเป็นพารามิเตอร์ตัวเลือกตัวเลือก

title

string

ต้องระบุ ชื่อของสินค้า เมื่อแตะ ข้อความนี้จะถูกโพสต์กลับไปยังการสนทนาแบบคำต่อคำเหมือนกับว่าผู้ใช้ได้พิมพ์ข้อความลงไป แต่ละชื่อต้องไม่ซ้ำกันในชุดรายการ

description

string

ไม่บังคับ ข้อความส่วนเนื้อหาของสินค้า

image

object (StaticImagePrompt)

ไม่บังคับ รูปภาพสินค้า

StaticCollectionBrowsePrompt

นำเสนอชุดเอกสารในเว็บเป็นคอลเล็กชันของรายการขนาดใหญ่ รายการอาจได้รับเลือกให้เปิดเอกสารบนเว็บที่เกี่ยวข้องในโปรแกรมดูเว็บ

การแสดง JSON
{
  "items": [
    {
      object (CollectionBrowseItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
ช่อง
items[]

object (CollectionBrowseItem)

รายการในคอลเล็กชันการเรียกดู ขนาดรายการควรอยู่ในช่วง [2, 10]

imageFill

enum (ImageFill)

ตัวเลือกการแสดงรูปภาพสำหรับรูปภาพในคอลเล็กชัน

CollectionBrowseItem

รายการในคอลเล็กชัน

การแสดง JSON
{
  "title": string,
  "description": string,
  "footer": string,
  "image": {
    object (StaticImagePrompt)
  },
  "openUriAction": {
    object (OpenUrl)
  }
}
ช่อง
title

string

ต้องระบุ ชื่อของรายการคอลเล็กชัน

description

string

คำอธิบายของรายการคอลเล็กชัน

footer

string

ข้อความส่วนท้ายสำหรับรายการคอลเล็กชันที่แสดงด้านล่างรายละเอียด ข้อความบรรทัดเดียวที่ตัดด้วยจุดไข่ปลา

image

object (StaticImagePrompt)

รูปภาพสำหรับรายการคอลเล็กชัน

openUriAction

object (OpenUrl)

ต้องระบุ URI ที่จะเปิดหากรายการที่เลือก

คำแนะนำ

แสดงชิปคำแนะนำ ซึ่งเป็นองค์ประกอบ UI ที่แสดงต่อผู้ใช้เพื่อความสะดวก

การแสดง JSON
{
  "title": string
}
ช่อง
title

string

ต้องระบุ ข้อความที่แสดงในชิปคำแนะนำ เมื่อแตะ ข้อความนี้จะถูกโพสต์กลับไปยังการสนทนาแบบคำต่อคำเหมือนกับว่าผู้ใช้ได้พิมพ์ข้อความลงไป ชื่อแต่ละชื่อต้องไม่ซ้ำกันในชุดชิปคำแนะนำ สูงสุด 25 อักขระ

StaticCanvasPrompt

แสดงการตอบกลับ Canvas แบบอินเทอร์แอกทีฟที่จะส่งถึงผู้ใช้ ซึ่งสามารถใช้ร่วมกับช่อง firstSimple ในพรอมต์ที่มีเพื่อสื่อสารกับผู้ใช้นอกเหนือจากการแสดงคำตอบ Canvas แบบอินเทอร์แอกทีฟ

การแสดง JSON
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "sendStateDataToCanvasApp": boolean,
  "enableFullScreen": boolean
}
ช่อง
url

string

ต้องระบุ URL ของมุมมองเว็บที่จะโหลด

data[]

value (Value format)

ไม่บังคับ ข้อมูล JSON ที่จะส่งไปยังหน้าเว็บประสบการณ์ที่สมจริงในรูปแบบเหตุการณ์ หากช่อง override ในพรอมต์ที่มีคือค่าข้อมูล false ที่กำหนดไว้ในพรอมต์ของ Canvas นี้จะเพิ่มเข้ามาหลังค่าข้อมูลที่กำหนดไว้ในข้อความแจ้งของ Canvas ก่อนหน้านี้

suppressMic

boolean

ไม่บังคับ ค่าจริงหมายความว่าระบบจะไม่เปิดไมโครโฟนเพื่อจับอินพุตหลังจากที่แสดงคำตอบที่สมจริงนี้ต่อผู้ใช้

sendStateDataToCanvasApp

boolean

ไม่บังคับ หากตั้งค่าเป็น true ระบบจะรวมข้อมูลเมตาที่เกี่ยวข้องกับการสนทนาและกลับไปยังแอปพลิเคชัน Canvas

enableFullScreen

boolean

ไม่บังคับ หาก true แอปพลิเคชัน Canvas จะใช้พื้นที่เต็มหน้าจอและไม่มีส่วนหัวที่ด้านบน ข้อความโทสต์จะแสดงในหน้าจอการโหลดที่มีชื่อที่แสดงของการดำเนินการ ชื่อนักพัฒนาซอฟต์แวร์ และวิธีการออกจากการดำเนินการด้วย ค่าเริ่มต้นคือ false

โหมด

Scene คือหน่วยพื้นฐานของขั้นตอนการควบคุมเมื่อออกแบบการสนทนา ภาพเหล่านี้สามารถเชื่อมโยงเข้ากับฉากอื่นๆ สร้างข้อความแจ้งสำหรับผู้ใช้ปลายทาง และกำหนดช่อง ชื่อโหมดจะระบุไว้ในชื่อไฟล์

การแสดง JSON
{
  "onEnter": {
    object (EventHandler)
  },
  "intentEvents": [
    {
      object (IntentEvent)
    }
  ],
  "conditionalEvents": [
    {
      object (ConditionalEvent)
    }
  ],
  "slots": [
    {
      object (Slot)
    }
  ],
  "onSlotUpdated": {
    object (EventHandler)
  }
}
ช่อง
onEnter

object (EventHandler)

เครื่องจัดการที่จะเรียกใช้เมื่อเปลี่ยนเข้าสู่โหมดนี้

intentEvents[]

object (IntentEvent)

รายการเหตุการณ์ที่ทริกเกอร์โดยอิงตาม Intent เหตุการณ์เหล่านี้สามารถทริกเกอร์ได้ทุกเมื่อหลังจากมีการเรียก on_load Handler แล้ว สำคัญ - เหตุการณ์เหล่านี้จะกำหนดชุดของ Intent ที่กำหนดขอบเขตไว้ที่โหมดนี้และจะมีลำดับความสำคัญเหนือกว่าเหตุการณ์ที่กำหนดไว้ทั่วโลกซึ่งมี Intent เดียวกันหรือวลีสำหรับทริกเกอร์ ชื่อ Intent ภายในฉากต้องไม่ซ้ำกัน

conditionalEvents[]

object (ConditionalEvent)

รายการเหตุการณ์ที่จะเรียกโดยอิงตามคำสั่งแบบมีเงื่อนไข ระบบจะประเมินสิ่งเหล่านี้หลังจากกรอกแบบฟอร์มแล้วหรือทันทีหลังจาก on_load หากไม่มีแบบฟอร์ม (ประเมินเพียงครั้งเดียว) ระบบจะเรียกเฉพาะเหตุการณ์ที่ตรงกันรายการแรกเท่านั้น

slots[]

object (Slot)

รายการสล็อตที่เรียงลำดับ แต่ละช่องจะกำหนดประเภทของข้อมูลที่จะแก้ไขและกำหนดค่าเพื่อปรับแต่งประสบการณ์ของความละเอียดนี้ (เช่น ข้อความแจ้ง)

onSlotUpdated

object (EventHandler)

มีการเรียกตัวแฮนเดิลเมื่อมีการเปลี่ยนสถานะของช่องที่ไม่ได้เกิดจากการอัปเดตภายในเครื่องจัดการอื่น ซึ่งจะทำให้สล็อตใช้งานไม่ได้ ฉากใช้งานไม่ได้ หรือมีการเปลี่ยนแปลงสถานะฉากแบบอื่นๆ

IntentEvent

บันทึกเหตุการณ์ซึ่งทริกเกอร์จากการจับคู่ Intent

การแสดง JSON
{
  "intent": string,
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
ช่อง
intent

string

ต้องระบุ Intent ทริกเกอร์เหตุการณ์

transitionToScene

string

ไม่บังคับ ฉากปลายทางที่การสนทนาควรข้ามไป สถานะของฉากปัจจุบันจะถูกทำลายเมื่อเปลี่ยน

handler

object (EventHandler)

ไม่บังคับ ตัวแฮนเดิลเหตุการณ์ซึ่งจะทำงานเมื่อตรงกับ Intent ควรดำเนินการก่อนเปลี่ยนเป็นฉากปลายทาง มีประโยชน์ในการสร้างข้อความแจ้งเพื่อตอบสนองต่อเหตุการณ์

ConditionalEvent

ลงทะเบียนเหตุการณ์ที่ทริกเกอร์ผลลัพธ์ของเงื่อนไขจริง

การแสดง JSON
{
  "condition": string,
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
ช่อง
condition

string

ต้องระบุ เงื่อนไขตัวกรองสำหรับเหตุการณ์นี้ที่จะทริกเกอร์ หากมีการประเมินเงื่อนไขเป็น "จริง" จะมีการทริกเกอร์ handler ที่เกี่ยวข้อง ระบบรองรับการอ้างอิงตัวแปรต่อไปนี้ $session - ใช้อ้างอิงข้อมูลในพื้นที่เก็บข้อมูลเซสชัน $user - ใช้อ้างอิงข้อมูลในพื้นที่เก็บข้อมูลของผู้ใช้ ระบบรองรับโอเปอเรเตอร์บูลีนต่อไปนี้ (พร้อมตัวอย่าง) && - session.params.counter > 0 && session.params.counter < 100 || - session.params.foo == "John" || session.params.counter == "Adam" ! - !(session.params.counter == 5) รองรับการเปรียบเทียบ ==, !=, <, >, <=, >= ระบบรองรับโอเปอเรเตอร์รายการและสตริงต่อไปนี้ (พร้อมตัวอย่าง): in - "Watermelon" ใน session.params.fruitList size - size(session.params.fruitList) > 2 - substringsession.params.fullName.contains("John")

transitionToScene

string

ไม่บังคับ โหมดปลายทางที่การสนทนาควรข้ามไปเมื่อประเมินเงื่อนไขที่เกี่ยวข้องเป็นจริง สถานะของฉากปัจจุบันจะถูกทำลายเมื่อเปลี่ยน

handler

object (EventHandler)

ไม่บังคับ ตัวแฮนเดิลเหตุการณ์ที่จะทริกเกอร์เมื่อประเมินเงื่อนไขที่เกี่ยวข้องเป็น true ควรดำเนินการก่อนเปลี่ยนเป็นฉากปลายทาง มีประโยชน์ในการสร้างข้อความแจ้งเพื่อตอบสนองต่อเหตุการณ์

ช่อง

การกำหนดค่าสำหรับสล็อต สล็อตคือหน่วยข้อมูลเดียวที่เติมผ่านภาษาธรรมชาติ (เช่น พารามิเตอร์ Intent) พารามิเตอร์เซสชัน และแหล่งที่มาอื่นๆ ได้

การแสดง JSON
{
  "name": string,
  "type": {
    object (ClassReference)
  },
  "required": boolean,
  "promptSettings": {
    object (PromptSettings)
  },
  "commitBehavior": {
    object (CommitBehavior)
  },
  "config": value,
  "defaultValue": {
    object (DefaultValue)
  }
}
ช่อง
name

string

ต้องระบุ ชื่อของช่องโฆษณา

type

object (ClassReference)

ต้องระบุ ประกาศประเภทข้อมูลของช่องนี้

required

boolean

ไม่บังคับ ระบุว่าต้องเติมช่องโฆษณาก่อนที่จะเลื่อนไปยังช่องอื่นหรือไม่ ช่องโฆษณาที่จำเป็นที่ไม่ได้รับการเติมโฆษณาจะทริกเกอร์ข้อความแจ้งที่ปรับแต่งได้ให้แก่ผู้ใช้

promptSettings

object (PromptSettings)

ไม่บังคับ ลงทะเบียน แจ้งเตือนสำหรับการใส่ข้อมูลในช่องระยะต่างๆ

commitBehavior

object (CommitBehavior)

ไม่บังคับ ลักษณะการทำงานของคอมมิตที่เชื่อมโยงกับช่องโฆษณา

config

value (Value format)

ไม่บังคับ การกำหนดค่าเพิ่มเติมที่เชื่อมโยงกับช่องโฆษณาซึ่งใช้สำหรับเติมช่องโฆษณา รูปแบบของการกำหนดค่าจะเฉพาะเจาะจงสำหรับประเภทสล็อต เพิ่มการอ้างอิงทรัพยากรไปยังผู้ใช้หรือพารามิเตอร์เซสชันลงในการกำหนดค่านี้ได้ ซึ่งจำเป็นต้องใช้การกำหนดค่านี้สำหรับการเติมเต็มช่องที่เกี่ยวข้องกับธุรกรรมและการมีส่วนร่วมของผู้ใช้

ตัวอย่างเช่น สำหรับสล็อตประเภท actions.type.CompletePurchaseValue การกำหนดค่าต่อไปนี้ให้คำสั่งซื้อสินค้าดิจิทัลที่มีการอ้างอิงไปยังพารามิเตอร์เซสชัน userSelectedSkuId ที่ลูกค้ากำหนด

{ "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" } }

defaultValue

object (DefaultValue)

ไม่บังคับ กำหนดค่าเพื่อเติมค่าเริ่มต้นสำหรับช่องนี้

PromptSettings

ตําแหน่งเดียวที่มีการกำหนดข้อความแจ้งของช่อง

การแสดง JSON
{
  "initialPrompt": {
    object (EventHandler)
  },
  "noMatchPrompt1": {
    object (EventHandler)
  },
  "noMatchPrompt2": {
    object (EventHandler)
  },
  "noMatchFinalPrompt": {
    object (EventHandler)
  },
  "noInputPrompt1": {
    object (EventHandler)
  },
  "noInputPrompt2": {
    object (EventHandler)
  },
  "noInputFinalPrompt": {
    object (EventHandler)
  }
}
ช่อง
initialPrompt

object (EventHandler)

พร้อมท์สำหรับค่าของช่องโฆษณา เช่น "ขนาดที่ต้องการ"

noMatchPrompt1

object (EventHandler)

แจ้งให้ระบุเมื่อข้อมูลของผู้ใช้ไม่ตรงกับประเภทค่าที่คาดไว้สำหรับช่องโฆษณาเป็นครั้งแรก เช่น "ขอโทษที ฉันไม่เข้าใจ"

noMatchPrompt2

object (EventHandler)

แจ้งให้ระบุเมื่ออินพุตของผู้ใช้ไม่ตรงกับประเภทค่าที่คาดไว้สำหรับช่องเป็นครั้งที่ 2 เช่น "ขอโทษที ฉันไม่เข้าใจ"

noMatchFinalPrompt

object (EventHandler)

แจ้งให้ระบุเมื่ออินพุตของผู้ใช้ไม่ตรงกับประเภทค่าที่คาดไว้สำหรับช่องสำหรับครั้งล่าสุด เช่น "ขอโทษที ฉันไม่เข้าใจ"

noInputPrompt1

object (EventHandler)

แจ้งให้ระบุเมื่อผู้ใช้ไม่ได้ป้อนข้อมูลเป็นครั้งแรก เช่น "ขอโทษที ฉันไม่เข้าใจ"

noInputPrompt2

object (EventHandler)

แจ้งให้ระบุเมื่อผู้ใช้ไม่ได้ป้อนข้อมูลเป็นครั้งที่ 2 เช่น "ขอโทษที ฉันไม่เข้าใจ"

noInputFinalPrompt

object (EventHandler)

แจ้งให้ระบุเมื่อผู้ใช้ไม่ได้ป้อนข้อมูลในครั้งล่าสุด เช่น "ขอโทษที ฉันไม่เข้าใจ"

CommitBehavior

ข้อความที่อธิบายลักษณะการคอมมิตที่เชื่อมโยงกับช่องโฆษณาเรียบร้อยแล้ว

การแสดง JSON
{
  "writeSessionParam": string
}
ช่อง
writeSessionParam

string

พารามิเตอร์เซสชันที่จะเขียนค่าช่องโฆษณาหลังจากเติมค่าแล้ว โปรดทราบว่าปัจจุบันยังไม่รองรับเส้นทางที่ซ้อนกัน "$$" ใช้ในการเขียนค่าของสล็อตลงในพารามิเตอร์เซสชันโดยใช้ชื่อเดียวกับช่องโฆษณา เช่น WriteSessionParam = "fruit" จะสอดคล้องกับ "$session.params.fruit" writeSessionParam = "ticket" จะสอดคล้องกับ "$session.params.ticket"

DefaultValue

กำหนดค่าเพื่อเติมค่าเริ่มต้นสำหรับช่องนี้

การแสดง JSON
{
  "sessionParam": string,
  "constant": value
}
ช่อง
sessionParam

string

ไม่บังคับ พารามิเตอร์เซสชันที่จะใช้เริ่มต้นค่าของสล็อต ถ้ามีค่าที่ไม่ว่างเปล่า ประเภทของค่าต้องตรงกับประเภทของช่องโฆษณา โปรดทราบว่าปัจจุบันยังไม่รองรับเส้นทางที่ซ้อนกัน เช่น sessionParam = "fruit" สอดคล้องกับ $session.params.fruit sessionParam = "ticket" สอดคล้องกับ $session.params.ticket

constant

value (Value format)

ไม่บังคับ ค่าเริ่มต้นคงที่สำหรับช่อง ตัวเลือกนี้จะใช้ก็ต่อเมื่อไม่ได้ป้อนข้อมูลค่าสำหรับช่องนี้ผ่าน sessionParam เท่านั้น ประเภทของค่านี้ต้องตรงกับประเภทของช่องโฆษณา

DataFiles

Wrapper สำหรับไฟล์ข้อมูลซ้ำ ช่องที่ซ้ำต้องไม่อยู่ในช่องใดช่องหนึ่ง

การแสดง JSON
{
  "dataFiles": [
    {
      object (DataFile)
    }
  ]
}
ช่อง
dataFiles[]

object (DataFile)

ไฟล์ข้อมูลหลายไฟล์

DataFile

แสดงไฟล์เดียวซึ่งมีข้อมูลที่ไม่มีโครงสร้าง ตัวอย่างเช่น ไฟล์ภาพ ไฟล์เสียง และซอร์สโค้ดของฟังก์ชันระบบคลาวด์

การแสดง JSON
{
  "filePath": string,
  "contentType": string,
  "payload": string
}
ช่อง
filePath

string

เส้นทางที่เกี่ยวข้องของไฟล์ข้อมูลจากรูทของโปรเจ็กต์ในโครงสร้างไฟล์ SDK เส้นทางไฟล์ที่อนุญาต: - รูปภาพ: resources/images/{multiple directories}?/{ImageName}.{extension} - เสียง: resources/audio/{multiple directories}?/{AudioFileName}.{extension} - รหัสฟังก์ชันระบบคลาวด์แบบแทรกในบรรทัด: webhooks/{WebhookName}.zip ส่วนขยายที่อนุญาต: - รูปภาพ: png, jpg, jpeg - เสียง: mp3, mpeg - ฟังก์ชันระบบคลาวด์แบบแทรกในบรรทัด: zip

contentType

string

ต้องระบุ ประเภทเนื้อหาของเนื้อหานี้ ตัวอย่าง: text/html ประเภทเนื้อหาต้องเป็นไปตามข้อกำหนด (http://www.w3.org/Protocols/rfc1341/4_Content-Type.html) ฟังก์ชันระบบคลาวด์ต้องอยู่ในรูปแบบ ZIP และประเภทเนื้อหาควรเป็น application/zip;zip_type=cloud_function พารามิเตอร์ zip_type ระบุว่าไฟล์ zip มีไว้สำหรับ Cloud Function

payload

string (bytes format)

เนื้อหาของไฟล์ข้อมูล เช่น ไบต์ดิบของรูปภาพ ไฟล์เสียง หรือรูปแบบ ZIP ของ Cloud Function ขนาดเพย์โหลดมีขีดจำกัดสูงสุด 10 MB

สตริงที่เข้ารหัสแบบ Base64