CoreApi JavaScript 接口文档

本文档提供了 CoreApi 类的 JavaScript 接口,基于提供的 Java 方法签名翻译而来。该接口主要用于管理产品下的设备实体(Entity),包括查询、注册、删除、列表获取、同步以及数字孪生相关的操作。所有返回 JSON 数据的方法在 JavaScript 中对应返回普通对象(Object)或对象数组。

类描述

CoreApi 是核心实体管理接口,用于物联网或设备管理平台中对产品(Product)和设备(Device/Entity)的生命周期和数据进行操作。

方法

getEntityAttribute(productId, deviceId)

获取指定设备实体的属性信息。

参数

  • productId (string): 产品 ID。
  • deviceId (string): 设备(实体)ID。

返回值

  • Object: 包含该设备实体属性的 JSON 对象。

示例

const attributes = CoreApi.getEntityAttribute("prod_123", "dev_456");
// 返回: { temperature: 25.5, humidity: 60, ... }

getEntityInfo(productId, deviceId)

获取指定设备实体的基本信息。

参数

  • productId (string): 产品 ID。
  • deviceId (string): 设备(实体)ID。

返回值

  • Object: 包含该设备实体基本信息的 JSON 对象(如名称、状态、在线状态等)。

示例

const info = CoreApi.getEntityInfo("prod_123", "dev_456");
// 返回: { name: "传感器A", status: "online", ... }

getConstituteEntityInfo(productId, deviceId)

获取指定设备实体的构成实体信息(常用于组合设备或子设备场景)。

参数

  • productId (string): 产品 ID。
  • deviceId (string): 设备(实体)ID。

返回值

  • Object: 包含构成实体信息的 JSON 对象。

示例

const constituteInfo = CoreApi.getConstituteEntityInfo("prod_123", "dev_456");
// 返回: { components: [...], subDevices: [...] }

registerEntity(productId, entitys)

注册多个新设备实体到指定产品下。

参数

  • productId (string): 产品 ID。
  • entitys (Array<Object>): 实体信息列表,每个元素为一个 Map(对象),包含设备注册所需字段(如 deviceId、name 等)。

返回值

  • Object: 注册结果的 JSON 对象(通常包含成功/失败信息)。

示例

const entitys = [
  { deviceId: "dev_001", name: "设备1" },
  { deviceId: "dev_002", name: "设备2" }
];
const result = CoreApi.registerEntity("prod_123", entitys);
// 返回: { success: true, failed: [] }

deleteEntity(productId, deviceIds)

删除指定产品下的多个设备实体。

参数

  • productId (string): 产品 ID。
  • deviceIds (Array<string>): 要删除的设备 ID 列表。

返回值

  • Object: 删除结果的 JSON 对象(通常包含成功/失败信息)。

示例

const deviceIds = ["dev_001", "dev_002"];
const result = CoreApi.deleteEntity("prod_123", deviceIds);
// 返回: { success: true, deletedCount: 2 }

getEntityList(productId)

获取指定产品下的所有设备实体列表。

参数

  • productId (string): 产品 ID。

返回值

  • Array<Object>: 设备实体信息对象数组。

示例

const list = CoreApi.getEntityList("prod_123");
// 返回: [{ deviceId: "dev_001", name: "设备1", ... }, ...]

getEntityCacheList(productId)

获取指定产品下的设备实体缓存列表(可能来自本地缓存或快速查询通道)。

参数

  • productId (string): 产品 ID。

返回值

  • Array<Object>: 缓存的设备实体信息对象数组。

示例

const cacheList = CoreApi.getEntityCacheList("prod_123");
// 返回: [{ deviceId: "dev_001", ... }, ...]

syncSubscriptionResource()

同步订阅资源(通常用于推送订阅、物模型同步或资源刷新)。

参数

  • 无参数

返回值

  • void: 无返回值。

示例

CoreApi.syncSubscriptionResource();
// 执行同步操作

addEntityToTwin(productId, twinId, entitys)

将多个实体添加到指定的数字孪生(Twin)中。

参数

  • productId (string): 产品 ID。
  • twinId (string): 数字孪生 ID。
  • entitys (Array<Object>): 要添加的实体信息列表,每个元素为一个 Map(对象)。

返回值

  • Object: 添加结果的 JSON 对象。

示例

const entitys = [
  { deviceId: "dev_001", role: "sensor" },
  { deviceId: "dev_002", role: "actuator" }
];
const result = CoreApi.addEntityToTwin("prod_123", "twin_001", entitys);
// 返回: { success: true, addedCount: 2 }

注意事项

  • 所有返回 JSONObject 的方法在 JavaScript 中对应返回普通对象(Object)。
  • 返回 List<JSONObject> 的方法对应返回对象数组(Array<Object>)。
  • 参数中的 List<Map<String, Object>> 在 JavaScript 中使用数组 + 对象表示。
  • 建议在使用前检查参数有效性(如 productId、deviceId 不为空)。
  • 操作结果对象通常包含成功标志、错误信息或统计数据,调用方应根据实际业务处理返回值。
作者:北京-产品-yantings  创建时间:2026-07-01 09:55
最后编辑:北京-产品-yantings  更新时间:2026-07-07 18:14
上一篇:
下一篇: