steamutils 1.3.26 → 1.3.28

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  2. package/.idea/steamutils.iml +1 -1
  3. package/.idea/vcs.xml +1 -1
  4. package/SteamClient.js +131 -21
  5. package/bufferHelpers.js +115 -0
  6. package/free_packages.json +10048 -10048
  7. package/package.json +1 -1
  8. package/protos/csgo/base_gcmessages_csgo.proto +547 -547
  9. package/protos/csgo/c_peer2peer_netmessages.proto +55 -55
  10. package/protos/csgo/clientmessages.proto +48 -48
  11. package/protos/csgo/connectionless_netmessages.proto +19 -19
  12. package/protos/csgo/cs_gameevents.proto +34 -34
  13. package/protos/csgo/cs_usercmd.proto +34 -34
  14. package/protos/csgo/cstrike15_gcmessages.proto +1402 -1402
  15. package/protos/csgo/cstrike15_usermessages.proto +596 -596
  16. package/protos/csgo/demo.proto +160 -160
  17. package/protos/csgo/econ_gcmessages.proto +228 -228
  18. package/protos/csgo/engine_gcmessages.proto +14 -14
  19. package/protos/csgo/enums_clientserver.proto +1529 -1529
  20. package/protos/csgo/fatdemo.proto +125 -125
  21. package/protos/csgo/gameevents.proto +120 -120
  22. package/protos/csgo/gcsdk_gcmessages.proto +323 -323
  23. package/protos/csgo/gcsystemmsgs.proto +242 -242
  24. package/protos/csgo/netmessages.proto +604 -604
  25. package/protos/csgo/network_connection.proto +126 -126
  26. package/protos/csgo/networkbasetypes.proto +244 -244
  27. package/protos/csgo/networksystem_protomessages.proto +17 -17
  28. package/protos/csgo/steamdatagram_messages_auth.proto +65 -65
  29. package/protos/csgo/steamdatagram_messages_sdr.proto +534 -534
  30. package/protos/csgo/steammessages.proto +597 -597
  31. package/protos/csgo/steammessages_base.proto +301 -301
  32. package/protos/csgo/steammessages_cloud.steamworkssdk.proto +68 -68
  33. package/protos/csgo/steammessages_gamenetworkingui.proto +61 -61
  34. package/protos/csgo/steammessages_helprequest.steamworkssdk.proto +22 -22
  35. package/protos/csgo/steammessages_oauth.steamworkssdk.proto +18 -18
  36. package/protos/csgo/steammessages_player.steamworkssdk.proto +254 -254
  37. package/protos/csgo/steammessages_publishedfile.steamworkssdk.proto +233 -233
  38. package/protos/csgo/steammessages_steamlearn.steamworkssdk.proto +357 -357
  39. package/protos/csgo/steammessages_unified_base.steamworkssdk.proto +30 -30
  40. package/protos/csgo/steamnetworkingsockets_messages.proto +205 -205
  41. package/protos/csgo/steamnetworkingsockets_messages_certs.proto +39 -39
  42. package/protos/csgo/steamnetworkingsockets_messages_udp.proto +75 -75
  43. package/protos/csgo/te.proto +259 -259
  44. package/protos/csgo/uifontfile_format.proto +13 -13
  45. package/protos/csgo/usercmd.proto +38 -38
  46. package/protos/csgo/usermessages.proto +721 -721
  47. package/protos/csgo/valveextensions.proto +17 -17
  48. package/protos/google/protobuf/descriptor.proto +281 -281
  49. package/protos/steam/clientmetrics.proto +45 -45
  50. package/protos/steam/content_manifest.proto +62 -62
  51. package/protos/steam/contenthubs.proto +41 -41
  52. package/protos/steam/encrypted_app_ticket.proto +10 -10
  53. package/protos/steam/enums.proto +444 -444
  54. package/protos/steam/enums_clientserver.proto +1539 -1539
  55. package/protos/steam/enums_productinfo.proto +13 -13
  56. package/protos/steam/htmlmessages.proto +1027 -1027
  57. package/protos/steam/offline_ticket.proto +8 -8
  58. package/protos/steam/renderer/rendermessages.proto +893 -893
  59. package/protos/steam/steamdatagram_messages_auth.proto +65 -65
  60. package/protos/steam/steamdatagram_messages_sdr.proto +533 -533
  61. package/protos/steam/steammessages_accounthardware.steamclient.proto +201 -201
  62. package/protos/steam/steammessages_appoverview.proto +187 -187
  63. package/protos/steam/steammessages_auth.steamclient.proto +435 -435
  64. package/protos/steam/steammessages_base.proto +332 -332
  65. package/protos/steam/steammessages_broadcast.steamclient.proto +759 -759
  66. package/protos/steam/steammessages_chat.steamclient.proto +1281 -1281
  67. package/protos/steam/steammessages_client_objects.proto +645 -645
  68. package/protos/steam/steammessages_clientlanp2p.proto +42 -42
  69. package/protos/steam/steammessages_clientmetrics.steamclient.proto +194 -194
  70. package/protos/steam/steammessages_clientnotificationtypes.proto +231 -231
  71. package/protos/steam/steammessages_clientserver.proto +392 -392
  72. package/protos/steam/steammessages_clientserver_2.proto +760 -760
  73. package/protos/steam/steammessages_clientserver_appinfo.proto +131 -131
  74. package/protos/steam/steammessages_clientserver_friends.proto +260 -260
  75. package/protos/steam/steammessages_clientserver_gameservers.proto +159 -159
  76. package/protos/steam/steammessages_clientserver_lbs.proto +70 -70
  77. package/protos/steam/steammessages_clientserver_login.proto +167 -167
  78. package/protos/steam/steammessages_clientserver_ucm.proto +205 -205
  79. package/protos/steam/steammessages_clientserver_uds.proto +124 -124
  80. package/protos/steam/steammessages_clientserver_ufs.proto +172 -172
  81. package/protos/steam/steammessages_clientserver_userstats.proto +80 -80
  82. package/protos/steam/steammessages_clientsettings.proto +168 -168
  83. package/protos/steam/steammessages_cloud.steamclient.proto +513 -513
  84. package/protos/steam/steammessages_contentsystem.steamclient.proto +115 -115
  85. package/protos/steam/steammessages_credentials.steamclient.proto +115 -115
  86. package/protos/steam/steammessages_datapublisher.steamclient.proto +116 -116
  87. package/protos/steam/steammessages_depotbuilder.steamclient.proto +118 -118
  88. package/protos/steam/steammessages_deviceauth.steamclient.proto +203 -203
  89. package/protos/steam/steammessages_econ.steamclient.proto +150 -150
  90. package/protos/steam/steammessages_friendmessages.steamclient.proto +168 -168
  91. package/protos/steam/steammessages_gamenetworking.steamclient.proto +32 -32
  92. package/protos/steam/steammessages_gamenetworkingui.proto +61 -61
  93. package/protos/steam/steammessages_gamenotifications.steamclient.proto +156 -156
  94. package/protos/steam/steammessages_gameservers.steamclient.proto +152 -152
  95. package/protos/steam/steammessages_hiddevices.proto +157 -157
  96. package/protos/steam/steammessages_inventory.steamclient.proto +224 -224
  97. package/protos/steam/steammessages_linkfilter.steamclient.proto +49 -49
  98. package/protos/steam/steammessages_lobbymatchmaking.steamclient.proto +33 -33
  99. package/protos/steam/steammessages_market.steamclient.proto +26 -26
  100. package/protos/steam/steammessages_marketingmessages.steamclient.proto +274 -274
  101. package/protos/steam/steammessages_offline.steamclient.proto +40 -40
  102. package/protos/steam/steammessages_parental.steamclient.proto +228 -228
  103. package/protos/steam/steammessages_parties.steamclient.proto +94 -94
  104. package/protos/steam/steammessages_partnerapps.steamclient.proto +138 -138
  105. package/protos/steam/steammessages_player.steamclient.proto +1060 -1060
  106. package/protos/steam/steammessages_publishedfile.steamclient.proto +813 -813
  107. package/protos/steam/steammessages_qms.steamclient.proto +125 -125
  108. package/protos/steam/steammessages_remoteclient.proto +99 -99
  109. package/protos/steam/steammessages_remoteclient_discovery.proto +235 -235
  110. package/protos/steam/steammessages_remoteclient_service.steamclient.proto +86 -86
  111. package/protos/steam/steammessages_remoteclient_service_messages.proto +217 -217
  112. package/protos/steam/steammessages_remoteplay.proto +976 -976
  113. package/protos/steam/steammessages_secrets.steamclient.proto +39 -39
  114. package/protos/steam/steammessages_shader.steamclient.proto +108 -108
  115. package/protos/steam/steammessages_site_license.steamclient.proto +128 -128
  116. package/protos/steam/steammessages_sitelicenseclient.proto +38 -38
  117. package/protos/steam/steammessages_siteserverui.proto +130 -130
  118. package/protos/steam/steammessages_star.steamclient.proto +64 -64
  119. package/protos/steam/steammessages_steamtv.steamclient.proto +630 -630
  120. package/protos/steam/steammessages_store.steamclient.proto +371 -371
  121. package/protos/steam/steammessages_storebrowse.steamclient.proto +402 -402
  122. package/protos/steam/steammessages_timedtrial.steamclient.proto +50 -50
  123. package/protos/steam/steammessages_twofactor.steamclient.proto +186 -186
  124. package/protos/steam/steammessages_unified_base.steamclient.proto +33 -33
  125. package/protos/steam/steammessages_unified_test.steamclient.proto +61 -61
  126. package/protos/steam/steammessages_useraccount.steamclient.proto +249 -249
  127. package/protos/steam/steammessages_vac.steamclient.proto +44 -44
  128. package/protos/steam/steammessages_video.steamclient.proto +171 -171
  129. package/protos/steam/steammessages_virtualcontroller.proto +138 -138
  130. package/protos/steam/steammessages_workshop.steamclient.proto +23 -23
  131. package/protos/steam/steamnetworkingsockets_messages.proto +205 -205
  132. package/protos/steam/steamnetworkingsockets_messages_certs.proto +39 -39
  133. package/protos/steam/steamnetworkingsockets_messages_udp.proto +75 -75
  134. package/protos/steam/webuimessages_base.proto +24 -24
  135. package/protos/steam/webuimessages_gamenotes.proto +21 -21
  136. package/protos/steam/webuimessages_steamengine.proto +32 -32
  137. package/protos/steam/webuimessages_storagedevicemanager.proto +110 -110
  138. package/protos/steam/webuimessages_systemmanager.proto +17 -17
  139. package/protos/steam/webuimessages_transport.proto +18 -18
  140. package/protos/steam/webuimessages_transportvalidation.proto +97 -97
  141. package/protos/webui/common.proto +5508 -5508
  142. package/protos/webui/common_base.proto +27 -27
  143. package/protos/webui/service_accountlinking.proto +27 -27
  144. package/protos/webui/service_accountprivacy.proto +42 -42
  145. package/protos/webui/service_auction.proto +97 -97
  146. package/protos/webui/service_authentication.proto +222 -222
  147. package/protos/webui/service_authenticationsupport.proto +74 -74
  148. package/protos/webui/service_broadcast.proto +562 -562
  149. package/protos/webui/service_chat.proto +11 -11
  150. package/protos/webui/service_chatroom.proto +810 -810
  151. package/protos/webui/service_chatusability.proto +107 -107
  152. package/protos/webui/service_clan.proto +41 -41
  153. package/protos/webui/service_clanchatrooms.proto +25 -25
  154. package/protos/webui/service_clanfaqs.proto +202 -202
  155. package/protos/webui/service_clientcomm.proto +150 -150
  156. package/protos/webui/service_clientmetrics.proto +63 -63
  157. package/protos/webui/service_cloud.proto +222 -222
  158. package/protos/webui/service_cloudconfigstore.proto +51 -51
  159. package/protos/webui/service_cloudgaming.proto +30 -30
  160. package/protos/webui/service_community.proto +365 -365
  161. package/protos/webui/service_econ.proto +134 -134
  162. package/protos/webui/service_embedded.proto +24 -24
  163. package/protos/webui/service_experimentservice.proto +6 -6
  164. package/protos/webui/service_fovasvideo.proto +15 -15
  165. package/protos/webui/service_friendmessages.proto +133 -133
  166. package/protos/webui/service_friendslist.proto +70 -70
  167. package/protos/webui/service_gamenotes.proto +15 -15
  168. package/protos/webui/service_helprequestlogs.proto +26 -26
  169. package/protos/webui/service_loyaltyrewards.proto +252 -252
  170. package/protos/webui/service_marketingmessages.proto +184 -184
  171. package/protos/webui/service_mobileapp.proto +18 -18
  172. package/protos/webui/service_mobileauth.proto +24 -24
  173. package/protos/webui/service_mobiledevice.proto +26 -26
  174. package/protos/webui/service_mobileperaccount.proto +31 -31
  175. package/protos/webui/service_news.proto +101 -101
  176. package/protos/webui/service_parental.proto +178 -178
  177. package/protos/webui/service_partnermembershipinvite.proto +29 -29
  178. package/protos/webui/service_partnerstorebrowse.proto +6 -6
  179. package/protos/webui/service_phone.proto +51 -51
  180. package/protos/webui/service_physicalgoods.proto +15 -15
  181. package/protos/webui/service_player.proto +885 -885
  182. package/protos/webui/service_promotioneventinvites.proto +50 -50
  183. package/protos/webui/service_promotionplanning.proto +72 -72
  184. package/protos/webui/service_publishedfile.proto +687 -687
  185. package/protos/webui/service_publishing.proto +119 -119
  186. package/protos/webui/service_quest.proto +127 -127
  187. package/protos/webui/service_salefeature.proto +315 -315
  188. package/protos/webui/service_saleitemrewards.proto +54 -54
  189. package/protos/webui/service_shoppingcart.proto +108 -108
  190. package/protos/webui/service_steamawards.proto +19 -19
  191. package/protos/webui/service_steamcharts.proto +75 -75
  192. package/protos/webui/service_steamengine.proto +36 -36
  193. package/protos/webui/service_steamlearn.proto +727 -727
  194. package/protos/webui/service_steamnotification.proto +84 -84
  195. package/protos/webui/service_steamtv.proto +495 -495
  196. package/protos/webui/service_steamvrvoicechat.proto +67 -67
  197. package/protos/webui/service_steamvrwebrtc.proto +48 -48
  198. package/protos/webui/service_storagedevicemanager.proto +104 -104
  199. package/protos/webui/service_store.proto +289 -289
  200. package/protos/webui/service_storeappsimilarity.proto +76 -76
  201. package/protos/webui/service_storebrowse.proto +73 -73
  202. package/protos/webui/service_storequery.proto +97 -97
  203. package/protos/webui/service_storesales.proto +15 -15
  204. package/protos/webui/service_storetopsellers.proto +44 -44
  205. package/protos/webui/service_systemmanager.proto +11 -11
  206. package/protos/webui/service_test_transporterror.proto +6 -6
  207. package/protos/webui/service_transportauth.proto +12 -12
  208. package/protos/webui/service_transportvalidation.proto +69 -69
  209. package/protos/webui/service_twofactor.proto +181 -181
  210. package/protos/webui/service_useraccount.proto +138 -138
  211. package/protos/webui/service_usergameactivity.proto +34 -34
  212. package/protos/webui/service_usergamenotes.proto +53 -53
  213. package/protos/webui/service_usernews.proto +68 -68
  214. package/protos/webui/service_userreviews.proto +96 -96
  215. package/protos/webui/service_video.proto +128 -128
  216. package/protos/webui/service_voicechat.proto +139 -139
  217. package/protos/webui/service_webrtc.proto +52 -52
  218. package/.idea/deployment.xml +0 -21
