Skip to navigation

Power Meter — Metadata

View as Markdown

Subscribe to BMS-published metadata for all PowerMeter points.

Direction: Subscribe (receive)

Channel

BMS/v1/PUB/Metadata/PowerMeter/{pointType}/{tagPath}

BMS-published metadata for all PowerMeter points.

MQTT wildcard examples

  • All power meter metadata: BMS/v1/PUB/Metadata/PowerMeter/#

Parameters

ParameterDescription
pointTypePowerMeter point type. Values: Voltage, PowerFactor, Frequency, ApparentPower, ActivePower, Current … (9 total)
tagPathVendor-defined hierarchical tag path.

Message: PowerMeter Voltage Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: Voltage
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
engUnitstringYes
{
"objectType": "PowerMeter",
"pointType": "Voltage",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"engUnit": "string"
}

Message: PowerMeter PowerFactor Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: PowerFactor
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
{
"objectType": "PowerMeter",
"pointType": "PowerFactor",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
]
}

Message: PowerMeter Frequency Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: Frequency
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
engUnitstringYes
{
"objectType": "PowerMeter",
"pointType": "Frequency",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"engUnit": "string"
}

Message: PowerMeter ApparentPower Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: ApparentPower
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
engUnitstringYes
{
"objectType": "PowerMeter",
"pointType": "ApparentPower",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"engUnit": "string"
}

Message: PowerMeter ActivePower Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: ActivePower
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
engUnitstringYes
{
"objectType": "PowerMeter",
"pointType": "ActivePower",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"engUnit": "string"
}

Message: PowerMeter Current Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: Current
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
engUnitstringYes
{
"objectType": "PowerMeter",
"pointType": "Current",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"engUnit": "string"
}

Message: PowerMeter CurrentLimit Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: CurrentLimit
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
engUnitstringYes
{
"objectType": "PowerMeter",
"pointType": "CurrentLimit",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"engUnit": "string"
}

Message: PowerMeter PhaseCurrent Metadata

Content Type: application/json

Payload

NameTypeRequiredDescription
objectTypestringYesValues: PowerMeter
pointTypestringYesValues: PhaseCurrent
objectNamestringYesHuman-readable name of the electrical device.
objectIdstringYesStable unique identifier for the electrical device.
servesIdarray<string>YesList of objectIds of entities served by this power meter.
engUnitstringYes
phasestringYesElectrical phase identifier. Letter form (A/B/C) and numeric form (1/2/3) are both accepted to align with publisher conventions. Values: A, B, C, 1, 2, 3
{
"objectType": "PowerMeter",
"pointType": "PhaseCurrent",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"engUnit": "string",
"phase": "A"
}

Message: PowerMeter GenericPoint Metadata

Content Type: application/json

Payload

Field fragment for a vendor-specific or unmapped GenericPoint. processArea is required.

engUnit and stateText are both optional but mutually exclusive — include at most one. See the two variants below.

Continuous measurement with a known engineering unit. When engUnit is prese…

NameTypeRequiredDescription
engUnitstringNoEngineering unit for the measurement.

Binary or enumerated state point. When stateText is present, engUnit must…

NameTypeRequiredDescription
stateTextarray<map<string, any>>NoState label mapping. Each entry maps a numeric state value to its human-readable label (e.g., [{value: 0, text: "Off"}, {value: 1, text: "On"}]).
{
"objectType": "string",
"pointType": "GenericPoint",
"objectName": "string",
"objectId": "string",
"servesId": [
"string"
],
"processArea": [
"string"
],
"phase": "A",
"integration": "string",
"isSetpoint": false
}