Схемы моделей и экземпляров устройств

Модель устройства

Модель устройства определяется полями в этом разделе.

Поля модели устройства могут содержать только буквы, цифры и следующие символы: точка (.), дефис (-), подчеркивание (_), пробел ( ) и плюс (+). Первым символом поля должна быть буква или цифра.

Пример
{
  "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 и который нужно связать с этой моделью устройства. В проекте может быть несколько моделей устройств.
  • device_model_id: (строка) – обязательный параметр. Глобальный уникальный идентификатор для этой модели устройства. Используйте project_id в качестве префикса, чтобы избежать конфликтов во всех проектах. Используется в показателях и при регистрации устройства.
  • manifest: (объект 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.