Method: projects.sendInteraction

یک دور از مکالمه را پخش می کند.

درخواست HTTP

POST https://actions.googleapis.com/v2/{project=projects/*}:sendInteraction

URL از دستور GRPC Transcoding استفاده می کند.

پارامترهای مسیر

پارامترها
project

string

مورد نیاز. پروژه در حال آزمایش، با شناسه پروژه نشان داده شده است. قالب: پروژه ها/{پروژه}

درخواست بدن

بدنه درخواست حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "input": {
    object (UserInput)
  },
  "deviceProperties": {
    object (DeviceProperties)
  },
  "conversationToken": string
}
فیلدها
input

object ( UserInput )

مورد نیاز. ورودی ارائه شده توسط کاربر

deviceProperties

object ( DeviceProperties )

مورد نیاز. ویژگی های دستگاه مورد استفاده برای تعامل با Action.

conversationToken

string

توکن مات که باید همانطور که از SendInteractionResponse در تعامل قبلی دریافت شد، ارسال شود. برای شروع یک مکالمه جدید، چه به عنوان اولین تعامل یک جلسه آزمایشی، چه برای رها کردن مکالمه قبلی و شروع یک مکالمه جدید، می توان این را تنظیم نکرد.

بدن پاسخگو

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:

پاسخ به یک دور از گفتگو.

نمایندگی JSON
{
  "output": {
    object (Output)
  },
  "diagnostics": {
    object (Diagnostics)
  },
  "conversationToken": string
}
فیلدها
output

object ( Output )

خروجی ارائه شده به کاربر

diagnostics

object ( Diagnostics )

اطلاعات عیب‌یابی که نحوه رسیدگی به درخواست را توضیح می‌دهد.

conversationToken

string

توکن مات در SendInteractionRequest در تماس بعدی RPC برای ادامه همان مکالمه تنظیم می شود.

ورودی کاربر

ورودی کاربر در یک دور مکالمه ارائه شده است.

نمایندگی JSON
{
  "query": string,
  "type": enum (InputType)
}
فیلدها
query

string

محتوای ورودی ارسال شده توسط کاربر.

type

enum ( InputType )

نوع ورودی

نوع ورودی

منبع ورودی، درخواست تایپ شده یا درخواست صوتی را نشان می دهد.

Enums
INPUT_TYPE_UNSPECIFIED منبع ورودی نامشخص
TOUCH پرس و جو از یک تعامل GUI.
VOICE پرس و جو صوتی
KEYBOARD پرس و جو تایپ شده
URL این اقدام توسط یک پیوند URL فعال شد.

ویژگی های دستگاه

ویژگی های دستگاه مربوط به یک دور مکالمه.

نمایندگی JSON
{
  "surface": enum (Surface),
  "location": {
    object (Location)
  },
  "locale": string,
  "timeZone": string
}
فیلدها
surface

enum ( Surface )

سطح مورد استفاده برای تعامل با Action.

location

object ( Location )

مکان دستگاه مانند طول جغرافیایی، طول جغرافیایی و آدرس قالب‌بندی شده.

locale

string

محلی که روی دستگاه تنظیم شده است. قالب باید از BCP 47 پیروی کند: https://tools.ietf.org/html/bcp47 مثال‌ها: en, en-US, es-419 (نمونه‌های بیشتر در https://tools.ietf.org/html/bcp47#appendix -الف) .

timeZone

string

منطقه زمانی همانطور که روی دستگاه تنظیم شده است. قالب باید از پایگاه داده منطقه زمانی IANA پیروی کند، به عنوان مثال "America/New_York": https://www.iana.org/time-zones

سطح

سطوح احتمالی مورد استفاده برای تعامل با Action. ممکن است مقادیر اضافی در آینده گنجانده شود.

Enums
SURFACE_UNSPECIFIED مقدار پیش فرض این مقدار استفاده نشده است.
SPEAKER بلندگو (به عنوان مثال Google Home).
PHONE تلفن
ALLO Allo Chat.
SMART_DISPLAY دستگاه نمایشگر هوشمند
KAI_OS KaiOS.

مکان

ظرفی که نشان دهنده یک مکان است.

نمایندگی JSON
{
  "coordinates": {
    object (LatLng)
  },
  "formattedAddress": string,
  "zipCode": string,
  "city": string
}
فیلدها
coordinates

object ( LatLng )

مختصات جغرافیایی به مجوز [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] نیاز دارد.

formattedAddress

string

نشانی نمایش، به عنوان مثال، "1600 Amphitheatre Pkwy, Mountain View, CA 94043". به مجوز [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] نیاز دارد.

zipCode

string

کد پستی به مجوز [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] یا [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] نیاز دارد.

city

string

شهر. به مجوز [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] یا [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] نیاز دارد.

LatLng

شیئی که نشان دهنده یک جفت طول و عرض جغرافیایی است. این به صورت یک جفت دوتایی برای نشان دادن درجه عرض جغرافیایی و درجه طول جغرافیایی بیان می شود. مگر اینکه طور دیگری مشخص شده باشد، این شی باید با استاندارد WGS84 مطابقت داشته باشد. مقادیر باید در محدوده نرمال شده باشند.

نمایندگی JSON
{
  "latitude": number,
  "longitude": number
}
فیلدها
latitude

number

عرض جغرافیایی بر حسب درجه باید در محدوده [-90.0، +90.0] باشد.

longitude

number

طول جغرافیایی بر حسب درجه باید در محدوده [-180.0، +180.0] باشد.

خروجی

خروجی قابل مشاهده توسط کاربر به دور گفتگو.

نمایندگی JSON
{
  "text": string,
  "speech": [
    string
  ],
  "canvas": {
    object (Canvas)
  },
  "actionsBuilderPrompt": {
    object (Prompt)
  }
}
فیلدها
text

string

پاسخ گفتاری به عنوان یک رشته ساده برای کاربر ارسال شد.

speech[]

string

محتوای گفتاری تولید شده توسط Action. این ممکن است شامل عناصر نشانه گذاری مانند SSML باشد.

canvas

object ( Canvas )

محتوای تعاملی بوم.

actionsBuilderPrompt

object ( Prompt )

وضعیت اعلان در پایان دور گفتگو. اطلاعات بیشتر درباره درخواست: https://developers.google.com/assistant/conversational/prompts

بوم

نشان دهنده یک پاسخ بوم تعاملی برای ارسال به کاربر است. این می تواند همراه با فیلد "firstSimple" در اعلان حاوی برای صحبت با کاربر علاوه بر نمایش پاسخ بوم تعاملی استفاده شود. حداکثر اندازه پاسخ 50 هزار بایت است.

نمایندگی JSON
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "enableFullScreen": boolean
}
فیلدها
url

string

URL برنامه وب بوم تعاملی برای بارگیری. اگر تنظیم نشود، آدرس اینترنتی بوم فعال فعلی مجدداً استفاده خواهد شد.

data[]

value ( Value format)

اختیاری. داده های JSON به عنوان یک رویداد به صفحه وب تجربه همهجانبه منتقل می شود. اگر فیلد «نسخ» در فرمان حاوی «نادرست» باشد، مقادیر داده‌های تعریف‌شده در این فرمان Canvas پس از مقادیر داده‌های تعریف‌شده در درخواست‌های قبلی Canvas اضافه می‌شوند.

suppressMic

boolean

اختیاری. مقدار پیش فرض: false.

enableFullScreen

boolean

اگر true ، برنامه بوم تمام صفحه را اشغال می کند و هدر در بالا نخواهد داشت. یک پیام نان تست نیز در صفحه بارگیری نمایش داده می‌شود که شامل نام نمایشی Action، نام توسعه‌دهنده و دستورالعمل‌های خروج از Action است. مقدار پیش فرض: false .

اعلان

نشان دادن پاسخ به یک کاربر

نمایندگی JSON
{
  "append": boolean,
  "override": boolean,
  "firstSimple": {
    object (Simple)
  },
  "content": {
    object (Content)
  },
  "lastSimple": {
    object (Simple)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (Link)
  },
  "canvas": {
    object (Canvas)
  }
}
فیلدها
append
(deprecated)

boolean

اختیاری. حالت نحوه ادغام این پیام‌ها با پیام‌های تعریف‌شده قبلی. "false" همه پیام‌های تعریف‌شده قبلی (اولین و آخرین ساده، محتوا، پیوند پیشنهادات و بوم) را پاک می‌کند و پیام‌های تعریف‌شده در این اعلان را اضافه می‌کند. "true" پیام های تعریف شده در این اعلان را به پیام های تعریف شده در پاسخ های قبلی اضافه می کند. تنظیم این فیلد روی "true" همچنین افزودن به برخی از فیلدهای داخل فرمان های ساده، اعلان پیشنهاد و اعلان Canvas (بخشی از اعلان محتوا) را نیز فعال می کند. اگر در اعلان تعریف شده باشد، پیام‌های محتوا و پیوند همیشه بازنویسی می‌شوند. مقدار پیش فرض "نادرست" است.

override

boolean

