import "enums.proto"; import "steammessages_base.proto"; import "webuimessages_base.proto"; option optimize_for = SPEED; option cc_generic_services = true; message CMsgLEDColor { optional float r = 1; optional float g = 2; optional float b = 3; } message CMsgLEDManagerDevice { optional int32 id = 1; optional bool enabled = 2; optional string name = 3; repeated string effects_available = 4; optional string effect = 5; optional bool supports_color = 9; repeated .CMsgLEDColor color = 10; optional bool supports_speed = 11; optional float speed = 12; optional bool supports_brightness = 13; optional float brightness = 14; } message CMsgLEDManagerState { optional bool is_service_available = 1; repeated .CMsgLEDManagerDevice devices = 2; } message CLEDManager_GetState_Request { } message CLEDManager_GetState_Response { optional .CMsgLEDManagerState state = 1; } message CLEDManager_StateChanged_Notification { } message CLEDManager_SetColor_Request { optional int32 device_id = 1; optional .CMsgLEDColor color = 2; optional int32 color_index = 3; } message CLEDManager_SetColor_Response { } message CLEDManager_SetEnabled_Request { optional int32 device_id = 1; optional bool enabled = 2; } message CLEDManager_SetEnabled_Response { } message CLEDManager_SetEffect_Request { optional int32 device_id = 1; optional string effect = 2; } message CLEDManager_SetEffect_Response { } message CLEDManager_SetSpeed_Request { optional int32 device_id = 1; optional float speed = 2; } message CLEDManager_SetSpeed_Response { } message CLEDManager_SetBrightness_Request { optional int32 device_id = 1; optional float brightness = 2; } message CLEDManager_SetBrightness_Response { } service LEDManager { option (webui_service_execution_site) = k_EClientExecutionSiteSteamUI; rpc GetState (.CLEDManager_GetState_Request) returns (.CLEDManager_GetState_Response); rpc NotifyStateChanged (.CLEDManager_StateChanged_Notification) returns (.WebUINoResponse); rpc SetEnabled (.CLEDManager_SetEnabled_Request) returns (.CLEDManager_SetEnabled_Response); rpc SetColor (.CLEDManager_SetColor_Request) returns (.CLEDManager_SetColor_Response); rpc SetEffect (.CLEDManager_SetEffect_Request) returns (.CLEDManager_SetEffect_Response); rpc SetSpeed (.CLEDManager_SetSpeed_Request) returns (.CLEDManager_SetSpeed_Response); rpc SetBrightness (.CLEDManager_SetBrightness_Request) returns (.CLEDManager_SetBrightness_Response); }