-
Notifications
You must be signed in to change notification settings - Fork 156
/
Copy pathsteammessages_marketingmessages.proto
203 lines (168 loc) · 7.45 KB
/
steammessages_marketingmessages.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
syntax = "proto2";
import "steammessages_base.proto";
import "steammessages_unified_base.proto";
import "steammessages_storebrowse.proto";
option py_generic_services = true;
enum EMarketingMessageType {
k_EMarketingMessageInvalid = 0;
k_EMarketingMessageNowAvailable = 1;
k_EMarketingMessageWeekendDeal = 2;
k_EMarketingMessagePrePurchase = 3;
k_EMarketingMessagePlayNow = 4;
k_EMarketingMessagePreloadNow = 5;
k_EMarketingMessageGeneral = 6;
k_EMarketingMessageDemoQuit = 7;
k_EMarketingMessageGifting = 8;
k_EMarketingMessageEJsKorner = 9;
}
enum EMarketingMessageVisibility {
k_EMarketingMessageVisibleBeta = 1;
k_EMarketingMessageVisiblePublic = 2;
}
enum EMarketingMessageAssociationType {
k_EMarketingMessageNoAssociation = 0;
k_EMarketingMessageAppAssociation = 1;
k_EMarketingMessageSubscriptionAssociation = 2;
k_EMarketingMessagePublisherAssociation = 3;
k_EMarketingMessageGenreAssociation = 4;
k_EMarketingMessageBundleAssociation = 5;
}
enum EMarketingMessageLookupType {
k_EMarketingMessageLookupInvalid = 0;
k_EMarketingMessageLookupByGID = 1;
k_EMarketingMessageLookupActive = 2;
k_EMarketingMessageLookupByTitleWithType = 3;
k_EMarketingMessageLookupByGIDList = 4;
}
message CMarketingMessages_GetActiveMarketingMessages_Request {
optional string country = 1;
}
message CMarketingMessageProto {
optional fixed64 gid = 1;
optional string title = 2;
optional .EMarketingMessageType type = 3 [default = k_EMarketingMessageInvalid];
optional .EMarketingMessageVisibility visibility = 4 [default = k_EMarketingMessageVisibleBeta];
optional uint32 priority = 5;
optional .EMarketingMessageAssociationType association_type = 6 [default = k_EMarketingMessageNoAssociation];
optional uint32 associated_id = 7;
optional string associated_name = 8;
optional uint32 start_date = 9;
optional uint32 end_date = 10;
optional string country_allow = 11;
optional string country_deny = 12;
optional bool ownership_restrictions_overridden = 13;
optional uint32 must_own_appid = 14;
optional uint32 must_not_own_appid = 15;
optional uint32 must_own_packageid = 16;
optional uint32 must_not_own_packageid = 17;
optional uint32 must_have_launched_appid = 18;
optional string additional_restrictions = 19;
optional string template_type = 20;
optional string template_vars = 21;
optional uint32 flags = 22;
optional string creator_name = 23;
}
message CMarketingMessages_GetActiveMarketingMessages_Response {
repeated .CMarketingMessageProto messages = 1;
optional uint32 time_next_message_age = 2;
}
message CMarketingMessages_GetMarketingMessagesForUser_Request {
optional bool include_seen_messages = 1;
optional string country_code = 2;
optional int32 elanguage = 3;
optional int32 operating_system = 4 [(description) = "EOSType from client"];
optional int32 client_package_version = 5;
optional .StoreBrowseContext context = 6 [(description) = "Optional, server can fill in from country code/language if not set"];
optional .StoreBrowseItemDataRequest data_request = 7 [(description) = "If passed, item data will be returned"];
}
message CDisplayMarketingMessage {
optional fixed64 gid = 1;
optional string title = 2;
optional .EMarketingMessageType type = 3 [default = k_EMarketingMessageInvalid];
optional .StoreItemID associated_item_id = 4;
optional .StoreItem associated_item = 5;
optional string associated_name = 6;
optional string template_type = 10;
optional string template_vars_json = 11;
}
message CMarketingMessages_GetMarketingMessagesForUser_Response {
message MarketingMessageForUser {
optional bool already_seen = 1;
optional .CDisplayMarketingMessage message = 2;
}
repeated .CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser messages = 1;
}
message CMarketingMessages_GetDisplayMarketingMessage_Request {
optional fixed64 gid = 1;
optional .StoreBrowseContext context = 2;
optional .StoreBrowseItemDataRequest data_request = 3 [(description) = "If passed, item data will be returned"];
}
message CMarketingMessages_GetDisplayMarketingMessage_Response {
optional .CDisplayMarketingMessage message = 1;
}
message CMarketingMessages_MarkMessageSeen_Notification {
optional fixed64 gid = 1;
}
message CMarketingMessages_GetMarketingMessage_Request {
optional fixed64 gid = 1;
}
message CMarketingMessages_GetMarketingMessage_Response {
optional .CMarketingMessageProto message = 1;
}
message CMarketingMessages_CreateMarketingMessage_Request {
optional .CMarketingMessageProto message = 1;
}
message CMarketingMessages_CreateMarketingMessage_Response {
optional fixed64 gid = 1;
}
message CMarketingMessages_UpdateMarketingMessage_Request {
optional fixed64 gid = 1;
optional .CMarketingMessageProto message = 2;
}
message CMarketingMessages_UpdateMarketingMessage_Response {
}
message CMarketingMessages_DeleteMarketingMessage_Request {
optional fixed64 gid = 1;
}
message CMarketingMessages_DeleteMarketingMessage_Response {
}
message CMarketingMessages_FindMarketingMessages_Request {
optional .EMarketingMessageLookupType lookup_type = 1 [default = k_EMarketingMessageLookupInvalid];
optional fixed64 gid = 2;
optional .EMarketingMessageType message_type = 3 [default = k_EMarketingMessageInvalid];
repeated fixed64 gidlist = 4;
optional string title = 5;
}
message CMarketingMessages_FindMarketingMessages_Response {
repeated .CMarketingMessageProto messages = 1;
}
service MarketingMessages {
option (service_description) = "Marketing message data (\"Steam News\" updates at client startup).";
rpc GetActiveMarketingMessages (.CMarketingMessages_GetActiveMarketingMessages_Request) returns (.CMarketingMessages_GetActiveMarketingMessages_Response) {
option (method_description) = "Get a list of active marketing messages.";
}
rpc GetMarketingMessagesForUser (.CMarketingMessages_GetMarketingMessagesForUser_Request) returns (.CMarketingMessages_GetMarketingMessagesForUser_Response) {
option (method_description) = "Get a list of active marketing messages filtered for a specific user.";
}
rpc GetDisplayMarketingMessage (.CMarketingMessages_GetDisplayMarketingMessage_Request) returns (.CMarketingMessages_GetDisplayMarketingMessage_Response) {
option (method_description) = "Get a single marketing message, cacheable.";
}
rpc MarkMessageSeen (.CMarketingMessages_MarkMessageSeen_Notification) returns (.NoResponse) {
option (method_description) = "Mark that a user has viewed a message (so we won't show it again)'.";
}
rpc GetMarketingMessage (.CMarketingMessages_GetMarketingMessage_Request) returns (.CMarketingMessages_GetMarketingMessage_Response) {
option (method_description) = "Get a single marketing message. Admin account needed for non-active messages";
}
rpc CreateMarketingMessage (.CMarketingMessages_CreateMarketingMessage_Request) returns (.CMarketingMessages_CreateMarketingMessage_Response) {
option (method_description) = "Create a new marketing message.";
}
rpc UpdateMarketingMessage (.CMarketingMessages_UpdateMarketingMessage_Request) returns (.CMarketingMessages_UpdateMarketingMessage_Response) {
option (method_description) = "Modify a marketing message.";
}
rpc DeleteMarketingMessage (.CMarketingMessages_DeleteMarketingMessage_Request) returns (.CMarketingMessages_DeleteMarketingMessage_Response) {
option (method_description) = "Delete a marketing message.";
}
rpc FindMarketingMessages (.CMarketingMessages_FindMarketingMessages_Request) returns (.CMarketingMessages_FindMarketingMessages_Response) {
option (method_description) = "Search for marketing messages by name, type, etc.";
}
}