v1/events.proto#
Messages#
DPSEvent#
DPSEvent contains the event payload.
Field |
Type |
Description |
|---|---|---|
when |
|
none |
event_name |
|
none |
correlation_id |
|
none |
oneof event.ping |
|
none |
oneof event.power_state |
|
none |
EventSubscriptionRequest#
Subscribes to one or more events. The subscriber id identifies the receiver, and must be unique among subscribers.
Field |
Type |
Description |
|---|---|---|
event_names |
repeated |
Names of the events to subscribe. If multiple, the returned stream will have all these subscribed events. Each event name must not be empty. |
subscriber_id |
|
The unique id of the subscriber. Messages will be queued by subscriber. Must not be empty. |
persistent |
|
If persistent, the subscription is a persistent subscription. An event queue will be kept for the subscriber and events will be queued when the subscriber is not actively connected. If a subscriber is not persistent, events will be delivered only when the subscriber is connected. Undelivered events will not be queued. |
PowerStateEvent#
PowerStateEvent is used by nvgrid APIs to notify power state changes
Field |
Type |
Description |
|---|---|---|
feeds |
map |
none |
PowerStateEvent.FeedState#
Field |
Type |
Description |
|---|---|---|
metadata |
|
Feed limits and constraints |
targets |
repeated |
Load targets currently active and future targets |
calculated_load |
|
Calculated current load |
in_flight |
|
Is this load target in flight? |
power_event_start_time |
|
Event start time |
compliant |
|
Is the data center compliant? |
power_event |
|
none |
PowerStateEvent.FeedsEntry#
Field |
Type |
Description |
|---|---|---|
key |
|
none |
value |
|
none |
PowerStateEvent.LoadTarget#
LoadTarget is a copy of the nvgrid load target message, with the added ‘active’ field
Field |
Type |
Description |
|---|---|---|
interval |
|
The start_time is the the time in the future when the constraint should be activated. If omitted, the current local time is assumed. The end_time is the end time for this load target. If there are no overlapping load targets and if the end time is specified, the power will revert back to the default level at this time. If there is an overlapping target, the most recent overlapping target is used. If omitted, there is no end time. |
load_constraint |
|
The load constraint. If nil, it removes any constraints at the given time, which results in the system falling back to its default constraint. |
load_target_strategy |
|
The strategy specifies what strategy will be used to achieve the desired load_constraint. |
active |
|
Whether this load target is active |
correlation_id |
|
Optional string that can be used by the caller to identify load targets. The correlation id can be at most 36 bytes, and can contain ascii letters/digits and “-”. It must be a unique id. If not provided, a UUID will be generated. |
Scalar Value Types#
.proto Type |
Notes |
C++ Type |
Java Type |
Python Type |
|---|---|---|---|---|
double |
double |
double |
float |
|
float |
float |
float |
float |
|
int32 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int64 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
sfixed32 |
Always four bytes. |
int32 |
int |
int |
sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
bool |
bool |
boolean |
boolean |
|
string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |