steamutils 1.4.36 → 1.4.38

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.
Files changed (243) hide show
  1. package/.idea/codeStyles/Project.xml +1 -0
  2. package/.idea/deployment.xml +14 -0
  3. package/.prettierrc.json +3 -3
  4. package/SteamClient.js +24 -22
  5. package/_steamproto.js +29 -29
  6. package/axios.js +84 -84
  7. package/bufferHelpers.js +115 -115
  8. package/cheerio.js +103 -103
  9. package/const.js +451 -451
  10. package/create_proto.js +47 -47
  11. package/create_remote_file.js +66 -66
  12. package/helpers/protos.js +52 -52
  13. package/package.json +1 -1
  14. package/protos/csgo/base_gcmessages.proto +553 -553
  15. package/protos/csgo/base_gcmessages_csgo.proto +547 -547
  16. package/protos/csgo/c_peer2peer_netmessages.proto +55 -55
  17. package/protos/csgo/clientmessages.proto +48 -48
  18. package/protos/csgo/connectionless_netmessages.proto +17 -17
  19. package/protos/csgo/cs_gameevents.proto +35 -35
  20. package/protos/csgo/cs_usercmd.proto +34 -34
  21. package/protos/csgo/cstrike15_gcmessages.proto +1431 -1431
  22. package/protos/csgo/cstrike15_usermessages.proto +592 -592
  23. package/protos/csgo/demo.proto +165 -165
  24. package/protos/csgo/econ_gcmessages.proto +219 -219
  25. package/protos/csgo/engine_gcmessages.proto +1 -1
  26. package/protos/csgo/enums_clientserver.proto +1529 -1529
  27. package/protos/csgo/fatdemo.proto +125 -125
  28. package/protos/csgo/gameevents.proto +120 -120
  29. package/protos/csgo/gcsdk_gcmessages.proto +323 -323
  30. package/protos/csgo/gcsystemmsgs.proto +243 -243
  31. package/protos/csgo/netmessages.proto +618 -618
  32. package/protos/csgo/network_connection.proto +1 -1
  33. package/protos/csgo/networkbasetypes.proto +246 -246
  34. package/protos/csgo/networksystem_protomessages.proto +17 -17
  35. package/protos/csgo/steamdatagram_messages_auth.proto +65 -65
  36. package/protos/csgo/steamdatagram_messages_sdr.proto +534 -534
  37. package/protos/csgo/steammessages.proto +1 -1
  38. package/protos/csgo/steammessages_base.proto +1 -1
  39. package/protos/csgo/steammessages_cloud.steamworkssdk.proto +68 -68
  40. package/protos/csgo/steammessages_gamenetworkingui.proto +61 -61
  41. package/protos/csgo/steammessages_helprequest.steamworkssdk.proto +22 -22
  42. package/protos/csgo/steammessages_oauth.steamworkssdk.proto +18 -18
  43. package/protos/csgo/steammessages_player.steamworkssdk.proto +254 -254
  44. package/protos/csgo/steammessages_publishedfile.steamworkssdk.proto +233 -233
  45. package/protos/csgo/steammessages_unified_base.steamworkssdk.proto +1 -1
  46. package/protos/csgo/steamnetworkingsockets_messages.proto +205 -205
  47. package/protos/csgo/steamnetworkingsockets_messages_certs.proto +39 -39
  48. package/protos/csgo/steamnetworkingsockets_messages_udp.proto +75 -75
  49. package/protos/csgo/te.proto +259 -259
  50. package/protos/csgo/uifontfile_format.proto +13 -13
  51. package/protos/csgo/usercmd.proto +39 -39
  52. package/protos/csgo/usermessages.proto +752 -752
  53. package/protos/csgo/valveextensions.proto +1 -1
  54. package/protos/google/protobuf/descriptor.proto +281 -281
  55. package/protos/steam/clientmetrics.proto +45 -45
  56. package/protos/steam/content_manifest.proto +62 -62
  57. package/protos/steam/contenthubs.proto +41 -41
  58. package/protos/steam/encrypted_app_ticket.proto +10 -10
  59. package/protos/steam/enums.proto +501 -501
  60. package/protos/steam/enums_clientserver.proto +1508 -1508
  61. package/protos/steam/enums_productinfo.proto +14 -14
  62. package/protos/steam/htmlmessages.proto +1039 -1039
  63. package/protos/steam/offline_ticket.proto +8 -8
  64. package/protos/steam/steamdatagram_messages_auth.proto +65 -65
  65. package/protos/steam/steamdatagram_messages_sdr.proto +533 -533
  66. package/protos/steam/steammessages_accounthardware.steamclient.proto +167 -167
  67. package/protos/steam/steammessages_appoverview.proto +204 -204
  68. package/protos/steam/steammessages_auth.steamclient.proto +375 -375
  69. package/protos/steam/steammessages_base.proto +1 -1
  70. package/protos/steam/steammessages_broadcast.steamclient.proto +618 -618
  71. package/protos/steam/steammessages_chat.steamclient.proto +1070 -1070
  72. package/protos/steam/steammessages_client_objects.proto +649 -649
  73. package/protos/steam/steammessages_clientlanp2p.proto +43 -43
  74. package/protos/steam/steammessages_clientmetrics.steamclient.proto +192 -192
  75. package/protos/steam/steammessages_clientnotificationtypes.proto +250 -250
  76. package/protos/steam/steammessages_clientserver.proto +392 -392
  77. package/protos/steam/steammessages_clientserver_2.proto +771 -771
  78. package/protos/steam/steammessages_clientserver_appinfo.proto +131 -131
  79. package/protos/steam/steammessages_clientserver_friends.proto +260 -260
  80. package/protos/steam/steammessages_clientserver_gameservers.proto +159 -159
  81. package/protos/steam/steammessages_clientserver_lbs.proto +70 -70
  82. package/protos/steam/steammessages_clientserver_login.proto +167 -167
  83. package/protos/steam/steammessages_clientserver_mms.proto +233 -233
  84. package/protos/steam/steammessages_clientserver_ucm.proto +207 -207
  85. package/protos/steam/steammessages_clientserver_uds.proto +125 -125
  86. package/protos/steam/steammessages_clientserver_ufs.proto +45 -45
  87. package/protos/steam/steammessages_clientserver_userstats.proto +80 -80
  88. package/protos/steam/steammessages_clientsettings.proto +1 -1
  89. package/protos/steam/steammessages_cloud.steamclient.proto +422 -422
  90. package/protos/steam/steammessages_contentsystem.steamclient.proto +123 -123
  91. package/protos/steam/steammessages_credentials.steamclient.proto +96 -96
  92. package/protos/steam/steammessages_datapublisher.steamclient.proto +102 -102
  93. package/protos/steam/steammessages_depotbuilder.steamclient.proto +99 -99
  94. package/protos/steam/steammessages_deviceauth.steamclient.proto +169 -169
  95. package/protos/steam/steammessages_econ.steamclient.proto +137 -137
  96. package/protos/steam/steammessages_familygroups.steamclient.proto +441 -441
  97. package/protos/steam/steammessages_friendmessages.steamclient.proto +141 -141
  98. package/protos/steam/steammessages_gamenetworking.steamclient.proto +25 -25
  99. package/protos/steam/steammessages_gamenetworkingui.proto +61 -61
  100. package/protos/steam/steammessages_gamenotifications.steamclient.proto +131 -131
  101. package/protos/steam/steammessages_gameservers.steamclient.proto +136 -136
  102. package/protos/steam/steammessages_hiddevices.proto +157 -157
  103. package/protos/steam/steammessages_inventory.steamclient.proto +172 -172
  104. package/protos/steam/steammessages_linkfilter.steamclient.proto +39 -39
  105. package/protos/steam/steammessages_lobbymatchmaking.steamclient.proto +29 -29
  106. package/protos/steam/steammessages_market.steamclient.proto +22 -22
  107. package/protos/steam/steammessages_marketingmessages.steamclient.proto +273 -273
  108. package/protos/steam/steammessages_offline.steamclient.proto +33 -33
  109. package/protos/steam/steammessages_parental.steamclient.proto +262 -262
  110. package/protos/steam/steammessages_parties.steamclient.proto +75 -75
  111. package/protos/steam/steammessages_partnerapps.steamclient.proto +106 -106
  112. package/protos/steam/steammessages_player.steamclient.proto +915 -915
  113. package/protos/steam/steammessages_publishedfile.steamclient.proto +737 -737
  114. package/protos/steam/steammessages_qms.steamclient.proto +111 -111
  115. package/protos/steam/steammessages_remoteclient.proto +100 -100
  116. package/protos/steam/steammessages_remoteclient_discovery.proto +244 -244
  117. package/protos/steam/steammessages_remoteclient_service.steamclient.proto +31 -31
  118. package/protos/steam/steammessages_remoteclient_service_messages.proto +217 -217
  119. package/protos/steam/steammessages_remoteplay.proto +975 -975
  120. package/protos/steam/steammessages_secrets.steamclient.proto +35 -35
  121. package/protos/steam/steammessages_shader.steamclient.proto +89 -89
  122. package/protos/steam/steammessages_site_license.steamclient.proto +103 -103
  123. package/protos/steam/steammessages_sitelicenseclient.proto +38 -38
  124. package/protos/steam/steammessages_siteserverui.proto +130 -130
  125. package/protos/steam/steammessages_steamtv.steamclient.proto +533 -533
  126. package/protos/steam/steammessages_store.steamclient.proto +404 -404
  127. package/protos/steam/steammessages_storebrowse.steamclient.proto +457 -457
  128. package/protos/steam/steammessages_timedtrial.steamclient.proto +40 -40
  129. package/protos/steam/steammessages_twofactor.steamclient.proto +157 -157
  130. package/protos/steam/steammessages_unified_base.steamclient.proto +1 -1
  131. package/protos/steam/steammessages_unified_test.steamclient.proto +51 -51
  132. package/protos/steam/steammessages_useraccount.steamclient.proto +211 -211
  133. package/protos/steam/steammessages_vac.steamclient.proto +37 -37
  134. package/protos/steam/steammessages_video.steamclient.proto +68 -68
  135. package/protos/steam/steammessages_virtualcontroller.proto +138 -138
  136. package/protos/steam/steammessages_workshop.steamclient.proto +19 -19
  137. package/protos/steam/steamnetworkingsockets_messages.proto +205 -205
  138. package/protos/steam/steamnetworkingsockets_messages_certs.proto +39 -39
  139. package/protos/steam/steamnetworkingsockets_messages_udp.proto +75 -75
  140. package/protos/steam/webuimessages_achievements.proto +29 -29
  141. package/protos/steam/webuimessages_base.proto +1 -1
  142. package/protos/steam/webuimessages_gamenotes.proto +21 -21
  143. package/protos/steam/webuimessages_gamescope.proto +57 -57
  144. package/protos/steam/webuimessages_steamengine.proto +41 -41
  145. package/protos/steam/webuimessages_steamos.proto +114 -114
  146. package/protos/steam/webuimessages_storagedevicemanager.proto +110 -110
  147. package/protos/steam/webuimessages_systemmanager.proto +17 -17
  148. package/protos/steam/webuimessages_transport.proto +22 -22
  149. package/protos/steam/webuimessages_transportvalidation.proto +111 -111
  150. package/protos/webui/common.proto +4024 -4024
  151. package/protos/webui/common_base.proto +1 -1
  152. package/protos/webui/service_accountcart.proto +153 -153
  153. package/protos/webui/service_accountlinking.proto +27 -27
  154. package/protos/webui/service_accountprivacy.proto +42 -42
  155. package/protos/webui/service_accountprivateapps.proto +34 -34
  156. package/protos/webui/service_auction.proto +97 -97
  157. package/protos/webui/service_authentication.proto +222 -222
  158. package/protos/webui/service_authenticationsupport.proto +74 -74
  159. package/protos/webui/service_broadcast.proto +562 -562
  160. package/protos/webui/service_chat.proto +11 -11
  161. package/protos/webui/service_chatroom.proto +810 -810
  162. package/protos/webui/service_chatusability.proto +107 -107
  163. package/protos/webui/service_checkout.proto +84 -84
  164. package/protos/webui/service_clan.proto +41 -41
  165. package/protos/webui/service_clanchatrooms.proto +25 -25
  166. package/protos/webui/service_clanfaqs.proto +202 -202
  167. package/protos/webui/service_clientcomm.proto +151 -151
  168. package/protos/webui/service_clientmetrics.proto +22 -22
  169. package/protos/webui/service_cloud.proto +222 -222
  170. package/protos/webui/service_cloudconfigstore.proto +51 -51
  171. package/protos/webui/service_cloudgaming.proto +30 -30
  172. package/protos/webui/service_community.proto +365 -365
  173. package/protos/webui/service_dailydeal.proto +89 -89
  174. package/protos/webui/service_econ.proto +134 -134
  175. package/protos/webui/service_embedded.proto +24 -24
  176. package/protos/webui/service_experimentservice.proto +6 -6
  177. package/protos/webui/service_familygroups.proto +355 -355
  178. package/protos/webui/service_fovasvideo.proto +15 -15
  179. package/protos/webui/service_friendmessages.proto +133 -133
  180. package/protos/webui/service_friendslist.proto +70 -70
  181. package/protos/webui/service_gamenotes.proto +15 -15
  182. package/protos/webui/service_gamerecording.proto +265 -265
  183. package/protos/webui/service_gamerecordingclip.proto +85 -85
  184. package/protos/webui/service_gamerecordingdebug.proto +52 -52
  185. package/protos/webui/service_helprequestlogs.proto +16 -16
  186. package/protos/webui/service_loyaltyrewards.proto +252 -252
  187. package/protos/webui/service_marketingmessages.proto +215 -215
  188. package/protos/webui/service_mobileapp.proto +18 -18
  189. package/protos/webui/service_mobileauth.proto +24 -24
  190. package/protos/webui/service_mobiledevice.proto +26 -26
  191. package/protos/webui/service_mobileperaccount.proto +31 -31
  192. package/protos/webui/service_news.proto +110 -110
  193. package/protos/webui/service_parental.proto +258 -258
  194. package/protos/webui/service_partnermembershipinvite.proto +34 -34
  195. package/protos/webui/service_partnerstorebrowse.proto +28 -28
  196. package/protos/webui/service_phone.proto +51 -51
  197. package/protos/webui/service_physicalgoods.proto +15 -15
  198. package/protos/webui/service_player.proto +918 -918
  199. package/protos/webui/service_promotioneventinvites.proto +109 -109
  200. package/protos/webui/service_promotionplanning.proto +186 -186
  201. package/protos/webui/service_promotionstats.proto +23 -23
  202. package/protos/webui/service_publishedfile.proto +714 -714
  203. package/protos/webui/service_publishing.proto +200 -200
  204. package/protos/webui/service_quest.proto +127 -127
  205. package/protos/webui/service_salefeature.proto +373 -373
  206. package/protos/webui/service_saleitemrewards.proto +54 -54
  207. package/protos/webui/service_shoppingcart.proto +152 -152
  208. package/protos/webui/service_steamawards.proto +76 -76
  209. package/protos/webui/service_steamcharts.proto +75 -75
  210. package/protos/webui/service_steamengine.proto +36 -36
  211. package/protos/webui/service_steamlearn.proto +876 -876
  212. package/protos/webui/service_steamnotification.proto +73 -73
  213. package/protos/webui/service_steamtv.proto +495 -495
  214. package/protos/webui/service_steamvrvoicechat.proto +67 -67
  215. package/protos/webui/service_steamvrwebrtc.proto +48 -48
  216. package/protos/webui/service_storagedevicemanager.proto +104 -104
  217. package/protos/webui/service_store.proto +359 -359
  218. package/protos/webui/service_storeappsimilarity.proto +76 -76
  219. package/protos/webui/service_storebrowse.proto +103 -103
  220. package/protos/webui/service_storemarketing.proto +44 -44
  221. package/protos/webui/service_storequery.proto +103 -103
  222. package/protos/webui/service_storesales.proto +87 -87
  223. package/protos/webui/service_storetopsellers.proto +44 -44
  224. package/protos/webui/service_systemmanager.proto +11 -11
  225. package/protos/webui/service_test_transporterror.proto +6 -6
  226. package/protos/webui/service_transportauth.proto +17 -17
  227. package/protos/webui/service_transportvalidation.proto +69 -69
  228. package/protos/webui/service_twofactor.proto +170 -170
  229. package/protos/webui/service_useraccount.proto +142 -142
  230. package/protos/webui/service_usergameactivity.proto +34 -34
  231. package/protos/webui/service_usergamenotes.proto +70 -70
  232. package/protos/webui/service_usernews.proto +68 -68
  233. package/protos/webui/service_userreviews.proto +97 -97
  234. package/protos/webui/service_video.proto +50 -50
  235. package/protos/webui/service_videoclip.proto +62 -62
  236. package/protos/webui/service_voicechat.proto +139 -139
  237. package/protos/webui/service_webrtc.proto +52 -52
  238. package/remote.js +6784 -6784
  239. package/steamproto.js +6159 -6159
  240. package/utils.js +872 -872
  241. package/.idea/gbrowser_project.xml +0 -11
  242. package/.idea/git_toolbox_blame.xml +0 -6
  243. package/.idea/git_toolbox_prj.xml +0 -15
