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 คุณสามารถส่งไฟล์ประเภทเดียวไปยังเซิร์ฟเวอร์ได้ครั้งละ 1 ไฟล์เท่านั้น รวมถึงไฟล์การกำหนดค่าหรือไฟล์ข้อมูล file_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้
configFiles

object (ConfigFiles)

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

dataFiles

object (DataFiles)

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

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)

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

disabledRegions[]

string

แสดงภูมิภาคที่การดำเนินการของคุณถูกบล็อก โดยอิงตามตำแหน่งที่ผู้ใช้อยู่ ไม่สามารถตั้งค่าได้หากตั้งค่า enabledRegions ไว้ แต่ละภูมิภาคจะแสดงโดยใช้ชื่อ Canonical ของเป้าหมายตามภูมิศาสตร์ของ 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

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

containsAlcoholOrTobaccoContent

boolean

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

keepsMicOpen

boolean

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

surfaceRequirements

object (SurfaceRequirements)

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

testingInstructions

string

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

localizedSettings

object (LocalizedSettings)

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

accountLinking

object (AccountLinking)

อนุญาตให้ผู้ใช้สร้างหรือลิงก์บัญชีผ่าน Google Sign-In และ/หรือบริการ 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

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

การแสดง 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 แพลตฟอร์มรองรับเสียงการตอบสนองสื่อ
WEB_BROWSER Surface รองรับเว็บเบราว์เซอร์
ACCOUNT_LINKING แพลตฟอร์มรองรับการลิงก์บัญชี
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

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

fullDescription

string

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

smallLogoImage

string

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

largeBannerImage

string

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

developerName

string

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

developerEmail

string

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

termsOfServiceUrl

string

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

voice

string

ต้องระบุ ประเภทเสียงของ Google Assistant ที่ผู้ใช้จะได้ยินเมื่อโต้ตอบกับการดำเนินการของคุณ ค่าที่รองรับคือ "male_1", "male_2", "female_1" และ "female_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 Smallcaps

imageCornerStyle

enum (ImageCornerStyle)

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

landscapeBackgroundImage

string

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

portraitBackgroundImage

string

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

ImageCornerStyle

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

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

AccountLinking

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

สําหรับประเภทการลิงก์ Google Sign-In และ OAuth + Google Sign-In นั้น Google จะสร้างรหัสไคลเอ็นต์ที่ระบุแอปของคุณให้กับ Google ("รหัสไคลเอ็นต์ที่ Google ออกให้กับการดำเนินการของคุณ" ใน UI ของคอนโซล) ช่องนี้เป็นแบบอ่านอย่างเดียวและจะตรวจสอบได้โดยไปที่หน้าการลิงก์บัญชีของ 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)

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

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 คุณตรวจสอบชื่อของเครื่องจัดการนี้เพื่อเรียกใช้ฟังก์ชันที่ถูกต้องในซอร์สโค้ดของการดำเนินการตามคำสั่งซื้อได้

HttpsEndpoint

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

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

string

URL ฐานแบบ HTTPS สำหรับปลายทางของการดำเนินการตามคำสั่งซื้อ (ไม่รองรับ 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

เวอร์ชันของโปรโตคอลที่ปลายทางใช้ โปรโตคอลนี้เป็นโปรโตคอลที่ใช้ร่วมกันในการจำหน่ายทุกประเภท ไม่ใช่เฉพาะกับประเภทการดำเนินการตามคำสั่งซื้อของ 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 จับคู่ความตั้งใจกับข้อมูลจากผู้ใช้ได้โดยอัตโนมัติ ยิ่งมีวลีที่ไม่ซ้ำกันมากเท่าใด ก็ยิ่งมีโอกาสที่จะจับคู่ความตั้งใจนี้มากขึ้นเท่านั้น ต่อไปนี้เป็นรูปแบบของส่วนของวลีการฝึกที่มีคำอธิบายประกอบ โปรดทราบว่าช่อง 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/

ประเภท

การประกาศประเภทที่กำหนดเอง ไม่ใช่ประเภทในตัว คุณกำหนดประเภทให้กับสล็อตในฉากหรือพารามิเตอร์ของวลีการฝึกของ 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

ประเภทของการจับคู่ที่รายการในประเภทนี้จะใช้ ซึ่งจะช่วยให้แน่ใจว่าประเภทต่างๆ ทั้งหมดใช้วิธีการจับคู่แบบเดียวกัน และอนุญาตให้มีการจับคู่ในรูปแบบอื่นๆ สำหรับการจับคู่คำพ้องความหมาย (เช่น แบบ Fuzzy กับแบบตรงกันทั้งหมด) หากค่านี้เป็น 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

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

GlobalIntentEvent

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

คุณจับคู่ 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 อุปกรณ์แสดงการตอบกลับแคนวาสแบบอินเทอร์แอกทีฟได้
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

ตัวยึดตำแหน่งสำหรับส่วน Content ของ 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 อาจเป็นรายการใดก็ได้ต่อไปนี้ - URL http/https สำหรับเปิดแอปที่ลิงก์กับแอปหรือหน้าเว็บ

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 ไม่ได้ระบุแนวนอน
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 ค่า 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 ที่ตรงกับชื่อคีย์รายการในประเภทที่เชื่อมโยง เมื่อแตะรายการ คีย์นี้จะโพสต์กลับไปที่พารามิเตอร์ตัวเลือก

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

แสดงการตอบกลับ Interactive 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

บรรยากาศ

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

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

object (EventHandler)

ตัวแฮนเดิลที่จะเรียกใช้เมื่อเปลี่ยนเข้าสู่ฉากนี้

intentEvents[]

object (IntentEvent)

รายการเหตุการณ์ที่ทริกเกอร์ตาม Intent เหตุการณ์เหล่านี้ทริกเกอร์ได้ทุกเมื่อหลังจากเรียก Handler on_load แล้ว สำคัญ - เหตุการณ์เหล่านี้จะกำหนดชุดของ 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 substring - session.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 ที่กำหนดโดยไคลเอ็นต์

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

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 = "ตั๋ว" สอดคล้องกับ "$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

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

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

string

เส้นทางสัมพัทธ์ของไฟล์ข้อมูลจากรูทของโปรเจ็กต์ในโครงสร้างไฟล์ SDK เส้นทางไฟล์ที่อนุญาต: - รูปภาพ: resources/images/{multiple directories}?/{ImageName}.{extension} - เสียง: resources/audio/{multiple directories}?/{AudioFileName}.{extension} - รหัส Cloud Function ในบรรทัด: 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 มีไว้สำหรับฟังก์ชันระบบคลาวด์

payload

string (bytes format)

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

สตริงที่เข้ารหัสฐาน 64