Fix This PageOSLP protobuf file, v0.5.1
package oslp;
option java_package = "org.opensmartgridplatform.oslp";
message Message {
optional RegisterDeviceRequest registerDeviceRequest = 1;
optional RegisterDeviceResponse registerDeviceResponse = 2;
optional StartSelfTestRequest startSelfTestRequest = 3;
optional StartSelfTestResponse startSelfTestResponse = 4;
optional StopSelfTestRequest stopSelfTestRequest = 5;
optional StopSelfTestResponse stopSelfTestResponse = 6;
optional UpdateFirmwareRequest updateFirmwareRequest = 7;
optional UpdateFirmwareResponse updateFirmwareResponse = 8;
optional SetLightRequest setLightRequest = 9;
optional SetLightResponse setLightResponse = 10;
optional GetStatusRequest getStatusRequest = 11;
optional GetStatusResponse getStatusResponse = 12;
optional ResumeScheduleRequest resumeScheduleRequest = 13;
optional ResumeScheduleResponse resumeScheduleResponse = 14;
optional SetEventNotificationsRequest setEventNotificationsRequest = 15;
optional SetEventNotificationsResponse setEventNotificationsResponse = 16;
optional EventNotificationRequest eventNotificationRequest = 17;
optional EventNotificationResponse eventNotificationResponse = 18;
optional GetFirmwareVersionRequest getFirmwareVersionRequest = 19;
optional GetFirmwareVersionResponse getFirmwareVersionResponse = 20;
optional SetScheduleRequest setScheduleRequest = 21;
optional SetScheduleResponse setScheduleResponse = 22;
optional SetConfigurationRequest setConfigurationRequest = 25;
optional SetConfigurationResponse setConfigurationResponse = 26;
optional GetPowerUsageHistoryRequest getPowerUsageHistoryRequest = 27;
optional GetPowerUsageHistoryResponse getPowerUsageHistoryResponse = 28;
optional GetActualPowerUsageRequest getActualPowerUsageRequest = 29;
optional GetActualPowerUsageResponse getActualPowerUsageResponse = 30;
optional SetRebootRequest setRebootRequest = 31;
optional SetRebootResponse setRebootResponse = 32;
optional SetTransitionRequest setTransitionRequest = 33;
optional SetTransitionResponse setTransitionResponse = 34;
optional GetConfigurationRequest getConfigurationRequest = 35;
optional GetConfigurationResponse getConfigurationResponse = 36;
optional ConfirmRegisterDeviceRequest confirmRegisterDeviceRequest = 37;
optional ConfirmRegisterDeviceResponse confirmRegisterDeviceResponse = 38;
}
message RegisterDeviceRequest {
required string deviceIdentification = 1;
required bytes ipAddress = 2;
required DeviceType deviceType = 3;
required bool hasSchedule = 4;
required uint32 randomDevice = 5;
}
message RegisterDeviceResponse {
required Status status = 1;
required string currentTime = 2;
required uint32 randomDevice = 3;
required uint32 randomPlatform = 4;
optional LocationInfo locationInfo = 5;
}
message StartSelfTestRequest {
optional bool present = 1 [default = true];
}
message StartSelfTestResponse {
required Status status = 1;
}
message StopSelfTestRequest {
optional bool present = 1 [default = true];
}
message StopSelfTestResponse {
required Status status = 1;
required bytes selfTestResult = 2;
}
message GetFirmwareVersionRequest {
optional bool present = 1 [default = true];
}
message GetFirmwareVersionResponse {
required string firmwareVersion = 1;
}
message UpdateFirmwareRequest {
required string firmwareDomain = 1;
required string firmwareUrl = 2;
}
message UpdateFirmwareResponse {
required Status status = 1;
}
message SetLightRequest {
repeated LightValue values = 1;
}
message SetLightResponse {
required Status status = 1;
}
message GetStatusRequest {
optional bool present = 1 [default = true];
}
message GetStatusResponse {
required Status status = 1;
repeated LightValue value = 2;
required LinkType preferredLinktype = 3;
required LinkType actualLinktype = 4;
required LightType lightType = 5;
required uint32 eventNotificationMask = 6;
}
message ResumeScheduleRequest {
optional bytes index = 1;
required bool immediate = 2;
}
message ResumeScheduleResponse {
required Status status = 1;
}
message SetRebootRequest {
optional bool present = 1 [default = true];
}
message SetRebootResponse {
required Status status = 1;
}
message SetTransitionRequest {
required TransitionType transitionType = 1;
optional string time = 2;
}
message SetTransitionResponse {
required Status status = 1;
}
message SetEventNotificationsRequest {
required uint32 NotificationMask = 1;
}
message SetEventNotificationsResponse {
required Status status = 1;
}
message EventNotificationRequest {
repeated EventNotification notifications = 1;
}
message EventNotificationResponse {
required Status status = 1;
}
message SetScheduleRequest {
repeated Schedule schedules = 1;
optional PageInfo pageInfo = 2;
required RelayType scheduleType = 3;
}
message SetScheduleResponse {
required Status status = 1;
}
message SetConfigurationRequest {
optional LightType lightType = 1;
optional DaliConfiguration daliConfiguration = 2;
optional RelayConfiguration relayConfiguration = 3;
optional uint32 shortTermHistoryIntervalMinutes = 4;
optional LinkType preferredLinkType = 5;
optional MeterType meterType = 6;
optional uint32 longTermHistoryInterval = 7;
optional LongTermIntervalType longTermHistoryIntervalType = 8;
}
message SetConfigurationResponse {
required Status status = 1;
}
message GetConfigurationRequest {
optional bool present = 1 [default = true];
}
message GetConfigurationResponse {
required Status status = 1;
optional LightType lightType = 2;
optional DaliConfiguration daliConfiguration = 3;
optional RelayConfiguration relayConfiguration = 4;
optional uint32 shortTermHistoryIntervalMinutes = 5;
optional LinkType preferredLinkType = 6;
optional MeterType meterType = 7;
optional uint32 longTermHistoryInterval = 8;
optional LongTermIntervalType longTermHistoryIntervalType = 9;
}
message ConfirmRegisterDeviceRequest {
required uint32 randomDevice = 1;
required uint32 randomPlatform = 2;
}
message ConfirmRegisterDeviceResponse {
required Status status = 1;
required uint32 randomDevice = 2;
required uint32 randomPlatform = 3;
required uint32 sequenceWindow = 4;
}
message GetPowerUsageHistoryRequest {
required TimePeriod timePeriod = 1;
optional uint32 page = 2;
required HistoryTermType termType = 3;
}
message GetPowerUsageHistoryResponse {
required Status status = 1;
repeated PowerUsageData powerUsageData = 2;
optional PageInfo pageInfo = 3;
}
message GetActualPowerUsageRequest {
optional bool present = 1 [default = true];
}
message GetActualPowerUsageResponse {
required Status status = 1;
required PowerUsageData powerUsageData = 2;
}
message LocationInfo {
optional sint32 timeOffset = 1;
optional sint32 latitude = 2;
optional sint32 longitude = 3;
}
message LightValue {
optional bytes index = 1;
required bool on = 2;
optional bytes dimValue = 3;
}
message EventNotification {
required Event event = 1;
optional bytes index = 2;
optional string description = 3;
}
message Schedule {
required Weekday weekday = 1;
optional string startDay = 2;
optional string endDay = 3;
required ActionTime actionTime = 4;
optional string time = 5;
optional Window window = 6;
repeated LightValue value = 7;
optional TriggerType triggerType = 8;
}
message Window {
required uint32 minutesBefore = 1;
required uint32 minutesAfter = 2;
}
message DaliConfiguration {
optional bytes numberOfLights = 1;
repeated IndexAddressMap addressMap = 2;
}
message RelayConfiguration {
repeated IndexAddressMap addressMap = 1;
}
message IndexAddressMap {
required bytes index = 1;
required bytes address = 2;
required RelayType relayType = 3;
}
message PageInfo {
required uint32 currentPage = 1;
required uint32 pageSize = 2;
required uint32 totalPages = 3;
}
message TimePeriod {
required string startTime = 1;
required string endTime = 2;
}
message PowerUsageData {
required string recordTime = 1;
required MeterType meterType = 2;
required uint64 totalConsumedEnergy = 3;
required uint32 actualConsumedPower = 4;
optional PsldData psldData = 5;
optional SsldData ssldData = 6;
}
message PsldData {
required uint32 totalLightingHours = 1;
}
message SsldData {
required uint32 actualCurrent1 = 1;
required uint32 actualCurrent2 = 2;
required uint32 actualCurrent3 = 3;
required uint32 actualPower1 = 4;
required uint32 actualPower2 = 5;
required uint32 actualPower3 = 6;
required uint32 averagePowerFactor1 = 7;
required uint32 averagePowerFactor2 = 8;
required uint32 averagePowerFactor3 = 9;
repeated RelayData relayData = 10;
}
message RelayData {
required bytes index = 1;
required uint32 totalLightingMinutes = 2;
}
enum NotificationBit {
DIAG_EVENTS = 1;
HARDWARE_FAILURE = 2;
LIGHT_EVENTS = 4;
TARIFF_EVENTS = 8;
MONITOR_EVENTS = 16;
FIRMWARE_EVENTS = 32;
COMM_EVENTS = 64;
SECURITY_EVENTS = 128;
}
enum Event {
DIAG_EVENTS_GENERAL = 0;
HARDWARE_FAILURE_RELAY = 1000;
LIGHT_EVENTS_LIGHT_ON = 2000;
LIGHT_EVENTS_LIGHT_OFF = 2001;
LIGHT_FAILURE_DALI_COMMUNICATION = 2500;
LIGHT_FAILURE_BALLAST = 2501;
LIGHT_FAILURE_TARIFF_SWITCH_ATTEMPT = 2502;
TARIFF_EVENTS_TARIFF_ON = 3000;
TARIFF_EVENTS_TARIFF_OFF = 3001;
MONITOR_EVENTS_LONG_BUFFER_FULL = 4000;
MONITOR_FAILURE_P1_COMMUNICATION = 4500;
MONITOR_SHORT_DETECTED = 4600;
MONITOR_SHORT_RESOLVED = 4601;
MONITOR_DOOR_OPENED = 4700;
MONITOR_DOOR_CLOSED = 4701;
FIRMWARE_EVENTS_ACTIVATING = 5000;
FIRMWARE_EVENTS_DOWNLOAD_NOTFOUND = 5501;
FIRMWARE_EVENTS_DOWNLOAD_FAILED = 5502;
COMM_EVENTS_ALTERNATIVE_CHANNEL = 6000;
COMM_EVENTS_RECOVERED_CHANNEL = 6001;
SECURITY_EVENTS_OUT_OF_SEQUENCE = 7000;
}
enum TriggerType {
TT_NOT_SET = 0;
LIGHT_TRIGGER = 1;
ASTRONOMICAL = 2;
}
enum TransitionType {
NIGHT_DAY = 0;
DAY_NIGHT = 1;
}
enum Weekday {
MONDAY = 1;
TUESDAY = 2;
WEDNESDAY = 3;
THURSDAY = 4;
FRIDAY = 5;
SATURDAY = 6;
SUNDAY = 7;
WEEKDAY = 8;
WEEKEND = 9;
ABSOLUTEDAY = 10;
ALL = 11;
}
enum ActionTime {
ABSOLUTETIME = 1;
SUNRISE = 2;
SUNSET = 3;
}
enum DeviceType {
PSLD = 0;
SSLD = 1;
}
enum Status {
OK = 0;
FAILURE = 1;
REJECTED = 2;
}
enum LightType {
LT_NOT_SET = 0;
RELAY = 1;
ONE_TO_TEN_VOLT = 2;
ONE_TO_TEN_VOLT_REVERSE = 3;
DALI = 4;
}
enum RelayType {
RT_NOT_SET = 0;
LIGHT = 1;
TARIFF = 2;
}
enum MeterType {
MT_NOT_SET = 0;
P1 = 1;
PULSE = 2;
AUX = 3;
}
enum LinkType {
LINK_NOT_SET = 0;
GPRS = 1;
CDMA = 2;
ETHERNET = 3;
}
enum LongTermIntervalType {
LT_INT_NOT_SET = 0;
DAYS = 1;
MONTHS = 2;
}
enum HistoryTermType {
Short = 0;
Long = 1;
}