اختیاری. حالت نحوه ادغام این پیام‌ها با پیام‌های تعریف‌شده قبلی. "true" تمام پیام های تعریف شده قبلی (اولین و آخرین ساده، محتوا، پیوند پیشنهادات و بوم) را پاک می کند و پیام های تعریف شده در این اعلان را اضافه می کند. "false" پیام های تعریف شده در این اعلان را به پیام های تعریف شده در پاسخ های قبلی اضافه می کند. رها کردن این فیلد روی "نادرست" همچنین افزودن به برخی از فیلدهای داخل فرمان های ساده، اعلان پیشنهادات و اعلان Canvas (بخشی از اعلان محتوا) را امکان پذیر می کند. اگر در اعلان تعریف شده باشد، پیام‌های محتوا و پیوند همیشه بازنویسی می‌شوند. مقدار پیش فرض "نادرست" است.

firstSimple

object ( Simple )

اختیاری. اولین پاسخ صوتی و متنی.

content

object ( Content )

اختیاری. محتوایی مانند کارت، فهرست یا رسانه برای نمایش به کاربر.

lastSimple

object ( Simple )

اختیاری. آخرین پاسخ صوتی و متنی.

suggestions[]

object ( Suggestion )

اختیاری. پیشنهاداتی برای نمایش به کاربر که همیشه در انتهای پاسخ ظاهر می شوند. اگر فیلد «نسخ» در فرمان حاوی «نادرست» باشد، عناوین تعریف‌شده در این قسمت به عناوین تعریف‌شده در هر فرمان پیشنهادی تعریف‌شده قبلی اضافه می‌شوند و مقادیر تکراری حذف می‌شوند.

canvas

object ( Canvas )

اختیاری. نشان دهنده یک پاسخ بوم تعاملی برای ارسال به کاربر است.

ساده

نشان دهنده یک اعلان ساده برای ارسال به کاربر است.

نمایندگی JSON
{
  "speech": string,
  "text": string
}
فیلدها
speech

string

اختیاری. بیانگر گفتاری است که باید به کاربر گفته شود. می تواند SSML یا متن به گفتار باشد. اگر قسمت "override" در دستور حاوی "true" باشد، گفتار تعریف شده در این قسمت جایگزین گفتار Simple prompt قبلی می شود.

text

string

متن اختیاری برای نمایش در حباب چت. در صورت عدم ارائه، یک نمایش نمایشی از قسمت گفتار بالا استفاده خواهد شد. محدود به 640 کاراکتر. اگر فیلد «override» در اعلان حاوی «true» باشد، متن تعریف شده در این قسمت جایگزین متن دستور Simple قبلی می شود.

محتوا

محتوایی که باید نمایش داده شود.

نمایندگی JSON
{

  // Union field content can be only one of the following:
  "card": {
    object (Card)
  },
  "image": {
    object (Image)
  },
  "table": {
    object (Table)
  },
  "media": {
    object (Media)
  },
  "canvas": {
    object (Canvas)
  },
  "collection": {
    object (Collection)
  },
  "list": {
    object (List)
  }
  // End of list of possible types for union field content.
}
فیلدها
content زمینه اتحادیه محتوا. content فقط می تواند یکی از موارد زیر باشد:
card

object ( Card )

یک کارت پایه

image

object ( Image )

یک تصویر

table

object ( Table )

کارت جدول.

media

object ( Media )

پاسخ نشان‌دهنده مجموعه‌ای از رسانه‌ها برای پخش.

canvas
(deprecated)

object ( Canvas )

پاسخی که برای تجربه بوم تعاملی استفاده می شود.

collection

object ( Collection )

کارتی که مجموعه ای از گزینه ها را برای انتخاب ارائه می دهد.

list

object ( List )

کارتی که فهرستی از گزینه ها را برای انتخاب ارائه می دهد.

کارت

یک کارت اصلی برای نمایش برخی از اطلاعات، به عنوان مثال یک تصویر و/یا متن.

نمایندگی JSON
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
فیلدها
title

string

عنوان کلی کارت اختیاری.

subtitle

string

اختیاری.

text

string

متن متن کارت از مجموعه محدودی از نحو نشانه گذاری برای قالب بندی پشتیبانی می کند. الزامی است، مگر اینکه تصویر موجود باشد.

image

object ( Image )

تصویر قهرمان برای کارت. ارتفاع روی 192dp ثابت شده است. اختیاری.

imageFill

enum ( ImageFill )

پس زمینه تصویر چگونه پر می شود. اختیاری.

button

object ( Link )

دکمه. اختیاری.

تصویر

تصویری که در کارت نمایش داده می شود.

نمایندگی JSON
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
فیلدها
url

string

آدرس منبع تصویر تصاویر می توانند JPG، PNG و GIF (متحرک و غیر متحرک) باشند. برای مثال، https://www.agentx.com/logo.png . مورد نیاز.

alt

string

شرح متنی از تصویر که برای دسترسی استفاده می شود، به عنوان مثال صفحه خوان. مورد نیاز.