@@ -1,534 +1,534 @@
1
- import "steamnetworkingsockets_messages_certs.proto";
2
- import "steamnetworkingsockets_messages.proto";
3
-
4
- option optimize_for = SPEED;
5
- option cc_generic_services = false;
6
-
7
- enum ESteamDatagramMsgID {
8
- k_ESteamDatagramMsg_Invalid = 0;
9
- k_ESteamDatagramMsg_RouterPingRequest = 1;
10
- k_ESteamDatagramMsg_RouterPingReply = 2;
11
- k_ESteamDatagramMsg_GameserverPingRequest = 3;
12
- k_ESteamDatagramMsg_GameserverSessionRequest = 5;
13
- k_ESteamDatagramMsg_GameserverSessionEstablished = 6;
14
- k_ESteamDatagramMsg_NoSession = 7;
15
- k_ESteamDatagramMsg_Diagnostic = 8;
16
- k_ESteamDatagramMsg_DataClientToRouter = 9;
17
- k_ESteamDatagramMsg_DataRouterToServer = 10;
18
- k_ESteamDatagramMsg_DataServerToRouter = 11;
19
- k_ESteamDatagramMsg_DataRouterToClient = 12;
20
- k_ESteamDatagramMsg_Stats = 13;
21
- k_ESteamDatagramMsg_ClientPingSampleRequest = 14;
22
- k_ESteamDatagramMsg_ClientPingSampleReply = 15;
23
- k_ESteamDatagramMsg_ClientToRouterSwitchedPrimary = 16;
24
- k_ESteamDatagramMsg_RelayHealth = 17;
25
- k_ESteamDatagramMsg_ConnectRequest = 18;
26
- k_ESteamDatagramMsg_ConnectOK = 19;
27
- k_ESteamDatagramMsg_ConnectionClosed = 20;
28
- k_ESteamDatagramMsg_NoConnection = 21;
29
- k_ESteamDatagramMsg_TicketDecryptRequest = 22;
30
- k_ESteamDatagramMsg_TicketDecryptReply = 23;
31
- k_ESteamDatagramMsg_P2PSessionRequest = 24;
32
- k_ESteamDatagramMsg_P2PSessionEstablished = 25;
33
- k_ESteamDatagramMsg_P2PStatsClient = 26;
34
- k_ESteamDatagramMsg_P2PStatsRelay = 27;
35
- k_ESteamDatagramMsg_P2PBadRoute = 28;
36
- k_ESteamDatagramMsg_GameserverPingReply = 29;
37
- k_ESteamDatagramMsg_LegacyGameserverRegistration = 30;
38
- k_ESteamDatagramMsg_SetSecondaryAddressRequest = 31;
39
- k_ESteamDatagramMsg_SetSecondaryAddressResult = 32;
40
- k_ESteamDatagramMsg_RelayToRelayPingRequest = 33;
41
- k_ESteamDatagramMsg_RelayToRelayPingReply = 34;
42
- }
43
-
44
- message CMsgSteamNetworkingIPAddress {
45
- optional fixed32 v4 = 1;
46
- optional bytes v6 = 2;
47
- }
48
-
49
- message CMsgSteamDatagramSignedMessageGeneric {
50
- optional .CMsgSteamDatagramCertificateSigned cert = 1;
51
- optional bytes signed_data = 2;
52
- optional bytes signature = 3;
53
- optional bytes dummy_pad = 1023;
54
- }
55
-
56
- message CMsgSteamDatagramRouterPingReply {
57
- message RouteException {
58
- optional fixed32 data_center_id = 1;
59
- optional uint32 flags = 2;
60
- optional uint32 penalty = 3;
61
- }
62
-
63
- message AltAddress {
64
- enum Protocol {
65
- DefaultProtocol = 0;
66
- NetworkNext = 1;
67
- }
68
-
69
- optional fixed32 ipv4 = 1;
70
- optional uint32 port = 2;
71
- optional uint32 penalty = 3;
72
- optional .CMsgSteamDatagramRouterPingReply.AltAddress.Protocol protocol = 4 [default = DefaultProtocol];
73
- optional string id = 5;
74
- }
75
-
76
- enum Flags {
77
- FLAG_MAYBE_MORE_DATA_CENTERS = 1;
78
- FLAG_MAYBE_MORE_ALT_ADDRESSES = 2;
79
- }
80
-
81
- optional fixed32 client_timestamp = 1;
82
- repeated fixed32 latency_datacenter_ids = 2 [packed = true];
83
- repeated uint32 latency_ping_ms = 3 [packed = true];
84
- repeated fixed32 latency_datacenter_ids_p2p = 14 [packed = true];
85
- repeated uint32 latency_ping_ms_p2p = 15 [packed = true];
86
- optional fixed32 your_public_ip = 4;
87
- optional fixed32 your_public_port = 11;
88
- optional fixed32 server_time = 5;
89
- optional fixed64 challenge = 6;
90
- optional uint32 seconds_until_shutdown = 7;
91
- optional fixed32 client_cookie = 8;
92
- optional uint32 scoring_penalty_relay_cluster = 9;
93
- optional uint32 flags = 12;
94
- repeated .CMsgSteamDatagramRouterPingReply.RouteException route_exceptions = 10;
95
- repeated .CMsgSteamDatagramRouterPingReply.AltAddress alt_addresses = 13;
96
- optional bytes dummy_pad = 99;
97
- }
98
-
99
- message CMsgSteamDatagramGameserverPingRequestBody {
100
- optional fixed32 relay_popid = 1;
101
- optional .CMsgSteamNetworkingIPAddress your_public_ip = 2;
102
- optional uint32 your_public_port = 3;
103
- optional uint64 relay_unix_time = 4;
104
- optional fixed64 routing_secret = 5;
105
- repeated .CMsgSteamNetworkingIPAddress my_ips = 6;
106
- optional bytes echo = 8;
107
- }
108
-
109
- message CMsgSteamDatagramGameserverPingRequestEnvelope {
110
- optional .CMsgSteamDatagramCertificateSigned cert = 6;
111
- optional bytes signed_data = 7;
112
- optional bytes signature = 8;
113
- optional fixed32 legacy_your_public_ip = 1;
114
- optional fixed32 legacy_your_public_port = 5;
115
- optional fixed32 legacy_relay_unix_time = 2;
116
- optional fixed64 legacy_challenge = 3;
117
- optional fixed32 legacy_router_timestamp = 4;
118
- optional bytes dummy_pad = 1023;
119
- }
120
-
121
- message CMsgSteamDatagramGameserverPingReplyData {
122
- optional fixed32 echo_relay_unix_time = 2;
123
- optional bytes echo = 8;
124
- optional fixed64 legacy_challenge = 3;
125
- optional fixed32 legacy_router_timestamp = 4;
126
- optional fixed32 data_center_id = 5;
127
- optional uint32 appid = 6;
128
- optional uint32 protocol_version = 7;
129
- optional string build = 9;
130
- optional uint64 network_config_version = 10;
131
- optional fixed32 my_unix_time = 11;
132
- optional bytes routing_blob = 12;
133
- }
134
-
135
- message CMsgSteamDatagramNoSessionRelayToClient {
136
- optional fixed32 connection_id = 7;
137
- optional fixed32 your_public_ip = 2;
138
- optional fixed32 your_public_port = 6;
139
- optional fixed32 server_time = 3;
140
- optional fixed64 challenge = 4;
141
- optional uint32 seconds_until_shutdown = 5;
142
- }
143
-
144
- message CMsgSteamDatagramNoSessionRelayToPeer {
145
- optional uint32 legacy_relay_session_id = 1;
146
- optional fixed32 from_relay_session_id = 2;
147
- optional fixed32 from_connection_id = 7;
148
- optional fixed64 kludge_pad = 99;
149
- }
150
-
151
- message CMsgSteamDatagramClientPingSampleRequest {
152
- optional fixed32 connection_id = 1;
153
- }
154
-
155
- message CMsgSteamDatagramClientPingSampleReply {
156
- message POP {
157
- message AltAddress {
158
- optional string id = 1;
159
- optional uint32 front_ping_ms = 2;
160
- optional uint32 penalty = 3;
161
- }
162
-
163
- optional fixed32 pop_id = 1;
164
- optional uint32 default_front_ping_ms = 2;
165
- optional uint32 cluster_penalty = 4;
166
- repeated .CMsgSteamDatagramClientPingSampleReply.POP.AltAddress alt_addresses = 7;
167
- optional uint32 default_e2e_ping_ms = 3;
168
- optional uint32 default_e2e_score = 5;
169
- optional fixed32 p2p_via_peer_relay_pop_id = 6;
170
- optional uint32 best_dc_ping_ms = 9;
171
- optional uint32 best_dc_score = 10;
172
- optional fixed32 best_dc_via_relay_pop_id = 11;
173
- optional uint32 default_dc_ping_ms = 12;
174
- optional uint32 default_dc_score = 13;
175
- optional fixed32 default_dc_via_relay_pop_id = 14;
176
- optional uint32 test_dc_ping_ms = 15;
177
- optional uint32 test_dc_score = 16;
178
- optional fixed32 test_dc_via_relay_pop_id = 17;
179
- }
180
-
181
- message LegacyDataCenter {
182
- optional fixed32 data_center_id = 1;
183
- optional fixed32 best_dc_via_relay_pop_id = 2;
184
- optional uint32 best_dc_ping_ms = 3;
185
- }
186
-
187
- optional fixed32 connection_id = 1;
188
- optional bool relay_override_active = 5;
189
- repeated .CMsgSteamDatagramClientPingSampleReply.POP pops = 2;
190
- repeated .CMsgSteamDatagramClientPingSampleReply.LegacyDataCenter legacy_data_centers = 3;
191
- }
192
-
193
- message CMsgSteamDatagramClientSwitchedPrimary {
194
- message RouterQuality {
195
- optional uint32 score = 1;
196
- optional uint32 front_ping = 2;
197
- optional uint32 back_ping = 3;
198
- optional uint32 seconds_until_down = 4;
199
- }
200
-
201
- optional fixed32 connection_id = 1;
202
- optional fixed32 from_ip = 2;
203
- optional uint32 from_port = 3;
204
- optional fixed32 from_router_cluster = 4;
205
- optional uint32 from_active_time = 5;
206
- optional uint32 from_active_packets_recv = 6;
207
- optional string from_dropped_reason = 7;
208
- optional uint32 gap_ms = 8;
209
- optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality from_quality_now = 9;
210
- optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality to_quality_now = 10;
211
- optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality from_quality_then = 11;
212
- optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality to_quality_then = 12;
213
- }
214
-
215
- message CMsgSteamDatagramConnectRequest {
216
- optional fixed32 connection_id = 1;
217
- optional fixed64 my_timestamp = 4;
218
- optional uint32 ping_est_ms = 5;
219
- optional uint32 virtual_port = 9;
220
- optional uint32 gameserver_relay_session_id = 2;
221
- optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
222
- optional .CMsgSteamDatagramCertificateSigned cert = 7;
223
- optional fixed64 routing_secret = 10;
224
- optional fixed64 legacy_client_steam_id = 3;
225
- }
226
-
227
- message CMsgSteamDatagramConnectOK {
228
- optional fixed32 client_connection_id = 1;
229
- optional fixed32 server_connection_id = 7;
230
- optional fixed64 your_timestamp = 3;
231
- optional uint32 delay_time_usec = 4;
232
- optional uint32 gameserver_relay_session_id = 2;
233
- optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
234
- optional .CMsgSteamDatagramCertificateSigned cert = 6;
235
- }
236
-
237
- message CMsgSteamNetworkingP2PSDRRoutingSummary {
238
- optional uint32 initial_ping = 1;
239
- optional uint32 initial_ping_front_local = 2;
240
- optional uint32 initial_ping_front_remote = 3;
241
- optional uint32 initial_score = 4;
242
- optional fixed32 initial_pop_local = 5;
243
- optional fixed32 initial_pop_remote = 6;
244
- optional uint32 best_ping = 11;
245
- optional uint32 best_ping_front_local = 12;
246
- optional uint32 best_ping_front_remote = 13;
247
- optional uint32 best_score = 14;
248
- optional fixed32 best_pop_local = 15;
249
- optional fixed32 best_pop_remote = 16;
250
- optional uint32 best_time = 17;
251
- optional uint32 negotiation_ms = 7;
252
- optional uint32 selected_seconds = 8;
253
- }
254
-
255
- message CMsgSteamDatagramP2PRoutingSummary {
256
- optional .CMsgSteamNetworkingICESessionSummary ice = 2;
257
- optional .CMsgSteamNetworkingP2PSDRRoutingSummary sdr = 3;
258
- }
259
-
260
- message CMsgSteamDatagramConnectionClosed {
261
- enum ERelayMode {
262
- None = 0;
263
- EndToEnd = 1;
264
- ClosedByPeer = 2;
265
- }
266
-
267
- optional fixed32 to_connection_id = 7;
268
- optional fixed32 from_connection_id = 8;
269
- optional string from_identity_string = 15;
270
- optional .CMsgSteamNetworkingIdentityLegacyBinary legacy_from_identity_binary = 13;
271
- optional fixed64 legacy_from_steam_id = 3;
272
- optional uint32 legacy_gameserver_relay_session_id = 2;
273
- optional fixed32 to_relay_session_id = 9;
274
- optional fixed32 from_relay_session_id = 10;
275
- optional bytes forward_target_relay_routing_token = 11;
276
- optional uint32 forward_target_revision = 12;
277
- optional .CMsgSteamDatagramConnectionClosed.ERelayMode relay_mode = 4 [default = None];
278
- optional string debug = 5;
279
- optional uint32 reason_code = 6;
280
- optional fixed64 routing_secret = 14;
281
- optional bool not_primary_session = 16;
282
- optional bool not_primary_transport = 19;
283
- optional bool relay_override_active = 22;
284
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 17;
285
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 18;
286
- optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 21;
287
- }
288
-
289
- message CMsgSteamDatagramNoConnection {
290
- optional fixed32 to_connection_id = 5;
291
- optional fixed32 from_connection_id = 6;
292
- optional uint32 legacy_gameserver_relay_session_id = 2;
293
- optional fixed32 to_relay_session_id = 9;
294
- optional fixed32 from_relay_session_id = 10;
295
- optional string from_identity_string = 7;
296
- optional fixed64 legacy_from_steam_id = 3;
297
- optional bool end_to_end = 4;
298
- optional bool not_primary_session = 12;
299
- optional bool not_primary_transport = 15;
300
- optional bool relay_override_active = 17;
301
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 13;
302
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 14;
303
- optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 16;
304
- optional fixed64 routing_secret = 11;
305
- optional fixed32 dummy_pad = 1023;
306
- }
307
-
308
- message CMsgSteamDatagramGameserverSessionRequest {
309
- optional bytes ticket = 1;
310
- optional fixed32 challenge_time = 3;
311
- optional fixed64 challenge = 4;
312
- optional fixed32 client_connection_id = 5;
313
- optional fixed32 server_connection_id = 8;
314
- optional uint64 network_config_version = 6;
315
- optional uint32 protocol_version = 7;
316
- optional string platform = 9;
317
- optional string build = 10;
318
- optional string dev_gameserver_identity = 100;
319
- optional .CMsgSteamDatagramCertificateSigned dev_client_cert = 101;
320
- }
321
-
322
- message CMsgSteamDatagramGameserverSessionEstablished {
323
- optional fixed32 connection_id = 1;
324
- optional string gameserver_identity_string = 2;
325
- optional uint32 seconds_until_shutdown = 4;
326
- optional uint32 seq_num_r2c = 6;
327
- optional bytes dummy_legacy_identity_binary = 7;
328
- optional fixed64 legacy_gameserver_steamid = 3;
329
- }
330
-
331
- message CMsgSteamDatagramConnectionStatsClientToRouter {
332
- enum Flags {
333
- ACK_REQUEST_RELAY = 1;
334
- ACK_REQUEST_E2E = 2;
335
- ACK_REQUEST_IMMEDIATE = 4;
336
- NOT_PRIMARY_SESSION = 8;
337
- CLIENT_RELAY_OVERRIDE = 32;
338
- }
339
-
340
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
341
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
342
- repeated fixed32 ack_relay = 4;
343
- repeated fixed32 legacy_ack_e2e = 5;
344
- optional uint32 flags = 6;
345
- optional fixed32 client_connection_id = 8;
346
- optional uint32 seq_num_c2r = 9;
347
- optional uint32 seq_num_e2e = 10;
348
- }
349
-
350
- message CMsgSteamDatagramConnectionStatsRouterToClient {
351
- enum Flags {
352
- ACK_REQUEST_RELAY = 1;
353
- ACK_REQUEST_E2E = 2;
354
- ACK_REQUEST_IMMEDIATE = 4;
355
- }
356
-
357
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
358
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
359
- optional uint32 seconds_until_shutdown = 6;
360
- optional fixed32 migrate_request_ip = 10;
361
- optional uint32 migrate_request_port = 11;
362
- optional uint32 scoring_penalty_relay_cluster = 12;
363
- repeated fixed32 ack_relay = 13;
364
- repeated fixed32 legacy_ack_e2e = 14;
365
- optional uint32 flags = 15;
366
- optional fixed32 client_connection_id = 7;
367
- optional uint32 seq_num_r2c = 8;
368
- optional uint32 seq_num_e2e = 9;
369
- }
370
-
371
- message CMsgSteamDatagramConnectionStatsRouterToServer {
372
- enum Flags {
373
- ACK_REQUEST_RELAY = 1;
374
- ACK_REQUEST_E2E = 2;
375
- ACK_REQUEST_IMMEDIATE = 4;
376
- }
377
-
378
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
379
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
380
- repeated fixed32 ack_relay = 10;
381
- repeated fixed32 legacy_ack_e2e = 11;
382
- optional uint32 flags = 12;
383
- optional uint32 seq_num_r2s = 5;
384
- optional uint32 seq_num_e2e = 6;
385
- optional string client_identity_string = 15;
386
- optional fixed64 legacy_client_steam_id = 7;
387
- optional uint32 relay_session_id = 8;
388
- optional fixed32 client_connection_id = 9;
389
- optional fixed32 server_connection_id = 13;
390
- optional fixed64 routing_secret = 14;
391
- }
392
-
393
- message CMsgSteamDatagramConnectionStatsServerToRouter {
394
- enum Flags {
395
- ACK_REQUEST_RELAY = 1;
396
- ACK_REQUEST_E2E = 2;
397
- ACK_REQUEST_IMMEDIATE = 4;
398
- }
399
-
400
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
401
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
402
- repeated fixed32 ack_relay = 8;
403
- repeated fixed32 legacy_ack_e2e = 9;
404
- optional uint32 flags = 10;
405
- optional uint32 seq_num_s2r = 3;
406
- optional uint32 seq_num_e2e = 4;
407
- optional uint32 relay_session_id = 6;
408
- optional fixed32 client_connection_id = 7;
409
- optional fixed32 server_connection_id = 11;
410
- }
411
-
412
- message CMsgSteamDatagramP2PSessionRequestBody {
413
- message EncryptedData {
414
- optional string peer_identity_string = 1;
415
- }
416
-
417
- optional fixed32 challenge_time = 1;
418
- optional fixed64 challenge = 2;
419
- optional fixed32 client_connection_id = 3;
420
- optional fixed64 legacy_peer_steam_id = 4;
421
- optional string peer_identity_string = 11;
422
- optional fixed32 peer_connection_id = 5;
423
- optional bytes encrypted_data = 14;
424
- optional uint32 encryption_your_public_key_lead_byte = 15;
425
- optional bytes encryption_my_ephemeral_public_key = 16;
426
- optional uint32 protocol_version = 8;
427
- optional uint64 network_config_version = 9;
428
- optional string platform = 12;
429
- optional string build = 13;
430
- }
431
-
432
- message CMsgSteamDatagramP2PSessionRequest {
433
- optional .CMsgSteamDatagramCertificateSigned cert = 1;
434
- optional bytes body = 2;
435
- optional bytes signature = 3;
436
- }
437
-
438
- message CMsgSteamDatagramP2PSessionEstablished {
439
- optional fixed32 connection_id = 1;
440
- optional uint32 seconds_until_shutdown = 3;
441
- optional bytes relay_routing_token = 4;
442
- optional uint32 seq_num_r2c = 5;
443
- }
444
-
445
- message CMsgSteamDatagramConnectionStatsP2PClientToRouter {
446
- enum Flags {
447
- ACK_REQUEST_RELAY = 1;
448
- ACK_REQUEST_E2E = 2;
449
- ACK_REQUEST_IMMEDIATE = 4;
450
- NOT_PRIMARY_SESSION = 8;
451
- NOT_PRIMARY_TRANSPORT_E2E = 16;
452
- CLIENT_RELAY_OVERRIDE = 32;
453
- }
454
-
455
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
456
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
457
- optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 14;
458
- repeated fixed32 ack_relay = 3;
459
- repeated fixed32 legacy_ack_e2e = 4;
460
- optional uint32 flags = 5;
461
- optional bytes forward_target_relay_routing_token = 6;
462
- optional uint32 forward_target_revision = 7;
463
- optional bytes routes = 8;
464
- optional uint32 ack_peer_routes_revision = 9;
465
- optional fixed32 connection_id = 10;
466
- optional uint32 seq_num_c2r = 11;
467
- optional uint32 seq_num_e2e = 12;
468
- }
469
-
470
- message CMsgSteamDatagramConnectionStatsP2PRouterToClient {
471
- enum Flags {
472
- ACK_REQUEST_RELAY = 1;
473
- ACK_REQUEST_E2E = 2;
474
- ACK_REQUEST_IMMEDIATE = 4;
475
- NOT_PRIMARY_TRANSPORT_E2E = 16;
476
- }
477
-
478
- optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
479
- optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
480
- optional uint32 seconds_until_shutdown = 3;
481
- optional fixed32 migrate_request_ip = 4;
482
- optional uint32 migrate_request_port = 5;
483
- optional uint32 scoring_penalty_relay_cluster = 6;
484
- repeated fixed32 ack_relay = 7;
485
- repeated fixed32 legacy_ack_e2e = 8;
486
- optional uint32 flags = 9;
487
- optional uint32 ack_forward_target_revision = 10;
488
- optional bytes routes = 11;
489
- optional uint32 ack_peer_routes_revision = 12;
490
- optional fixed32 connection_id = 13;
491
- optional uint32 seq_num_r2c = 14;
492
- optional uint32 seq_num_e2e = 15;
493
- }
494
-
495
- message CMsgSteamDatagramP2PBadRouteRouterToClient {
496
- optional fixed32 connection_id = 1;
497
- optional bytes failed_relay_routing_token = 2;
498
- optional uint32 ack_forward_target_revision = 3;
499
- optional fixed64 kludge_pad = 99;
500
- }
501
-
502
- message CMsgSteamDatagramP2PRoutes {
503
- message RelayCluster {
504
- optional fixed32 pop_id = 1;
505
- optional uint32 ping_ms = 2;
506
- optional uint32 score_penalty = 3;
507
- optional bytes session_relay_routing_token = 4;
508
- }
509
-
510
- message Route {
511
- optional fixed32 my_pop_id = 1;
512
- optional fixed32 your_pop_id = 2;
513
- optional uint32 legacy_score = 3;
514
- optional uint32 interior_score = 4;
515
- }
516
-
517
- repeated .CMsgSteamDatagramP2PRoutes.RelayCluster relay_clusters = 1;
518
- repeated .CMsgSteamDatagramP2PRoutes.Route routes = 2;
519
- optional uint32 revision = 3;
520
- }
521
-
522
- message CMsgSteamDatagramSetSecondaryAddressRequest {
523
- optional fixed32 client_main_ip = 1;
524
- optional fixed32 client_main_port = 2;
525
- optional fixed32 client_connection_id = 3;
526
- optional string client_identity = 4;
527
- optional bool request_send_duplication = 5;
528
- optional bytes kludge_pad = 99;
529
- }
530
-
531
- message CMsgSteamDatagramSetSecondaryAddressResult {
532
- optional bool success = 1;
533
- optional string message = 2;
534
- }
1
+ import "steamnetworkingsockets_messages_certs.proto";
2
+ import "steamnetworkingsockets_messages.proto";
3
+
4
+ option optimize_for = SPEED;
5
+ option cc_generic_services = false;
6
+
7
+ enum ESteamDatagramMsgID {
8
+ k_ESteamDatagramMsg_Invalid = 0;
9
+ k_ESteamDatagramMsg_RouterPingRequest = 1;
10
+ k_ESteamDatagramMsg_RouterPingReply = 2;
11
+ k_ESteamDatagramMsg_GameserverPingRequest = 3;
12
+ k_ESteamDatagramMsg_GameserverSessionRequest = 5;
13
+ k_ESteamDatagramMsg_GameserverSessionEstablished = 6;
14
+ k_ESteamDatagramMsg_NoSession = 7;
15
+ k_ESteamDatagramMsg_Diagnostic = 8;
16
+ k_ESteamDatagramMsg_DataClientToRouter = 9;
17
+ k_ESteamDatagramMsg_DataRouterToServer = 10;
18
+ k_ESteamDatagramMsg_DataServerToRouter = 11;
19
+ k_ESteamDatagramMsg_DataRouterToClient = 12;
20
+ k_ESteamDatagramMsg_Stats = 13;
21
+ k_ESteamDatagramMsg_ClientPingSampleRequest = 14;
22
+ k_ESteamDatagramMsg_ClientPingSampleReply = 15;
23
+ k_ESteamDatagramMsg_ClientToRouterSwitchedPrimary = 16;
24
+ k_ESteamDatagramMsg_RelayHealth = 17;
25
+ k_ESteamDatagramMsg_ConnectRequest = 18;
26
+ k_ESteamDatagramMsg_ConnectOK = 19;
27
+ k_ESteamDatagramMsg_ConnectionClosed = 20;
28
+ k_ESteamDatagramMsg_NoConnection = 21;
29
+ k_ESteamDatagramMsg_TicketDecryptRequest = 22;
30
+ k_ESteamDatagramMsg_TicketDecryptReply = 23;
31
+ k_ESteamDatagramMsg_P2PSessionRequest = 24;
32
+ k_ESteamDatagramMsg_P2PSessionEstablished = 25;
33
+ k_ESteamDatagramMsg_P2PStatsClient = 26;
34
+ k_ESteamDatagramMsg_P2PStatsRelay = 27;
35
+ k_ESteamDatagramMsg_P2PBadRoute = 28;
36
+ k_ESteamDatagramMsg_GameserverPingReply = 29;
37
+ k_ESteamDatagramMsg_LegacyGameserverRegistration = 30;
38
+ k_ESteamDatagramMsg_SetSecondaryAddressRequest = 31;
39
+ k_ESteamDatagramMsg_SetSecondaryAddressResult = 32;
40
+ k_ESteamDatagramMsg_RelayToRelayPingRequest = 33;
41
+ k_ESteamDatagramMsg_RelayToRelayPingReply = 34;
42
+ }
43
+
44
+ message CMsgSteamNetworkingIPAddress {
45
+ optional fixed32 v4 = 1;
46
+ optional bytes v6 = 2;
47
+ }
48
+
49
+ message CMsgSteamDatagramSignedMessageGeneric {
50
+ optional .CMsgSteamDatagramCertificateSigned cert = 1;
51
+ optional bytes signed_data = 2;
52
+ optional bytes signature = 3;
53
+ optional bytes dummy_pad = 1023;
54
+ }
55
+
56
+ message CMsgSteamDatagramRouterPingReply {
57
+ message RouteException {
58
+ optional fixed32 data_center_id = 1;
59
+ optional uint32 flags = 2;
60
+ optional uint32 penalty = 3;
61
+ }
62
+
63
+ message AltAddress {
64
+ enum Protocol {
65
+ DefaultProtocol = 0;
66
+ NetworkNext = 1;
67
+ }
68
+
69
+ optional fixed32 ipv4 = 1;
70
+ optional uint32 port = 2;
71
+ optional uint32 penalty = 3;
72
+ optional .CMsgSteamDatagramRouterPingReply.AltAddress.Protocol protocol = 4 [default = DefaultProtocol];
73
+ optional string id = 5;
74
+ }
75
+
76
+ enum Flags {
77
+ FLAG_MAYBE_MORE_DATA_CENTERS = 1;
78
+ FLAG_MAYBE_MORE_ALT_ADDRESSES = 2;
79
+ }
80
+
81
+ optional fixed32 client_timestamp = 1;
82
+ repeated fixed32 latency_datacenter_ids = 2 [packed = true];
83
+ repeated uint32 latency_ping_ms = 3 [packed = true];
84
+ repeated fixed32 latency_datacenter_ids_p2p = 14 [packed = true];
85
+ repeated uint32 latency_ping_ms_p2p = 15 [packed = true];
86
+ optional fixed32 your_public_ip = 4;
87
+ optional fixed32 your_public_port = 11;
88
+ optional fixed32 server_time = 5;
89
+ optional fixed64 challenge = 6;
90
+ optional uint32 seconds_until_shutdown = 7;
91
+ optional fixed32 client_cookie = 8;
92
+ optional uint32 scoring_penalty_relay_cluster = 9;
93
+ optional uint32 flags = 12;
94
+ repeated .CMsgSteamDatagramRouterPingReply.RouteException route_exceptions = 10;
95
+ repeated .CMsgSteamDatagramRouterPingReply.AltAddress alt_addresses = 13;
96
+ optional bytes dummy_pad = 99;
97
+ }
98
+
99
+ message CMsgSteamDatagramGameserverPingRequestBody {
100
+ optional fixed32 relay_popid = 1;
101
+ optional .CMsgSteamNetworkingIPAddress your_public_ip = 2;
102
+ optional uint32 your_public_port = 3;
103
+ optional uint64 relay_unix_time = 4;
104
+ optional fixed64 routing_secret = 5;
105
+ repeated .CMsgSteamNetworkingIPAddress my_ips = 6;
106
+ optional bytes echo = 8;
107
+ }
108
+
109
+ message CMsgSteamDatagramGameserverPingRequestEnvelope {
110
+ optional .CMsgSteamDatagramCertificateSigned cert = 6;
111
+ optional bytes signed_data = 7;
112
+ optional bytes signature = 8;
113
+ optional fixed32 legacy_your_public_ip = 1;
114
+ optional fixed32 legacy_your_public_port = 5;
115
+ optional fixed32 legacy_relay_unix_time = 2;
116
+ optional fixed64 legacy_challenge = 3;
117
+ optional fixed32 legacy_router_timestamp = 4;
118
+ optional bytes dummy_pad = 1023;
119
+ }
120
+
121
+ message CMsgSteamDatagramGameserverPingReplyData {
122
+ optional fixed32 echo_relay_unix_time = 2;
123
+ optional bytes echo = 8;
124
+ optional fixed64 legacy_challenge = 3;
125
+ optional fixed32 legacy_router_timestamp = 4;
126
+ optional fixed32 data_center_id = 5;
127
+ optional uint32 appid = 6;
128
+ optional uint32 protocol_version = 7;
129
+ optional string build = 9;
130
+ optional uint64 network_config_version = 10;
131
+ optional fixed32 my_unix_time = 11;
132
+ optional bytes routing_blob = 12;
133
+ }
134
+
135
+ message CMsgSteamDatagramNoSessionRelayToClient {
136
+ optional fixed32 connection_id = 7;
137
+ optional fixed32 your_public_ip = 2;
138
+ optional fixed32 your_public_port = 6;
139
+ optional fixed32 server_time = 3;
140
+ optional fixed64 challenge = 4;
141
+ optional uint32 seconds_until_shutdown = 5;
142
+ }
143
+
144
+ message CMsgSteamDatagramNoSessionRelayToPeer {
145
+ optional uint32 legacy_relay_session_id = 1;
146
+ optional fixed32 from_relay_session_id = 2;
147
+ optional fixed32 from_connection_id = 7;
148
+ optional fixed64 kludge_pad = 99;
149
+ }
150
+
151
+ message CMsgSteamDatagramClientPingSampleRequest {
152
+ optional fixed32 connection_id = 1;
153
+ }
154
+
155
+ message CMsgSteamDatagramClientPingSampleReply {
156
+ message POP {
157
+ message AltAddress {
158
+ optional string id = 1;
159
+ optional uint32 front_ping_ms = 2;
160
+ optional uint32 penalty = 3;
161
+ }
162
+
163
+ optional fixed32 pop_id = 1;
164
+ optional uint32 default_front_ping_ms = 2;
165
+ optional uint32 cluster_penalty = 4;
166
+ repeated .CMsgSteamDatagramClientPingSampleReply.POP.AltAddress alt_addresses = 7;
167
+ optional uint32 default_e2e_ping_ms = 3;
168
+ optional uint32 default_e2e_score = 5;
169
+ optional fixed32 p2p_via_peer_relay_pop_id = 6;
170
+ optional uint32 best_dc_ping_ms = 9;
171
+ optional uint32 best_dc_score = 10;
172
+ optional fixed32 best_dc_via_relay_pop_id = 11;
173
+ optional uint32 default_dc_ping_ms = 12;
174
+ optional uint32 default_dc_score = 13;
175
+ optional fixed32 default_dc_via_relay_pop_id = 14;
176
+ optional uint32 test_dc_ping_ms = 15;
177
+ optional uint32 test_dc_score = 16;
178
+ optional fixed32 test_dc_via_relay_pop_id = 17;
179
+ }
180
+
181
+ message LegacyDataCenter {
182
+ optional fixed32 data_center_id = 1;
183
+ optional fixed32 best_dc_via_relay_pop_id = 2;
184
+ optional uint32 best_dc_ping_ms = 3;
185
+ }
186
+
187
+ optional fixed32 connection_id = 1;
188
+ optional bool relay_override_active = 5;
189
+ repeated .CMsgSteamDatagramClientPingSampleReply.POP pops = 2;
190
+ repeated .CMsgSteamDatagramClientPingSampleReply.LegacyDataCenter legacy_data_centers = 3;
191
+ }
192
+
193
+ message CMsgSteamDatagramClientSwitchedPrimary {
194
+ message RouterQuality {
195
+ optional uint32 score = 1;
196
+ optional uint32 front_ping = 2;
197
+ optional uint32 back_ping = 3;
198
+ optional uint32 seconds_until_down = 4;
199
+ }
200
+
201
+ optional fixed32 connection_id = 1;
202
+ optional fixed32 from_ip = 2;
203
+ optional uint32 from_port = 3;
204
+ optional fixed32 from_router_cluster = 4;
205
+ optional uint32 from_active_time = 5;
206
+ optional uint32 from_active_packets_recv = 6;
207
+ optional string from_dropped_reason = 7;
208
+ optional uint32 gap_ms = 8;
209
+ optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality from_quality_now = 9;
210
+ optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality to_quality_now = 10;
211
+ optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality from_quality_then = 11;
212
+ optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality to_quality_then = 12;
213
+ }
214
+
215
+ message CMsgSteamDatagramConnectRequest {
216
+ optional fixed32 connection_id = 1;
217
+ optional fixed64 my_timestamp = 4;
218
+ optional uint32 ping_est_ms = 5;
219
+ optional uint32 virtual_port = 9;
220
+ optional uint32 gameserver_relay_session_id = 2;
221
+ optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
222
+ optional .CMsgSteamDatagramCertificateSigned cert = 7;
223
+ optional fixed64 routing_secret = 10;
224
+ optional fixed64 legacy_client_steam_id = 3;
225
+ }
226
+
227
+ message CMsgSteamDatagramConnectOK {
228
+ optional fixed32 client_connection_id = 1;
229
+ optional fixed32 server_connection_id = 7;
230
+ optional fixed64 your_timestamp = 3;
231
+ optional uint32 delay_time_usec = 4;
232
+ optional uint32 gameserver_relay_session_id = 2;
233
+ optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
234
+ optional .CMsgSteamDatagramCertificateSigned cert = 6;
235
+ }
236
+
237
+ message CMsgSteamNetworkingP2PSDRRoutingSummary {
238
+ optional uint32 initial_ping = 1;
239
+ optional uint32 initial_ping_front_local = 2;
240
+ optional uint32 initial_ping_front_remote = 3;
241
+ optional uint32 initial_score = 4;
242
+ optional fixed32 initial_pop_local = 5;
243
+ optional fixed32 initial_pop_remote = 6;
244
+ optional uint32 best_ping = 11;
245
+ optional uint32 best_ping_front_local = 12;
246
+ optional uint32 best_ping_front_remote = 13;
247
+ optional uint32 best_score = 14;
248
+ optional fixed32 best_pop_local = 15;
249
+ optional fixed32 best_pop_remote = 16;
250
+ optional uint32 best_time = 17;
251
+ optional uint32 negotiation_ms = 7;
252
+ optional uint32 selected_seconds = 8;
253
+ }
254
+
255
+ message CMsgSteamDatagramP2PRoutingSummary {
256
+ optional .CMsgSteamNetworkingICESessionSummary ice = 2;
257
+ optional .CMsgSteamNetworkingP2PSDRRoutingSummary sdr = 3;
258
+ }
259
+
260
+ message CMsgSteamDatagramConnectionClosed {
261
+ enum ERelayMode {
262
+ None = 0;
263
+ EndToEnd = 1;
264
+ ClosedByPeer = 2;
265
+ }
266
+
267
+ optional fixed32 to_connection_id = 7;
268
+ optional fixed32 from_connection_id = 8;
269
+ optional string from_identity_string = 15;
270
+ optional .CMsgSteamNetworkingIdentityLegacyBinary legacy_from_identity_binary = 13;
271
+ optional fixed64 legacy_from_steam_id = 3;
272
+ optional uint32 legacy_gameserver_relay_session_id = 2;
273
+ optional fixed32 to_relay_session_id = 9;
274
+ optional fixed32 from_relay_session_id = 10;
275
+ optional bytes forward_target_relay_routing_token = 11;
276
+ optional uint32 forward_target_revision = 12;
277
+ optional .CMsgSteamDatagramConnectionClosed.ERelayMode relay_mode = 4 [default = None];
278
+ optional string debug = 5;
279
+ optional uint32 reason_code = 6;
280
+ optional fixed64 routing_secret = 14;
281
+ optional bool not_primary_session = 16;
282
+ optional bool not_primary_transport = 19;
283
+ optional bool relay_override_active = 22;
284
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 17;
285
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 18;
286
+ optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 21;
287
+ }
288
+
289
+ message CMsgSteamDatagramNoConnection {
290
+ optional fixed32 to_connection_id = 5;
291
+ optional fixed32 from_connection_id = 6;
292
+ optional uint32 legacy_gameserver_relay_session_id = 2;
293
+ optional fixed32 to_relay_session_id = 9;
294
+ optional fixed32 from_relay_session_id = 10;
295
+ optional string from_identity_string = 7;
296
+ optional fixed64 legacy_from_steam_id = 3;
297
+ optional bool end_to_end = 4;
298
+ optional bool not_primary_session = 12;
299
+ optional bool not_primary_transport = 15;
300
+ optional bool relay_override_active = 17;
301
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 13;
302
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 14;
303
+ optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 16;
304
+ optional fixed64 routing_secret = 11;
305
+ optional fixed32 dummy_pad = 1023;
306
+ }
307
+
308
+ message CMsgSteamDatagramGameserverSessionRequest {
309
+ optional bytes ticket = 1;
310
+ optional fixed32 challenge_time = 3;
311
+ optional fixed64 challenge = 4;
312
+ optional fixed32 client_connection_id = 5;
313
+ optional fixed32 server_connection_id = 8;
314
+ optional uint64 network_config_version = 6;
315
+ optional uint32 protocol_version = 7;
316
+ optional string platform = 9;
317
+ optional string build = 10;
318
+ optional string dev_gameserver_identity = 100;
319
+ optional .CMsgSteamDatagramCertificateSigned dev_client_cert = 101;
320
+ }
321
+
322
+ message CMsgSteamDatagramGameserverSessionEstablished {
323
+ optional fixed32 connection_id = 1;
324
+ optional string gameserver_identity_string = 2;
325
+ optional uint32 seconds_until_shutdown = 4;
326
+ optional uint32 seq_num_r2c = 6;
327
+ optional bytes dummy_legacy_identity_binary = 7;
328
+ optional fixed64 legacy_gameserver_steamid = 3;
329
+ }
330
+
331
+ message CMsgSteamDatagramConnectionStatsClientToRouter {
332
+ enum Flags {
333
+ ACK_REQUEST_RELAY = 1;
334
+ ACK_REQUEST_E2E = 2;
335
+ ACK_REQUEST_IMMEDIATE = 4;
336
+ NOT_PRIMARY_SESSION = 8;
337
+ CLIENT_RELAY_OVERRIDE = 32;
338
+ }
339
+
340
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
341
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
342
+ repeated fixed32 ack_relay = 4;
343
+ repeated fixed32 legacy_ack_e2e = 5;
344
+ optional uint32 flags = 6;
345
+ optional fixed32 client_connection_id = 8;
346
+ optional uint32 seq_num_c2r = 9;
347
+ optional uint32 seq_num_e2e = 10;
348
+ }
349
+
350
+ message CMsgSteamDatagramConnectionStatsRouterToClient {
351
+ enum Flags {
352
+ ACK_REQUEST_RELAY = 1;
353
+ ACK_REQUEST_E2E = 2;
354
+ ACK_REQUEST_IMMEDIATE = 4;
355
+ }
356
+
357
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
358
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
359
+ optional uint32 seconds_until_shutdown = 6;
360
+ optional fixed32 migrate_request_ip = 10;
361
+ optional uint32 migrate_request_port = 11;
362
+ optional uint32 scoring_penalty_relay_cluster = 12;
363
+ repeated fixed32 ack_relay = 13;
364
+ repeated fixed32 legacy_ack_e2e = 14;
365
+ optional uint32 flags = 15;
366
+ optional fixed32 client_connection_id = 7;
367
+ optional uint32 seq_num_r2c = 8;
368
+ optional uint32 seq_num_e2e = 9;
369
+ }
370
+
371
+ message CMsgSteamDatagramConnectionStatsRouterToServer {
372
+ enum Flags {
373
+ ACK_REQUEST_RELAY = 1;
374
+ ACK_REQUEST_E2E = 2;
375
+ ACK_REQUEST_IMMEDIATE = 4;
376
+ }
377
+
378
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
379
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
380
+ repeated fixed32 ack_relay = 10;
381
+ repeated fixed32 legacy_ack_e2e = 11;
382
+ optional uint32 flags = 12;
383
+ optional uint32 seq_num_r2s = 5;
384
+ optional uint32 seq_num_e2e = 6;
385
+ optional string client_identity_string = 15;
386
+ optional fixed64 legacy_client_steam_id = 7;
387
+ optional uint32 relay_session_id = 8;
388
+ optional fixed32 client_connection_id = 9;
389
+ optional fixed32 server_connection_id = 13;
390
+ optional fixed64 routing_secret = 14;
391
+ }
392
+
393
+ message CMsgSteamDatagramConnectionStatsServerToRouter {
394
+ enum Flags {
395
+ ACK_REQUEST_RELAY = 1;
396
+ ACK_REQUEST_E2E = 2;
397
+ ACK_REQUEST_IMMEDIATE = 4;
398
+ }
399
+
400
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
401
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
402
+ repeated fixed32 ack_relay = 8;
403
+ repeated fixed32 legacy_ack_e2e = 9;
404
+ optional uint32 flags = 10;
405
+ optional uint32 seq_num_s2r = 3;
406
+ optional uint32 seq_num_e2e = 4;
407
+ optional uint32 relay_session_id = 6;
408
+ optional fixed32 client_connection_id = 7;
409
+ optional fixed32 server_connection_id = 11;
410
+ }
411
+
412
+ message CMsgSteamDatagramP2PSessionRequestBody {
413
+ message EncryptedData {
414
+ optional string peer_identity_string = 1;
415
+ }
416
+
417
+ optional fixed32 challenge_time = 1;
418
+ optional fixed64 challenge = 2;
419
+ optional fixed32 client_connection_id = 3;
420
+ optional fixed64 legacy_peer_steam_id = 4;
421
+ optional string peer_identity_string = 11;
422
+ optional fixed32 peer_connection_id = 5;
423
+ optional bytes encrypted_data = 14;
424
+ optional uint32 encryption_your_public_key_lead_byte = 15;
425
+ optional bytes encryption_my_ephemeral_public_key = 16;
426
+ optional uint32 protocol_version = 8;
427
+ optional uint64 network_config_version = 9;
428
+ optional string platform = 12;
429
+ optional string build = 13;
430
+ }
431
+
432
+ message CMsgSteamDatagramP2PSessionRequest {
433
+ optional .CMsgSteamDatagramCertificateSigned cert = 1;
434
+ optional bytes body = 2;
435
+ optional bytes signature = 3;
436
+ }
437
+
438
+ message CMsgSteamDatagramP2PSessionEstablished {
439
+ optional fixed32 connection_id = 1;
440
+ optional uint32 seconds_until_shutdown = 3;
441
+ optional bytes relay_routing_token = 4;
442
+ optional uint32 seq_num_r2c = 5;
443
+ }
444
+
445
+ message CMsgSteamDatagramConnectionStatsP2PClientToRouter {
446
+ enum Flags {
447
+ ACK_REQUEST_RELAY = 1;
448
+ ACK_REQUEST_E2E = 2;
449
+ ACK_REQUEST_IMMEDIATE = 4;
450
+ NOT_PRIMARY_SESSION = 8;
451
+ NOT_PRIMARY_TRANSPORT_E2E = 16;
452
+ CLIENT_RELAY_OVERRIDE = 32;
453
+ }
454
+
455
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
456
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
457
+ optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 14;
458
+ repeated fixed32 ack_relay = 3;
459
+ repeated fixed32 legacy_ack_e2e = 4;
460
+ optional uint32 flags = 5;
461
+ optional bytes forward_target_relay_routing_token = 6;
462
+ optional uint32 forward_target_revision = 7;
463
+ optional bytes routes = 8;
464
+ optional uint32 ack_peer_routes_revision = 9;
465
+ optional fixed32 connection_id = 10;
466
+ optional uint32 seq_num_c2r = 11;
467
+ optional uint32 seq_num_e2e = 12;
468
+ }
469
+
470
+ message CMsgSteamDatagramConnectionStatsP2PRouterToClient {
471
+ enum Flags {
472
+ ACK_REQUEST_RELAY = 1;
473
+ ACK_REQUEST_E2E = 2;
474
+ ACK_REQUEST_IMMEDIATE = 4;
475
+ NOT_PRIMARY_TRANSPORT_E2E = 16;
476
+ }
477
+
478
+ optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
479
+ optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
480
+ optional uint32 seconds_until_shutdown = 3;
481
+ optional fixed32 migrate_request_ip = 4;
482
+ optional uint32 migrate_request_port = 5;
483
+ optional uint32 scoring_penalty_relay_cluster = 6;
484
+ repeated fixed32 ack_relay = 7;
485
+ repeated fixed32 legacy_ack_e2e = 8;
486
+ optional uint32 flags = 9;
487
+ optional uint32 ack_forward_target_revision = 10;
488
+ optional bytes routes = 11;
489
+ optional uint32 ack_peer_routes_revision = 12;
490
+ optional fixed32 connection_id = 13;
491
+ optional uint32 seq_num_r2c = 14;
492
+ optional uint32 seq_num_e2e = 15;
493
+ }
494
+
495
+ message CMsgSteamDatagramP2PBadRouteRouterToClient {
496
+ optional fixed32 connection_id = 1;
497
+ optional bytes failed_relay_routing_token = 2;
498
+ optional uint32 ack_forward_target_revision = 3;
499
+ optional fixed64 kludge_pad = 99;
500
+ }
501
+
502
+ message CMsgSteamDatagramP2PRoutes {
503
+ message RelayCluster {
504
+ optional fixed32 pop_id = 1;
505
+ optional uint32 ping_ms = 2;
506
+ optional uint32 score_penalty = 3;
507
+ optional bytes session_relay_routing_token = 4;
508
+ }
509
+
510
+ message Route {
511
+ optional fixed32 my_pop_id = 1;
512
+ optional fixed32 your_pop_id = 2;
513
+ optional uint32 legacy_score = 3;
514
+ optional uint32 interior_score = 4;
515
+ }
516
+
517
+ repeated .CMsgSteamDatagramP2PRoutes.RelayCluster relay_clusters = 1;
518
+ repeated .CMsgSteamDatagramP2PRoutes.Route routes = 2;
519
+ optional uint32 revision = 3;
520
+ }
521
+
522
+ message CMsgSteamDatagramSetSecondaryAddressRequest {
523
+ optional fixed32 client_main_ip = 1;
524
+ optional fixed32 client_main_port = 2;
525
+ optional fixed32 client_connection_id = 3;
526
+ optional string client_identity = 4;
527
+ optional bool request_send_duplication = 5;
528
+ optional bytes kludge_pad = 99;
529
+ }
530
+
531
+ message CMsgSteamDatagramSetSecondaryAddressResult {
532
+ optional bool success = 1;
533
+ optional string message = 2;
534
+ }