You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

1185 lines
32 KiB

syntax = "proto2";
import "steammessages_base.proto";
option optimize_for = SPEED;
option py_generic_services = false;
message CMsgClientUCMAddScreenshot {
message Tag {
optional string tag_name = 1;
optional string tag_value = 2;
}
optional uint32 appid = 1;
optional string filename = 2;
optional string thumbname = 3;
optional string vr_filename = 14;
optional fixed32 rtime32_created = 4;
optional uint32 width = 5;
optional uint32 height = 6;
optional uint32 permissions = 7;
optional string caption = 8;
optional string shortcut_name = 9;
repeated .CMsgClientUCMAddScreenshot.Tag tag = 10;
repeated fixed64 tagged_steamid = 11;
optional bool spoiler_tag = 12;
repeated uint64 tagged_publishedfileid = 13;
}
message CMsgClientUCMAddScreenshotResponse {
optional int32 eresult = 1 [default = 2];
optional fixed64 screenshotid = 2 [default = 18446744073709551615];
}
message CMsgClientUCMDeleteScreenshot {
optional fixed64 screenshotid = 1 [default = 18446744073709551615];
}
message CMsgClientUCMDeleteScreenshotResponse {
optional int32 eresult = 1 [default = 2];
}
message CMsgClientUCMPublishFile {
optional uint32 app_id = 1;
optional string file_name = 2;
optional string preview_file_name = 3;
optional uint32 consumer_app_id = 4;
optional string title = 5;
optional string description = 6;
repeated string tags = 8;
optional bool workshop_file = 9;
optional int32 visibility = 10;
optional uint32 file_type = 11;
optional string url = 12;
optional uint32 video_provider = 13;
optional string video_account_name = 14;
optional string video_identifier = 15;
optional bool in_progress = 16;
}
message CMsgClientUCMPublishFileResponse {
optional int32 eresult = 1 [default = 2];
optional fixed64 published_file_id = 2 [default = 18446744073709551615];
optional bool needs_workshop_legal_agreement_acceptance = 3 [default = false];
}
message CMsgClientUCMUpdatePublishedFile {
message KeyValueTag {
optional string key = 1;
optional string value = 2;
}
message AdditionalPreview {
optional string original_file_name = 1;
optional string internal_file_name = 2;
optional string videoid = 3;
optional uint32 preview_type = 4;
optional int32 update_index = 5 [default = -1];
}
optional uint32 app_id = 1;
optional fixed64 published_file_id = 2;
optional string file_name = 3;
optional string preview_file_name = 4;
optional string title = 5;
optional string description = 6;
repeated string tags = 7;
optional int32 visibility = 8;
optional bool update_file = 9;
optional bool update_preview_file = 10;
optional bool update_title = 11;
optional bool update_description = 12;
optional bool update_tags = 13;
optional bool update_visibility = 14;
optional string change_description = 15;
optional bool update_url = 16;
optional string url = 17;
optional bool update_content_manifest = 18;
optional fixed64 content_manifest = 19;
optional string metadata = 20;
optional bool update_metadata = 21;
optional int32 language = 22 [default = 0];
repeated string removed_kvtags = 23;
repeated .CMsgClientUCMUpdatePublishedFile.KeyValueTag kvtags = 24;
repeated .CMsgClientUCMUpdatePublishedFile.AdditionalPreview previews = 25;
repeated int32 previews_to_remove = 26;
optional bool clear_in_progress = 27;
}
message CMsgClientUCMUpdatePublishedFileResponse {
optional int32 eresult = 1 [default = 2];
optional bool needs_workshop_legal_agreement_acceptance = 2 [default = false];
}
message CMsgClientUCMDeletePublishedFile {
optional fixed64 published_file_id = 1;
optional uint32 app_id = 2;
}
message CMsgClientUCMDeletePublishedFileResponse {
optional int32 eresult = 1 [default = 2];
}
message CMsgClientUCMEnumerateUserPublishedFiles {
optional uint32 app_id = 1;
optional uint32 start_index = 2;
optional uint32 sort_order = 3;
}
message CMsgClientUCMEnumerateUserPublishedFilesResponse {
message PublishedFileId {
optional fixed64 published_file_id = 1;
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgClientUCMEnumerateUserPublishedFilesResponse.PublishedFileId published_files = 2;
optional uint32 total_results = 3;
}
message CMsgClientUCMEnumerateUserSubscribedFiles {
optional uint32 app_id = 1;
optional uint32 start_index = 2;
optional uint32 list_type = 3 [default = 1];
optional uint32 matching_file_type = 4 [default = 0];
optional uint32 count = 5 [default = 50];
}
message CMsgClientUCMEnumerateUserSubscribedFilesResponse {
message PublishedFileId {
optional fixed64 published_file_id = 1;
optional fixed32 rtime32_subscribed = 2 [default = 0];
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgClientUCMEnumerateUserSubscribedFilesResponse.PublishedFileId subscribed_files = 2;
optional uint32 total_results = 3;
}
message CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates {
optional uint32 app_id = 1;
optional uint32 start_index = 2;
optional fixed32 start_time = 3;
}
message CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse {
message PublishedFileId {
optional fixed64 published_file_id = 1;
optional fixed32 rtime32_subscribed = 2 [default = 0];
optional uint32 appid = 3;
optional fixed64 file_hcontent = 4;
optional uint32 file_size = 5;
optional fixed32 rtime32_last_updated = 6;
optional bool is_depot_content = 7;
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId subscribed_files = 2;
optional uint32 total_results = 3;
}
message CMsgClientUCMPublishedFileSubscribed {
optional fixed64 published_file_id = 1;
optional uint32 app_id = 2;
optional fixed64 file_hcontent = 3;
optional uint32 file_size = 4;
optional uint32 rtime_subscribed = 5;
optional bool is_depot_content = 6;
optional uint32 rtime_updated = 7;
}
message CMsgClientUCMPublishedFileUnsubscribed {
optional fixed64 published_file_id = 1;
optional uint32 app_id = 2;
}
message CMsgClientUCMPublishedFileDeleted {
optional fixed64 published_file_id = 1;
optional uint32 app_id = 2;
}
message CMsgClientUCMPublishedFileUpdated {
optional fixed64 published_file_id = 1;
optional uint32 app_id = 2;
optional uint32 time_updated = 3;
optional fixed64 hcontent = 4;
optional fixed32 file_size = 5;
optional bool is_depot_content = 6;
}
message CMsgClientWorkshopItemChangesRequest {
optional uint32 app_id = 1;
optional uint32 last_time_updated = 2;
optional uint32 num_items_needed = 3;
}
message CMsgClientWorkshopItemChangesResponse {
message WorkshopItemInfo {
optional fixed64 published_file_id = 1;
optional uint32 time_updated = 2;
optional fixed64 manifest_id = 3;
}
optional int32 eresult = 1 [default = 2];
optional uint32 update_time = 2;
repeated .CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo workshop_items = 5;
}
message CMsgClientWorkshopItemInfoRequest {
message WorkshopItem {
optional fixed64 published_file_id = 1;
optional uint32 time_updated = 2;
}
optional uint32 app_id = 1;
optional uint32 last_time_updated = 2;
repeated .CMsgClientWorkshopItemInfoRequest.WorkshopItem workshop_items = 3;
}
message CMsgClientWorkshopItemInfoResponse {
message WorkshopItemInfo {
optional fixed64 published_file_id = 1;
optional uint32 time_updated = 2;
optional fixed64 manifest_id = 3;
optional bool is_legacy = 4;
}
optional int32 eresult = 1 [default = 2];
optional uint32 update_time = 2;
repeated .CMsgClientWorkshopItemInfoResponse.WorkshopItemInfo workshop_items = 3;
repeated fixed64 private_items = 4;
}
message CMsgClientUCMGetPublishedFilesForUser {
optional uint32 app_id = 1;
optional fixed64 creator_steam_id = 2;
repeated string required_tags = 3;
repeated string excluded_tags = 4;
optional uint32 start_index = 5;
}
message CMsgClientUCMGetPublishedFilesForUserResponse {
message PublishedFileId {
optional fixed64 published_file_id = 1;
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgClientUCMGetPublishedFilesForUserResponse.PublishedFileId published_files = 2;
optional uint32 total_results = 3;
}
message CMsgClientUCMSetUserPublishedFileAction {
optional fixed64 published_file_id = 1;
optional uint32 app_id = 2;
optional int32 action = 3;
}
message CMsgClientUCMSetUserPublishedFileActionResponse {
optional int32 eresult = 1 [default = 2];
}
message CMsgClientUCMEnumeratePublishedFilesByUserAction {
optional uint32 app_id = 1;
optional uint32 start_index = 2;
optional int32 action = 3;
}
message CMsgClientUCMEnumeratePublishedFilesByUserActionResponse {
message PublishedFileId {
optional fixed64 published_file_id = 1;
optional fixed32 rtime_time_stamp = 2 [default = 0];
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.PublishedFileId published_files = 2;
optional uint32 total_results = 3;
}
message CMsgClientScreenshotsChanged {
}
message CMsgClientUpdateUserGameInfo {
optional fixed64 steamid_idgs = 1;
optional fixed64 gameid = 2;
optional uint32 game_ip = 3;
optional uint32 game_port = 4;
optional bytes token = 5;
}
message CMsgClientRichPresenceUpload {
optional bytes rich_presence_kv = 1;
repeated fixed64 steamid_broadcast = 2;
}
message CMsgClientRichPresenceRequest {
repeated fixed64 steamid_request = 1;
}
message CMsgClientRichPresenceInfo {
message RichPresence {
optional fixed64 steamid_user = 1;
optional bytes rich_presence_kv = 2;
}
repeated .CMsgClientRichPresenceInfo.RichPresence rich_presence = 1;
}
message CMsgClientCheckFileSignature {
optional uint32 app_id = 1;
}
message CMsgClientCheckFileSignatureResponse {
optional uint32 app_id = 1;
optional uint32 pid = 2;
optional uint32 eresult = 3;
optional string filename = 4;
optional uint32 esignatureresult = 5;
optional bytes sha_file = 6;
optional bytes signatureheader = 7;
optional uint32 filesize = 8;
optional uint32 getlasterror = 9;
optional uint32 evalvesignaturecheckdetail = 10;
}
message CMsgClientReadMachineAuth {
optional string filename = 1;
optional uint32 offset = 2;
optional uint32 cubtoread = 3;
}
message CMsgClientReadMachineAuthResponse {
optional string filename = 1;
optional uint32 eresult = 2;
optional uint32 filesize = 3;
optional bytes sha_file = 4;
optional uint32 getlasterror = 5;
optional uint32 offset = 6;
optional uint32 cubread = 7;
optional bytes bytes_read = 8;
optional string filename_sentry = 9;
}
message CMsgClientUpdateMachineAuth {
optional string filename = 1;
optional uint32 offset = 2;
optional uint32 cubtowrite = 3;
optional bytes bytes = 4;
optional uint32 otp_type = 5;
optional string otp_identifier = 6;
optional bytes otp_sharedsecret = 7;
optional uint32 otp_timedrift = 8;
}
message CMsgClientUpdateMachineAuthResponse {
optional string filename = 1;
optional uint32 eresult = 2;
optional uint32 filesize = 3;
optional bytes sha_file = 4;
optional uint32 getlasterror = 5;
optional uint32 offset = 6;
optional uint32 cubwrote = 7;
optional int32 otp_type = 8;
optional uint32 otp_value = 9;
optional string otp_identifier = 10;
}
message CMsgClientRequestMachineAuth {
optional string filename = 1;
optional uint32 eresult_sentryfile = 2;
optional uint32 filesize = 3;
optional bytes sha_sentryfile = 4;
optional int32 lock_account_action = 6;
optional uint32 otp_type = 7;
optional string otp_identifier = 8;
optional bytes otp_sharedsecret = 9;
optional uint32 otp_value = 10;
optional string machine_name = 11;
optional string machine_name_userchosen = 12;
}
message CMsgClientRequestMachineAuthResponse {
optional uint32 eresult = 1;
}
message CMsgClientRegisterKey {
optional string key = 1;
}
message CMsgClientPurchaseResponse {
optional int32 eresult = 1 [default = 2];
optional int32 purchase_result_details = 2;
optional bytes purchase_receipt_info = 3;
}
message CMsgClientActivateOEMLicense {
optional string bios_manufacturer = 1;
optional string bios_serialnumber = 2;
optional bytes license_file = 3;
optional string mainboard_manufacturer = 4;
optional string mainboard_product = 5;
optional string mainboard_serialnumber = 6;
}
message CMsgClientRegisterOEMMachine {
optional bytes oem_register_file = 1;
}
message CMsgClientRegisterOEMMachineResponse {
optional uint32 eresult = 1;
}
message CMsgClientPurchaseWithMachineID {
optional uint32 package_id = 1;
optional bytes machine_info = 2;
}
message CMsgTrading_InitiateTradeRequest {
optional uint32 trade_request_id = 1;
optional uint64 other_steamid = 2;
optional string other_name = 3;
}
message CMsgTrading_InitiateTradeResponse {
optional uint32 response = 1;
optional uint32 trade_request_id = 2;
optional uint64 other_steamid = 3;
optional uint32 steamguard_required_days = 4;
optional uint32 new_device_cooldown_days = 5;
optional uint32 default_password_reset_probation_days = 6;
optional uint32 password_reset_probation_days = 7;
optional uint32 default_email_change_probation_days = 8;
optional uint32 email_change_probation_days = 9;
}
message CMsgTrading_CancelTradeRequest {
optional uint64 other_steamid = 1;
}
message CMsgTrading_StartSession {
optional uint64 other_steamid = 1;
}
message CMsgClientEmailChange {
optional string password = 1;
optional string email = 2;
optional string code = 3;
optional bool final = 4;
optional bool newmethod = 5;
optional string twofactor_code = 6;
optional string sms_code = 7;
optional bool client_supports_sms = 8;
}
message CMsgClientEmailChangeResponse {
optional int32 eresult = 1 [default = 2];
optional bool requires_sms_code = 2;
}
message CMsgClientGetCDNAuthToken {
optional uint32 depot_id = 1;
optional string host_name = 2;
optional uint32 app_id = 3;
}
message CMsgClientGetDepotDecryptionKey {
optional uint32 depot_id = 1;
optional uint32 app_id = 2;
}
message CMsgClientGetDepotDecryptionKeyResponse {
optional int32 eresult = 1 [default = 2];
optional uint32 depot_id = 2;
optional bytes depot_encryption_key = 3;
}
message CMsgClientCheckAppBetaPassword {
optional uint32 app_id = 1;
optional string betapassword = 2;
}
message CMsgClientCheckAppBetaPasswordResponse {
message BetaPassword {
optional string betaname = 1;
optional string betapassword = 2;
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgClientCheckAppBetaPasswordResponse.BetaPassword betapasswords = 4;
}
message CMsgClientUpdateAppJobReport {
optional uint32 app_id = 1;
repeated uint32 depot_ids = 2;
optional uint32 app_state = 3;
optional uint32 job_app_error = 4;
optional string error_details = 5;
optional uint32 job_duration = 6;
optional uint32 files_validation_failed = 7;
optional uint64 job_bytes_downloaded = 8;
optional uint64 job_bytes_staged = 9;
optional uint64 bytes_comitted = 10;
optional uint32 start_app_state = 11;
optional fixed64 stats_machine_id = 12;
optional string branch_name = 13;
optional uint64 total_bytes_downloaded = 14;
optional uint64 total_bytes_staged = 15;
optional uint64 total_bytes_restored = 16;
optional bool is_borrowed = 17;
optional bool is_free_weekend = 18;
optional uint64 total_bytes_legacy = 19;
}
message CMsgClientDPContentStatsReport {
optional fixed64 stats_machine_id = 1;
optional string country_code = 2;
optional int32 os_type = 3;
optional int32 language = 4;
optional uint32 num_install_folders = 5;
optional uint32 num_installed_games = 6;
optional uint64 size_installed_games = 7;
}
message CMsgClientGetCDNAuthTokenResponse {
optional uint32 eresult = 1 [default = 2];
optional string token = 2;
optional uint32 expiration_time = 3;
}
message CMsgDownloadRateStatistics {
message StatsInfo {
optional uint32 source_type = 1;
optional uint32 source_id = 2;
optional uint32 seconds = 3;
optional uint64 bytes = 4;
optional string host_name = 5;
}
optional uint32 cell_id = 1;
repeated .CMsgDownloadRateStatistics.StatsInfo stats = 2;
}
message CMsgClientRequestAccountData {
optional string account_or_email = 1;
optional uint32 action = 2;
}
message CMsgClientRequestAccountDataResponse {
optional uint32 action = 1;
optional uint32 eresult = 2;
optional string account_name = 3;
optional uint32 ct_matches = 4;
optional string account_name_suggestion1 = 5;
optional string account_name_suggestion2 = 6;
optional string account_name_suggestion3 = 7;
}
message CMsgClientUGSGetGlobalStats {
optional uint64 gameid = 1;
optional uint32 history_days_requested = 2;
optional fixed32 time_last_requested = 3;
optional uint32 first_day_cached = 4;
optional uint32 days_cached = 5;
}
message CMsgClientUGSGetGlobalStatsResponse {
message Day {
message Stat {
optional int32 stat_id = 1;
optional int64 data = 2;
}
optional uint32 day_id = 1;
repeated .CMsgClientUGSGetGlobalStatsResponse.Day.Stat stats = 2;
}
optional int32 eresult = 1 [default = 2];
optional fixed32 timestamp = 2;
optional int32 day_current = 3;
repeated .CMsgClientUGSGetGlobalStatsResponse.Day days = 4;
}
message CMsgGameServerData {
message Player {
optional fixed64 steam_id = 1;
}
optional fixed64 steam_id_gs = 1;
optional uint32 ip = 2;
optional uint32 query_port = 3;
optional uint32 game_port = 4;
optional uint32 sourcetv_port = 5;
optional string name = 22;
optional uint32 app_id = 6;
optional string gamedir = 7;
optional string version = 8;
optional string product = 9;
optional string region = 10;
repeated .CMsgGameServerData.Player players = 11;
optional uint32 max_players = 12;
optional uint32 bot_count = 13;
optional bool password = 14;
optional bool secure = 15;
optional bool dedicated = 16;
optional string os = 17;
optional string game_data = 18;
optional uint32 game_data_version = 19;
optional string game_type = 20;
optional string map = 21;
}
message CMsgGameServerRemove {
optional fixed64 steam_id = 1;
optional uint32 ip = 2;
optional uint32 query_port = 3;
}
message CMsgClientGMSServerQuery {
optional uint32 app_id = 1;
optional uint32 geo_location_ip = 2;
optional uint32 region_code = 3;
optional string filter_text = 4;
optional uint32 max_servers = 5;
}
message CMsgGMSClientServerQueryResponse {
message Server {
optional uint32 server_ip = 1;
optional uint32 server_port = 2;
optional uint32 auth_players = 3;
}
repeated .CMsgGMSClientServerQueryResponse.Server servers = 1;
optional string error = 2;
}
message CMsgGameServerOutOfDate {
optional fixed64 steam_id_gs = 1;
optional bool reject = 2;
optional string message = 3;
}
message CMsgClientRedeemGuestPass {
optional fixed64 guest_pass_id = 1;
}
message CMsgClientRedeemGuestPassResponse {
optional uint32 eresult = 1 [default = 2];
optional uint32 package_id = 2;
optional uint32 must_own_appid = 3;
}
message CMsgClientGetClanActivityCounts {
repeated uint64 steamid_clans = 1;
}
message CMsgClientGetClanActivityCountsResponse {
optional uint32 eresult = 1 [default = 2];
}
message CMsgClientOGSReportString {
optional bool accumulated = 1;
optional uint64 sessionid = 2;
optional int32 severity = 3;
optional string formatter = 4;
optional bytes varargs = 5;
}
message CMsgClientOGSReportBug {
optional uint64 sessionid = 1;
optional string bugtext = 2;
optional bytes screenshot = 3;
}
message CMsgGSAssociateWithClan {
optional fixed64 steam_id_clan = 1;
}
message CMsgGSAssociateWithClanResponse {
optional fixed64 steam_id_clan = 1;
optional uint32 eresult = 2 [default = 2];
}
message CMsgGSComputeNewPlayerCompatibility {
optional fixed64 steam_id_candidate = 1;
}
message CMsgGSComputeNewPlayerCompatibilityResponse {
optional fixed64 steam_id_candidate = 1;
optional uint32 eresult = 2 [default = 2];
optional bool is_clan_member = 3;
optional int32 ct_dont_like_you = 4;
optional int32 ct_you_dont_like = 5;
optional int32 ct_clanmembers_dont_like_you = 6;
}
message CMsgClientSentLogs {
}
message CMsgGCClient {
optional uint32 appid = 1;
optional uint32 msgtype = 2;
optional bytes payload = 3;
optional fixed64 steamid = 4;
optional string gcname = 5;
}
message CMsgClientRequestFreeLicense {
repeated uint32 appids = 2;
}
message CMsgClientRequestFreeLicenseResponse {
optional uint32 eresult = 1 [default = 2];
repeated uint32 granted_packageids = 2;
repeated uint32 granted_appids = 3;
}
message CMsgDRMDownloadRequestWithCrashData {
optional uint32 download_flags = 1;
optional uint32 download_types_known = 2;
optional bytes guid_drm = 3;
optional bytes guid_split = 4;
optional bytes guid_merge = 5;
optional string module_name = 6;
optional string module_path = 7;
optional bytes crash_data = 8;
}
message CMsgDRMDownloadResponse {
optional uint32 eresult = 1 [default = 2];
optional uint32 app_id = 2;
optional uint32 blob_download_type = 3;
optional bytes merge_guid = 4;
optional uint32 download_file_dfs_ip = 5;
optional uint32 download_file_dfs_port = 6;
optional string download_file_url = 7;
optional string module_path = 8;
}
message CMsgDRMFinalResult {
optional uint32 eResult = 1 [default = 2];
optional uint32 app_id = 2;
optional uint32 blob_download_type = 3;
optional uint32 error_detail = 4;
optional bytes merge_guid = 5;
optional uint32 download_file_dfs_ip = 6;
optional uint32 download_file_dfs_port = 7;
optional string download_file_url = 8;
}
message CMsgClientDPCheckSpecialSurvey {
optional uint32 survey_id = 1;
}
message CMsgClientDPCheckSpecialSurveyResponse {
optional uint32 eResult = 1 [default = 2];
optional uint32 state = 2;
optional string name = 3;
optional string custom_url = 4;
optional bool include_software = 5;
optional bytes token = 6;
}
message CMsgClientDPSendSpecialSurveyResponse {
optional uint32 survey_id = 1;
optional bytes data = 2;
}
message CMsgClientDPSendSpecialSurveyResponseReply {
optional uint32 eResult = 1 [default = 2];
optional bytes token = 2;
}
message CMsgClientRequestForgottenPasswordEmail {
optional string account_name = 1;
optional string password_tried = 2;
}
message CMsgClientRequestForgottenPasswordEmailResponse {
optional uint32 eResult = 1;
optional bool use_secret_question = 2;
}
message CMsgClientItemAnnouncements {
optional uint32 count_new_items = 1;
}
message CMsgClientRequestItemAnnouncements {
}
message CMsgClientUserNotifications {
message Notification {
optional uint32 user_notification_type = 1;
optional uint32 count = 2;
}
repeated .CMsgClientUserNotifications.Notification notifications = 1;
}
message CMsgClientCommentNotifications {
optional uint32 count_new_comments = 1;
optional uint32 count_new_comments_owner = 2;
optional uint32 count_new_comments_subscriptions = 3;
}
message CMsgClientRequestCommentNotifications {
}
message CMsgClientOfflineMessageNotification {
optional uint32 offline_messages = 1;
repeated uint32 friends_with_offline_messages = 2;
}
message CMsgClientRequestOfflineMessageCount {
}
message CMsgClientChatGetFriendMessageHistory {
optional fixed64 steamid = 1;
}
message CMsgClientChatGetFriendMessageHistoryResponse {
message FriendMessage {
optional uint32 accountid = 1;
optional uint32 timestamp = 2;
optional string message = 3;
optional bool unread = 4;
}
optional fixed64 steamid = 1;
optional uint32 success = 2;
repeated .CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage messages = 3;
}
message CMsgClientChatGetFriendMessageHistoryForOfflineMessages {
}
message CMsgClientFSGetFriendsSteamLevels {
repeated uint32 accountids = 1;
}
message CMsgClientFSGetFriendsSteamLevelsResponse {
message Friend {
optional uint32 accountid = 1;
optional uint32 level = 2;
}
repeated .CMsgClientFSGetFriendsSteamLevelsResponse.Friend friends = 1;
}
message CMsgClientEmailAddrInfo {
optional string email_address = 1;
optional bool email_is_validated = 2;
optional bool email_validation_changed = 3;
optional bool credential_change_requires_code = 4;
optional bool password_or_secretqa_change_requires_code = 5;
optional bool remind_user_about_email = 6;
}
message CMsgCREEnumeratePublishedFiles {
optional uint32 app_id = 1;
optional int32 query_type = 2;
optional uint32 start_index = 3;
optional uint32 days = 4;
optional uint32 count = 5;
repeated string tags = 6;
repeated string user_tags = 7;
optional uint32 matching_file_type = 8 [default = 13];
}
message CMsgCREEnumeratePublishedFilesResponse {
message PublishedFileId {
optional fixed64 published_file_id = 1;
optional int32 votes_for = 2;
optional int32 votes_against = 3;
optional int32 reports = 4;
optional float score = 5;
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgCREEnumeratePublishedFilesResponse.PublishedFileId published_files = 2;
optional uint32 total_results = 3;
}
message CMsgCREItemVoteSummary {
message PublishedFileId {
optional fixed64 published_file_id = 1;
}
repeated .CMsgCREItemVoteSummary.PublishedFileId published_file_ids = 1;
}
message CMsgCREItemVoteSummaryResponse {
message ItemVoteSummary {
optional fixed64 published_file_id = 1;
optional int32 votes_for = 2;
optional int32 votes_against = 3;
optional int32 reports = 4;
optional float score = 5;
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgCREItemVoteSummaryResponse.ItemVoteSummary item_vote_summaries = 2;
}
message CMsgCREUpdateUserPublishedItemVote {
optional fixed64 published_file_id = 1;
optional bool vote_up = 2;
}
message CMsgCREUpdateUserPublishedItemVoteResponse {
optional int32 eresult = 1 [default = 2];
}
message CMsgCREGetUserPublishedItemVoteDetails {
message PublishedFileId {
optional fixed64 published_file_id = 1;
}
repeated .CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId published_file_ids = 1;
}
message CMsgCREGetUserPublishedItemVoteDetailsResponse {
message UserItemVoteDetail {
optional fixed64 published_file_id = 1;
optional int32 vote = 2 [default = 0];
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail user_item_vote_details = 2;
}
message CMsgGameServerPingSample {
message Sample {
optional fixed32 ip = 1;
optional uint32 avg_ping_ms = 2;
optional uint32 stddev_ping_ms_x10 = 3;
}
optional fixed32 my_ip = 1;
optional int32 gs_app_id = 2;
repeated .CMsgGameServerPingSample.Sample gs_samples = 3;
}
message CMsgFSGetFollowerCount {
optional fixed64 steam_id = 1;
}
message CMsgFSGetFollowerCountResponse {
optional int32 eresult = 1 [default = 2];
optional int32 count = 2 [default = 0];
}
message CMsgFSGetIsFollowing {
optional fixed64 steam_id = 1;
}
message CMsgFSGetIsFollowingResponse {
optional int32 eresult = 1 [default = 2];
optional bool is_following = 2 [default = false];
}
message CMsgFSEnumerateFollowingList {
optional uint32 start_index = 1;
}
message CMsgFSEnumerateFollowingListResponse {
optional int32 eresult = 1 [default = 2];
optional int32 total_results = 2;
repeated fixed64 steam_ids = 3;
}
message CMsgDPGetNumberOfCurrentPlayers {
optional uint32 appid = 1;
}
message CMsgDPGetNumberOfCurrentPlayersResponse {
optional int32 eresult = 1 [default = 2];
optional int32 player_count = 2;
}
message CMsgClientFriendUserStatusPublished {
optional fixed64 friend_steamid = 1;
optional uint32 appid = 2;
optional string status_text = 3;
}
message CMsgClientServiceMethod {
optional string method_name = 1;
optional bytes serialized_method = 2;
optional bool is_notification = 3;
}
message CMsgClientServiceMethodResponse {
optional string method_name = 1;
optional bytes serialized_method_response = 2;
}
message CMsgClientUIMode {
optional uint32 uimode = 1;
optional uint32 chat_mode = 2;
}
message CMsgClientVanityURLChangedNotification {
optional string vanity_url = 1;
}
message CMsgClientAuthorizeLocalDeviceRequest {
optional string device_description = 1;
optional uint32 owner_account_id = 2;
optional uint64 local_device_token = 3;
}
message CMsgClientAuthorizeLocalDevice {
optional int32 eresult = 1 [default = 2];
optional uint32 owner_account_id = 2;
optional uint64 authed_device_token = 3;
}
message CMsgClientAuthorizeLocalDeviceNotification {
optional int32 eresult = 1 [default = 2];
optional uint32 owner_account_id = 2;
optional uint64 local_device_token = 3;
}
message CMsgClientDeauthorizeDeviceRequest {
optional uint32 deauthorization_account_id = 1;
optional uint64 deauthorization_device_token = 2;
}
message CMsgClientDeauthorizeDevice {
optional int32 eresult = 1 [default = 2];
optional uint32 deauthorization_account_id = 2;
}
message CMsgClientUseLocalDeviceAuthorizations {
message DeviceToken {
optional uint32 owner_account_id = 1;
optional uint64 token_id = 2;
}
repeated uint32 authorization_account_id = 1;
repeated .CMsgClientUseLocalDeviceAuthorizations.DeviceToken device_tokens = 2;
}
message CMsgClientGetAuthorizedDevices {
}
message CMsgClientGetAuthorizedDevicesResponse {
message AuthorizedDevice {
optional uint64 auth_device_token = 1;
optional string device_name = 2;
optional uint32 last_access_time = 3;
optional uint32 borrower_id = 4;
optional bool is_pending = 5;
optional uint32 app_played = 6;
}
optional int32 eresult = 1 [default = 2];
repeated .CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice authorized_device = 2;
}
message CMsgClientSharedLibraryLockStatus {
message LockedLibrary {
optional uint32 owner_id = 1;
optional uint32 locked_by = 2;
}
repeated .CMsgClientSharedLibraryLockStatus.LockedLibrary locked_library = 1;
optional uint32 own_library_locked_by = 2;
}
message CMsgClientSharedLibraryStopPlaying {
message StopApp {
optional uint32 app_id = 1;
optional uint32 owner_id = 2;
}
optional int32 seconds_left = 1;
repeated .CMsgClientSharedLibraryStopPlaying.StopApp stop_apps = 2;
}
message CMsgClientServiceCall {
optional bytes sysid_routing = 1;
optional uint32 call_handle = 2;
optional uint32 module_crc = 3;
optional bytes module_hash = 4;
optional uint32 function_id = 5;
optional uint32 cub_output_max = 6;
optional uint32 flags = 7;
optional bytes callparameter = 8;
optional bool ping_only = 9;
optional uint32 max_outstanding_calls = 10;
}
message CMsgClientServiceModule {
optional uint32 module_crc = 1;
optional bytes module_hash = 2;
optional bytes module_content = 3;
}
message CMsgClientServiceCallResponse {
optional bytes sysid_routing = 1;
optional uint32 call_handle = 2;
optional uint32 module_crc = 3;
optional bytes module_hash = 4;
optional uint32 ecallresult = 5;
optional bytes result_content = 6;
optional bytes os_version_info = 7;
optional bytes system_info = 8;
optional fixed64 load_address = 9;
optional bytes exception_record = 10;
optional bytes portable_os_version_info = 11;
optional bytes portable_system_info = 12;
optional bool was_converted = 13;
optional uint32 internal_result = 14;
optional uint32 current_count = 15;
optional uint32 last_call_handle = 16;
optional uint32 last_call_module_crc = 17;
optional bytes last_call_sysid_routing = 18;
optional uint32 last_ecallresult = 19;
optional uint32 last_callissue_delta = 20;
optional uint32 last_callcomplete_delta = 21;
}
message CMsgAMUnlockStreaming {
}
message CMsgAMUnlockStreamingResponse {
optional int32 eresult = 1 [default = 2];
optional bytes encryption_key = 2;
}
message CMsgClientPlayingSessionState {
optional bool playing_blocked = 2;
optional uint32 playing_app = 3;
}
message CMsgClientKickPlayingSession {
optional bool only_stop_game = 1;
}
message CMsgClientCreateAccount {
optional string account_name = 1;
optional string password = 2;
optional string email = 3;
optional uint32 launcher = 6;
optional uint32 language = 7;
}
message CMsgClientCreateAccountResponse {
optional int32 eresult = 1 [default = 2];
optional fixed64 steamid = 2;
}
message CMsgClientVoiceCallPreAuthorize {
optional fixed64 caller_steamid = 1;
optional fixed64 receiver_steamid = 2;
optional int32 caller_id = 3;
optional bool hangup = 4;
}
message CMsgClientVoiceCallPreAuthorizeResponse {
optional fixed64 caller_steamid = 1;
optional fixed64 receiver_steamid = 2;
optional int32 eresult = 3 [default = 2];
optional int32 caller_id = 4;
}