height

integer

ارتفاع تصویر بر حسب پیکسل اختیاری.

width

integer

عرض تصویر بر حسب پیکسل اختیاری.

ImageFill

گزینه های نمایش تصویر ممکن برای تأثیرگذاری بر ارائه تصویر. این باید برای زمانی استفاده شود که نسبت تصویر با نسبت تصویر ظرف تصویر مطابقت نداشته باشد.

Enums
UNSPECIFIED پر کردن تصویر نامشخص
GRAY شکاف بین تصویر و محفظه تصویر را با نوارهای خاکستری پر کنید.
WHITE شکاف بین تصویر و محفظه تصویر را با نوارهای سفید پر کنید.
CROPPED تصویر به گونه ای مقیاس بندی می شود که عرض و ارتفاع تصویر با ابعاد ظرف مطابقت داشته باشد یا بیشتر از آن باشد. اگر ارتفاع تصویر کوچک‌شده بیشتر از ارتفاع ظرف باشد، ممکن است بالا و پایین تصویر را برش دهد، یا اگر عرض تصویر مقیاس‌شده از عرض ظرف بیشتر باشد، سمت چپ و راست تصویر را برش دهد. این شبیه به "حالت زوم" در تلویزیون با صفحه عریض هنگام پخش یک ویدیوی 4:3 است.

OpenUrl

زمانی که کاربر پیوندی را باز می کند، اقدامی انجام می شود.

نمایندگی JSON
{
  "url": string,
  "hint": enum (UrlHint)
}
فیلدها
url

string

فیلد url که می تواند یکی از این موارد باشد: - آدرس های http/https برای باز کردن یک برنامه مرتبط با برنامه یا یک صفحه وب

hint

enum ( UrlHint )

یک اشاره برای نوع URL را نشان می دهد.

UrlHint

انواع مختلف راهنمایی url.

Enums
AMP URL که مستقیماً به محتوای AMP یا یک URL متعارف اشاره می کند که از طریق آن به محتوای AMP اشاره دارد .

جدول

کارت جدول برای نمایش جدول متن.

نمایندگی JSON
{
  "title": string,
  "subtitle": string,
  "image": {
    object (Image)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (Link)
  }
}
فیلدها
title

string

عنوان کلی جدول اختیاری است اما اگر زیرنویس تنظیم شده باشد باید تنظیم شود.

subtitle

string

زیرنویس جدول اختیاری.

image

object ( Image )

تصویر مرتبط با جدول اختیاری.

columns[]

object ( TableColumn )

سرصفحه ها و تراز ستون ها.

rows[]

object ( TableRow )

داده های ردیف جدول 3 ردیف اول تضمین شده است که نشان داده می شوند اما سایر ردیف ها ممکن است بر روی سطوح خاصی بریده شوند. لطفاً با شبیه ساز تست کنید تا ببینید کدام ردیف برای یک سطح مشخص نشان داده می شود. در سطوحی که از قابلیت WEB_BROWSER پشتیبانی می کنند، می توانید کاربر را به صفحه وب با داده های بیشتر هدایت کنید.

button

object ( Link )

دکمه.

ستون جدول

ستونی را در جدول توصیف می کند.

نمایندگی JSON
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
فیلدها
header

string

متن سرصفحه برای ستون.

align

enum ( HorizontalAlignment )

تراز افقی ستون wrt محتوا. اگر مشخص نباشد، محتوا با لبه اصلی تراز می شود.

تراز افقی

هم ترازی محتوای داخل سلول.

Enums
UNSPECIFIED تراز افقی نامشخص
LEADING لبه جلویی سلول. این پیش فرض است.
CENTER محتوا در مرکز ستون تراز شده است.
TRAILING محتوا با لبه انتهایی ستون تراز شده است.

TableRow

یک ردیف را در جدول توصیف می کند.

نمایندگی JSON
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
فیلدها
cells[]

object ( TableCell )

سلول های این ردیف نمایش 3 سلول اول تضمین شده است، اما سایر سلول ها ممکن است بر روی سطوح خاصی بریده شوند. لطفاً با شبیه ساز تست کنید تا ببینید کدام سلول برای یک سطح مشخص نشان داده می شود.

divider

boolean

نشان می دهد که آیا بعد از هر ردیف باید یک تقسیم کننده وجود داشته باشد.

TableCell

یک سلول را در یک ردیف توصیف می کند.

نمایندگی JSON
{
  "text": string
}
فیلدها
text

string

محتوای متن سلول

رسانه ها

یک شی رسانه ای را نشان می دهد. حاوی اطلاعاتی درباره رسانه مانند نام، توضیحات، آدرس اینترنتی و غیره است.

