Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
// import "nanopb.proto";
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;
optional UpdateDeviceSslCertificationRequest updateDeviceSslCertificationRequest = 39;
optional UpdateDeviceSslCertificationResponse updateDeviceSslCertificationResponse = 40;
optional SetDeviceVerificationKeyRequest setDeviceVerificationKeyRequest = 41;
optional SetDeviceVerificationKeyResponse setDeviceVerificationKeyResponse = 42;
optional SwitchFirmwareRequest switchFirmwareRequest = 43;
optional SwitchFirmwareResponse switchFirmwareResponse = 44;
optional SwitchConfigurationRequest switchConfigurationRequest = 45;
optional SwitchConfigurationResponse switchConfigurationResponse = 46;
}
// ========= Device Installation
message RegisterDeviceRequest {
required string deviceIdentification = 1; // [(nanopb).max_size = 41];
required bytes ipAddress = 2; // [(nanopb).max_size = 4];
required DeviceType deviceType = 3;
required bool hasSchedule = 4;
required uint32 randomDevice = 5; // 16 bits
}
message RegisterDeviceResponse {
required Status status = 1;
required string currentTime = 2; // [(nanopb).max_size = 15];// - Format YYYYMMDDhhmmss UTC.
required uint32 randomDevice = 3;
required uint32 randomPlatform = 4;
optional LocationInfo locationInfo = 5; // Location information of device.
}
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; // [(nanopb).max_size = 1];
}
// ========= Firmware Management
message GetFirmwareVersionRequest {
optional bool present = 1 [default = true];
}
message GetFirmwareVersionResponse {
required string firmwareVersion = 1; // [(nanopb).max_size = 7]; // RXX
}
message UpdateFirmwareRequest {
required string firmwareDomain = 1; // [(nanopb).max_size = 100]; // Server-name without protocol like this example: localhost.
required string firmwareUrl = 2; // [(nanopb).max_size = 255]; // Relative URL like this example: /firmware/PSLD/RXX.
}
message UpdateFirmwareResponse {
required Status status = 1;
}
message SwitchFirmwareRequest {
required string newFirmwareVersion = 1; // [(nanopb).max_size = 6]; // The version of the firmware which should be installed.
}
message SwitchFirmwareResponse {
required Status status = 1; // FIRMWARE_EVENTS_ACTIVATING Event will be sent, after the firmware change has completed.
}
// ========= Ad-Hoc & Status
message SetLightRequest {
repeated LightValue values = 1; // [(nanopb).max_count = 6];
}
message SetLightResponse {
required Status status = 1;
}
message GetStatusRequest {
optional bool present = 1 [default = true];
}
message GetStatusResponse {
required Status status = 1;
repeated LightValue value = 2; // [(nanopb).max_count = 6];
required LinkType preferredLinktype = 3;
required LinkType actualLinktype = 4;
required LightType lightType = 5;
required uint32 eventNotificationMask = 6; // Bitmask for max 32 events, using NotificationBit for bit positions.
optional uint32 numberOfOutputs = 7; // Hardware - The number of outputs of this device.
optional uint32 dcOutputVoltageMaximum = 8; // Hardware - DC output voltage MAXimum (in mV).
optional uint32 dcOutputVoltageCurrent = 9; // Hardware - DC output current voltage (in mV).
optional uint32 maximumOutputPowerOnDcOutput = 10; // Hardware - Maximum output power on DC output (mW).
optional bytes serialNumber = 11; // [(nanopb).max_size = 18]; // Hardware - Serial number of this device.
optional bytes macAddress = 12; // [(nanopb).max_size = 6]; // Hardware - MAC-address of this device.
optional string hardwareId = 13; // [(nanopb).min_size = 10, (nanopd).max_size = 25] ; // Hardware - The hardware ID of this device.
optional uint32 internalFlashMemSize = 14; // Hardware - The internal flash memory size.
optional uint32 externalFlashMemSize = 15; // Hardware - The external flash memory size.
optional uint32 lastInternalTestResultCode = 16; // Hardware - The last internal test result code.
optional uint32 startupCounter = 17; // Hardware - The startup counter.
optional string bootLoaderVersion = 18; // Software - The boot loader version.
optional string firmwareVersion = 19; // Software - The firmware version.
optional bytes currentConfigurationBackUsed = 20; // [(nanopb).max_size = 6]; // Software - The current configuration bank in use.
optional string name = 21; // Device - The name of this device.
optional string currentTime = 22; // Device - Not UTC, the time used in timing operations (adjusted "offset" + summer timing). YYYYMMDDhhmmss format.
optional string currentIp = 23; // Device - The current IP address of this device.
}
message ResumeScheduleRequest {
optional bytes index = 1; // [(nanopb).max_size = 1]; // Index number of connected light (DALI), none means all connected lights.
required bool immediate = 2; // [default = true]; // Resume at next schedule item or direct.
}
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; // Night-Day or Day-Night transition.
optional string time = 2; // [(nanopb).max_size = 7]; // - Format hhmmss UTC.
}
message SetTransitionResponse {
required Status status = 1;
}
message SetEventNotificationsRequest {
required uint32 NotificationMask = 1; // Bitmask for max 32 events, using NotificationBit for bit positions.
}
message SetEventNotificationsResponse {
required Status status = 1;
}
message EventNotificationRequest {
repeated EventNotification notifications = 1; // [(nanopb).max_count = 6];
}
message EventNotificationResponse {
required Status status = 1;
}
// ========= Scheduling
message SetScheduleRequest {
repeated Schedule schedules = 1; // [(nanopb).max_count = 50];
optional PageInfo pageInfo = 2;
required RelayType scheduleType = 3; // RT_NOT_SET is NOT supported!
}
message SetScheduleResponse {
required Status status = 1;
}
// ========= Configuration
message SetConfigurationRequest {
optional LightType lightType = 1;
optional DaliConfiguration daliConfiguration = 2; // Contains specific configuration for DALI controllers.
optional RelayConfiguration relayConfiguration = 3; // Contains specific configuration for Relay.
optional uint32 shortTermHistoryIntervalMinutes = 4; // Deprecated, no longer supported by the platform.
optional LinkType preferredLinkType = 5;
optional MeterType meterType = 6; // Deprecated, no longer supported by the platform.
optional uint32 longTermHistoryInterval = 7; // Deprecated, no longer supported by the platform.
optional LongTermIntervalType longTermHistoryIntervalType = 8; // Deprecated, no longer supported by the platform.
optional uint32 timeSyncFrequency = 9 [default = 86400]; // Time synch frequency (seconds).
optional bytes deviceFixIpValue = 10; // [(nanopb).max_count = 4]; // The fixed IP address of this device.
optional bytes netMask = 11; // [(nanopb).max_count = 4]; // Network mask for fixed IP address.
optional bytes gateWay = 12; // [(nanopb).max_count = 4]; // Gateway address for fixed IP address.
optional bool isDhcpEnabled = 13 [default = true]; // Is DHCP enabled for this device?
// optional bool isTlsEnabled = 14; // Defines if TLS is enabled.
// optional uint32 oslpBindPortNumber = 15; // The port used for TLS connections.
// optional string commonNameString = 16 [default = 'TLS Test']; //[default = 'TLS Test',(nanopb).max_count = 25]; // The common name (CN) used when isTlsEnabled equals true.
optional uint32 communicationTimeout = 14 [default = 20]; // Communication Timeouts (seconds) (wait for answer, socket establish, or server response = comm watchdog for local mode).
optional uint32 communicationNumberOfRetries = 15 [default = 3]; // Communication number of retries.
optional uint32 communicationPauseTimeBetweenConnectionTrials = 16 [default = 60]; // Time between communication attempts.
optional bytes ospgIpAddress = 17; // [(nanopb).max_count = 4]; // The IP address of the platform.
optional uint32 osgpPortNumber = 18; // The port number of the platform.
optional bool isTestButtonEnabled = 19 [default = true]; // Is the test button enabled for this device?
optional bool isAutomaticSummerTimingEnabled = 20 [default = true]; // Is the automatic summer timing enabled for this device?
optional sint32 astroGateSunRiseOffset = 21 [default = 0]; // The calculated sunrise time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
optional sint32 astroGateSunSetOffset = 22 [default = 0]; // The calculated sunset time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
repeated uint32 switchingDelay = 23; // [(nanopb).max_count = 4]; // Switching delay (seconds), array of 4 values. Default 0, 0, 0, 0.
repeated RelayMatrix relayLinking = 24; // Relay linking is a software linking, to may link each relay with each other relay. It is a matrix. Example, if relay 1 is linked with relay 3, if relay 1 will be switched (by OSGP or local by internal scheduler), the relay 3 will switch automatically (on or off, as it set) without new command.
optional bool relayRefreshing = 25 [default = true]; // Is relayRefreshing enabled for this device? Set minutely the nominal relay state and status according to active schedule after power outage and missed switching or anti manipulation.
optional string summerTimeDetails = 26 [default = '0360100']; //[default = '0360100',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
optional string winterTimeDetails = 27 [default = '1060200']; //[default = '1060200',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
}
// summerTimeDetails string, winterTimeDetails:
//MMWHHmi
//
//where: (note, north hemisphere summer begins at the end of march)
//MM: month
//W: day of the week (0- Monday, 6- Sunday)
//HH: hour of the changing time
//mi: minutes of the changing time
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; // Contains specific configuration for DALI controllers.
optional RelayConfiguration relayConfiguration = 4; // Contains specific configuration for Relay.
optional uint32 shortTermHistoryIntervalMinutes = 5; // Deprecated, no longer supported by the platform.
optional LinkType preferredLinkType = 6;
optional MeterType meterType = 7; // Deprecated, no longer supported by the platform.
optional uint32 longTermHistoryInterval = 8; // Deprecated, no longer supported by the platform.
optional LongTermIntervalType longTermHistoryIntervalType = 9; // Deprecated, no longer supported by the platform.
optional uint32 timeSyncFrequency = 10 [default = 86400]; // Time synch frequency (seconds).
optional bytes deviceFixIpValue = 11; // [(nanopb).max_count = 4]; // The fixed IP address of this device.
optional bytes netMask = 12; // [(nanopb).max_count = 4]; // Network mask for fixed IP address.
optional bytes gateWay = 13; // [(nanopb).max_count = 4]; // Gateway address for fixed IP address.
optional bool isDhcpEnabled = 14 [default = true]; // Is DHCP enabled for this device?
// optional bool isTlsEnabled = 15; // Defines if TLS is enabled.
// optional uint32 oslpBindPortNumber = 16; // The port used for TLS connections.
// optional string commonNameString = 17 [default = 'TLS Test']; //[default = 'TLS Test',(nanopb).max_count = 25]; // The common name (CN) used when isTlsEnabled equals true.
optional uint32 communicationTimeout = 15 [default = 20]; // Communication Timeouts (seconds) (wait for answer, socket establish, or server response = comm watchdog for local mode).
optional uint32 communicationNumberOfRetries = 16 [default = 3]; // Communication number of retries.
optional uint32 communicationPauseTimeBetweenConnectionTrials = 17 [default = 60]; // Time between communication attempts.
optional bytes ospgIpAddress = 18; // [(nanopb).max_count = 4]; // The IP address of the platform.
optional uint32 osgpPortNumber = 19; // The port number of the platform.
optional bool isTestButtonEnabled = 20 [default = true]; // Is the test button enabled for this device?
optional bool isAutomaticSummerTimingEnabled = 21 [default = true]; // Is the automatic summer timing enabled for this device?
optional sint32 astroGateSunRiseOffset = 22 [default = 0]; // The calculated sunrise time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
optional sint32 astroGateSunSetOffset = 23 [default = 0]; // The calculated sunset time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
repeated uint32 switchingDelay = 24; // [(nanopb).max_count = 4]; // Switching delay (seconds), array of 4 values. Default 0, 0, 0, 0.
repeated RelayMatrix relayLinking = 25; // Relay linking is a software linking, to may link each relay with each other relay. It is a matrix. Example, if relay 1 is linked with relay 3, if relay 1 will be switched (by OSGP or local by internal scheduler), the relay 3 will switch automatically (on or off, as it set) without new command.
optional bool relayRefreshing = 26 [default = true]; // Is relayRefreshing enabled for this device? Set minutely the nominal relay state and status according to active schedule after power outage and missed switching or anti manipulation.
optional string summerTimeDetails = 27 [default = '0360100']; //[default = '0360100',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
optional string winterTimeDetails = 28 [default = '1060200']; //[default = '1060200',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
}
message SwitchConfigurationRequest {
required bytes newConfigurationSet = 1; // [(nanopb).max_count = 1]; // The index of the configuration set (0,1).
}
message SwitchConfigurationResponse {
required Status status = 1; // FIRMWARE_EVENTS_CONFIGURATION_CHANGED Event will be sent, after the Configuration change.
}
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;
}
// ========= Monitoring
// Deprecated, no longer supported by the platform.
message GetPowerUsageHistoryRequest {
required TimePeriod timePeriod = 1;
optional uint32 page = 2;
required HistoryTermType termType = 3;
}
// Deprecated, no longer supported by the platform.
message GetPowerUsageHistoryResponse {
required Status status = 1;
repeated PowerUsageData powerUsageData = 2; // [(nanopb).max_count = 20];
optional PageInfo pageInfo = 3;
}
// Deprecated, no longer supported by the platform.
message GetActualPowerUsageRequest {
optional bool present = 1 [default = true];
}
// Deprecated, no longer supported by the platform.
message GetActualPowerUsageResponse {
required Status status = 1;
required PowerUsageData powerUsageData = 2;
}
// ========= Certificate Management
message UpdateDeviceSslCertificationRequest {
required string certificateDomain = 1; // [(nanopb).max_size = 100]; // The domain name of the certificate Server.
required string certificateUrl = 2; // [(nanopb).max_size = 255]; // The relative path of the certificate.
}
message UpdateDeviceSslCertificationResponse {
required Status status = 1;
}
// ========= Key Management
message SetDeviceVerificationKeyRequest {
required bytes certificateChunk = 1; // [(nanopb).max_size = 138]; // Verification key / public key of the platform to check the validity of an incoming message.
}
message SetDeviceVerificationKeyResponse {
required Status status = 1;
}
// ========= Types
message LocationInfo {
optional sint32 timeOffset = 1; // Correction in minutes with respect to UTC.
optional sint32 latitude = 2; // Divide by 1000000 to get float value.
optional sint32 longitude = 3; // Divide by 1000000 to get float value.
}
message LightValue {
optional bytes index = 1; // [(nanopb).max_size = 1]; // Index number of connected light (DALI), none means all connected lights.
required bool on = 2;
optional bytes dimValue = 3; // [(nanopb).max_size = 1]; // 1 - 100 %
}
message EventNotification {
required Event event = 1;
optional bytes index = 2; // [(nanopb).max_size=1];
optional string description = 3; // [(nanopb).max_size = 81];
optional string timestamp = 4; // [(nanopb).max_size = 15]; // - Format YYYYMMDDhhmmss UTC, indicates the date and time of the event.
}
message Schedule {
required Weekday weekday = 1;
optional string startDay = 2; // [(nanopb).max_size = 9]; //- Format YYYYMMDD UTC, indicates the range of a schedule entry, from startDay.
optional string endDay = 3; // [(nanopb).max_size = 9]; // - Format YYYYMMDD UTC, including endDay.
required ActionTime actionTime = 4;
optional string time = 5; // [(nanopb).max_size = 7]; // - Format hhmmss localtime set when actionTime = ABSOLUTETIME.
optional Window window = 6; // Window to wait for light sensor trigger.
repeated LightValue value = 7; // [(nanopb).max_count = 6];
optional TriggerType triggerType = 8; // React to setTransition or switch astronomical.
optional uint32 minimumLightsOn = 9; // Minimal time (in seconds) the lights should burn before deciding to switch the lights on.
optional uint32 index = 10; // Index of schedule entry in the schedule list.
optional bool isEnabled = 11; // Is this schedule entry enabled?
}
message Window {
required uint32 minutesBefore = 1; // Minutes before sunset / sunrise.
required uint32 minutesAfter = 2; // Minutes after sunset / sunrise.
}
message DaliConfiguration {
optional bytes numberOfLights = 1; // [(nanopb).max_size = 1]; // Number of lights connected to DALI controller.
repeated IndexAddressMap addressMap = 2; // [(nanopb).max_count = 4];
}
message RelayConfiguration {
repeated IndexAddressMap addressMap = 1; // [(nanopb).max_count = 6];
}
message RelayMatrix {
required bytes masterRelayIndex = 1; // [(nanopb).max_count = 1];
required bool masterRelayOn = 2; // [(nanopb).max_count = 1];
optional bytes indicesOfControlledRelaysOn = 3; // [(nanopb).max_count = 4]; // IndexNumber of output Relay to switch ON if Master Relay state changes as determined by masterRelayOn.
optional bytes indicesOfControlledRelaysOff = 4; // [(nanopb).max_count = 4]; // IndexNumber of output Relay to switch OFF if Master Relay sate changes as determined by MasterRelayOff.
}
message IndexAddressMap {
required bytes index = 1; // [(nanopb).max_size = 1]; // External index, for example 1.
required bytes address = 2; // [(nanopb).max_size = 1]; // Internal address, for example 2.
required RelayType relayType = 3;
}
message PageInfo {
required uint32 currentPage = 1; // Pages start from 1.
required uint32 pageSize = 2;
required uint32 totalPages = 3;
}
// Deprecated, no longer supported by the platform.
message TimePeriod {
required string startTime = 1; // [(nanopb).max_size = 15]; // - Format YYYYMMDDhhmmss UTC.
required string endTime = 2; // [(nanopb).max_size = 15]; // - format YYYYMMDDhhmmss UTC.
}
// Deprecated, no longer supported by the platform.
message PowerUsageData {
required string recordTime = 1; // [(nanopb).max_size = 15]; // Record time - format YYYYMMDDhhmmss UTC.
required MeterType meterType = 2; // Meter type (P1, Pulse, Aux).
required uint64 totalConsumedEnergy = 3; // Electricity delivered to client (Tariff I + Tarrif II) in 0,001 kWh.
required uint32 actualConsumedPower = 4; // Actual Electricity power delivered in W.
optional PsldData psldData = 5;
optional SsldData ssldData = 6;
}
message PsldData {
required uint32 totalLightingHours = 1; // Total lighting hours
}
// Deprecated, no longer supported by the platform.
message SsldData {
required uint32 actualCurrent1 = 1; // Instantaneous current L1 in mA.
required uint32 actualCurrent2 = 2; // Instantaneous current L2 in mA.
required uint32 actualCurrent3 = 3; // Instantaneous current L3 in mA.
required uint32 actualPower1 = 4; // Instantaneous active power L1 in W.
required uint32 actualPower2 = 5; // Instantaneous active power L2 in W.
required uint32 actualPower3 = 6; // Instantaneous active power L3 in W.
required uint32 averagePowerFactor1 = 7; // Power factor L1 (in 1/2^32) in steps of 0.1, 10 equals a power factor of 1.
required uint32 averagePowerFactor2 = 8; // Power factor L2 (in 1/2^32) in steps of 0.1, 10 equals a power factor of 1.
required uint32 averagePowerFactor3 = 9; // Power factor L3 (in 1/2^32) in steps of 0.1, 10 equals a power factor of 1.
repeated RelayData relayData = 10; // [(nanopb).max_count = 4]; // Measurement data per relay.
}
// Deprecated, no longer supported by the platform.
message RelayData {
required bytes index = 1; // [(nanopb).max_size = 1]; // external index, for example 1
required uint32 totalLightingMinutes = 2; // Total lighting minutes for lighting relay
}
// ========= Enumerations
// ========= Event Notification
enum NotificationBit {
DIAG_EVENTS = 1;
HARDWARE_FAILURE = 2;
LIGHT_EVENTS = 4; // For example LightValue changes.
TARIFF_EVENTS = 8; // For example Tariff changes.
MONITOR_EVENTS = 16; // For example monitor buffer is almost full.
FIRMWARE_EVENTS = 32; // For example firmware activation.
COMM_EVENTS = 64; // For example alternative channel.
SECURITY_EVENTS = 128; // For example out of sequence.
}
//Events must map to their notification bit:
//EG: 0000-0999 =1
// 1000-1999 =2
// 2000-2999 =4
// 3000-3999 =8
// 4000-4999 =16
// 5000-5999 =32
// 6000-6999 =64
// 7000-7999 =128
// OR to check 2^((event num)/1000)=notification bit
enum Event {
// 0 - 999 Diagnostics
DIAG_EVENTS_GENERAL = 0; // Multi-purpose event, see description of event notification for more information.
DIAG_EVENTS_UNKNOWN_MESSAGE_TYPE = 1; // Message type unknown by device.
// 1000 - 1999 Hardware Failures
HARDWARE_FAILURE_RELAY = 1000; // Index indicates relay (not supported yet).
HARDWARE_FAILURE_FLASH_WRITE_ERROR = 1001; // Error while writing to flash memory.
HARDWARE_FAILURE_FLASH_MEMORY_CORRUPT = 1002; // Error while reading from flash memory, flash memory corrupt.
HARDWARE_FAILURE_RTC_NOT_SET = 1003; // Real Time Clock has not set.
// 2000 - 2999 Light Events
LIGHT_EVENTS_LIGHT_ON = 2000; // Index indicates light.
LIGHT_EVENTS_LIGHT_OFF = 2001; // Index indicates light.
LIGHT_FAILURE_DALI_COMMUNICATION = 2500; // DALI communication failure.
LIGHT_FAILURE_BALLAST = 2501; // Ballast failure detected (DALI only).
LIGHT_FAILURE_TARIFF_SWITCH_ATTEMPT = 2502; // Attempt to switch an end-point configured as tariff from OVL schedule or manual override (index indicates end-point).
// 3000 - 3999 Tariff Events
TARIFF_EVENTS_TARIFF_ON = 3000; // Tariff switched on.
TARIFF_EVENTS_TARIFF_OFF = 3001; // Tariff switched off.
// 4000 - 4999
MONITOR_EVENTS_LONG_BUFFER_FULL = 4000; // Long term monitoring buffer overrun occurred.
MONITOR_FAILURE_P1_COMMUNICATION = 4500; // P1 meter could not be read.
MONITOR_SHORT_DETECTED = 4600; // A short has been detected.
MONITOR_SHORT_RESOLVED = 4601; // A short has been resolved.
MONITOR_DOOR_OPENED = 4700; // Indicates that the enclose of the has been opened.
MONITOR_DOOR_CLOSED = 4701; // Indicates that the enclosure of the device has been closed.
MONITOR_EVENTS_TEST_RELAY_ON = 4702; // Relay was switched on by self-test function.
MONITOR_EVENTS_TEST_RELAY_OFF = 4703; // Relay was switched off by self-test function.
MONITOR_EVENTS_LOSS_OF_POWER = 4800; // The device had a power outage.
MONITOR_EVENTS_LOCAL_MODE = 4900; // Device switched to local mode.
MONITOR_EVENTS_REMOTE_MODE = 4901; // Device switched to remote mode.
// 5000 - 5999 Firmware Events
FIRMWARE_EVENTS_ACTIVATING = 5000; // Start activating new firmware, after downloading. Or indicates that the device has switched from one firmware bank to another.
FIRMWARE_EVENTS_DOWNLOAD_NOTFOUND = 5501; // Download of firmware failed, i.e. location incorrect.
FIRMWARE_EVENTS_DOWNLOAD_FAILED = 5502; // Download of firmware failed, image incorrect.
FIRMWARE_EVENTS_CONFIGURATION_CHANGED = 5503; // Configuration changed from one bank to other (after request from platform).
// 6000 – 6999
COMM_EVENTS_ALTERNATIVE_CHANNEL = 6000; // Alternative channel selected for communication (description contains selected channel GPRS/CDMA/Ethernet).
COMM_EVENTS_RECOVERED_CHANNEL = 6001; // Communication has been recovered for this channel.
// 7000 - 7999
SECURITY_EVENTS_OUT_OF_SEQUENCE = 7000; // Out of sequence occurred and sequence number is renegotiated.
SECURITY_EVENTS_OSLP_VERIFICATION_FAILED = 7001; // OSLP message could not be verified.
SECURITY_EVENTS_INVALID_CERTIFICATE = 7002; // Invalid TLS certificate.
}
// ========= Enums
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; // General failure.
REJECTED = 2; // Request received in wrong state.
}
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;
}
// Deprecated, no longer supported by the platform.
enum MeterType {
MT_NOT_SET = 0;
P1 = 1;
PULSE = 2;
AUX = 3;
}
enum LinkType {
LINK_NOT_SET = 0;
GPRS = 1;
CDMA = 2;
ETHERNET = 3;
}
// Deprecated, no longer supported by the platform.
enum LongTermIntervalType {
LT_INT_NOT_SET = 0;
DAYS = 1;
MONTHS = 2;
}
// Deprecated, no longer supported by the platform.
enum HistoryTermType {
Short = 0;
Long = 1;
}registerDeviceRequest {
deviceIdentification: "device-01"
ipAddress: "#\000\000\001"
deviceType: SSLD
hasSchedule: false
randomDevice: 13246
}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;
}setConfigurationResponse {
status: OK
}message EventNotificationRequest {
repeated EventNotification notifications = 1; // [(nanopb).max_count = 6];
}
message EventNotificationResponse {
required Status status = 1;
}// import "nanopb.proto";
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;
}
// ========= Device Installation
message RegisterDeviceRequest {
required string deviceIdentification = 1; // [(nanopb).max_size = 41];
required bytes ipAddress = 2; // [(nanopb).max_size = 4];
required DeviceType deviceType = 3;
required bool hasSchedule = 4;
required uint32 randomDevice = 5; // 16 bits
}
message RegisterDeviceResponse {
required Status status = 1;
required string currentTime = 2; // [(nanopb).max_size = 15];// - format YYYYMMDDhhmmss UTC
required uint32 randomDevice = 3;
required uint32 randomPlatform = 4;
optional LocationInfo locationInfo = 5; // Location information of device
}
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; // [(nanopb).max_size = 1];
}
// ========= Firmware Management
message GetFirmwareVersionRequest {
optional bool present = 1 [default = true];
}
message GetFirmwareVersionResponse {
required string firmwareVersion = 1; // [(nanopb).max_size = 7]; // RXX
}
message UpdateFirmwareRequest {
required string firmwareDomain = 1; // [(nanopb).max_size = 100]; // Servername
required string firmwareUrl = 2; // [(nanopb).max_size = 255]; // /firmware/PSLD/RXX
}
message UpdateFirmwareResponse {
required Status status = 1;
}
// ========= Ad-Hoc & Status
message SetLightRequest {
repeated LightValue values = 1; // [(nanopb).max_count = 6];
}
message SetLightResponse {
required Status status = 1;
}
message GetStatusRequest {
optional bool present = 1 [default = true];
}
message GetStatusResponse {
required Status status = 1;
repeated LightValue value = 2; // [(nanopb).max_count = 6];
required LinkType preferredLinktype = 3;
required LinkType actualLinktype = 4;
required LightType lightType = 5;
required uint32 eventNotificationMask = 6; // Bitmask for max 32 events, using NotificationBit for bit positions.
}
message ResumeScheduleRequest {
optional bytes index = 1; // [(nanopb).max_size = 1]; // index number of connected light (DALI), none means all connected ligts.
required bool immediate = 2; // [default = false]; // Resume at next schedule item or direct
}
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; // Night-Day or Day-Night transition
optional string time = 2; // [(nanopb).max_size = 7]; // - format hhmmss UTC
}
message SetTransitionResponse {
required Status status = 1;
}
message SetEventNotificationsRequest {
required uint32 NotificationMask = 1; // Bitmask for max 32 events, using NotificationBit for bit positions.
}
message SetEventNotificationsResponse {
required Status status = 1;
}
message EventNotificationRequest {
repeated EventNotification notifications = 1; // [(nanopb).max_count = 6];
}
message EventNotificationResponse {
required Status status = 1;
}
// ========= Scheduling
message SetScheduleRequest {
repeated Schedule schedules = 1; // [(nanopb).max_count = 50];
optional PageInfo pageInfo = 2;
required RelayType scheduleType = 3; // RT_NOT_SET is NOT supported!
}
message SetScheduleResponse {
required Status status = 1;
}
// ========= Configuration
message SetConfigurationRequest {
optional LightType lightType = 1;
optional DaliConfiguration daliConfiguration = 2; // contains specific configuration for DALI controllers
optional RelayConfiguration relayConfiguration = 3; // contains specific configuration for Relay
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; // contains specific configuration for DALI controllers
optional RelayConfiguration relayConfiguration = 4; // contains specific configuration for Relay
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;
}
// ========= Monitoring
message GetPowerUsageHistoryRequest {
required TimePeriod timePeriod = 1;
optional uint32 page = 2;
required HistoryTermType termType = 3;
}
message GetPowerUsageHistoryResponse {
required Status status = 1;
repeated PowerUsageData powerUsageData = 2; // [(nanopb).max_count = 20];
optional PageInfo pageInfo = 3;
}
message GetActualPowerUsageRequest {
optional bool present = 1 [default = true];
}
message GetActualPowerUsageResponse {
required Status status = 1;
required PowerUsageData powerUsageData = 2;
}
// ========= Types
message LocationInfo {
optional sint32 timeOffset = 1; // correction in minutes with respect to UTC
optional sint32 latitude = 2; // divide by 1000000 to get float value
optional sint32 longitude = 3; // divide by 1000000 to get float value
}
message LightValue {
optional bytes index = 1; // [(nanopb).max_size = 1]; // index number of connected light (DALI), none means all connected ligts.
required bool on = 2;
optional bytes dimValue = 3; // [(nanopb).max_size = 1]; // 1 - 100 %
}
message EventNotification {
required Event event = 1;
optional bytes index = 2; // [(nanopb).max_size=1];
optional string description = 3; // [(nanopb).max_size = 81];
}
message Schedule {
required Weekday weekday = 1;
optional string startDay = 2; // [(nanopb).max_size = 9]; //- format YYYYMMDD UTC, indicates the range of a schedule entry, from startDay
optional string endDay = 3; // [(nanopb).max_size = 9]; // - format YYYYMMDD UTC, including endDay
required ActionTime actionTime = 4;
optional string time = 5; // [(nanopb).max_size = 7]; // - format hhmmss localtime set when actionTime = ABSOLUTETIME
optional Window window = 6; // window to wait for light sensor trigger
repeated LightValue value = 7; // [(nanopb).max_count = 6];
optional TriggerType triggerType = 8; // React to setTransition or switch astronomical
}
message Window {
required uint32 minutesBefore = 1; // minutes before sunset / sunrise
required uint32 minutesAfter = 2; // minutes after sunset / sunrise
}
message DaliConfiguration {
optional bytes numberOfLights = 1; // [(nanopb).max_size = 1]; // number of lights connected to DALI controller
repeated IndexAddressMap addressMap = 2; // [(nanopb).max_count = 4];
}
message RelayConfiguration {
repeated IndexAddressMap addressMap = 1; // [(nanopb).max_count = 6];
}
message IndexAddressMap {
required bytes index = 1; // [(nanopb).max_size = 1]; // external index, for example 1
required bytes address = 2; // [(nanopb).max_size = 1]; // internal address, for example 2
required RelayType relayType = 3;
}
message PageInfo {
required uint32 currentPage = 1; // Pages start from 1
required uint32 pageSize = 2;
required uint32 totalPages = 3;
}
message TimePeriod {
required string startTime = 1; // [(nanopb).max_size = 15]; // - format YYYYMMDDhhmmss UTC
required string endTime = 2; // [(nanopb).max_size = 15]; // - format YYYYMMDDhhmmss UTC
}
message PowerUsageData {
required string recordTime = 1; // [(nanopb).max_size = 15]; // Record time - format YYYYMMDDhhmmss UTC
required MeterType meterType = 2; // Meter type (P1, Pulse, Aux)
required uint64 totalConsumedEnergy = 3; // Electricity delivered to client (Tariff I + Tarrif II) in 0,001 kWh
required uint32 actualConsumedPower = 4; // Actual Electricity power delivered in W
optional PsldData psldData = 5;
optional SsldData ssldData = 6;
}
message PsldData {
required uint32 totalLightingHours = 1; // Total lighting hours
}
message SsldData {
required uint32 actualCurrent1 = 1; // Instantaneous current L1 in mA
required uint32 actualCurrent2 = 2; // Instantaneous current L2 in mA
required uint32 actualCurrent3 = 3; // Instantaneous current L3 in mA
required uint32 actualPower1 = 4; // Instantaneous active power L1 in W
required uint32 actualPower2 = 5; // Instantaneous active power L2 in W
required uint32 actualPower3 = 6; // Instantaneous active power L3 in W
required uint32 averagePowerFactor1 = 7; // Power factor L1 (in 1/2^32) in steps of 0.1, 10 equals a power factor of 1
required uint32 averagePowerFactor2 = 8; // Power factor L2 (in 1/2^32) in steps of 0.1, 10 equals a power factor of 1
required uint32 averagePowerFactor3 = 9; // Power factor L3 (in 1/2^32) in steps of 0.1, 10 equals a power factor of 1
repeated RelayData relayData = 10; // [(nanopb).max_count = 4]; // Measurement data per relay
}
message RelayData {
required bytes index = 1; // [(nanopb).max_size = 1]; // external index, for example 1
required uint32 totalLightingMinutes = 2; // Total lighting minutes for lighting relay
}
// ========= Enumerations
// ========= Event Notification
enum NotificationBit {
DIAG_EVENTS = 1;
HARDWARE_FAILURE = 2;
LIGHT_EVENTS = 4; // For example LightValue changes
TARIFF_EVENTS = 8; // For example Tariff changes
MONITOR_EVENTS = 16; // For example monitor buffer is almost full
FIRMWARE_EVENTS = 32; // For example firmware activation
COMM_EVENTS = 64; // For example alternative channel
SECURITY_EVENTS = 128; // For example out of sequence
}
//Events must map to their notification bit:
//EG: 0000-0999 =1
// 1000-1999 =2
// 2000-2999 =4
// 3000-3999 =8
// 4000-4999 =16
// 5000-5999 =32
// 6000-6999 =64
// 7000-7999 =128
// OR to check 2^((event num)/1000)=notification bit
enum Event {
// 0 - 999 Diagnostics
DIAG_EVENTS_GENERAL = 0;
// 1000 - 1999 Hardware Failures
HARDWARE_FAILURE_RELAY = 1000; // Index indicates relay (not supported yet)
// 2000 - 2999 Light Events
LIGHT_EVENTS_LIGHT_ON = 2000; // Index indicates light
LIGHT_EVENTS_LIGHT_OFF = 2001; // Index indicates light
LIGHT_FAILURE_DALI_COMMUNICATION = 2500; // DALI communication failure
LIGHT_FAILURE_BALLAST = 2501; // Ballast failure detected (DALI only)
LIGHT_FAILURE_TARIFF_SWITCH_ATTEMPT = 2502; // Attempt to switch an endpoint configured as tariff from OVL schedule or manual override (index indicates endpoint)
// 3000 - 3999 Tariff Events
TARIFF_EVENTS_TARIFF_ON = 3000; // Tariff switched on
TARIFF_EVENTS_TARIFF_OFF = 3001; // Tariff switched off
// 4000 - 4999
MONITOR_EVENTS_LONG_BUFFER_FULL = 4000; // Long term monitoring buffer overrun occurred
MONITOR_FAILURE_P1_COMMUNICATION = 4500; // P1 meter could not be read
MONITOR_SHORT_DETECTED = 4600;
MONITOR_SHORT_RESOLVED = 4601;
MONITOR_DOOR_OPENED = 4700;
MONITOR_DOOR_CLOSED = 4701;
// 5000 - 5999 Firmware Events
FIRMWARE_EVENTS_ACTIVATING = 5000; // Start activating new firmware, after downloading
FIRMWARE_EVENTS_DOWNLOAD_NOTFOUND = 5501; // Download of firmware failed, i.e. location incorrect
FIRMWARE_EVENTS_DOWNLOAD_FAILED = 5502; // Download of firmware failed, image incorrect
// 6000 – 6999
COMM_EVENTS_ALTERNATIVE_CHANNEL = 6000; // Alternative channel selected for communication (description contains selected channel GPRS/CDMA/Ethernet)
COMM_EVENTS_RECOVERED_CHANNEL = 6001; // Communication has been recovered for this channel
// 7000 - 7999
SECURITY_EVENTS_OUT_OF_SEQUENCE = 7000; // Out of sequence occurred and sequence number is renegotiated
}
// ========= Enums
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; // general failure
REJECTED = 2; // request received in wrong state
}
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;
}class OslpEnvelope {
/**
* Length of the security hash.
* Length for ECDSA is 71 or 72 or 73 bytes.
* Length for RSA is 128 bytes.
*/
public static final int SECURITY_KEY_LENGTH = 128;
/**
* Length of the sequence number.
*/
public static final int SEQUENCE_NUMBER_LENGTH = 2;
/**
* Length of the manufacturer id.
*/
public static final int MANUFACTURER_ID_LENGTH = 2;
/**
* Length of the device id.
*/
public static final int DEVICE_ID_LENGTH = 10;
/**
* Length of the length.
*/
public static final int LENGTH_INDICATOR_LENGTH = 2;
/**
* Buffer for security key bytes.
*/
public byte[] securityKey = new byte[SECURITY_KEY_LENGTH];
/**
* Buffer for sequence number bytes.
*/
public byte[] sequenceNumber = new byte[SEQUENCE_NUMBER_LENGTH];
/**
* Buffer for deviceid bytes.
*/
public byte[] deviceId = new byte[DEVICE_ID_LENGTH + MANUFACTURER_ID_LENGTH];
/**
* Buffer for OSLP payload.
*/
public Message payloadMessage;
}message RegisterDeviceRequest {
required string deviceIdentification = 1; // [(nanopb).max_size = 41];
required bytes ipAddress = 2; // [(nanopb).max_size = 4];
required DeviceType deviceType = 3;
required bool hasSchedule = 4;
required uint32 randomDevice = 5; // 16 bits
}
message RegisterDeviceResponse {
required Status status = 1;
required string currentTime = 2; // [(nanopb).max_size = 15];// - format YYYYMMDDhhmmss UTC
required uint32 randomDevice = 3;
required uint32 randomPlatform = 4;
optional LocationInfo locationInfo = 5; // Location information of device
}enum DeviceType {
PSLD = 0;
SSLD = 1;
}
enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}
message LocationInfo {
optional sint32 timeOffset = 1; // correction in minutes with respect to UTC
optional sint32 latitude = 2; // divide by 1000000 to get float value
optional sint32 longitude = 3; // divide by 1000000 to get float value
}registerDeviceResponse {
status: OK
currentTime: "20160106135210"
randomDevice: 13246
randomPlatform: 44765
locationInfo {
timeOffset: 60
latitude: 50889228
longitude: 5974140
}
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}confirmRegisterDeviceRequest {
randomDevice: 13246
randomPlatform: 44765
}confirmRegisterDeviceResponse {
status: OK
randomDevice: 13246
randomPlatform: 44765
sequenceWindow: 6
}message SetConfigurationRequest {
optional LightType lightType = 1;
optional DaliConfiguration daliConfiguration = 2; // Contains specific configuration for DALI controllers.
optional RelayConfiguration relayConfiguration = 3; // Contains specific configuration for Relay.
optional uint32 shortTermHistoryIntervalMinutes = 4;
optional LinkType preferredLinkType = 5;
optional MeterType meterType = 6;
optional uint32 longTermHistoryInterval = 7;
optional LongTermIntervalType longTermHistoryIntervalType = 8;
optional uint32 timeSyncFrequency = 9 [default = 86400]; // Time synch frequency (seconds).
optional bytes deviceFixIpValue = 10; // [(nanopb).max_count = 4]; // The fixed IP address of this device.
optional bytes netMask = 11; // [(nanopb).max_count = 4]; // Network mask for fixed IP address.
optional bytes gateWay = 12; // [(nanopb).max_count = 4]; // Gateway address for fixed IP address.
optional bool isDhcpEnabled = 13 [default = true]; // Is DHCP enabled for this device?
optional bool isTlsEnabled = 14; // Defines if TLS is enabled.
optional uint32 oslpBindPortNumber = 15; // The port used for TLS connections.
optional string commonNameString = 16 [default = 'TLS Test']; //[default = 'TLS Test',(nanopb).max_count = 25]; // The common name (CN) used when isTlsEnabled equals true.
optional uint32 communicationTimeout = 17 [default = 20]; // Communication Timeouts (seconds) (wait for answer, socket establish, or server response = comm watchdog for local mode).
optional uint32 communicationNumberOfRetries = 18 [default = 3]; // Communication number of retries.
optional uint32 communicationPauseTimeBetweenConnectionTrials = 19 [default = 60]; // Time between communication attempts.
optional bytes ospgIpAddress = 20; // [(nanopb).max_count = 4]; // The IP address of the platform.
optional uint32 osgpPortNumber = 21; // The port number of the platform.
optional bool isTestButtonEnabled = 22 [default = true]; // Is the test button enabled for this device?
optional bool isAutomaticSummerTimingEnabled = 23 [default = true]; // Is the automatic summer timing enabled for this device?
optional sint32 astroGateSunRiseOffset = 24 [default = 0]; // The calculated sunrise time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
optional sint32 astroGateSunSetOffset = 25 [default = 0]; // The calculated sunset time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
repeated uint32 switchingDelay = 26; // [(nanopb).max_count = 4]; // Switching delay (seconds), array of 4 values. Default 0, 0, 0, 0.
repeated RelayMatrix relayLinking = 27; // Relay linking is a software linking, to may link each relay with each other relay. It is a matrix. Example, if relay 1 is linked with relay 3, if relay 1 will be switched (by OSGP or local by internal scheduler), the relay 3 will switch automatically (on or off, as it set) without new command.
optional bool relayRefreshing = 28 [default = true]; // Is relayRefreshing enabled for this device? Set minutely the nominal relay state and status according to active schedule after power outage and missed switching or anti manipulation.
optional string summerTimeDetails = 29 [default = '0360100']; //[default = '0360100',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
optional string winterTimeDetails = 30 [default = '1060200']; //[default = '1060200',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
}
// summerTimeDetails string, winterTimeDetails:
//MMWHHmi
//
//where: (note, north hemisphere summer begins at the end of march)
//MM: month
//W: day of the week (0- Monday, 6- Sunday)
//HH: hour of the changing time
//mi: minutes of the changing time
//
//note: The current implemention is usable in Europe and several other countries in the world, but doesn't support all situations as describe at https://en.wikipedia.org/wiki/Daylight_saving_time_by_country. Some countries don't switch the time in the last week of the month, but in the first or second. This is currently not supported.
message SetConfigurationResponse {
required Status status = 1;
}enum LightType {
LT_NOT_SET = 0;
RELAY = 1;
ONE_TO_TEN_VOLT = 2;
ONE_TO_TEN_VOLT_REVERSE = 3;
DALI = 4;
}
message DaliConfiguration {
optional bytes numberOfLights = 1; // [(nanopb).max_size = 1]; // number of lights connected to DALI controller
repeated IndexAddressMap addressMap = 2; // [(nanopb).max_count = 4];
}
message RelayConfiguration {
repeated IndexAddressMap addressMap = 1; // [(nanopb).max_count = 6];
}
message IndexAddressMap {
required bytes index = 1; // [(nanopb).max_size = 1]; // external index, for example 1
required bytes address = 2; // [(nanopb).max_size = 1]; // internal address, for example 2
required RelayType relayType = 3;
}
enum RelayType {
RT_NOT_SET = 0;
LIGHT = 1;
TARIFF = 2;
}
enum LinkType {
LINK_NOT_SET = 0;
GPRS = 1;
CDMA = 2;
ETHERNET = 3;
}
enum MeterType {
MT_NOT_SET = 0;
P1 = 1;
PULSE = 2;
AUX = 3;
}
enum LongTermIntervalType {
LT_INT_NOT_SET = 0;
DAYS = 1;
MONTHS = 2;
}
message RelayMatrix {
required bytes masterRelayIndex = 1; // [(nanopb).max_count = 1];
required bool masterRelayOn = 2; // [(nanopb).max_count = 1];
optional bytes indicesOfControlledRelaysOn = 3; // [(nanopb).max_count = 4]; // IndexNumber of output Relay to switch ON if Master Relay state changes as determined by masterRelayOn.
optional bytes indicesOfControlledRelaysOff = 4; // [(nanopb).max_count = 4]; // IndexNumber of output Relay to switch OFF if Master Relay sate changes as determined by MasterRelayOff.
}
enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:con="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<con:SetConfigurationRequest>
<!--type: Identification-->
<con:DeviceIdentification>device-01</con:DeviceIdentification>
<!--Optional:-->
<con:Configuration>
<!--Optional:-->
<!--type: LightType - enumeration: [RELAY,ONE_TO_TEN_VOLT,ONE_TO_TEN_VOLT_REVERSE,DALI]-->
<con:LightType>RELAY</con:LightType>
<!--Optional:-->
<con:RelayConfiguration>
<!--0 to 6 repetitions:-->
<con:RelayMap>
<!--anonymous type-->
<con:Index>1</con:Index>
<!--anonymous type-->
<con:Address>1</con:Address>
<!--type: RelayType - enumeration: [LIGHT,TARIFF,TARIFF_REVERSED]-->
<con:RelayType>TARIFF</con:RelayType>
</con:RelayMap>
<con:RelayMap>
<!--anonymous type-->
<con:Index>2</con:Index>
<!--anonymous type-->
<con:Address>2</con:Address>
<!--type: RelayType - enumeration: [LIGHT,TARIFF,TARIFF_REVERSED]-->
<con:RelayType>LIGHT</con:RelayType>
</con:RelayMap>
<con:RelayMap>
<!--anonymous type-->
<con:Index>3</con:Index>
<!--anonymous type-->
<con:Address>3</con:Address>
<!--type: RelayType - enumeration: [LIGHT,TARIFF,TARIFF_REVERSED]-->
<con:RelayType>LIGHT</con:RelayType>
</con:RelayMap>
<con:RelayMap>
<!--anonymous type-->
<con:Index>4</con:Index>
<!--anonymous type-->
<con:Address>4</con:Address>
<!--type: RelayType - enumeration: [LIGHT,TARIFF,TARIFF_REVERSED]-->
<con:RelayType>LIGHT</con:RelayType>
</con:RelayMap>
</con:RelayConfiguration>
<!--Optional:-->
<!--type: LinkType - enumeration: [GPRS,CDMA,ETHERNET]-->
<con:PreferredLinkType>ETHERNET</con:PreferredLinkType>
<con:TimeSyncFrequency>864000</con:TimeSyncFrequency>
<con:DeviceFixedIp>
<con:IpAddress>192.168.0.110</con:IpAddress>
<con:NetMask>255.255.255.0</con:NetMask>
<con:GateWay>192.168.0.1</con:GateWay>
</con:DeviceFixedIp>
<con:DhcpEnabled>false</con:DhcpEnabled>
<con:TlsEnabled>false</con:TlsEnabled>
<con:TlsPortNumber>1234</con:TlsPortNumber>
<con:CommonNameString>TLS Test</con:CommonNameString>
<con:CommunicationTimeout>15</con:CommunicationTimeout>
<con:CommunicationNumberOfRetries>2</con:CommunicationNumberOfRetries>
<con:CommunicationPauseTimeBetweenConnectionTrials>120</con:CommunicationPauseTimeBetweenConnectionTrials>
<con:OsgpIpAddress>192.168.100.42</con:OsgpIpAddress>
<con:OsgpPortNumber>12122</con:OsgpPortNumber>
<con:TestButtonEnabled>false</con:TestButtonEnabled>
<con:AutomaticSummerTimingEnabled>false</con:AutomaticSummerTimingEnabled>
<con:AstroGateSunRiseOffset>-15</con:AstroGateSunRiseOffset>
<con:AstroGateSunSetOffset>15</con:AstroGateSunSetOffset>
<!-- List of SwitchingDelay type, one delay per relay, max 4 entries -->
<con:SwitchingDelays>100</con:SwitchingDelays>
<con:SwitchingDelays>200</con:SwitchingDelays>
<con:SwitchingDelays>300</con:SwitchingDelays>
<con:SwitchingDelays>400</con:SwitchingDelays>
<!-- List of RelayMatrix type -->
<con:RelayLinking>
<con:MasterRelayIndex>1</con:MasterRelayIndex>
<con:MasterRelayOn>true</con:MasterRelayOn>
<!-- List of RelayMatrixIndex, max 4 entries containing a single index between 1 and 4 -->
<con:IndicesOfControlledRelaysOn>1</con:IndicesOfControlledRelaysOn>
<con:IndicesOfControlledRelaysOn>2</con:IndicesOfControlledRelaysOn>
<con:IndicesOfControlledRelaysOn>3</con:IndicesOfControlledRelaysOn>
<con:IndicesOfControlledRelaysOn>4</con:IndicesOfControlledRelaysOn>
<!-- List of RelayMatrixIndex, max 4 entries containing a single index between 1 and 4 -->
<con:IndicesOfControlledRelaysOff>1</con:IndicesOfControlledRelaysOff>
<con:IndicesOfControlledRelaysOff>2</con:IndicesOfControlledRelaysOff>
<con:IndicesOfControlledRelaysOff>3</con:IndicesOfControlledRelaysOff>
<con:IndicesOfControlledRelaysOff>4</con:IndicesOfControlledRelaysOff>
</con:RelayLinking>
<con:RelayLinking>
<con:MasterRelayIndex>2</con:MasterRelayIndex>
<con:MasterRelayOn>true</con:MasterRelayOn>
<!-- List of RelayMatrixIndex, max 4 entries containing a single index between 1 and 4 -->
<con:IndicesOfControlledRelaysOn>3</con:IndicesOfControlledRelaysOn>
<!-- List of RelayMatrixIndex, max 4 entries containing a single index between 1 and 4 -->
<con:IndicesOfControlledRelaysOff>3</con:IndicesOfControlledRelaysOff>
</con:RelayLinking>
<con:RelayRefreshing>true</con:RelayRefreshing>
<con:SummerTimeDetails>2016-03-27T01:00:00.000+01:00</con:SummerTimeDetails>
<con:WinterTimeDetails>2016-10-30T02:00:00.000+02:00</con:WinterTimeDetails>
</con:Configuration>
<!--Optional:-->
<!--type: timestamp-->
<!--<con:scheduled_time>2015-01-04T15:49:59Z</con:scheduled_time>-->
</con:SetConfigurationRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetConfigurationAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20161007141853727</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SetConfigurationAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:con="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<con:SetConfigurationAsyncRequest>
<con:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20161007141521031</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</con:AsyncRequest>
</con:SetConfigurationAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetConfigurationResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SetConfigurationResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setConfigurationRequest {
lightType: RELAY
relayConfiguration {
addressMap {
index: "\001"
address: "\001"
relayType: TARIFF
}
addressMap {
index: "\002"
address: "\002"
relayType: LIGHT
}
addressMap {
index: "\003"
address: "\003"
relayType: LIGHT
}
addressMap {
index: "\004"
address: "\004"
relayType: LIGHT
}
}
shortTermHistoryIntervalMinutes: 15
preferredLinkType: ETHERNET
meterType: PULSE
longTermHistoryInterval: 1
longTermHistoryIntervalType: DAYS
timeSyncFrequency: 864000
deviceFixIpValue: "\300\250\000n"
netMask: "\377\377\377\000"
gateWay: "\300\250\000\001"
isDhcpEnabled: false
isTlsEnabled: false
oslpBindPortNumber: 1234
commonNameString: "TLS Test"
communicationTimeout: 15
communicationNumberOfRetries: 2
communicationPauseTimeBetweenConnectionTrials: 120
ospgIpAddress: "\300\250d*"
osgpPortNumber: 12122
isTestButtonEnabled: false
isAutomaticSummerTimingEnabled: false
astroGateSunRiseOffset: -15
astroGateSunSetOffset: 15
switchingDelay: 100
switchingDelay: 200
switchingDelay: 300
switchingDelay: 400
relayLinking {
masterRelayIndex: "\001"
masterRelayOn: true
indicesOfControlledRelaysOn: "\001\002\003\004"
indicesOfControlledRelaysOff: "\001\002\003\004"
}
relayLinking {
masterRelayIndex: "\002"
masterRelayOn: true
indicesOfControlledRelaysOn: "\003"
indicesOfControlledRelaysOff: "\003"
}
relayRefreshing: true
summerTimeDetails: "0360100"
winterTimeDetails: "1060200"
}message EventNotification {
required Event event = 1;
optional bytes index = 2; // [(nanopb).max_size=1];
optional string description = 3; // [(nanopb).max_size = 81];
optional string timestamp = 4; // [(nanopb).max_size = 15]; // - Format YYYYMMDDhhmmss UTC, indicates the date and time of the event.
}
enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}eventNotificationRequest {
notifications {
event: TARIFF_EVENTS_TARIFF_OFF
index: "\001"
description: "Tariff Off Example Event"
timestamp: "20170404093500"
}
}eventNotificationResponse {
status: OK
}message GetFirmwareVersionRequest {
optional bool present = 1 [default = true];
}
message GetFirmwareVersionResponse {
required string firmwareVersion = 1; // [(nanopb).max_size = 7]; // RXX
}message SetEventNotificationsRequest {
required uint32 NotificationMask = 1; // Bitmask for max 32 events, using NotificationBit for bit positions.
}
message SetEventNotificationsResponse {
required Status status = 1;
}getConfigurationRequest {
}message SetLightRequest {
repeated LightValue values = 1; // [(nanopb).max_count = 6];
}
message SetLightResponse {
required Status status = 1;
}message ResumeScheduleRequest {
optional bytes index = 1; // [(nanopb).max_size = 1]; // index number of connected light (DALI), none means all connected lights.
required bool immediate = 2; // [default = false]; // Resume at next schedule item or direct
}
message ResumeScheduleResponse {
required Status status = 1;
}message UpdateFirmwareRequest {
required string firmwareDomain = 1; // [(nanopb).max_size = 100]; // Servername
required string firmwareUrl = 2; // [(nanopb).max_size = 255]; // /firmware/TSTMAN/TSTMOD/RXX
}
message UpdateFirmwareResponse {
required Status status = 1;
}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; // [(nanopb).max_size = 1];
}getStatusRequest {
}message UpdateDeviceSslCertificationRequest {
required string certificateDomain = 1; // [(nanopb).max_size = 100]; // The domain name of the certificate Server.
required string certificateUrl = 2; // [(nanopb).max_size = 255]; // The relative path of the certificate.
}
message UpdateDeviceSslCertificationResponse {
required Status status = 1;
}message SetTransitionRequest {
required TransitionType transitionType = 1; // Night-Day or Day-Night transition
optional string time = 2; // [(nanopb).max_size = 7]; // - format hhmmss UTC
}
message SetTransitionResponse {
required Status status = 1;
}message SetDeviceVerificationKeyRequest {
required bytes certificateChunk = 1; // [(nanopb).max_size = 138]; // Verification key / public key of the platform to check the validity of an incoming message.
}
message SetDeviceVerificationKeyResponse {
required Status status = 1;
}message SetRebootRequest {
optional bool present = 1 [default = true];
}
message SetRebootResponse {
required Status status = 1;
}message SwitchFirmwareRequest {
required string newFirmwareVersion = 1; // [(nanopb).max_size = 6]; // The version of the firmware which should be installed.
}
message SwitchFirmwareResponse {
required Status status = 1; // FIRMWARE_EVENTS_ACTIVATING Event will be sent, after the firmware change has completed.
}message SwitchConfigurationRequest {
required bytes newConfigurationSet = 1; // [(nanopb).max_count = 1]; // The index of the configuration set (0,1).
}
message SwitchConfigurationResponse {
required Status status = 1; // FIRMWARE_EVENTS_CONFIGURATION_CHANGED Event will be sent, after the Configuration change.
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:fman="http://www.opensmartgridplatform.org/schemas/firmwaremanagement">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>KevinSmeets</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<fman:GetFirmwareVersionRequest xmlns:fman="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10">
<!--type: Identification-->
<fman:DeviceIdentification>device-01</fman:DeviceIdentification>
</fman:GetFirmwareVersionRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:GetFirmwareVersionAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160104150323405</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:GetFirmwareVersionAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:fman="http://www.opensmartgridplatform.org/schemas/firmwaremanagement">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<fman:GetFirmwareVersionAsyncRequest xmlns:fman="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10">
<fman:AsyncRequest>
<!--type: CorrelationUid-->
<com:CorrelationUid>LianderNetManagement|||device-01|||20160104150323405</com:CorrelationUid>
<!--type: Identification-->
<com:DeviceId>device-01</com:DeviceId>
</fman:AsyncRequest>
</fman:GetFirmwareVersionAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:GetFirmwareVersionResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
<ns2:FirmwareVersion>R01</ns2:FirmwareVersion>
</ns2:GetFirmwareVersionResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>getFirmwareVersionRequest {
}getFirmwareVersionResponse {
firmwareVersion: "R01"
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:dev="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<dev:SetEventNotificationsRequest>
<!--type: Identification-->
<dev:DeviceIdentification>device-01</dev:DeviceIdentification>
<dev:EventNotifications>DIAG_EVENTS</dev:EventNotifications>
<dev:EventNotifications>HARDWARE_FAILURE</dev:EventNotifications>
<dev:EventNotifications>LIGHT_EVENTS</dev:EventNotifications>
<dev:EventNotifications>TARIFF_EVENTS</dev:EventNotifications>
<dev:EventNotifications>MONITOR_EVENTS</dev:EventNotifications>
<dev:EventNotifications>FIRMWARE_EVENTS</dev:EventNotifications>
<dev:EventNotifications>COMM_EVENTS</dev:EventNotifications>
<dev:EventNotifications>SECURITY_EVENTS</dev:EventNotifications>
</dev:SetEventNotificationsRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetEventNotificationsAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160104145052565</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SetEventNotificationsAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:dev="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<dev:SetEventNotificationsAsyncRequest>
<dev:AsyncRequest>
<!--type: CorrelationUid-->
<com:CorrelationUid>LianderNetManagement|||device-01|||20160104145052565</com:CorrelationUid>
<!--type: Identification-->
<com:DeviceId>device-01</com:DeviceId>
</dev:AsyncRequest>
</dev:SetEventNotificationsAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetEventNotificationsResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SetEventNotificationsResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setEventNotificationsRequest {
NotificationMask: 255
}setEventNotificationsResponse {
status: OK
}message GetConfigurationRequest {
optional bool present = 1 [default = true];
}
message GetConfigurationResponse {
required Status status = 1;
optional LightType lightType = 2;
optional DaliConfiguration daliConfiguration = 3; // Contains specific configuration for DALI controllers.
optional RelayConfiguration relayConfiguration = 4; // Contains specific configuration for Relay.
optional uint32 shortTermHistoryIntervalMinutes = 5;
optional LinkType preferredLinkType = 6;
optional MeterType meterType = 7;
optional uint32 longTermHistoryInterval = 8;
optional LongTermIntervalType longTermHistoryIntervalType = 9;
optional uint32 timeSyncFrequency = 10 [default = 86400]; // Time synch frequency (seconds).
optional bytes deviceFixIpValue = 11; // [(nanopb).max_count = 4]; // The fixed IP address of this device.
optional bytes netMask = 12; // [(nanopb).max_count = 4]; // Network mask for fixed IP address.
optional bytes gateWay = 13; // [(nanopb).max_count = 4]; // Gateway address for fixed IP address.
optional bool isDhcpEnabled = 14 [default = true]; // Is DHCP enabled for this device?
optional bool isTlsEnabled = 15; // Defines if TLS is enabled.
optional uint32 oslpBindPortNumber = 16; // The port used for TLS connections.
optional string commonNameString = 17 [default = 'TLS Test']; //[default = 'TLS Test',(nanopb).max_count = 25]; // The common name (CN) used when isTlsEnabled equals true.
optional uint32 communicationTimeout = 18 [default = 20]; // Communication Timeouts (seconds) (wait for answer, socket establish, or server response = comm watchdog for local mode).
optional uint32 communicationNumberOfRetries = 19 [default = 3]; // Communication number of retries.
optional uint32 communicationPauseTimeBetweenConnectionTrials = 20 [default = 60]; // Time between communication attempts.
optional bytes ospgIpAddress = 21; // [(nanopb).max_count = 4]; // The IP address of the platform.
optional uint32 osgpPortNumber = 22; // The port number of the platform.
optional bool isTestButtonEnabled = 23 [default = true]; // Is the test button enabled for this device?
optional bool isAutomaticSummerTimingEnabled = 24 [default = true]; // Is the automatic summer timing enabled for this device?
optional sint32 astroGateSunRiseOffset = 25 [default = 0]; // The calculated sunrise time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
optional sint32 astroGateSunSetOffset = 26 [default = 0]; // The calculated sunset time modified by this value. Time is moved earlier (if offset is negative) or later (if offset is positive). In seconds.
repeated uint32 switchingDelay = 27; // [(nanopb).max_count = 4]; // Switching delay (seconds), array of 4 values. Default 0, 0, 0, 0.
repeated RelayMatrix relayLinking = 28; // Relay linking is a software linking, to may link each relay with each other relay. It is a matrix. Example, if relay 1 is linked with relay 3, if relay 1 will be switched (by OSGP or local by internal scheduler), the relay 3 will switch automatically (on or off, as it set) without new command.
optional bool relayRefreshing = 29 [default = true]; // Is relayRefreshing enabled for this device? Set minutely the nominal relay state and status according to active schedule after power outage and missed switching or anti manipulation.
optional string summerTimeDetails = 30 [default = '0360100']; //[default = '0360100',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
optional string winterTimeDetails = 31 [default = '1060200']; //[default = '1060200',(nanopb).max_count = 7]; // The time point for DST for Europe is not identical in every country. It should be added as parameters the weekday, month and time point for DST/summer and winter.
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}
enum LightType {
LT_NOT_SET = 0;
RELAY = 1;
ONE_TO_TEN_VOLT = 2;
ONE_TO_TEN_VOLT_REVERSE = 3;
DALI = 4;
}
message DaliConfiguration {
optional bytes numberOfLights = 1; // [(nanopb).max_size = 1]; // number of lights connected to DALI controller
repeated IndexAddressMap addressMap = 2; // [(nanopb).max_count = 4];
}
message RelayConfiguration {
repeated IndexAddressMap addressMap = 1; // [(nanopb).max_count = 6];
}
message IndexAddressMap {
required bytes index = 1; // [(nanopb).max_size = 1]; // external index, for example 1
required bytes address = 2; // [(nanopb).max_size = 1]; // internal address, for example 2
required RelayType relayType = 3;
}
enum RelayType {
RT_NOT_SET = 0;
LIGHT = 1;
TARIFF = 2;
}
enum LinkType {
LINK_NOT_SET = 0;
GPRS = 1;
CDMA = 2;
ETHERNET = 3;
}
enum MeterType {
MT_NOT_SET = 0;
P1 = 1;
PULSE = 2;
AUX = 3;
}
enum LongTermIntervalType {
LT_INT_NOT_SET = 0;
DAYS = 1;
MONTHS = 2;
}
message RelayMatrix {
required bytes masterRelayIndex = 1; // [(nanopb).max_count = 1];
required bool masterRelayOn = 2; // [(nanopb).max_count = 1];
optional bytes indicesOfControlledRelaysOn = 3; // [(nanopb).max_count = 4]; // IndexNumber of output Relay to switch ON if Master Relay state changes as determined by masterRelayOn.
optional bytes indicesOfControlledRelaysOff = 4; // [(nanopb).max_count = 4]; // IndexNumber of output Relay to switch OFF if Master Relay sate changes as determined by MasterRelayOff.
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:con="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<con:GetConfigurationRequest>
<con:DeviceIdentification>device-01</con:DeviceIdentification>
</con:GetConfigurationRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:GetConfigurationAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20161007142028655</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:GetConfigurationAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:con="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<con:GetConfigurationAsyncRequest>
<con:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20161007142028655</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</con:AsyncRequest>
</con:GetConfigurationAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:GetConfigurationResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
<ns2:Configuration>
<ns2:LightType>RELAY</ns2:LightType>
<ns2:RelayConfiguration>
<ns2:RelayMap>
<ns2:Index>1</ns2:Index>
<ns2:Address>1</ns2:Address>
<ns2:RelayType>TARIFF</ns2:RelayType>
</ns2:RelayMap>
<ns2:RelayMap>
<ns2:Index>2</ns2:Index>
<ns2:Address>2</ns2:Address>
<ns2:RelayType>LIGHT</ns2:RelayType>
</ns2:RelayMap>
<ns2:RelayMap>
<ns2:Index>3</ns2:Index>
<ns2:Address>3</ns2:Address>
<ns2:RelayType>LIGHT</ns2:RelayType>
</ns2:RelayMap>
<ns2:RelayMap>
<ns2:Index>4</ns2:Index>
<ns2:Address>4</ns2:Address>
<ns2:RelayType>LIGHT</ns2:RelayType>
</ns2:RelayMap>
</ns2:RelayConfiguration>
<ns2:PreferredLinkType>ETHERNET</ns2:PreferredLinkType>
<ns2:TimeSyncFrequency>86400</ns2:TimeSyncFrequency>
<ns2:DeviceFixedIp>
<ns2:IpAddress>192.168.0.100</ns2:IpAddress>
<ns2:NetMask>255.255.255.0</ns2:NetMask>
<ns2:GateWay>192.168.0.1</ns2:GateWay>
</ns2:DeviceFixedIp>
<ns2:DhcpEnabled>false</ns2:DhcpEnabled>
<ns2:TlsEnabled>true</ns2:TlsEnabled>
<ns2:TlsPortNumber>1234</ns2:TlsPortNumber>
<ns2:CommonNameString>TLS Test</ns2:CommonNameString>
<ns2:CommunicationTimeout>30</ns2:CommunicationTimeout>
<ns2:CommunicationNumberOfRetries>5</ns2:CommunicationNumberOfRetries>
<ns2:CommunicationPauseTimeBetweenConnectionTrials>120</ns2:CommunicationPauseTimeBetweenConnectionTrials>
<ns2:OsgpIpAddress>168.63.97.65</ns2:OsgpIpAddress>
<ns2:OsgpPortNumber>12122</ns2:OsgpPortNumber>
<ns2:TestButtonEnabled>false</ns2:TestButtonEnabled>
<ns2:AutomaticSummerTimingEnabled>false</ns2:AutomaticSummerTimingEnabled>
<ns2:AstroGateSunRiseOffset>-15</ns2:AstroGateSunRiseOffset>
<ns2:AstroGateSunSetOffset>15</ns2:AstroGateSunSetOffset>
<ns2:SwitchingDelays>1</ns2:SwitchingDelays>
<ns2:SwitchingDelays>2</ns2:SwitchingDelays>
<ns2:SwitchingDelays>3</ns2:SwitchingDelays>
<ns2:SwitchingDelays>4</ns2:SwitchingDelays>
<ns2:RelayLinking>
<ns2:MasterRelayIndex>2</ns2:MasterRelayIndex>
<ns2:MasterRelayOn>false</ns2:MasterRelayOn>
<ns2:IndicesOfControlledRelaysOn>3</ns2:IndicesOfControlledRelaysOn>
<ns2:IndicesOfControlledRelaysOn>4</ns2:IndicesOfControlledRelaysOn>
<ns2:IndicesOfControlledRelaysOff>3</ns2:IndicesOfControlledRelaysOff>
<ns2:IndicesOfControlledRelaysOff>4</ns2:IndicesOfControlledRelaysOff>
</ns2:RelayLinking>
<ns2:RelayRefreshing>false</ns2:RelayRefreshing>
<ns2:SummerTimeDetails>2016-03-27T01:00:00.000+01:00</ns2:SummerTimeDetails>
<ns2:WinterTimeDetails>2016-10-30T02:00:00.000+02:00</ns2:WinterTimeDetails>
</ns2:Configuration>
</ns2:GetConfigurationResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>getConfigurationResponse {
status: OK
lightType: RELAY
relayConfiguration {
addressMap {
index: "\001"
address: "\001"
relayType: TARIFF
}
addressMap {
index: "\002"
address: "\002"
relayType: LIGHT
}
addressMap {
index: "\003"
address: "\003"
relayType: LIGHT
}
addressMap {
index: "\004"
address: "\004"
relayType: LIGHT
}
}
shortTermHistoryIntervalMinutes: 15
preferredLinkType: ETHERNET
meterType: MT_NOT_SET
longTermHistoryInterval: 1
longTermHistoryIntervalType: LT_INT_NOT_SET
timeSyncFrequency: 86400
deviceFixIpValue: "\300\250\000d"
netMask: "\377\377\377\000"
gateWay: "\300\250\000\001"
isDhcpEnabled: false
isTlsEnabled: true
oslpBindPortNumber: 1234
commonNameString: "TLS Test"
communicationTimeout: 30
communicationNumberOfRetries: 5
communicationPauseTimeBetweenConnectionTrials: 120
ospgIpAddress: "\250?aA"
osgpPortNumber: 12122
isTestButtonEnabled: false
isAutomaticSummerTimingEnabled: false
astroGateSunRiseOffset: -15
astroGateSunSetOffset: 15
switchingDelay: 1
switchingDelay: 2
switchingDelay: 3
switchingDelay: 4
relayLinking {
masterRelayIndex: "\002"
masterRelayOn: false
indicesOfControlledRelaysOn: "\003\004"
indicesOfControlledRelaysOff: "\003\004"
}
relayRefreshing: false
summerTimeDetails: "0360100"
winterTimeDetails: "1060200"
}message LightValue {
optional bytes index = 1; // [(nanopb).max_size = 1]; // index number of connected light (DALI), none means all connected ligts.
required bool on = 2;
optional bytes dimValue = 3; // [(nanopb).max_size = 1]; // 1 - 100 %
}
enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<OrganisationIdentification xmlns="http://www.opensmartgridplatform.org/schemas/common">LianderNetManagement</OrganisationIdentification>
<ApplicationName xmlns="http://www.opensmartgridplatform.org/schemas/common">WEB_OWNER</ApplicationName>
<UserName xmlns="http://www.opensmartgridplatform.org/schemas/common">liander gebruiker</UserName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns2:SetLightRequest xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:DeviceIdentification>device-01</ns2:DeviceIdentification>
<ns2:LightValue>
<ns2:On>true</ns2:On>
</ns2:LightValue>
</ns2:SetLightRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header />
<SOAP-ENV:Body>
<ns2:SetLightAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160105121022551</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SetLightAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<OrganisationIdentification xmlns="http://www.opensmartgridplatform.org/schemas/common">LianderNetManagement</OrganisationIdentification>
<ApplicationName xmlns="http://www.opensmartgridplatform.org/schemas/common">WEB_OWNER</ApplicationName>
<UserName xmlns="http://www.opensmartgridplatform.org/schemas/common">liander gebruiker</UserName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns2:SetLightAsyncRequest xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncRequest>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160105121022551</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncRequest>
</ns2:SetLightAsyncRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header />
<SOAP-ENV:Body>
<ns2:SetLightResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SetLightResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setLightRequest {
values {
on: true
}
}setLightResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/publiclighting/2014/10" xmlns:adh="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<adh:ResumeScheduleRequest>
<adh:DeviceIdentification>device-01</adh:DeviceIdentification>
<!--Optional:-->
<adh:Index>1</adh:Index>
<adh:IsImmediate>1</adh:IsImmediate>
</adh:ResumeScheduleRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:ResumeScheduleAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160104152159539</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:ResumeScheduleAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:adh="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<adh:ResumeScheduleAsyncRequest>
<adh:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20160104152159539</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</adh:AsyncRequest>
</adh:ResumeScheduleAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:ResumeScheduleResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:ResumeScheduleResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>resumeScheduleRequest {
index: "\001"
immediate: true
}resumeScheduleResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:fir="http://www.opensmartgridplatform.org/schemas/firmwaremanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<fir1:UpdateFirmwareRequest xmlns:fir1="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10">
<!--type: Identification-->
<fir1:DeviceIdentification>device-01</fir1:DeviceIdentification>
<!--anonymous type-->
<fir1:FirmwareIdentification>TSTMAN/TSTMOD/SSLD-V17</fir1:FirmwareIdentification>
</fir1:UpdateFirmwareRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:UpdateFirmwareAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160104145959438</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:UpdateFirmwareAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:fir="http://www.opensmartgridplatform.org/schemas/firmwaremanagement">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<fir1:UpdateFirmwareAsyncRequest xmlns:fir1="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10">
<fir1:AsyncRequest>
<!--type: CorrelationUid-->
<com:CorrelationUid>LianderNetManagement|||device-01|||20160104145959438</com:CorrelationUid>
<!--type: Identification-->
<com:DeviceId>device-01</com:DeviceId>
</fir1:AsyncRequest>
</fir1:UpdateFirmwareAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:UpdateFirmwareResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:UpdateFirmwareResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>updateFirmwareRequest {
firmwareDomain: "flexovltest.cloudapp.net"
firmwareUrl: "/firmware/TSTMAN/TSTMOD/SSLD-V17.hex"
}updateFirmwareResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:dev="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<dev:StartDeviceTestRequest>
<dev:DeviceIdentification>device-01</dev:DeviceIdentification>
</dev:StartDeviceTestRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:StartDeviceTestAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160104155530194</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:StartDeviceTestAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:dev="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<dev:StartDeviceTestAsyncRequest>
<dev:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20160104155530194</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</dev:AsyncRequest>
</dev:StartDeviceTestAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:StartDeviceTestResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:StartDeviceTestResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>startSelfTestRequest {
}startSelfTestResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:dev="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<dev:StopDeviceTestRequest>
<dev:DeviceIdentification>device-01</dev:DeviceIdentification>
</dev:StopDeviceTestRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:StopDeviceTestAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160104160800238</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:StopDeviceTestAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:dev="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<dev:StopDeviceTestAsyncRequest>
<dev:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20160104160800238</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</dev:AsyncRequest>
</dev:StopDeviceTestAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:StopDeviceTestResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:StopDeviceTestResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>stopSelfTestRequest {
}stopSelfTestResponse {
status: OK
selfTestResult: "\000"
}message GetStatusRequest {
optional bool present = 1 [default = true];
}
message GetStatusResponse {
required Status status = 1;
repeated LightValue value = 2; // [(nanopb).max_count = 6];
required LinkType preferredLinktype = 3;
required LinkType actualLinktype = 4;
required LightType lightType = 5;
required uint32 eventNotificationMask = 6; // Bitmask for max 32 events, using NotificationBit for bit positions.
optional uint32 numberOfOutputs = 7; // Hardware - The number of outputs of this device.
optional uint32 dcOutputVoltageMaximum = 8; // Hardware - DC output voltage MAXimum (in mV).
optional uint32 dcOutputVoltageCurrent = 9; // Hardware - DC output current voltage (in mV).
optional uint32 maximumOutputPowerOnDcOutput = 10; // Hardware - Maximum output power on DC output (mW).
optional bytes serialNumber = 11; // [(nanopb).max_size = 18]; // Hardware - Serial number of this device.
optional bytes macAddress = 12; // [(nanopb).max_size = 6]; // Hardware - MAC-address of this device.
optional string hardwareId = 13; // [(nanopb).min_size = 10, (nanopd).max_size = 25] ; // Hardware - The hardware ID of this device.
optional uint32 internalFlashMemSize = 14; // Hardware - The internal flash memory size.
optional uint32 externalFlashMemSize = 15; // Hardware - The external flash memory size.
optional uint32 lastInternalTestResultCode = 16; // Hardware - The last internal test result code.
optional uint32 startupCounter = 17; // Hardware - The startup counter.
optional string bootLoaderVersion = 18; // Software - The boot loader version.
optional string firmwareVersion = 19; // Software - The firmware version.
optional bytes currentConfigurationBackUsed = 20; // [(nanopb).max_size = 6]; // Software - The current configuration bank in use.
optional string name = 21; // Device - The name of this device.
optional string currentTime = 22; // Device - Not UTC, the time used in timing operations (adjusted "offset" + summer timing). YYYYMMDDhhmmss format.
optional string currentIp = 23; // Device - The current IP address of this device.
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}
message LightValue {
optional bytes index = 1; // [(nanopb).max_size = 1]; // index number of connected light (DALI), none means all connected ligts.
required bool on = 2;
optional bytes dimValue = 3; // [(nanopb).max_size = 1]; // 1 - 100 %
}
enum LinkType {
LINK_NOT_SET = 0;
GPRS = 1;
CDMA = 2;
ETHERNET = 3;
}
enum LightType {
LT_NOT_SET = 0;
RELAY = 1;
ONE_TO_TEN_VOLT = 2;
ONE_TO_TEN_VOLT_REVERSE = 3;
DALI = 4;
}<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<OrganisationIdentification xmlns="http://www.opensmartgridplatform.org/schemas/common">LianderNetManagement</OrganisationIdentification>
<ApplicationName xmlns="http://www.opensmartgridplatform.org/schemas/common">SoapUI</ApplicationName>
<UserName xmlns="http://www.opensmartgridplatform.org/schemas/common">Kevin</UserName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns2:GetStatusRequest xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:DeviceIdentification>device-01</ns2:DeviceIdentification>
</ns2:GetStatusRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header />
<SOAP-ENV:Body>
<ns2:GetStatusAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160106133844686</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:GetStatusAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<OrganisationIdentification xmlns="http://www.opensmartgridplatform.org/schemas/common">LianderNetManagement</OrganisationIdentification>
<ApplicationName xmlns="http://www.opensmartgridplatform.org/schemas/common">SoapUI</ApplicationName>
<UserName xmlns="http://www.opensmartgridplatform.org/schemas/common">Kevin</UserName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns2:GetStatusAsyncRequest xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncRequest>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160106133844686</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncRequest>
</ns2:GetStatusAsyncRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:GetStatusResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/deviceinstallation/2014/10">
<ns3:Result>OK</ns3:Result>
<ns3:DeviceStatus>
<ns3:LightValues>
<ns3:Index>1</ns3:Index>
<ns3:On>false</ns3:On>
</ns3:LightValues>
<ns3:LightValues>
<ns3:Index>2</ns3:Index>
<ns3:On>false</ns3:On>
</ns3:LightValues>
<ns3:TariffValues>
<ns3:Index>3</ns3:Index>
<ns3:High>true</ns3:High>
</ns3:TariffValues>
<ns3:PreferredLinkType>ETHERNET</ns3:PreferredLinkType>
<ns3:ActualLinkType>ETHERNET</ns3:ActualLinkType>
<ns3:LightType>RELAY</ns3:LightType>
<ns3:EventNotifications>DIAG_EVENTS</ns3:EventNotifications>
<ns3:EventNotifications>HARDWARE_FAILURE</ns3:EventNotifications>
<ns3:EventNotifications>LIGHT_EVENTS</ns3:EventNotifications>
<ns3:EventNotifications>TARIFF_EVENTS</ns3:EventNotifications>
<ns3:EventNotifications>MONITOR_EVENTS</ns3:EventNotifications>
<ns3:EventNotifications>FIRMWARE_EVENTS</ns3:EventNotifications>
<ns3:EventNotifications>COMM_EVENTS</ns3:EventNotifications>
<ns3:EventNotifications>SECURITY_EVENTS</ns3:EventNotifications>
<ns3:NumberOfOutputs>4</ns3:NumberOfOutputs>
<ns3:DcOutputVoltageMaximum>24000</ns3:DcOutputVoltageMaximum>
<ns3:DcOutputVoltageCurrent>0</ns3:DcOutputVoltageCurrent>
<ns3:MaximumOutputPowerOnDcOutput>15000</ns3:MaximumOutputPowerOnDcOutput>
<ns3:MacAddress>D8-80-39-46-17-4E</ns3:MacAddress>
<ns3:HardwareId>SB10</ns3:HardwareId>
<ns3:InternalFlashMemSize>1048576</ns3:InternalFlashMemSize>
<ns3:ExternalFlashMemSize>8388608</ns3:ExternalFlashMemSize>
<ns3:LastInternalTestResultCode>0</ns3:LastInternalTestResultCode>
<ns3:StartupCounter>2</ns3:StartupCounter>
<ns3:BootLoaderVersion>v1.0</ns3:BootLoaderVersion>
<ns3:FirmwareVersion>W0311g</ns3:FirmwareVersion>
<ns3:CurrentConfigurationBackUsed>0</ns3:CurrentConfigurationBackUsed>
<ns3:Name>device-01</ns3:Name>
<ns3:CurrentTime>20160313141247</ns3:CurrentTime>
<ns3:CurrentIp>192.168.178.16</ns3:CurrentIp>
</ns3:DeviceStatus>
</ns3:GetStatusResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>getStatusResponse {
status: OK
value {
index: "\001"
on: false
}
value {
index: "\002"
on: false
}
value {
index: "\003"
on: false
}
value {
index: "\004"
on: false
}
preferredLinktype: ETHERNET
actualLinktype: ETHERNET
lightType: RELAY
eventNotificationMask: 255
numberOfOutputs: 4
dcOutputVoltageMaximum: 24000
dcOutputVoltageCurrent: 0
maximumOutputPowerOnDcOutput: 15000
serialNumber: "123456789123456789"
macAddress: "\330\2009F\027N"
hardwareId: "SB10 "
internalFlashMemSize: 1048576
externalFlashMemSize: 8388608
lastInternalTestResultCode: 0
startupCounter: 2
bootLoaderVersion: "v1.0"
firmwareVersion: "W0311g"
currentConfigurationBackUsed: "\000"
name: "device-01"
currentTime: "20160313141247"
currentIp: "192.168.178.16"
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:UpdateDeviceSslCertificationRequest>
<!--type: Identification-->
<ns1:DeviceIdentification>device-01</ns1:DeviceIdentification>
<ns1:Certification>
<ns1:certificateDomain>cert-server</ns1:certificateDomain>
<ns1:certificateUrl>/certs/new-cert.pem</ns1:certificateUrl>
</ns1:Certification>
</ns1:UpdateDeviceSslCertificationRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:UpdateDeviceSslCertificationAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160305115500062</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:UpdateDeviceSslCertificationAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:UpdateDeviceSslCertificationAsyncRequest>
<ns1:AsyncRequest>
<!--type: CorrelationUid-->
<ns:CorrelationUid>LianderNetManagement|||device-01|||20160305115500062</ns:CorrelationUid>
<!--type: Identification-->
<ns:DeviceId>device-01</ns:DeviceId>
</ns1:AsyncRequest>
</ns1:UpdateDeviceSslCertificationAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:UpdateDeviceSslCertificationResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:UpdateDeviceSslCertificationResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>updateDeviceSslCertificationRequest {
certificateDomain: "cert-server"
certificateUrl: "/certs/new-cert.pem"
}
updateDeviceSslCertificationResponse {
status: OK
}enum TransitionType {
NIGHT_DAY = 0;
DAY_NIGHT = 1;
}
enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:adh="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:com="http://www.opensmartgridplatform.org/schemas/publiclighting/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<adh:SetTransitionRequest>
<adh:DeviceIdentification>device-01</adh:DeviceIdentification>
<adh:TransitionType>NIGHT_DAY</adh:TransitionType>
<!--Optional:-->
<adh:Time>07:55:01</adh:Time>
</adh:SetTransitionRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetTransitionAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160106155501582</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SetTransitionAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:adh="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<adh:SetTransitionAsyncRequest>
<adh:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20160106155501582</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</adh:AsyncRequest>
</adh:SetTransitionAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetTransitionResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/adhocmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SetTransitionResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setTransitionRequest {
transitionType: NIGHT_DAY
time: "075501"
}setTransitionResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:SetDeviceVerificationKeyRequest>
<!--type: Identification-->
<ns1:DeviceIdentification>device-01</ns1:DeviceIdentification>
<!--type: VerificationKey-->
<ns1:VerificationKey>MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEow7CWR7EiNDRt1XQ/h1UrLE24zY3BkA582mfiywZ2h8tPkwleCBfcyLeZvS0T4NGz+zzO5CZphlD1TQtjL/ZXg==</ns1:VerificationKey>
</ns1:SetDeviceVerificationKeyRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetDeviceVerificationKeyAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160305122132785</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SetDeviceVerificationKeyAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:SetDeviceVerificationKeyAsyncRequest>
<ns1:AsyncRequest>
<!--type: CorrelationUid-->
<ns:CorrelationUid>LianderNetManagement|||device-01|||20160305122132785</ns:CorrelationUid>
<!--type: Identification-->
<ns:DeviceId>device-01</ns:DeviceId>
</ns1:AsyncRequest>
</ns1:SetDeviceVerificationKeyAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetDeviceVerificationKeyResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/devicemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SetDeviceVerificationKeyResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setDeviceVerificationKeyRequest {
certificateChunk: "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEow7CWR7EiNDRt1XQ/h1UrLE24zY3BkA582mfiywZ2h8tPkwleCBfcyLeZvS0T4NGz+zzO5CZphlD1TQtjL/ZXg=="
}
setDeviceVerificationKeyResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/adhocmanagement/2014/10" xmlns:com="http://www.opensmartgridplatform.org/schemas/common" xmlns:adh="http://www.opensmartgridplatform.org/schemas/adhocmanagement">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<ns1:SetRebootRequest>
<!--type: Identification-->
<ns1:DeviceIdentification>device-01</ns1:DeviceIdentification>
</ns1:SetRebootRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:SetRebootAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/adhocmanagement/2014/10">
<ns3:AsyncResponse>
<ns2:CorrelationUid>LianderNetManagement|||device-01|||20160104153201024</ns2:CorrelationUid>
<ns2:DeviceId>device-01</ns2:DeviceId>
</ns3:AsyncResponse>
</ns3:SetRebootAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/adhocmanagement/2014/10" xmlns:com="http://www.opensmartgridplatform.org/schemas/common" xmlns:adh="http://www.opensmartgridplatform.org/schemas/adhocmanagement">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>liander gebruiker</com:UserName>
<com:ApplicationName>WEB_NET_MANAGEMENT</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<ns1:SetRebootAsyncRequest>
<ns1:AsyncRequest>
<!--type: CorrelationUid-->
<ns:CorrelationUid>LianderNetManagement|||device-01|||20160104153201024</ns:CorrelationUid>
<!--type: Identification-->
<ns:DeviceId>device-01</ns:DeviceId>
</ns1:AsyncRequest>
</ns1:SetRebootAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:SetRebootResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/adhocmanagement/2014/10">
<ns3:Result>OK</ns3:Result>
</ns3:SetRebootResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setRebootRequest {
}setRebootResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:SwitchFirmwareRequest>
<!--type: Identification-->
<ns1:DeviceIdentification>device-01</ns1:DeviceIdentification>
<!--type: string-->
<ns1:Version>W0311g</ns1:Version>
</ns1:SwitchFirmwareRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SwitchFirmwareAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160313211917467</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SwitchFirmwareAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:SwitchFirmwareAsyncRequest>
<ns1:AsyncRequest>
<!--type: CorrelationUid-->
<ns:CorrelationUid>LianderNetManagement|||device-01|||20160313211917467</ns:CorrelationUid>
<!--type: Identification-->
<ns:DeviceId>device-01</ns:DeviceId>
</ns1:AsyncRequest>
</ns1:SwitchFirmwareAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SwitchFirmwareResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/firmwaremanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SwitchFirmwareResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>switchFirmwareRequest {
newFirmwareVersion: "W0311g"
}
switchFirmwareResponse {
status: OK
}enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:SwitchConfigurationRequest>
<!--type: Identification-->
<ns1:DeviceIdentification>device-01</ns1:DeviceIdentification>
<!--type: int, 0 or 1-->
<ns1:ConfigurationBank>1</ns1:ConfigurationBank>
</ns1:SwitchConfigurationRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SwitchConfigurationAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160313210830055</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SwitchConfigurationAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:SwitchConfigurationAsyncRequest>
<ns1:AsyncRequest>
<!--type: CorrelationUid-->
<ns:CorrelationUid>LianderNetManagement|||device-01|||20160313210830055</ns:CorrelationUid>
<!--type: Identification-->
<ns:DeviceId>device-01</ns:DeviceId>
</ns1:AsyncRequest>
</ns1:SwitchConfigurationAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SwitchConfigurationResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/configurationmanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SwitchConfigurationResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>switchConfigurationRequest {
newConfigurationSet: "1"
}
switchConfigurationResponse {
status: OK
}message SetScheduleRequest {
repeated Schedule schedules = 1; // [(nanopb).max_count = 50];
optional PageInfo pageInfo = 2;
required RelayType scheduleType = 3; // RT_NOT_SET is NOT supported!
}
message SetScheduleResponse {
required Status status = 1;
}message Schedule {
required Weekday weekday = 1;
optional string startDay = 2; // [(nanopb).max_size = 9]; //- Format YYYYMMDD UTC, indicates the range of a schedule entry, from startDay.
optional string endDay = 3; // [(nanopb).max_size = 9]; // - Format YYYYMMDD UTC, including endDay.
required ActionTime actionTime = 4;
optional string time = 5; // [(nanopb).max_size = 7]; // - Format hhmmss localtime set when actionTime = ABSOLUTETIME.
optional Window window = 6; // Window to wait for light sensor trigger.
repeated LightValue value = 7; // [(nanopb).max_count = 6];
optional TriggerType triggerType = 8; // React to setTransition or switch astronomical.
optional uint32 minimumLightsOn = 9; // Minimal time (in seconds) the lights should burn before deciding to switch the lights on.
optional uint32 index = 10; // Index of schedule entry in the schedule list.
optional bool isEnabled = 11; // Is this schedule entry enabled?
}
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;
}
message Window {
required uint32 minutesBefore = 1; // minutes before sunset / sunrise
required uint32 minutesAfter = 2; // minutes after sunset / sunrise
}
message LightValue {
optional bytes index = 1; // [(nanopb).max_size = 1]; // index number of connected light (DALI), none means all connected ligts.
required bool on = 2;
optional bytes dimValue = 3; // [(nanopb).max_size = 1]; // 1 - 100 %
}
enum TriggerType {
TT_NOT_SET = 0;
LIGHT_TRIGGER = 1;
ASTRONOMICAL = 2;
}
message PageInfo {
required uint32 currentPage = 1; // Pages start from 1
required uint32 pageSize = 2;
required uint32 totalPages = 3;
}
enum RelayType {
RT_NOT_SET = 0;
LIGHT = 1;
TARIFF = 2;
}
enum Status {
OK = 0;
FAILURE = 1; // general failure
REJECTED = 2; // request received in wrong state
}<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:com="http://www.opensmartgridplatform.org/schemas/publiclighting/2014/10"
xmlns:sch="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<sch:SetScheduleRequest>
<!--type: Identification-->
<sch:DeviceIdentification>device-01</sch:DeviceIdentification>
<!--1 to 50 repetitions:-->
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>SUNRISE</sch:ActionTime>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>15</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>15</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>0</sch:Index>
<!--type: boolean-->
<sch:On>false</sch:On>
</sch:LightValue>
<!--Optional:-->
<!--type: TriggerType - enumeration: [LIGHT_TRIGGER,ASTRONOMICAL]-->
<sch:TriggerType>LIGHT_TRIGGER</sch:TriggerType>
</sch:Schedules>
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>SUNSET</sch:ActionTime>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>15</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>15</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>0</sch:Index>
<!--type: boolean-->
<sch:On>true</sch:On>
</sch:LightValue>
<!--Optional:-->
<!--type: TriggerType - enumeration: [LIGHT_TRIGGER,ASTRONOMICAL]-->
<sch:TriggerType>LIGHT_TRIGGER</sch:TriggerType>
</sch:Schedules>
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>ABSOLUTETIME</sch:ActionTime>
<!--Optional:-->
<!--type: string-->
<sch:Time>23:00:00</sch:Time>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>30</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>30</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>2</sch:Index>
<!--type: boolean-->
<sch:On>false</sch:On>
</sch:LightValue>
</sch:Schedules>
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>ABSOLUTETIME</sch:ActionTime>
<!--Optional:-->
<!--type: string-->
<sch:Time>07:00:00</sch:Time>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>150</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>41</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>2</sch:Index>
<!--type: boolean-->
<sch:On>true</sch:On>
<!--Optional:-->
<!--anonymous type-->
<!--<sch:DimValue>100</sch:DimValue>-->
</sch:LightValue>
</sch:Schedules>
</sch:SetScheduleRequest>
</soapenv:Body>
</soapenv:Envelope><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:SetScheduleAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10">
<ns3:AsyncResponse>
<ns2:CorrelationUid>LianderNetManagement|||device-01|||20151230104608559</ns2:CorrelationUid>
<ns2:DeviceId>device-01</ns2:DeviceId>
</ns3:AsyncResponse>
</ns3:SetScheduleAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setScheduleRequest {
schedules {
weekday: ALL
actionTime: SUNRISE
window {
minutesBefore: 15
minutesAfter: 15
}
value {
index: "\000"
on: false
}
triggerType: LIGHT_TRIGGER
}
schedules {
weekday: ALL
actionTime: SUNSET
window {
minutesBefore: 15
minutesAfter: 15
}
value {
index: "\000"
on: true
}
triggerType: LIGHT_TRIGGER
}
schedules {
weekday: ALL
actionTime: ABSOLUTETIME
time: "230000"
window {
minutesBefore: 30
minutesAfter: 30
}
value {
index: "\002"
on: false
}
}
schedules {
weekday: ALL
actionTime: ABSOLUTETIME
time: "070000"
window {
minutesBefore: 150
minutesAfter: 41
}
value {
index: "\002"
on: true
}
}
scheduleType: LIGHT
}setScheduleResponse {
status: OK
} schedules {
weekday: ALL
actionTime: SUNRISE
window {
minutesBefore: 15
minutesAfter: 15
}
value {
index: "\000"
on: false
}
triggerType: LIGHT_TRIGGER
} schedules {
weekday: ALL
actionTime: SUNSET
window {
minutesBefore: 15
minutesAfter: 15
}
value {
index: "\000"
on: true
}
triggerType: LIGHT_TRIGGER
} schedules {
weekday: ALL
actionTime: ABSOLUTETIME
time: "230000"
window {
minutesBefore: 30
minutesAfter: 30
}
value {
index: "\002"
on: false
}
} schedules {
weekday: ALL
actionTime: ABSOLUTETIME
time: "070000"
window {
minutesBefore: 150
minutesAfter: 41
}
value {
index: "\002"
on: true
}
} scheduleType: LIGHT<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10"
xmlns:sch="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<sch:SetScheduleAsyncRequest>
<sch:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20151230104608559</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</sch:AsyncRequest>
</sch:SetScheduleAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
`<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:SetScheduleResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10">
<ns3:Result>OK</ns3:Result>
</ns3:SetScheduleResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<OrganisationIdentification xmlns="http://www.opensmartgridplatform.org/schemas/common">LianderNetManagement</OrganisationIdentification>
<ApplicationName xmlns="http://www.opensmartgridplatform.org/schemas/common">SoapUI</ApplicationName>
<UserName xmlns="http://www.opensmartgridplatform.org/schemas/common">Kevin</UserName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns3:SetScheduleRequest xmlns:ns3="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10" xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns3:DeviceIdentification>device-01</ns3:DeviceIdentification>
<ns3:Schedules>
<ns3:WeekDay>ABSOLUTEDAY</ns3:WeekDay>
<ns3:startDay>2016-01-01Z</ns3:startDay>
<ns3:ActionTime>ABSOLUTETIME</ns3:ActionTime>
<ns3:Time>07:00:00.000</ns3:Time>
<ns3:LightValue>
<ns3:Index>1</ns3:Index>
<ns3:On>false</ns3:On>
</ns3:LightValue>
</ns3:Schedules>
</ns3:SetScheduleRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header />
<SOAP-ENV:Body>
<ns3:SetScheduleAsyncResponse xmlns:ns3="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10" xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns3:AsyncResponse>
<ns2:CorrelationUid>LianderNetManagement|||device-01|||20160113131032759</ns2:CorrelationUid>
<ns2:DeviceId>device-01</ns2:DeviceId>
</ns3:AsyncResponse>
</ns3:SetScheduleAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<OrganisationIdentification xmlns="http://www.opensmartgridplatform.org/schemas/common">LianderNetManagement</OrganisationIdentification>
<ApplicationName xmlns="http://www.opensmartgridplatform.org/schemas/common">SoapUI</ApplicationName>
<UserName xmlns="http://www.opensmartgridplatform.org/schemas/common">Kevin</UserName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns3:SetScheduleAsyncRequest xmlns:ns3="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10" xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns3:AsyncRequest>
<ns2:CorrelationUid>LianderNetManagement|||device-01|||20160113131032759</ns2:CorrelationUid>
<ns2:DeviceId>device-01</ns2:DeviceId>
</ns3:AsyncRequest>
</ns3:SetScheduleAsyncRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header />
<SOAP-ENV:Body>
<ns3:SetScheduleResponse xmlns:ns3="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10" xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns3:Result>OK</ns3:Result>
</ns3:SetScheduleResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setScheduleRequest {
schedules {
weekday: ABSOLUTEDAY
startDay: "20160101"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\001"
on: false
}
}
scheduleType: LIGHT
}setScheduleResponse {
status: OK
}<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:com="http://www.opensmartgridplatform.org/schemas/publiclighting/2014/10"
xmlns:sch="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<sch:SetScheduleRequest>
<!--type: Identification-->
<sch:DeviceIdentification>device-01</sch:DeviceIdentification>
<!--1 to 50 repetitions:-->
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>SUNRISE</sch:ActionTime>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>15</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>15</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>0</sch:Index>
<!--type: boolean-->
<sch:On>false</sch:On>
</sch:LightValue>
<!--Optional:-->
<!--type: TriggerType - enumeration: [LIGHT_TRIGGER,ASTRONOMICAL]-->
<sch:TriggerType>LIGHT_TRIGGER</sch:TriggerType>
<!--Optional:-->
<!--type: int, index of this schedule-entry-->
<sch:Index>0</sch:Index>
<!--Optional:-->
<!--type: boolean-->
<sch:IsEnabled>true</sch:IsEnabled>
<!--Optional:-->
<!--type: int, minimal burning time in seconds-->
<!--<sch:minimumLightsOn>300</sch:minimumLightsOn>-->
</sch:Schedules>
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>SUNSET</sch:ActionTime>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>15</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>15</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>0</sch:Index>
<!--type: boolean-->
<sch:On>true</sch:On>
</sch:LightValue>
<!--Optional:-->
<!--type: TriggerType - enumeration: [LIGHT_TRIGGER,ASTRONOMICAL]-->
<sch:TriggerType>LIGHT_TRIGGER</sch:TriggerType>
<!--Optional:-->
<!--type: int, index of this schedule-entry-->
<sch:Index>1</sch:Index>
<!--Optional:-->
<!--type: boolean-->
<sch:IsEnabled>true</sch:IsEnabled>
<!--Optional:-->
<!--type: int, minimal burning time in seconds-->
<!--<sch:minimumLightsOn>300</sch:minimumLightsOn>-->
</sch:Schedules>
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>ABSOLUTETIME</sch:ActionTime>
<!--Optional:-->
<!--type: string-->
<sch:Time>23:00:00</sch:Time>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>30</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>30</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>1</sch:Index>
<!--type: boolean-->
<sch:On>false</sch:On>
</sch:LightValue>
<!--Optional:-->
<!--type: int, index of this schedule-entry-->
<sch:Index>2</sch:Index>
<!--Optional:-->
<!--type: boolean-->
<sch:IsEnabled>true</sch:IsEnabled>
<!--Optional:-->
<!--type: int, minimal burning time in seconds-->
<!--<sch:minimumLightsOn>300</sch:minimumLightsOn>-->
</sch:Schedules>
<sch:Schedules>
<!--type: WeekDayType - enumeration: [MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY,WEEKDAY,WEEKEND,ABSOLUTEDAY,ALL]-->
<sch:WeekDay>ALL</sch:WeekDay>
<!--type: ActionTimeType - enumeration: [ABSOLUTETIME,SUNRISE,SUNSET]-->
<sch:ActionTime>ABSOLUTETIME</sch:ActionTime>
<!--Optional:-->
<!--type: string-->
<sch:Time>07:00:00</sch:Time>
<!--Optional:-->
<sch:TriggerWindow>
<!--type: long-->
<sch:minutesBefore>30</sch:minutesBefore>
<!--type: long-->
<sch:minutesAfter>30</sch:minutesAfter>
</sch:TriggerWindow>
<!--1 to 6 repetitions:-->
<sch:LightValue>
<!--Optional:-->
<!--anonymous type-->
<sch:Index>1</sch:Index>
<!--type: boolean-->
<sch:On>true</sch:On>
<!--Optional:-->
<!--anonymous type-->
<!--<sch:DimValue>100</sch:DimValue>-->
</sch:LightValue>
<!--Optional:-->
<!--type: int, index of this schedule-entry-->
<sch:Index>3</sch:Index>
<!--Optional:-->
<!--type: boolean-->
<sch:IsEnabled>true</sch:IsEnabled>
<!--Optional:-->
<!--type: int, minimal burning time in seconds-->
<sch:minimumLightsOn>300</sch:minimumLightsOn>
</sch:Schedules>
</sch:SetScheduleRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetScheduleAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:AsyncResponse>
<ns3:CorrelationUid>LianderNetManagement|||device-01|||20160313162236547</ns3:CorrelationUid>
<ns3:DeviceId>device-01</ns3:DeviceId>
</ns2:AsyncResponse>
</ns2:SetScheduleAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns1="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10">
<soapenv:Header>
<ns:ApplicationName>SoapUI</ns:ApplicationName>
<ns:UserName>Kevin</ns:UserName>
<ns:OrganisationIdentification>LianderNetManagement</ns:OrganisationIdentification>
</soapenv:Header>
<soapenv:Body>
<ns1:SetScheduleAsyncRequest>
<ns1:AsyncRequest>
<ns:CorrelationUid>LianderNetManagement|||device-01|||20160313162236547</ns:CorrelationUid>
<ns:DeviceId>device-01</ns:DeviceId>
</ns1:AsyncRequest>
</ns1:SetScheduleAsyncRequest>
</soapenv:Body>
</soapenv:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:SetScheduleResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/publiclighting/schedulemanagement/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/common/2014/10">
<ns2:Result>OK</ns2:Result>
</ns2:SetScheduleResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setScheduleRequest {
schedules {
weekday: ALL
actionTime: SUNRISE
window {
minutesBefore: 15
minutesAfter: 15
}
value {
index: "\000"
on: false
}
triggerType: LIGHT_TRIGGER
index: 0
isEnabled: true
}
schedules {
weekday: ALL
actionTime: SUNSET
window {
minutesBefore: 15
minutesAfter: 15
}
value {
index: "\000"
on: true
}
triggerType: LIGHT_TRIGGER
index: 1
isEnabled: true
}
schedules {
weekday: ALL
actionTime: ABSOLUTETIME
time: "230000"
window {
minutesBefore: 30
minutesAfter: 30
}
value {
index: "\001"
on: false
}
index: 2
isEnabled: true
}
schedules {
weekday: ALL
actionTime: ABSOLUTETIME
time: "070000"
window {
minutesBefore: 30
minutesAfter: 30
}
value {
index: "\001"
on: true
}
minimumLightsOn: 300
index: 3
isEnabled: true
}
scheduleType: LIGHT
}setScheduleResponse {
status: OK
}<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:sch="http://www.opensmartgridplatform.org/schemas/tariffswitching/schedulemanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<sch:SetScheduleRequest>
<sch:DeviceIdentification>device-01</sch:DeviceIdentification>
<!--1 to 50 repetitions:-->
<sch:Schedules>
<sch:WeekDay>WEEKDAY</sch:WeekDay>
<sch:StartDay>2015-01-01</sch:StartDay>
<sch:EndDay>2016-02-01</sch:EndDay>
<sch:Time>23:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>WEEKDAY</sch:WeekDay>
<sch:StartDay>2015-01-01</sch:StartDay>
<sch:EndDay>2016-02-01</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>1</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2015-01-01</sch:StartDay>
<sch:EndDay>2015-01-01</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2015-04-06</sch:StartDay>
<sch:EndDay>2015-04-06</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2015-04-27</sch:StartDay>
<sch:EndDay>2015-04-27</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2015-05-14</sch:StartDay>
<sch:EndDay>2015-05-14</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2015-05-25</sch:StartDay>
<sch:EndDay>2015-05-25</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2015-12-25</sch:StartDay>
<sch:EndDay>2015-12-25</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2015-12-26</sch:StartDay>
<sch:EndDay>2015-12-26</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
<sch:Schedules>
<sch:WeekDay>ABSOLUTEDAY</sch:WeekDay>
<sch:StartDay>2016-01-01</sch:StartDay>
<sch:EndDay>2016-01-01</sch:EndDay>
<sch:Time>07:00:00</sch:Time>
<!--1 to 6 repetitions:-->
<sch:TariffValue>
<sch:Index>3</sch:Index>
<sch:High>0</sch:High>
</sch:TariffValue>
</sch:Schedules>
</sch:SetScheduleRequest>
</soapenv:Body>
</soapenv:Envelope><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:SetScheduleAsyncResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/tariffswitching/schedulemanagement/2014/10">
<ns3:AsyncResponse>
<ns2:CorrelationUid>LianderNetManagement|||device-01|||20151230132054477</ns2:CorrelationUid>
<ns2:DeviceId>device-01</ns2:DeviceId>
</ns3:AsyncResponse>
</ns3:SetScheduleAsyncResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>setScheduleRequest {
schedules {
weekday: WEEKDAY
startDay: "20150101"
endDay: "20160201"
actionTime: ABSOLUTETIME
time: "230000"
value {
index: "\003"
on: true
}
}
schedules {
weekday: WEEKDAY
startDay: "20150101"
endDay: "20160201"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: false
}
}
schedules {
weekday: ABSOLUTEDAY
startDay: "20150101"
endDay: "20150101"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
schedules {
weekday: ABSOLUTEDAY
startDay: "20150406"
endDay: "20150406"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
schedules {
weekday: ABSOLUTEDAY
startDay: "20150427"
endDay: "20150427"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
pageInfo {
currentPage: 1
pageSize: 5
totalPages: 2
}
scheduleType: TARIFF
}setScheduleResponse {
status: OK
}setScheduleRequest {
schedules {
weekday: ABSOLUTEDAY
startDay: "20150514"
endDay: "20150514"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
schedules {
weekday: ABSOLUTEDAY
startDay: "20150525"
endDay: "20150525"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
schedules {
weekday: ABSOLUTEDAY
startDay: "20151225"
endDay: "20151225"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
schedules {
weekday: ABSOLUTEDAY
startDay: "20151226"
endDay: "20151226"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
schedules {
weekday: ABSOLUTEDAY
startDay: "20160101"
endDay: "20160101"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
}
pageInfo {
currentPage: 2
pageSize: 5
totalPages: 2
}
scheduleType: TARIFF
}setScheduleResponse {
status: OK
} schedules {
weekday: WEEKDAY
startDay: "20150101"
endDay: "20160201"
actionTime: ABSOLUTETIME
time: "230000"
value {
index: "\003"
on: true
}
} schedules {
weekday: WEEKDAY
startDay: "20150101"
endDay: "20160201"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: false
}
} schedules {
weekday: WEEKDAY
startDay: "20150101"
endDay: "20150101"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
} schedules {
weekday: WEEKDAY
startDay: "20150406"
endDay: "20150406"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
} schedules {
weekday: WEEKDAY
startDay: "20150427"
endDay: "20150427"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
} pageInfo {
currentPage: 1
pageSize: 5
totalPages: 2
} scheduleType: TARIFF weekday: WEEKDAY
startDay: "20150514"
endDay: "20150514"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
} schedules {
weekday: WEEKDAY
startDay: "20150525"
endDay: "20150525"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
} schedules {
weekday: WEEKDAY
startDay: "20151225"
endDay: "20151225"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
}
} schedules {
weekday: WEEKDAY
startDay: "20160101"
endDay: "20160101"
actionTime: ABSOLUTETIME
time: "070000"
value {
index: "\003"
on: true
} pageInfo {
currentPage: 2
pageSize: 5
totalPages: 2
} scheduleType: TARIFF<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:sch="http://www.opensmartgridplatform.org/schemas/tariffswitching/schedulemanagement/2014/10">
<soapenv:Header>
<com:OrganisationIdentification>LianderNetManagement</com:OrganisationIdentification>
<com:UserName>Kevin</com:UserName>
<com:ApplicationName>SoapUI</com:ApplicationName>
</soapenv:Header>
<soapenv:Body>
<sch:SetScheduleAsyncRequest>
<sch:AsyncRequest>
<com:CorrelationUid>LianderNetManagement|||device-01|||20151230132054477</com:CorrelationUid>
<com:DeviceId>device-01</com:DeviceId>
</sch:AsyncRequest>
</sch:SetScheduleAsyncRequest>
</soapenv:Body>
</soapenv:Envelope><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:SetScheduleResponse xmlns:ns2="http://www.opensmartgridplatform.org/schemas/common/2014/10" xmlns:ns3="http://www.opensmartgridplatform.org/schemas/tariffswitching/schedulemanagement/2014/10">
<ns3:Result>OK</ns3:Result>
</ns3:SetScheduleResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>