فهرست مطالب
-
EmbeddedAssistant
(رابط) -
AssistConfig
(پیام) -
AssistRequest
(پیام) -
AssistResponse
(پیام) -
AssistResponse.EventType
(enum) -
AudioInConfig
(پیام) -
AudioInConfig.Encoding
(enum) -
AudioOut
(پیام) -
AudioOutConfig
(پیام) -
AudioOutConfig.Encoding
(enum) -
DebugConfig
(پیام) -
DebugInfo
(پیام) -
DeviceAction
(پیام) -
DeviceConfig
(پیام) -
DeviceLocation
(پیام) -
DialogStateIn
(پیام) -
DialogStateOut
(پیام) -
DialogStateOut.MicrophoneMode
(enum) -
ScreenOut
(پیام) -
ScreenOut.Format
(enum) -
ScreenOutConfig
(پیام) -
ScreenOutConfig.ScreenMode
(enum) -
SpeechRecognitionResult
(پیام)
EmbeddedAssistant
سرویسی که Google Assistant API را پیاده سازی می کند.
کمک کنید | |
---|---|
مکالمه را با سرویس دستیار تعبیه شده آغاز می کند یا ادامه می دهد. هر تماس یک رفت و برگشت انجام می دهد، یک درخواست صوتی به سرویس ارسال می کند و پاسخ صوتی را دریافت می کند. از جریان دو طرفه برای دریافت نتایج، مانند رویداد مکالمه یک یا چند اتصال gRPC است که هر کدام از چندین درخواست و پاسخ جریانی تشکیل شده است. به عنوان مثال، کاربر می گوید Add to my shopping list و دستیار پاسخ می دهد چه چیزی را می خواهید اضافه کنید؟ . دنباله درخواست ها و پاسخ های جاری در اولین پیام gRPC می تواند به صورت زیر باشد:
سپس کاربر می گوید bagels و دستیار پاسخ می دهد OK، من شیرینی ها را به لیست خرید شما اضافه کرده ام . این به عنوان یک تماس دیگر اتصال gRPC به روش
اگرچه ترتیب دقیق پاسخها تضمین نشده است، پیامهای متوالی
|
AssistConfig
نحوه پردازش پیام های AssistRequest
مشخص می کند.
زمینه های | ||
---|---|---|
audio_out_config | Required نحوه فرمت کردن صدایی که برگردانده می شود را مشخص می کند. | |
screen_out_config | اختیاری فرمت مورد نظر را برای استفاده در زمانی که سرور یک پاسخ صفحه نمایش بصری برمی گرداند را مشخص می کند. | |
dialog_state_in | Required نشان دهنده وضعیت گفتگوی فعلی است. | |
device_config | پیکربندی دستگاه که به طور منحصر به فرد یک دستگاه خاص را شناسایی می کند. | |
debug_config | پارامترهای دیباگ اختیاری برای کل | |
| ||
audio_in_config | نحوه پردازش صدای ورودی بعدی را مشخص می کند. اگر بایتهای | |
text_query | ورودی نوشتاری برای ارسال به دستیار. اگر ورودی صوتی در دسترس نباشد، میتوان آن را از یک رابط متنی پر کرد. |
AssistRequest
پیام سطح بالای ارسال شده توسط مشتری. مشتریان باید حداقل دو پیام AssistRequest
و معمولاً تعداد زیادی از آنها را ارسال کنند. اولین پیام باید حاوی یک پیام config
باشد و نباید حاوی داده های audio_in
باشد. همه پیامهای بعدی باید حاوی دادههای audio_in
باشند و نباید حاوی پیام config
باشند.
زمینه های | ||
---|---|---|
type فیلد اتحادیه دقیقاً یکی از این فیلدها باید در هر AssistRequest مشخص شود. type می تواند تنها یکی از موارد زیر باشد: | ||
config | پیام | |
audio_in | داده های صوتی که باید شناسایی شوند. تکه های متوالی داده های صوتی در پیام های |
AssistResponse
پیام سطح بالای دریافت شده توسط مشتری. مجموعه ای از یک یا چند پیام AssistResponse
به مشتری ارسال می شود.
زمینه های | |
---|---|
event_type | Output-only نوع رویداد را نشان می دهد. |
audio_out | فقط خروجی صدای حاوی پاسخ دستیار به درخواست. |
screen_out | Output-only شامل پاسخ بصری دستیار به درخواست است. |
device_action | Output-only شامل اقدامی است که توسط پرس و جو با بارهای مناسب و تجزیه معنایی ایجاد می شود. |
speech_results[] | فقط خروجی این لیست مکرر حاوی صفر یا بیشتر نتایج تشخیص گفتار است که مربوط به بخش های متوالی صدایی است که در حال حاضر پردازش می شود، از قسمت مربوط به اولین صدا (و پایدارترین بخش) شروع می شود تا قسمت مربوط به جدیدترین صدا. رشته ها را می توان برای مشاهده پاسخ در حال پیشرفت کامل به هم متصل کرد. هنگامی که تشخیص گفتار کامل شد، این لیست حاوی یک مورد با |
dialog_state_out | Output-only شامل خروجی مربوط به درخواست کاربر است. |
debug_info | اطلاعات اشکالزدایی فقط خروجی برای برنامهنویس. فقط در صورتی برگردانده می شود که درخواست |
نوع رویداد
نوع رویداد را نشان می دهد.
Enums | |
---|---|
EVENT_TYPE_UNSPECIFIED | هیچ رویدادی مشخص نشده است. |
END_OF_UTTERANCE | این رویداد نشان میدهد که سرور پایان گفتار کاربر را تشخیص داده است و انتظار ندارد گفتار اضافی وجود داشته باشد. بنابراین، سرور صدای اضافی را پردازش نخواهد کرد (اگرچه ممکن است متعاقباً نتایج اضافی را بازگرداند). کلاینت باید ارسال داده های صوتی اضافی را متوقف کند، اتصال gRPC را تا نیمه ببندد و منتظر نتایج اضافی بماند تا سرور اتصال gRPC را ببندد. |
AudioInConfig
نحوه پردازش داده های audio_in
را که در درخواست های بعدی ارائه می شود، مشخص می کند. برای تنظیمات توصیه شده، به بهترین شیوه های SDK دستیار Google مراجعه کنید.
زمینه های | |
---|---|
encoding | رمزگذاری مورد نیاز داده های صوتی ارسال شده در همه پیام های |
sample_rate_hertz | نرخ نمونه مورد نیاز (به هرتز) از داده های صوتی ارسال شده در همه پیام های |
رمزگذاری
رمزگذاری صوتی داده های ارسال شده در پیام صوتی. صدا باید تک کاناله (مونو) باشد.
Enums | |
---|---|
ENCODING_UNSPECIFIED | مشخص نشده است. نتیجه google.rpc.Code.INVALID_ARGUMENT را برمی گرداند. |
LINEAR16 | نمونههای 16 بیتی امضا نشده فشرده نشده (PCM خطی). این رمزگذاری شامل هدر نیست، فقط بایت های صوتی خام را شامل می شود. |
FLAC | FLAC (Free Lossless Audio Codec) رمزگذاری توصیه شده است زیرا بدون تلفات است - بنابراین تشخیص به خطر نمی افتد - و فقط به نیمی از پهنای باند LINEAR16 نیاز دارد. این رمزگذاری شامل هدر جریان FLAC به دنبال داده های صوتی است. از نمونه های 16 بیتی و 24 بیتی پشتیبانی می کند، با این حال، همه فیلدها در STREAMINFO پشتیبانی نمی شوند. |
خروجی صدا
صوتی حاوی پاسخ دستیار به درخواست. تکه های متوالی داده های صوتی در پیام های متوالی AssistResponse
دریافت می شوند.
زمینه های | |
---|---|
audio_data | فقط خروجی داده های صوتی حاوی پاسخ دستیار به درخواست. تکه های متوالی داده های صوتی در پیام های متوالی |
AudioOutConfig
فرمت مورد نظر را مشخص می کند تا سرور هنگام بازگرداندن پیام های audio_out
از آن استفاده کند.
زمینه های | |
---|---|
encoding | مورد نیاز رمزگذاری داده های صوتی باید در همه پیام های |
sample_rate_hertz | مورد نیاز نرخ نمونه بر حسب هرتز از داده های صوتی بازگردانده شده در پیام های |
volume_percentage | مورد نیاز تنظیم حجم فعلی خروجی صدای دستگاه. مقادیر معتبر 1 تا 100 (مرتبط با 1٪ تا 100٪) است. |
رمزگذاری
رمزگذاری صوتی داده های بازگردانده شده در پیام صوتی. همه رمزگذاری ها بایت های صوتی خام و بدون سرصفحه هستند، به جز موارد زیر.
Enums | |
---|---|
ENCODING_UNSPECIFIED | مشخص نشده است. نتیجه google.rpc.Code.INVALID_ARGUMENT را برمی گرداند. |
LINEAR16 | نمونههای 16 بیتی امضا نشده فشرده نشده (PCM خطی). |
MP3 | رمزگذاری صوتی MP3 نرخ نمونه در محموله رمزگذاری شده است. |
OPUS_IN_OGG | صدای رمزگذاری شده با Opus که در یک ظرف Ogg پیچیده شده است. نتیجه فایلی خواهد بود که می تواند به صورت بومی در اندروید و در برخی از مرورگرها (مانند کروم) پخش شود. کیفیت رمزگذاری به طور قابل توجهی بالاتر از MP3 است در حالی که از همان میزان بیت استفاده می شود. نرخ نمونه در محموله رمزگذاری شده است. |
DebugConfig
اشکال زدایی پارامترهای درخواست فعلی
زمینه های | |
---|---|
return_debug_info | وقتی این فیلد روی true تنظیم شود، قسمت |
DebugInfo
اطلاعات اشکال زدایی برای توسعه دهنده فقط در صورتی برگردانده می شود که درخواست return_debug_info
روی true تنظیم کند.
زمینه های | |
---|---|
aog_agent_to_assistant_json | پاسخ JSON اصلی از یک عامل Action-on-Google به سرور Google. AppResponse را ببینید. فقط در صورتی پر می شود که درخواست کننده پروژه AoG را داشته باشد و پروژه AoG در حالت پیش نمایش باشد. |
DeviceAction
اگر کاربر یک Device Action را راهاندازی کرده باشد، پاسخ به دستگاه برمیگردد. برای مثال، دستگاهی که از عبارت Turn on the light پشتیبانی میکند، یک DeviceAction
با یک بار JSON دریافت میکند که حاوی معنای درخواست است.
زمینه های | |
---|---|
device_request_json | JSON حاوی پاسخ فرمان دستگاه است که از گرامر فعال شده Device Action ایجاد شده است. قالب با هدف |
DeviceConfig
فیلدهای مورد نیاز که دستگاه را به دستیار شناسایی می کند.
همچنین ببینید:
زمینه های | |
---|---|
device_id | شناسه منحصر به فرد مورد نیاز برای دستگاه. طول شناسه باید 128 کاراکتر یا کمتر باشد. مثال: DBCDW098234. این باید با device_id که از ثبت دستگاه برگردانده شده است مطابقت داشته باشد. این device_id برای مطابقت با دستگاههای ثبتشده کاربر برای جستجوی ویژگیها و قابلیتهای پشتیبانیشده این دستگاه استفاده میشود. این اطلاعات نباید در راه اندازی مجدد دستگاه تغییر کند. با این حال، نباید در بازنشانیهای پیشفرض کارخانه ذخیره شود. |
device_model_id | شناسه منحصر به فرد مورد نیاز برای مدل دستگاه. ترکیب device_model_id و device_id باید قبلاً از طریق ثبت دستگاه مرتبط شده باشد. |
DeviceLocation
سه منبع مکان وجود دارد. آنها با این اولویت استفاده می شوند:
- این
DeviceLocation
، که در درجه اول برای دستگاه های تلفن همراه با GPS استفاده می شود. - مکان مشخص شده توسط کاربر در هنگام راه اندازی دستگاه؛ این برای هر کاربر، برای هر دستگاه است. اگر
DeviceLocation
مشخص نشده باشد از این مکان استفاده می شود. - مکان استنباط شده بر اساس آدرس IP. این فقط در صورتی استفاده می شود که هیچ یک از موارد فوق مشخص نشده باشد.
زمینه های | |
---|---|
coordinates | طول و عرض جغرافیایی دستگاه. |
DialogStateIn
اطلاعاتی در مورد وضعیت گفتگوی فعلی ارائه می دهد.
زمینه های | |
---|---|
conversation_state | مورد نیاز این فیلد باید همیشه روی مقدار |
language_code | زبان مورد نیاز درخواست در نحو IETF BCP 47 (به عنوان مثال، "en-US"). برای اطلاعات بیشتر به پشتیبانی زبان مراجعه کنید. اگر زبانی را برای این |
device_location | مکان اختیاری دستگاهی که پرس و جو از آنجا شروع شده است. |
is_new_conversation | اختیاری اگر درست باشد، سرور با درخواست به عنوان یک مکالمه جدید برخورد می کند و از وضعیت درخواست قبلی استفاده نمی کند. زمانی که مکالمه باید راه اندازی مجدد شود، مانند پس از راه اندازی مجدد دستگاه، یا پس از گذشت زمان قابل توجهی از درخواست قبلی، این فیلد را روی true تنظیم کنید. |
DialogStateOut
حالت گفتگوی حاصل از پرس و جوی کاربر. ممکن است چندین مورد از این پیام ها دریافت شود.
زمینه های | |
---|---|
supplemental_display_text | فقط خروجی متن نمایش تکمیلی از دستیار. این می تواند مانند سخنرانی در |
conversation_state | اطلاعات حالت فقط خروجی برای |
microphone_mode | Output-only حالت میکروفون را پس از پردازش این |
volume_percentage | سطح صدا فقط خروجی به روز شده است. مقدار 0 خواهد بود یا حذف می شود (نشان دهنده عدم تغییر) مگر اینکه یک فرمان صوتی مانند افزایش صدا یا تنظیم سطح صدا 4 تشخیص داده شود، در این صورت مقدار بین 1 تا 100 خواهد بود (مطابق با سطح صدای جدید 1٪). تا 100 درصد. به طور معمول، یک کلاینت باید از این سطح صدا هنگام پخش داده های |
حالت میکروفون
حالات احتمالی میکروفون پس از تکمیل Assist
RPC.
Enums | |
---|---|
MICROPHONE_MODE_UNSPECIFIED | هیچ حالتی مشخص نشده است. |
CLOSE_MICROPHONE | این سرویس انتظار سوال بعدی از کاربر را ندارد. میکروفون باید خاموش بماند تا زمانی که کاربر آن را دوباره فعال کند. |
DIALOG_FOLLOW_ON | این سرویس منتظر یک سوال بعدی از کاربر است. هنگامی که پخش AudioOut کامل شد (با شروع یک تماس جدید Assist RPC برای ارسال صدای جدید)، میکروفون باید دوباره باز شود. |
ScreenOut
پاسخ خروجی بصری دستیار به پرس و جو. توسط screen_out_config
فعال شد.
زمینه های | |
---|---|
format | فقط خروجی قالب داده های صفحه نمایش ارائه شده. |
data | فقط خروجی دادههای خام صفحهای که در نتیجه جستجوی دستیار نمایش داده میشوند. |
قالب
فرمت های احتمالی داده های صفحه نمایش
Enums | |
---|---|
FORMAT_UNSPECIFIED | هیچ قالبی مشخص نشده است. |
HTML | داده ها حاوی یک طرح بندی کامل HTML5 هستند که در UTF-8 کدگذاری شده است، به عنوان مثال <html><body><div>...</div></body></html> . قرار است همراه با پاسخ صوتی ارائه شود. توجه داشته باشید که نوع doctype HTML5 باید در داده های واقعی HTML گنجانده شود. |
ScreenOutConfig
فرمت مورد نظر را برای سرور مشخص می کند تا هنگام بازگرداندن پاسخ screen_out
از آن استفاده کند.
زمینه های | |
---|---|
screen_mode | حالت صفحه بصری فعلی برای دستگاه در حین صدور پرس و جو. |
حالت صفحه نمایش
حالت های ممکن برای خروجی صفحه نمایش بصری در دستگاه.
Enums | |
---|---|
SCREEN_MODE_UNSPECIFIED | حالت ویدیویی مشخص نشده است. دستیار ممکن است مانند حالت OFF پاسخ دهد. |
OFF | صفحه خاموش است (یا روشنایی یا تنظیمات دیگر آنقدر پایین تنظیم شده است که قابل مشاهده نیست). دستیار معمولاً در این حالت پاسخی از صفحه نمایش نمی دهد. |
PLAYING | «دستیار» معمولاً در این حالت یک پاسخ صفحه نمایش جزئی را نشان می دهد. |
نتیجه تشخیص گفتار
رونویسی تخمینی عبارتی که کاربر گفته است. این می تواند یک بخش یا حدس کامل درخواست گفتاری کاربر باشد.
زمینه های | |
---|---|
transcript | متن رونوشت فقط خروجی که بیانگر کلماتی است که کاربر صحبت کرده است. |
stability | فقط خروجی تخمینی از احتمال عدم تغییر حدس دستیار در مورد این نتیجه. مقادیر از 0.0 (کاملاً ناپایدار) تا 1.0 (کاملاً پایدار و نهایی) متغیر است. پیش فرض 0.0 یک مقدار نگهبان است که نشان می دهد |