نمایندگی JSON
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ]
}
فیلدها
mediaType

enum ( MediaType )

نوع رسانه

startOffset

string ( Duration format)

شروع افست اولین شی رسانه ای.

مدت زمان در ثانیه با حداکثر نه رقم کسری که با ' s ' خاتمه می یابد. مثال: "3.5s" .

optionalMediaControls[]

enum ( OptionalMediaControls )

انواع کنترل رسانه اختیاری که این جلسه پاسخ رسانه می تواند پشتیبانی کند. در صورت تنظیم، زمانی که یک رویداد رسانه ای خاص اتفاق می افتد، درخواست به 3p ارسال می شود. اگر تنظیم نشده باشد، 3p همچنان باید دو نوع کنترل پیش‌فرض، FINISHED و FAILED را کنترل کند.

mediaObjects[]

object ( MediaObject )

فهرست اشیاء رسانه ای

MediaType

نوع رسانه ای این پاسخ.

Enums
MEDIA_TYPE_UNSPECIFIED نوع رسانه نامشخص
AUDIO فایل صوتی.
MEDIA_STATUS_ACK پاسخ به تأیید گزارش وضعیت رسانه.

OptionalMediaControls

انواع کنترل رسانه اختیاری که پاسخ رسانه می تواند پشتیبانی کند

Enums
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED مقدار نامشخص
PAUSED رویداد متوقف شد. هنگامی که کاربر رسانه را متوقف می کند فعال می شود.
STOPPED رویداد متوقف شد. هنگام خروج کاربر از جلسه 3p در حین پخش رسانه فعال می شود.

MediaObject

یک شی رسانه واحد را نشان می دهد

نمایندگی JSON
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
فیلدها
name

string

نام این شی رسانه ای.

description

string

شرح این شی رسانه ای.

url

string

نشانی اینترنتی که به محتوای رسانه اشاره دارد.

image

object ( MediaImage )

تصویر برای نمایش با کارت رسانه.

MediaImage

تصویر برای نمایش با کارت رسانه.

نمایندگی JSON
{

  // Union field image can be only one of the following:
  "large": {
    object (Image)
  },
  "icon": {
    object (Image)
  }
  // End of list of possible types for union field image.
}
فیلدها
image میدان اتحادیه تصویر. image می تواند تنها یکی از موارد زیر باشد:
large

object ( Image )

یک تصویر بزرگ، مانند جلد آلبوم و غیره.

icon

object ( Image )

یک نماد تصویر کوچک در سمت راست عنوان نمایش داده شده است. اندازه آن به 36x36 dp تغییر یافته است.

مجموعه

کارتی برای ارائه مجموعه ای از گزینه ها برای انتخاب.

نمایندگی JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
فیلدها
title

string

عنوان مجموعه. اختیاری.

subtitle

string

زیرنویس مجموعه. اختیاری.

items[]

object ( CollectionItem )

حداقل: 2 حداکثر: 10

imageFill

enum ( ImageFill )

نحوه پر شدن پس زمینه تصویر آیتم های مجموعه اختیاری.

مجموعه آیتم

یک مورد در مجموعه

نمایندگی JSON
{
  "key": string
}
فیلدها
key

string

مورد نیاز. کلید NLU که با نام کلید ورودی در نوع مرتبط مطابقت دارد.

فهرست کنید

کارتی برای ارائه لیستی از گزینه ها برای انتخاب.

نمایندگی JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
فیلدها
title

string

عنوان لیست اختیاری.

subtitle

string

زیرنویس لیست اختیاری.

items[]

object ( ListItem )

حداقل: 2 حداکثر: 30

List Item

یک مورد در لیست

نمایندگی JSON
{
  "key": string
}
فیلدها
key

string

مورد نیاز. کلید NLU که با نام کلید ورودی در نوع مرتبط مطابقت دارد.

پیشنهاد

پیشنهاد ورودی برای ارائه به کاربر.

نمایندگی JSON
{
  "title": string
}
فیلدها
title

string

مورد نیاز. متن نشان داده شده در تراشه پیشنهاد. وقتی روی آن ضربه بزنید، این متن به طور کلمه به مکالمه ارسال می شود، گویی که کاربر آن را تایپ کرده است. هر عنوان باید در میان مجموعه تراشه های پیشنهادی منحصر به فرد باشد. حداکثر 25 کاراکتر

تشخیص

اطلاعات تشخیصی مربوط به دور مکالمه.

نمایندگی JSON
{
  "actionsBuilderEvents": [
    {
      object (ExecutionEvent)
    }
  ]
}
فیلدها
actionsBuilderEvents[]

object ( ExecutionEvent )

