fbcrawl-colly 1.1.0 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/fbcrawl.proto +9 -5
- data/fbcrawl/fbcolly.go +76 -42
- data/fbcrawl/pb/fbcrawl.pb.go +398 -311
- data/fbcrawl/pb/fbcrawl_grpc.pb.go +36 -0
- data/lib/fbcrawl_colly/client.rb +4 -0
- data/lib/fbcrawl_colly/version.rb +1 -1
- data/lib/pb/fbcrawl_pb.rb +8 -3
- data/lib/pb/fbcrawl_services_pb.rb +1 -0
- data/main.go +6 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f420f1cc6b4b6260b8106422e80c0488a351fb21fdcaa0ad1af56b0402beb8da
|
4
|
+
data.tar.gz: 86193bbf6bfab5b48f73ad4f2594f5e4ff0761901ec5653af90ea638cbf9def6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c6396d3572f0beaedaf198388e688e4f3bed09e6920c260cfddf61c36267c97e2a6babea3d297e07d1b7a816f6b416ec7c6d1a27775d85bea23dc4b5b07d9a51
|
7
|
+
data.tar.gz: a94d9ed5fc604e6e001abfb7f93ac9a82a075b686ada0214e854761ea0aa84712651b6605a7f885dcadc45be1dcad7d8bf2ac580f0e61dd2d3b086b02849c440
|
data/fbcrawl.proto
CHANGED
@@ -6,6 +6,7 @@ option go_package = "./fbcrawl/pb;pb";
|
|
6
6
|
service Grpc {
|
7
7
|
// Sends a greeting
|
8
8
|
rpc Login (LoginRequest) returns (LoginResponse) {}
|
9
|
+
rpc FetchMyGroups (FetchMyGroupsRequest) returns (FacebookGroupList) {}
|
9
10
|
rpc FetchGroupInfo (FetchGroupInfoRequest) returns (FacebookGroup) {}
|
10
11
|
rpc FetchUserInfo (FetchUserInfoRequest) returns (FacebookUser) {}
|
11
12
|
rpc FetchGroupFeed (FetchGroupFeedRequest) returns (FacebookPostList) {}
|
@@ -14,10 +15,6 @@ service Grpc {
|
|
14
15
|
rpc FetchImageUrl (FetchImageUrlRequest) returns (FacebookImage) {}
|
15
16
|
}
|
16
17
|
|
17
|
-
message Empty {
|
18
|
-
|
19
|
-
}
|
20
|
-
|
21
18
|
message Context {
|
22
19
|
string cookies = 1;
|
23
20
|
}
|
@@ -36,6 +33,10 @@ message LoginWithCookiesRequest {
|
|
36
33
|
string cookies = 1;
|
37
34
|
}
|
38
35
|
|
36
|
+
message FetchMyGroupsRequest {
|
37
|
+
Context context = 1;
|
38
|
+
}
|
39
|
+
|
39
40
|
message FetchGroupInfoRequest {
|
40
41
|
Context context = 1;
|
41
42
|
string group_username = 2;
|
@@ -70,7 +71,10 @@ message FetchImageUrlRequest {
|
|
70
71
|
int64 image_id = 2;
|
71
72
|
}
|
72
73
|
|
73
|
-
|
74
|
+
message FacebookGroupList {
|
75
|
+
repeated FacebookGroup groups = 1;
|
76
|
+
}
|
77
|
+
|
74
78
|
message FacebookGroup {
|
75
79
|
int64 id = 1;
|
76
80
|
string name = 2;
|
data/fbcrawl/fbcolly.go
CHANGED
@@ -42,30 +42,38 @@ type FbDataFt struct {
|
|
42
42
|
PageInsights map[string]FbDataInsight `json:"page_insights"`
|
43
43
|
}
|
44
44
|
|
45
|
-
func sharedOnRequest(request *colly.Request) {
|
46
|
-
logger.Info("OnRequest ", request.URL)
|
47
|
-
//request.Headers.Set("Host", "facebook.com")
|
48
|
-
request.Headers.Set("Accept-Language", "en-US,en;q=0.9")
|
49
|
-
request.Headers.Set("accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9")
|
50
|
-
request.Headers.Set("origin", "https://mbasic.facebook.com")
|
51
|
-
|
52
|
-
//logger.Info("Saved referrer is", request.Ctx.Get("_referer"))
|
53
|
-
request.Headers.Set("referer", "https://mbasic.facebook.com/checkpoint/?_rdr")
|
54
|
-
request.Headers.Set("cache-control", "max-age=0")
|
55
|
-
request.Headers.Set("upgrade-insecure-requests", "1")
|
56
|
-
//accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
|
57
|
-
//origin: https://mbasic.facebook.com
|
58
|
-
//referer: https://mbasic.facebook.com/checkpoint/?_rdr
|
59
|
-
request.Headers.Set("User-Agent", "Mozilla/5.0 (Linux; Android 6.0.1; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Mobile Safari/537.36")
|
60
|
-
request.ResponseCharacterEncoding = "utf-8"
|
61
|
-
}
|
62
|
-
|
63
45
|
func setupSharedCollector(collector *colly.Collector) error {
|
64
46
|
var err error
|
65
47
|
extensions.Referer(collector)
|
66
48
|
collector.AllowURLRevisit = true
|
67
|
-
|
68
|
-
collector.
|
49
|
+
var lastUrl string
|
50
|
+
collector.OnRequest(func(request *colly.Request) {
|
51
|
+
lastUrl = request.URL.RawPath
|
52
|
+
logger.Info("OnRequest ", request.URL)
|
53
|
+
//request.Headers.Set("Host", "facebook.com")
|
54
|
+
request.Headers.Set("Accept-Language", "en-US,en;q=0.9")
|
55
|
+
request.Headers.Set("accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9")
|
56
|
+
request.Headers.Set("origin", "https://mbasic.facebook.com")
|
57
|
+
|
58
|
+
//logger.Info("Saved referrer is", request.Ctx.Get("_referer"))
|
59
|
+
request.Headers.Set("referer", "https://mbasic.facebook.com/checkpoint/?_rdr")
|
60
|
+
request.Headers.Set("cache-control", "max-age=0")
|
61
|
+
request.Headers.Set("upgrade-insecure-requests", "1")
|
62
|
+
//accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
|
63
|
+
//origin: https://mbasic.facebook.com
|
64
|
+
//referer: https://mbasic.facebook.com/checkpoint/?_rdr
|
65
|
+
request.Headers.Set("User-Agent", "Mozilla/5.0 (Linux; Android 6.0.1; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Mobile Safari/537.36")
|
66
|
+
request.ResponseCharacterEncoding = "utf-8"
|
67
|
+
})
|
68
|
+
collector.OnResponse(func(response *colly.Response) {
|
69
|
+
logger.Info("OnResponse ./last.html")
|
70
|
+
_ = response.Save("./last.html")
|
71
|
+
//logger.Info(string(resp.Body))
|
72
|
+
})
|
73
|
+
|
74
|
+
collector.OnHTML("a[href*=\"177066345680802\"", func(element *colly.HTMLElement) {
|
75
|
+
logger.Error("RateLimit reached ", lastUrl)
|
76
|
+
})
|
69
77
|
collector.OnError(func(resp *colly.Response, errHttp error) {
|
70
78
|
err = errHttp
|
71
79
|
logger.Error("OnError", err)
|
@@ -73,12 +81,6 @@ func setupSharedCollector(collector *colly.Collector) error {
|
|
73
81
|
return err
|
74
82
|
}
|
75
83
|
|
76
|
-
func sharedOnResponse(response *colly.Response) {
|
77
|
-
logger.Info("OnResponse ./last.html")
|
78
|
-
_ = response.Save("./last.html")
|
79
|
-
//logger.Info(string(resp.Body))
|
80
|
-
}
|
81
|
-
|
82
84
|
func getForm(element *colly.HTMLElement, err error) (string, error, map[string]string) {
|
83
85
|
submitUrl, exists := element.DOM.Attr("action")
|
84
86
|
if !exists {
|
@@ -342,7 +344,7 @@ func (f *Fbcolly) FetchImageUrl(imageId int64) (error, *pb.FacebookImage) {
|
|
342
344
|
err := setupSharedCollector(collector)
|
343
345
|
result := pb.FacebookImage{Id: imageId}
|
344
346
|
|
345
|
-
collector.OnHTML("a", func(element *colly.HTMLElement) {
|
347
|
+
collector.OnHTML("a[href*=\"fbcdn\"]", func(element *colly.HTMLElement) {
|
346
348
|
result.Url = element.Attr("href")
|
347
349
|
})
|
348
350
|
|
@@ -408,20 +410,33 @@ func (f *Fbcolly) FetchPost(groupId int64, postId int64, commentNextCursor strin
|
|
408
410
|
element.DOM.Find("h3 + div + div + div").Parent().Parent().Each(func(i int, selection *goquery.Selection) {
|
409
411
|
//author
|
410
412
|
commentId, _ := strconv.ParseInt(selection.AttrOr("id", ""), 10, 64)
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
413
|
+
if commentId > 0 {
|
414
|
+
createdAtWhenResult, err := f.w.Parse(selection.Find("abbr").Text(), time.Now())
|
415
|
+
if err != nil {
|
416
|
+
logger.Error(err)
|
417
|
+
return
|
418
|
+
}
|
419
|
+
parsed, err := url.Parse(selection.Find("h3 > a").AttrOr("href", ""))
|
420
|
+
if err != nil {
|
421
|
+
logger.Error(err)
|
422
|
+
return
|
423
|
+
}
|
424
|
+
if len(parsed.Path) == 0 {
|
425
|
+
logger.Error("Empty path for commentId ", commentId)
|
426
|
+
return
|
427
|
+
}
|
428
|
+
if len(parsed.Path) > 1 {
|
429
|
+
post.Comments.Comments = append(post.Comments.Comments, &pb.FacebookComment{
|
430
|
+
Id: commentId,
|
431
|
+
Post: &pb.FacebookPost{Id: post.Id},
|
432
|
+
User: &pb.FacebookUser{
|
433
|
+
Username: parsed.Path[1:],
|
434
|
+
Name: selection.Find("h3 > a").Text(),
|
435
|
+
},
|
436
|
+
Content: selection.Find("h3 + div").Text(),
|
437
|
+
CreatedAt: createdAtWhenResult.Time.Unix(),
|
438
|
+
})
|
439
|
+
}
|
425
440
|
}
|
426
441
|
})
|
427
442
|
|
@@ -445,6 +460,25 @@ func (f *Fbcolly) LoginWithCookies(cookies string) error {
|
|
445
460
|
return collector.SetCookies("https://mbasic.facebook.com/", storage.UnstringifyCookies(cookies))
|
446
461
|
}
|
447
462
|
|
463
|
+
func (f *Fbcolly) FetchMyGroups() (error, *pb.FacebookGroupList) {
|
464
|
+
collector := f.collector.Clone()
|
465
|
+
err := setupSharedCollector(collector)
|
466
|
+
result := &pb.FacebookGroupList{Groups: []*pb.FacebookGroup{}}
|
467
|
+
|
468
|
+
collector.OnHTML("li table a", func(element *colly.HTMLElement) {
|
469
|
+
result.Groups = append(result.Groups, &pb.FacebookGroup{
|
470
|
+
Id: getNumberFromText(element.Attr("href")),
|
471
|
+
Name: element.Text,
|
472
|
+
})
|
473
|
+
})
|
474
|
+
|
475
|
+
err = collector.Visit("https://mbasic.facebook.com/groups/?seemore")
|
476
|
+
if err != nil {
|
477
|
+
logger.Error("crawl by colly err:", err)
|
478
|
+
}
|
479
|
+
return err, result
|
480
|
+
}
|
481
|
+
|
448
482
|
//func getUsernameFromHref(href string) string {
|
449
483
|
// return regexp.MustCompile("/([\\d\\w.]+).*").FindStringSubmatch(href)[1]
|
450
484
|
//}
|
@@ -470,7 +504,7 @@ func getImageIdFromHref(href string) int64 {
|
|
470
504
|
}
|
471
505
|
|
472
506
|
func getNumberFromText(text string) int64 {
|
473
|
-
logger.
|
507
|
+
logger.Info("getNumberFromText ", text)
|
474
508
|
if len(text) > 0 {
|
475
509
|
match := regexp.MustCompile("(\\d+)\\s?([km]?)").FindStringSubmatch(text)
|
476
510
|
if len(match) > 0 {
|
data/fbcrawl/pb/fbcrawl.pb.go
CHANGED
@@ -25,44 +25,6 @@ const (
|
|
25
25
|
// of the legacy proto package is being used.
|
26
26
|
const _ = proto.ProtoPackageIsVersion4
|
27
27
|
|
28
|
-
type Empty struct {
|
29
|
-
state protoimpl.MessageState
|
30
|
-
sizeCache protoimpl.SizeCache
|
31
|
-
unknownFields protoimpl.UnknownFields
|
32
|
-
}
|
33
|
-
|
34
|
-
func (x *Empty) Reset() {
|
35
|
-
*x = Empty{}
|
36
|
-
if protoimpl.UnsafeEnabled {
|
37
|
-
mi := &file_fbcrawl_proto_msgTypes[0]
|
38
|
-
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
39
|
-
ms.StoreMessageInfo(mi)
|
40
|
-
}
|
41
|
-
}
|
42
|
-
|
43
|
-
func (x *Empty) String() string {
|
44
|
-
return protoimpl.X.MessageStringOf(x)
|
45
|
-
}
|
46
|
-
|
47
|
-
func (*Empty) ProtoMessage() {}
|
48
|
-
|
49
|
-
func (x *Empty) ProtoReflect() protoreflect.Message {
|
50
|
-
mi := &file_fbcrawl_proto_msgTypes[0]
|
51
|
-
if protoimpl.UnsafeEnabled && x != nil {
|
52
|
-
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
53
|
-
if ms.LoadMessageInfo() == nil {
|
54
|
-
ms.StoreMessageInfo(mi)
|
55
|
-
}
|
56
|
-
return ms
|
57
|
-
}
|
58
|
-
return mi.MessageOf(x)
|
59
|
-
}
|
60
|
-
|
61
|
-
// Deprecated: Use Empty.ProtoReflect.Descriptor instead.
|
62
|
-
func (*Empty) Descriptor() ([]byte, []int) {
|
63
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{0}
|
64
|
-
}
|
65
|
-
|
66
28
|
type Context struct {
|
67
29
|
state protoimpl.MessageState
|
68
30
|
sizeCache protoimpl.SizeCache
|
@@ -74,7 +36,7 @@ type Context struct {
|
|
74
36
|
func (x *Context) Reset() {
|
75
37
|
*x = Context{}
|
76
38
|
if protoimpl.UnsafeEnabled {
|
77
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
39
|
+
mi := &file_fbcrawl_proto_msgTypes[0]
|
78
40
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
79
41
|
ms.StoreMessageInfo(mi)
|
80
42
|
}
|
@@ -87,7 +49,7 @@ func (x *Context) String() string {
|
|
87
49
|
func (*Context) ProtoMessage() {}
|
88
50
|
|
89
51
|
func (x *Context) ProtoReflect() protoreflect.Message {
|
90
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
52
|
+
mi := &file_fbcrawl_proto_msgTypes[0]
|
91
53
|
if protoimpl.UnsafeEnabled && x != nil {
|
92
54
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
93
55
|
if ms.LoadMessageInfo() == nil {
|
@@ -100,7 +62,7 @@ func (x *Context) ProtoReflect() protoreflect.Message {
|
|
100
62
|
|
101
63
|
// Deprecated: Use Context.ProtoReflect.Descriptor instead.
|
102
64
|
func (*Context) Descriptor() ([]byte, []int) {
|
103
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
65
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{0}
|
104
66
|
}
|
105
67
|
|
106
68
|
func (x *Context) GetCookies() string {
|
@@ -123,7 +85,7 @@ type LoginRequest struct {
|
|
123
85
|
func (x *LoginRequest) Reset() {
|
124
86
|
*x = LoginRequest{}
|
125
87
|
if protoimpl.UnsafeEnabled {
|
126
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
88
|
+
mi := &file_fbcrawl_proto_msgTypes[1]
|
127
89
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
128
90
|
ms.StoreMessageInfo(mi)
|
129
91
|
}
|
@@ -136,7 +98,7 @@ func (x *LoginRequest) String() string {
|
|
136
98
|
func (*LoginRequest) ProtoMessage() {}
|
137
99
|
|
138
100
|
func (x *LoginRequest) ProtoReflect() protoreflect.Message {
|
139
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
101
|
+
mi := &file_fbcrawl_proto_msgTypes[1]
|
140
102
|
if protoimpl.UnsafeEnabled && x != nil {
|
141
103
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
142
104
|
if ms.LoadMessageInfo() == nil {
|
@@ -149,7 +111,7 @@ func (x *LoginRequest) ProtoReflect() protoreflect.Message {
|
|
149
111
|
|
150
112
|
// Deprecated: Use LoginRequest.ProtoReflect.Descriptor instead.
|
151
113
|
func (*LoginRequest) Descriptor() ([]byte, []int) {
|
152
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
114
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{1}
|
153
115
|
}
|
154
116
|
|
155
117
|
func (x *LoginRequest) GetEmail() string {
|
@@ -184,7 +146,7 @@ type LoginResponse struct {
|
|
184
146
|
func (x *LoginResponse) Reset() {
|
185
147
|
*x = LoginResponse{}
|
186
148
|
if protoimpl.UnsafeEnabled {
|
187
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
149
|
+
mi := &file_fbcrawl_proto_msgTypes[2]
|
188
150
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
189
151
|
ms.StoreMessageInfo(mi)
|
190
152
|
}
|
@@ -197,7 +159,7 @@ func (x *LoginResponse) String() string {
|
|
197
159
|
func (*LoginResponse) ProtoMessage() {}
|
198
160
|
|
199
161
|
func (x *LoginResponse) ProtoReflect() protoreflect.Message {
|
200
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
162
|
+
mi := &file_fbcrawl_proto_msgTypes[2]
|
201
163
|
if protoimpl.UnsafeEnabled && x != nil {
|
202
164
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
203
165
|
if ms.LoadMessageInfo() == nil {
|
@@ -210,7 +172,7 @@ func (x *LoginResponse) ProtoReflect() protoreflect.Message {
|
|
210
172
|
|
211
173
|
// Deprecated: Use LoginResponse.ProtoReflect.Descriptor instead.
|
212
174
|
func (*LoginResponse) Descriptor() ([]byte, []int) {
|
213
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
175
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{2}
|
214
176
|
}
|
215
177
|
|
216
178
|
func (x *LoginResponse) GetCookies() string {
|
@@ -231,7 +193,7 @@ type LoginWithCookiesRequest struct {
|
|
231
193
|
func (x *LoginWithCookiesRequest) Reset() {
|
232
194
|
*x = LoginWithCookiesRequest{}
|
233
195
|
if protoimpl.UnsafeEnabled {
|
234
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
196
|
+
mi := &file_fbcrawl_proto_msgTypes[3]
|
235
197
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
236
198
|
ms.StoreMessageInfo(mi)
|
237
199
|
}
|
@@ -244,7 +206,7 @@ func (x *LoginWithCookiesRequest) String() string {
|
|
244
206
|
func (*LoginWithCookiesRequest) ProtoMessage() {}
|
245
207
|
|
246
208
|
func (x *LoginWithCookiesRequest) ProtoReflect() protoreflect.Message {
|
247
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
209
|
+
mi := &file_fbcrawl_proto_msgTypes[3]
|
248
210
|
if protoimpl.UnsafeEnabled && x != nil {
|
249
211
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
250
212
|
if ms.LoadMessageInfo() == nil {
|
@@ -257,7 +219,7 @@ func (x *LoginWithCookiesRequest) ProtoReflect() protoreflect.Message {
|
|
257
219
|
|
258
220
|
// Deprecated: Use LoginWithCookiesRequest.ProtoReflect.Descriptor instead.
|
259
221
|
func (*LoginWithCookiesRequest) Descriptor() ([]byte, []int) {
|
260
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
222
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{3}
|
261
223
|
}
|
262
224
|
|
263
225
|
func (x *LoginWithCookiesRequest) GetCookies() string {
|
@@ -267,6 +229,53 @@ func (x *LoginWithCookiesRequest) GetCookies() string {
|
|
267
229
|
return ""
|
268
230
|
}
|
269
231
|
|
232
|
+
type FetchMyGroupsRequest struct {
|
233
|
+
state protoimpl.MessageState
|
234
|
+
sizeCache protoimpl.SizeCache
|
235
|
+
unknownFields protoimpl.UnknownFields
|
236
|
+
|
237
|
+
Context *Context `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"`
|
238
|
+
}
|
239
|
+
|
240
|
+
func (x *FetchMyGroupsRequest) Reset() {
|
241
|
+
*x = FetchMyGroupsRequest{}
|
242
|
+
if protoimpl.UnsafeEnabled {
|
243
|
+
mi := &file_fbcrawl_proto_msgTypes[4]
|
244
|
+
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
245
|
+
ms.StoreMessageInfo(mi)
|
246
|
+
}
|
247
|
+
}
|
248
|
+
|
249
|
+
func (x *FetchMyGroupsRequest) String() string {
|
250
|
+
return protoimpl.X.MessageStringOf(x)
|
251
|
+
}
|
252
|
+
|
253
|
+
func (*FetchMyGroupsRequest) ProtoMessage() {}
|
254
|
+
|
255
|
+
func (x *FetchMyGroupsRequest) ProtoReflect() protoreflect.Message {
|
256
|
+
mi := &file_fbcrawl_proto_msgTypes[4]
|
257
|
+
if protoimpl.UnsafeEnabled && x != nil {
|
258
|
+
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
259
|
+
if ms.LoadMessageInfo() == nil {
|
260
|
+
ms.StoreMessageInfo(mi)
|
261
|
+
}
|
262
|
+
return ms
|
263
|
+
}
|
264
|
+
return mi.MessageOf(x)
|
265
|
+
}
|
266
|
+
|
267
|
+
// Deprecated: Use FetchMyGroupsRequest.ProtoReflect.Descriptor instead.
|
268
|
+
func (*FetchMyGroupsRequest) Descriptor() ([]byte, []int) {
|
269
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{4}
|
270
|
+
}
|
271
|
+
|
272
|
+
func (x *FetchMyGroupsRequest) GetContext() *Context {
|
273
|
+
if x != nil {
|
274
|
+
return x.Context
|
275
|
+
}
|
276
|
+
return nil
|
277
|
+
}
|
278
|
+
|
270
279
|
type FetchGroupInfoRequest struct {
|
271
280
|
state protoimpl.MessageState
|
272
281
|
sizeCache protoimpl.SizeCache
|
@@ -629,7 +638,53 @@ func (x *FetchImageUrlRequest) GetImageId() int64 {
|
|
629
638
|
return 0
|
630
639
|
}
|
631
640
|
|
632
|
-
|
641
|
+
type FacebookGroupList struct {
|
642
|
+
state protoimpl.MessageState
|
643
|
+
sizeCache protoimpl.SizeCache
|
644
|
+
unknownFields protoimpl.UnknownFields
|
645
|
+
|
646
|
+
Groups []*FacebookGroup `protobuf:"bytes,1,rep,name=groups,proto3" json:"groups,omitempty"`
|
647
|
+
}
|
648
|
+
|
649
|
+
func (x *FacebookGroupList) Reset() {
|
650
|
+
*x = FacebookGroupList{}
|
651
|
+
if protoimpl.UnsafeEnabled {
|
652
|
+
mi := &file_fbcrawl_proto_msgTypes[11]
|
653
|
+
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
654
|
+
ms.StoreMessageInfo(mi)
|
655
|
+
}
|
656
|
+
}
|
657
|
+
|
658
|
+
func (x *FacebookGroupList) String() string {
|
659
|
+
return protoimpl.X.MessageStringOf(x)
|
660
|
+
}
|
661
|
+
|
662
|
+
func (*FacebookGroupList) ProtoMessage() {}
|
663
|
+
|
664
|
+
func (x *FacebookGroupList) ProtoReflect() protoreflect.Message {
|
665
|
+
mi := &file_fbcrawl_proto_msgTypes[11]
|
666
|
+
if protoimpl.UnsafeEnabled && x != nil {
|
667
|
+
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
668
|
+
if ms.LoadMessageInfo() == nil {
|
669
|
+
ms.StoreMessageInfo(mi)
|
670
|
+
}
|
671
|
+
return ms
|
672
|
+
}
|
673
|
+
return mi.MessageOf(x)
|
674
|
+
}
|
675
|
+
|
676
|
+
// Deprecated: Use FacebookGroupList.ProtoReflect.Descriptor instead.
|
677
|
+
func (*FacebookGroupList) Descriptor() ([]byte, []int) {
|
678
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{11}
|
679
|
+
}
|
680
|
+
|
681
|
+
func (x *FacebookGroupList) GetGroups() []*FacebookGroup {
|
682
|
+
if x != nil {
|
683
|
+
return x.Groups
|
684
|
+
}
|
685
|
+
return nil
|
686
|
+
}
|
687
|
+
|
633
688
|
type FacebookGroup struct {
|
634
689
|
state protoimpl.MessageState
|
635
690
|
sizeCache protoimpl.SizeCache
|
@@ -643,7 +698,7 @@ type FacebookGroup struct {
|
|
643
698
|
func (x *FacebookGroup) Reset() {
|
644
699
|
*x = FacebookGroup{}
|
645
700
|
if protoimpl.UnsafeEnabled {
|
646
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
701
|
+
mi := &file_fbcrawl_proto_msgTypes[12]
|
647
702
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
648
703
|
ms.StoreMessageInfo(mi)
|
649
704
|
}
|
@@ -656,7 +711,7 @@ func (x *FacebookGroup) String() string {
|
|
656
711
|
func (*FacebookGroup) ProtoMessage() {}
|
657
712
|
|
658
713
|
func (x *FacebookGroup) ProtoReflect() protoreflect.Message {
|
659
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
714
|
+
mi := &file_fbcrawl_proto_msgTypes[12]
|
660
715
|
if protoimpl.UnsafeEnabled && x != nil {
|
661
716
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
662
717
|
if ms.LoadMessageInfo() == nil {
|
@@ -669,7 +724,7 @@ func (x *FacebookGroup) ProtoReflect() protoreflect.Message {
|
|
669
724
|
|
670
725
|
// Deprecated: Use FacebookGroup.ProtoReflect.Descriptor instead.
|
671
726
|
func (*FacebookGroup) Descriptor() ([]byte, []int) {
|
672
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
727
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{12}
|
673
728
|
}
|
674
729
|
|
675
730
|
func (x *FacebookGroup) GetId() int64 {
|
@@ -707,7 +762,7 @@ type FacebookUser struct {
|
|
707
762
|
func (x *FacebookUser) Reset() {
|
708
763
|
*x = FacebookUser{}
|
709
764
|
if protoimpl.UnsafeEnabled {
|
710
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
765
|
+
mi := &file_fbcrawl_proto_msgTypes[13]
|
711
766
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
712
767
|
ms.StoreMessageInfo(mi)
|
713
768
|
}
|
@@ -720,7 +775,7 @@ func (x *FacebookUser) String() string {
|
|
720
775
|
func (*FacebookUser) ProtoMessage() {}
|
721
776
|
|
722
777
|
func (x *FacebookUser) ProtoReflect() protoreflect.Message {
|
723
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
778
|
+
mi := &file_fbcrawl_proto_msgTypes[13]
|
724
779
|
if protoimpl.UnsafeEnabled && x != nil {
|
725
780
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
726
781
|
if ms.LoadMessageInfo() == nil {
|
@@ -733,7 +788,7 @@ func (x *FacebookUser) ProtoReflect() protoreflect.Message {
|
|
733
788
|
|
734
789
|
// Deprecated: Use FacebookUser.ProtoReflect.Descriptor instead.
|
735
790
|
func (*FacebookUser) Descriptor() ([]byte, []int) {
|
736
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
791
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{13}
|
737
792
|
}
|
738
793
|
|
739
794
|
func (x *FacebookUser) GetId() int64 {
|
@@ -785,7 +840,7 @@ type FacebookPost struct {
|
|
785
840
|
func (x *FacebookPost) Reset() {
|
786
841
|
*x = FacebookPost{}
|
787
842
|
if protoimpl.UnsafeEnabled {
|
788
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
843
|
+
mi := &file_fbcrawl_proto_msgTypes[14]
|
789
844
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
790
845
|
ms.StoreMessageInfo(mi)
|
791
846
|
}
|
@@ -798,7 +853,7 @@ func (x *FacebookPost) String() string {
|
|
798
853
|
func (*FacebookPost) ProtoMessage() {}
|
799
854
|
|
800
855
|
func (x *FacebookPost) ProtoReflect() protoreflect.Message {
|
801
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
856
|
+
mi := &file_fbcrawl_proto_msgTypes[14]
|
802
857
|
if protoimpl.UnsafeEnabled && x != nil {
|
803
858
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
804
859
|
if ms.LoadMessageInfo() == nil {
|
@@ -811,7 +866,7 @@ func (x *FacebookPost) ProtoReflect() protoreflect.Message {
|
|
811
866
|
|
812
867
|
// Deprecated: Use FacebookPost.ProtoReflect.Descriptor instead.
|
813
868
|
func (*FacebookPost) Descriptor() ([]byte, []int) {
|
814
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
869
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{14}
|
815
870
|
}
|
816
871
|
|
817
872
|
func (x *FacebookPost) GetId() int64 {
|
@@ -903,7 +958,7 @@ type CommentList struct {
|
|
903
958
|
func (x *CommentList) Reset() {
|
904
959
|
*x = CommentList{}
|
905
960
|
if protoimpl.UnsafeEnabled {
|
906
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
961
|
+
mi := &file_fbcrawl_proto_msgTypes[15]
|
907
962
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
908
963
|
ms.StoreMessageInfo(mi)
|
909
964
|
}
|
@@ -916,7 +971,7 @@ func (x *CommentList) String() string {
|
|
916
971
|
func (*CommentList) ProtoMessage() {}
|
917
972
|
|
918
973
|
func (x *CommentList) ProtoReflect() protoreflect.Message {
|
919
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
974
|
+
mi := &file_fbcrawl_proto_msgTypes[15]
|
920
975
|
if protoimpl.UnsafeEnabled && x != nil {
|
921
976
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
922
977
|
if ms.LoadMessageInfo() == nil {
|
@@ -929,7 +984,7 @@ func (x *CommentList) ProtoReflect() protoreflect.Message {
|
|
929
984
|
|
930
985
|
// Deprecated: Use CommentList.ProtoReflect.Descriptor instead.
|
931
986
|
func (*CommentList) Descriptor() ([]byte, []int) {
|
932
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
987
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{15}
|
933
988
|
}
|
934
989
|
|
935
990
|
func (x *CommentList) GetComments() []*FacebookComment {
|
@@ -958,7 +1013,7 @@ type FacebookImage struct {
|
|
958
1013
|
func (x *FacebookImage) Reset() {
|
959
1014
|
*x = FacebookImage{}
|
960
1015
|
if protoimpl.UnsafeEnabled {
|
961
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1016
|
+
mi := &file_fbcrawl_proto_msgTypes[16]
|
962
1017
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
963
1018
|
ms.StoreMessageInfo(mi)
|
964
1019
|
}
|
@@ -971,7 +1026,7 @@ func (x *FacebookImage) String() string {
|
|
971
1026
|
func (*FacebookImage) ProtoMessage() {}
|
972
1027
|
|
973
1028
|
func (x *FacebookImage) ProtoReflect() protoreflect.Message {
|
974
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1029
|
+
mi := &file_fbcrawl_proto_msgTypes[16]
|
975
1030
|
if protoimpl.UnsafeEnabled && x != nil {
|
976
1031
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
977
1032
|
if ms.LoadMessageInfo() == nil {
|
@@ -984,7 +1039,7 @@ func (x *FacebookImage) ProtoReflect() protoreflect.Message {
|
|
984
1039
|
|
985
1040
|
// Deprecated: Use FacebookImage.ProtoReflect.Descriptor instead.
|
986
1041
|
func (*FacebookImage) Descriptor() ([]byte, []int) {
|
987
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
1042
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{16}
|
988
1043
|
}
|
989
1044
|
|
990
1045
|
func (x *FacebookImage) GetId() int64 {
|
@@ -1016,7 +1071,7 @@ type FacebookComment struct {
|
|
1016
1071
|
func (x *FacebookComment) Reset() {
|
1017
1072
|
*x = FacebookComment{}
|
1018
1073
|
if protoimpl.UnsafeEnabled {
|
1019
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1074
|
+
mi := &file_fbcrawl_proto_msgTypes[17]
|
1020
1075
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
1021
1076
|
ms.StoreMessageInfo(mi)
|
1022
1077
|
}
|
@@ -1029,7 +1084,7 @@ func (x *FacebookComment) String() string {
|
|
1029
1084
|
func (*FacebookComment) ProtoMessage() {}
|
1030
1085
|
|
1031
1086
|
func (x *FacebookComment) ProtoReflect() protoreflect.Message {
|
1032
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1087
|
+
mi := &file_fbcrawl_proto_msgTypes[17]
|
1033
1088
|
if protoimpl.UnsafeEnabled && x != nil {
|
1034
1089
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
1035
1090
|
if ms.LoadMessageInfo() == nil {
|
@@ -1042,7 +1097,7 @@ func (x *FacebookComment) ProtoReflect() protoreflect.Message {
|
|
1042
1097
|
|
1043
1098
|
// Deprecated: Use FacebookComment.ProtoReflect.Descriptor instead.
|
1044
1099
|
func (*FacebookComment) Descriptor() ([]byte, []int) {
|
1045
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
1100
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{17}
|
1046
1101
|
}
|
1047
1102
|
|
1048
1103
|
func (x *FacebookComment) GetId() int64 {
|
@@ -1092,7 +1147,7 @@ type FacebookPostList struct {
|
|
1092
1147
|
func (x *FacebookPostList) Reset() {
|
1093
1148
|
*x = FacebookPostList{}
|
1094
1149
|
if protoimpl.UnsafeEnabled {
|
1095
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1150
|
+
mi := &file_fbcrawl_proto_msgTypes[18]
|
1096
1151
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
1097
1152
|
ms.StoreMessageInfo(mi)
|
1098
1153
|
}
|
@@ -1105,7 +1160,7 @@ func (x *FacebookPostList) String() string {
|
|
1105
1160
|
func (*FacebookPostList) ProtoMessage() {}
|
1106
1161
|
|
1107
1162
|
func (x *FacebookPostList) ProtoReflect() protoreflect.Message {
|
1108
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1163
|
+
mi := &file_fbcrawl_proto_msgTypes[18]
|
1109
1164
|
if protoimpl.UnsafeEnabled && x != nil {
|
1110
1165
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
1111
1166
|
if ms.LoadMessageInfo() == nil {
|
@@ -1118,7 +1173,7 @@ func (x *FacebookPostList) ProtoReflect() protoreflect.Message {
|
|
1118
1173
|
|
1119
1174
|
// Deprecated: Use FacebookPostList.ProtoReflect.Descriptor instead.
|
1120
1175
|
func (*FacebookPostList) Descriptor() ([]byte, []int) {
|
1121
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
1176
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{18}
|
1122
1177
|
}
|
1123
1178
|
|
1124
1179
|
func (x *FacebookPostList) GetPosts() []*FacebookPost {
|
@@ -1147,7 +1202,7 @@ type FacebookImageList struct {
|
|
1147
1202
|
func (x *FacebookImageList) Reset() {
|
1148
1203
|
*x = FacebookImageList{}
|
1149
1204
|
if protoimpl.UnsafeEnabled {
|
1150
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1205
|
+
mi := &file_fbcrawl_proto_msgTypes[19]
|
1151
1206
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
1152
1207
|
ms.StoreMessageInfo(mi)
|
1153
1208
|
}
|
@@ -1160,7 +1215,7 @@ func (x *FacebookImageList) String() string {
|
|
1160
1215
|
func (*FacebookImageList) ProtoMessage() {}
|
1161
1216
|
|
1162
1217
|
func (x *FacebookImageList) ProtoReflect() protoreflect.Message {
|
1163
|
-
mi := &file_fbcrawl_proto_msgTypes[
|
1218
|
+
mi := &file_fbcrawl_proto_msgTypes[19]
|
1164
1219
|
if protoimpl.UnsafeEnabled && x != nil {
|
1165
1220
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
1166
1221
|
if ms.LoadMessageInfo() == nil {
|
@@ -1173,7 +1228,7 @@ func (x *FacebookImageList) ProtoReflect() protoreflect.Message {
|
|
1173
1228
|
|
1174
1229
|
// Deprecated: Use FacebookImageList.ProtoReflect.Descriptor instead.
|
1175
1230
|
func (*FacebookImageList) Descriptor() ([]byte, []int) {
|
1176
|
-
return file_fbcrawl_proto_rawDescGZIP(), []int{
|
1231
|
+
return file_fbcrawl_proto_rawDescGZIP(), []int{19}
|
1177
1232
|
}
|
1178
1233
|
|
1179
1234
|
func (x *FacebookImageList) GetImages() []*FacebookImage {
|
@@ -1194,188 +1249,203 @@ var File_fbcrawl_proto protoreflect.FileDescriptor
|
|
1194
1249
|
|
1195
1250
|
var file_fbcrawl_proto_rawDesc = []byte{
|
1196
1251
|
0x0a, 0x0d, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
|
1197
|
-
0x0d, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x22,
|
1198
|
-
0x0a,
|
1199
|
-
|
1200
|
-
|
1201
|
-
|
1202
|
-
|
1203
|
-
|
1204
|
-
|
1205
|
-
|
1206
|
-
|
1207
|
-
|
1208
|
-
|
1209
|
-
|
1210
|
-
|
1211
|
-
|
1212
|
-
|
1213
|
-
|
1214
|
-
|
1215
|
-
|
1216
|
-
|
1217
|
-
|
1218
|
-
0x6f, 0x75, 0x70, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
|
1219
|
-
0x28, 0x09, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d,
|
1220
|
-
0x65, 0x22, 0x64, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e,
|
1252
|
+
0x0d, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x22, 0x23,
|
1253
|
+
0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6f,
|
1254
|
+
0x6b, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6f, 0x6b,
|
1255
|
+
0x69, 0x65, 0x73, 0x22, 0x61, 0x0a, 0x0c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75,
|
1256
|
+
0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01,
|
1257
|
+
0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73,
|
1258
|
+
0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73,
|
1259
|
+
0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x70, 0x5f, 0x73, 0x65,
|
1260
|
+
0x63, 0x72, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x70,
|
1261
|
+
0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x29, 0x0a, 0x0d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52,
|
1262
|
+
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6f, 0x6b, 0x69,
|
1263
|
+
0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65,
|
1264
|
+
0x73, 0x22, 0x33, 0x0a, 0x17, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6f,
|
1265
|
+
0x6f, 0x6b, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07,
|
1266
|
+
0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63,
|
1267
|
+
0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x73, 0x22, 0x48, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x4d,
|
1268
|
+
0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30,
|
1269
|
+
0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
1270
|
+
0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
|
1271
|
+
0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
|
1272
|
+
0x22, 0x70, 0x0a, 0x15, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e,
|
1221
1273
|
0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x63, 0x6f, 0x6e,
|
1222
1274
|
0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63,
|
1223
1275
|
0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65,
|
1224
|
-
0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12,
|
1225
|
-
|
1226
|
-
|
1227
|
-
|
1228
|
-
|
1229
|
-
|
1230
|
-
|
1231
|
-
0x65, 0x78, 0x74,
|
1232
|
-
|
1233
|
-
|
1234
|
-
|
1235
|
-
|
1236
|
-
|
1237
|
-
|
1238
|
-
|
1239
|
-
|
1240
|
-
|
1241
|
-
|
1242
|
-
|
1243
|
-
|
1244
|
-
|
1245
|
-
|
1246
|
-
|
1247
|
-
|
1248
|
-
|
1249
|
-
|
1250
|
-
|
1251
|
-
|
1252
|
-
0x74,
|
1253
|
-
|
1254
|
-
|
1255
|
-
|
1256
|
-
|
1257
|
-
|
1258
|
-
|
1259
|
-
|
1260
|
-
|
1261
|
-
|
1262
|
-
|
1263
|
-
|
1264
|
-
|
1265
|
-
|
1266
|
-
|
1267
|
-
|
1268
|
-
|
1269
|
-
|
1270
|
-
|
1271
|
-
|
1272
|
-
|
1273
|
-
|
1274
|
-
|
1275
|
-
|
1276
|
-
|
1277
|
-
|
1278
|
-
|
1279
|
-
|
1280
|
-
|
1281
|
-
|
1282
|
-
|
1283
|
-
|
1284
|
-
|
1285
|
-
|
1286
|
-
|
1287
|
-
|
1288
|
-
|
1289
|
-
|
1290
|
-
|
1291
|
-
0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
|
1292
|
-
0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d,
|
1293
|
-
0x61, 0x67, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f,
|
1294
|
-
0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62,
|
1295
|
-
0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65,
|
1296
|
-
0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65,
|
1297
|
-
0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
|
1298
|
-
0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65,
|
1299
|
-
0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69,
|
1300
|
-
0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d,
|
1301
|
-
0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a,
|
1302
|
-
0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b,
|
1303
|
-
0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75,
|
1304
|
-
0x6e, 0x74, 0x22, 0x6a, 0x0a, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73,
|
1305
|
-
0x74, 0x12, 0x3a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20,
|
1306
|
-
0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
|
1307
|
-
0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d,
|
1308
|
-
0x65, 0x6e, 0x74, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a,
|
1309
|
-
0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x0c, 0x20, 0x01,
|
1310
|
-
0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x31,
|
1311
|
-
0x0a, 0x0d, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12,
|
1312
|
-
0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12,
|
1313
|
-
0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72,
|
1314
|
-
0x6c, 0x22, 0xbc, 0x01, 0x0a, 0x0f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f,
|
1315
|
-
0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
1316
|
-
0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20,
|
1276
|
+
0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x67,
|
1277
|
+
0x72, 0x6f, 0x75, 0x70, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
|
1278
|
+
0x01, 0x28, 0x09, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61,
|
1279
|
+
0x6d, 0x65, 0x22, 0x64, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x49,
|
1280
|
+
0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x63, 0x6f,
|
1281
|
+
0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62,
|
1282
|
+
0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x74,
|
1283
|
+
0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1a, 0x0a, 0x08,
|
1284
|
+
0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
|
1285
|
+
0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x15, 0x46, 0x65, 0x74,
|
1286
|
+
0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
|
1287
|
+
0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20,
|
1288
|
+
0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
|
1289
|
+
0x6c, 0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e,
|
1290
|
+
0x74, 0x65, 0x78, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64,
|
1291
|
+
0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12,
|
1292
|
+
0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x03,
|
1293
|
+
0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72,
|
1294
|
+
0x22, 0xa8, 0x01, 0x0a, 0x10, 0x46, 0x65, 0x74, 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65,
|
1295
|
+
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
|
1296
|
+
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c,
|
1297
|
+
0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07,
|
1298
|
+
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70,
|
1299
|
+
0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70,
|
1300
|
+
0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
|
1301
|
+
0x01, 0x28, 0x03, 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x63,
|
1302
|
+
0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73,
|
1303
|
+
0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e,
|
1304
|
+
0x74, 0x4e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x87, 0x01, 0x0a, 0x19,
|
1305
|
+
0x46, 0x65, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67,
|
1306
|
+
0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x63, 0x6f, 0x6e,
|
1307
|
+
0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63,
|
1308
|
+
0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65,
|
1309
|
+
0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70,
|
1310
|
+
0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x70, 0x6f,
|
1311
|
+
0x73, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72,
|
1312
|
+
0x73, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43,
|
1313
|
+
0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x63, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6d,
|
1314
|
+
0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a,
|
1315
|
+
0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16,
|
1316
|
+
0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x43,
|
1317
|
+
0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12,
|
1318
|
+
0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
|
1319
|
+
0x03, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x11, 0x46, 0x61,
|
1320
|
+
0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x12,
|
1321
|
+
0x34, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
1322
|
+
0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
|
1323
|
+
0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67,
|
1324
|
+
0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x56, 0x0a, 0x0d, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
|
1325
|
+
0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
|
1326
|
+
0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
|
1327
|
+
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65,
|
1328
|
+
0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
|
1329
|
+
0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x71, 0x0a,
|
1330
|
+
0x0c, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a,
|
1331
|
+
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
|
1332
|
+
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
|
1333
|
+
0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20,
|
1334
|
+
0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a,
|
1335
|
+
0x0c, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20,
|
1336
|
+
0x01, 0x28, 0x03, 0x52, 0x0b, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74,
|
1337
|
+
0x22, 0xeb, 0x03, 0x0a, 0x0c, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73,
|
1338
|
+
0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69,
|
1339
|
+
0x64, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
|
1340
|
+
0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
|
1341
|
+
0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05,
|
1342
|
+
0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2f, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20,
|
1317
1343
|
0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
|
1318
|
-
0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
|
1319
|
-
0x52, 0x04,
|
1320
|
-
|
1321
|
-
|
1322
|
-
|
1323
|
-
|
1324
|
-
|
1325
|
-
|
1326
|
-
|
1327
|
-
|
1328
|
-
0x03, 0x28, 0x0b, 0x32,
|
1329
|
-
0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
|
1330
|
-
0x52,
|
1331
|
-
|
1332
|
-
|
1333
|
-
|
1334
|
-
|
1335
|
-
|
1336
|
-
|
1337
|
-
|
1344
|
+
0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72,
|
1345
|
+
0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
|
1346
|
+
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
|
1347
|
+
0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01,
|
1348
|
+
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
|
1349
|
+
0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x08,
|
1350
|
+
0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74,
|
1351
|
+
0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
|
1352
|
+
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x43, 0x0a, 0x0e, 0x63,
|
1353
|
+
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20,
|
1354
|
+
0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
|
1355
|
+
0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67,
|
1356
|
+
0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73,
|
1357
|
+
0x12, 0x41, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6d, 0x61, 0x67,
|
1358
|
+
0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77,
|
1359
|
+
0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
|
1360
|
+
0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d,
|
1361
|
+
0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
|
1362
|
+
0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
|
1363
|
+
0x41, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63,
|
1364
|
+
0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x72, 0x65, 0x61, 0x63,
|
1365
|
+
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d,
|
1366
|
+
0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03,
|
1367
|
+
0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x6a,
|
1368
|
+
0x0a, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3a, 0x0a,
|
1369
|
+
0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
1370
|
+
0x1e, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
|
1371
|
+
0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52,
|
1372
|
+
0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78,
|
1373
|
+
0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
|
1374
|
+
0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x31, 0x0a, 0x0d, 0x46, 0x61,
|
1375
|
+
0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69,
|
1376
|
+
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75,
|
1377
|
+
0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0xbc, 0x01,
|
1378
|
+
0x0a, 0x0f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e,
|
1379
|
+
0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69,
|
1380
|
+
0x64, 0x12, 0x2f, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
1381
|
+
0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
|
1382
|
+
0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x04, 0x70, 0x6f,
|
1383
|
+
0x73, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
|
1384
|
+
0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
|
1385
|
+
0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75,
|
1386
|
+
0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04,
|
1387
|
+
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a,
|
1388
|
+
0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
|
1389
|
+
0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x66, 0x0a, 0x10,
|
1390
|
+
0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74,
|
1391
|
+
0x12, 0x31, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
1392
|
+
0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
|
1393
|
+
0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x05, 0x70, 0x6f,
|
1394
|
+
0x73, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73,
|
1338
1395
|
0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75,
|
1339
|
-
0x72, 0x73, 0x6f, 0x72,
|
1340
|
-
|
1341
|
-
|
1342
|
-
0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
|
1343
|
-
0x6c, 0x6c, 0x79, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
1344
|
-
0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75,
|
1345
|
-
0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f,
|
1346
|
-
0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70,
|
1347
|
-
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62,
|
1348
|
-
0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65,
|
1349
|
-
0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0d, 0x46,
|
1350
|
-
0x65, 0x74, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x2e, 0x66,
|
1351
|
-
0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74,
|
1352
|
-
0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
1353
|
-
0x74, 0x1a, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c,
|
1354
|
-
0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x22, 0x00,
|
1355
|
-
0x12, 0x59, 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x65,
|
1356
|
-
0x65, 0x64, 0x12, 0x24, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
|
1357
|
-
0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x65, 0x65,
|
1358
|
-
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
|
1359
|
-
0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
|
1360
|
-
0x6b, 0x50, 0x6f, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x09, 0x46,
|
1361
|
-
0x65, 0x74, 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
|
1362
|
-
0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x50, 0x6f,
|
1363
|
-
0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72,
|
1396
|
+
0x72, 0x73, 0x6f, 0x72, 0x22, 0x6a, 0x0a, 0x11, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
|
1397
|
+
0x49, 0x6d, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x06, 0x69, 0x6d, 0x61,
|
1398
|
+
0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72,
|
1364
1399
|
0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f,
|
1365
|
-
0x6f, 0x6b,
|
1366
|
-
|
1400
|
+
0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12,
|
1401
|
+
0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02,
|
1402
|
+
0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72,
|
1403
|
+
0x32, 0xb5, 0x05, 0x0a, 0x04, 0x47, 0x72, 0x70, 0x63, 0x12, 0x44, 0x0a, 0x05, 0x4c, 0x6f, 0x67,
|
1404
|
+
0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
|
1405
|
+
0x6c, 0x79, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
|
1406
|
+
0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
|
1407
|
+
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
|
1408
|
+
0x58, 0x0a, 0x0d, 0x46, 0x65, 0x74, 0x63, 0x68, 0x4d, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73,
|
1409
|
+
0x12, 0x23, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
|
1410
|
+
0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x4d, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65,
|
1411
|
+
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f,
|
1412
|
+
0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72,
|
1413
|
+
0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0e, 0x46, 0x65, 0x74,
|
1414
|
+
0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x66, 0x62,
|
1415
|
+
0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63,
|
1416
|
+
0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
1417
|
+
0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c,
|
1418
|
+
0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22,
|
1419
|
+
0x00, 0x12, 0x53, 0x0a, 0x0d, 0x46, 0x65, 0x74, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e,
|
1420
|
+
0x66, 0x6f, 0x12, 0x23, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
|
1421
|
+
0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f,
|
1422
|
+
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77,
|
1423
|
+
0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
|
1424
|
+
0x55, 0x73, 0x65, 0x72, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47,
|
1425
|
+
0x72, 0x6f, 0x75, 0x70, 0x46, 0x65, 0x65, 0x64, 0x12, 0x24, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
|
1426
|
+
0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72,
|
1427
|
+
0x6f, 0x75, 0x70, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f,
|
1428
|
+
0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46,
|
1429
|
+
0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22,
|
1430
|
+
0x00, 0x12, 0x4b, 0x0a, 0x09, 0x46, 0x65, 0x74, 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x1f,
|
1431
|
+
0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46,
|
1432
|
+
0x65, 0x74, 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
|
1433
|
+
0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
|
1434
|
+
0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x22, 0x00, 0x12, 0x62,
|
1435
|
+
0x0a, 0x12, 0x46, 0x65, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d,
|
1436
|
+
0x61, 0x67, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63,
|
1437
|
+
0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
|
1438
|
+
0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20,
|
1367
1439
|
0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46,
|
1368
|
-
|
1369
|
-
|
1440
|
+
0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74,
|
1441
|
+
0x22, 0x00, 0x12, 0x54, 0x0a, 0x0d, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65,
|
1442
|
+
0x55, 0x72, 0x6c, 0x12, 0x23, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
|
1443
|
+
0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72,
|
1444
|
+
0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
|
1370
1445
|
0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
|
1371
|
-
0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65,
|
1372
|
-
|
1373
|
-
|
1374
|
-
0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
|
1375
|
-
0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
|
1376
|
-
0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65,
|
1377
|
-
0x22, 0x00, 0x42, 0x11, 0x5a, 0x0f, 0x2e, 0x2f, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x2f,
|
1378
|
-
0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
1446
|
+
0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x00, 0x42, 0x11, 0x5a, 0x0f, 0x2e, 0x2f, 0x66, 0x62,
|
1447
|
+
0x63, 0x72, 0x61, 0x77, 0x6c, 0x2f, 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
|
1448
|
+
0x74, 0x6f, 0x33,
|
1379
1449
|
}
|
1380
1450
|
|
1381
1451
|
var (
|
@@ -1390,64 +1460,69 @@ func file_fbcrawl_proto_rawDescGZIP() []byte {
|
|
1390
1460
|
return file_fbcrawl_proto_rawDescData
|
1391
1461
|
}
|
1392
1462
|
|
1393
|
-
var file_fbcrawl_proto_msgTypes = make([]protoimpl.MessageInfo,
|
1463
|
+
var file_fbcrawl_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
|
1394
1464
|
var file_fbcrawl_proto_goTypes = []interface{}{
|
1395
|
-
(*
|
1396
|
-
(*
|
1397
|
-
(*
|
1398
|
-
(*
|
1399
|
-
(*
|
1465
|
+
(*Context)(nil), // 0: fbcrawl_colly.Context
|
1466
|
+
(*LoginRequest)(nil), // 1: fbcrawl_colly.LoginRequest
|
1467
|
+
(*LoginResponse)(nil), // 2: fbcrawl_colly.LoginResponse
|
1468
|
+
(*LoginWithCookiesRequest)(nil), // 3: fbcrawl_colly.LoginWithCookiesRequest
|
1469
|
+
(*FetchMyGroupsRequest)(nil), // 4: fbcrawl_colly.FetchMyGroupsRequest
|
1400
1470
|
(*FetchGroupInfoRequest)(nil), // 5: fbcrawl_colly.FetchGroupInfoRequest
|
1401
1471
|
(*FetchUserInfoRequest)(nil), // 6: fbcrawl_colly.FetchUserInfoRequest
|
1402
1472
|
(*FetchGroupFeedRequest)(nil), // 7: fbcrawl_colly.FetchGroupFeedRequest
|
1403
1473
|
(*FetchPostRequest)(nil), // 8: fbcrawl_colly.FetchPostRequest
|
1404
1474
|
(*FetchContentImagesRequest)(nil), // 9: fbcrawl_colly.FetchContentImagesRequest
|
1405
1475
|
(*FetchImageUrlRequest)(nil), // 10: fbcrawl_colly.FetchImageUrlRequest
|
1406
|
-
(*
|
1407
|
-
(*
|
1408
|
-
(*
|
1409
|
-
(*
|
1410
|
-
(*
|
1411
|
-
(*
|
1412
|
-
(*
|
1413
|
-
(*
|
1476
|
+
(*FacebookGroupList)(nil), // 11: fbcrawl_colly.FacebookGroupList
|
1477
|
+
(*FacebookGroup)(nil), // 12: fbcrawl_colly.FacebookGroup
|
1478
|
+
(*FacebookUser)(nil), // 13: fbcrawl_colly.FacebookUser
|
1479
|
+
(*FacebookPost)(nil), // 14: fbcrawl_colly.FacebookPost
|
1480
|
+
(*CommentList)(nil), // 15: fbcrawl_colly.CommentList
|
1481
|
+
(*FacebookImage)(nil), // 16: fbcrawl_colly.FacebookImage
|
1482
|
+
(*FacebookComment)(nil), // 17: fbcrawl_colly.FacebookComment
|
1483
|
+
(*FacebookPostList)(nil), // 18: fbcrawl_colly.FacebookPostList
|
1484
|
+
(*FacebookImageList)(nil), // 19: fbcrawl_colly.FacebookImageList
|
1414
1485
|
}
|
1415
1486
|
var file_fbcrawl_proto_depIdxs = []int32{
|
1416
|
-
|
1417
|
-
|
1418
|
-
|
1419
|
-
|
1420
|
-
|
1421
|
-
|
1422
|
-
|
1423
|
-
12, // 7: fbcrawl_colly.
|
1424
|
-
|
1425
|
-
|
1426
|
-
15, // 10: fbcrawl_colly.FacebookPost.
|
1427
|
-
16, // 11: fbcrawl_colly.
|
1428
|
-
|
1429
|
-
|
1430
|
-
|
1431
|
-
|
1432
|
-
|
1433
|
-
|
1434
|
-
|
1435
|
-
|
1436
|
-
|
1437
|
-
|
1438
|
-
|
1439
|
-
|
1440
|
-
|
1441
|
-
|
1442
|
-
|
1443
|
-
|
1444
|
-
|
1445
|
-
|
1446
|
-
|
1447
|
-
|
1448
|
-
|
1449
|
-
16, //
|
1450
|
-
|
1487
|
+
0, // 0: fbcrawl_colly.FetchMyGroupsRequest.context:type_name -> fbcrawl_colly.Context
|
1488
|
+
0, // 1: fbcrawl_colly.FetchGroupInfoRequest.context:type_name -> fbcrawl_colly.Context
|
1489
|
+
0, // 2: fbcrawl_colly.FetchUserInfoRequest.context:type_name -> fbcrawl_colly.Context
|
1490
|
+
0, // 3: fbcrawl_colly.FetchGroupFeedRequest.context:type_name -> fbcrawl_colly.Context
|
1491
|
+
0, // 4: fbcrawl_colly.FetchPostRequest.context:type_name -> fbcrawl_colly.Context
|
1492
|
+
0, // 5: fbcrawl_colly.FetchContentImagesRequest.context:type_name -> fbcrawl_colly.Context
|
1493
|
+
0, // 6: fbcrawl_colly.FetchImageUrlRequest.context:type_name -> fbcrawl_colly.Context
|
1494
|
+
12, // 7: fbcrawl_colly.FacebookGroupList.groups:type_name -> fbcrawl_colly.FacebookGroup
|
1495
|
+
12, // 8: fbcrawl_colly.FacebookPost.group:type_name -> fbcrawl_colly.FacebookGroup
|
1496
|
+
13, // 9: fbcrawl_colly.FacebookPost.user:type_name -> fbcrawl_colly.FacebookUser
|
1497
|
+
15, // 10: fbcrawl_colly.FacebookPost.comments:type_name -> fbcrawl_colly.CommentList
|
1498
|
+
16, // 11: fbcrawl_colly.FacebookPost.content_images:type_name -> fbcrawl_colly.FacebookImage
|
1499
|
+
16, // 12: fbcrawl_colly.FacebookPost.content_image:type_name -> fbcrawl_colly.FacebookImage
|
1500
|
+
17, // 13: fbcrawl_colly.CommentList.comments:type_name -> fbcrawl_colly.FacebookComment
|
1501
|
+
14, // 14: fbcrawl_colly.FacebookComment.post:type_name -> fbcrawl_colly.FacebookPost
|
1502
|
+
13, // 15: fbcrawl_colly.FacebookComment.user:type_name -> fbcrawl_colly.FacebookUser
|
1503
|
+
14, // 16: fbcrawl_colly.FacebookPostList.posts:type_name -> fbcrawl_colly.FacebookPost
|
1504
|
+
16, // 17: fbcrawl_colly.FacebookImageList.images:type_name -> fbcrawl_colly.FacebookImage
|
1505
|
+
1, // 18: fbcrawl_colly.Grpc.Login:input_type -> fbcrawl_colly.LoginRequest
|
1506
|
+
4, // 19: fbcrawl_colly.Grpc.FetchMyGroups:input_type -> fbcrawl_colly.FetchMyGroupsRequest
|
1507
|
+
5, // 20: fbcrawl_colly.Grpc.FetchGroupInfo:input_type -> fbcrawl_colly.FetchGroupInfoRequest
|
1508
|
+
6, // 21: fbcrawl_colly.Grpc.FetchUserInfo:input_type -> fbcrawl_colly.FetchUserInfoRequest
|
1509
|
+
7, // 22: fbcrawl_colly.Grpc.FetchGroupFeed:input_type -> fbcrawl_colly.FetchGroupFeedRequest
|
1510
|
+
8, // 23: fbcrawl_colly.Grpc.FetchPost:input_type -> fbcrawl_colly.FetchPostRequest
|
1511
|
+
9, // 24: fbcrawl_colly.Grpc.FetchContentImages:input_type -> fbcrawl_colly.FetchContentImagesRequest
|
1512
|
+
10, // 25: fbcrawl_colly.Grpc.FetchImageUrl:input_type -> fbcrawl_colly.FetchImageUrlRequest
|
1513
|
+
2, // 26: fbcrawl_colly.Grpc.Login:output_type -> fbcrawl_colly.LoginResponse
|
1514
|
+
11, // 27: fbcrawl_colly.Grpc.FetchMyGroups:output_type -> fbcrawl_colly.FacebookGroupList
|
1515
|
+
12, // 28: fbcrawl_colly.Grpc.FetchGroupInfo:output_type -> fbcrawl_colly.FacebookGroup
|
1516
|
+
13, // 29: fbcrawl_colly.Grpc.FetchUserInfo:output_type -> fbcrawl_colly.FacebookUser
|
1517
|
+
18, // 30: fbcrawl_colly.Grpc.FetchGroupFeed:output_type -> fbcrawl_colly.FacebookPostList
|
1518
|
+
14, // 31: fbcrawl_colly.Grpc.FetchPost:output_type -> fbcrawl_colly.FacebookPost
|
1519
|
+
19, // 32: fbcrawl_colly.Grpc.FetchContentImages:output_type -> fbcrawl_colly.FacebookImageList
|
1520
|
+
16, // 33: fbcrawl_colly.Grpc.FetchImageUrl:output_type -> fbcrawl_colly.FacebookImage
|
1521
|
+
26, // [26:34] is the sub-list for method output_type
|
1522
|
+
18, // [18:26] is the sub-list for method input_type
|
1523
|
+
18, // [18:18] is the sub-list for extension type_name
|
1524
|
+
18, // [18:18] is the sub-list for extension extendee
|
1525
|
+
0, // [0:18] is the sub-list for field type_name
|
1451
1526
|
}
|
1452
1527
|
|
1453
1528
|
func init() { file_fbcrawl_proto_init() }
|
@@ -1457,7 +1532,7 @@ func file_fbcrawl_proto_init() {
|
|
1457
1532
|
}
|
1458
1533
|
if !protoimpl.UnsafeEnabled {
|
1459
1534
|
file_fbcrawl_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
1460
|
-
switch v := v.(*
|
1535
|
+
switch v := v.(*Context); i {
|
1461
1536
|
case 0:
|
1462
1537
|
return &v.state
|
1463
1538
|
case 1:
|
@@ -1469,7 +1544,7 @@ func file_fbcrawl_proto_init() {
|
|
1469
1544
|
}
|
1470
1545
|
}
|
1471
1546
|
file_fbcrawl_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
1472
|
-
switch v := v.(*
|
1547
|
+
switch v := v.(*LoginRequest); i {
|
1473
1548
|
case 0:
|
1474
1549
|
return &v.state
|
1475
1550
|
case 1:
|
@@ -1481,7 +1556,7 @@ func file_fbcrawl_proto_init() {
|
|
1481
1556
|
}
|
1482
1557
|
}
|
1483
1558
|
file_fbcrawl_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
1484
|
-
switch v := v.(*
|
1559
|
+
switch v := v.(*LoginResponse); i {
|
1485
1560
|
case 0:
|
1486
1561
|
return &v.state
|
1487
1562
|
case 1:
|
@@ -1493,7 +1568,7 @@ func file_fbcrawl_proto_init() {
|
|
1493
1568
|
}
|
1494
1569
|
}
|
1495
1570
|
file_fbcrawl_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
1496
|
-
switch v := v.(*
|
1571
|
+
switch v := v.(*LoginWithCookiesRequest); i {
|
1497
1572
|
case 0:
|
1498
1573
|
return &v.state
|
1499
1574
|
case 1:
|
@@ -1505,7 +1580,7 @@ func file_fbcrawl_proto_init() {
|
|
1505
1580
|
}
|
1506
1581
|
}
|
1507
1582
|
file_fbcrawl_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
1508
|
-
switch v := v.(*
|
1583
|
+
switch v := v.(*FetchMyGroupsRequest); i {
|
1509
1584
|
case 0:
|
1510
1585
|
return &v.state
|
1511
1586
|
case 1:
|
@@ -1589,7 +1664,7 @@ func file_fbcrawl_proto_init() {
|
|
1589
1664
|
}
|
1590
1665
|
}
|
1591
1666
|
file_fbcrawl_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
|
1592
|
-
switch v := v.(*
|
1667
|
+
switch v := v.(*FacebookGroupList); i {
|
1593
1668
|
case 0:
|
1594
1669
|
return &v.state
|
1595
1670
|
case 1:
|
@@ -1601,7 +1676,7 @@ func file_fbcrawl_proto_init() {
|
|
1601
1676
|
}
|
1602
1677
|
}
|
1603
1678
|
file_fbcrawl_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
|
1604
|
-
switch v := v.(*
|
1679
|
+
switch v := v.(*FacebookGroup); i {
|
1605
1680
|
case 0:
|
1606
1681
|
return &v.state
|
1607
1682
|
case 1:
|
@@ -1613,7 +1688,7 @@ func file_fbcrawl_proto_init() {
|
|
1613
1688
|
}
|
1614
1689
|
}
|
1615
1690
|
file_fbcrawl_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
|
1616
|
-
switch v := v.(*
|
1691
|
+
switch v := v.(*FacebookUser); i {
|
1617
1692
|
case 0:
|
1618
1693
|
return &v.state
|
1619
1694
|
case 1:
|
@@ -1625,7 +1700,7 @@ func file_fbcrawl_proto_init() {
|
|
1625
1700
|
}
|
1626
1701
|
}
|
1627
1702
|
file_fbcrawl_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
|
1628
|
-
switch v := v.(*
|
1703
|
+
switch v := v.(*FacebookPost); i {
|
1629
1704
|
case 0:
|
1630
1705
|
return &v.state
|
1631
1706
|
case 1:
|
@@ -1637,7 +1712,7 @@ func file_fbcrawl_proto_init() {
|
|
1637
1712
|
}
|
1638
1713
|
}
|
1639
1714
|
file_fbcrawl_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
|
1640
|
-
switch v := v.(*
|
1715
|
+
switch v := v.(*CommentList); i {
|
1641
1716
|
case 0:
|
1642
1717
|
return &v.state
|
1643
1718
|
case 1:
|
@@ -1649,7 +1724,7 @@ func file_fbcrawl_proto_init() {
|
|
1649
1724
|
}
|
1650
1725
|
}
|
1651
1726
|
file_fbcrawl_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
|
1652
|
-
switch v := v.(*
|
1727
|
+
switch v := v.(*FacebookImage); i {
|
1653
1728
|
case 0:
|
1654
1729
|
return &v.state
|
1655
1730
|
case 1:
|
@@ -1661,7 +1736,7 @@ func file_fbcrawl_proto_init() {
|
|
1661
1736
|
}
|
1662
1737
|
}
|
1663
1738
|
file_fbcrawl_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
|
1664
|
-
switch v := v.(*
|
1739
|
+
switch v := v.(*FacebookComment); i {
|
1665
1740
|
case 0:
|
1666
1741
|
return &v.state
|
1667
1742
|
case 1:
|
@@ -1673,6 +1748,18 @@ func file_fbcrawl_proto_init() {
|
|
1673
1748
|
}
|
1674
1749
|
}
|
1675
1750
|
file_fbcrawl_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
|
1751
|
+
switch v := v.(*FacebookPostList); i {
|
1752
|
+
case 0:
|
1753
|
+
return &v.state
|
1754
|
+
case 1:
|
1755
|
+
return &v.sizeCache
|
1756
|
+
case 2:
|
1757
|
+
return &v.unknownFields
|
1758
|
+
default:
|
1759
|
+
return nil
|
1760
|
+
}
|
1761
|
+
}
|
1762
|
+
file_fbcrawl_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
|
1676
1763
|
switch v := v.(*FacebookImageList); i {
|
1677
1764
|
case 0:
|
1678
1765
|
return &v.state
|
@@ -1691,7 +1778,7 @@ func file_fbcrawl_proto_init() {
|
|
1691
1778
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
1692
1779
|
RawDescriptor: file_fbcrawl_proto_rawDesc,
|
1693
1780
|
NumEnums: 0,
|
1694
|
-
NumMessages:
|
1781
|
+
NumMessages: 20,
|
1695
1782
|
NumExtensions: 0,
|
1696
1783
|
NumServices: 1,
|
1697
1784
|
},
|