steamutils 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/protos/base_gcmessages.proto +533 -0
- package/protos/clientmetrics.proto +45 -0
- package/protos/content_manifest.proto +62 -0
- package/protos/cstrike15_gcmessages.proto +1344 -0
- package/protos/cstrike15_usermessages.proto +597 -0
- package/protos/econ_gcmessages.proto +225 -0
- package/protos/encrypted_app_ticket.proto +10 -0
- package/protos/engine_gcmessages.proto +16 -0
- package/protos/enums.proto +285 -0
- package/protos/enums_clientserver.proto +1534 -0
- package/protos/fatdemo.proto +125 -0
- package/protos/gcsdk_gcmessages.proto +302 -0
- package/protos/gcsystemmsgs.proto +246 -0
- package/protos/htmlmessages.proto +993 -0
- package/protos/netmessages.proto +491 -0
- package/protos/network_connection.proto +70 -0
- package/protos/renderer/rendermessages.proto +893 -0
- package/protos/steamdatagram_messages.proto +205 -0
- package/protos/steamdatagram_messages_auth.proto +65 -0
- package/protos/steamdatagram_messages_sdr.proto +518 -0
- package/protos/steammessages.proto +601 -0
- package/protos/steammessages_accounthardware.steamclient.proto +188 -0
- package/protos/steammessages_appoverview.proto +185 -0
- package/protos/steammessages_auth.steamclient.proto +192 -0
- package/protos/steammessages_base.proto +288 -0
- package/protos/steammessages_broadcast.steamclient.proto +756 -0
- package/protos/steammessages_chat.steamclient.proto +1281 -0
- package/protos/steammessages_client_objects.proto +336 -0
- package/protos/steammessages_clientlanp2p.proto +26 -0
- package/protos/steammessages_clientmetrics.steamclient.proto +176 -0
- package/protos/steammessages_clientnotificationtypes.proto +129 -0
- package/protos/steammessages_clientserver.proto +384 -0
- package/protos/steammessages_clientserver_2.proto +776 -0
- package/protos/steammessages_clientserver_appinfo.proto +166 -0
- package/protos/steammessages_clientserver_friends.proto +260 -0
- package/protos/steammessages_clientserver_gameservers.proto +159 -0
- package/protos/steammessages_clientserver_lbs.proto +70 -0
- package/protos/steammessages_clientserver_login.proto +159 -0
- package/protos/steammessages_clientserver_mms.proto +235 -0
- package/protos/steammessages_clientserver_ucm.proto +202 -0
- package/protos/steammessages_clientserver_uds.proto +104 -0
- package/protos/steammessages_clientserver_ufs.proto +172 -0
- package/protos/steammessages_clientserver_userstats.proto +80 -0
- package/protos/steammessages_cloud.steamclient.proto +512 -0
- package/protos/steammessages_contentsystem.steamclient.proto +77 -0
- package/protos/steammessages_credentials.steamclient.proto +141 -0
- package/protos/steammessages_datapublisher.steamclient.proto +67 -0
- package/protos/steammessages_depotbuilder.steamclient.proto +118 -0
- package/protos/steammessages_deviceauth.steamclient.proto +200 -0
- package/protos/steammessages_econ.steamclient.proto +105 -0
- package/protos/steammessages_friendmessages.steamclient.proto +168 -0
- package/protos/steammessages_gamenetworking.steamclient.proto +32 -0
- package/protos/steammessages_gamenetworkingui.proto +42 -0
- package/protos/steammessages_gamenotifications.steamclient.proto +156 -0
- package/protos/steammessages_gameservers.steamclient.proto +152 -0
- package/protos/steammessages_hiddevices.proto +156 -0
- package/protos/steammessages_inventory.steamclient.proto +224 -0
- package/protos/steammessages_linkfilter.steamclient.proto +49 -0
- package/protos/steammessages_lobbymatchmaking.steamclient.proto +33 -0
- package/protos/steammessages_market.steamclient.proto +26 -0
- package/protos/steammessages_offline.steamclient.proto +37 -0
- package/protos/steammessages_parental.steamclient.proto +186 -0
- package/protos/steammessages_parties.steamclient.proto +94 -0
- package/protos/steammessages_partnerapps.steamclient.proto +136 -0
- package/protos/steammessages_player.steamclient.proto +912 -0
- package/protos/steammessages_publishedfile.steamclient.proto +711 -0
- package/protos/steammessages_qms.steamclient.proto +125 -0
- package/protos/steammessages_remoteclient.proto +99 -0
- package/protos/steammessages_remoteclient_discovery.proto +228 -0
- package/protos/steammessages_remoteclient_service.steamclient.proto +90 -0
- package/protos/steammessages_remoteclient_service_messages.proto +196 -0
- package/protos/steammessages_remoteplay.proto +871 -0
- package/protos/steammessages_secrets.steamclient.proto +39 -0
- package/protos/steammessages_shader.steamclient.proto +96 -0
- package/protos/steammessages_site_license.steamclient.proto +128 -0
- package/protos/steammessages_sitelicenseclient.proto +38 -0
- package/protos/steammessages_siteserverui.proto +130 -0
- package/protos/steammessages_star.steamclient.proto +64 -0
- package/protos/steammessages_steamtv.steamclient.proto +630 -0
- package/protos/steammessages_store.steamclient.proto +262 -0
- package/protos/steammessages_timedtrial.steamclient.proto +50 -0
- package/protos/steammessages_twofactor.steamclient.proto +154 -0
- package/protos/steammessages_unified_base.steamclient.proto +33 -0
- package/protos/steammessages_unified_test.steamclient.proto +50 -0
- package/protos/steammessages_useraccount.steamclient.proto +210 -0
- package/protos/steammessages_vac.steamclient.proto +44 -0
- package/protos/steammessages_video.steamclient.proto +84 -0
- package/protos/steammessages_virtualcontroller.proto +138 -0
- package/protos/steammessages_workshop.steamclient.proto +23 -0
- package/protos/steamnetworkingsockets_messages.proto +204 -0
- package/protos/steamnetworkingsockets_messages_certs.proto +38 -0
- package/protos/steamnetworkingsockets_messages_udp.proto +75 -0
- package/protos/uifontfile_format.proto +16 -0
@@ -0,0 +1,168 @@
|
|
1
|
+
import "steammessages_base.proto";
|
2
|
+
import "steammessages_unified_base.steamclient.proto";
|
3
|
+
|
4
|
+
option cc_generic_services = true;
|
5
|
+
|
6
|
+
enum EMessageReactionType {
|
7
|
+
k_EMessageReactionType_Invalid = 0;
|
8
|
+
k_EMessageReactionType_Emoticon = 1;
|
9
|
+
k_EMessageReactionType_Sticker = 2;
|
10
|
+
}
|
11
|
+
|
12
|
+
message CFriendMessages_GetRecentMessages_Request {
|
13
|
+
optional fixed64 steamid1 = 1;
|
14
|
+
optional fixed64 steamid2 = 2;
|
15
|
+
optional uint32 count = 3 [(description) = "If non-zero, cap the number of recent messages to return."];
|
16
|
+
optional bool most_recent_conversation = 4 [(description) = "Grab the block of chat from the most recent conversation (a ~5 minute period)"];
|
17
|
+
optional fixed32 rtime32_start_time = 5 [(description) = "If non-zero, return only messages with timestamps greater or equal to this. If zero, we only return messages from a recent time cutoff."];
|
18
|
+
optional bool bbcode_format = 6 [(description) = "Return the results with bbcode formatting."];
|
19
|
+
optional uint32 start_ordinal = 7 [(description) = "Combined with start time, only messages after this ordinal are returned (dedupes messages in same second)"];
|
20
|
+
optional uint32 time_last = 8 [(description) = "if present/non-zero, return only messages before this."];
|
21
|
+
optional uint32 ordinal_last = 9;
|
22
|
+
}
|
23
|
+
|
24
|
+
message CFriendMessages_GetRecentMessages_Response {
|
25
|
+
message FriendMessage {
|
26
|
+
message MessageReaction {
|
27
|
+
optional .EMessageReactionType reaction_type = 1 [default = k_EMessageReactionType_Invalid];
|
28
|
+
optional string reaction = 2;
|
29
|
+
repeated uint32 reactors = 3;
|
30
|
+
}
|
31
|
+
|
32
|
+
optional uint32 accountid = 1;
|
33
|
+
optional uint32 timestamp = 2;
|
34
|
+
optional string message = 3;
|
35
|
+
optional uint32 ordinal = 4;
|
36
|
+
repeated .CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction reactions = 5;
|
37
|
+
}
|
38
|
+
|
39
|
+
repeated .CFriendMessages_GetRecentMessages_Response.FriendMessage messages = 1 [(description) = "Array of messages, returned newest to oldest."];
|
40
|
+
optional bool more_available = 4;
|
41
|
+
}
|
42
|
+
|
43
|
+
message CFriendsMessages_GetActiveMessageSessions_Request {
|
44
|
+
optional uint32 lastmessage_since = 1 [(description) = "return only session information where a chat message has been sent since this time (for polling)"];
|
45
|
+
optional bool only_sessions_with_messages = 2 [(description) = "If non-zero, return only message sessions that have messages since our message cutoff. If zero, we return all active sessions."];
|
46
|
+
}
|
47
|
+
|
48
|
+
message CFriendsMessages_GetActiveMessageSessions_Response {
|
49
|
+
message FriendMessageSession {
|
50
|
+
optional uint32 accountid_friend = 1;
|
51
|
+
optional uint32 last_message = 2;
|
52
|
+
optional uint32 last_view = 3;
|
53
|
+
optional uint32 unread_message_count = 4;
|
54
|
+
}
|
55
|
+
|
56
|
+
repeated .CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession message_sessions = 1;
|
57
|
+
optional uint32 timestamp = 2 [(description) = "This should be passed in the next request as lastmessage_since to poll for updates"];
|
58
|
+
}
|
59
|
+
|
60
|
+
message CFriendMessages_SendMessage_Request {
|
61
|
+
optional fixed64 steamid = 1;
|
62
|
+
optional int32 chat_entry_type = 2;
|
63
|
+
optional string message = 3;
|
64
|
+
optional bool contains_bbcode = 4;
|
65
|
+
optional bool echo_to_sender = 5;
|
66
|
+
optional bool low_priority = 6;
|
67
|
+
optional string client_message_id = 8;
|
68
|
+
}
|
69
|
+
|
70
|
+
message CFriendMessages_SendMessage_Response {
|
71
|
+
optional string modified_message = 1;
|
72
|
+
optional uint32 server_timestamp = 2;
|
73
|
+
optional uint32 ordinal = 3;
|
74
|
+
optional string message_without_bb_code = 4;
|
75
|
+
}
|
76
|
+
|
77
|
+
message CFriendMessages_AckMessage_Notification {
|
78
|
+
optional fixed64 steamid_partner = 1;
|
79
|
+
optional uint32 timestamp = 2;
|
80
|
+
}
|
81
|
+
|
82
|
+
message CFriendMessages_IsInFriendsUIBeta_Request {
|
83
|
+
optional fixed64 steamid = 1;
|
84
|
+
}
|
85
|
+
|
86
|
+
message CFriendMessages_IsInFriendsUIBeta_Response {
|
87
|
+
optional bool online_in_friendsui = 1;
|
88
|
+
optional bool has_used_friendsui = 2;
|
89
|
+
}
|
90
|
+
|
91
|
+
message CFriendMessages_UpdateMessageReaction_Request {
|
92
|
+
optional fixed64 steamid = 1;
|
93
|
+
optional uint32 server_timestamp = 2;
|
94
|
+
optional uint32 ordinal = 3;
|
95
|
+
optional .EMessageReactionType reaction_type = 4 [default = k_EMessageReactionType_Invalid];
|
96
|
+
optional string reaction = 5;
|
97
|
+
optional bool is_add = 6;
|
98
|
+
}
|
99
|
+
|
100
|
+
message CFriendMessages_UpdateMessageReaction_Response {
|
101
|
+
repeated uint32 reactors = 1;
|
102
|
+
}
|
103
|
+
|
104
|
+
message CFriendMessages_IncomingMessage_Notification {
|
105
|
+
optional fixed64 steamid_friend = 1;
|
106
|
+
optional int32 chat_entry_type = 2;
|
107
|
+
optional bool from_limited_account = 3;
|
108
|
+
optional string message = 4;
|
109
|
+
optional fixed32 rtime32_server_timestamp = 5;
|
110
|
+
optional uint32 ordinal = 6;
|
111
|
+
optional bool local_echo = 7;
|
112
|
+
optional string message_no_bbcode = 8;
|
113
|
+
optional bool low_priority = 9;
|
114
|
+
}
|
115
|
+
|
116
|
+
message CFriendMessages_MessageReaction_Notification {
|
117
|
+
optional fixed64 steamid_friend = 1;
|
118
|
+
optional uint32 server_timestamp = 2;
|
119
|
+
optional uint32 ordinal = 3;
|
120
|
+
optional fixed64 reactor = 4;
|
121
|
+
optional .EMessageReactionType reaction_type = 5 [default = k_EMessageReactionType_Invalid];
|
122
|
+
optional string reaction = 6;
|
123
|
+
optional bool is_add = 7;
|
124
|
+
}
|
125
|
+
|
126
|
+
service FriendMessages {
|
127
|
+
option (service_description) = "A service for relaying and logging friend messages (user-to-user chats and offline messaging)";
|
128
|
+
|
129
|
+
rpc GetRecentMessages (.CFriendMessages_GetRecentMessages_Request) returns (.CFriendMessages_GetRecentMessages_Response) {
|
130
|
+
option (method_description) = "Get a log of recent chat messages between two users";
|
131
|
+
}
|
132
|
+
|
133
|
+
rpc GetActiveMessageSessions (.CFriendsMessages_GetActiveMessageSessions_Request) returns (.CFriendsMessages_GetActiveMessageSessions_Response) {
|
134
|
+
option (method_description) = "Get information about recent offline messages and chats";
|
135
|
+
}
|
136
|
+
|
137
|
+
rpc SendMessage (.CFriendMessages_SendMessage_Request) returns (.CFriendMessages_SendMessage_Response) {
|
138
|
+
option (method_description) = "Send a chat message to a friend";
|
139
|
+
}
|
140
|
+
|
141
|
+
rpc AckMessage (.CFriendMessages_AckMessage_Notification) returns (.NoResponse) {
|
142
|
+
option (method_description) = "Acknowledge that we have seen the most recent message from a friend";
|
143
|
+
}
|
144
|
+
|
145
|
+
rpc IsInFriendsUIBeta (.CFriendMessages_IsInFriendsUIBeta_Request) returns (.CFriendMessages_IsInFriendsUIBeta_Response) {
|
146
|
+
option (method_description) = "See if a friend is in the friendsui beta.";
|
147
|
+
}
|
148
|
+
|
149
|
+
rpc UpdateMessageReaction (.CFriendMessages_UpdateMessageReaction_Request) returns (.CFriendMessages_UpdateMessageReaction_Response) {
|
150
|
+
option (method_description) = "Adds/removes a reaction to/from a friend message";
|
151
|
+
}
|
152
|
+
}
|
153
|
+
|
154
|
+
service FriendMessagesClient {
|
155
|
+
option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
|
156
|
+
|
157
|
+
rpc IncomingMessage (.CFriendMessages_IncomingMessage_Notification) returns (.NoResponse) {
|
158
|
+
option (method_description) = "New chat message from a friend.";
|
159
|
+
}
|
160
|
+
|
161
|
+
rpc NotifyAckMessageEcho (.CFriendMessages_AckMessage_Notification) returns (.NoResponse) {
|
162
|
+
option (method_description) = "A session acked an unread message, echo to other sessions.";
|
163
|
+
}
|
164
|
+
|
165
|
+
rpc MessageReaction (.CFriendMessages_MessageReaction_Notification) returns (.NoResponse) {
|
166
|
+
option (method_description) = "New message reaction from a friend.";
|
167
|
+
}
|
168
|
+
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import "steammessages_base.proto";
|
2
|
+
import "steammessages_unified_base.steamclient.proto";
|
3
|
+
|
4
|
+
option cc_generic_services = true;
|
5
|
+
|
6
|
+
message CGameNetworking_AllocateFakeIP_Request {
|
7
|
+
optional uint32 app_id = 1;
|
8
|
+
optional uint32 num_fake_ports = 2;
|
9
|
+
}
|
10
|
+
|
11
|
+
message CGameNetworking_AllocateFakeIP_Response {
|
12
|
+
optional fixed32 fake_ip = 1;
|
13
|
+
repeated uint32 fake_ports = 2;
|
14
|
+
}
|
15
|
+
|
16
|
+
message CGameNetworking_ReleaseFakeIP_Notification {
|
17
|
+
optional uint32 app_id = 1;
|
18
|
+
optional fixed32 fake_ip = 2;
|
19
|
+
repeated uint32 fake_ports = 3;
|
20
|
+
}
|
21
|
+
|
22
|
+
service GameNetworking {
|
23
|
+
option (service_description) = "Services that support P2P networking";
|
24
|
+
|
25
|
+
rpc AllocateFakeIP (.CGameNetworking_AllocateFakeIP_Request) returns (.CGameNetworking_AllocateFakeIP_Response) {
|
26
|
+
option (method_description) = "Client is asking to lease a FakeIP.";
|
27
|
+
}
|
28
|
+
|
29
|
+
rpc NotifyReleaseFakeIP (.CGameNetworking_ReleaseFakeIP_Notification) returns (.NoResponse) {
|
30
|
+
option (method_description) = "Client informs server it is done with the FakeIP.";
|
31
|
+
}
|
32
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import "steamnetworkingsockets_messages.proto";
|
2
|
+
import "steamdatagram_messages_sdr.proto";
|
3
|
+
|
4
|
+
option optimize_for = SPEED;
|
5
|
+
option cc_generic_services = true;
|
6
|
+
|
7
|
+
message CGameNetworkingUI_GlobalState {
|
8
|
+
}
|
9
|
+
|
10
|
+
message CGameNetworkingUI_ConnectionState {
|
11
|
+
optional string connection_key = 1;
|
12
|
+
optional uint32 appid = 2;
|
13
|
+
optional fixed32 connection_id_local = 3;
|
14
|
+
optional string identity_local = 4;
|
15
|
+
optional string identity_remote = 5;
|
16
|
+
optional uint32 connection_state = 10;
|
17
|
+
optional uint32 start_time = 12;
|
18
|
+
optional uint32 close_time = 13;
|
19
|
+
optional uint32 close_reason = 14;
|
20
|
+
optional string close_message = 15;
|
21
|
+
optional string status_loc_token = 16;
|
22
|
+
optional uint32 transport_kind = 20;
|
23
|
+
optional string sdrpopid_local = 21;
|
24
|
+
optional string sdrpopid_remote = 22;
|
25
|
+
optional string address_remote = 23;
|
26
|
+
optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing = 24;
|
27
|
+
optional uint32 ping_interior = 25;
|
28
|
+
optional uint32 ping_remote_front = 26;
|
29
|
+
optional uint32 ping_default_internet_route = 27;
|
30
|
+
optional .CMsgSteamDatagramConnectionQuality e2e_quality_local = 30;
|
31
|
+
optional .CMsgSteamDatagramConnectionQuality e2e_quality_remote = 31;
|
32
|
+
optional uint64 e2e_quality_remote_instantaneous_time = 32;
|
33
|
+
optional uint64 e2e_quality_remote_lifetime_time = 33;
|
34
|
+
optional .CMsgSteamDatagramConnectionQuality front_quality_local = 40;
|
35
|
+
optional .CMsgSteamDatagramConnectionQuality front_quality_remote = 41;
|
36
|
+
optional uint64 front_quality_remote_instantaneous_time = 42;
|
37
|
+
optional uint64 front_quality_remote_lifetime_time = 43;
|
38
|
+
}
|
39
|
+
|
40
|
+
message CGameNetworkingUI_Message {
|
41
|
+
repeated .CGameNetworkingUI_ConnectionState connection_state = 1;
|
42
|
+
}
|
@@ -0,0 +1,156 @@
|
|
1
|
+
import "steammessages_base.proto";
|
2
|
+
import "steammessages_unified_base.steamclient.proto";
|
3
|
+
|
4
|
+
option cc_generic_services = true;
|
5
|
+
|
6
|
+
message CGameNotifications_Variable {
|
7
|
+
optional string key = 1 [(description) = "The name of the variable in the localized text -- anywhere that %variablename% is found within the text it will be substituded with the given value"];
|
8
|
+
optional string value = 2 [(description) = "The value of the variable to substitute in the localized text in place of the given variable. Can itself be a localization token."];
|
9
|
+
}
|
10
|
+
|
11
|
+
message CGameNotifications_LocalizedText {
|
12
|
+
optional string token = 1 [(description) = "A localization token that maps to the desired string."];
|
13
|
+
repeated .CGameNotifications_Variable variables = 2 [(description) = "A list of variables values to substitute in any variables found in the localized string."];
|
14
|
+
optional string rendered_text = 3 [(description) = "Text rendered in the requested language, complete with variable substitutions, if a language was specified."];
|
15
|
+
}
|
16
|
+
|
17
|
+
message CGameNotifications_UserStatus {
|
18
|
+
optional fixed64 steamid = 1 [(description) = "The specific user's steamid."];
|
19
|
+
optional string state = 2 [(description) = "The user's state. ready -- the user is ready to play. waiting -- The game is waiting on an action from the user. completed, the game is over."];
|
20
|
+
optional .CGameNotifications_LocalizedText title = 3 [(description) = "Title of the session to display to this user in their list of active sessions."];
|
21
|
+
optional .CGameNotifications_LocalizedText message = 4 [(description) = "Subtitle of the session to display to this user user within their list of active sessions."];
|
22
|
+
}
|
23
|
+
|
24
|
+
message CGameNotifications_CreateSession_Request {
|
25
|
+
optional uint32 appid = 1 [(description) = "The appid to create the session for."];
|
26
|
+
optional uint64 context = 2 [(description) = "Game-specified context value the game can used to associate the session with some object on their backend."];
|
27
|
+
optional .CGameNotifications_LocalizedText title = 3 [(description) = "The title of the session to be displayed within each user's list of sessions."];
|
28
|
+
repeated .CGameNotifications_UserStatus users = 4 [(description) = "The initial state of all users in the session."];
|
29
|
+
optional fixed64 steamid = 5 [(description) = "(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user."];
|
30
|
+
}
|
31
|
+
|
32
|
+
message CGameNotifications_CreateSession_Response {
|
33
|
+
optional uint64 sessionid = 1 [(description) = "The sessionid of the created session."];
|
34
|
+
}
|
35
|
+
|
36
|
+
message CGameNotifications_DeleteSession_Request {
|
37
|
+
optional uint64 sessionid = 1 [(description) = "The sessionid to delete."];
|
38
|
+
optional uint32 appid = 2 [(description) = "The appid of the session to delete."];
|
39
|
+
optional fixed64 steamid = 3 [(description) = "(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session."];
|
40
|
+
}
|
41
|
+
|
42
|
+
message CGameNotifications_DeleteSession_Response {
|
43
|
+
}
|
44
|
+
|
45
|
+
message CGameNotifications_UpdateSession_Request {
|
46
|
+
optional uint64 sessionid = 1 [(description) = "The sessionid to update."];
|
47
|
+
optional uint32 appid = 2 [(description) = "The appid of the session to update."];
|
48
|
+
optional .CGameNotifications_LocalizedText title = 3 [(description) = "(Optional) The new title of the session. If not specified, the title will not be changed."];
|
49
|
+
repeated .CGameNotifications_UserStatus users = 4 [(description) = "(Optional) A list of users whose state will be updated to reflect the given state. If the users are not already in the session, they will be added to it."];
|
50
|
+
optional fixed64 steamid = 6 [(description) = "(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user."];
|
51
|
+
}
|
52
|
+
|
53
|
+
message CGameNotifications_UpdateSession_Response {
|
54
|
+
}
|
55
|
+
|
56
|
+
message CGameNotifications_EnumerateSessions_Request {
|
57
|
+
optional uint32 appid = 1 [(description) = "The sessionid to request details for. Optional. If not specified, all the user's sessions will be returned."];
|
58
|
+
optional bool include_all_user_messages = 3 [(description) = "(Optional) Boolean determining whether the message for all users should be included. Defaults to false."];
|
59
|
+
optional bool include_auth_user_message = 4 [(description) = "(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false."];
|
60
|
+
optional string language = 5 [(description) = "(Optional) Language to localize the text in."];
|
61
|
+
}
|
62
|
+
|
63
|
+
message CGameNotifications_Session {
|
64
|
+
optional uint64 sessionid = 1 [(description) = "The sessionid for this session."];
|
65
|
+
optional uint64 appid = 2 [(description) = "The appid for the session."];
|
66
|
+
optional uint64 context = 3 [(description) = "Game-specified context value the game can used to associate the session with some object on their backend."];
|
67
|
+
optional .CGameNotifications_LocalizedText title = 4 [(description) = "The current title for the session."];
|
68
|
+
optional uint32 time_created = 5 [(description) = "The time the session was created."];
|
69
|
+
optional uint32 time_updated = 6 [(description) = "The last time the session was updated."];
|
70
|
+
repeated .CGameNotifications_UserStatus user_status = 7 [(description) = "The status of all the users in the session."];
|
71
|
+
}
|
72
|
+
|
73
|
+
message CGameNotifications_EnumerateSessions_Response {
|
74
|
+
repeated .CGameNotifications_Session sessions = 1 [(description) = "A list of the user's sessions."];
|
75
|
+
}
|
76
|
+
|
77
|
+
message CGameNotifications_GetSessionDetails_Request {
|
78
|
+
message RequestedSession {
|
79
|
+
optional uint64 sessionid = 1 [(description) = "The sessionid to get details for."];
|
80
|
+
optional bool include_auth_user_message = 3 [(description) = "(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false."];
|
81
|
+
}
|
82
|
+
|
83
|
+
repeated .CGameNotifications_GetSessionDetails_Request.RequestedSession sessions = 1;
|
84
|
+
optional uint32 appid = 2 [(description) = "The appid for the sessions."];
|
85
|
+
optional string language = 3 [(description) = "Language to localize the text in."];
|
86
|
+
}
|
87
|
+
|
88
|
+
message CGameNotifications_GetSessionDetails_Response {
|
89
|
+
repeated .CGameNotifications_Session sessions = 1 [(description) = "The details of the session."];
|
90
|
+
}
|
91
|
+
|
92
|
+
message GameNotificationSettings {
|
93
|
+
optional uint32 appid = 1 [(description) = "The appid to create the session for."];
|
94
|
+
optional bool allow_notifications = 2 [(description) = "Whether the user allows notification for this app."];
|
95
|
+
}
|
96
|
+
|
97
|
+
message CGameNotifications_UpdateNotificationSettings_Request {
|
98
|
+
repeated .GameNotificationSettings game_notification_settings = 1;
|
99
|
+
}
|
100
|
+
|
101
|
+
message CGameNotifications_UpdateNotificationSettings_Response {
|
102
|
+
}
|
103
|
+
|
104
|
+
message CGameNotifications_OnNotificationsRequested_Notification {
|
105
|
+
optional fixed64 steamid = 1 [(description) = "steamid of the user who notifications were requested for."];
|
106
|
+
optional uint32 appid = 2 [(description) = "The appid that requested notifications."];
|
107
|
+
}
|
108
|
+
|
109
|
+
message CGameNotifications_OnUserStatusChanged_Notification {
|
110
|
+
optional fixed64 steamid = 1 [(description) = "steamid of the user whose status changed."];
|
111
|
+
optional uint64 sessionid = 2 [(description) = "The sessionid of the session where the user's status was changed."];
|
112
|
+
optional uint32 appid = 3 [(description) = "The appid of the session where the user's status changed."];
|
113
|
+
optional .CGameNotifications_UserStatus status = 4 [(description) = "(Optional) New status of the user."];
|
114
|
+
optional bool removed = 5 [(description) = "(Optional) User has been removed from the session."];
|
115
|
+
}
|
116
|
+
|
117
|
+
service GameNotifications {
|
118
|
+
option (service_description) = "A service for functions related to the asyncronous game notification server.";
|
119
|
+
|
120
|
+
rpc UserCreateSession (.CGameNotifications_CreateSession_Request) returns (.CGameNotifications_CreateSession_Response) {
|
121
|
+
option (method_description) = "Creates an async game session";
|
122
|
+
}
|
123
|
+
|
124
|
+
rpc UserDeleteSession (.CGameNotifications_DeleteSession_Request) returns (.CGameNotifications_DeleteSession_Response) {
|
125
|
+
option (method_description) = "Deletes an async game session";
|
126
|
+
}
|
127
|
+
|
128
|
+
rpc UserUpdateSession (.CGameNotifications_UpdateSession_Request) returns (.CGameNotifications_UpdateSession_Response) {
|
129
|
+
option (method_description) = "Updates an async game session";
|
130
|
+
}
|
131
|
+
|
132
|
+
rpc EnumerateSessions (.CGameNotifications_EnumerateSessions_Request) returns (.CGameNotifications_EnumerateSessions_Response) {
|
133
|
+
option (method_description) = "Enumerates a user's sessions";
|
134
|
+
}
|
135
|
+
|
136
|
+
rpc GetSessionDetails (.CGameNotifications_GetSessionDetails_Request) returns (.CGameNotifications_GetSessionDetails_Response) {
|
137
|
+
option (method_description) = "Get the details for a specific session";
|
138
|
+
}
|
139
|
+
|
140
|
+
rpc UpdateNotificationSettings (.CGameNotifications_UpdateNotificationSettings_Request) returns (.CGameNotifications_UpdateNotificationSettings_Response) {
|
141
|
+
option (method_description) = "Updates whether a user allows game notifications for a specific app";
|
142
|
+
}
|
143
|
+
}
|
144
|
+
|
145
|
+
service GameNotificationsClient {
|
146
|
+
option (service_description) = "Client notifications";
|
147
|
+
option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
|
148
|
+
|
149
|
+
rpc OnNotificationsRequested (.CGameNotifications_OnNotificationsRequested_Notification) returns (.NoResponse) {
|
150
|
+
option (method_description) = "Requests that the user opt into notifications";
|
151
|
+
}
|
152
|
+
|
153
|
+
rpc OnUserStatusChanged (.CGameNotifications_OnUserStatusChanged_Notification) returns (.NoResponse) {
|
154
|
+
option (method_description) = "Notification that the user's status has changed";
|
155
|
+
}
|
156
|
+
}
|
@@ -0,0 +1,152 @@
|
|
1
|
+
import "steammessages_base.proto";
|
2
|
+
import "steammessages_unified_base.steamclient.proto";
|
3
|
+
|
4
|
+
option cc_generic_services = true;
|
5
|
+
|
6
|
+
message CGameServers_GetServerList_Request {
|
7
|
+
optional string filter = 1 [(description) = "Query filter string."];
|
8
|
+
optional uint32 limit = 2 [default = 100, (description) = "The maximum number of servers to return in the response"];
|
9
|
+
}
|
10
|
+
|
11
|
+
message CGameServers_GetServerList_Response {
|
12
|
+
message Server {
|
13
|
+
optional string addr = 1 [(description) = "The server's IP and query port"];
|
14
|
+
optional uint32 gameport = 2;
|
15
|
+
optional uint32 specport = 3;
|
16
|
+
optional fixed64 steamid = 4;
|
17
|
+
optional string name = 5;
|
18
|
+
optional uint32 appid = 6;
|
19
|
+
optional string gamedir = 7;
|
20
|
+
optional string version = 8;
|
21
|
+
optional string product = 9;
|
22
|
+
optional int32 region = 10;
|
23
|
+
optional int32 players = 11;
|
24
|
+
optional int32 max_players = 12;
|
25
|
+
optional int32 bots = 13;
|
26
|
+
optional string map = 14;
|
27
|
+
optional bool secure = 15;
|
28
|
+
optional bool dedicated = 16;
|
29
|
+
optional string os = 17;
|
30
|
+
optional string gametype = 18;
|
31
|
+
}
|
32
|
+
|
33
|
+
repeated .CGameServers_GetServerList_Response.Server servers = 1 [(description) = "List of servers matching the filter"];
|
34
|
+
}
|
35
|
+
|
36
|
+
message CGameServers_GetServerSteamIDsByIP_Request {
|
37
|
+
repeated string server_ips = 1;
|
38
|
+
}
|
39
|
+
|
40
|
+
message CGameServers_IPsWithSteamIDs_Response {
|
41
|
+
message Server {
|
42
|
+
optional string addr = 1;
|
43
|
+
optional fixed64 steamid = 2;
|
44
|
+
}
|
45
|
+
|
46
|
+
repeated .CGameServers_IPsWithSteamIDs_Response.Server servers = 1;
|
47
|
+
}
|
48
|
+
|
49
|
+
message CGameServers_GetServerIPsBySteamID_Request {
|
50
|
+
repeated fixed64 server_steamids = 1;
|
51
|
+
}
|
52
|
+
|
53
|
+
message CGameServers_QueryByFakeIP_Request {
|
54
|
+
enum EQueryType {
|
55
|
+
Query_Invalid = 0;
|
56
|
+
Query_Ping = 1;
|
57
|
+
Query_Players = 2;
|
58
|
+
Query_Rules = 3;
|
59
|
+
}
|
60
|
+
|
61
|
+
optional uint32 fake_ip = 1 [(description) = "FakeIP of server to query."];
|
62
|
+
optional uint32 fake_port = 2 [(description) = "Fake port of server to query."];
|
63
|
+
optional uint32 app_id = 3 [(description) = "AppID to use. Each AppID has its own FakeIP address."];
|
64
|
+
optional .CGameServers_QueryByFakeIP_Request.EQueryType query_type = 4 [default = Query_Invalid, (description) = "What type of query?"];
|
65
|
+
}
|
66
|
+
|
67
|
+
message CMsgGameServerPingQueryData {
|
68
|
+
optional .CMsgIPAddress server_ip = 1;
|
69
|
+
optional uint32 query_port = 2;
|
70
|
+
optional uint32 game_port = 3;
|
71
|
+
optional uint32 spectator_port = 4;
|
72
|
+
optional string spectator_server_name = 5;
|
73
|
+
optional string server_name = 6;
|
74
|
+
optional fixed64 steamid = 7;
|
75
|
+
optional uint32 app_id = 8;
|
76
|
+
optional string gamedir = 9;
|
77
|
+
optional string map = 10;
|
78
|
+
optional string game_description = 11;
|
79
|
+
optional string gametype = 12;
|
80
|
+
optional uint32 num_players = 13;
|
81
|
+
optional uint32 max_players = 14;
|
82
|
+
optional uint32 num_bots = 15;
|
83
|
+
optional bool password = 16;
|
84
|
+
optional bool secure = 17;
|
85
|
+
optional bool dedicated = 18;
|
86
|
+
optional string version = 19;
|
87
|
+
optional fixed32 sdr_popid = 20;
|
88
|
+
optional string sdr_location_string = 21;
|
89
|
+
}
|
90
|
+
|
91
|
+
message CMsgGameServerPlayersQueryData {
|
92
|
+
message Player {
|
93
|
+
optional string name = 1;
|
94
|
+
optional uint32 score = 2;
|
95
|
+
optional uint32 time_played = 3;
|
96
|
+
}
|
97
|
+
|
98
|
+
repeated .CMsgGameServerPlayersQueryData.Player players = 1;
|
99
|
+
}
|
100
|
+
|
101
|
+
message CMsgGameServerRulesQueryData {
|
102
|
+
message Rule {
|
103
|
+
optional string rule = 1;
|
104
|
+
optional string value = 2;
|
105
|
+
}
|
106
|
+
|
107
|
+
repeated .CMsgGameServerRulesQueryData.Rule rules = 1;
|
108
|
+
}
|
109
|
+
|
110
|
+
message CGameServers_GameServerQuery_Response {
|
111
|
+
optional .CMsgGameServerPingQueryData ping_data = 1;
|
112
|
+
optional .CMsgGameServerPlayersQueryData players_data = 2;
|
113
|
+
optional .CMsgGameServerRulesQueryData rules_data = 3;
|
114
|
+
}
|
115
|
+
|
116
|
+
message GameServerClient_QueryServerData_Request {
|
117
|
+
}
|
118
|
+
|
119
|
+
message GameServerClient_QueryServerData_Response {
|
120
|
+
optional .CMsgGameServerPingQueryData ping_data = 1;
|
121
|
+
optional .CMsgGameServerPlayersQueryData players_data = 2;
|
122
|
+
optional .CMsgGameServerRulesQueryData rules_data = 3;
|
123
|
+
}
|
124
|
+
|
125
|
+
service GameServers {
|
126
|
+
option (service_description) = "A service for searching and managing game servers.";
|
127
|
+
|
128
|
+
rpc GetServerList (.CGameServers_GetServerList_Request) returns (.CGameServers_GetServerList_Response) {
|
129
|
+
option (method_description) = "Gets a list of servers given a filter string";
|
130
|
+
}
|
131
|
+
|
132
|
+
rpc GetServerSteamIDsByIP (.CGameServers_GetServerSteamIDsByIP_Request) returns (.CGameServers_IPsWithSteamIDs_Response) {
|
133
|
+
option (method_description) = "Gets a list of server SteamIDs given a list of IPs";
|
134
|
+
}
|
135
|
+
|
136
|
+
rpc GetServerIPsBySteamID (.CGameServers_GetServerIPsBySteamID_Request) returns (.CGameServers_IPsWithSteamIDs_Response) {
|
137
|
+
option (method_description) = "Gets a list of server IP addresses given a list of SteamIDs";
|
138
|
+
}
|
139
|
+
|
140
|
+
rpc QueryByFakeIP (.CGameServers_QueryByFakeIP_Request) returns (.CGameServers_GameServerQuery_Response) {
|
141
|
+
option (method_description) = "Perform a query on a specific server by FakeIP";
|
142
|
+
}
|
143
|
+
}
|
144
|
+
|
145
|
+
service GameServerClient {
|
146
|
+
option (service_description) = "Service methods exposed by GameServer Steam clients";
|
147
|
+
option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
|
148
|
+
|
149
|
+
rpc QueryServerData (.GameServerClient_QueryServerData_Request) returns (.GameServerClient_QueryServerData_Response) {
|
150
|
+
option (method_description) = "Steam is asking a gameserver for its data";
|
151
|
+
}
|
152
|
+
}
|