فهرستی از رویدادها با جزئیات در مورد پردازش دور گفتگو در طول مراحل مدل تعامل Actions Builder. فقط برای برنامه‌های Actions Builder و Actions SDK پر شده است.

ExecutionEvent

حاوی اطلاعاتی درباره رویداد اجرایی است که در طول پردازش درخواست مکالمه Actions Builder رخ داده است. برای مروری بر مراحل مربوط به درخواست مکالمه، به https://developers.google.com/assistant/conversational/actions مراجعه کنید.

نمایندگی JSON
{
  "eventTime": string,
  "executionState": {
    object (ExecutionState)
  },
  "status": {
    object (Status)
  },
  "warningMessages": [
    string
  ],

  // Union field EventData can be only one of the following:
  "userInput": {
    object (UserConversationInput)
  },
  "intentMatch": {
    object (IntentMatch)
  },
  "conditionsEvaluated": {
    object (ConditionsEvaluated)
  },
  "onSceneEnter": {
    object (OnSceneEnter)
  },
  "webhookRequest": {
    object (WebhookRequest)
  },
  "webhookResponse": {
    object (WebhookResponse)
  },
  "webhookInitiatedTransition": {
    object (WebhookInitiatedTransition)
  },
  "slotMatch": {
    object (SlotMatch)
  },
  "slotRequested": {
    object (SlotRequested)
  },
  "slotValidated": {
    object (SlotValidated)
  },
  "formFilled": {
    object (FormFilled)
  },
  "waitingUserInput": {
    object (WaitingForUserInput)
  },
  "endConversation": {
    object (EndConversation)
  }
  // End of list of possible types for union field EventData.
}
فیلدها
eventTime

string ( Timestamp format)

مهر زمانی که رویداد رخ داد.

مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

executionState

object ( ExecutionState )

وضعیت اعدام در این رویداد.

status

object ( Status )

وضعیت نتیجه مرحله اجرای خاص.

warningMessages[]

string

لیست اخطارهای ایجاد شده در طول اجرای این رویداد. هشدارها نکاتی برای توسعه دهنده هستند که در طول درخواست مکالمه کشف می شوند. اینها معمولاً غیر بحرانی هستند و اجرای درخواست را متوقف نمی کنند. به عنوان مثال، زمانی که webhook سعی می کند یک نوع سفارشی را که وجود ندارد لغو کند، ممکن است یک هشدار ایجاد شود. خطاها به‌عنوان کد وضعیت ناموفق گزارش می‌شوند، اما هشدارها می‌توانند حتی زمانی که وضعیت خوب است وجود داشته باشد.

فیلد اتحادیه EventData . اطلاعات دقیق مختص رویدادهای مختلف که ممکن است در پردازش یک دور مکالمه دخیل باشد. فیلد تنظیم شده در اینجا نوع این رویداد را مشخص می کند. EventData می تواند تنها یکی از موارد زیر باشد:
userInput

object ( UserConversationInput )

رویداد مدیریت ورودی کاربر

intentMatch

object ( IntentMatch )

رویداد تطبیق قصد.

conditionsEvaluated

object ( ConditionsEvaluated )

رویداد ارزیابی وضعیت

onSceneEnter

object ( OnSceneEnter )

رویداد اجرایی OnSceneEnter.

webhookRequest

object ( WebhookRequest )

رویداد ارسال درخواست Webhook.

webhookResponse

object ( WebhookResponse )

رویداد دریافت پاسخ Webhook.

webhookInitiatedTransition

object ( WebhookInitiatedTransition )

رویداد انتقال ایجاد شده توسط Webhook.

slotMatch

object ( SlotMatch )

رویداد تطبیق اسلات

slotRequested

object ( SlotRequested )

رویداد درخواست اسلات

slotValidated

object ( SlotValidated )

رویداد تأیید اسلات

formFilled

object ( FormFilled )

رویداد پر کردن فرم

waitingUserInput

object ( WaitingForUserInput )

رویداد انتظار برای ورودی کاربر.

endConversation

object ( EndConversation )

رویداد پایان گفتگو

ایالت اعدام

وضعیت فعلی اجرا

نمایندگی JSON
{
  "currentSceneId": string,
  "sessionStorage": {
    object
  },
  "slots": {
    object (Slots)
  },
  "promptQueue": [
    {
      object (Prompt)
    }
  ],
  "userStorage": {
    object
  },
  "householdStorage": {
    object
  }
}
فیلدها
currentSceneId

string

شناسه صحنه که در حال حاضر فعال است.

sessionStorage

object ( Struct format)

وضعیت ذخیره‌سازی جلسه: https://developers.google.com/assistant/conversational/storage-session

slots

object ( Slots )

وضعیت پر شدن اسلات ها، در صورت وجود: https://developers.google.com/assistant/conversational/scenes#slot_filling

