Модели устройств и схемы экземпляров
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Модель устройства
Модель устройства определяется полями в этом разделе.
Поля модели устройства могут содержать только буквы, цифры и следующие символы: точка (.), дефис (-), подчеркивание (_), пробел ( ) и плюс (+). Первым символом поля должна быть буква или цифра.
{
"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 "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-28 UTC.
[null,null,["Последнее обновление: 2025-07-28 UTC."],[[["\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`."]]