مدل دستگاه و طرحوارههای نمونه
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
مدل دستگاه
مدل دستگاه با فیلدهای این قسمت تعریف می شود.
فیلدهای مدل دستگاه فقط می توانند شامل حروف، اعداد و نمادهای زیر باشند: نقطه (.)، خط فاصله (-)، خط زیر خط (_)، فاصله ( ) و بعلاوه (+). اولین کاراکتر یک فیلد باید یک حرف یا عدد باشد.
{
"project_id": "my-devices-project",
"device_model_id": "my-devices-project-prototype-light-v1",
"manifest": {
"manufacturer": "Assistant SDK developer",
"product_name": "Assistant SDK light",
"device_description": "Assistant SDK light device"
},
"device_type": "action.devices.types.LIGHT",
"traits": ["action.devices.traits.OnOff"]
}
{
"project_id": string,
"device_model_id": string,
"manifest": {
"manufacturer": string,
"product_name": string,
"device_description": string
},
"device_type": string,
"traits": [ string ]
}
-
project_id
: (رشته) مورد نیاز. شناسه پروژه Google Cloud Platform پروژه Actions Console برای ارتباط با این مدل دستگاه. یک پروژه می تواند شامل چندین مدل دستگاه باشد. -
device_model_id
: (رشته) مورد نیاز است. شناسه منحصر به فرد جهانی برای این مدل دستگاه؛ project_id
به عنوان پیشوند برای کمک به جلوگیری از برخورد در محدوده همه پروژه ها استفاده کنید. در معیارها و در هنگام ثبت دستگاه استفاده می شود. -
manifest
: (شیء(مظهر)) لازم است. فراداده ای که مدل دستگاه و سازنده را توصیف می کند. این ممکن است در کنسول SDK (آینده)، داشبوردهای معیارها و سایر رابطهای بصری مرتبط نشان داده شود.-
manifest.manufacturer
: (رشته) مورد نیاز. نام سازنده دستگاه -
manifest.product_name
: (رشته) الزامی است. نام محصول مورد نظر مصرف کننده برای این مدل دستگاه. -
manifest.device_description
: (رشته) اختیاری. توضیحات این مدل دستگاه
-
device_type
: (رشته) مورد نیاز است. نوع سخت افزار دستگاه از موارد زیر انتخاب کنید:-
action.devices.types.CAMERA
-
action.devices.types.DISHWASHER
-
action.devices.types.DRYER
-
action.devices.types.LIGHT
-
action.devices.types.OUTLET
-
action.devices.types.PHONE
-
action.devices.types.REFRIGERATOR
-
action.devices.types.SCENE
-
action.devices.types.SOUNDBAR
-
action.devices.types.SPEAKER
-
action.devices.types.SWITCH
-
action.devices.types.THERMOSTAT
-
action.devices.types.TV
-
action.devices.types.VACUUM
-
action.devices.types.WASHER
-
traits
: (Array<String>) اختیاری است. لیست ویژگی هایی که دستگاه پشتیبانی می کند. صفات شامل دستورات، ویژگیها و حالتهای دستگاه است. برای استفاده نیازی به تعریف بسته اکشن نداریدصفات درونی
نمونه دستگاه
نمونه دستگاه با فیلدهای این بخش تعریف می شود.
فیلدهای نمونه دستگاه باید با یک حرف یا عدد شروع شوند. شناسه دستگاه فقط میتواند شامل حروف، اعداد و نمادهای زیر باشد: نقطه (.)، خط فاصله (-)، زیرخط (_)، و بعلاوه (+). نام مستعار دستگاه فقط می تواند شامل اعداد، حروف و علامت فاصله ( ) باشد.
{
"id": "my_led_1",
"model_id": "my-devices-project-prototype-light-v1",
"nickname": "My Assistant Light",
"client_type": "SDK_LIBRARY"
}
{
"id": string,
"model_id": string,
"nickname": string,
"client_type": string
}
-
id
: (رشته) الزامی است. شناسه دستگاه تست باید در همه دستگاههای ثبتشده تحت یک پروژه Google Developer منحصربهفرد باشد. -
model_id
: (رشته) الزامی است. شناسه مدل دستگاه؛ باید همان device_model_id
مرتبط با این دستگاه آزمایشی باشد. مدل دستگاه باید قبلا ثبت شده باشد. -
nickname
: (رشته) اختیاری. نام مستعار دستگاه این نام برای اشاره به دستگاه در رابط های بصری مانند تنظیمات دستیار استفاده می شود. -
client_type
: (رشته) مورد نیاز است. نوع دستگاه مشتری باید یکی از موارد زیر باشد: SDK_SERVICE
یا SDK_LIBRARY
.
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2025-07-28 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-07-28 بهوقت ساعت هماهنگ جهانی."],[[["\u003cp\u003eDevice models are defined with a unique ID, manufacturer details, device type, and supported traits, enabling the Google Assistant to understand and interact with the device.\u003c/p\u003e\n"],["\u003cp\u003eDevice instances represent individual devices, linking to a specific model with a unique ID, an optional nickname, and client type (SDK service or library).\u003c/p\u003e\n"],["\u003cp\u003eDevice model and instance IDs can contain letters, numbers, and specific symbols, ensuring proper formatting for identification within the Google ecosystem.\u003c/p\u003e\n"],["\u003cp\u003eA device model's \u003ccode\u003etraits\u003c/code\u003e field determines its functionalities and capabilities, allowing developers to define its behavior and interaction with the Google Assistant.\u003c/p\u003e\n"],["\u003cp\u003eDevice instances are registered using their unique ID and associated with a pre-registered device model, enabling them to be recognized and controlled by the Google Assistant.\u003c/p\u003e\n"]]],["Device models are defined by fields such as `project_id`, `device_model_id`, `manifest`, `device_type`, and `traits`. Fields can contain letters, numbers, and specific symbols. `Manifest` describes the device's manufacturer, product name, and description. Device instances have fields like `id`, `model_id`, `nickname`, and `client_type`, which specify unique identifiers, associated device models, nicknames, and client types. The device `id` and `model_id` are required.\n"],null,["# Device Model and Instance Schemas\n\nDevice model\n------------\n\nThe device model is defined by the fields in this section.\n\n\nDevice model fields can only contain letters, numbers, and the following\nsymbols: period (.), hyphen (-), underscore (_), space ( ) and plus\n(+). The first character of a field must be a letter or number.\nExample \n\n```carbon\n{\n \"project_id\": \"my-devices-project\",\n \"device_model_id\": \"my-devices-project-prototype-light-v1\",\n \"manifest\": {\n \"manufacturer\": \"Assistant SDK developer\",\n \"product_name\": \"Assistant SDK light\",\n \"device_description\": \"Assistant SDK light device\"\n },\n \"device_type\": \"action.devices.types.LIGHT\",\n \"traits\": [\"action.devices.traits.OnOff\"]\n}\n```\nSchema \n\n```carbon\n{\n \"project_id\": string,\n \"device_model_id\": string,\n \"manifest\": {\n \"manufacturer\": string,\n \"product_name\": string,\n \"device_description\": string\n },\n \"device_type\": string,\n \"traits\": [ string ]\n}\n```\n\n- **`project_id`:** (String) Required. Google Cloud Platform project [ID](https://support.google.com/cloud/answer/6158840) of the Actions Console project to associate with this device model. A project can contain multiple device models.\n- **`device_model_id`:** (String) Required. Globally-unique identifier for this device model; use the `project_id` as a prefix to help avoid collisions over the range of all projects. Used in metrics and during device registration.\n- **`manifest`:** (object(Manifest)) Required. Metadata that describes the device model and manufacturer. This may be shown in the (upcoming) SDK console, metrics dashboards, and other related visual interfaces.\n - **`manifest.manufacturer`:** (String) Required. Name of the device manufacturer.\n - **`manifest.product_name`:** (String) Required. Consumer-facing product name for this device model.\n - **`manifest.device_description`:** (String) Optional. Description of this device model.\n- **`device_type`:** (String) Required. The type of device hardware. Select from the following:\n - `action.devices.types.CAMERA`\n - `action.devices.types.DISHWASHER`\n - `action.devices.types.DRYER`\n - `action.devices.types.LIGHT`\n - `action.devices.types.OUTLET`\n - `action.devices.types.PHONE`\n - `action.devices.types.REFRIGERATOR`\n - `action.devices.types.SCENE`\n - `action.devices.types.SOUNDBAR`\n - `action.devices.types.SPEAKER`\n - `action.devices.types.SWITCH`\n - `action.devices.types.THERMOSTAT`\n - `action.devices.types.TV`\n - `action.devices.types.VACUUM`\n - `action.devices.types.WASHER`\n- **`traits`:** (Array\\\u003cString\\\u003e) Optional. List of traits the device supports. Traits include the commands, attributes, and states for the device. You do not need to define an [Action package](/assistant/conversational/action-package/reference/rest/Shared.Types/ActionPackage) to use [built-in traits](/assistant/sdk/reference/traits).\n\nDevice instance\n---------------\n\nThe device instance is defined by the fields in this section.\n\n\nDevice instance fields must start with a letter or number. The device ID\ncan only contain letters, numbers, and the following symbols: period (.),\nhyphen (-), underscore (_), and plus (+). The device nickname can only\ncontain numbers, letters, and the space ( ) symbol.\nExample \n\n```carbon\n {\n \"id\": \"my_led_1\",\n \"model_id\": \"my-devices-project-prototype-light-v1\",\n \"nickname\": \"My Assistant Light\",\n \"client_type\": \"SDK_LIBRARY\"\n }\n```\nSchema \n\n```carbon\n {\n \"id\": string,\n \"model_id\": string,\n \"nickname\": string,\n \"client_type\": string\n }\n```\n\n- **`id`:** (String) Required. Identifier for the test device. Must be unique within all of the devices registered under the same Google Developer project.\n- **`model_id`:** (String) Required. Identifier of the device model; must be the same as the [`device_model_id`](#device_model_json) associated with this test device. The device model must have been registered previously.\n- **`nickname`:** (String) Optional. Nickname for the device. This name will be used to refer to the device in visual interfaces like the Assistant settings.\n- **`client_type`:** (String) Required. The type of client device. Must be either of the following: `SDK_SERVICE` or `SDK_LIBRARY`."]]