promptQueue[]

object ( Prompt )

صف درخواست: https://developers.google.com/assistant/conversational/prompts

userStorage

object ( Struct format)

وضعیت فضای ذخیره سازی کاربر: https://developers.google.com/assistant/conversational/storage-user

householdStorage

object ( Struct format)

وضعیت فضای ذخیره سازی خانه: https://developers.google.com/assistant/conversational/storage-home

شکاف ها

وضعیت فعلی شکاف های صحنه را نشان می دهد.

نمایندگی JSON
{
  "status": enum (SlotFillingStatus),
  "slots": {
    string: {
      object (Slot)
    },
    ...
  }
}
فیلدها
status

enum ( SlotFillingStatus )

وضعیت فعلی پر کردن اسلات.

slots

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

شکاف های مرتبط با صحنه فعلی.

یک شی حاوی لیستی از "key": value . مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

SlotFillingStatus

وضعیت فعلی پر شدن اسلات را نشان می دهد.

Enums
UNSPECIFIED مقدار بازگشتی زمانی که فیلد استفاده پر نشده باشد.
INITIALIZED شکاف ها مقداردهی اولیه شده اند اما پر کردن شکاف شروع نشده است.
COLLECTING مقادیر اسلات در حال جمع آوری هستند.
FINAL همه مقادیر اسلات نهایی هستند و قابل تغییر نیستند.

اسلات

نشان دهنده یک اسلات است.

نمایندگی JSON
{
  "mode": enum (SlotMode),
  "status": enum (SlotStatus),
  "value": value,
  "updated": boolean,
  "prompt": {
    object (Prompt)
  }
}
فیلدها
mode

enum ( SlotMode )

حالت اسلات (الزامی یا اختیاری). می تواند توسط توسعه دهنده تنظیم شود.

status

enum ( SlotStatus )

وضعیت اسلات.

value

value ( Value format)

ارزش شکاف. با تغییر این مقدار در پاسخ، مقدار در پر کردن شکاف تغییر خواهد کرد.

updated

boolean

نشان می دهد که آیا مقدار اسلات در آخرین پیچ جمع آوری شده است یا خیر. این فیلد فقط خواندنی است.

prompt

object ( Prompt )

اختیاری. این درخواست در صورت نیاز برای پر کردن یک اسلات مورد نیاز برای کاربر ارسال می شود. این اعلان اعلان موجود تعریف شده در کنسول را لغو می کند. این فیلد در درخواست webhook گنجانده نشده است.

حالت اسلات

حالت یک اسلات را نشان می دهد، یعنی اینکه آیا لازم است یا نه.

Enums
MODE_UNSPECIFIED مقدار بازگشتی زمانی که فیلد استفاده پر نشده باشد.
OPTIONAL نشان می دهد که شکاف برای تکمیل پر کردن شکاف مورد نیاز نیست.
REQUIRED نشان می دهد که شکاف برای تکمیل پر کردن شکاف مورد نیاز است.

وضعیت اسلات

وضعیت یک اسلات را نشان می دهد.

Enums
SLOT_UNSPECIFIED مقدار بازگشتی زمانی که فیلد استفاده پر نشده باشد.
EMPTY نشان می دهد که اسلات هیچ مقداری ندارد. این وضعیت را نمی توان از طریق پاسخ تغییر داد.
INVALID نشان می دهد که مقدار اسلات نامعتبر است. این وضعیت را می توان از طریق پاسخ تنظیم کرد.
FILLED نشان می دهد که شکاف دارای یک مقدار است. این وضعیت را نمی توان از طریق پاسخ تغییر داد.

وضعیت

نوع Status یک مدل خطای منطقی را تعریف می کند که برای محیط های برنامه نویسی مختلف، از جمله REST API و RPC API مناسب است. توسط gRPC استفاده می شود. هر پیام Status شامل سه داده است: کد خطا، پیام خطا و جزئیات خطا.

در راهنمای طراحی API می‌توانید درباره این مدل خطا و نحوه کار با آن اطلاعات بیشتری کسب کنید.

نمایندگی JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
فیلدها
code

integer

کد وضعیت، که باید مقداری از google.rpc.Code باشد.

message

string

یک پیغام خطای برنامه‌نویس، که باید به زبان انگلیسی باشد. هر پیام خطای کاربر باید بومی سازی شده و در قسمت google.rpc.Status.details ارسال شود یا توسط مشتری بومی سازی شود.

details[]

object

لیستی از پیام هایی که حاوی جزئیات خطا هستند. مجموعه ای متداول از انواع پیام ها برای استفاده API ها وجود دارد.

