fbcrawl-colly 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
},
|