فهرست مطالب
-
EmbeddedAssistant
(رابط) -
AudioInConfig
(پیام) -
AudioInConfig.Encoding
(enum) -
AudioOut
(پیام) -
AudioOutConfig
(پیام) -
AudioOutConfig.Encoding
(enum) -
ConverseConfig
(پیام) -
ConverseRequest
(پیام) -
ConverseResponse
(پیام) -
ConverseResponse.EventType
(enum) -
ConverseResult
(پیام) -
ConverseResult.MicrophoneMode
(enum) -
ConverseState
(پیام)
EmbeddedAssistant
سرویسی که Google Assistant API را پیاده سازی می کند.
گفتگو کنید | |
---|---|
مکالمه را با سرویس دستیار تعبیه شده آغاز می کند یا ادامه می دهد. هر تماس یک رفت و برگشت انجام می دهد، یک درخواست صوتی به سرویس ارسال می کند و پاسخ صوتی را دریافت می کند. از جریان دو طرفه برای دریافت نتایج، مانند رویداد مکالمه یک یا چند اتصال gRPC است که هر کدام از چندین درخواست و پاسخ جریانی تشکیل شده است. به عنوان مثال، کاربر می گوید Add to my shopping list و دستیار پاسخ می دهد چه چیزی را می خواهید اضافه کنید؟ . دنباله درخواست ها و پاسخ های جاری در اولین پیام gRPC می تواند به صورت زیر باشد:
سپس کاربر می گوید bagels و دستیار پاسخ می دهد OK، من شیرینی ها را به لیست خرید شما اضافه کرده ام . این به عنوان یک تماس دیگر اتصال gRPC به متد
اگرچه ترتیب دقیق پاسخها تضمین نشده است، پیامهای ConverseResponse.audio_out متوالی همیشه حاوی بخشهای متوالی صدا هستند.
|
AudioInConfig
نحوه پردازش داده های audio_in
را که در درخواست های بعدی ارائه می شود، مشخص می کند. برای تنظیمات توصیهشده، بهترین شیوههای gRPC API دستیار Google را ببینید.
زمینه های | |
---|---|
encoding | رمزگذاری مورد نیاز داده های صوتی ارسال شده در همه پیام های |
sample_rate_hertz | نرخ نمونه مورد نیاز (به هرتز) از داده های صوتی ارسال شده در همه پیام های |
رمزگذاری
رمزگذاری صوتی داده های ارسال شده در پیام صوتی. صدا باید تک کاناله (مونو) باشد. تنها زبان پشتیبانی شده "en-US" است.
Enums | |
---|---|
ENCODING_UNSPECIFIED | مشخص نشده است. نتیجه google.rpc.Code.INVALID_ARGUMENT را برمی گرداند. |
LINEAR16 | نمونههای 16 بیتی امضا نشده فشرده نشده (PCM خطی). این رمزگذاری شامل هدر نیست، فقط بایت های صوتی خام را شامل می شود. |
FLAC | FLAC (Free Lossless Audio Codec) رمزگذاری توصیه شده است زیرا بدون تلفات است - بنابراین تشخیص به خطر نمی افتد - و فقط به نیمی از پهنای باند LINEAR16 نیاز دارد. این رمزگذاری شامل هدر جریان FLAC به دنبال داده های صوتی است. از نمونه های 16 بیتی و 24 بیتی پشتیبانی می کند، با این حال، همه فیلدها در STREAMINFO پشتیبانی نمی شوند. |
خروجی صدا
صوتی حاوی پاسخ دستیار به درخواست. تکه های متوالی داده های صوتی در پیام های ConverseResponse
متوالی دریافت می شوند.
زمینه های | |
---|---|
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 است در حالی که از همان میزان بیت استفاده می شود. نرخ نمونه در محموله رمزگذاری شده است. |
ConverseConfig
نحوه پردازش پیام های ConverseRequest
را مشخص می کند.
زمینه های | |
---|---|
audio_in_config | Required نحوه پردازش صدای ورودی بعدی را مشخص می کند. |
audio_out_config | Required نحوه فرمت کردن صدایی که برگردانده می شود را مشخص می کند. |
converse_state | Required نشان دهنده وضعیت گفتگوی فعلی است. |
ConverseRequest
پیام سطح بالای ارسال شده توسط مشتری. مشتریان باید حداقل دو پیام ConverseRequest
و معمولاً متعدد ارسال کنند. اولین پیام باید حاوی یک پیام config
باشد و نباید حاوی داده های audio_in
باشد. همه پیامهای بعدی باید حاوی دادههای audio_in
باشند و نباید حاوی پیام config
باشند.
زمینه های | ||
---|---|---|
فیلد اتحادیه converse_request . دقیقاً یکی از این فیلدها باید در هر ConverseRequest مشخص شود. converse_request تنها می تواند یکی از موارد زیر باشد: | ||
config | پیام | |
audio_in | داده های صوتی که باید شناسایی شوند. تکه های متوالی داده های صوتی در پیام های |
ConverseResponse
پیام سطح بالای دریافت شده توسط مشتری. مجموعه ای از یک یا چند پیام ConverseResponse
به مشتری ارسال می شود.
زمینه های | ||
---|---|---|
فیلد اتحادیه converse_response . دقیقاً یکی از این فیلدها در هر ConverseResponse پر می شود. converse_response تنها می تواند یکی از موارد زیر باشد: | ||
error | فقط خروجی اگر تنظیم شود، یک پیام | |
event_type | Output-only نوع رویداد را نشان می دهد. | |
audio_out | فقط خروجی صدای حاوی پاسخ دستیار به درخواست. | |
result | فقط خروجی نتیجه معنایی پرس و جوی گفتاری کاربر. |
نوع رویداد
نوع رویداد را نشان می دهد.
Enums | |
---|---|
EVENT_TYPE_UNSPECIFIED | هیچ رویدادی مشخص نشده است. |
END_OF_UTTERANCE | این رویداد نشان میدهد که سرور پایان گفتار کاربر را تشخیص داده است و انتظار ندارد گفتار اضافی وجود داشته باشد. بنابراین، سرور صدای اضافی را پردازش نخواهد کرد (اگرچه ممکن است متعاقباً نتایج اضافی را بازگرداند). کلاینت باید ارسال داده های صوتی اضافی را متوقف کند، اتصال gRPC را تا نیمه ببندد و منتظر نتایج اضافی بماند تا سرور اتصال gRPC را ببندد. |
ConverseResult
نتیجه معنایی برای جستجوی گفتاری کاربر.
زمینه های | |
---|---|
spoken_request_text | Output-only رونوشت شناخته شده آنچه کاربر گفته است. |
spoken_response_text | فقط خروجی متن پاسخ گفتاری دستیار. این فقط برای یک اقدام IFTTT برگردانده می شود. |
conversation_state | اطلاعات حالت فقط خروجی برای |
microphone_mode | Output-only حالت میکروفون را پس از پردازش این |
volume_percentage | سطح صدا فقط خروجی به روز شده است. مقدار 0 خواهد بود یا حذف می شود (نشان دهنده عدم تغییر) مگر اینکه یک فرمان صوتی مانند "افزایش صدا" یا "تنظیم سطح صدا 4" تشخیص داده شود، در این صورت مقدار بین 1 تا 100 خواهد بود (مرتبط با صدای جدید سطح 1٪ تا 100٪. به طور معمول، یک کلاینت باید از این سطح صدا هنگام پخش داده های |
حالت میکروفون
حالات احتمالی میکروفون پس از تکمیل Converse
RPC.
Enums | |
---|---|
MICROPHONE_MODE_UNSPECIFIED | هیچ حالتی مشخص نشده است. |
CLOSE_MICROPHONE | این سرویس انتظار سوال بعدی از کاربر را ندارد. میکروفون باید خاموش بماند تا زمانی که کاربر آن را دوباره فعال کند. |
DIALOG_FOLLOW_ON | این سرویس منتظر یک سوال بعدی از کاربر است. هنگامی که پخش AudioOut کامل شد (با شروع یک تماس جدید Converse RPC برای ارسال صدای جدید)، میکروفون باید دوباره باز شود. |
ConverseState
اطلاعاتی در مورد وضعیت گفتگوی فعلی ارائه می دهد.
زمینه های | |
---|---|
conversation_state | مورد نیاز مقدار |