@@ -1,44 +1,44 @@
1
- import "steammessages_base.proto";
2
- import "steammessages_unified_base.steamclient.proto";
3
-
4
- option cc_generic_services = true;
5
-
6
- message CFileVerification_SignatureCheck_Request {
7
- optional fixed64 steamid = 1;
8
- optional uint32 appid = 2;
9
- optional uint64 file_size = 3;
10
- optional uint32 file_timestamp = 4;
11
- optional uint32 file_timestamp2 = 5;
12
- optional uint32 signature_result = 6;
13
- optional string filename = 7;
14
- optional uint32 client_package_version = 8;
15
- optional bytes sha1hash = 9;
16
- }
17
-
18
- message CFileVerification_SignatureCheck_Response {
19
- optional bool deny_operation = 1;
20
- }
21
-
22
- message CFileVerification_SteamServiceCheck_Request {
23
- optional uint32 service_status = 2;
24
- optional uint32 client_package_version = 3;
25
- optional uint32 launcher_type = 4;
26
- optional uint32 os_type = 5;
27
- optional uint32 service_repair = 6;
28
- }
29
-
30
- message CFileVerification_SteamServiceCheck_Response {
31
- optional bool attempt_repair = 1;
32
- }
33
-
34
- service FileVerification {
35
- option (service_description) = "File verification services";
36
-
37
- rpc SignatureCheck (.CFileVerification_SignatureCheck_Request) returns (.CFileVerification_SignatureCheck_Response) {
38
- option (method_description) = "File signature check was performed";
39
- }
40
-
41
- rpc SteamServiceCheck (.CFileVerification_SteamServiceCheck_Request) returns (.CFileVerification_SteamServiceCheck_Response) {
42
- option (method_description) = "Steam Service check was performed";
43
- }
44
- }
1
+ import "steammessages_base.proto";
2
+ import "steammessages_unified_base.steamclient.proto";
3
+
4
+ option cc_generic_services = true;
5
+
6
+ message CFileVerification_SignatureCheck_Request {
7
+ optional fixed64 steamid = 1;
8
+ optional uint32 appid = 2;
9
+ optional uint64 file_size = 3;
10
+ optional uint32 file_timestamp = 4;
11
+ optional uint32 file_timestamp2 = 5;
12
+ optional uint32 signature_result = 6;
13
+ optional string filename = 7;
14
+ optional uint32 client_package_version = 8;
15
+ optional bytes sha1hash = 9;
16
+ }
17
+
18
+ message CFileVerification_SignatureCheck_Response {
19
+ optional bool deny_operation = 1;
20
+ }
21
+
22
+ message CFileVerification_SteamServiceCheck_Request {
23
+ optional uint32 service_status = 2;
24
+ optional uint32 client_package_version = 3;
25
+ optional uint32 launcher_type = 4;
26
+ optional uint32 os_type = 5;
27
+ optional uint32 service_repair = 6;
28
+ }
29
+
30
+ message CFileVerification_SteamServiceCheck_Response {
31
+ optional bool attempt_repair = 1;
32
+ }
33
+
34
+ service FileVerification {
35
+ option (service_description) = "File verification services";
36
+
37
+ rpc SignatureCheck (.CFileVerification_SignatureCheck_Request) returns (.CFileVerification_SignatureCheck_Response) {
38
+ option (method_description) = "File signature check was performed";
39
+ }
40
+
41
+ rpc SteamServiceCheck (.CFileVerification_SteamServiceCheck_Request) returns (.CFileVerification_SteamServiceCheck_Response) {
42
+ option (method_description) = "Steam Service check was performed";
43
+ }
44
+ }
@@ -1,171 +1,171 @@
1
- import "steammessages_base.proto";
2
- import "steammessages_unified_base.steamclient.proto";
3
-
4
- option cc_generic_services = true;
5
-
6
- message CVideo_ClientGetVideoURL_Request {
7
- optional uint64 video_id = 1 [(description) = "Video ID"];
8
- optional uint32 client_cellid = 2 [(description) = "Cell ID of client, zero if unknown"];
9
- }
10
-
11
- message CVideo_ClientGetVideoURL_Response {
12
- optional uint64 video_id = 1 [(description) = "Video ID"];
13
- optional string video_url = 2 [(description) = "URL for video manifest"];
14
- }
15
-
16
- message VideoBookmark {
17
- optional uint32 app_id = 1 [(description) = "App ID"];
18
- optional uint32 playback_position_in_seconds = 2 [(description) = "How many seconds into the video the bookmark is for"];
19
- optional uint64 video_track_id = 3 [(description) = "video track choice."];
20
- optional uint64 audio_track_id = 4 [(description) = "audio track choice."];
21
- optional uint64 timedtext_track_id = 5 [(description) = "timedtimed or subtitle track choice"];
22
- optional uint32 last_modified = 6 [(description) = "when we recorded it was last modified. Not settable."];
23
- optional bool hide_from_watch_history = 7 [default = false, (description) = "Whether I want to show this in my history"];
24
- optional bool hide_from_library = 8 [default = false, (description) = "Whether I want to show this in my library"];
25
- }
26
-
27
- message CVideo_SetVideoBookmark_Notification {
28
- repeated .VideoBookmark bookmarks = 1 [(description) = "list of bookmarks we want to store."];
29
- }
30
-
31
- message CVideo_GetVideoBookmarks_Request {
32
- repeated uint32 appids = 1 [(description) = "List of App IDs to grab bookmarks for. Can be empty if using updated_since."];
33
- optional uint32 updated_since = 2 [(description) = "Only return results after time. Min value is 1. (seconds since epoch January 1st, 1970 Unix Time)"];
34
- }
35
-
36
- message CVideo_GetVideoBookmarks_Response {
37
- repeated .VideoBookmark bookmarks = 1 [(description) = "List of bookmarks we found. Can be empty."];
38
- }
39
-
40
- message CVideo_GameClipRepresentation {
41
- optional string representation_name = 2 [(description) = "EG 480p30"];
42
- optional uint32 horizontal_resolution = 3 [(description) = "Width in pixels if contains video"];
43
- optional uint32 vertical_resolution = 4 [(description) = "Height in pixels if contains video"];
44
- optional double frame_rate = 5 [(description) = "Frame Rate if contains video"];
45
- optional uint32 bandwidth = 6 [(description) = "Kbps"];
46
- optional uint32 audio_sample_rate = 7 [(description) = "Sample rate in Hz if contains audio"];
47
- optional string frame_rate_string = 8 [(description) = "Frame Rate string if contains video"];
48
- optional string codec = 9 [(description) = "codec(s) used"];
49
- optional uint32 audio_channel_config = 10 [(description) = "audio channel config if relevant"];
50
- }
51
-
52
- message CVideo_GameClipComponent {
53
- optional string component_name = 1 [(description) = "video/audio/etc"];
54
- optional uint32 contents = 2 [(description) = "EVideoTrackContents"];
55
- optional uint32 segment_size = 3 [(description) = "size of most segments (last may be shorter)"];
56
- optional string file_type = 4 [(description) = "file type"];
57
- repeated .CVideo_GameClipRepresentation representations = 5 [(description) = "list of representations"];
58
- }
59
-
60
- message CVideo_CreateGameClip_Request {
61
- optional uint32 app_id = 1 [(description) = "app ID stream is tagged with"];
62
- optional uint32 num_segments = 2 [(description) = "number of segments in this clip"];
63
- optional uint32 length_milliseconds = 3 [(description) = "length of video in ms"];
64
- optional uint32 segment_duration_timescale = 4 [(description) = "timescale (denominator) for segment duration below, eg 1000 for milliseconds"];
65
- optional uint32 segment_duration = 5 [(description) = "length of most segments in 'timescale' units (last may be shorter)"];
66
- repeated .CVideo_GameClipComponent components = 6 [(description) = "List of components"];
67
- }
68
-
69
- message CVideo_CreateGameClip_Response {
70
- optional uint64 clip_id = 1 [(description) = "Clip ID if successful"];
71
- }
72
-
73
- message CVideo_GameClipSegmentInfo {
74
- optional uint32 segment_number = 4 [(description) = "segment number"];
75
- optional uint64 segment_size_bytes = 5 [(description) = "segment size in bytes"];
76
- }
77
-
78
- message CVideo_BeginGameClipSegmentsUpload_Request {
79
- optional uint64 clip_id = 1 [(description) = "Clip ID"];
80
- optional string component_name = 2 [(description) = "component segments belong to"];
81
- optional string representation_name = 3 [(description) = "representation name"];
82
- repeated .CVideo_GameClipSegmentInfo segments_to_store = 4 [(description) = "Segments the client has to upload"];
83
- }
84
-
85
- message CVideo_GameClipSegmentUploadInfo {
86
- message HTTPHeaders {
87
- optional string name = 1 [(description) = "HTTP header name"];
88
- optional string value = 2 [(description) = "HTTP header value"];
89
- }
90
-
91
- optional .CVideo_GameClipSegmentInfo segment_info = 1 [(description) = "segment ID information"];
92
- optional string url_host = 2 [(description) = "Host name of server to which file should be uploaded via HTTP PUT."];
93
- optional string url_path = 3 [(description) = "Relative path on server to which file should be uploaded."];
94
- optional bool use_https = 4 [(description) = "If true, use https, otherwise use http."];
95
- repeated .CVideo_GameClipSegmentUploadInfo.HTTPHeaders request_headers = 5 [(description) = "Name-value pairs to be sent in HTTP PUT request."];
96
- }
97
-
98
- message CVideo_BeginGameClipSegmentsUpload_Response {
99
- repeated .CVideo_GameClipSegmentUploadInfo segments_needed = 1 [(description) = "Segments that need uploading"];
100
- optional bool call_again = 2 [(description) = "If true, you should ask again once you've uploaded the segments indicated in this response. There may be more we want. If there was no work to do in this response, then wait a few seconds before asking again"];
101
- }
102
-
103
- message CVideo_CommitGameClipSegmentsUpload_Request {
104
- optional uint64 clip_id = 1 [(description) = "Clip ID"];
105
- optional string component_name = 2 [(description) = "component segments belong to"];
106
- optional string representation_name = 3 [(description) = "representation name"];
107
- optional uint32 first_segment_number = 4 [(description) = "Segment Number of first segment uploaded in this batch"];
108
- optional uint32 num_segments = 5 [(description) = "Number of segments in Batch"];
109
- optional uint32 upload_result = 6 [(description) = "eresult of the upload attempt"];
110
- }
111
-
112
- message CVideo_CommitGameClipSegmentsUpload_Response {
113
- }
114
-
115
- message CVideo_UnlockedH264_Notification {
116
- optional bytes encryption_key = 1;
117
- }
118
-
119
- message CFovasVideo_ClientGetOPFSettings_Request {
120
- optional uint32 app_id = 1 [(description) = "App ID"];
121
- optional uint32 client_cellid = 2 [(description) = "Cell ID of client, zero if unknown"];
122
- }
123
-
124
- message CFovasVideo_ClientGetOPFSettings_Response {
125
- optional uint32 app_id = 1 [(description) = "App ID"];
126
- optional string opf_settings = 2 [(description) = "JSON blob of OPF Settings"];
127
- }
128
-
129
- service Video {
130
- option (service_description) = "Video methods";
131
-
132
- rpc ClientGetVideoURL (.CVideo_ClientGetVideoURL_Request) returns (.CVideo_ClientGetVideoURL_Response) {
133
- option (method_description) = "Get the initial URL to begin streaming a video";
134
- }
135
-
136
- rpc SetVideoBookmark (.CVideo_SetVideoBookmark_Notification) returns (.NoResponse) {
137
- option (method_description) = "Bookmarks the locations in the video the user has reached. As as record playback settings per video. Fire and forget.";
138
- }
139
-
140
- rpc GetVideoBookmarks (.CVideo_GetVideoBookmarks_Request) returns (.CVideo_GetVideoBookmarks_Response) {
141
- option (method_description) = "Returns the video bookmarks locations for the specific videos. Includes playback settings per video";
142
- }
143
-
144
- rpc CreateGameClip (.CVideo_CreateGameClip_Request) returns (.CVideo_CreateGameClip_Response) {
145
- option (method_description) = "Create a game recording clip video";
146
- }
147
-
148
- rpc BeginGameClipSegmentsUpload (.CVideo_BeginGameClipSegmentsUpload_Request) returns (.CVideo_BeginGameClipSegmentsUpload_Response) {
149
- option (method_description) = "Begin a batch of segment uploads for a GameClip";
150
- }
151
-
152
- rpc CommitGameClipSegmentsUpload (.CVideo_CommitGameClipSegmentsUpload_Request) returns (.CVideo_CommitGameClipSegmentsUpload_Response) {
153
- option (method_description) = "Note completion of a batch of GameClip segment uploads";
154
- }
155
- }
156
-
157
- service VideoClient {
158
- option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
159
-
160
- rpc NotifyUnlockedH264 (.CVideo_UnlockedH264_Notification) returns (.NoResponse) {
161
- option (method_description) = "Notification from server to client that h264 has been unlocked";
162
- }
163
- }
164
-
165
- service FovasVideo {
166
- option (service_description) = "Fovas Video Service Methods";
167
-
168
- rpc ClientGetOPFSettings (.CFovasVideo_ClientGetOPFSettings_Request) returns (.CFovasVideo_ClientGetOPFSettings_Response) {
169
- option (method_description) = "Retrieve the OPF settings JSON blob. Available via the Client for 360 Player App";
170
- }
171
- }
1
+ import "steammessages_base.proto";
2
+ import "steammessages_unified_base.steamclient.proto";
3
+
4
+ option cc_generic_services = true;
5
+
6
+ message CVideo_ClientGetVideoURL_Request {
7
+ optional uint64 video_id = 1 [(description) = "Video ID"];
8
+ optional uint32 client_cellid = 2 [(description) = "Cell ID of client, zero if unknown"];
9
+ }
10
+
11
+ message CVideo_ClientGetVideoURL_Response {
12
+ optional uint64 video_id = 1 [(description) = "Video ID"];
13
+ optional string video_url = 2 [(description) = "URL for video manifest"];
14
+ }
15
+
16
+ message VideoBookmark {
17
+ optional uint32 app_id = 1 [(description) = "App ID"];
18
+ optional uint32 playback_position_in_seconds = 2 [(description) = "How many seconds into the video the bookmark is for"];
19
+ optional uint64 video_track_id = 3 [(description) = "video track choice."];
20
+ optional uint64 audio_track_id = 4 [(description) = "audio track choice."];
21
+ optional uint64 timedtext_track_id = 5 [(description) = "timedtimed or subtitle track choice"];
22
+ optional uint32 last_modified = 6 [(description) = "when we recorded it was last modified. Not settable."];
23
+ optional bool hide_from_watch_history = 7 [default = false, (description) = "Whether I want to show this in my history"];
24
+ optional bool hide_from_library = 8 [default = false, (description) = "Whether I want to show this in my library"];
25
+ }
26
+
27
+ message CVideo_SetVideoBookmark_Notification {
28
+ repeated .VideoBookmark bookmarks = 1 [(description) = "list of bookmarks we want to store."];
29
+ }
30
+
31
+ message CVideo_GetVideoBookmarks_Request {
32
+ repeated uint32 appids = 1 [(description) = "List of App IDs to grab bookmarks for. Can be empty if using updated_since."];
33
+ optional uint32 updated_since = 2 [(description) = "Only return results after time. Min value is 1. (seconds since epoch January 1st, 1970 Unix Time)"];
34
+ }
35
+
36
+ message CVideo_GetVideoBookmarks_Response {
37
+ repeated .VideoBookmark bookmarks = 1 [(description) = "List of bookmarks we found. Can be empty."];
38
+ }
39
+
40
+ message CVideo_GameClipRepresentation {
41
+ optional string representation_name = 2 [(description) = "EG 480p30"];
42
+ optional uint32 horizontal_resolution = 3 [(description) = "Width in pixels if contains video"];
43
+ optional uint32 vertical_resolution = 4 [(description) = "Height in pixels if contains video"];
44
+ optional double frame_rate = 5 [(description) = "Frame Rate if contains video"];
45
+ optional uint32 bandwidth = 6 [(description) = "Kbps"];
46
+ optional uint32 audio_sample_rate = 7 [(description) = "Sample rate in Hz if contains audio"];
47
+ optional string frame_rate_string = 8 [(description) = "Frame Rate string if contains video"];
48
+ optional string codec = 9 [(description) = "codec(s) used"];
49
+ optional uint32 audio_channel_config = 10 [(description) = "audio channel config if relevant"];
50
+ }
51
+
52
+ message CVideo_GameClipComponent {
53
+ optional string component_name = 1 [(description) = "video/audio/etc"];
54
+ optional uint32 contents = 2 [(description) = "EVideoTrackContents"];
55
+ optional uint32 segment_size = 3 [(description) = "size of most segments (last may be shorter)"];
56
+ optional string file_type = 4 [(description) = "file type"];
57
+ repeated .CVideo_GameClipRepresentation representations = 5 [(description) = "list of representations"];
58
+ }
59
+
60
+ message CVideo_CreateGameClip_Request {
61
+ optional uint32 app_id = 1 [(description) = "app ID stream is tagged with"];
62
+ optional uint32 num_segments = 2 [(description) = "number of segments in this clip"];
63
+ optional uint32 length_milliseconds = 3 [(description) = "length of video in ms"];
64
+ optional uint32 segment_duration_timescale = 4 [(description) = "timescale (denominator) for segment duration below, eg 1000 for milliseconds"];
65
+ optional uint32 segment_duration = 5 [(description) = "length of most segments in 'timescale' units (last may be shorter)"];
66
+ repeated .CVideo_GameClipComponent components = 6 [(description) = "List of components"];
67
+ }
68
+
69
+ message CVideo_CreateGameClip_Response {
70
+ optional uint64 clip_id = 1 [(description) = "Clip ID if successful"];
71
+ }
72
+
73
+ message CVideo_GameClipSegmentInfo {
74
+ optional uint32 segment_number = 4 [(description) = "segment number"];
75
+ optional uint64 segment_size_bytes = 5 [(description) = "segment size in bytes"];
76
+ }
77
+
78
+ message CVideo_BeginGameClipSegmentsUpload_Request {
79
+ optional uint64 clip_id = 1 [(description) = "Clip ID"];
80
+ optional string component_name = 2 [(description) = "component segments belong to"];
81
+ optional string representation_name = 3 [(description) = "representation name"];
82
+ repeated .CVideo_GameClipSegmentInfo segments_to_store = 4 [(description) = "Segments the client has to upload"];
83
+ }
84
+
85
+ message CVideo_GameClipSegmentUploadInfo {
86
+ message HTTPHeaders {
87
+ optional string name = 1 [(description) = "HTTP header name"];
88
+ optional string value = 2 [(description) = "HTTP header value"];
89
+ }
90
+
91
+ optional .CVideo_GameClipSegmentInfo segment_info = 1 [(description) = "segment ID information"];
92
+ optional string url_host = 2 [(description) = "Host name of server to which file should be uploaded via HTTP PUT."];
93
+ optional string url_path = 3 [(description) = "Relative path on server to which file should be uploaded."];
94
+ optional bool use_https = 4 [(description) = "If true, use https, otherwise use http."];
95
+ repeated .CVideo_GameClipSegmentUploadInfo.HTTPHeaders request_headers = 5 [(description) = "Name-value pairs to be sent in HTTP PUT request."];
96
+ }
97
+
98
+ message CVideo_BeginGameClipSegmentsUpload_Response {
99
+ repeated .CVideo_GameClipSegmentUploadInfo segments_needed = 1 [(description) = "Segments that need uploading"];
100
+ optional bool call_again = 2 [(description) = "If true, you should ask again once you've uploaded the segments indicated in this response. There may be more we want. If there was no work to do in this response, then wait a few seconds before asking again"];
101
+ }
102
+
103
+ message CVideo_CommitGameClipSegmentsUpload_Request {
104
+ optional uint64 clip_id = 1 [(description) = "Clip ID"];
105
+ optional string component_name = 2 [(description) = "component segments belong to"];
106
+ optional string representation_name = 3 [(description) = "representation name"];
107
+ optional uint32 first_segment_number = 4 [(description) = "Segment Number of first segment uploaded in this batch"];
108
+ optional uint32 num_segments = 5 [(description) = "Number of segments in Batch"];
109
+ optional uint32 upload_result = 6 [(description) = "eresult of the upload attempt"];
110
+ }
111
+
112
+ message CVideo_CommitGameClipSegmentsUpload_Response {
113
+ }
114
+
115
+ message CVideo_UnlockedH264_Notification {
116
+ optional bytes encryption_key = 1;
117
+ }
118
+
119
+ message CFovasVideo_ClientGetOPFSettings_Request {
120
+ optional uint32 app_id = 1 [(description) = "App ID"];
121
+ optional uint32 client_cellid = 2 [(description) = "Cell ID of client, zero if unknown"];
122
+ }
123
+
124
+ message CFovasVideo_ClientGetOPFSettings_Response {
125
+ optional uint32 app_id = 1 [(description) = "App ID"];
126
+ optional string opf_settings = 2 [(description) = "JSON blob of OPF Settings"];
127
+ }
128
+
129
+ service Video {
130
+ option (service_description) = "Video methods";
131
+
132
+ rpc ClientGetVideoURL (.CVideo_ClientGetVideoURL_Request) returns (.CVideo_ClientGetVideoURL_Response) {
133
+ option (method_description) = "Get the initial URL to begin streaming a video";
134
+ }
135
+
136
+ rpc SetVideoBookmark (.CVideo_SetVideoBookmark_Notification) returns (.NoResponse) {
137
+ option (method_description) = "Bookmarks the locations in the video the user has reached. As as record playback settings per video. Fire and forget.";
138
+ }
139
+
140
+ rpc GetVideoBookmarks (.CVideo_GetVideoBookmarks_Request) returns (.CVideo_GetVideoBookmarks_Response) {
141
+ option (method_description) = "Returns the video bookmarks locations for the specific videos. Includes playback settings per video";
142
+ }
143
+
144
+ rpc CreateGameClip (.CVideo_CreateGameClip_Request) returns (.CVideo_CreateGameClip_Response) {
145
+ option (method_description) = "Create a game recording clip video";
146
+ }
147
+
148
+ rpc BeginGameClipSegmentsUpload (.CVideo_BeginGameClipSegmentsUpload_Request) returns (.CVideo_BeginGameClipSegmentsUpload_Response) {
149
+ option (method_description) = "Begin a batch of segment uploads for a GameClip";
150
+ }
151
+
152
+ rpc CommitGameClipSegmentsUpload (.CVideo_CommitGameClipSegmentsUpload_Request) returns (.CVideo_CommitGameClipSegmentsUpload_Response) {
153
+ option (method_description) = "Note completion of a batch of GameClip segment uploads";
154
+ }
155
+ }
156
+
157
+ service VideoClient {
158
+ option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
159
+
160
+ rpc NotifyUnlockedH264 (.CVideo_UnlockedH264_Notification) returns (.NoResponse) {
161
+ option (method_description) = "Notification from server to client that h264 has been unlocked";
162
+ }
163
+ }
164
+
165
+ service FovasVideo {
166
+ option (service_description) = "Fovas Video Service Methods";
167
+
168
+ rpc ClientGetOPFSettings (.CFovasVideo_ClientGetOPFSettings_Request) returns (.CFovasVideo_ClientGetOPFSettings_Response) {
169
+ option (method_description) = "Retrieve the OPF settings JSON blob. Available via the Client for 360 Player App";
170
+ }
171
+ }