یک شی حاوی فیلدهایی از نوع دلخواه. یک فیلد اضافی "@type" حاوی یک URI است که نوع را شناسایی می کند. مثال: { "id": 1234, "@type": "types.example.com/standard/id" } .

UserConversationInput

اطلاعات مربوط به ورودی کاربر

نمایندگی JSON
{
  "type": string,
  "originalQuery": string
}
فیلدها
type

string

نوع ورودی کاربر به عنوان مثال صفحه کلید، صدا، لمس و غیره.

originalQuery

string

ورودی متن اصلی از کاربر.

IntentMatch

اطلاعات مربوط به تطابق قصد راه‌اندازی شده (کلی یا درون یک صحنه): https://developers.google.com/assistant/conversational/intents

نمایندگی JSON
{
  "intentId": string,
  "intentParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "handler": string,
  "nextSceneId": string
}
فیلدها
intentId

string

شناسه هدف که این تعامل را آغاز کرد.

intentParameters

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

پارامترهای قصدی که باعث این تعامل شد.

یک شی حاوی لیستی از "key": value . مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

handler

string

نام کنترل کننده پیوست شده به این تعامل.

nextSceneId

string

صحنه ای که این تعامل به آن منتهی می شود.

شرایط ارزیابی شده

نتایج ارزیابی شرایط: https://developers.google.com/assistant/conversational/scenes#conditions

نمایندگی JSON
{
  "failedConditions": [
    {
      object (Condition)
    }
  ],
  "successCondition": {
    object (Condition)
  }
}
فیلدها
failedConditions[]

object ( Condition )

فهرست شرایطی که به "نادرست" ارزیابی شدند.

successCondition

object ( Condition )

شرط اول که در صورت وجود، "درست" ارزیابی شد.

وضعیت

شرایط ارزیابی شده

نمایندگی JSON
{
  "expression": string,
  "handler": string,
  "nextSceneId": string
}
فیلدها
expression

string

عبارت مشخص شده در این شرط.

handler

string

نام کنترل کننده در شرایط ارزیابی شده مشخص شده است.

nextSceneId

string

صحنه مقصد در شرایط ارزیابی شده مشخص شده است.

OnSceneEnter

اطلاعات مربوط به اجرای مرحله onSceneEnter: https://developers.google.com/assistant/conversational/scenes#onEnter

نمایندگی JSON
{
  "handler": string
}
فیلدها
handler

string

نام Handler در رویداد onSceneEnter مشخص شده است.

WebhookRequest

اطلاعات مربوط به درخواست ارسال شده به وب هوک Action: https://developers.google.com/assistant/conversational/webhooks#payloads

نمایندگی JSON
{
  "requestJson": string
}
فیلدها
requestJson

string

بار درخواست وب هوک.

WebhookResponse

اطلاعات مربوط به پاسخ دریافت شده از وب هوک Action: https://developers.google.com/assistant/conversational/webhooks#payloads

نمایندگی JSON
{
  "responseJson": string
}
فیلدها
responseJson

string

بار پاسخ وب هوک.

WebhookInitiatedTransition

رویداد برانگیخته شده توسط صحنه مقصد برگردانده شده از webhook: https://developers.google.com/assistant/conversational/webhooks#transition_scenes

نمایندگی JSON
{
  "nextSceneId": string
}
فیلدها
nextSceneId

string

شناسه صحنه ای که انتقال به آن منتهی می شود.

بازی اسلات

اطلاعات مربوط به شکاف(های) منطبق: https://developers.google.com/assistant/conversational/scenes#slot_filling

نمایندگی JSON
{
  "nluParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  }
}
فیلدها
nluParameters

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

پارامترهای استخراج شده توسط NLU از ورودی کاربر.

یک شی حاوی لیستی از "key": value . مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

SlotRequested

اطلاعات در مورد اسلات درخواستی فعلی: https://developers.google.com/assistant/conversational/scenes#slot_filling

نمایندگی JSON
{
  "slot": string,
  "prompt": {
    object (Prompt)
  }
}
فیلدها
slot

string

نام اسلات درخواستی

prompt

object ( Prompt )

اعلان اسلات.

Slot Validated

رویدادی که پس از اتمام اعتبارسنجی وب هوک برای شکاف(ها) رخ می دهد: https://developers.google.com/assistant/conversational/scenes#slot_filling

فرم پر شده

رویدادی که با پر شدن کامل فرم اتفاق می‌افتد: https://developers.google.com/assistant/conversational/scenes#slot_filling

WaitingForUserInput

رویدادی که زمانی اتفاق می‌افتد که سیستم به ورودی کاربر نیاز دارد: https://developers.google.com/assistant/conversational/scenes#input

پایان مکالمه

رویدادی که خبر می دهد گفتگو با نماینده به پایان رسیده است.