feat: Waku v2 bridge

Issue #12610
This commit is contained in:
Michal Iskierko
2023-11-12 13:29:38 +01:00
parent 56e7bd01ca
commit 6d31343205
6716 changed files with 1982502 additions and 5891 deletions

View File

@@ -0,0 +1,188 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: anon_metrics.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
// AnonymousMetric represents a single metric data point
type AnonymousMetric struct {
// id is the unique id of the metric message
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// event is the app metric event type
Event string `protobuf:"bytes,2,opt,name=event,proto3" json:"event,omitempty"`
// value is a filtered and validated raw json payload attached to the event
Value []byte `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
// app_version is the version of the `status-mobile` app that the metric came from
AppVersion string `protobuf:"bytes,4,opt,name=app_version,json=appVersion,proto3" json:"app_version,omitempty"`
// os is the operating system of the device the application is installed on
Os string `protobuf:"bytes,5,opt,name=os,proto3" json:"os,omitempty"`
// session_id is the id of the session the metric was recorded in
SessionId string `protobuf:"bytes,6,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
// created_at is the datetime at which the metric was stored in the local db
CreatedAt *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AnonymousMetric) Reset() { *m = AnonymousMetric{} }
func (m *AnonymousMetric) String() string { return proto.CompactTextString(m) }
func (*AnonymousMetric) ProtoMessage() {}
func (*AnonymousMetric) Descriptor() ([]byte, []int) {
return fileDescriptor_4be044a92fa0408c, []int{0}
}
func (m *AnonymousMetric) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AnonymousMetric.Unmarshal(m, b)
}
func (m *AnonymousMetric) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AnonymousMetric.Marshal(b, m, deterministic)
}
func (m *AnonymousMetric) XXX_Merge(src proto.Message) {
xxx_messageInfo_AnonymousMetric.Merge(m, src)
}
func (m *AnonymousMetric) XXX_Size() int {
return xxx_messageInfo_AnonymousMetric.Size(m)
}
func (m *AnonymousMetric) XXX_DiscardUnknown() {
xxx_messageInfo_AnonymousMetric.DiscardUnknown(m)
}
var xxx_messageInfo_AnonymousMetric proto.InternalMessageInfo
func (m *AnonymousMetric) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *AnonymousMetric) GetEvent() string {
if m != nil {
return m.Event
}
return ""
}
func (m *AnonymousMetric) GetValue() []byte {
if m != nil {
return m.Value
}
return nil
}
func (m *AnonymousMetric) GetAppVersion() string {
if m != nil {
return m.AppVersion
}
return ""
}
func (m *AnonymousMetric) GetOs() string {
if m != nil {
return m.Os
}
return ""
}
func (m *AnonymousMetric) GetSessionId() string {
if m != nil {
return m.SessionId
}
return ""
}
func (m *AnonymousMetric) GetCreatedAt() *timestamppb.Timestamp {
if m != nil {
return m.CreatedAt
}
return nil
}
// AnonymousMetricBatch represents a batch of AnonymousMetrics allowing broadcast of AnonymousMetrics with fewer messages
type AnonymousMetricBatch struct {
// metrics is an array of AnonymousMetric metrics
Metrics []*AnonymousMetric `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AnonymousMetricBatch) Reset() { *m = AnonymousMetricBatch{} }
func (m *AnonymousMetricBatch) String() string { return proto.CompactTextString(m) }
func (*AnonymousMetricBatch) ProtoMessage() {}
func (*AnonymousMetricBatch) Descriptor() ([]byte, []int) {
return fileDescriptor_4be044a92fa0408c, []int{1}
}
func (m *AnonymousMetricBatch) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AnonymousMetricBatch.Unmarshal(m, b)
}
func (m *AnonymousMetricBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AnonymousMetricBatch.Marshal(b, m, deterministic)
}
func (m *AnonymousMetricBatch) XXX_Merge(src proto.Message) {
xxx_messageInfo_AnonymousMetricBatch.Merge(m, src)
}
func (m *AnonymousMetricBatch) XXX_Size() int {
return xxx_messageInfo_AnonymousMetricBatch.Size(m)
}
func (m *AnonymousMetricBatch) XXX_DiscardUnknown() {
xxx_messageInfo_AnonymousMetricBatch.DiscardUnknown(m)
}
var xxx_messageInfo_AnonymousMetricBatch proto.InternalMessageInfo
func (m *AnonymousMetricBatch) GetMetrics() []*AnonymousMetric {
if m != nil {
return m.Metrics
}
return nil
}
func init() {
proto.RegisterType((*AnonymousMetric)(nil), "protobuf.AnonymousMetric")
proto.RegisterType((*AnonymousMetricBatch)(nil), "protobuf.AnonymousMetricBatch")
}
func init() {
proto.RegisterFile("anon_metrics.proto", fileDescriptor_4be044a92fa0408c)
}
var fileDescriptor_4be044a92fa0408c = []byte{
// 269 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x90, 0x3d, 0x6b, 0xc3, 0x30,
0x10, 0x86, 0x51, 0xd2, 0x24, 0xf5, 0xb9, 0x1f, 0x20, 0x32, 0xa8, 0x81, 0x12, 0x93, 0xc9, 0x93,
0x0d, 0xc9, 0x54, 0x3a, 0x25, 0x5b, 0x29, 0x5d, 0x4c, 0xe9, 0xd0, 0xc5, 0x28, 0xb6, 0x9a, 0x0a,
0x62, 0x9d, 0xb0, 0x64, 0x43, 0xff, 0x69, 0x7f, 0x4e, 0xb1, 0x64, 0x51, 0xc8, 0x24, 0xdd, 0xa3,
0xf7, 0x5e, 0x78, 0x04, 0x94, 0x2b, 0x54, 0x65, 0x23, 0x6c, 0x2b, 0x2b, 0x93, 0xe9, 0x16, 0x2d,
0xd2, 0x6b, 0x77, 0x1c, 0xbb, 0xaf, 0xd5, 0xfa, 0x84, 0x78, 0x3a, 0x8b, 0x3c, 0x80, 0xdc, 0xca,
0x46, 0x18, 0xcb, 0x1b, 0xed, 0xa3, 0x9b, 0x5f, 0x02, 0xf7, 0x7b, 0x85, 0xea, 0xa7, 0xc1, 0xce,
0xbc, 0xb9, 0x16, 0x7a, 0x07, 0x13, 0x59, 0x33, 0x92, 0x90, 0x34, 0x2a, 0x26, 0xb2, 0xa6, 0x4b,
0x98, 0x89, 0x5e, 0x28, 0xcb, 0x26, 0x0e, 0xf9, 0x61, 0xa0, 0x3d, 0x3f, 0x77, 0x82, 0x4d, 0x13,
0x92, 0xde, 0x14, 0x7e, 0xa0, 0x6b, 0x88, 0xb9, 0xd6, 0x65, 0x2f, 0x5a, 0x23, 0x51, 0xb1, 0x2b,
0xb7, 0x01, 0x5c, 0xeb, 0x0f, 0x4f, 0x86, 0x72, 0x34, 0x6c, 0xe6, 0xcb, 0xd1, 0xd0, 0x47, 0x00,
0x23, 0xcc, 0xf0, 0x54, 0xca, 0x9a, 0xcd, 0x1d, 0x8f, 0x46, 0xf2, 0x52, 0xd3, 0x27, 0x80, 0xaa,
0x15, 0xdc, 0x8a, 0xba, 0xe4, 0x96, 0x2d, 0x12, 0x92, 0xc6, 0xdb, 0x55, 0xe6, 0xad, 0xb2, 0x60,
0x95, 0xbd, 0x07, 0xab, 0x22, 0x1a, 0xd3, 0x7b, 0xbb, 0x79, 0x85, 0xe5, 0x85, 0xd9, 0x81, 0xdb,
0xea, 0x9b, 0xee, 0x60, 0x31, 0x7e, 0x17, 0x23, 0xc9, 0x34, 0x8d, 0xb7, 0x0f, 0xff, 0x45, 0x17,
0x0b, 0x45, 0x48, 0x1e, 0x6e, 0x3f, 0xe3, 0x2c, 0x7f, 0x0e, 0xb9, 0xe3, 0xdc, 0xdd, 0x76, 0x7f,
0x01, 0x00, 0x00, 0xff, 0xff, 0xc7, 0x86, 0xa1, 0x32, 0x7e, 0x01, 0x00, 0x00,
}

View File

@@ -0,0 +1,36 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "google/protobuf/timestamp.proto";
// AnonymousMetric represents a single metric data point
message AnonymousMetric {
// id is the unique id of the metric message
string id=1;
// event is the app metric event type
string event=2;
// value is a filtered and validated raw json payload attached to the event
bytes value=3;
// app_version is the version of the `status-mobile` app that the metric came from
string app_version=4;
// os is the operating system of the device the application is installed on
string os=5;
// session_id is the id of the session the metric was recorded in
string session_id=6;
// created_at is the datetime at which the metric was stored in the local db
google.protobuf.Timestamp created_at=7;
}
// AnonymousMetricBatch represents a batch of AnonymousMetrics allowing broadcast of AnonymousMetrics with fewer messages
message AnonymousMetricBatch {
// metrics is an array of AnonymousMetric metrics
repeated AnonymousMetric metrics=1;
}

View File

@@ -0,0 +1,419 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: application_metadata_message.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type ApplicationMetadataMessage_Type int32
const (
ApplicationMetadataMessage_UNKNOWN ApplicationMetadataMessage_Type = 0
ApplicationMetadataMessage_CHAT_MESSAGE ApplicationMetadataMessage_Type = 1
ApplicationMetadataMessage_CONTACT_UPDATE ApplicationMetadataMessage_Type = 2
ApplicationMetadataMessage_MEMBERSHIP_UPDATE_MESSAGE ApplicationMetadataMessage_Type = 3
ApplicationMetadataMessage_SYNC_PAIR_INSTALLATION ApplicationMetadataMessage_Type = 4
ApplicationMetadataMessage_DEPRECATED_SYNC_INSTALLATION ApplicationMetadataMessage_Type = 5 // Deprecated: Do not use.
ApplicationMetadataMessage_REQUEST_ADDRESS_FOR_TRANSACTION ApplicationMetadataMessage_Type = 6
ApplicationMetadataMessage_ACCEPT_REQUEST_ADDRESS_FOR_TRANSACTION ApplicationMetadataMessage_Type = 7
ApplicationMetadataMessage_DECLINE_REQUEST_ADDRESS_FOR_TRANSACTION ApplicationMetadataMessage_Type = 8
ApplicationMetadataMessage_REQUEST_TRANSACTION ApplicationMetadataMessage_Type = 9
ApplicationMetadataMessage_SEND_TRANSACTION ApplicationMetadataMessage_Type = 10
ApplicationMetadataMessage_DECLINE_REQUEST_TRANSACTION ApplicationMetadataMessage_Type = 11
ApplicationMetadataMessage_SYNC_INSTALLATION_CONTACT_V2 ApplicationMetadataMessage_Type = 12
ApplicationMetadataMessage_SYNC_INSTALLATION_ACCOUNT ApplicationMetadataMessage_Type = 13
ApplicationMetadataMessage_CONTACT_CODE_ADVERTISEMENT ApplicationMetadataMessage_Type = 15
ApplicationMetadataMessage_PUSH_NOTIFICATION_REGISTRATION ApplicationMetadataMessage_Type = 16
ApplicationMetadataMessage_PUSH_NOTIFICATION_REGISTRATION_RESPONSE ApplicationMetadataMessage_Type = 17
ApplicationMetadataMessage_PUSH_NOTIFICATION_QUERY ApplicationMetadataMessage_Type = 18
ApplicationMetadataMessage_PUSH_NOTIFICATION_QUERY_RESPONSE ApplicationMetadataMessage_Type = 19
ApplicationMetadataMessage_PUSH_NOTIFICATION_REQUEST ApplicationMetadataMessage_Type = 20
ApplicationMetadataMessage_PUSH_NOTIFICATION_RESPONSE ApplicationMetadataMessage_Type = 21
ApplicationMetadataMessage_EMOJI_REACTION ApplicationMetadataMessage_Type = 22
ApplicationMetadataMessage_GROUP_CHAT_INVITATION ApplicationMetadataMessage_Type = 23
ApplicationMetadataMessage_CHAT_IDENTITY ApplicationMetadataMessage_Type = 24
ApplicationMetadataMessage_COMMUNITY_DESCRIPTION ApplicationMetadataMessage_Type = 25
ApplicationMetadataMessage_COMMUNITY_INVITATION ApplicationMetadataMessage_Type = 26 // Deprecated: Do not use.
ApplicationMetadataMessage_COMMUNITY_REQUEST_TO_JOIN ApplicationMetadataMessage_Type = 27
ApplicationMetadataMessage_PIN_MESSAGE ApplicationMetadataMessage_Type = 28
ApplicationMetadataMessage_EDIT_MESSAGE ApplicationMetadataMessage_Type = 29
ApplicationMetadataMessage_STATUS_UPDATE ApplicationMetadataMessage_Type = 30
ApplicationMetadataMessage_DELETE_MESSAGE ApplicationMetadataMessage_Type = 31
ApplicationMetadataMessage_SYNC_INSTALLATION_COMMUNITY ApplicationMetadataMessage_Type = 32
ApplicationMetadataMessage_ANONYMOUS_METRIC_BATCH ApplicationMetadataMessage_Type = 33
ApplicationMetadataMessage_SYNC_CHAT_REMOVED ApplicationMetadataMessage_Type = 34
ApplicationMetadataMessage_SYNC_CHAT_MESSAGES_READ ApplicationMetadataMessage_Type = 35
ApplicationMetadataMessage_BACKUP ApplicationMetadataMessage_Type = 36
ApplicationMetadataMessage_SYNC_ACTIVITY_CENTER_READ ApplicationMetadataMessage_Type = 37
ApplicationMetadataMessage_SYNC_ACTIVITY_CENTER_ACCEPTED ApplicationMetadataMessage_Type = 38
ApplicationMetadataMessage_SYNC_ACTIVITY_CENTER_DISMISSED ApplicationMetadataMessage_Type = 39
ApplicationMetadataMessage_SYNC_BOOKMARK ApplicationMetadataMessage_Type = 40
ApplicationMetadataMessage_SYNC_CLEAR_HISTORY ApplicationMetadataMessage_Type = 41
ApplicationMetadataMessage_SYNC_SETTING ApplicationMetadataMessage_Type = 42
ApplicationMetadataMessage_COMMUNITY_MESSAGE_ARCHIVE_MAGNETLINK ApplicationMetadataMessage_Type = 43
ApplicationMetadataMessage_SYNC_PROFILE_PICTURES ApplicationMetadataMessage_Type = 44
ApplicationMetadataMessage_SYNC_ACCOUNT ApplicationMetadataMessage_Type = 45
ApplicationMetadataMessage_ACCEPT_CONTACT_REQUEST ApplicationMetadataMessage_Type = 46
ApplicationMetadataMessage_RETRACT_CONTACT_REQUEST ApplicationMetadataMessage_Type = 47
ApplicationMetadataMessage_COMMUNITY_REQUEST_TO_JOIN_RESPONSE ApplicationMetadataMessage_Type = 48
ApplicationMetadataMessage_SYNC_COMMUNITY_SETTINGS ApplicationMetadataMessage_Type = 49
ApplicationMetadataMessage_REQUEST_CONTACT_VERIFICATION ApplicationMetadataMessage_Type = 50
ApplicationMetadataMessage_ACCEPT_CONTACT_VERIFICATION ApplicationMetadataMessage_Type = 51
ApplicationMetadataMessage_DECLINE_CONTACT_VERIFICATION ApplicationMetadataMessage_Type = 52
ApplicationMetadataMessage_SYNC_TRUSTED_USER ApplicationMetadataMessage_Type = 53
ApplicationMetadataMessage_SYNC_VERIFICATION_REQUEST ApplicationMetadataMessage_Type = 54
ApplicationMetadataMessage_SYNC_CONTACT_REQUEST_DECISION ApplicationMetadataMessage_Type = 56
ApplicationMetadataMessage_COMMUNITY_REQUEST_TO_LEAVE ApplicationMetadataMessage_Type = 57
ApplicationMetadataMessage_SYNC_DELETE_FOR_ME_MESSAGE ApplicationMetadataMessage_Type = 58
ApplicationMetadataMessage_SYNC_SAVED_ADDRESS ApplicationMetadataMessage_Type = 59
ApplicationMetadataMessage_COMMUNITY_CANCEL_REQUEST_TO_JOIN ApplicationMetadataMessage_Type = 60
ApplicationMetadataMessage_CANCEL_CONTACT_VERIFICATION ApplicationMetadataMessage_Type = 61
ApplicationMetadataMessage_SYNC_KEYPAIR ApplicationMetadataMessage_Type = 62
ApplicationMetadataMessage_SYNC_SOCIAL_LINKS ApplicationMetadataMessage_Type = 63
ApplicationMetadataMessage_SYNC_ENS_USERNAME_DETAIL ApplicationMetadataMessage_Type = 64
ApplicationMetadataMessage_COMMUNITY_EVENTS_MESSAGE ApplicationMetadataMessage_Type = 67
ApplicationMetadataMessage_COMMUNITY_EDIT_SHARED_ADDRESSES ApplicationMetadataMessage_Type = 68
ApplicationMetadataMessage_SYNC_ACCOUNT_CUSTOMIZATION_COLOR ApplicationMetadataMessage_Type = 69
ApplicationMetadataMessage_SYNC_ACCOUNTS_POSITIONS ApplicationMetadataMessage_Type = 70
ApplicationMetadataMessage_COMMUNITY_EVENTS_MESSAGE_REJECTED ApplicationMetadataMessage_Type = 71
ApplicationMetadataMessage_COMMUNITY_PRIVILEGED_USER_SYNC_MESSAGE ApplicationMetadataMessage_Type = 72
ApplicationMetadataMessage_COMMUNITY_SHARD_KEY ApplicationMetadataMessage_Type = 73
ApplicationMetadataMessage_SYNC_CHAT ApplicationMetadataMessage_Type = 74
ApplicationMetadataMessage_SYNC_ACTIVITY_CENTER_DELETED ApplicationMetadataMessage_Type = 75
ApplicationMetadataMessage_SYNC_ACTIVITY_CENTER_UNREAD ApplicationMetadataMessage_Type = 76
ApplicationMetadataMessage_SYNC_ACTIVITY_CENTER_COMMUNITY_REQUEST_DECISION ApplicationMetadataMessage_Type = 77
ApplicationMetadataMessage_SYNC_TOKEN_PREFERENCES ApplicationMetadataMessage_Type = 78
ApplicationMetadataMessage_COMMUNITY_PUBLIC_SHARD_INFO ApplicationMetadataMessage_Type = 79
ApplicationMetadataMessage_SYNC_COLLECTIBLE_PREFERENCES ApplicationMetadataMessage_Type = 80
ApplicationMetadataMessage_COMMUNITY_USER_KICKED ApplicationMetadataMessage_Type = 81
)
var ApplicationMetadataMessage_Type_name = map[int32]string{
0: "UNKNOWN",
1: "CHAT_MESSAGE",
2: "CONTACT_UPDATE",
3: "MEMBERSHIP_UPDATE_MESSAGE",
4: "SYNC_PAIR_INSTALLATION",
5: "DEPRECATED_SYNC_INSTALLATION",
6: "REQUEST_ADDRESS_FOR_TRANSACTION",
7: "ACCEPT_REQUEST_ADDRESS_FOR_TRANSACTION",
8: "DECLINE_REQUEST_ADDRESS_FOR_TRANSACTION",
9: "REQUEST_TRANSACTION",
10: "SEND_TRANSACTION",
11: "DECLINE_REQUEST_TRANSACTION",
12: "SYNC_INSTALLATION_CONTACT_V2",
13: "SYNC_INSTALLATION_ACCOUNT",
15: "CONTACT_CODE_ADVERTISEMENT",
16: "PUSH_NOTIFICATION_REGISTRATION",
17: "PUSH_NOTIFICATION_REGISTRATION_RESPONSE",
18: "PUSH_NOTIFICATION_QUERY",
19: "PUSH_NOTIFICATION_QUERY_RESPONSE",
20: "PUSH_NOTIFICATION_REQUEST",
21: "PUSH_NOTIFICATION_RESPONSE",
22: "EMOJI_REACTION",
23: "GROUP_CHAT_INVITATION",
24: "CHAT_IDENTITY",
25: "COMMUNITY_DESCRIPTION",
26: "COMMUNITY_INVITATION",
27: "COMMUNITY_REQUEST_TO_JOIN",
28: "PIN_MESSAGE",
29: "EDIT_MESSAGE",
30: "STATUS_UPDATE",
31: "DELETE_MESSAGE",
32: "SYNC_INSTALLATION_COMMUNITY",
33: "ANONYMOUS_METRIC_BATCH",
34: "SYNC_CHAT_REMOVED",
35: "SYNC_CHAT_MESSAGES_READ",
36: "BACKUP",
37: "SYNC_ACTIVITY_CENTER_READ",
38: "SYNC_ACTIVITY_CENTER_ACCEPTED",
39: "SYNC_ACTIVITY_CENTER_DISMISSED",
40: "SYNC_BOOKMARK",
41: "SYNC_CLEAR_HISTORY",
42: "SYNC_SETTING",
43: "COMMUNITY_MESSAGE_ARCHIVE_MAGNETLINK",
44: "SYNC_PROFILE_PICTURES",
45: "SYNC_ACCOUNT",
46: "ACCEPT_CONTACT_REQUEST",
47: "RETRACT_CONTACT_REQUEST",
48: "COMMUNITY_REQUEST_TO_JOIN_RESPONSE",
49: "SYNC_COMMUNITY_SETTINGS",
50: "REQUEST_CONTACT_VERIFICATION",
51: "ACCEPT_CONTACT_VERIFICATION",
52: "DECLINE_CONTACT_VERIFICATION",
53: "SYNC_TRUSTED_USER",
54: "SYNC_VERIFICATION_REQUEST",
56: "SYNC_CONTACT_REQUEST_DECISION",
57: "COMMUNITY_REQUEST_TO_LEAVE",
58: "SYNC_DELETE_FOR_ME_MESSAGE",
59: "SYNC_SAVED_ADDRESS",
60: "COMMUNITY_CANCEL_REQUEST_TO_JOIN",
61: "CANCEL_CONTACT_VERIFICATION",
62: "SYNC_KEYPAIR",
63: "SYNC_SOCIAL_LINKS",
64: "SYNC_ENS_USERNAME_DETAIL",
67: "COMMUNITY_EVENTS_MESSAGE",
68: "COMMUNITY_EDIT_SHARED_ADDRESSES",
69: "SYNC_ACCOUNT_CUSTOMIZATION_COLOR",
70: "SYNC_ACCOUNTS_POSITIONS",
71: "COMMUNITY_EVENTS_MESSAGE_REJECTED",
72: "COMMUNITY_PRIVILEGED_USER_SYNC_MESSAGE",
73: "COMMUNITY_SHARD_KEY",
74: "SYNC_CHAT",
75: "SYNC_ACTIVITY_CENTER_DELETED",
76: "SYNC_ACTIVITY_CENTER_UNREAD",
77: "SYNC_ACTIVITY_CENTER_COMMUNITY_REQUEST_DECISION",
78: "SYNC_TOKEN_PREFERENCES",
79: "COMMUNITY_PUBLIC_SHARD_INFO",
80: "SYNC_COLLECTIBLE_PREFERENCES",
81: "COMMUNITY_USER_KICKED",
}
var ApplicationMetadataMessage_Type_value = map[string]int32{
"UNKNOWN": 0,
"CHAT_MESSAGE": 1,
"CONTACT_UPDATE": 2,
"MEMBERSHIP_UPDATE_MESSAGE": 3,
"SYNC_PAIR_INSTALLATION": 4,
"DEPRECATED_SYNC_INSTALLATION": 5,
"REQUEST_ADDRESS_FOR_TRANSACTION": 6,
"ACCEPT_REQUEST_ADDRESS_FOR_TRANSACTION": 7,
"DECLINE_REQUEST_ADDRESS_FOR_TRANSACTION": 8,
"REQUEST_TRANSACTION": 9,
"SEND_TRANSACTION": 10,
"DECLINE_REQUEST_TRANSACTION": 11,
"SYNC_INSTALLATION_CONTACT_V2": 12,
"SYNC_INSTALLATION_ACCOUNT": 13,
"CONTACT_CODE_ADVERTISEMENT": 15,
"PUSH_NOTIFICATION_REGISTRATION": 16,
"PUSH_NOTIFICATION_REGISTRATION_RESPONSE": 17,
"PUSH_NOTIFICATION_QUERY": 18,
"PUSH_NOTIFICATION_QUERY_RESPONSE": 19,
"PUSH_NOTIFICATION_REQUEST": 20,
"PUSH_NOTIFICATION_RESPONSE": 21,
"EMOJI_REACTION": 22,
"GROUP_CHAT_INVITATION": 23,
"CHAT_IDENTITY": 24,
"COMMUNITY_DESCRIPTION": 25,
"COMMUNITY_INVITATION": 26,
"COMMUNITY_REQUEST_TO_JOIN": 27,
"PIN_MESSAGE": 28,
"EDIT_MESSAGE": 29,
"STATUS_UPDATE": 30,
"DELETE_MESSAGE": 31,
"SYNC_INSTALLATION_COMMUNITY": 32,
"ANONYMOUS_METRIC_BATCH": 33,
"SYNC_CHAT_REMOVED": 34,
"SYNC_CHAT_MESSAGES_READ": 35,
"BACKUP": 36,
"SYNC_ACTIVITY_CENTER_READ": 37,
"SYNC_ACTIVITY_CENTER_ACCEPTED": 38,
"SYNC_ACTIVITY_CENTER_DISMISSED": 39,
"SYNC_BOOKMARK": 40,
"SYNC_CLEAR_HISTORY": 41,
"SYNC_SETTING": 42,
"COMMUNITY_MESSAGE_ARCHIVE_MAGNETLINK": 43,
"SYNC_PROFILE_PICTURES": 44,
"SYNC_ACCOUNT": 45,
"ACCEPT_CONTACT_REQUEST": 46,
"RETRACT_CONTACT_REQUEST": 47,
"COMMUNITY_REQUEST_TO_JOIN_RESPONSE": 48,
"SYNC_COMMUNITY_SETTINGS": 49,
"REQUEST_CONTACT_VERIFICATION": 50,
"ACCEPT_CONTACT_VERIFICATION": 51,
"DECLINE_CONTACT_VERIFICATION": 52,
"SYNC_TRUSTED_USER": 53,
"SYNC_VERIFICATION_REQUEST": 54,
"SYNC_CONTACT_REQUEST_DECISION": 56,
"COMMUNITY_REQUEST_TO_LEAVE": 57,
"SYNC_DELETE_FOR_ME_MESSAGE": 58,
"SYNC_SAVED_ADDRESS": 59,
"COMMUNITY_CANCEL_REQUEST_TO_JOIN": 60,
"CANCEL_CONTACT_VERIFICATION": 61,
"SYNC_KEYPAIR": 62,
"SYNC_SOCIAL_LINKS": 63,
"SYNC_ENS_USERNAME_DETAIL": 64,
"COMMUNITY_EVENTS_MESSAGE": 67,
"COMMUNITY_EDIT_SHARED_ADDRESSES": 68,
"SYNC_ACCOUNT_CUSTOMIZATION_COLOR": 69,
"SYNC_ACCOUNTS_POSITIONS": 70,
"COMMUNITY_EVENTS_MESSAGE_REJECTED": 71,
"COMMUNITY_PRIVILEGED_USER_SYNC_MESSAGE": 72,
"COMMUNITY_SHARD_KEY": 73,
"SYNC_CHAT": 74,
"SYNC_ACTIVITY_CENTER_DELETED": 75,
"SYNC_ACTIVITY_CENTER_UNREAD": 76,
"SYNC_ACTIVITY_CENTER_COMMUNITY_REQUEST_DECISION": 77,
"SYNC_TOKEN_PREFERENCES": 78,
"COMMUNITY_PUBLIC_SHARD_INFO": 79,
"SYNC_COLLECTIBLE_PREFERENCES": 80,
"COMMUNITY_USER_KICKED": 81,
}
func (x ApplicationMetadataMessage_Type) String() string {
return proto.EnumName(ApplicationMetadataMessage_Type_name, int32(x))
}
func (ApplicationMetadataMessage_Type) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_ad09a6406fcf24c7, []int{0, 0}
}
type ApplicationMetadataMessage struct {
// Signature of the payload field
Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
// This is the encoded protobuf of the application level message, i.e ChatMessage
Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
// The type of protobuf message sent
Type ApplicationMetadataMessage_Type `protobuf:"varint,3,opt,name=type,proto3,enum=protobuf.ApplicationMetadataMessage_Type" json:"type,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ApplicationMetadataMessage) Reset() { *m = ApplicationMetadataMessage{} }
func (m *ApplicationMetadataMessage) String() string { return proto.CompactTextString(m) }
func (*ApplicationMetadataMessage) ProtoMessage() {}
func (*ApplicationMetadataMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_ad09a6406fcf24c7, []int{0}
}
func (m *ApplicationMetadataMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ApplicationMetadataMessage.Unmarshal(m, b)
}
func (m *ApplicationMetadataMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ApplicationMetadataMessage.Marshal(b, m, deterministic)
}
func (m *ApplicationMetadataMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_ApplicationMetadataMessage.Merge(m, src)
}
func (m *ApplicationMetadataMessage) XXX_Size() int {
return xxx_messageInfo_ApplicationMetadataMessage.Size(m)
}
func (m *ApplicationMetadataMessage) XXX_DiscardUnknown() {
xxx_messageInfo_ApplicationMetadataMessage.DiscardUnknown(m)
}
var xxx_messageInfo_ApplicationMetadataMessage proto.InternalMessageInfo
func (m *ApplicationMetadataMessage) GetSignature() []byte {
if m != nil {
return m.Signature
}
return nil
}
func (m *ApplicationMetadataMessage) GetPayload() []byte {
if m != nil {
return m.Payload
}
return nil
}
func (m *ApplicationMetadataMessage) GetType() ApplicationMetadataMessage_Type {
if m != nil {
return m.Type
}
return ApplicationMetadataMessage_UNKNOWN
}
func init() {
proto.RegisterEnum("protobuf.ApplicationMetadataMessage_Type", ApplicationMetadataMessage_Type_name, ApplicationMetadataMessage_Type_value)
proto.RegisterType((*ApplicationMetadataMessage)(nil), "protobuf.ApplicationMetadataMessage")
}
func init() {
proto.RegisterFile("application_metadata_message.proto", fileDescriptor_ad09a6406fcf24c7)
}
var fileDescriptor_ad09a6406fcf24c7 = []byte{
// 1177 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x56, 0x6d, 0x73, 0x13, 0x37,
0x17, 0x7d, 0x02, 0x7e, 0xc0, 0x28, 0x24, 0x08, 0x11, 0xc0, 0x09, 0x0e, 0x04, 0x13, 0x92, 0x10,
0x5a, 0xa7, 0x4d, 0xda, 0x4e, 0x5b, 0x4a, 0x5b, 0x59, 0xba, 0xb6, 0x15, 0xef, 0x4a, 0x1b, 0x49,
0xeb, 0x8e, 0xf9, 0xa2, 0x31, 0xc5, 0x65, 0x32, 0x03, 0xc4, 0x43, 0xcc, 0x87, 0xfc, 0x85, 0xfe,
0x8a, 0xfe, 0xd4, 0x8e, 0xf6, 0xd5, 0x89, 0x9d, 0xe6, 0x53, 0x62, 0xdd, 0xa3, 0x97, 0x73, 0xee,
0xb9, 0xf7, 0x2e, 0x6a, 0x0c, 0xc7, 0xe3, 0x0f, 0xc7, 0x7f, 0x0e, 0x27, 0xc7, 0x27, 0x9f, 0xdc,
0xc7, 0xd1, 0x64, 0xf8, 0x6e, 0x38, 0x19, 0xba, 0x8f, 0xa3, 0xd3, 0xd3, 0xe1, 0xfb, 0x51, 0x73,
0xfc, 0xf9, 0x64, 0x72, 0x42, 0xaa, 0xc9, 0x9f, 0xb7, 0x5f, 0xfe, 0x6a, 0xfc, 0xb3, 0x82, 0xd6,
0x68, 0xb9, 0x21, 0xcc, 0xf0, 0x61, 0x0a, 0x27, 0x75, 0x74, 0xeb, 0xf4, 0xf8, 0xfd, 0xa7, 0xe1,
0xe4, 0xcb, 0xe7, 0x51, 0x6d, 0x61, 0x63, 0x61, 0xe7, 0xb6, 0x2e, 0x17, 0x48, 0x0d, 0xdd, 0x1c,
0x0f, 0xcf, 0x3e, 0x9c, 0x0c, 0xdf, 0xd5, 0xae, 0x25, 0xb1, 0xfc, 0x27, 0x79, 0x8d, 0x2a, 0x93,
0xb3, 0xf1, 0xa8, 0x76, 0x7d, 0x63, 0x61, 0x67, 0x79, 0xff, 0x45, 0x33, 0xbf, 0xaf, 0x79, 0xf9,
0x5d, 0x4d, 0x7b, 0x36, 0x1e, 0xe9, 0x64, 0x5b, 0xe3, 0xef, 0x7b, 0xa8, 0xe2, 0x7f, 0x92, 0x45,
0x74, 0x33, 0x96, 0x3d, 0xa9, 0xfe, 0x90, 0xf8, 0x7f, 0x04, 0xa3, 0xdb, 0xac, 0x4b, 0xad, 0x0b,
0xc1, 0x18, 0xda, 0x01, 0xbc, 0x40, 0x08, 0x5a, 0x66, 0x4a, 0x5a, 0xca, 0xac, 0x8b, 0x23, 0x4e,
0x2d, 0xe0, 0x6b, 0x64, 0x1d, 0xad, 0x86, 0x10, 0xb6, 0x40, 0x9b, 0xae, 0x88, 0xb2, 0xe5, 0x62,
0xcb, 0x75, 0xb2, 0x86, 0x1e, 0x98, 0x81, 0x64, 0x2e, 0xa2, 0x42, 0x3b, 0x21, 0x8d, 0xa5, 0x41,
0x40, 0xad, 0x50, 0x12, 0x57, 0xc8, 0x26, 0xaa, 0x73, 0x88, 0x34, 0x30, 0x6a, 0x81, 0xbb, 0x04,
0x76, 0x0e, 0xf1, 0xff, 0xb5, 0x6b, 0xd5, 0x05, 0xf2, 0x0c, 0x3d, 0xd1, 0x70, 0x14, 0x83, 0xb1,
0x8e, 0x72, 0xae, 0xc1, 0x18, 0xd7, 0x56, 0xda, 0x59, 0x4d, 0xa5, 0xa1, 0x2c, 0x01, 0xde, 0x20,
0xbb, 0x68, 0x8b, 0x32, 0x06, 0x91, 0x75, 0x57, 0x61, 0x6f, 0x92, 0x97, 0x68, 0x9b, 0x03, 0x0b,
0x84, 0x84, 0x2b, 0xc1, 0x55, 0xf2, 0x10, 0xdd, 0xcb, 0x41, 0xd3, 0x81, 0x5b, 0x64, 0x05, 0x61,
0x03, 0x92, 0x9f, 0x5b, 0x45, 0xe4, 0x09, 0x7a, 0x74, 0xf1, 0xec, 0x69, 0xc0, 0x22, 0xd9, 0x40,
0xf5, 0x19, 0xa2, 0x2e, 0x17, 0xb5, 0xbf, 0x8f, 0x6f, 0x7b, 0x41, 0x67, 0x11, 0x94, 0x31, 0x15,
0x4b, 0x8b, 0x97, 0xc8, 0x63, 0xb4, 0x96, 0xc3, 0x99, 0xe2, 0xe0, 0x28, 0xef, 0x83, 0xb6, 0xc2,
0x40, 0x08, 0xd2, 0xe2, 0x3b, 0xa4, 0x81, 0x1e, 0x47, 0xb1, 0xe9, 0x3a, 0xa9, 0xac, 0x68, 0x0b,
0x96, 0x6e, 0xd7, 0xd0, 0x11, 0xc6, 0xea, 0x54, 0x56, 0xec, 0x15, 0xf8, 0x6f, 0x8c, 0xd3, 0x60,
0x22, 0x25, 0x0d, 0xe0, 0xbb, 0xe4, 0x11, 0x7a, 0x38, 0x0b, 0x3e, 0x8a, 0x41, 0x0f, 0x30, 0x21,
0x9b, 0x68, 0xe3, 0x92, 0x60, 0x79, 0xc4, 0x3d, 0x4f, 0x69, 0xde, 0x7d, 0x89, 0x3e, 0x78, 0xc5,
0x53, 0x9a, 0x17, 0xce, 0xb6, 0xdf, 0xf7, 0xb6, 0x83, 0x50, 0x1d, 0x0a, 0xa7, 0x21, 0xd3, 0xf1,
0x01, 0x59, 0x45, 0xf7, 0x3b, 0x5a, 0xc5, 0x91, 0x4b, 0x2c, 0x2a, 0x64, 0x5f, 0xd8, 0x94, 0xdd,
0x43, 0x72, 0x17, 0x2d, 0xa5, 0x8b, 0x1c, 0xa4, 0x15, 0x76, 0x80, 0x6b, 0x1e, 0xcd, 0x54, 0x18,
0xc6, 0x52, 0xd8, 0x81, 0xe3, 0x60, 0x98, 0x16, 0x51, 0x82, 0x5e, 0x25, 0x75, 0xb4, 0x52, 0x86,
0xa6, 0xce, 0x59, 0x4b, 0xcc, 0xb7, 0x8e, 0x56, 0xcb, 0x68, 0x91, 0x51, 0xe5, 0x0e, 0x95, 0x90,
0xf8, 0x11, 0xb9, 0x83, 0x16, 0x23, 0x21, 0x0b, 0xbb, 0xd7, 0x7d, 0xcd, 0x00, 0x17, 0x65, 0xcd,
0xac, 0xfb, 0xd7, 0x18, 0x4b, 0x6d, 0x6c, 0xf2, 0x92, 0x79, 0xec, 0xf9, 0x70, 0x08, 0x60, 0xaa,
0x4e, 0x9e, 0x78, 0xe3, 0xcc, 0xf3, 0x45, 0x76, 0x35, 0xde, 0xf0, 0x85, 0x44, 0xa5, 0x92, 0x83,
0x50, 0xc5, 0xc6, 0x85, 0x60, 0xb5, 0x60, 0xae, 0x45, 0x2d, 0xeb, 0xe2, 0xa7, 0xe4, 0x3e, 0xba,
0x9b, 0x6c, 0x4e, 0x68, 0x6b, 0x08, 0x55, 0x1f, 0x38, 0x6e, 0xf8, 0xcc, 0x95, 0xcb, 0xd9, 0x55,
0xc6, 0x8b, 0xc8, 0xf1, 0x33, 0x82, 0xd0, 0x8d, 0x16, 0x65, 0xbd, 0x38, 0xc2, 0x9b, 0x85, 0xe5,
0xbc, 0xba, 0x7d, 0xcf, 0x94, 0x81, 0xb4, 0xa0, 0x53, 0xe8, 0x73, 0xf2, 0x14, 0xad, 0xcf, 0x0d,
0xa7, 0x15, 0x07, 0x1c, 0x6f, 0x79, 0xd7, 0xcd, 0x85, 0x70, 0x61, 0x42, 0x61, 0x0c, 0x70, 0xbc,
0x9d, 0x28, 0xe1, 0x31, 0x2d, 0xa5, 0x7a, 0x21, 0xd5, 0x3d, 0xbc, 0x43, 0x1e, 0x20, 0x92, 0xbe,
0x30, 0x00, 0xaa, 0x5d, 0x57, 0x18, 0xab, 0xf4, 0x00, 0xbf, 0xf0, 0x32, 0x26, 0xeb, 0x06, 0xac,
0x15, 0xb2, 0x83, 0x77, 0xc9, 0x0e, 0xda, 0x2c, 0x13, 0x91, 0x71, 0x71, 0x54, 0xb3, 0xae, 0xe8,
0x83, 0x0b, 0x69, 0x47, 0x82, 0x0d, 0x84, 0xec, 0xe1, 0x97, 0x3e, 0xd7, 0x69, 0xc7, 0xd1, 0xaa,
0x2d, 0x02, 0x70, 0x91, 0x60, 0x36, 0xd6, 0x60, 0xf0, 0x57, 0xc5, 0xb1, 0x79, 0x35, 0x7d, 0x9d,
0xa8, 0x9a, 0xf6, 0x8d, 0xbc, 0xa8, 0x72, 0x5b, 0x36, 0xbd, 0x7c, 0x1a, 0xac, 0x4e, 0x2b, 0xed,
0x7c, 0x70, 0x8f, 0x6c, 0xa1, 0xc6, 0xa5, 0xc6, 0x28, 0xbd, 0xfb, 0x4d, 0x99, 0x83, 0x02, 0x9c,
0x71, 0x32, 0xf8, 0x5b, 0xdf, 0x0c, 0xf2, 0xad, 0x45, 0x0b, 0x00, 0x5d, 0xd4, 0x00, 0xde, 0xf7,
0xb6, 0xb8, 0xf0, 0xbe, 0x73, 0x80, 0x03, 0x7f, 0x44, 0xde, 0x70, 0xe6, 0x22, 0xbe, 0x2b, 0xcc,
0x61, 0x75, 0x6c, 0x7c, 0x9f, 0x8d, 0x0d, 0x68, 0xfc, 0x7d, 0x91, 0xf3, 0x69, 0x74, 0xc1, 0xef,
0x87, 0x22, 0xe7, 0x17, 0x98, 0x3b, 0x0e, 0x4c, 0x18, 0x7f, 0xf0, 0x8f, 0x69, 0x27, 0x9a, 0x23,
0x41, 0x00, 0xb4, 0x0f, 0xf8, 0x27, 0x1f, 0x4f, 0x8e, 0xc8, 0xbc, 0xee, 0x7b, 0x6b, 0x58, 0x5a,
0xfe, 0xe7, 0x22, 0xf9, 0x86, 0xf6, 0x81, 0xe7, 0x2d, 0x18, 0xbf, 0xf2, 0x3d, 0xa5, 0x3c, 0x97,
0x51, 0xc9, 0x20, 0x98, 0x29, 0xbd, 0x5f, 0xbc, 0x32, 0x59, 0x6c, 0x2e, 0xef, 0xd7, 0x45, 0xb2,
0x7b, 0x30, 0xf0, 0xc3, 0x07, 0xff, 0x5a, 0x28, 0x61, 0x14, 0x13, 0x34, 0x70, 0xde, 0x2f, 0x06,
0xff, 0x46, 0xea, 0xa8, 0x96, 0x2c, 0x83, 0x34, 0x89, 0x38, 0x92, 0x86, 0xe0, 0x38, 0x58, 0x2a,
0x02, 0xfc, 0xbb, 0x8f, 0x96, 0xaf, 0x81, 0x3e, 0x48, 0x6b, 0x0a, 0x0e, 0xcc, 0x0f, 0xa7, 0xa9,
0xa8, 0xaf, 0x7c, 0xd3, 0xa5, 0xba, 0xa4, 0x03, 0x06, 0x73, 0x4f, 0x68, 0xda, 0x76, 0x8e, 0xc5,
0xc6, 0xaa, 0x50, 0xbc, 0xc9, 0x8b, 0x3c, 0x50, 0x1a, 0x43, 0xe1, 0x94, 0x0c, 0x65, 0x5c, 0xa4,
0x8c, 0xf0, 0x08, 0x83, 0xdb, 0xe4, 0x39, 0x7a, 0x7a, 0xd9, 0x2b, 0x9c, 0x86, 0x43, 0x60, 0xbe,
0x0c, 0x3b, 0x7e, 0x0c, 0x96, 0xb0, 0x48, 0x8b, 0xbe, 0x08, 0xa0, 0x93, 0xe5, 0x3c, 0x1d, 0xb0,
0xf9, 0xd3, 0xbb, 0x7e, 0xb2, 0x4d, 0x99, 0xb2, 0x4b, 0x35, 0xf7, 0x52, 0x61, 0x41, 0x96, 0xd0,
0xad, 0xa2, 0x6d, 0xe0, 0xc3, 0x62, 0x62, 0xcd, 0x94, 0x76, 0x92, 0x56, 0x8e, 0x7b, 0x45, 0xef,
0xba, 0x88, 0x88, 0x65, 0xd2, 0x40, 0x02, 0x72, 0x80, 0xf6, 0xe6, 0x02, 0x66, 0xed, 0x53, 0xd8,
0x2b, 0x2c, 0xbe, 0x1c, 0xac, 0xea, 0x81, 0x74, 0x91, 0x86, 0x36, 0x68, 0x90, 0x0c, 0x0c, 0x96,
0x49, 0xf2, 0x4b, 0x9e, 0x71, 0x2b, 0x10, 0x2c, 0xa3, 0x20, 0x64, 0x5b, 0x61, 0x55, 0x3c, 0x9a,
0xa9, 0x20, 0x00, 0x66, 0x45, 0xcb, 0x37, 0x82, 0xa9, 0x23, 0xa2, 0xf3, 0x23, 0x21, 0xd1, 0xa7,
0x27, 0x58, 0x0f, 0x38, 0x3e, 0x6a, 0x54, 0xaa, 0xcb, 0x78, 0xb9, 0x51, 0xa9, 0x52, 0x4c, 0x1b,
0x95, 0x6a, 0x0b, 0xb7, 0x76, 0xd7, 0x67, 0x7b, 0x73, 0x76, 0xab, 0x17, 0x69, 0xb7, 0x31, 0x97,
0xdd, 0xf4, 0x38, 0x33, 0xbb, 0xdb, 0x57, 0x62, 0x9c, 0x9f, 0x13, 0xd0, 0x5a, 0x7a, 0xb3, 0xd8,
0xdc, 0x7b, 0x95, 0x7f, 0xc1, 0xbd, 0xbd, 0x91, 0xfc, 0x77, 0xf0, 0x6f, 0x00, 0x00, 0x00, 0xff,
0xff, 0x37, 0xfa, 0x36, 0xf9, 0x68, 0x0a, 0x00, 0x00,
}

View File

@@ -0,0 +1,103 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message ApplicationMetadataMessage {
// Signature of the payload field
bytes signature = 1;
// This is the encoded protobuf of the application level message, i.e ChatMessage
bytes payload = 2;
// The type of protobuf message sent
Type type = 3;
enum Type {
reserved 14;
reserved "SYNC_INSTALLATION_PUBLIC_CHAT";
UNKNOWN = 0;
CHAT_MESSAGE = 1;
CONTACT_UPDATE = 2;
MEMBERSHIP_UPDATE_MESSAGE = 3;
SYNC_PAIR_INSTALLATION = 4;
DEPRECATED_SYNC_INSTALLATION = 5 [deprecated=true];
REQUEST_ADDRESS_FOR_TRANSACTION = 6;
ACCEPT_REQUEST_ADDRESS_FOR_TRANSACTION = 7;
DECLINE_REQUEST_ADDRESS_FOR_TRANSACTION = 8;
REQUEST_TRANSACTION = 9;
SEND_TRANSACTION = 10;
DECLINE_REQUEST_TRANSACTION = 11;
SYNC_INSTALLATION_CONTACT_V2 = 12;
SYNC_INSTALLATION_ACCOUNT = 13;
CONTACT_CODE_ADVERTISEMENT = 15;
PUSH_NOTIFICATION_REGISTRATION = 16;
PUSH_NOTIFICATION_REGISTRATION_RESPONSE = 17;
PUSH_NOTIFICATION_QUERY = 18;
PUSH_NOTIFICATION_QUERY_RESPONSE = 19;
PUSH_NOTIFICATION_REQUEST = 20;
PUSH_NOTIFICATION_RESPONSE = 21;
EMOJI_REACTION = 22;
GROUP_CHAT_INVITATION = 23;
CHAT_IDENTITY = 24;
COMMUNITY_DESCRIPTION = 25;
COMMUNITY_INVITATION = 26 [deprecated=true];
COMMUNITY_REQUEST_TO_JOIN = 27;
PIN_MESSAGE = 28;
EDIT_MESSAGE = 29;
STATUS_UPDATE = 30;
DELETE_MESSAGE = 31;
SYNC_INSTALLATION_COMMUNITY = 32;
ANONYMOUS_METRIC_BATCH = 33;
SYNC_CHAT_REMOVED = 34;
SYNC_CHAT_MESSAGES_READ = 35;
BACKUP = 36;
SYNC_ACTIVITY_CENTER_READ = 37;
SYNC_ACTIVITY_CENTER_ACCEPTED = 38;
SYNC_ACTIVITY_CENTER_DISMISSED = 39;
SYNC_BOOKMARK = 40;
SYNC_CLEAR_HISTORY = 41;
SYNC_SETTING = 42;
COMMUNITY_MESSAGE_ARCHIVE_MAGNETLINK = 43;
SYNC_PROFILE_PICTURES = 44;
SYNC_ACCOUNT = 45;
ACCEPT_CONTACT_REQUEST = 46;
RETRACT_CONTACT_REQUEST = 47;
COMMUNITY_REQUEST_TO_JOIN_RESPONSE = 48;
SYNC_COMMUNITY_SETTINGS = 49;
REQUEST_CONTACT_VERIFICATION = 50;
ACCEPT_CONTACT_VERIFICATION = 51;
DECLINE_CONTACT_VERIFICATION = 52;
SYNC_TRUSTED_USER = 53;
SYNC_VERIFICATION_REQUEST = 54;
SYNC_CONTACT_REQUEST_DECISION = 56;
COMMUNITY_REQUEST_TO_LEAVE = 57;
SYNC_DELETE_FOR_ME_MESSAGE = 58;
SYNC_SAVED_ADDRESS = 59;
COMMUNITY_CANCEL_REQUEST_TO_JOIN = 60;
CANCEL_CONTACT_VERIFICATION = 61;
SYNC_KEYPAIR = 62;
SYNC_SOCIAL_LINKS = 63;
SYNC_ENS_USERNAME_DETAIL = 64;
reserved 65;
reserved "SYNC_ACTIVITY_CENTER_NOTIFICATIONS";
// No need to sync AC state now since we allow exist different number of ACs between paired devices
// Also we will update AC state after sync AC decision
reserved 66;
reserved "SYNC_ACTIVITY_CENTER_NOTIFICATION_STATE";
COMMUNITY_EVENTS_MESSAGE = 67;
COMMUNITY_EDIT_SHARED_ADDRESSES = 68;
SYNC_ACCOUNT_CUSTOMIZATION_COLOR = 69;
SYNC_ACCOUNTS_POSITIONS = 70;
COMMUNITY_EVENTS_MESSAGE_REJECTED = 71;
COMMUNITY_PRIVILEGED_USER_SYNC_MESSAGE = 72;
COMMUNITY_SHARD_KEY = 73;
SYNC_CHAT = 74;
SYNC_ACTIVITY_CENTER_DELETED = 75;
SYNC_ACTIVITY_CENTER_UNREAD = 76;
SYNC_ACTIVITY_CENTER_COMMUNITY_REQUEST_DECISION = 77;
SYNC_TOKEN_PREFERENCES = 78;
COMMUNITY_PUBLIC_SHARD_INFO = 79;
SYNC_COLLECTIBLE_PREFERENCES = 80;
COMMUNITY_USER_KICKED = 81;
}
}

View File

@@ -0,0 +1,353 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: chat_identity.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
// SourceType are the predefined types of image source allowed
type IdentityImage_SourceType int32
const (
IdentityImage_UNKNOWN_SOURCE_TYPE IdentityImage_SourceType = 0
// RAW_PAYLOAD image byte data
IdentityImage_RAW_PAYLOAD IdentityImage_SourceType = 1
// ENS_AVATAR uses the ENS record's resolver get-text-data.avatar data
// The `payload` field will be ignored if ENS_AVATAR is selected
// The application will read and parse the ENS avatar data as image payload data, URLs will be ignored
// The parent `ChatMessageIdentity` must have a valid `ens_name` set
IdentityImage_ENS_AVATAR IdentityImage_SourceType = 2
)
var IdentityImage_SourceType_name = map[int32]string{
0: "UNKNOWN_SOURCE_TYPE",
1: "RAW_PAYLOAD",
2: "ENS_AVATAR",
}
var IdentityImage_SourceType_value = map[string]int32{
"UNKNOWN_SOURCE_TYPE": 0,
"RAW_PAYLOAD": 1,
"ENS_AVATAR": 2,
}
func (x IdentityImage_SourceType) String() string {
return proto.EnumName(IdentityImage_SourceType_name, int32(x))
}
func (IdentityImage_SourceType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_7a652489000a5879, []int{1, 0}
}
// ChatIdentity represents the user defined identity associated with their public chat key
type ChatIdentity struct {
// Lamport timestamp of the message
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// ens_name is the valid ENS name associated with the chat key
EnsName string `protobuf:"bytes,2,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty"`
// images is a string indexed mapping of images associated with an identity
Images map[string]*IdentityImage `protobuf:"bytes,3,rep,name=images,proto3" json:"images,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// display name is the user set identity
DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
// description is the user set description
Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
Color string `protobuf:"bytes,6,opt,name=color,proto3" json:"color,omitempty"`
Emoji string `protobuf:"bytes,7,opt,name=emoji,proto3" json:"emoji,omitempty"`
SocialLinks []*SocialLink `protobuf:"bytes,8,rep,name=social_links,json=socialLinks,proto3" json:"social_links,omitempty"`
// first known message timestamp in seconds (valid only for community chats for now)
// 0 - unknown
// 1 - no messages
FirstMessageTimestamp uint32 `protobuf:"varint,9,opt,name=first_message_timestamp,json=firstMessageTimestamp,proto3" json:"first_message_timestamp,omitempty"`
ProfileShowcase *ProfileShowcase `protobuf:"bytes,10,opt,name=profile_showcase,json=profileShowcase,proto3" json:"profile_showcase,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ChatIdentity) Reset() { *m = ChatIdentity{} }
func (m *ChatIdentity) String() string { return proto.CompactTextString(m) }
func (*ChatIdentity) ProtoMessage() {}
func (*ChatIdentity) Descriptor() ([]byte, []int) {
return fileDescriptor_7a652489000a5879, []int{0}
}
func (m *ChatIdentity) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChatIdentity.Unmarshal(m, b)
}
func (m *ChatIdentity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ChatIdentity.Marshal(b, m, deterministic)
}
func (m *ChatIdentity) XXX_Merge(src proto.Message) {
xxx_messageInfo_ChatIdentity.Merge(m, src)
}
func (m *ChatIdentity) XXX_Size() int {
return xxx_messageInfo_ChatIdentity.Size(m)
}
func (m *ChatIdentity) XXX_DiscardUnknown() {
xxx_messageInfo_ChatIdentity.DiscardUnknown(m)
}
var xxx_messageInfo_ChatIdentity proto.InternalMessageInfo
func (m *ChatIdentity) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *ChatIdentity) GetEnsName() string {
if m != nil {
return m.EnsName
}
return ""
}
func (m *ChatIdentity) GetImages() map[string]*IdentityImage {
if m != nil {
return m.Images
}
return nil
}
func (m *ChatIdentity) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *ChatIdentity) GetDescription() string {
if m != nil {
return m.Description
}
return ""
}
func (m *ChatIdentity) GetColor() string {
if m != nil {
return m.Color
}
return ""
}
func (m *ChatIdentity) GetEmoji() string {
if m != nil {
return m.Emoji
}
return ""
}
func (m *ChatIdentity) GetSocialLinks() []*SocialLink {
if m != nil {
return m.SocialLinks
}
return nil
}
func (m *ChatIdentity) GetFirstMessageTimestamp() uint32 {
if m != nil {
return m.FirstMessageTimestamp
}
return 0
}
func (m *ChatIdentity) GetProfileShowcase() *ProfileShowcase {
if m != nil {
return m.ProfileShowcase
}
return nil
}
// ProfileImage represents data associated with a user's profile image
type IdentityImage struct {
// payload is a context based payload for the profile image data,
// context is determined by the `source_type`
Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"`
// source_type signals the image payload source
SourceType IdentityImage_SourceType `protobuf:"varint,2,opt,name=source_type,json=sourceType,proto3,enum=protobuf.IdentityImage_SourceType" json:"source_type,omitempty"`
// image_format signals the image format and method of parsing the payload
ImageFormat ImageFormat `protobuf:"varint,3,opt,name=image_format,json=imageFormat,proto3,enum=protobuf.ImageFormat" json:"image_format,omitempty"`
// encryption_keys is a list of encrypted keys that can be used to decrypted an encrypted payload
EncryptionKeys [][]byte `protobuf:"bytes,4,rep,name=encryption_keys,json=encryptionKeys,proto3" json:"encryption_keys,omitempty"`
// encrypted signals the encryption state of the payload, default is false.
Encrypted bool `protobuf:"varint,5,opt,name=encrypted,proto3" json:"encrypted,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *IdentityImage) Reset() { *m = IdentityImage{} }
func (m *IdentityImage) String() string { return proto.CompactTextString(m) }
func (*IdentityImage) ProtoMessage() {}
func (*IdentityImage) Descriptor() ([]byte, []int) {
return fileDescriptor_7a652489000a5879, []int{1}
}
func (m *IdentityImage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IdentityImage.Unmarshal(m, b)
}
func (m *IdentityImage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_IdentityImage.Marshal(b, m, deterministic)
}
func (m *IdentityImage) XXX_Merge(src proto.Message) {
xxx_messageInfo_IdentityImage.Merge(m, src)
}
func (m *IdentityImage) XXX_Size() int {
return xxx_messageInfo_IdentityImage.Size(m)
}
func (m *IdentityImage) XXX_DiscardUnknown() {
xxx_messageInfo_IdentityImage.DiscardUnknown(m)
}
var xxx_messageInfo_IdentityImage proto.InternalMessageInfo
func (m *IdentityImage) GetPayload() []byte {
if m != nil {
return m.Payload
}
return nil
}
func (m *IdentityImage) GetSourceType() IdentityImage_SourceType {
if m != nil {
return m.SourceType
}
return IdentityImage_UNKNOWN_SOURCE_TYPE
}
func (m *IdentityImage) GetImageFormat() ImageFormat {
if m != nil {
return m.ImageFormat
}
return ImageFormat_UNKNOWN_IMAGE_FORMAT
}
func (m *IdentityImage) GetEncryptionKeys() [][]byte {
if m != nil {
return m.EncryptionKeys
}
return nil
}
func (m *IdentityImage) GetEncrypted() bool {
if m != nil {
return m.Encrypted
}
return false
}
// SocialLinks represents social link assosiated with given chat identity (personal/community)
type SocialLink struct {
Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SocialLink) Reset() { *m = SocialLink{} }
func (m *SocialLink) String() string { return proto.CompactTextString(m) }
func (*SocialLink) ProtoMessage() {}
func (*SocialLink) Descriptor() ([]byte, []int) {
return fileDescriptor_7a652489000a5879, []int{2}
}
func (m *SocialLink) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SocialLink.Unmarshal(m, b)
}
func (m *SocialLink) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SocialLink.Marshal(b, m, deterministic)
}
func (m *SocialLink) XXX_Merge(src proto.Message) {
xxx_messageInfo_SocialLink.Merge(m, src)
}
func (m *SocialLink) XXX_Size() int {
return xxx_messageInfo_SocialLink.Size(m)
}
func (m *SocialLink) XXX_DiscardUnknown() {
xxx_messageInfo_SocialLink.DiscardUnknown(m)
}
var xxx_messageInfo_SocialLink proto.InternalMessageInfo
func (m *SocialLink) GetText() string {
if m != nil {
return m.Text
}
return ""
}
func (m *SocialLink) GetUrl() string {
if m != nil {
return m.Url
}
return ""
}
func init() {
proto.RegisterEnum("protobuf.IdentityImage_SourceType", IdentityImage_SourceType_name, IdentityImage_SourceType_value)
proto.RegisterType((*ChatIdentity)(nil), "protobuf.ChatIdentity")
proto.RegisterMapType((map[string]*IdentityImage)(nil), "protobuf.ChatIdentity.ImagesEntry")
proto.RegisterType((*IdentityImage)(nil), "protobuf.IdentityImage")
proto.RegisterType((*SocialLink)(nil), "protobuf.SocialLink")
}
func init() {
proto.RegisterFile("chat_identity.proto", fileDescriptor_7a652489000a5879)
}
var fileDescriptor_7a652489000a5879 = []byte{
// 568 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x53, 0x51, 0x4f, 0xdb, 0x3c,
0x14, 0xfd, 0xd2, 0x16, 0x68, 0xaf, 0x0b, 0x54, 0x06, 0x3e, 0x0c, 0xda, 0x43, 0xd6, 0x97, 0xf5,
0x65, 0x99, 0xd4, 0x49, 0x1b, 0x62, 0x4f, 0x19, 0x14, 0x09, 0xc1, 0x0a, 0x72, 0xcb, 0x10, 0x7b,
0xb1, 0x4c, 0xea, 0x82, 0xd7, 0x24, 0x8e, 0x62, 0x77, 0x5b, 0x7e, 0xd9, 0x7e, 0xda, 0x5e, 0xa7,
0x38, 0x09, 0x69, 0xf7, 0xd4, 0x7b, 0xcf, 0x39, 0x3e, 0xbe, 0xbd, 0xc7, 0x81, 0xbd, 0xe0, 0x99,
0x1b, 0x26, 0x67, 0x22, 0x36, 0xd2, 0x64, 0x5e, 0x92, 0x2a, 0xa3, 0x70, 0xdb, 0xfe, 0x3c, 0x2e,
0xe7, 0xc7, 0x48, 0xc4, 0xcb, 0x48, 0x17, 0xf0, 0xf1, 0xff, 0x49, 0xaa, 0xe6, 0x32, 0x14, 0x4c,
0x3f, 0xab, 0x9f, 0x01, 0xd7, 0xa2, 0xc0, 0xfb, 0x7f, 0x9a, 0xd0, 0x3d, 0x7b, 0xe6, 0xe6, 0xb2,
0x74, 0xc1, 0xfb, 0xb0, 0x11, 0x84, 0x2a, 0x58, 0x10, 0xc7, 0x75, 0x06, 0x2d, 0x5a, 0x34, 0xf8,
0x08, 0xda, 0x22, 0xd6, 0x2c, 0xe6, 0x91, 0x20, 0x0d, 0xd7, 0x19, 0x74, 0xe8, 0x96, 0x88, 0xf5,
0x98, 0x47, 0x02, 0x9f, 0xc2, 0xa6, 0x8c, 0xf8, 0x93, 0xd0, 0xa4, 0xe9, 0x36, 0x07, 0x68, 0xd8,
0xf7, 0xaa, 0x09, 0xbc, 0x55, 0x63, 0xef, 0xd2, 0x8a, 0x46, 0xb1, 0x49, 0x33, 0x5a, 0x9e, 0xc0,
0xaf, 0xa1, 0x3b, 0x93, 0x3a, 0x09, 0x79, 0x56, 0x58, 0xb7, 0xac, 0x35, 0x2a, 0x31, 0x6b, 0xef,
0x02, 0x9a, 0x09, 0x1d, 0xa4, 0x32, 0x31, 0x52, 0xc5, 0x64, 0xa3, 0x54, 0xd4, 0x90, 0x9d, 0x58,
0x85, 0x2a, 0x25, 0x9b, 0x96, 0x2b, 0x9a, 0x1c, 0x15, 0x91, 0xfa, 0x2e, 0xc9, 0x56, 0x81, 0xda,
0x06, 0x7f, 0x84, 0xae, 0x56, 0x81, 0xe4, 0x21, 0x0b, 0x65, 0xbc, 0xd0, 0xa4, 0x6d, 0x47, 0xde,
0xaf, 0x47, 0x9e, 0x58, 0xf6, 0x5a, 0xc6, 0x0b, 0x8a, 0xf4, 0x4b, 0xad, 0xf1, 0x07, 0x38, 0x9c,
0xcb, 0x54, 0x1b, 0x16, 0x09, 0xad, 0xf9, 0x93, 0x60, 0x46, 0x46, 0x42, 0x1b, 0x1e, 0x25, 0xa4,
0xe3, 0x3a, 0x83, 0x6d, 0x7a, 0x60, 0xe9, 0x2f, 0x05, 0x3b, 0xad, 0x48, 0x7c, 0x0e, 0xbd, 0x7f,
0x37, 0x4f, 0xc0, 0x75, 0x06, 0x68, 0x78, 0x54, 0x5f, 0x7a, 0x5b, 0x28, 0x26, 0xa5, 0x80, 0xee,
0x26, 0xeb, 0xc0, 0x31, 0x05, 0xb4, 0xb2, 0x3e, 0xdc, 0x83, 0xe6, 0x42, 0x64, 0x36, 0xa1, 0x0e,
0xcd, 0x4b, 0xfc, 0x16, 0x36, 0x7e, 0xf0, 0x70, 0x59, 0x84, 0x83, 0x86, 0x87, 0xb5, 0x77, 0xb5,
0x7f, 0x7b, 0x9e, 0x16, 0xaa, 0xd3, 0xc6, 0x89, 0xd3, 0xff, 0xdd, 0x80, 0xed, 0x35, 0x12, 0x13,
0xd8, 0x4a, 0x78, 0x16, 0x2a, 0x3e, 0xb3, 0xd6, 0x5d, 0x5a, 0xb5, 0xf8, 0x0c, 0x90, 0x56, 0xcb,
0x34, 0x10, 0xcc, 0x64, 0x49, 0x71, 0xc9, 0xce, 0x6a, 0xd0, 0x6b, 0x3e, 0xde, 0xc4, 0x4a, 0xa7,
0x59, 0x22, 0x28, 0xe8, 0x97, 0x1a, 0x9f, 0x40, 0xd7, 0xc6, 0xce, 0xe6, 0x2a, 0x8d, 0xb8, 0x21,
0x4d, 0xeb, 0x72, 0xb0, 0xe2, 0x92, 0xb3, 0x17, 0x96, 0xa4, 0x48, 0xd6, 0x0d, 0x7e, 0x03, 0xbb,
0x22, 0x0e, 0xd2, 0xcc, 0xe6, 0xcd, 0x16, 0x22, 0xd3, 0xa4, 0xe5, 0x36, 0x07, 0x5d, 0xba, 0x53,
0xc3, 0x57, 0x22, 0xd3, 0xf8, 0x15, 0x74, 0x4a, 0x44, 0xcc, 0xec, 0x53, 0x69, 0xd3, 0x1a, 0xe8,
0x5f, 0x00, 0xd4, 0xa3, 0xe1, 0x43, 0xd8, 0xbb, 0x1b, 0x5f, 0x8d, 0x6f, 0xee, 0xc7, 0x6c, 0x72,
0x73, 0x47, 0xcf, 0x46, 0x6c, 0xfa, 0x70, 0x3b, 0xea, 0xfd, 0x87, 0x77, 0x01, 0x51, 0xff, 0x9e,
0xdd, 0xfa, 0x0f, 0xd7, 0x37, 0xfe, 0x79, 0xcf, 0xc1, 0x3b, 0x00, 0xa3, 0xf1, 0x84, 0xf9, 0x5f,
0xfd, 0xa9, 0x4f, 0x7b, 0x8d, 0xfe, 0x30, 0xf7, 0xa9, 0x9e, 0x06, 0xc6, 0xd0, 0x32, 0xe2, 0x97,
0x29, 0xd3, 0xb0, 0x75, 0x1e, 0xd0, 0x32, 0x0d, 0xcb, 0x2f, 0x25, 0x2f, 0x3f, 0x6f, 0x7f, 0x43,
0xde, 0xbb, 0x4f, 0xd5, 0x5f, 0x7d, 0xdc, 0xb4, 0xd5, 0xfb, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff,
0xf2, 0x9d, 0x33, 0x90, 0xc3, 0x03, 0x00, 0x00,
}

View File

@@ -0,0 +1,78 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "enums.proto";
import "profile_showcase.proto";
// ChatIdentity represents the user defined identity associated with their public chat key
message ChatIdentity {
// Lamport timestamp of the message
uint64 clock = 1;
// ens_name is the valid ENS name associated with the chat key
string ens_name = 2;
// images is a string indexed mapping of images associated with an identity
map<string, IdentityImage> images = 3;
// display name is the user set identity
string display_name = 4;
// description is the user set description
string description = 5;
string color = 6;
string emoji = 7;
repeated SocialLink social_links = 8;
// first known message timestamp in seconds (valid only for community chats for now)
// 0 - unknown
// 1 - no messages
uint32 first_message_timestamp = 9;
ProfileShowcase profile_showcase = 10;
}
// ProfileImage represents data associated with a user's profile image
message IdentityImage {
// payload is a context based payload for the profile image data,
// context is determined by the `source_type`
bytes payload = 1;
// source_type signals the image payload source
SourceType source_type = 2;
// image_format signals the image format and method of parsing the payload
ImageFormat image_format = 3;
// encryption_keys is a list of encrypted keys that can be used to decrypted an encrypted payload
repeated bytes encryption_keys = 4;
// encrypted signals the encryption state of the payload, default is false.
bool encrypted = 5;
// SourceType are the predefined types of image source allowed
enum SourceType {
UNKNOWN_SOURCE_TYPE = 0;
// RAW_PAYLOAD image byte data
RAW_PAYLOAD = 1;
// ENS_AVATAR uses the ENS record's resolver get-text-data.avatar data
// The `payload` field will be ignored if ENS_AVATAR is selected
// The application will read and parse the ENS avatar data as image payload data, URLs will be ignored
// The parent `ChatMessageIdentity` must have a valid `ens_name` set
ENS_AVATAR = 2;
}
}
// SocialLinks represents social link assosiated with given chat identity (personal/community)
message SocialLink {
string text = 1;
string url = 2;
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,261 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "enums.proto";
import "contact.proto";
import "shard.proto";
message StickerMessage {
string hash = 1;
int32 pack = 2;
}
message ImageMessage {
bytes payload = 1;
ImageFormat format = 2;
string album_id = 3;
uint32 width = 4;
uint32 height = 5;
uint32 album_images_count = 6;
}
message AudioMessage {
bytes payload = 1;
AudioType type = 2;
uint64 duration_ms = 3;
enum AudioType {
UNKNOWN_AUDIO_TYPE = 0;
AAC = 1;
AMR = 2;
}
}
message EditMessage {
uint64 clock = 1;
// Text of the message
string text = 2;
string chat_id = 3;
string message_id = 4;
// Grant for community edit messages
bytes grant = 5 [deprecated = true];
// The type of message (public/one-to-one/private-group-chat)
MessageType message_type = 6;
ChatMessage.ContentType content_type = 7;
repeated UnfurledLink unfurled_links = 8;
UnfurledStatusLinks unfurled_status_links = 9;
}
message DeleteMessage {
uint64 clock = 1;
string chat_id = 2;
string message_id = 3;
// Grant for community delete messages
bytes grant = 4 [deprecated = true];
// The type of message (public/one-to-one/private-group-chat)
MessageType message_type = 5;
string deleted_by = 6;
}
message SyncDeleteForMeMessage {
uint64 clock = 1;
string message_id = 2;
}
message DiscordMessage {
string id = 1;
string type = 2;
string timestamp = 3;
string timestampEdited = 4;
string content = 5;
DiscordMessageAuthor author = 6;
DiscordMessageReference reference = 7;
repeated DiscordMessageAttachment attachments = 8;
}
message DiscordMessageAuthor {
string id = 1;
string name = 2;
string discriminator = 3;
string nickname = 4;
string avatarUrl = 5;
bytes avatarImagePayload = 6;
string localUrl = 7;
}
message DiscordMessageReference {
string messageId = 1;
string channelId = 2;
string guildId = 3;
}
message DiscordMessageAttachment {
string id = 1;
string messageId = 2;
string url = 3;
string fileName = 4;
uint64 fileSizeBytes = 5;
string contentType = 6;
bytes payload = 7;
string localUrl = 8;
}
message BridgeMessage {
string bridgeName = 1;
string userName = 2;
string userAvatar = 3;
string userID = 4;
string content = 5;
string messageID = 6;
string parentMessageID = 7;
}
message UnfurledLinkThumbnail {
bytes payload = 1;
uint32 width = 2;
uint32 height = 3;
}
message UnfurledLink {
// A valid URL which uniquely identifies this link.
string url = 1;
// Website's title.
string title = 2;
// Description is sometimes available, but can be empty. Most mainstream
// websites provide this information.
string description = 3;
bytes thumbnail_payload = 4;
uint32 thumbnail_width = 5;
uint32 thumbnail_height = 6;
LinkType type = 7;
enum LinkType {
LINK = 0;
IMAGE = 1;
}
}
message UnfurledStatusContactLink {
bytes public_key = 1;
string display_name = 2;
string description = 3;
UnfurledLinkThumbnail icon = 4;
}
message UnfurledStatusCommunityLink {
bytes community_id = 1;
string display_name = 2;
string description = 3;
uint32 members_count = 4;
string color = 5;
UnfurledLinkThumbnail icon = 7;
UnfurledLinkThumbnail banner = 8;
}
message UnfurledStatusChannelLink {
string channel_uuid = 1;
string emoji = 2;
string display_name = 3;
string description = 4;
string color = 5;
UnfurledStatusCommunityLink community = 6;
}
message UnfurledStatusLink {
string url = 1;
oneof payload {
UnfurledStatusContactLink contact = 2;
UnfurledStatusCommunityLink community = 3;
UnfurledStatusChannelLink channel = 4;
}
}
// Create a wrapper around repeated property for proper unmarshalling
message UnfurledStatusLinks {
repeated UnfurledStatusLink unfurled_status_links = 1;
}
message ChatMessage {
// Lamport timestamp of the chat message
uint64 clock = 1;
// Unix timestamps in milliseconds, currently not used as we use whisper as
// more reliable, but here so that we don't rely on it
uint64 timestamp = 2;
// Text of the message
string text = 3;
// Id of the message that we are replying to
string response_to = 4;
// Ens name of the sender
string ens_name = 5;
// Chat id, this field is symmetric for public-chats and private group chats,
// but asymmetric in case of one-to-ones, as the sender will use the chat-id
// of the received, while the receiver will use the chat-id of the sender.
// Probably should be the concatenation of sender-pk & receiver-pk in
// alphabetical order
string chat_id = 6;
// The type of message (public/one-to-one/private-group-chat)
MessageType message_type = 7;
// The type of the content of the message
ContentType content_type = 8;
oneof payload {
StickerMessage sticker = 9;
ImageMessage image = 10;
AudioMessage audio = 11;
bytes community = 12;
DiscordMessage discord_message = 99;
BridgeMessage bridge_message = 100;
}
// Grant for community chat messages
bytes grant = 13 [deprecated = true];
// Message author's display name, introduced in version 1
string display_name = 14;
ContactRequestPropagatedState contact_request_propagated_state = 15;
repeated UnfurledLink unfurled_links = 16;
Shard shard = 17;
UnfurledStatusLinks unfurled_status_links = 18;
enum ContentType {
UNKNOWN_CONTENT_TYPE = 0;
TEXT_PLAIN = 1;
STICKER = 2;
STATUS = 3;
EMOJI = 4;
TRANSACTION_COMMAND = 5;
// Only local
SYSTEM_MESSAGE_CONTENT_PRIVATE_GROUP = 6;
IMAGE = 7;
AUDIO = 8;
COMMUNITY = 9;
// Only local
SYSTEM_MESSAGE_GAP = 10;
CONTACT_REQUEST = 11;
DISCORD_MESSAGE = 12;
IDENTITY_VERIFICATION = 13;
// Only local
SYSTEM_MESSAGE_PINNED_MESSAGE = 14;
// Only local
SYSTEM_MESSAGE_MUTUAL_EVENT_SENT = 15;
// Only local
SYSTEM_MESSAGE_MUTUAL_EVENT_ACCEPTED = 16;
// Only local
SYSTEM_MESSAGE_MUTUAL_EVENT_REMOVED = 17;
BRIDGE_MESSAGE = 18;
}
}

View File

@@ -0,0 +1,435 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: command.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type RequestAddressForTransaction struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
Contract string `protobuf:"bytes,3,opt,name=contract,proto3" json:"contract,omitempty"`
ChatId string `protobuf:"bytes,4,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RequestAddressForTransaction) Reset() { *m = RequestAddressForTransaction{} }
func (m *RequestAddressForTransaction) String() string { return proto.CompactTextString(m) }
func (*RequestAddressForTransaction) ProtoMessage() {}
func (*RequestAddressForTransaction) Descriptor() ([]byte, []int) {
return fileDescriptor_213c0bb044472049, []int{0}
}
func (m *RequestAddressForTransaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RequestAddressForTransaction.Unmarshal(m, b)
}
func (m *RequestAddressForTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RequestAddressForTransaction.Marshal(b, m, deterministic)
}
func (m *RequestAddressForTransaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_RequestAddressForTransaction.Merge(m, src)
}
func (m *RequestAddressForTransaction) XXX_Size() int {
return xxx_messageInfo_RequestAddressForTransaction.Size(m)
}
func (m *RequestAddressForTransaction) XXX_DiscardUnknown() {
xxx_messageInfo_RequestAddressForTransaction.DiscardUnknown(m)
}
var xxx_messageInfo_RequestAddressForTransaction proto.InternalMessageInfo
func (m *RequestAddressForTransaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *RequestAddressForTransaction) GetValue() string {
if m != nil {
return m.Value
}
return ""
}
func (m *RequestAddressForTransaction) GetContract() string {
if m != nil {
return m.Contract
}
return ""
}
func (m *RequestAddressForTransaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
type AcceptRequestAddressForTransaction struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
Address string `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
ChatId string `protobuf:"bytes,4,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AcceptRequestAddressForTransaction) Reset() { *m = AcceptRequestAddressForTransaction{} }
func (m *AcceptRequestAddressForTransaction) String() string { return proto.CompactTextString(m) }
func (*AcceptRequestAddressForTransaction) ProtoMessage() {}
func (*AcceptRequestAddressForTransaction) Descriptor() ([]byte, []int) {
return fileDescriptor_213c0bb044472049, []int{1}
}
func (m *AcceptRequestAddressForTransaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AcceptRequestAddressForTransaction.Unmarshal(m, b)
}
func (m *AcceptRequestAddressForTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AcceptRequestAddressForTransaction.Marshal(b, m, deterministic)
}
func (m *AcceptRequestAddressForTransaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_AcceptRequestAddressForTransaction.Merge(m, src)
}
func (m *AcceptRequestAddressForTransaction) XXX_Size() int {
return xxx_messageInfo_AcceptRequestAddressForTransaction.Size(m)
}
func (m *AcceptRequestAddressForTransaction) XXX_DiscardUnknown() {
xxx_messageInfo_AcceptRequestAddressForTransaction.DiscardUnknown(m)
}
var xxx_messageInfo_AcceptRequestAddressForTransaction proto.InternalMessageInfo
func (m *AcceptRequestAddressForTransaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *AcceptRequestAddressForTransaction) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *AcceptRequestAddressForTransaction) GetAddress() string {
if m != nil {
return m.Address
}
return ""
}
func (m *AcceptRequestAddressForTransaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
type DeclineRequestAddressForTransaction struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *DeclineRequestAddressForTransaction) Reset() { *m = DeclineRequestAddressForTransaction{} }
func (m *DeclineRequestAddressForTransaction) String() string { return proto.CompactTextString(m) }
func (*DeclineRequestAddressForTransaction) ProtoMessage() {}
func (*DeclineRequestAddressForTransaction) Descriptor() ([]byte, []int) {
return fileDescriptor_213c0bb044472049, []int{2}
}
func (m *DeclineRequestAddressForTransaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeclineRequestAddressForTransaction.Unmarshal(m, b)
}
func (m *DeclineRequestAddressForTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DeclineRequestAddressForTransaction.Marshal(b, m, deterministic)
}
func (m *DeclineRequestAddressForTransaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_DeclineRequestAddressForTransaction.Merge(m, src)
}
func (m *DeclineRequestAddressForTransaction) XXX_Size() int {
return xxx_messageInfo_DeclineRequestAddressForTransaction.Size(m)
}
func (m *DeclineRequestAddressForTransaction) XXX_DiscardUnknown() {
xxx_messageInfo_DeclineRequestAddressForTransaction.DiscardUnknown(m)
}
var xxx_messageInfo_DeclineRequestAddressForTransaction proto.InternalMessageInfo
func (m *DeclineRequestAddressForTransaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *DeclineRequestAddressForTransaction) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *DeclineRequestAddressForTransaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
type DeclineRequestTransaction struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *DeclineRequestTransaction) Reset() { *m = DeclineRequestTransaction{} }
func (m *DeclineRequestTransaction) String() string { return proto.CompactTextString(m) }
func (*DeclineRequestTransaction) ProtoMessage() {}
func (*DeclineRequestTransaction) Descriptor() ([]byte, []int) {
return fileDescriptor_213c0bb044472049, []int{3}
}
func (m *DeclineRequestTransaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeclineRequestTransaction.Unmarshal(m, b)
}
func (m *DeclineRequestTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DeclineRequestTransaction.Marshal(b, m, deterministic)
}
func (m *DeclineRequestTransaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_DeclineRequestTransaction.Merge(m, src)
}
func (m *DeclineRequestTransaction) XXX_Size() int {
return xxx_messageInfo_DeclineRequestTransaction.Size(m)
}
func (m *DeclineRequestTransaction) XXX_DiscardUnknown() {
xxx_messageInfo_DeclineRequestTransaction.DiscardUnknown(m)
}
var xxx_messageInfo_DeclineRequestTransaction proto.InternalMessageInfo
func (m *DeclineRequestTransaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *DeclineRequestTransaction) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *DeclineRequestTransaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
type RequestTransaction struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
Contract string `protobuf:"bytes,4,opt,name=contract,proto3" json:"contract,omitempty"`
ChatId string `protobuf:"bytes,5,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RequestTransaction) Reset() { *m = RequestTransaction{} }
func (m *RequestTransaction) String() string { return proto.CompactTextString(m) }
func (*RequestTransaction) ProtoMessage() {}
func (*RequestTransaction) Descriptor() ([]byte, []int) {
return fileDescriptor_213c0bb044472049, []int{4}
}
func (m *RequestTransaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RequestTransaction.Unmarshal(m, b)
}
func (m *RequestTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RequestTransaction.Marshal(b, m, deterministic)
}
func (m *RequestTransaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_RequestTransaction.Merge(m, src)
}
func (m *RequestTransaction) XXX_Size() int {
return xxx_messageInfo_RequestTransaction.Size(m)
}
func (m *RequestTransaction) XXX_DiscardUnknown() {
xxx_messageInfo_RequestTransaction.DiscardUnknown(m)
}
var xxx_messageInfo_RequestTransaction proto.InternalMessageInfo
func (m *RequestTransaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *RequestTransaction) GetAddress() string {
if m != nil {
return m.Address
}
return ""
}
func (m *RequestTransaction) GetValue() string {
if m != nil {
return m.Value
}
return ""
}
func (m *RequestTransaction) GetContract() string {
if m != nil {
return m.Contract
}
return ""
}
func (m *RequestTransaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
type SendTransaction struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
TransactionHash string `protobuf:"bytes,3,opt,name=transaction_hash,json=transactionHash,proto3" json:"transaction_hash,omitempty"`
Signature []byte `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"`
ChatId string `protobuf:"bytes,5,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SendTransaction) Reset() { *m = SendTransaction{} }
func (m *SendTransaction) String() string { return proto.CompactTextString(m) }
func (*SendTransaction) ProtoMessage() {}
func (*SendTransaction) Descriptor() ([]byte, []int) {
return fileDescriptor_213c0bb044472049, []int{5}
}
func (m *SendTransaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendTransaction.Unmarshal(m, b)
}
func (m *SendTransaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SendTransaction.Marshal(b, m, deterministic)
}
func (m *SendTransaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_SendTransaction.Merge(m, src)
}
func (m *SendTransaction) XXX_Size() int {
return xxx_messageInfo_SendTransaction.Size(m)
}
func (m *SendTransaction) XXX_DiscardUnknown() {
xxx_messageInfo_SendTransaction.DiscardUnknown(m)
}
var xxx_messageInfo_SendTransaction proto.InternalMessageInfo
func (m *SendTransaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *SendTransaction) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *SendTransaction) GetTransactionHash() string {
if m != nil {
return m.TransactionHash
}
return ""
}
func (m *SendTransaction) GetSignature() []byte {
if m != nil {
return m.Signature
}
return nil
}
func (m *SendTransaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func init() {
proto.RegisterType((*RequestAddressForTransaction)(nil), "protobuf.RequestAddressForTransaction")
proto.RegisterType((*AcceptRequestAddressForTransaction)(nil), "protobuf.AcceptRequestAddressForTransaction")
proto.RegisterType((*DeclineRequestAddressForTransaction)(nil), "protobuf.DeclineRequestAddressForTransaction")
proto.RegisterType((*DeclineRequestTransaction)(nil), "protobuf.DeclineRequestTransaction")
proto.RegisterType((*RequestTransaction)(nil), "protobuf.RequestTransaction")
proto.RegisterType((*SendTransaction)(nil), "protobuf.SendTransaction")
}
func init() {
proto.RegisterFile("command.proto", fileDescriptor_213c0bb044472049)
}
var fileDescriptor_213c0bb044472049 = []byte{
// 301 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x92, 0x3d, 0x4f, 0xf3, 0x30,
0x10, 0xc7, 0x95, 0x97, 0xbe, 0xdd, 0xf3, 0x94, 0x22, 0x0b, 0x89, 0x80, 0x3a, 0x54, 0x61, 0x29,
0x4b, 0x19, 0x18, 0x99, 0x8a, 0x10, 0x82, 0x35, 0x30, 0x75, 0xa9, 0xdc, 0xb3, 0x21, 0x16, 0xa9,
0x5d, 0x6c, 0x87, 0x0d, 0xf1, 0x11, 0x98, 0xf9, 0xb6, 0xa8, 0x4e, 0xda, 0x26, 0x43, 0x24, 0x40,
0x9d, 0xec, 0xff, 0x9d, 0xee, 0xfe, 0x3f, 0xdf, 0x19, 0xfa, 0xa8, 0x96, 0x4b, 0x2a, 0xd9, 0x64,
0xa5, 0x95, 0x55, 0xa4, 0xeb, 0x8e, 0x45, 0xfe, 0x14, 0x7f, 0xc0, 0x30, 0xe1, 0xaf, 0x39, 0x37,
0x76, 0xca, 0x98, 0xe6, 0xc6, 0xdc, 0x2a, 0xfd, 0xa8, 0xa9, 0x34, 0x14, 0xad, 0x50, 0x92, 0x1c,
0x41, 0x0b, 0x33, 0x85, 0x2f, 0x91, 0x37, 0xf2, 0xc6, 0x61, 0x52, 0x88, 0x75, 0xf4, 0x8d, 0x66,
0x39, 0x8f, 0xfc, 0x91, 0x37, 0xee, 0x25, 0x85, 0x20, 0xa7, 0xd0, 0x45, 0x25, 0xad, 0xa6, 0x68,
0xa3, 0xc0, 0x25, 0xb6, 0x9a, 0x1c, 0x43, 0x07, 0x53, 0x6a, 0xe7, 0x82, 0x45, 0xa1, 0x4b, 0xb5,
0xd7, 0xf2, 0x9e, 0xc5, 0xef, 0x10, 0x4f, 0x11, 0xf9, 0xca, 0xfe, 0x01, 0xe3, 0x00, 0x7c, 0xc1,
0x4a, 0x06, 0x5f, 0x30, 0x12, 0x41, 0x87, 0x16, 0xe5, 0xa5, 0xff, 0x46, 0x36, 0xdb, 0x33, 0x38,
0xbb, 0xe1, 0x98, 0x09, 0xc9, 0xf7, 0xe0, 0x5f, 0x71, 0x09, 0x6a, 0x2e, 0x33, 0x38, 0xa9, 0xbb,
0xec, 0xb1, 0xf7, 0xa7, 0x07, 0xe4, 0xc7, 0x5d, 0x2b, 0x13, 0xf2, 0xeb, 0x13, 0xda, 0xae, 0x34,
0x68, 0x5a, 0x69, 0xd8, 0xbc, 0xd2, 0x56, 0x8d, 0xe8, 0xcb, 0x83, 0xc1, 0x03, 0x97, 0xec, 0xf7,
0x8f, 0x3c, 0x87, 0x43, 0xbb, 0x2b, 0x9a, 0xa7, 0xd4, 0xa4, 0x25, 0xcf, 0xa0, 0x12, 0xbf, 0xa3,
0x26, 0x25, 0x43, 0xe8, 0x19, 0xf1, 0x2c, 0xa9, 0xcd, 0x35, 0x77, 0x68, 0xff, 0x93, 0x5d, 0xa0,
0x91, 0xed, 0xba, 0x3f, 0xfb, 0x37, 0xb9, 0xb8, 0xda, 0x7c, 0xff, 0x45, 0xdb, 0xdd, 0x2e, 0xbf,
0x03, 0x00, 0x00, 0xff, 0xff, 0x88, 0x09, 0x02, 0x5a, 0x20, 0x03, 0x00, 0x00,
}

View File

@@ -0,0 +1,46 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message RequestAddressForTransaction {
uint64 clock = 1;
string value = 2;
string contract = 3;
string chat_id = 4;
}
message AcceptRequestAddressForTransaction {
uint64 clock = 1;
string id = 2;
string address = 3;
string chat_id = 4;
}
message DeclineRequestAddressForTransaction {
uint64 clock = 1;
string id = 2;
string chat_id = 3;
}
message DeclineRequestTransaction {
uint64 clock = 1;
string id = 2;
string chat_id = 3;
}
message RequestTransaction {
uint64 clock = 1;
string address = 2;
string value = 3;
string contract = 4;
string chat_id = 5;
}
message SendTransaction {
uint64 clock = 1;
string id = 2;
string transaction_hash = 3;
bytes signature = 4;
string chat_id = 5;
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,215 @@
syntax = "proto3";
option go_package = "./;protobuf";
import "chat_identity.proto";
import "enums.proto";
import "shard.proto";
package protobuf;
message Grant {
bytes community_id = 1;
bytes member_id = 2;
string chat_id = 3;
uint64 clock = 4;
}
message CommunityMember {
enum Roles {
reserved 2, 3;
reserved "ROLE_MANAGE_USERS", "ROLE_MODERATE_CONTENT";
ROLE_NONE = 0;
ROLE_OWNER = 1;
ROLE_ADMIN = 4;
ROLE_TOKEN_MASTER = 5;
}
repeated Roles roles = 1;
repeated RevealedAccount revealed_accounts = 2 [deprecated = true];
uint64 last_update_clock = 3;
}
message CommunityTokenMetadata {
map<uint64, string> contract_addresses = 1;
string description = 2;
string image = 3;
CommunityTokenType tokenType = 4;
string symbol = 5;
string name = 6;
uint32 decimals = 7;
}
message CommunityPermissions {
enum Access {
UNKNOWN_ACCESS = 0;
AUTO_ACCEPT = 1;
INVITATION_ONLY = 2 [deprecated = true];
MANUAL_ACCEPT = 3;
}
bool ens_only = 1;
// https://gitlab.matrix.org/matrix-org/olm/blob/master/docs/megolm.md is a candidate for the algorithm to be used in case we want to have private communityal chats, lighter than pairwise encryption using the DR, less secure, but more efficient for large number of participants
bool private = 2;
Access access = 3;
}
message TokenCriteria {
map<uint64, string> contract_addresses = 1;
CommunityTokenType type = 2;
string symbol = 3;
string name = 4;
string amount = 5;
repeated uint64 token_ids = 6;
string ens_pattern = 7;
uint64 decimals = 8;
}
message CommunityTokenPermission {
enum Type {
UNKNOWN_TOKEN_PERMISSION = 0;
BECOME_ADMIN = 1;
BECOME_MEMBER = 2;
CAN_VIEW_CHANNEL = 3;
CAN_VIEW_AND_POST_CHANNEL = 4;
BECOME_TOKEN_MASTER = 5;
BECOME_TOKEN_OWNER = 6;
}
string id = 1;
Type type = 2;
repeated TokenCriteria token_criteria = 3;
repeated string chat_ids = 4;
bool is_private = 5;
}
message CommunityDescription {
uint64 clock = 1;
map<string,CommunityMember> members = 2;
CommunityPermissions permissions = 3;
ChatIdentity identity = 5;
map<string,CommunityChat> chats = 6;
repeated string ban_list = 7;
map<string,CommunityCategory> categories = 8;
uint64 archive_magnetlink_clock = 9;
CommunityAdminSettings admin_settings = 10;
string intro_message = 11;
string outro_message = 12;
bool encrypted = 13 [deprecated=true];
repeated string tags = 14;
map<string, CommunityTokenPermission> token_permissions = 15;
repeated CommunityTokenMetadata community_tokens_metadata = 16;
uint64 active_members_count = 17;
string ID = 18;
// key is hash ratchet key_id + seq_no
map<string, bytes> privateData = 100;
}
message CommunityAdminSettings {
bool pin_message_all_members_enabled = 1;
}
message CommunityChat {
map<string,CommunityMember> members = 1;
CommunityPermissions permissions = 2;
ChatIdentity identity = 3;
string category_id = 4;
int32 position = 5;
}
message CommunityCategory {
string category_id = 1;
string name = 2;
int32 position = 3;
}
message RevealedAccount {
string address = 1;
bytes signature = 2;
repeated uint64 chain_ids = 3;
bool isAirdropAddress = 4;
}
message CommunityRequestToJoin {
uint64 clock = 1;
string ens_name = 2;
string chat_id = 3;
bytes community_id = 4;
string display_name = 5;
repeated RevealedAccount revealed_accounts = 6;
}
message CommunityEditSharedAddresses {
uint64 clock = 1;
bytes community_id = 2;
repeated RevealedAccount revealed_accounts = 3;
}
message CommunityCancelRequestToJoin {
uint64 clock = 1;
string ens_name = 2;
string chat_id = 3;
bytes community_id = 4;
string display_name = 5;
}
message CommunityUserKicked {
uint64 clock = 1;
bytes community_id = 2;
}
message CommunityRequestToJoinResponse {
uint64 clock = 1;
CommunityDescription community = 2;
bool accepted = 3;
bytes grant = 4;
bytes community_id = 5;
string magnet_uri = 6;
bytes protected_topic_private_key = 7;
Shard shard = 8;
}
message CommunityRequestToLeave {
uint64 clock = 1;
bytes community_id = 2;
}
message CommunityMessageArchiveMagnetlink {
uint64 clock = 1;
string magnet_uri = 2;
}
message WakuMessage {
bytes sig = 1;
uint64 timestamp = 2;
bytes topic = 3;
bytes payload = 4;
bytes padding = 5;
bytes hash = 6;
string thirdPartyId = 7;
}
message WakuMessageArchiveMetadata {
uint32 version = 1;
uint64 from = 2;
uint64 to = 3;
repeated bytes contentTopic = 4;
}
message WakuMessageArchive {
uint32 version = 1;
WakuMessageArchiveMetadata metadata = 2;
repeated WakuMessage messages = 3;
}
message WakuMessageArchiveIndexMetadata {
uint32 version = 1;
WakuMessageArchiveMetadata metadata = 2;
uint64 offset = 3;
uint64 size = 4;
uint64 padding = 5;
}
message WakuMessageArchiveIndex {
map<string, WakuMessageArchiveIndexMetadata> archives = 1;
}

View File

@@ -0,0 +1,163 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: community_privileged_user_sync_message.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type CommunityPrivilegedUserSyncMessage_EventType int32
const (
CommunityPrivilegedUserSyncMessage_UNKNOWN CommunityPrivilegedUserSyncMessage_EventType = 0
CommunityPrivilegedUserSyncMessage_CONTROL_NODE_ACCEPT_REQUEST_TO_JOIN CommunityPrivilegedUserSyncMessage_EventType = 1
CommunityPrivilegedUserSyncMessage_CONTROL_NODE_REJECT_REQUEST_TO_JOIN CommunityPrivilegedUserSyncMessage_EventType = 2
CommunityPrivilegedUserSyncMessage_CONTROL_NODE_ALL_SYNC_REQUESTS_TO_JOIN CommunityPrivilegedUserSyncMessage_EventType = 3
)
var CommunityPrivilegedUserSyncMessage_EventType_name = map[int32]string{
0: "UNKNOWN",
1: "CONTROL_NODE_ACCEPT_REQUEST_TO_JOIN",
2: "CONTROL_NODE_REJECT_REQUEST_TO_JOIN",
3: "CONTROL_NODE_ALL_SYNC_REQUESTS_TO_JOIN",
}
var CommunityPrivilegedUserSyncMessage_EventType_value = map[string]int32{
"UNKNOWN": 0,
"CONTROL_NODE_ACCEPT_REQUEST_TO_JOIN": 1,
"CONTROL_NODE_REJECT_REQUEST_TO_JOIN": 2,
"CONTROL_NODE_ALL_SYNC_REQUESTS_TO_JOIN": 3,
}
func (x CommunityPrivilegedUserSyncMessage_EventType) String() string {
return proto.EnumName(CommunityPrivilegedUserSyncMessage_EventType_name, int32(x))
}
func (CommunityPrivilegedUserSyncMessage_EventType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_158595055b4cfee2, []int{0, 0}
}
type CommunityPrivilegedUserSyncMessage struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Type CommunityPrivilegedUserSyncMessage_EventType `protobuf:"varint,2,opt,name=type,proto3,enum=protobuf.CommunityPrivilegedUserSyncMessage_EventType" json:"type,omitempty"`
CommunityId []byte `protobuf:"bytes,3,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
RequestToJoin map[string]*CommunityRequestToJoin `protobuf:"bytes,4,rep,name=request_to_join,json=requestToJoin,proto3" json:"request_to_join,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
SyncRequestsToJoin []*SyncCommunityRequestsToJoin `protobuf:"bytes,5,rep,name=sync_requests_to_join,json=syncRequestsToJoin,proto3" json:"sync_requests_to_join,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityPrivilegedUserSyncMessage) Reset() { *m = CommunityPrivilegedUserSyncMessage{} }
func (m *CommunityPrivilegedUserSyncMessage) String() string { return proto.CompactTextString(m) }
func (*CommunityPrivilegedUserSyncMessage) ProtoMessage() {}
func (*CommunityPrivilegedUserSyncMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_158595055b4cfee2, []int{0}
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Unmarshal(m, b)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Marshal(b, m, deterministic)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Merge(m, src)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_Size() int {
return xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Size(m)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityPrivilegedUserSyncMessage.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityPrivilegedUserSyncMessage proto.InternalMessageInfo
func (m *CommunityPrivilegedUserSyncMessage) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *CommunityPrivilegedUserSyncMessage) GetType() CommunityPrivilegedUserSyncMessage_EventType {
if m != nil {
return m.Type
}
return CommunityPrivilegedUserSyncMessage_UNKNOWN
}
func (m *CommunityPrivilegedUserSyncMessage) GetCommunityId() []byte {
if m != nil {
return m.CommunityId
}
return nil
}
func (m *CommunityPrivilegedUserSyncMessage) GetRequestToJoin() map[string]*CommunityRequestToJoin {
if m != nil {
return m.RequestToJoin
}
return nil
}
func (m *CommunityPrivilegedUserSyncMessage) GetSyncRequestsToJoin() []*SyncCommunityRequestsToJoin {
if m != nil {
return m.SyncRequestsToJoin
}
return nil
}
func init() {
proto.RegisterEnum("protobuf.CommunityPrivilegedUserSyncMessage_EventType", CommunityPrivilegedUserSyncMessage_EventType_name, CommunityPrivilegedUserSyncMessage_EventType_value)
proto.RegisterType((*CommunityPrivilegedUserSyncMessage)(nil), "protobuf.CommunityPrivilegedUserSyncMessage")
proto.RegisterMapType((map[string]*CommunityRequestToJoin)(nil), "protobuf.CommunityPrivilegedUserSyncMessage.RequestToJoinEntry")
}
func init() {
proto.RegisterFile("community_privileged_user_sync_message.proto", fileDescriptor_158595055b4cfee2)
}
var fileDescriptor_158595055b4cfee2 = []byte{
// 407 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x90, 0x5f, 0xab, 0xd3, 0x30,
0x18, 0xc6, 0xed, 0xda, 0xa9, 0x27, 0x3d, 0xd3, 0x19, 0x14, 0xca, 0xae, 0xea, 0x44, 0x2d, 0x22,
0x15, 0x26, 0x1c, 0x44, 0x2f, 0x44, 0x6b, 0x2e, 0x4e, 0x9d, 0xed, 0x31, 0xed, 0xf0, 0xcf, 0x4d,
0xd8, 0xba, 0x58, 0xe2, 0xb6, 0xa4, 0x26, 0xed, 0xa0, 0x5f, 0xc4, 0xef, 0xe8, 0xb7, 0x90, 0x35,
0x6b, 0xe7, 0x98, 0x20, 0x5e, 0xf5, 0x7d, 0x9f, 0x3e, 0xf9, 0x3d, 0xbc, 0x0f, 0x78, 0x9a, 0x89,
0xcd, 0xa6, 0xe2, 0xac, 0xac, 0x49, 0x21, 0xd9, 0x96, 0xad, 0x69, 0x4e, 0x97, 0xa4, 0x52, 0x54,
0x12, 0x55, 0xf3, 0x8c, 0x6c, 0xa8, 0x52, 0xf3, 0x9c, 0xfa, 0x85, 0x14, 0xa5, 0x80, 0x37, 0x9b,
0xcf, 0xa2, 0xfa, 0x36, 0xba, 0xd3, 0xbe, 0x63, 0x54, 0xe9, 0x9f, 0xa3, 0x41, 0x31, 0x67, 0x92,
0xf1, 0x5c, 0xaf, 0xe3, 0x5f, 0x16, 0x18, 0x07, 0x2d, 0xfc, 0xaa, 0x63, 0xcf, 0x14, 0x95, 0x49,
0xcd, 0xb3, 0x0f, 0x1a, 0x0c, 0xef, 0x82, 0x7e, 0xb6, 0x16, 0xd9, 0xca, 0x31, 0x5c, 0xc3, 0xb3,
0xb0, 0x5e, 0x60, 0x08, 0xac, 0xb2, 0x2e, 0xa8, 0xd3, 0x73, 0x0d, 0xef, 0xd6, 0xe4, 0xc2, 0x6f,
0x73, 0xfd, 0x7f, 0x13, 0x7d, 0xb4, 0xa5, 0xbc, 0x4c, 0xeb, 0x82, 0xe2, 0x86, 0x01, 0xef, 0x83,
0xf3, 0xc3, 0x91, 0x6c, 0xe9, 0x98, 0xae, 0xe1, 0x9d, 0x63, 0xbb, 0xd3, 0x2e, 0x97, 0x30, 0x07,
0xb7, 0x25, 0xfd, 0x51, 0x51, 0x55, 0x92, 0x52, 0x90, 0xef, 0x82, 0x71, 0xc7, 0x72, 0x4d, 0xcf,
0x9e, 0xbc, 0xfe, 0xaf, 0x64, 0xac, 0x19, 0xa9, 0x08, 0x05, 0xe3, 0x88, 0x97, 0xb2, 0xc6, 0x03,
0xf9, 0xa7, 0x06, 0x3f, 0x83, 0x7b, 0x4d, 0xad, 0x7b, 0x55, 0x75, 0x71, 0xfd, 0x26, 0xee, 0xe1,
0x21, 0x6e, 0xc7, 0xed, 0x22, 0xf7, 0x60, 0xa5, 0x29, 0x18, 0xee, 0x18, 0xc7, 0xda, 0x68, 0x01,
0xe0, 0x69, 0x3c, 0x1c, 0x02, 0x73, 0x45, 0xeb, 0xa6, 0xdb, 0x33, 0xbc, 0x1b, 0xe1, 0x05, 0xe8,
0x6f, 0xe7, 0xeb, 0x4a, 0x57, 0x6b, 0x4f, 0xdc, 0xbf, 0x1c, 0x78, 0xc4, 0xc1, 0xda, 0xfe, 0xb2,
0xf7, 0xc2, 0x18, 0xff, 0x34, 0xc0, 0x59, 0xd7, 0x2e, 0xb4, 0xc1, 0x8d, 0x59, 0xf4, 0x3e, 0x8a,
0x3f, 0x45, 0xc3, 0x6b, 0xf0, 0x31, 0x78, 0x10, 0xc4, 0x51, 0x8a, 0xe3, 0x29, 0x89, 0xe2, 0x77,
0x88, 0xbc, 0x09, 0x02, 0x74, 0x95, 0x12, 0x8c, 0x3e, 0xce, 0x50, 0x92, 0x92, 0x34, 0x26, 0x61,
0x7c, 0x19, 0x0d, 0x8d, 0x13, 0x23, 0x46, 0x21, 0x0a, 0x4e, 0x8d, 0x3d, 0xf8, 0x04, 0x3c, 0x3a,
0x26, 0x4e, 0xa7, 0x24, 0xf9, 0x12, 0x05, 0xad, 0x35, 0xe9, 0xbc, 0xe6, 0xdb, 0xc1, 0x57, 0xdb,
0x7f, 0xf6, 0xaa, 0xbd, 0x64, 0x71, 0xbd, 0x99, 0x9e, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x83,
0x24, 0x18, 0xbe, 0xdd, 0x02, 0x00, 0x00,
}

View File

@@ -0,0 +1,22 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "communities.proto";
import "pairing.proto";
message CommunityPrivilegedUserSyncMessage {
uint64 clock = 1;
EventType type = 2;
bytes community_id = 3;
map<string,CommunityRequestToJoin> request_to_join = 4;
repeated SyncCommunityRequestsToJoin sync_requests_to_join = 5;
enum EventType {
UNKNOWN = 0;
CONTROL_NODE_ACCEPT_REQUEST_TO_JOIN = 1;
CONTROL_NODE_REJECT_REQUEST_TO_JOIN = 2;
CONTROL_NODE_ALL_SYNC_REQUESTS_TO_JOIN = 3;
}
}

View File

@@ -0,0 +1,107 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: community_shard_key.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type CommunityShardKey struct {
CommunityId []byte `protobuf:"bytes,1,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
PrivateKey []byte `protobuf:"bytes,2,opt,name=private_key,json=privateKey,proto3" json:"private_key,omitempty"`
Clock uint64 `protobuf:"varint,3,opt,name=clock,proto3" json:"clock,omitempty"`
Shard *Shard `protobuf:"bytes,4,opt,name=shard,proto3" json:"shard,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityShardKey) Reset() { *m = CommunityShardKey{} }
func (m *CommunityShardKey) String() string { return proto.CompactTextString(m) }
func (*CommunityShardKey) ProtoMessage() {}
func (*CommunityShardKey) Descriptor() ([]byte, []int) {
return fileDescriptor_03da8310cde9b7b2, []int{0}
}
func (m *CommunityShardKey) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityShardKey.Unmarshal(m, b)
}
func (m *CommunityShardKey) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityShardKey.Marshal(b, m, deterministic)
}
func (m *CommunityShardKey) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityShardKey.Merge(m, src)
}
func (m *CommunityShardKey) XXX_Size() int {
return xxx_messageInfo_CommunityShardKey.Size(m)
}
func (m *CommunityShardKey) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityShardKey.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityShardKey proto.InternalMessageInfo
func (m *CommunityShardKey) GetCommunityId() []byte {
if m != nil {
return m.CommunityId
}
return nil
}
func (m *CommunityShardKey) GetPrivateKey() []byte {
if m != nil {
return m.PrivateKey
}
return nil
}
func (m *CommunityShardKey) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *CommunityShardKey) GetShard() *Shard {
if m != nil {
return m.Shard
}
return nil
}
func init() {
proto.RegisterType((*CommunityShardKey)(nil), "protobuf.CommunityShardKey")
}
func init() {
proto.RegisterFile("community_shard_key.proto", fileDescriptor_03da8310cde9b7b2)
}
var fileDescriptor_03da8310cde9b7b2 = []byte{
// 173 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x4c, 0xce, 0xcf, 0xcd,
0x2d, 0xcd, 0xcb, 0x2c, 0xa9, 0x8c, 0x2f, 0xce, 0x48, 0x2c, 0x4a, 0x89, 0xcf, 0x4e, 0xad, 0xd4,
0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x00, 0x53, 0x49, 0xa5, 0x69, 0x52, 0xdc, 0x60, 0x29,
0x88, 0xb0, 0xd2, 0x14, 0x46, 0x2e, 0x41, 0x67, 0x98, 0xa6, 0x60, 0x90, 0x84, 0x77, 0x6a, 0xa5,
0x90, 0x22, 0x17, 0x0f, 0xc2, 0xa4, 0xcc, 0x14, 0x09, 0x46, 0x05, 0x46, 0x0d, 0x9e, 0x20, 0x6e,
0xb8, 0x98, 0x67, 0x8a, 0x90, 0x3c, 0x17, 0x77, 0x41, 0x51, 0x66, 0x59, 0x62, 0x49, 0x2a, 0xc8,
0x12, 0x09, 0x26, 0xb0, 0x0a, 0x2e, 0xa8, 0x10, 0xc8, 0x0c, 0x11, 0x2e, 0xd6, 0xe4, 0x9c, 0xfc,
0xe4, 0x6c, 0x09, 0x66, 0x05, 0x46, 0x0d, 0x96, 0x20, 0x08, 0x47, 0x48, 0x95, 0x8b, 0x15, 0x6c,
0xbd, 0x04, 0x8b, 0x02, 0xa3, 0x06, 0xb7, 0x11, 0xbf, 0x1e, 0xcc, 0x59, 0x7a, 0x60, 0xcb, 0x83,
0x20, 0xb2, 0x4e, 0xbc, 0x51, 0xdc, 0x7a, 0xfa, 0xd6, 0x30, 0xb9, 0x24, 0x36, 0x30, 0xcb, 0x18,
0x10, 0x00, 0x00, 0xff, 0xff, 0x7e, 0xda, 0x17, 0x6d, 0xe0, 0x00, 0x00, 0x00,
}

View File

@@ -0,0 +1,14 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "shard.proto";
message CommunityShardKey {
bytes community_id = 1;
bytes private_key = 2;
uint64 clock = 3;
Shard shard = 4;
}

View File

@@ -0,0 +1,667 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: community_update.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type CommunityEvent_EventType int32
const (
CommunityEvent_UNKNOWN CommunityEvent_EventType = 0
CommunityEvent_COMMUNITY_EDIT CommunityEvent_EventType = 1
CommunityEvent_COMMUNITY_MEMBER_TOKEN_PERMISSION_CHANGE CommunityEvent_EventType = 2
CommunityEvent_COMMUNITY_MEMBER_TOKEN_PERMISSION_DELETE CommunityEvent_EventType = 3
CommunityEvent_COMMUNITY_CATEGORY_CREATE CommunityEvent_EventType = 4
CommunityEvent_COMMUNITY_CATEGORY_DELETE CommunityEvent_EventType = 5
CommunityEvent_COMMUNITY_CATEGORY_EDIT CommunityEvent_EventType = 6
CommunityEvent_COMMUNITY_CHANNEL_CREATE CommunityEvent_EventType = 7
CommunityEvent_COMMUNITY_CHANNEL_DELETE CommunityEvent_EventType = 8
CommunityEvent_COMMUNITY_CHANNEL_EDIT CommunityEvent_EventType = 9
CommunityEvent_COMMUNITY_CATEGORY_REORDER CommunityEvent_EventType = 10
CommunityEvent_COMMUNITY_CHANNEL_REORDER CommunityEvent_EventType = 11
CommunityEvent_COMMUNITY_REQUEST_TO_JOIN_ACCEPT CommunityEvent_EventType = 12
CommunityEvent_COMMUNITY_REQUEST_TO_JOIN_REJECT CommunityEvent_EventType = 13
CommunityEvent_COMMUNITY_MEMBER_KICK CommunityEvent_EventType = 14
CommunityEvent_COMMUNITY_MEMBER_BAN CommunityEvent_EventType = 15
CommunityEvent_COMMUNITY_MEMBER_UNBAN CommunityEvent_EventType = 16
CommunityEvent_COMMUNITY_TOKEN_ADD CommunityEvent_EventType = 17
)
var CommunityEvent_EventType_name = map[int32]string{
0: "UNKNOWN",
1: "COMMUNITY_EDIT",
2: "COMMUNITY_MEMBER_TOKEN_PERMISSION_CHANGE",
3: "COMMUNITY_MEMBER_TOKEN_PERMISSION_DELETE",
4: "COMMUNITY_CATEGORY_CREATE",
5: "COMMUNITY_CATEGORY_DELETE",
6: "COMMUNITY_CATEGORY_EDIT",
7: "COMMUNITY_CHANNEL_CREATE",
8: "COMMUNITY_CHANNEL_DELETE",
9: "COMMUNITY_CHANNEL_EDIT",
10: "COMMUNITY_CATEGORY_REORDER",
11: "COMMUNITY_CHANNEL_REORDER",
12: "COMMUNITY_REQUEST_TO_JOIN_ACCEPT",
13: "COMMUNITY_REQUEST_TO_JOIN_REJECT",
14: "COMMUNITY_MEMBER_KICK",
15: "COMMUNITY_MEMBER_BAN",
16: "COMMUNITY_MEMBER_UNBAN",
17: "COMMUNITY_TOKEN_ADD",
}
var CommunityEvent_EventType_value = map[string]int32{
"UNKNOWN": 0,
"COMMUNITY_EDIT": 1,
"COMMUNITY_MEMBER_TOKEN_PERMISSION_CHANGE": 2,
"COMMUNITY_MEMBER_TOKEN_PERMISSION_DELETE": 3,
"COMMUNITY_CATEGORY_CREATE": 4,
"COMMUNITY_CATEGORY_DELETE": 5,
"COMMUNITY_CATEGORY_EDIT": 6,
"COMMUNITY_CHANNEL_CREATE": 7,
"COMMUNITY_CHANNEL_DELETE": 8,
"COMMUNITY_CHANNEL_EDIT": 9,
"COMMUNITY_CATEGORY_REORDER": 10,
"COMMUNITY_CHANNEL_REORDER": 11,
"COMMUNITY_REQUEST_TO_JOIN_ACCEPT": 12,
"COMMUNITY_REQUEST_TO_JOIN_REJECT": 13,
"COMMUNITY_MEMBER_KICK": 14,
"COMMUNITY_MEMBER_BAN": 15,
"COMMUNITY_MEMBER_UNBAN": 16,
"COMMUNITY_TOKEN_ADD": 17,
}
func (x CommunityEvent_EventType) String() string {
return proto.EnumName(CommunityEvent_EventType_name, int32(x))
}
func (CommunityEvent_EventType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{0, 0}
}
type CommunityEvent struct {
CommunityEventClock uint64 `protobuf:"varint,1,opt,name=community_event_clock,json=communityEventClock,proto3" json:"community_event_clock,omitempty"`
Type CommunityEvent_EventType `protobuf:"varint,2,opt,name=type,proto3,enum=protobuf.CommunityEvent_EventType" json:"type,omitempty"`
CommunityConfig *CommunityConfig `protobuf:"bytes,3,opt,name=community_config,json=communityConfig,proto3" json:"community_config,omitempty"`
TokenPermission *CommunityTokenPermission `protobuf:"bytes,4,opt,name=token_permission,json=tokenPermission,proto3" json:"token_permission,omitempty"`
CategoryData *CategoryData `protobuf:"bytes,5,opt,name=category_data,json=categoryData,proto3" json:"category_data,omitempty"`
ChannelData *ChannelData `protobuf:"bytes,6,opt,name=channel_data,json=channelData,proto3" json:"channel_data,omitempty"`
MemberToAction string `protobuf:"bytes,7,opt,name=member_to_action,json=memberToAction,proto3" json:"member_to_action,omitempty"`
MembersAdded map[string]*CommunityMember `protobuf:"bytes,8,rep,name=membersAdded,proto3" json:"membersAdded,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
RejectedRequestsToJoin map[string]*CommunityRequestToJoin `protobuf:"bytes,9,rep,name=rejectedRequestsToJoin,proto3" json:"rejectedRequestsToJoin,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
AcceptedRequestsToJoin map[string]*CommunityRequestToJoin `protobuf:"bytes,10,rep,name=acceptedRequestsToJoin,proto3" json:"acceptedRequestsToJoin,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
TokenMetadata *CommunityTokenMetadata `protobuf:"bytes,11,opt,name=token_metadata,json=tokenMetadata,proto3" json:"token_metadata,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityEvent) Reset() { *m = CommunityEvent{} }
func (m *CommunityEvent) String() string { return proto.CompactTextString(m) }
func (*CommunityEvent) ProtoMessage() {}
func (*CommunityEvent) Descriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{0}
}
func (m *CommunityEvent) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityEvent.Unmarshal(m, b)
}
func (m *CommunityEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityEvent.Marshal(b, m, deterministic)
}
func (m *CommunityEvent) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityEvent.Merge(m, src)
}
func (m *CommunityEvent) XXX_Size() int {
return xxx_messageInfo_CommunityEvent.Size(m)
}
func (m *CommunityEvent) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityEvent.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityEvent proto.InternalMessageInfo
func (m *CommunityEvent) GetCommunityEventClock() uint64 {
if m != nil {
return m.CommunityEventClock
}
return 0
}
func (m *CommunityEvent) GetType() CommunityEvent_EventType {
if m != nil {
return m.Type
}
return CommunityEvent_UNKNOWN
}
func (m *CommunityEvent) GetCommunityConfig() *CommunityConfig {
if m != nil {
return m.CommunityConfig
}
return nil
}
func (m *CommunityEvent) GetTokenPermission() *CommunityTokenPermission {
if m != nil {
return m.TokenPermission
}
return nil
}
func (m *CommunityEvent) GetCategoryData() *CategoryData {
if m != nil {
return m.CategoryData
}
return nil
}
func (m *CommunityEvent) GetChannelData() *ChannelData {
if m != nil {
return m.ChannelData
}
return nil
}
func (m *CommunityEvent) GetMemberToAction() string {
if m != nil {
return m.MemberToAction
}
return ""
}
func (m *CommunityEvent) GetMembersAdded() map[string]*CommunityMember {
if m != nil {
return m.MembersAdded
}
return nil
}
func (m *CommunityEvent) GetRejectedRequestsToJoin() map[string]*CommunityRequestToJoin {
if m != nil {
return m.RejectedRequestsToJoin
}
return nil
}
func (m *CommunityEvent) GetAcceptedRequestsToJoin() map[string]*CommunityRequestToJoin {
if m != nil {
return m.AcceptedRequestsToJoin
}
return nil
}
func (m *CommunityEvent) GetTokenMetadata() *CommunityTokenMetadata {
if m != nil {
return m.TokenMetadata
}
return nil
}
type CommunityConfig struct {
Identity *ChatIdentity `protobuf:"bytes,1,opt,name=identity,proto3" json:"identity,omitempty"`
Permissions *CommunityPermissions `protobuf:"bytes,2,opt,name=permissions,proto3" json:"permissions,omitempty"`
AdminSettings *CommunityAdminSettings `protobuf:"bytes,3,opt,name=admin_settings,json=adminSettings,proto3" json:"admin_settings,omitempty"`
IntroMessage string `protobuf:"bytes,4,opt,name=intro_message,json=introMessage,proto3" json:"intro_message,omitempty"`
OutroMessage string `protobuf:"bytes,5,opt,name=outro_message,json=outroMessage,proto3" json:"outro_message,omitempty"`
Tags []string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityConfig) Reset() { *m = CommunityConfig{} }
func (m *CommunityConfig) String() string { return proto.CompactTextString(m) }
func (*CommunityConfig) ProtoMessage() {}
func (*CommunityConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{1}
}
func (m *CommunityConfig) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityConfig.Unmarshal(m, b)
}
func (m *CommunityConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityConfig.Marshal(b, m, deterministic)
}
func (m *CommunityConfig) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityConfig.Merge(m, src)
}
func (m *CommunityConfig) XXX_Size() int {
return xxx_messageInfo_CommunityConfig.Size(m)
}
func (m *CommunityConfig) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityConfig.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityConfig proto.InternalMessageInfo
func (m *CommunityConfig) GetIdentity() *ChatIdentity {
if m != nil {
return m.Identity
}
return nil
}
func (m *CommunityConfig) GetPermissions() *CommunityPermissions {
if m != nil {
return m.Permissions
}
return nil
}
func (m *CommunityConfig) GetAdminSettings() *CommunityAdminSettings {
if m != nil {
return m.AdminSettings
}
return nil
}
func (m *CommunityConfig) GetIntroMessage() string {
if m != nil {
return m.IntroMessage
}
return ""
}
func (m *CommunityConfig) GetOutroMessage() string {
if m != nil {
return m.OutroMessage
}
return ""
}
func (m *CommunityConfig) GetTags() []string {
if m != nil {
return m.Tags
}
return nil
}
type CategoryData struct {
CategoryId string `protobuf:"bytes,1,opt,name=category_id,json=categoryId,proto3" json:"category_id,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
ChannelsIds []string `protobuf:"bytes,3,rep,name=channels_ids,json=channelsIds,proto3" json:"channels_ids,omitempty"`
Position int32 `protobuf:"varint,4,opt,name=position,proto3" json:"position,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CategoryData) Reset() { *m = CategoryData{} }
func (m *CategoryData) String() string { return proto.CompactTextString(m) }
func (*CategoryData) ProtoMessage() {}
func (*CategoryData) Descriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{2}
}
func (m *CategoryData) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CategoryData.Unmarshal(m, b)
}
func (m *CategoryData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CategoryData.Marshal(b, m, deterministic)
}
func (m *CategoryData) XXX_Merge(src proto.Message) {
xxx_messageInfo_CategoryData.Merge(m, src)
}
func (m *CategoryData) XXX_Size() int {
return xxx_messageInfo_CategoryData.Size(m)
}
func (m *CategoryData) XXX_DiscardUnknown() {
xxx_messageInfo_CategoryData.DiscardUnknown(m)
}
var xxx_messageInfo_CategoryData proto.InternalMessageInfo
func (m *CategoryData) GetCategoryId() string {
if m != nil {
return m.CategoryId
}
return ""
}
func (m *CategoryData) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *CategoryData) GetChannelsIds() []string {
if m != nil {
return m.ChannelsIds
}
return nil
}
func (m *CategoryData) GetPosition() int32 {
if m != nil {
return m.Position
}
return 0
}
type ChannelData struct {
CategoryId string `protobuf:"bytes,1,opt,name=category_id,json=categoryId,proto3" json:"category_id,omitempty"`
ChannelId string `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
Position int32 `protobuf:"varint,3,opt,name=position,proto3" json:"position,omitempty"`
Channel *CommunityChat `protobuf:"bytes,4,opt,name=channel,proto3" json:"channel,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ChannelData) Reset() { *m = ChannelData{} }
func (m *ChannelData) String() string { return proto.CompactTextString(m) }
func (*ChannelData) ProtoMessage() {}
func (*ChannelData) Descriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{3}
}
func (m *ChannelData) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChannelData.Unmarshal(m, b)
}
func (m *ChannelData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ChannelData.Marshal(b, m, deterministic)
}
func (m *ChannelData) XXX_Merge(src proto.Message) {
xxx_messageInfo_ChannelData.Merge(m, src)
}
func (m *ChannelData) XXX_Size() int {
return xxx_messageInfo_ChannelData.Size(m)
}
func (m *ChannelData) XXX_DiscardUnknown() {
xxx_messageInfo_ChannelData.DiscardUnknown(m)
}
var xxx_messageInfo_ChannelData proto.InternalMessageInfo
func (m *ChannelData) GetCategoryId() string {
if m != nil {
return m.CategoryId
}
return ""
}
func (m *ChannelData) GetChannelId() string {
if m != nil {
return m.ChannelId
}
return ""
}
func (m *ChannelData) GetPosition() int32 {
if m != nil {
return m.Position
}
return 0
}
func (m *ChannelData) GetChannel() *CommunityChat {
if m != nil {
return m.Channel
}
return nil
}
type SignedCommunityEvent struct {
// Signature of the payload field
Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
// Marshaled CommunityEvent
Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SignedCommunityEvent) Reset() { *m = SignedCommunityEvent{} }
func (m *SignedCommunityEvent) String() string { return proto.CompactTextString(m) }
func (*SignedCommunityEvent) ProtoMessage() {}
func (*SignedCommunityEvent) Descriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{4}
}
func (m *SignedCommunityEvent) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignedCommunityEvent.Unmarshal(m, b)
}
func (m *SignedCommunityEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SignedCommunityEvent.Marshal(b, m, deterministic)
}
func (m *SignedCommunityEvent) XXX_Merge(src proto.Message) {
xxx_messageInfo_SignedCommunityEvent.Merge(m, src)
}
func (m *SignedCommunityEvent) XXX_Size() int {
return xxx_messageInfo_SignedCommunityEvent.Size(m)
}
func (m *SignedCommunityEvent) XXX_DiscardUnknown() {
xxx_messageInfo_SignedCommunityEvent.DiscardUnknown(m)
}
var xxx_messageInfo_SignedCommunityEvent proto.InternalMessageInfo
func (m *SignedCommunityEvent) GetSignature() []byte {
if m != nil {
return m.Signature
}
return nil
}
func (m *SignedCommunityEvent) GetPayload() []byte {
if m != nil {
return m.Payload
}
return nil
}
// CommunityEventsMessage is a message used to propagate information
// about community changes.
type CommunityEventsMessage struct {
CommunityId []byte `protobuf:"bytes,1,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
// Events base CommunityDescription with owner signature on top of which events were generated
EventsBaseCommunityDescription []byte `protobuf:"bytes,2,opt,name=events_base_community_description,json=eventsBaseCommunityDescription,proto3" json:"events_base_community_description,omitempty"`
// A list of admins events for the channel in bytes
// Deprecated: use signed_events instead.
Events [][]byte `protobuf:"bytes,3,rep,name=events,proto3" json:"events,omitempty"` // Deprecated: Do not use.
// A list of signed community events
SignedEvents []*SignedCommunityEvent `protobuf:"bytes,4,rep,name=signed_events,json=signedEvents,proto3" json:"signed_events,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityEventsMessage) Reset() { *m = CommunityEventsMessage{} }
func (m *CommunityEventsMessage) String() string { return proto.CompactTextString(m) }
func (*CommunityEventsMessage) ProtoMessage() {}
func (*CommunityEventsMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{5}
}
func (m *CommunityEventsMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityEventsMessage.Unmarshal(m, b)
}
func (m *CommunityEventsMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityEventsMessage.Marshal(b, m, deterministic)
}
func (m *CommunityEventsMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityEventsMessage.Merge(m, src)
}
func (m *CommunityEventsMessage) XXX_Size() int {
return xxx_messageInfo_CommunityEventsMessage.Size(m)
}
func (m *CommunityEventsMessage) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityEventsMessage.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityEventsMessage proto.InternalMessageInfo
func (m *CommunityEventsMessage) GetCommunityId() []byte {
if m != nil {
return m.CommunityId
}
return nil
}
func (m *CommunityEventsMessage) GetEventsBaseCommunityDescription() []byte {
if m != nil {
return m.EventsBaseCommunityDescription
}
return nil
}
// Deprecated: Do not use.
func (m *CommunityEventsMessage) GetEvents() [][]byte {
if m != nil {
return m.Events
}
return nil
}
func (m *CommunityEventsMessage) GetSignedEvents() []*SignedCommunityEvent {
if m != nil {
return m.SignedEvents
}
return nil
}
type CommunityEventsMessageRejected struct {
Msg *CommunityEventsMessage `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityEventsMessageRejected) Reset() { *m = CommunityEventsMessageRejected{} }
func (m *CommunityEventsMessageRejected) String() string { return proto.CompactTextString(m) }
func (*CommunityEventsMessageRejected) ProtoMessage() {}
func (*CommunityEventsMessageRejected) Descriptor() ([]byte, []int) {
return fileDescriptor_52ed23dfc73918ab, []int{6}
}
func (m *CommunityEventsMessageRejected) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityEventsMessageRejected.Unmarshal(m, b)
}
func (m *CommunityEventsMessageRejected) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityEventsMessageRejected.Marshal(b, m, deterministic)
}
func (m *CommunityEventsMessageRejected) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityEventsMessageRejected.Merge(m, src)
}
func (m *CommunityEventsMessageRejected) XXX_Size() int {
return xxx_messageInfo_CommunityEventsMessageRejected.Size(m)
}
func (m *CommunityEventsMessageRejected) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityEventsMessageRejected.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityEventsMessageRejected proto.InternalMessageInfo
func (m *CommunityEventsMessageRejected) GetMsg() *CommunityEventsMessage {
if m != nil {
return m.Msg
}
return nil
}
func init() {
proto.RegisterEnum("protobuf.CommunityEvent_EventType", CommunityEvent_EventType_name, CommunityEvent_EventType_value)
proto.RegisterType((*CommunityEvent)(nil), "protobuf.CommunityEvent")
proto.RegisterMapType((map[string]*CommunityRequestToJoin)(nil), "protobuf.CommunityEvent.AcceptedRequestsToJoinEntry")
proto.RegisterMapType((map[string]*CommunityMember)(nil), "protobuf.CommunityEvent.MembersAddedEntry")
proto.RegisterMapType((map[string]*CommunityRequestToJoin)(nil), "protobuf.CommunityEvent.RejectedRequestsToJoinEntry")
proto.RegisterType((*CommunityConfig)(nil), "protobuf.CommunityConfig")
proto.RegisterType((*CategoryData)(nil), "protobuf.CategoryData")
proto.RegisterType((*ChannelData)(nil), "protobuf.ChannelData")
proto.RegisterType((*SignedCommunityEvent)(nil), "protobuf.SignedCommunityEvent")
proto.RegisterType((*CommunityEventsMessage)(nil), "protobuf.CommunityEventsMessage")
proto.RegisterType((*CommunityEventsMessageRejected)(nil), "protobuf.CommunityEventsMessageRejected")
}
func init() {
proto.RegisterFile("community_update.proto", fileDescriptor_52ed23dfc73918ab)
}
var fileDescriptor_52ed23dfc73918ab = []byte{
// 1095 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xcb, 0x6e, 0xdb, 0x46,
0x14, 0xad, 0x2c, 0xf9, 0xa1, 0xab, 0x87, 0xe9, 0x71, 0x6c, 0xd3, 0x4a, 0xe2, 0x2a, 0x6a, 0x17,
0x42, 0x51, 0x38, 0xa8, 0x5a, 0x04, 0x41, 0xb3, 0xa9, 0x4c, 0x0d, 0x1c, 0xda, 0x11, 0xe5, 0x8e,
0x69, 0x14, 0xc9, 0x86, 0x18, 0x93, 0x13, 0x99, 0xb5, 0x45, 0xaa, 0x9a, 0x51, 0x00, 0x6d, 0xfb,
0x05, 0xfd, 0x80, 0x7e, 0x43, 0xd1, 0xbf, 0xea, 0x6f, 0x14, 0x9c, 0x21, 0x45, 0xd2, 0xa6, 0x9c,
0x2e, 0xba, 0x91, 0x38, 0xf7, 0x9c, 0x7b, 0xce, 0xdc, 0x79, 0xf0, 0x12, 0xf6, 0xdd, 0x70, 0x32,
0x99, 0x07, 0xbe, 0x58, 0x38, 0xf3, 0xa9, 0x47, 0x05, 0x3b, 0x9e, 0xce, 0x42, 0x11, 0xa2, 0x2d,
0xf9, 0x77, 0x3d, 0xff, 0xd8, 0xda, 0x75, 0x6f, 0xa8, 0x70, 0x7c, 0x8f, 0x05, 0xc2, 0x17, 0x0b,
0x05, 0xb7, 0x76, 0x92, 0x34, 0x9f, 0x71, 0x15, 0xea, 0xfc, 0xd1, 0x80, 0xa6, 0x91, 0x88, 0xe1,
0x4f, 0x2c, 0x10, 0xa8, 0x07, 0x7b, 0xa9, 0x3c, 0x8b, 0x42, 0x8e, 0x7b, 0x17, 0xba, 0xb7, 0x7a,
0xa9, 0x5d, 0xea, 0x56, 0xc8, 0xae, 0x9b, 0xa3, 0x1b, 0x11, 0x84, 0x5e, 0x41, 0x45, 0x2c, 0xa6,
0x4c, 0x5f, 0x6b, 0x97, 0xba, 0xcd, 0x5e, 0xe7, 0x38, 0x99, 0xc7, 0x71, 0x5e, 0xfb, 0x58, 0xfe,
0xda, 0x8b, 0x29, 0x23, 0x92, 0x8f, 0x06, 0xa0, 0xa5, 0x5e, 0x6e, 0x18, 0x7c, 0xf4, 0xc7, 0x7a,
0xb9, 0x5d, 0xea, 0xd6, 0x7a, 0x87, 0x05, 0x1a, 0x86, 0x24, 0x90, 0x6d, 0x37, 0x1f, 0x40, 0x43,
0xd0, 0x44, 0x78, 0xcb, 0x02, 0x67, 0xca, 0x66, 0x13, 0x9f, 0x73, 0x3f, 0x0c, 0xf4, 0x8a, 0x54,
0x29, 0x9a, 0x89, 0x1d, 0x51, 0x2f, 0x96, 0x4c, 0xb2, 0x2d, 0xf2, 0x01, 0xf4, 0x06, 0x1a, 0x2e,
0x15, 0x6c, 0x1c, 0xce, 0x16, 0x8e, 0x47, 0x05, 0xd5, 0xd7, 0xa5, 0xd6, 0x7e, 0x46, 0x2b, 0x86,
0x07, 0x54, 0x50, 0x52, 0x77, 0x33, 0x23, 0xf4, 0x1a, 0xea, 0xee, 0x0d, 0x0d, 0x02, 0x76, 0xa7,
0x72, 0x37, 0x64, 0xee, 0x5e, 0x26, 0x57, 0xa1, 0x32, 0xb5, 0xe6, 0xa6, 0x03, 0xd4, 0x05, 0x6d,
0xc2, 0x26, 0xd7, 0x6c, 0xe6, 0x88, 0xd0, 0xa1, 0xae, 0x88, 0xaa, 0xd8, 0x6c, 0x97, 0xba, 0x55,
0xd2, 0x54, 0x71, 0x3b, 0xec, 0xcb, 0x28, 0xb2, 0xa0, 0xae, 0x22, 0xbc, 0xef, 0x79, 0xcc, 0xd3,
0xb7, 0xda, 0xe5, 0x6e, 0xad, 0xf7, 0xcd, 0xca, 0x55, 0x1f, 0x66, 0xc8, 0x38, 0x10, 0xb3, 0x05,
0xc9, 0xe5, 0xa3, 0x3b, 0xd8, 0x9f, 0xb1, 0x5f, 0x99, 0x2b, 0x98, 0x47, 0xd8, 0x6f, 0x73, 0xc6,
0x05, 0xb7, 0xc3, 0xb3, 0xd0, 0x0f, 0xf4, 0xaa, 0x54, 0xfe, 0x61, 0xa5, 0x32, 0x29, 0x4c, 0x53,
0x1e, 0x2b, 0x34, 0x23, 0x37, 0xea, 0xba, 0x6c, 0xfa, 0xd0, 0x0d, 0x3e, 0xe3, 0xd6, 0x2f, 0x4c,
0x8b, 0xdd, 0x8a, 0x35, 0xd1, 0x29, 0x34, 0xd5, 0xd9, 0x98, 0x30, 0x41, 0xe5, 0x8e, 0xd4, 0xe4,
0x8e, 0xb4, 0x57, 0x9d, 0x8c, 0x61, 0xcc, 0x23, 0x0d, 0x91, 0x1d, 0xb6, 0x3e, 0xc0, 0xce, 0x83,
0x75, 0x44, 0x1a, 0x94, 0x6f, 0xd9, 0x42, 0xde, 0x8c, 0x2a, 0x89, 0x1e, 0xd1, 0x4b, 0x58, 0xff,
0x44, 0xef, 0xe6, 0xea, 0x2a, 0x14, 0x1f, 0x63, 0x25, 0x43, 0x14, 0xef, 0xc7, 0xb5, 0xd7, 0xa5,
0xd6, 0x2d, 0x3c, 0x7d, 0x64, 0x25, 0x0b, 0x5c, 0x5e, 0xe5, 0x5d, 0x8a, 0x8a, 0x89, 0x85, 0x94,
0xce, 0x3d, 0xb3, 0x47, 0x16, 0xf2, 0xff, 0x35, 0xeb, 0xfc, 0x5d, 0x81, 0xea, 0xf2, 0xd2, 0xa3,
0x1a, 0x6c, 0x5e, 0x59, 0xe7, 0xd6, 0xe8, 0x17, 0x4b, 0xfb, 0x02, 0x21, 0x68, 0x1a, 0xa3, 0xe1,
0xf0, 0xca, 0x32, 0xed, 0xf7, 0x0e, 0x1e, 0x98, 0xb6, 0x56, 0x42, 0xdf, 0x42, 0x37, 0x8d, 0x0d,
0xf1, 0xf0, 0x04, 0x13, 0xc7, 0x1e, 0x9d, 0x63, 0xcb, 0xb9, 0xc0, 0x64, 0x68, 0x5e, 0x5e, 0x9a,
0x23, 0xcb, 0x31, 0xde, 0xf6, 0xad, 0x53, 0xac, 0xad, 0xfd, 0x37, 0xf6, 0x00, 0xbf, 0xc3, 0x36,
0xd6, 0xca, 0xe8, 0x39, 0x1c, 0xa6, 0x6c, 0xa3, 0x6f, 0xe3, 0xd3, 0x11, 0x79, 0xef, 0x18, 0x04,
0xf7, 0x6d, 0xac, 0x55, 0x56, 0xc0, 0x71, 0xf6, 0x3a, 0x7a, 0x0a, 0x07, 0x05, 0xb0, 0x9c, 0xf6,
0x06, 0x7a, 0x06, 0x7a, 0x06, 0x7c, 0xdb, 0xb7, 0x2c, 0xfc, 0x2e, 0x51, 0xde, 0x2c, 0x46, 0x63,
0xe1, 0x2d, 0xd4, 0x82, 0xfd, 0x87, 0xa8, 0xd4, 0xad, 0xa2, 0x23, 0x68, 0x15, 0x98, 0x12, 0x3c,
0x22, 0x03, 0x4c, 0x34, 0xb8, 0x37, 0xe7, 0x38, 0x37, 0x81, 0x6b, 0xe8, 0x6b, 0x68, 0xa7, 0x30,
0xc1, 0x3f, 0x5f, 0xe1, 0x4b, 0xdb, 0xb1, 0x47, 0xce, 0xd9, 0xc8, 0xb4, 0x9c, 0xbe, 0x61, 0xe0,
0x0b, 0x5b, 0xab, 0x3f, 0xce, 0x22, 0xf8, 0x0c, 0x1b, 0xb6, 0xd6, 0x40, 0x87, 0xb0, 0xf7, 0x60,
0xad, 0xcf, 0x4d, 0xe3, 0x5c, 0x6b, 0x22, 0x1d, 0x9e, 0x3c, 0x80, 0x4e, 0xfa, 0x96, 0xb6, 0x9d,
0xaf, 0x2d, 0x46, 0xae, 0xac, 0x08, 0xd3, 0xd0, 0x01, 0xec, 0xa6, 0x98, 0xda, 0xb5, 0xfe, 0x60,
0xa0, 0xed, 0x74, 0xfe, 0x5a, 0x83, 0xed, 0x7b, 0xaf, 0x7c, 0xd4, 0x83, 0xad, 0xa4, 0x97, 0xc9,
0x93, 0x99, 0x7f, 0x1b, 0xdf, 0x50, 0x61, 0xc6, 0x28, 0x59, 0xf2, 0xd0, 0x4f, 0x50, 0x4b, 0xfb,
0x01, 0x8f, 0x0f, 0xef, 0x51, 0xc1, 0xe1, 0x4d, 0x5f, 0xfd, 0x9c, 0x64, 0x53, 0xa2, 0x77, 0x07,
0xf5, 0x26, 0x7e, 0xe0, 0x70, 0x26, 0x84, 0x1f, 0x8c, 0x79, 0xdc, 0x9b, 0x8a, 0x6e, 0x40, 0x3f,
0x22, 0x5e, 0xc6, 0x3c, 0xd2, 0xa0, 0xd9, 0x21, 0xfa, 0x0a, 0x1a, 0x7e, 0x20, 0x66, 0xa1, 0x33,
0x61, 0x9c, 0xd3, 0x31, 0x93, 0xdd, 0xa9, 0x4a, 0xea, 0x32, 0x38, 0x54, 0xb1, 0x88, 0x14, 0xce,
0xb3, 0xa4, 0x75, 0x45, 0x92, 0xc1, 0x84, 0x84, 0xa0, 0x22, 0xe8, 0x98, 0xeb, 0x1b, 0xed, 0x72,
0xb7, 0x4a, 0xe4, 0x73, 0xe7, 0xf7, 0x12, 0xd4, 0xb3, 0x1d, 0x09, 0x7d, 0x09, 0xb5, 0x65, 0x03,
0xf3, 0xbd, 0xf8, 0x2a, 0x43, 0x12, 0x32, 0xbd, 0x48, 0x25, 0xa0, 0x13, 0x75, 0xa1, 0xab, 0x44,
0x3e, 0xa3, 0x17, 0xcb, 0xc6, 0xc5, 0x1d, 0xdf, 0x8b, 0x4a, 0x8d, 0x1c, 0x92, 0x0e, 0xc5, 0x4d,
0x8f, 0xa3, 0x16, 0x6c, 0x4d, 0x43, 0xee, 0x8b, 0xa4, 0xbf, 0xae, 0x93, 0xe5, 0xb8, 0xf3, 0x67,
0x09, 0x6a, 0x99, 0xd6, 0xf6, 0xf9, 0x39, 0x3c, 0x07, 0x48, 0x1a, 0xa5, 0xef, 0xc5, 0x33, 0xa9,
0xc6, 0x11, 0xd3, 0xcb, 0x79, 0x95, 0xf3, 0x5e, 0xe8, 0x3b, 0xd8, 0x8c, 0x89, 0x71, 0x9b, 0x3f,
0x28, 0xfa, 0x58, 0xb8, 0xa1, 0x82, 0x24, 0xbc, 0x8e, 0x05, 0x4f, 0x2e, 0xfd, 0x71, 0xc0, 0xbc,
0x7b, 0x1f, 0x3b, 0xcf, 0xa0, 0xca, 0xfd, 0x71, 0x40, 0xc5, 0x7c, 0xc6, 0xe4, 0x24, 0xeb, 0x24,
0x0d, 0x20, 0x1d, 0x36, 0xa7, 0x74, 0x71, 0x17, 0x52, 0x35, 0xc1, 0x3a, 0x49, 0x86, 0x9d, 0x7f,
0x4a, 0xb0, 0x9f, 0x97, 0xe2, 0xc9, 0x16, 0x45, 0x0b, 0xb9, 0xfc, 0xa6, 0x89, 0x4b, 0xaf, 0x93,
0xda, 0x32, 0x66, 0x7a, 0xc8, 0x84, 0x17, 0xf2, 0xc3, 0x8a, 0x3b, 0xd7, 0x94, 0x33, 0x27, 0xa5,
0x7b, 0x8c, 0xbb, 0x33, 0x7f, 0x2a, 0xab, 0x56, 0x8e, 0x47, 0x8a, 0x78, 0x42, 0x39, 0x5b, 0xfa,
0x0d, 0x52, 0x16, 0x6a, 0xc1, 0x86, 0x62, 0xc8, 0x0d, 0xab, 0x9f, 0xac, 0xe9, 0x25, 0x12, 0x47,
0x90, 0x01, 0x0d, 0x2e, 0x8b, 0x76, 0x62, 0x4a, 0x45, 0x36, 0xd8, 0xcc, 0x1d, 0x28, 0x5a, 0x13,
0x52, 0x57, 0x49, 0xaa, 0xaa, 0x8e, 0x0d, 0x47, 0xc5, 0x85, 0x26, 0x1d, 0x0b, 0xf5, 0xa0, 0x3c,
0xe1, 0xe3, 0xf8, 0x5e, 0xb6, 0x57, 0x75, 0xef, 0x65, 0x5a, 0x44, 0x3e, 0x69, 0x7c, 0xa8, 0x1d,
0xbf, 0x7c, 0x93, 0x50, 0xaf, 0x37, 0xe4, 0xd3, 0xf7, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x92,
0x1f, 0x8f, 0xf4, 0xd9, 0x0a, 0x00, 0x00,
}

View File

@@ -0,0 +1,92 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "chat_identity.proto";
import "communities.proto";
message CommunityEvent {
uint64 community_event_clock = 1;
EventType type = 2;
CommunityConfig community_config = 3;
CommunityTokenPermission token_permission = 4;
CategoryData category_data = 5;
ChannelData channel_data = 6;
string member_to_action = 7;
map<string,CommunityMember> membersAdded = 8;
map<string,CommunityRequestToJoin> rejectedRequestsToJoin = 9;
map<string,CommunityRequestToJoin> acceptedRequestsToJoin = 10;
CommunityTokenMetadata token_metadata = 11;
enum EventType {
UNKNOWN = 0;
COMMUNITY_EDIT = 1;
COMMUNITY_MEMBER_TOKEN_PERMISSION_CHANGE = 2;
COMMUNITY_MEMBER_TOKEN_PERMISSION_DELETE = 3;
COMMUNITY_CATEGORY_CREATE = 4;
COMMUNITY_CATEGORY_DELETE = 5;
COMMUNITY_CATEGORY_EDIT = 6;
COMMUNITY_CHANNEL_CREATE = 7;
COMMUNITY_CHANNEL_DELETE = 8;
COMMUNITY_CHANNEL_EDIT = 9;
COMMUNITY_CATEGORY_REORDER = 10;
COMMUNITY_CHANNEL_REORDER = 11;
COMMUNITY_REQUEST_TO_JOIN_ACCEPT = 12;
COMMUNITY_REQUEST_TO_JOIN_REJECT = 13;
COMMUNITY_MEMBER_KICK = 14;
COMMUNITY_MEMBER_BAN = 15;
COMMUNITY_MEMBER_UNBAN = 16;
COMMUNITY_TOKEN_ADD = 17;
}
}
message CommunityConfig {
ChatIdentity identity = 1;
CommunityPermissions permissions = 2;
CommunityAdminSettings admin_settings = 3;
string intro_message = 4;
string outro_message = 5;
repeated string tags = 6;
}
message CategoryData {
string category_id = 1;
string name = 2;
repeated string channels_ids = 3;
int32 position = 4;
}
message ChannelData {
string category_id = 1;
string channel_id = 2;
int32 position = 3;
CommunityChat channel = 4;
}
message SignedCommunityEvent {
// Signature of the payload field
bytes signature = 1;
// Marshaled CommunityEvent
bytes payload = 2;
}
// CommunityEventsMessage is a message used to propagate information
// about community changes.
message CommunityEventsMessage {
bytes community_id = 1;
// Events base CommunityDescription with owner signature on top of which events were generated
bytes events_base_community_description = 2;
// A list of admins events for the channel in bytes
// Deprecated: use signed_events instead.
repeated bytes events = 3 [deprecated=true];
// A list of signed community events
repeated SignedCommunityEvent signed_events = 4;
}
message CommunityEventsMessageRejected {
CommunityEventsMessage msg = 1;
}

View File

@@ -0,0 +1,302 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: contact.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type ContactRequestPropagatedState struct {
LocalClock uint64 `protobuf:"varint,1,opt,name=local_clock,json=localClock,proto3" json:"local_clock,omitempty"`
LocalState uint64 `protobuf:"varint,2,opt,name=local_state,json=localState,proto3" json:"local_state,omitempty"`
RemoteClock uint64 `protobuf:"varint,3,opt,name=remote_clock,json=remoteClock,proto3" json:"remote_clock,omitempty"`
RemoteState uint64 `protobuf:"varint,4,opt,name=remote_state,json=remoteState,proto3" json:"remote_state,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ContactRequestPropagatedState) Reset() { *m = ContactRequestPropagatedState{} }
func (m *ContactRequestPropagatedState) String() string { return proto.CompactTextString(m) }
func (*ContactRequestPropagatedState) ProtoMessage() {}
func (*ContactRequestPropagatedState) Descriptor() ([]byte, []int) {
return fileDescriptor_a5036fff2565fb15, []int{0}
}
func (m *ContactRequestPropagatedState) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContactRequestPropagatedState.Unmarshal(m, b)
}
func (m *ContactRequestPropagatedState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ContactRequestPropagatedState.Marshal(b, m, deterministic)
}
func (m *ContactRequestPropagatedState) XXX_Merge(src proto.Message) {
xxx_messageInfo_ContactRequestPropagatedState.Merge(m, src)
}
func (m *ContactRequestPropagatedState) XXX_Size() int {
return xxx_messageInfo_ContactRequestPropagatedState.Size(m)
}
func (m *ContactRequestPropagatedState) XXX_DiscardUnknown() {
xxx_messageInfo_ContactRequestPropagatedState.DiscardUnknown(m)
}
var xxx_messageInfo_ContactRequestPropagatedState proto.InternalMessageInfo
func (m *ContactRequestPropagatedState) GetLocalClock() uint64 {
if m != nil {
return m.LocalClock
}
return 0
}
func (m *ContactRequestPropagatedState) GetLocalState() uint64 {
if m != nil {
return m.LocalState
}
return 0
}
func (m *ContactRequestPropagatedState) GetRemoteClock() uint64 {
if m != nil {
return m.RemoteClock
}
return 0
}
func (m *ContactRequestPropagatedState) GetRemoteState() uint64 {
if m != nil {
return m.RemoteState
}
return 0
}
type ContactUpdate struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
EnsName string `protobuf:"bytes,2,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty"`
ProfileImage string `protobuf:"bytes,3,opt,name=profile_image,json=profileImage,proto3" json:"profile_image,omitempty"`
DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
ContactRequestClock uint64 `protobuf:"varint,5,opt,name=contact_request_clock,json=contactRequestClock,proto3" json:"contact_request_clock,omitempty"`
ContactRequestPropagatedState *ContactRequestPropagatedState `protobuf:"bytes,6,opt,name=contact_request_propagated_state,json=contactRequestPropagatedState,proto3" json:"contact_request_propagated_state,omitempty"`
PublicKey string `protobuf:"bytes,7,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ContactUpdate) Reset() { *m = ContactUpdate{} }
func (m *ContactUpdate) String() string { return proto.CompactTextString(m) }
func (*ContactUpdate) ProtoMessage() {}
func (*ContactUpdate) Descriptor() ([]byte, []int) {
return fileDescriptor_a5036fff2565fb15, []int{1}
}
func (m *ContactUpdate) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContactUpdate.Unmarshal(m, b)
}
func (m *ContactUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ContactUpdate.Marshal(b, m, deterministic)
}
func (m *ContactUpdate) XXX_Merge(src proto.Message) {
xxx_messageInfo_ContactUpdate.Merge(m, src)
}
func (m *ContactUpdate) XXX_Size() int {
return xxx_messageInfo_ContactUpdate.Size(m)
}
func (m *ContactUpdate) XXX_DiscardUnknown() {
xxx_messageInfo_ContactUpdate.DiscardUnknown(m)
}
var xxx_messageInfo_ContactUpdate proto.InternalMessageInfo
func (m *ContactUpdate) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *ContactUpdate) GetEnsName() string {
if m != nil {
return m.EnsName
}
return ""
}
func (m *ContactUpdate) GetProfileImage() string {
if m != nil {
return m.ProfileImage
}
return ""
}
func (m *ContactUpdate) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *ContactUpdate) GetContactRequestClock() uint64 {
if m != nil {
return m.ContactRequestClock
}
return 0
}
func (m *ContactUpdate) GetContactRequestPropagatedState() *ContactRequestPropagatedState {
if m != nil {
return m.ContactRequestPropagatedState
}
return nil
}
func (m *ContactUpdate) GetPublicKey() string {
if m != nil {
return m.PublicKey
}
return ""
}
type AcceptContactRequest struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Clock uint64 `protobuf:"varint,2,opt,name=clock,proto3" json:"clock,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AcceptContactRequest) Reset() { *m = AcceptContactRequest{} }
func (m *AcceptContactRequest) String() string { return proto.CompactTextString(m) }
func (*AcceptContactRequest) ProtoMessage() {}
func (*AcceptContactRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_a5036fff2565fb15, []int{2}
}
func (m *AcceptContactRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AcceptContactRequest.Unmarshal(m, b)
}
func (m *AcceptContactRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AcceptContactRequest.Marshal(b, m, deterministic)
}
func (m *AcceptContactRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_AcceptContactRequest.Merge(m, src)
}
func (m *AcceptContactRequest) XXX_Size() int {
return xxx_messageInfo_AcceptContactRequest.Size(m)
}
func (m *AcceptContactRequest) XXX_DiscardUnknown() {
xxx_messageInfo_AcceptContactRequest.DiscardUnknown(m)
}
var xxx_messageInfo_AcceptContactRequest proto.InternalMessageInfo
func (m *AcceptContactRequest) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *AcceptContactRequest) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
type RetractContactRequest struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Clock uint64 `protobuf:"varint,2,opt,name=clock,proto3" json:"clock,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RetractContactRequest) Reset() { *m = RetractContactRequest{} }
func (m *RetractContactRequest) String() string { return proto.CompactTextString(m) }
func (*RetractContactRequest) ProtoMessage() {}
func (*RetractContactRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_a5036fff2565fb15, []int{3}
}
func (m *RetractContactRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RetractContactRequest.Unmarshal(m, b)
}
func (m *RetractContactRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RetractContactRequest.Marshal(b, m, deterministic)
}
func (m *RetractContactRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_RetractContactRequest.Merge(m, src)
}
func (m *RetractContactRequest) XXX_Size() int {
return xxx_messageInfo_RetractContactRequest.Size(m)
}
func (m *RetractContactRequest) XXX_DiscardUnknown() {
xxx_messageInfo_RetractContactRequest.DiscardUnknown(m)
}
var xxx_messageInfo_RetractContactRequest proto.InternalMessageInfo
func (m *RetractContactRequest) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *RetractContactRequest) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func init() {
proto.RegisterType((*ContactRequestPropagatedState)(nil), "protobuf.ContactRequestPropagatedState")
proto.RegisterType((*ContactUpdate)(nil), "protobuf.ContactUpdate")
proto.RegisterType((*AcceptContactRequest)(nil), "protobuf.AcceptContactRequest")
proto.RegisterType((*RetractContactRequest)(nil), "protobuf.RetractContactRequest")
}
func init() {
proto.RegisterFile("contact.proto", fileDescriptor_a5036fff2565fb15)
}
var fileDescriptor_a5036fff2565fb15 = []byte{
// 348 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x51, 0x3f, 0x4f, 0xfb, 0x30,
0x14, 0x54, 0xf2, 0xeb, 0xbf, 0xbc, 0x34, 0xbf, 0x21, 0xb4, 0x52, 0x19, 0x2a, 0x4a, 0x18, 0xe8,
0x14, 0xa4, 0x32, 0x02, 0x03, 0x74, 0x42, 0x48, 0x08, 0x19, 0xb1, 0xb0, 0x44, 0xae, 0xf3, 0x5a,
0x45, 0x4d, 0x62, 0xe3, 0xb8, 0x43, 0x3f, 0x11, 0x9f, 0x86, 0xef, 0x84, 0x62, 0xbb, 0x34, 0x65,
0xe8, 0xc0, 0x94, 0xf8, 0x7c, 0xef, 0x7c, 0x77, 0x0f, 0x02, 0xc6, 0x4b, 0x45, 0x99, 0x8a, 0x85,
0xe4, 0x8a, 0x87, 0x3d, 0xfd, 0x59, 0x6c, 0x96, 0xd1, 0xa7, 0x03, 0xe3, 0xb9, 0xb9, 0x23, 0xf8,
0xb1, 0xc1, 0x4a, 0xbd, 0x48, 0x2e, 0xe8, 0x8a, 0x2a, 0x4c, 0x5f, 0x15, 0x55, 0x18, 0x9e, 0x81,
0x9f, 0x73, 0x46, 0xf3, 0x84, 0xe5, 0x9c, 0xad, 0x47, 0xce, 0xc4, 0x99, 0xb6, 0x08, 0x68, 0x68,
0x5e, 0x23, 0x7b, 0x42, 0x55, 0xf3, 0x47, 0x6e, 0x83, 0x60, 0x14, 0xce, 0xa1, 0x2f, 0xb1, 0xe0,
0x0a, 0xad, 0xc4, 0x3f, 0xcd, 0xf0, 0x0d, 0x66, 0x34, 0xf6, 0x14, 0x23, 0xd2, 0x6a, 0x52, 0xb4,
0x4a, 0xf4, 0xe5, 0x42, 0x60, 0x9d, 0xbe, 0x89, 0xb4, 0xd6, 0x1d, 0x40, 0xbb, 0xe9, 0xc9, 0x1c,
0xc2, 0x53, 0xe8, 0x61, 0x59, 0x25, 0x25, 0x2d, 0x8c, 0x17, 0x8f, 0x74, 0xb1, 0xac, 0x9e, 0x69,
0x81, 0xe1, 0x05, 0x04, 0x42, 0xf2, 0x65, 0x96, 0x63, 0x92, 0x15, 0x74, 0x85, 0xda, 0x89, 0x47,
0xfa, 0x16, 0x7c, 0xac, 0xb1, 0xda, 0x4a, 0x9a, 0x55, 0x22, 0xa7, 0x5b, 0xa3, 0xd1, 0xd2, 0x1c,
0xdf, 0x62, 0x5a, 0x67, 0x06, 0x43, 0xdb, 0x67, 0x22, 0x4d, 0x69, 0x36, 0x59, 0x5b, 0x1b, 0x39,
0x61, 0x07, 0x85, 0x9a, 0x84, 0x02, 0x26, 0xbf, 0x67, 0xc4, 0x4f, 0xd3, 0x36, 0x75, 0x67, 0xe2,
0x4c, 0xfd, 0xd9, 0x65, 0xbc, 0xdb, 0x4e, 0x7c, 0x74, 0x33, 0x64, 0xcc, 0x8e, 0x2e, 0x6e, 0x0c,
0x20, 0x36, 0x8b, 0x3c, 0x63, 0xc9, 0x1a, 0xb7, 0xa3, 0xae, 0x8e, 0xe1, 0x19, 0xe4, 0x09, 0xb7,
0xd1, 0x2d, 0x0c, 0xee, 0x19, 0x43, 0xa1, 0x0e, 0x1f, 0x09, 0xff, 0x83, 0x9b, 0xa5, 0xba, 0x52,
0x8f, 0xb8, 0x59, 0xba, 0x6f, 0xd9, 0x6d, 0xb4, 0x1c, 0xdd, 0xc1, 0x90, 0xa0, 0x92, 0x94, 0xfd,
0x69, 0xfc, 0x21, 0x78, 0xf7, 0xe3, 0xab, 0x9b, 0x5d, 0xce, 0x45, 0x47, 0xff, 0x5d, 0x7f, 0x07,
0x00, 0x00, 0xff, 0xff, 0xec, 0x6f, 0x01, 0xce, 0xa7, 0x02, 0x00, 0x00,
}

View File

@@ -0,0 +1,31 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message ContactRequestPropagatedState {
uint64 local_clock = 1;
uint64 local_state = 2;
uint64 remote_clock = 3;
uint64 remote_state = 4;
}
message ContactUpdate {
uint64 clock = 1;
string ens_name = 2;
string profile_image = 3;
string display_name = 4;
uint64 contact_request_clock = 5;
ContactRequestPropagatedState contact_request_propagated_state = 6;
string public_key = 7;
}
message AcceptContactRequest {
string id = 1;
uint64 clock = 2;
}
message RetractContactRequest {
string id = 1;
uint64 clock = 2;
}

View File

@@ -0,0 +1,245 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: contact_verification.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type RequestContactVerification struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Challenge string `protobuf:"bytes,3,opt,name=challenge,proto3" json:"challenge,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RequestContactVerification) Reset() { *m = RequestContactVerification{} }
func (m *RequestContactVerification) String() string { return proto.CompactTextString(m) }
func (*RequestContactVerification) ProtoMessage() {}
func (*RequestContactVerification) Descriptor() ([]byte, []int) {
return fileDescriptor_d6997df64de39454, []int{0}
}
func (m *RequestContactVerification) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RequestContactVerification.Unmarshal(m, b)
}
func (m *RequestContactVerification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RequestContactVerification.Marshal(b, m, deterministic)
}
func (m *RequestContactVerification) XXX_Merge(src proto.Message) {
xxx_messageInfo_RequestContactVerification.Merge(m, src)
}
func (m *RequestContactVerification) XXX_Size() int {
return xxx_messageInfo_RequestContactVerification.Size(m)
}
func (m *RequestContactVerification) XXX_DiscardUnknown() {
xxx_messageInfo_RequestContactVerification.DiscardUnknown(m)
}
var xxx_messageInfo_RequestContactVerification proto.InternalMessageInfo
func (m *RequestContactVerification) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *RequestContactVerification) GetChallenge() string {
if m != nil {
return m.Challenge
}
return ""
}
type AcceptContactVerification struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
Response string `protobuf:"bytes,3,opt,name=response,proto3" json:"response,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AcceptContactVerification) Reset() { *m = AcceptContactVerification{} }
func (m *AcceptContactVerification) String() string { return proto.CompactTextString(m) }
func (*AcceptContactVerification) ProtoMessage() {}
func (*AcceptContactVerification) Descriptor() ([]byte, []int) {
return fileDescriptor_d6997df64de39454, []int{1}
}
func (m *AcceptContactVerification) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AcceptContactVerification.Unmarshal(m, b)
}
func (m *AcceptContactVerification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AcceptContactVerification.Marshal(b, m, deterministic)
}
func (m *AcceptContactVerification) XXX_Merge(src proto.Message) {
xxx_messageInfo_AcceptContactVerification.Merge(m, src)
}
func (m *AcceptContactVerification) XXX_Size() int {
return xxx_messageInfo_AcceptContactVerification.Size(m)
}
func (m *AcceptContactVerification) XXX_DiscardUnknown() {
xxx_messageInfo_AcceptContactVerification.DiscardUnknown(m)
}
var xxx_messageInfo_AcceptContactVerification proto.InternalMessageInfo
func (m *AcceptContactVerification) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *AcceptContactVerification) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *AcceptContactVerification) GetResponse() string {
if m != nil {
return m.Response
}
return ""
}
type DeclineContactVerification struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *DeclineContactVerification) Reset() { *m = DeclineContactVerification{} }
func (m *DeclineContactVerification) String() string { return proto.CompactTextString(m) }
func (*DeclineContactVerification) ProtoMessage() {}
func (*DeclineContactVerification) Descriptor() ([]byte, []int) {
return fileDescriptor_d6997df64de39454, []int{2}
}
func (m *DeclineContactVerification) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeclineContactVerification.Unmarshal(m, b)
}
func (m *DeclineContactVerification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DeclineContactVerification.Marshal(b, m, deterministic)
}
func (m *DeclineContactVerification) XXX_Merge(src proto.Message) {
xxx_messageInfo_DeclineContactVerification.Merge(m, src)
}
func (m *DeclineContactVerification) XXX_Size() int {
return xxx_messageInfo_DeclineContactVerification.Size(m)
}
func (m *DeclineContactVerification) XXX_DiscardUnknown() {
xxx_messageInfo_DeclineContactVerification.DiscardUnknown(m)
}
var xxx_messageInfo_DeclineContactVerification proto.InternalMessageInfo
func (m *DeclineContactVerification) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *DeclineContactVerification) GetId() string {
if m != nil {
return m.Id
}
return ""
}
type CancelContactVerification struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CancelContactVerification) Reset() { *m = CancelContactVerification{} }
func (m *CancelContactVerification) String() string { return proto.CompactTextString(m) }
func (*CancelContactVerification) ProtoMessage() {}
func (*CancelContactVerification) Descriptor() ([]byte, []int) {
return fileDescriptor_d6997df64de39454, []int{3}
}
func (m *CancelContactVerification) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CancelContactVerification.Unmarshal(m, b)
}
func (m *CancelContactVerification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CancelContactVerification.Marshal(b, m, deterministic)
}
func (m *CancelContactVerification) XXX_Merge(src proto.Message) {
xxx_messageInfo_CancelContactVerification.Merge(m, src)
}
func (m *CancelContactVerification) XXX_Size() int {
return xxx_messageInfo_CancelContactVerification.Size(m)
}
func (m *CancelContactVerification) XXX_DiscardUnknown() {
xxx_messageInfo_CancelContactVerification.DiscardUnknown(m)
}
var xxx_messageInfo_CancelContactVerification proto.InternalMessageInfo
func (m *CancelContactVerification) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *CancelContactVerification) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func init() {
proto.RegisterType((*RequestContactVerification)(nil), "protobuf.RequestContactVerification")
proto.RegisterType((*AcceptContactVerification)(nil), "protobuf.AcceptContactVerification")
proto.RegisterType((*DeclineContactVerification)(nil), "protobuf.DeclineContactVerification")
proto.RegisterType((*CancelContactVerification)(nil), "protobuf.CancelContactVerification")
}
func init() {
proto.RegisterFile("contact_verification.proto", fileDescriptor_d6997df64de39454)
}
var fileDescriptor_d6997df64de39454 = []byte{
// 194 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x4a, 0xce, 0xcf, 0x2b,
0x49, 0x4c, 0x2e, 0x89, 0x2f, 0x4b, 0x2d, 0xca, 0x4c, 0xcb, 0x4c, 0x4e, 0x2c, 0xc9, 0xcc, 0xcf,
0xd3, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x00, 0x53, 0x49, 0xa5, 0x69, 0x4a, 0x01, 0x5c,
0x52, 0x41, 0xa9, 0x85, 0xa5, 0xa9, 0xc5, 0x25, 0xce, 0x10, 0xe5, 0x61, 0x48, 0xaa, 0x85, 0x44,
0xb8, 0x58, 0x93, 0x73, 0xf2, 0x93, 0xb3, 0x25, 0x18, 0x15, 0x18, 0x35, 0x58, 0x82, 0x20, 0x1c,
0x21, 0x19, 0x2e, 0xce, 0xe4, 0x8c, 0xc4, 0x9c, 0x9c, 0xd4, 0xbc, 0xf4, 0x54, 0x09, 0x66, 0x05,
0x46, 0x0d, 0xce, 0x20, 0x84, 0x80, 0x52, 0x2c, 0x97, 0xa4, 0x63, 0x72, 0x72, 0x6a, 0x01, 0x09,
0x06, 0xf2, 0x71, 0x31, 0x65, 0xa6, 0x48, 0x30, 0x81, 0x4d, 0x62, 0xca, 0x4c, 0x11, 0x92, 0xe2,
0xe2, 0x28, 0x4a, 0x2d, 0x2e, 0xc8, 0xcf, 0x2b, 0x86, 0x99, 0x0f, 0xe7, 0x2b, 0x39, 0x71, 0x49,
0xb9, 0xa4, 0x26, 0xe7, 0x64, 0xe6, 0xa5, 0x92, 0x6d, 0xbe, 0x92, 0x23, 0x97, 0xa4, 0x73, 0x62,
0x5e, 0x72, 0x6a, 0x0e, 0xd9, 0x46, 0x38, 0xf1, 0x46, 0x71, 0xeb, 0xe9, 0x5b, 0xc3, 0x82, 0x31,
0x89, 0x0d, 0xcc, 0x32, 0x06, 0x04, 0x00, 0x00, 0xff, 0xff, 0xd4, 0x2b, 0x89, 0x8f, 0x75, 0x01,
0x00, 0x00,
}

View File

@@ -0,0 +1,25 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message RequestContactVerification {
uint64 clock = 1;
string challenge = 3;
}
message AcceptContactVerification {
uint64 clock = 1;
string id = 2;
string response = 3;
}
message DeclineContactVerification {
uint64 clock = 1;
string id = 2;
}
message CancelContactVerification {
uint64 clock = 1;
string id = 2;
}

View File

@@ -0,0 +1,191 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: emoji_reaction.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type EmojiReaction_Type int32
const (
EmojiReaction_UNKNOWN_EMOJI_REACTION_TYPE EmojiReaction_Type = 0
EmojiReaction_LOVE EmojiReaction_Type = 1
EmojiReaction_THUMBS_UP EmojiReaction_Type = 2
EmojiReaction_THUMBS_DOWN EmojiReaction_Type = 3
EmojiReaction_LAUGH EmojiReaction_Type = 4
EmojiReaction_SAD EmojiReaction_Type = 5
EmojiReaction_ANGRY EmojiReaction_Type = 6
)
var EmojiReaction_Type_name = map[int32]string{
0: "UNKNOWN_EMOJI_REACTION_TYPE",
1: "LOVE",
2: "THUMBS_UP",
3: "THUMBS_DOWN",
4: "LAUGH",
5: "SAD",
6: "ANGRY",
}
var EmojiReaction_Type_value = map[string]int32{
"UNKNOWN_EMOJI_REACTION_TYPE": 0,
"LOVE": 1,
"THUMBS_UP": 2,
"THUMBS_DOWN": 3,
"LAUGH": 4,
"SAD": 5,
"ANGRY": 6,
}
func (x EmojiReaction_Type) String() string {
return proto.EnumName(EmojiReaction_Type_name, int32(x))
}
func (EmojiReaction_Type) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_0a088c907bbc7ed6, []int{0, 0}
}
type EmojiReaction struct {
// clock Lamport timestamp of the chat message
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// chat_id the ID of the chat the message belongs to, for query efficiency the chat_id is stored in the db even though the
// target message also stores the chat_id
ChatId string `protobuf:"bytes,2,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
// message_id the ID of the target message that the user wishes to react to
MessageId string `protobuf:"bytes,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
// message_type is (somewhat confusingly) the ID of the type of chat the message belongs to
MessageType MessageType `protobuf:"varint,4,opt,name=message_type,json=messageType,proto3,enum=protobuf.MessageType" json:"message_type,omitempty"`
// type the ID of the emoji the user wishes to react with
Type EmojiReaction_Type `protobuf:"varint,5,opt,name=type,proto3,enum=protobuf.EmojiReaction_Type" json:"type,omitempty"`
// whether this is a rectraction of a previously sent emoji
Retracted bool `protobuf:"varint,6,opt,name=retracted,proto3" json:"retracted,omitempty"`
// Grant for organisation chat messages
Grant []byte `protobuf:"bytes,7,opt,name=grant,proto3" json:"grant,omitempty"` // Deprecated: Do not use.
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *EmojiReaction) Reset() { *m = EmojiReaction{} }
func (m *EmojiReaction) String() string { return proto.CompactTextString(m) }
func (*EmojiReaction) ProtoMessage() {}
func (*EmojiReaction) Descriptor() ([]byte, []int) {
return fileDescriptor_0a088c907bbc7ed6, []int{0}
}
func (m *EmojiReaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_EmojiReaction.Unmarshal(m, b)
}
func (m *EmojiReaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_EmojiReaction.Marshal(b, m, deterministic)
}
func (m *EmojiReaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_EmojiReaction.Merge(m, src)
}
func (m *EmojiReaction) XXX_Size() int {
return xxx_messageInfo_EmojiReaction.Size(m)
}
func (m *EmojiReaction) XXX_DiscardUnknown() {
xxx_messageInfo_EmojiReaction.DiscardUnknown(m)
}
var xxx_messageInfo_EmojiReaction proto.InternalMessageInfo
func (m *EmojiReaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *EmojiReaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func (m *EmojiReaction) GetMessageId() string {
if m != nil {
return m.MessageId
}
return ""
}
func (m *EmojiReaction) GetMessageType() MessageType {
if m != nil {
return m.MessageType
}
return MessageType_UNKNOWN_MESSAGE_TYPE
}
func (m *EmojiReaction) GetType() EmojiReaction_Type {
if m != nil {
return m.Type
}
return EmojiReaction_UNKNOWN_EMOJI_REACTION_TYPE
}
func (m *EmojiReaction) GetRetracted() bool {
if m != nil {
return m.Retracted
}
return false
}
// Deprecated: Do not use.
func (m *EmojiReaction) GetGrant() []byte {
if m != nil {
return m.Grant
}
return nil
}
func init() {
proto.RegisterEnum("protobuf.EmojiReaction_Type", EmojiReaction_Type_name, EmojiReaction_Type_value)
proto.RegisterType((*EmojiReaction)(nil), "protobuf.EmojiReaction")
}
func init() {
proto.RegisterFile("emoji_reaction.proto", fileDescriptor_0a088c907bbc7ed6)
}
var fileDescriptor_0a088c907bbc7ed6 = []byte{
// 332 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x54, 0x8f, 0x51, 0x4f, 0x82, 0x50,
0x1c, 0xc5, 0xbb, 0x08, 0x28, 0x7f, 0xb4, 0xd8, 0x9d, 0x2d, 0x56, 0xb6, 0x98, 0x4f, 0x3c, 0x51,
0xab, 0x97, 0xb6, 0x9e, 0x30, 0x99, 0x52, 0x0a, 0xee, 0x0a, 0x39, 0x7b, 0x61, 0x08, 0x37, 0xb3,
0x42, 0x18, 0xe2, 0x83, 0x9f, 0xbb, 0x2f, 0xd0, 0xb8, 0xe8, 0x5c, 0x4f, 0xf7, 0x9e, 0xdf, 0x39,
0x67, 0xf7, 0x5c, 0x68, 0xd3, 0x24, 0xfd, 0x5a, 0x05, 0x39, 0x0d, 0xa3, 0x62, 0x95, 0xae, 0x8d,
0x2c, 0x4f, 0x8b, 0x14, 0x37, 0xd8, 0xb1, 0xd8, 0x7e, 0x5c, 0xca, 0x74, 0xbd, 0x4d, 0x36, 0x15,
0xee, 0xfe, 0x72, 0xd0, 0xb2, 0xca, 0x3c, 0xd9, 0xc7, 0x71, 0x1b, 0x84, 0xe8, 0x27, 0x8d, 0xbe,
0x55, 0xa4, 0x21, 0x9d, 0x27, 0x95, 0xc0, 0x17, 0x50, 0x8f, 0x3e, 0xc3, 0x22, 0x58, 0xc5, 0x2a,
0xa7, 0x21, 0x5d, 0x22, 0x62, 0x29, 0xed, 0x18, 0x5f, 0x03, 0x24, 0x74, 0xb3, 0x09, 0x97, 0xb4,
0xf4, 0x6a, 0xcc, 0x93, 0xf6, 0xc4, 0x8e, 0xf1, 0x23, 0x34, 0x0f, 0x76, 0xb1, 0xcb, 0xa8, 0xca,
0x6b, 0x48, 0x3f, 0xbd, 0x3f, 0x37, 0x0e, 0x6b, 0x8c, 0x71, 0xe5, 0x7a, 0xbb, 0x8c, 0x12, 0x39,
0x39, 0x0a, 0x7c, 0x07, 0x3c, 0x6b, 0x08, 0xac, 0xd1, 0x39, 0x36, 0xfe, 0xcd, 0x35, 0x58, 0x91,
0x25, 0x71, 0x07, 0xa4, 0x9c, 0x16, 0x79, 0x18, 0x15, 0x34, 0x56, 0x45, 0x0d, 0xe9, 0x0d, 0x72,
0x04, 0x58, 0x05, 0x61, 0x99, 0x87, 0xeb, 0x42, 0xad, 0x6b, 0x48, 0x6f, 0xf6, 0x38, 0x15, 0x91,
0x0a, 0x74, 0x33, 0xe0, 0xd9, 0x8b, 0x37, 0x70, 0xe5, 0x3b, 0xaf, 0x8e, 0x3b, 0x73, 0x02, 0x6b,
0xec, 0xbe, 0xd8, 0x01, 0xb1, 0xcc, 0x67, 0xcf, 0x76, 0x9d, 0xc0, 0x9b, 0x4f, 0x2c, 0xe5, 0x04,
0x37, 0x80, 0x1f, 0xb9, 0x6f, 0x96, 0x82, 0x70, 0x0b, 0x24, 0x6f, 0xe8, 0x8f, 0x7b, 0xd3, 0xc0,
0x9f, 0x28, 0x1c, 0x3e, 0x03, 0x79, 0x2f, 0xfb, 0xee, 0xcc, 0x51, 0x6a, 0x58, 0x02, 0x61, 0x64,
0xfa, 0x83, 0xa1, 0xc2, 0xe3, 0x3a, 0xd4, 0xa6, 0x66, 0x5f, 0x11, 0x4a, 0x66, 0x3a, 0x03, 0x32,
0x57, 0xc4, 0x5e, 0xeb, 0x5d, 0x36, 0x6e, 0x9f, 0x0e, 0x3f, 0x5a, 0x88, 0xec, 0xf6, 0xf0, 0x17,
0x00, 0x00, 0xff, 0xff, 0x9a, 0x6c, 0xc6, 0xc0, 0xba, 0x01, 0x00, 0x00,
}

View File

@@ -0,0 +1,40 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "enums.proto";
message EmojiReaction {
// clock Lamport timestamp of the chat message
uint64 clock = 1;
// chat_id the ID of the chat the message belongs to, for query efficiency the chat_id is stored in the db even though the
// target message also stores the chat_id
string chat_id = 2;
// message_id the ID of the target message that the user wishes to react to
string message_id = 3;
// message_type is (somewhat confusingly) the ID of the type of chat the message belongs to
MessageType message_type = 4;
// type the ID of the emoji the user wishes to react with
Type type = 5;
enum Type {
UNKNOWN_EMOJI_REACTION_TYPE = 0;
LOVE = 1;
THUMBS_UP = 2;
THUMBS_DOWN = 3;
LAUGH = 4;
SAD = 5;
ANGRY = 6;
}
// whether this is a rectraction of a previously sent emoji
bool retracted = 6;
// Grant for organisation chat messages
bytes grant = 7 [deprecated = true];
}

View File

@@ -0,0 +1,162 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: enums.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type MessageType int32
const (
MessageType_UNKNOWN_MESSAGE_TYPE MessageType = 0
MessageType_ONE_TO_ONE MessageType = 1
MessageType_PUBLIC_GROUP MessageType = 2
MessageType_PRIVATE_GROUP MessageType = 3
// Only local
MessageType_SYSTEM_MESSAGE_PRIVATE_GROUP MessageType = 4
MessageType_COMMUNITY_CHAT MessageType = 5
// Only local
MessageType_SYSTEM_MESSAGE_GAP MessageType = 6
)
var MessageType_name = map[int32]string{
0: "UNKNOWN_MESSAGE_TYPE",
1: "ONE_TO_ONE",
2: "PUBLIC_GROUP",
3: "PRIVATE_GROUP",
4: "SYSTEM_MESSAGE_PRIVATE_GROUP",
5: "COMMUNITY_CHAT",
6: "SYSTEM_MESSAGE_GAP",
}
var MessageType_value = map[string]int32{
"UNKNOWN_MESSAGE_TYPE": 0,
"ONE_TO_ONE": 1,
"PUBLIC_GROUP": 2,
"PRIVATE_GROUP": 3,
"SYSTEM_MESSAGE_PRIVATE_GROUP": 4,
"COMMUNITY_CHAT": 5,
"SYSTEM_MESSAGE_GAP": 6,
}
func (x MessageType) String() string {
return proto.EnumName(MessageType_name, int32(x))
}
func (MessageType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_888b6bd9597961ff, []int{0}
}
type ImageFormat int32
const (
ImageFormat_UNKNOWN_IMAGE_FORMAT ImageFormat = 0
// Raster image files is payload data that can be read as a raster image
ImageFormat_PNG ImageFormat = 1
ImageFormat_JPEG ImageFormat = 2
ImageFormat_WEBP ImageFormat = 3
ImageFormat_GIF ImageFormat = 4
)
var ImageFormat_name = map[int32]string{
0: "UNKNOWN_IMAGE_FORMAT",
1: "PNG",
2: "JPEG",
3: "WEBP",
4: "GIF",
}
var ImageFormat_value = map[string]int32{
"UNKNOWN_IMAGE_FORMAT": 0,
"PNG": 1,
"JPEG": 2,
"WEBP": 3,
"GIF": 4,
}
func (x ImageFormat) String() string {
return proto.EnumName(ImageFormat_name, int32(x))
}
func (ImageFormat) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_888b6bd9597961ff, []int{1}
}
type CommunityTokenType int32
const (
CommunityTokenType_UNKNOWN_TOKEN_TYPE CommunityTokenType = 0
CommunityTokenType_ERC20 CommunityTokenType = 1
CommunityTokenType_ERC721 CommunityTokenType = 2
CommunityTokenType_ENS CommunityTokenType = 3
)
var CommunityTokenType_name = map[int32]string{
0: "UNKNOWN_TOKEN_TYPE",
1: "ERC20",
2: "ERC721",
3: "ENS",
}
var CommunityTokenType_value = map[string]int32{
"UNKNOWN_TOKEN_TYPE": 0,
"ERC20": 1,
"ERC721": 2,
"ENS": 3,
}
func (x CommunityTokenType) String() string {
return proto.EnumName(CommunityTokenType_name, int32(x))
}
func (CommunityTokenType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_888b6bd9597961ff, []int{2}
}
func init() {
proto.RegisterEnum("protobuf.MessageType", MessageType_name, MessageType_value)
proto.RegisterEnum("protobuf.ImageFormat", ImageFormat_name, ImageFormat_value)
proto.RegisterEnum("protobuf.CommunityTokenType", CommunityTokenType_name, CommunityTokenType_value)
}
func init() {
proto.RegisterFile("enums.proto", fileDescriptor_888b6bd9597961ff)
}
var fileDescriptor_888b6bd9597961ff = []byte{
// 302 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x90, 0x4b, 0x4f, 0xfa, 0x50,
0x10, 0xc5, 0x29, 0xe5, 0xf5, 0x9f, 0xfe, 0x21, 0xe3, 0xc4, 0x10, 0x17, 0x2e, 0x5c, 0xb3, 0x40,
0xc5, 0x85, 0x0b, 0x57, 0xa5, 0x19, 0x6a, 0x85, 0xfb, 0x48, 0x7b, 0x2b, 0xc1, 0x4d, 0x03, 0xc9,
0x95, 0x18, 0x53, 0x4a, 0x78, 0x2c, 0xf8, 0x4a, 0x7e, 0x4a, 0x53, 0x22, 0x46, 0x5d, 0xcd, 0xc9,
0xe4, 0xcc, 0x2f, 0x67, 0x0e, 0x78, 0x76, 0xb5, 0xcf, 0xb7, 0xfd, 0xf5, 0xa6, 0xd8, 0x15, 0xd4,
0x3a, 0x8e, 0xc5, 0xfe, 0xb5, 0xf7, 0xe1, 0x80, 0x27, 0xec, 0x76, 0x3b, 0x5f, 0x5a, 0x73, 0x58,
0x5b, 0xba, 0x80, 0xf3, 0x54, 0x8e, 0xa5, 0x9a, 0xca, 0x4c, 0x70, 0x92, 0xf8, 0x21, 0x67, 0x66,
0xa6, 0x19, 0x2b, 0xd4, 0x01, 0x50, 0x92, 0x33, 0xa3, 0x32, 0x25, 0x19, 0x1d, 0x42, 0xf8, 0xaf,
0xd3, 0xe1, 0x24, 0x0a, 0xb2, 0x30, 0x56, 0xa9, 0xc6, 0x2a, 0x9d, 0x41, 0x5b, 0xc7, 0xd1, 0xb3,
0x6f, 0xf8, 0x6b, 0xe5, 0xd2, 0x15, 0x5c, 0x26, 0xb3, 0xc4, 0xb0, 0xf8, 0xa6, 0xfd, 0x76, 0xd4,
0x88, 0xa0, 0x13, 0x28, 0x21, 0x52, 0x19, 0x99, 0x59, 0x16, 0x3c, 0xfa, 0x06, 0xeb, 0xd4, 0x05,
0xfa, 0x73, 0x15, 0xfa, 0x1a, 0x1b, 0x3d, 0x01, 0x5e, 0x94, 0xcf, 0x97, 0x76, 0x54, 0x6c, 0xf2,
0xf9, 0xee, 0x67, 0xd6, 0x48, 0x94, 0xae, 0x91, 0x8a, 0x85, 0x6f, 0xb0, 0x42, 0x4d, 0x70, 0xb5,
0x0c, 0xd1, 0xa1, 0x16, 0xd4, 0x9e, 0x34, 0x87, 0x58, 0x2d, 0xd5, 0x94, 0x87, 0x65, 0xa6, 0x26,
0xb8, 0x61, 0x34, 0xc2, 0x5a, 0x6f, 0x02, 0x14, 0x14, 0x79, 0xbe, 0x5f, 0xbd, 0xed, 0x0e, 0xa6,
0x78, 0xb7, 0xab, 0x63, 0x03, 0x5d, 0xa0, 0x13, 0xd5, 0xa8, 0x31, 0xcb, 0xd3, 0xff, 0xff, 0xa0,
0xce, 0x71, 0x30, 0xb8, 0x41, 0x87, 0x00, 0x1a, 0x1c, 0x07, 0xf7, 0x83, 0x5b, 0xac, 0x96, 0x34,
0x96, 0x09, 0xba, 0xc3, 0xf6, 0x8b, 0xd7, 0xbf, 0x7e, 0x38, 0x15, 0xbb, 0x68, 0x1c, 0xd5, 0xdd,
0x67, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa8, 0x34, 0x70, 0xdb, 0x78, 0x01, 0x00, 0x00,
}

View File

@@ -0,0 +1,33 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
enum MessageType {
UNKNOWN_MESSAGE_TYPE = 0;
ONE_TO_ONE = 1;
PUBLIC_GROUP = 2;
PRIVATE_GROUP = 3;
// Only local
SYSTEM_MESSAGE_PRIVATE_GROUP = 4;
COMMUNITY_CHAT = 5;
// Only local
SYSTEM_MESSAGE_GAP = 6;
}
enum ImageFormat {
UNKNOWN_IMAGE_FORMAT = 0;
// Raster image files is payload data that can be read as a raster image
PNG = 1;
JPEG = 2;
WEBP = 3;
GIF = 4;
}
enum CommunityTokenType {
UNKNOWN_TOKEN_TYPE = 0;
ERC20 = 1;
ERC721 = 2;
ENS = 3;
}

View File

@@ -0,0 +1,148 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: group_chat_invitation.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type GroupChatInvitation_State int32
const (
GroupChatInvitation_UNKNOWN GroupChatInvitation_State = 0
GroupChatInvitation_REQUEST GroupChatInvitation_State = 1
GroupChatInvitation_REJECTED GroupChatInvitation_State = 2
GroupChatInvitation_APPROVED GroupChatInvitation_State = 3
)
var GroupChatInvitation_State_name = map[int32]string{
0: "UNKNOWN",
1: "REQUEST",
2: "REJECTED",
3: "APPROVED",
}
var GroupChatInvitation_State_value = map[string]int32{
"UNKNOWN": 0,
"REQUEST": 1,
"REJECTED": 2,
"APPROVED": 3,
}
func (x GroupChatInvitation_State) String() string {
return proto.EnumName(GroupChatInvitation_State_name, int32(x))
}
func (GroupChatInvitation_State) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_a6a73333de6a8ebe, []int{0, 0}
}
type GroupChatInvitation struct {
// clock Lamport timestamp of the chat message
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// chat_id the ID of the private group chat the message belongs to, for query efficiency the chat_id is stored in the db even though the
// target message also stores the chat_id
ChatId string `protobuf:"bytes,2,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
IntroductionMessage string `protobuf:"bytes,3,opt,name=introduction_message,json=introductionMessage,proto3" json:"introduction_message,omitempty"`
// state of invitation
State GroupChatInvitation_State `protobuf:"varint,4,opt,name=state,proto3,enum=protobuf.GroupChatInvitation_State" json:"state,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *GroupChatInvitation) Reset() { *m = GroupChatInvitation{} }
func (m *GroupChatInvitation) String() string { return proto.CompactTextString(m) }
func (*GroupChatInvitation) ProtoMessage() {}
func (*GroupChatInvitation) Descriptor() ([]byte, []int) {
return fileDescriptor_a6a73333de6a8ebe, []int{0}
}
func (m *GroupChatInvitation) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupChatInvitation.Unmarshal(m, b)
}
func (m *GroupChatInvitation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GroupChatInvitation.Marshal(b, m, deterministic)
}
func (m *GroupChatInvitation) XXX_Merge(src proto.Message) {
xxx_messageInfo_GroupChatInvitation.Merge(m, src)
}
func (m *GroupChatInvitation) XXX_Size() int {
return xxx_messageInfo_GroupChatInvitation.Size(m)
}
func (m *GroupChatInvitation) XXX_DiscardUnknown() {
xxx_messageInfo_GroupChatInvitation.DiscardUnknown(m)
}
var xxx_messageInfo_GroupChatInvitation proto.InternalMessageInfo
func (m *GroupChatInvitation) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *GroupChatInvitation) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func (m *GroupChatInvitation) GetIntroductionMessage() string {
if m != nil {
return m.IntroductionMessage
}
return ""
}
func (m *GroupChatInvitation) GetState() GroupChatInvitation_State {
if m != nil {
return m.State
}
return GroupChatInvitation_UNKNOWN
}
func init() {
proto.RegisterEnum("protobuf.GroupChatInvitation_State", GroupChatInvitation_State_name, GroupChatInvitation_State_value)
proto.RegisterType((*GroupChatInvitation)(nil), "protobuf.GroupChatInvitation")
}
func init() {
proto.RegisterFile("group_chat_invitation.proto", fileDescriptor_a6a73333de6a8ebe)
}
var fileDescriptor_a6a73333de6a8ebe = []byte{
// 243 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x4e, 0x2f, 0xca, 0x2f,
0x2d, 0x88, 0x4f, 0xce, 0x48, 0x2c, 0x89, 0xcf, 0xcc, 0x2b, 0xcb, 0x2c, 0x49, 0x2c, 0xc9, 0xcc,
0xcf, 0xd3, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x00, 0x53, 0x49, 0xa5, 0x69, 0x4a, 0x1f,
0x19, 0xb9, 0x84, 0xdd, 0x41, 0x2a, 0x9d, 0x33, 0x12, 0x4b, 0x3c, 0xe1, 0xea, 0x84, 0x44, 0xb8,
0x58, 0x93, 0x73, 0xf2, 0x93, 0xb3, 0x25, 0x18, 0x15, 0x18, 0x35, 0x58, 0x82, 0x20, 0x1c, 0x21,
0x71, 0x2e, 0x76, 0x88, 0x81, 0x29, 0x12, 0x4c, 0x0a, 0x8c, 0x1a, 0x9c, 0x41, 0x6c, 0x20, 0xae,
0x67, 0x8a, 0x90, 0x21, 0x97, 0x48, 0x66, 0x5e, 0x49, 0x51, 0x7e, 0x4a, 0x69, 0x32, 0x48, 0x7b,
0x7c, 0x6e, 0x6a, 0x71, 0x71, 0x62, 0x7a, 0xaa, 0x04, 0x33, 0x58, 0x95, 0x30, 0xb2, 0x9c, 0x2f,
0x44, 0x4a, 0xc8, 0x92, 0x8b, 0xb5, 0xb8, 0x24, 0xb1, 0x24, 0x55, 0x82, 0x45, 0x81, 0x51, 0x83,
0xcf, 0x48, 0x59, 0x0f, 0xe6, 0x26, 0x3d, 0x2c, 0xee, 0xd1, 0x0b, 0x06, 0x29, 0x0d, 0x82, 0xe8,
0x50, 0xb2, 0xe5, 0x62, 0x05, 0xf3, 0x85, 0xb8, 0xb9, 0xd8, 0x43, 0xfd, 0xbc, 0xfd, 0xfc, 0xc3,
0xfd, 0x04, 0x18, 0x40, 0x9c, 0x20, 0xd7, 0xc0, 0x50, 0xd7, 0xe0, 0x10, 0x01, 0x46, 0x21, 0x1e,
0x2e, 0x8e, 0x20, 0x57, 0x2f, 0x57, 0xe7, 0x10, 0x57, 0x17, 0x01, 0x26, 0x10, 0xcf, 0x31, 0x20,
0x20, 0xc8, 0x3f, 0xcc, 0xd5, 0x45, 0x80, 0xd9, 0x89, 0x37, 0x8a, 0x5b, 0x4f, 0xdf, 0x1a, 0x66,
0x5d, 0x12, 0x1b, 0x98, 0x65, 0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0x1b, 0x4c, 0x19, 0xcd, 0x32,
0x01, 0x00, 0x00,
}

View File

@@ -0,0 +1,26 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message GroupChatInvitation {
// clock Lamport timestamp of the chat message
uint64 clock = 1;
// chat_id the ID of the private group chat the message belongs to, for query efficiency the chat_id is stored in the db even though the
// target message also stores the chat_id
string chat_id = 2;
string introduction_message = 3;
// state of invitation
State state = 4;
enum State {
UNKNOWN = 0;
REQUEST = 1;
REJECTED = 2;
APPROVED = 3;
}
}

View File

@@ -0,0 +1,302 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: membership_update_message.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type MembershipUpdateEvent_EventType int32
const (
MembershipUpdateEvent_UNKNOWN MembershipUpdateEvent_EventType = 0
MembershipUpdateEvent_CHAT_CREATED MembershipUpdateEvent_EventType = 1
MembershipUpdateEvent_NAME_CHANGED MembershipUpdateEvent_EventType = 2
MembershipUpdateEvent_MEMBERS_ADDED MembershipUpdateEvent_EventType = 3
MembershipUpdateEvent_MEMBER_JOINED MembershipUpdateEvent_EventType = 4
MembershipUpdateEvent_MEMBER_REMOVED MembershipUpdateEvent_EventType = 5
MembershipUpdateEvent_ADMINS_ADDED MembershipUpdateEvent_EventType = 6
MembershipUpdateEvent_ADMIN_REMOVED MembershipUpdateEvent_EventType = 7
MembershipUpdateEvent_COLOR_CHANGED MembershipUpdateEvent_EventType = 8
MembershipUpdateEvent_IMAGE_CHANGED MembershipUpdateEvent_EventType = 9
)
var MembershipUpdateEvent_EventType_name = map[int32]string{
0: "UNKNOWN",
1: "CHAT_CREATED",
2: "NAME_CHANGED",
3: "MEMBERS_ADDED",
4: "MEMBER_JOINED",
5: "MEMBER_REMOVED",
6: "ADMINS_ADDED",
7: "ADMIN_REMOVED",
8: "COLOR_CHANGED",
9: "IMAGE_CHANGED",
}
var MembershipUpdateEvent_EventType_value = map[string]int32{
"UNKNOWN": 0,
"CHAT_CREATED": 1,
"NAME_CHANGED": 2,
"MEMBERS_ADDED": 3,
"MEMBER_JOINED": 4,
"MEMBER_REMOVED": 5,
"ADMINS_ADDED": 6,
"ADMIN_REMOVED": 7,
"COLOR_CHANGED": 8,
"IMAGE_CHANGED": 9,
}
func (x MembershipUpdateEvent_EventType) String() string {
return proto.EnumName(MembershipUpdateEvent_EventType_name, int32(x))
}
func (MembershipUpdateEvent_EventType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_8d37dd0dc857a6be, []int{0, 0}
}
type MembershipUpdateEvent struct {
// Lamport timestamp of the event
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// List of public keys of objects of the action
Members []string `protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty"`
// Name of the chat for the CHAT_CREATED/NAME_CHANGED event types
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
// The type of the event
Type MembershipUpdateEvent_EventType `protobuf:"varint,4,opt,name=type,proto3,enum=protobuf.MembershipUpdateEvent_EventType" json:"type,omitempty"`
// Color of the chat for the CHAT_CREATED/COLOR_CHANGED event types
Color string `protobuf:"bytes,5,opt,name=color,proto3" json:"color,omitempty"`
// Chat image
Image []byte `protobuf:"bytes,6,opt,name=image,proto3" json:"image,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *MembershipUpdateEvent) Reset() { *m = MembershipUpdateEvent{} }
func (m *MembershipUpdateEvent) String() string { return proto.CompactTextString(m) }
func (*MembershipUpdateEvent) ProtoMessage() {}
func (*MembershipUpdateEvent) Descriptor() ([]byte, []int) {
return fileDescriptor_8d37dd0dc857a6be, []int{0}
}
func (m *MembershipUpdateEvent) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MembershipUpdateEvent.Unmarshal(m, b)
}
func (m *MembershipUpdateEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MembershipUpdateEvent.Marshal(b, m, deterministic)
}
func (m *MembershipUpdateEvent) XXX_Merge(src proto.Message) {
xxx_messageInfo_MembershipUpdateEvent.Merge(m, src)
}
func (m *MembershipUpdateEvent) XXX_Size() int {
return xxx_messageInfo_MembershipUpdateEvent.Size(m)
}
func (m *MembershipUpdateEvent) XXX_DiscardUnknown() {
xxx_messageInfo_MembershipUpdateEvent.DiscardUnknown(m)
}
var xxx_messageInfo_MembershipUpdateEvent proto.InternalMessageInfo
func (m *MembershipUpdateEvent) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *MembershipUpdateEvent) GetMembers() []string {
if m != nil {
return m.Members
}
return nil
}
func (m *MembershipUpdateEvent) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *MembershipUpdateEvent) GetType() MembershipUpdateEvent_EventType {
if m != nil {
return m.Type
}
return MembershipUpdateEvent_UNKNOWN
}
func (m *MembershipUpdateEvent) GetColor() string {
if m != nil {
return m.Color
}
return ""
}
func (m *MembershipUpdateEvent) GetImage() []byte {
if m != nil {
return m.Image
}
return nil
}
// MembershipUpdateMessage is a message used to propagate information
// about group membership changes.
// For more information, see https://github.com/status-im/specs/blob/master/status-group-chats-spec.md.
type MembershipUpdateMessage struct {
// The chat id of the private group chat
ChatId string `protobuf:"bytes,1,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
// A list of events for this group chat, first x bytes are the signature, then is a
// protobuf encoded MembershipUpdateEvent
Events [][]byte `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"`
// An optional chat message
//
// Types that are valid to be assigned to ChatEntity:
//
// *MembershipUpdateMessage_Message
// *MembershipUpdateMessage_EmojiReaction
ChatEntity isMembershipUpdateMessage_ChatEntity `protobuf_oneof:"chat_entity"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *MembershipUpdateMessage) Reset() { *m = MembershipUpdateMessage{} }
func (m *MembershipUpdateMessage) String() string { return proto.CompactTextString(m) }
func (*MembershipUpdateMessage) ProtoMessage() {}
func (*MembershipUpdateMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_8d37dd0dc857a6be, []int{1}
}
func (m *MembershipUpdateMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MembershipUpdateMessage.Unmarshal(m, b)
}
func (m *MembershipUpdateMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MembershipUpdateMessage.Marshal(b, m, deterministic)
}
func (m *MembershipUpdateMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_MembershipUpdateMessage.Merge(m, src)
}
func (m *MembershipUpdateMessage) XXX_Size() int {
return xxx_messageInfo_MembershipUpdateMessage.Size(m)
}
func (m *MembershipUpdateMessage) XXX_DiscardUnknown() {
xxx_messageInfo_MembershipUpdateMessage.DiscardUnknown(m)
}
var xxx_messageInfo_MembershipUpdateMessage proto.InternalMessageInfo
func (m *MembershipUpdateMessage) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func (m *MembershipUpdateMessage) GetEvents() [][]byte {
if m != nil {
return m.Events
}
return nil
}
type isMembershipUpdateMessage_ChatEntity interface {
isMembershipUpdateMessage_ChatEntity()
}
type MembershipUpdateMessage_Message struct {
Message *ChatMessage `protobuf:"bytes,3,opt,name=message,proto3,oneof"`
}
type MembershipUpdateMessage_EmojiReaction struct {
EmojiReaction *EmojiReaction `protobuf:"bytes,4,opt,name=emoji_reaction,json=emojiReaction,proto3,oneof"`
}
func (*MembershipUpdateMessage_Message) isMembershipUpdateMessage_ChatEntity() {}
func (*MembershipUpdateMessage_EmojiReaction) isMembershipUpdateMessage_ChatEntity() {}
func (m *MembershipUpdateMessage) GetChatEntity() isMembershipUpdateMessage_ChatEntity {
if m != nil {
return m.ChatEntity
}
return nil
}
func (m *MembershipUpdateMessage) GetMessage() *ChatMessage {
if x, ok := m.GetChatEntity().(*MembershipUpdateMessage_Message); ok {
return x.Message
}
return nil
}
func (m *MembershipUpdateMessage) GetEmojiReaction() *EmojiReaction {
if x, ok := m.GetChatEntity().(*MembershipUpdateMessage_EmojiReaction); ok {
return x.EmojiReaction
}
return nil
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*MembershipUpdateMessage) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*MembershipUpdateMessage_Message)(nil),
(*MembershipUpdateMessage_EmojiReaction)(nil),
}
}
func init() {
proto.RegisterEnum("protobuf.MembershipUpdateEvent_EventType", MembershipUpdateEvent_EventType_name, MembershipUpdateEvent_EventType_value)
proto.RegisterType((*MembershipUpdateEvent)(nil), "protobuf.MembershipUpdateEvent")
proto.RegisterType((*MembershipUpdateMessage)(nil), "protobuf.MembershipUpdateMessage")
}
func init() {
proto.RegisterFile("membership_update_message.proto", fileDescriptor_8d37dd0dc857a6be)
}
var fileDescriptor_8d37dd0dc857a6be = []byte{
// 443 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x52, 0xd1, 0x8e, 0x93, 0x40,
0x14, 0x2d, 0x5b, 0x4a, 0x97, 0x4b, 0xdb, 0xe0, 0xcd, 0xae, 0x25, 0xfb, 0x22, 0xe9, 0x13, 0xbe,
0x60, 0xac, 0x8f, 0xc6, 0x44, 0x0a, 0x93, 0x6d, 0x55, 0x20, 0x19, 0xbb, 0x9a, 0xf8, 0x42, 0x68,
0x3b, 0x6e, 0xd1, 0xa5, 0x90, 0x76, 0xd6, 0xa4, 0xbf, 0xe0, 0x5f, 0xf9, 0x03, 0x7e, 0x93, 0x99,
0x01, 0x8a, 0x35, 0xbe, 0xc0, 0x9c, 0x73, 0xe7, 0x9c, 0x39, 0xcc, 0x01, 0x9e, 0xe5, 0x2c, 0x5f,
0xb1, 0xfd, 0x61, 0x9b, 0x95, 0xc9, 0x63, 0xb9, 0x49, 0x39, 0x4b, 0x72, 0x76, 0x38, 0xa4, 0xf7,
0xcc, 0x2d, 0xf7, 0x05, 0x2f, 0xf0, 0x52, 0xbe, 0x56, 0x8f, 0x5f, 0x6f, 0x70, 0xbd, 0x4d, 0xf9,
0xf9, 0xf4, 0xe6, 0x8a, 0xe5, 0xc5, 0xb7, 0x2c, 0xd9, 0xb3, 0x74, 0xcd, 0xb3, 0x62, 0x57, 0xb1,
0x93, 0x9f, 0x5d, 0xb8, 0x0e, 0x4f, 0xbe, 0x77, 0xd2, 0x96, 0xfc, 0x60, 0x3b, 0x8e, 0x57, 0xd0,
0x5b, 0x3f, 0x14, 0xeb, 0xef, 0x96, 0x62, 0x2b, 0x8e, 0x4a, 0x2b, 0x80, 0x16, 0xf4, 0xeb, 0x18,
0xd6, 0x85, 0xdd, 0x75, 0x74, 0xda, 0x40, 0x44, 0x50, 0x77, 0x69, 0xce, 0xac, 0xae, 0xad, 0x38,
0x3a, 0x95, 0x6b, 0x7c, 0x03, 0x2a, 0x3f, 0x96, 0xcc, 0x52, 0x6d, 0xc5, 0x19, 0x4d, 0x9f, 0xbb,
0x4d, 0x40, 0xf7, 0xbf, 0x47, 0xba, 0xf2, 0xb9, 0x3c, 0x96, 0x8c, 0x4a, 0x99, 0x8c, 0x50, 0x3c,
0x14, 0x7b, 0xab, 0x27, 0x3d, 0x2b, 0x20, 0xd8, 0x2c, 0x4f, 0xef, 0x99, 0xa5, 0xd9, 0x8a, 0x33,
0xa0, 0x15, 0x98, 0xfc, 0x52, 0x40, 0x3f, 0xe9, 0xd1, 0x80, 0xfe, 0x5d, 0xf4, 0x3e, 0x8a, 0x3f,
0x47, 0x66, 0x07, 0x4d, 0x18, 0xf8, 0x73, 0x6f, 0x99, 0xf8, 0x94, 0x78, 0x4b, 0x12, 0x98, 0x8a,
0x60, 0x22, 0x2f, 0x24, 0x89, 0x3f, 0xf7, 0xa2, 0x5b, 0x12, 0x98, 0x17, 0xf8, 0x04, 0x86, 0x21,
0x09, 0x67, 0x84, 0x7e, 0x4c, 0xbc, 0x20, 0x20, 0x81, 0xd9, 0x6d, 0xa9, 0xe4, 0x5d, 0xbc, 0x88,
0x48, 0x60, 0xaa, 0x88, 0x30, 0xaa, 0x29, 0x4a, 0xc2, 0xf8, 0x13, 0x09, 0xcc, 0x9e, 0xf0, 0xf2,
0x82, 0x70, 0x11, 0x35, 0x42, 0x4d, 0x08, 0x25, 0x73, 0xda, 0xd4, 0x17, 0x94, 0x1f, 0x7f, 0x88,
0xe9, 0xe9, 0xc4, 0x4b, 0x41, 0x2d, 0x42, 0xef, 0xb6, 0x0d, 0xa1, 0x4f, 0x7e, 0x2b, 0x30, 0xfe,
0xf7, 0x66, 0xc2, 0xaa, 0x44, 0x1c, 0x43, 0x5f, 0x96, 0x9a, 0x6d, 0x64, 0x21, 0x3a, 0xd5, 0x04,
0x5c, 0x6c, 0xf0, 0x29, 0x68, 0x4c, 0x7c, 0x77, 0x55, 0xc8, 0x80, 0xd6, 0x08, 0x5f, 0x8a, 0xa6,
0xa4, 0x56, 0x56, 0x62, 0x4c, 0xaf, 0xdb, 0xeb, 0xf7, 0xb7, 0x29, 0xaf, 0x8d, 0xe7, 0x1d, 0xda,
0xec, 0xc3, 0xb7, 0x30, 0x3a, 0xff, 0x49, 0x64, 0x71, 0xc6, 0x74, 0xdc, 0x2a, 0x89, 0x98, 0xd3,
0x7a, 0x3c, 0xef, 0xd0, 0x21, 0xfb, 0x9b, 0x98, 0x0d, 0xc1, 0x90, 0x29, 0xd9, 0x8e, 0x67, 0xfc,
0x38, 0x1b, 0x7e, 0x31, 0xdc, 0x17, 0xaf, 0x1b, 0xf1, 0x4a, 0x93, 0xab, 0x57, 0x7f, 0x02, 0x00,
0x00, 0xff, 0xff, 0x1e, 0xc9, 0x99, 0x52, 0xca, 0x02, 0x00, 0x00,
}

View File

@@ -0,0 +1,52 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "chat_message.proto";
import "emoji_reaction.proto";
message MembershipUpdateEvent {
// Lamport timestamp of the event
uint64 clock = 1;
// List of public keys of objects of the action
repeated string members = 2;
// Name of the chat for the CHAT_CREATED/NAME_CHANGED event types
string name = 3;
// The type of the event
EventType type = 4;
// Color of the chat for the CHAT_CREATED/COLOR_CHANGED event types
string color = 5;
// Chat image
bytes image = 6;
enum EventType {
UNKNOWN = 0;
CHAT_CREATED = 1;
NAME_CHANGED = 2;
MEMBERS_ADDED = 3;
MEMBER_JOINED = 4;
MEMBER_REMOVED = 5;
ADMINS_ADDED = 6;
ADMIN_REMOVED = 7;
COLOR_CHANGED = 8;
IMAGE_CHANGED = 9;
}
}
// MembershipUpdateMessage is a message used to propagate information
// about group membership changes.
// For more information, see https://github.com/status-im/specs/blob/master/status-group-chats-spec.md.
message MembershipUpdateMessage {
// The chat id of the private group chat
string chat_id = 1;
// A list of events for this group chat, first x bytes are the signature, then is a
// protobuf encoded MembershipUpdateEvent
repeated bytes events = 2;
// An optional chat message
oneof chat_entity {
ChatMessage message = 3;
EmojiReaction emoji_reaction = 4;
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,439 @@
syntax = "proto3";
import "chat_identity.proto";
import "sync_settings.proto";
import 'application_metadata_message.proto';
import 'communities.proto';
option go_package = "./;protobuf";
package protobuf;
/* `FetchingBackedUpDataDetails` is used to describe how many messages a single backup data structure consists of */
message FetchingBackedUpDataDetails {
uint32 data_number = 1;
uint32 total_number = 2;
}
message Backup {
uint64 clock = 1;
string id = 2;
/* this is what we already had */
repeated SyncInstallationContactV2 contacts = 3;
repeated SyncInstallationCommunity communities = 4;
/* newly added details to be backed up to and fetched from waku */
FetchingBackedUpDataDetails contactsDetails = 5;
FetchingBackedUpDataDetails communitiesDetails = 6;
BackedUpProfile profile = 7;
FetchingBackedUpDataDetails profileDetails = 8;
SyncSetting setting = 9;
FetchingBackedUpDataDetails settingsDetails = 10;
SyncKeypair keypair = 11;
FetchingBackedUpDataDetails keypairDetails = 12;
SyncAccount watchOnlyAccount = 13;
FetchingBackedUpDataDetails watchOnlyAccountDetails = 14;
repeated SyncChat chats = 15;
FetchingBackedUpDataDetails chatsDetails = 16;
}
message MultiAccount {
string name = 1;
int64 timestamp = 2;
string identicon = 3;
repeated ColorHash color_hash = 4;
int64 color_id = 5;
string keycard_pairing = 6;
string key_uid = 7;
repeated IdentityImage images = 8;
string customization_color = 9;
uint64 customization_color_clock = 10;
message ColorHash {
repeated int64 index = 1;
}
message IdentityImage {
string key_uid = 1;
string name = 2;
bytes payload = 3;
int64 width = 4;
int64 height = 5;
int64 filesize = 6;
int64 resize_target = 7;
uint64 clock = 8;
}
}
message LocalPairingPayload {
repeated Key keys = 1;
MultiAccount multiaccount = 2;
string password = 3;
string chatKey = 4;
string keycardPairings = 5;
message Key {
string name = 1;
bytes data = 2;
}
}
message LocalPairingPeerHello {
int32 pairing_version = 1;
bytes peer_id = 2;
string device_name = 3;
string device_type = 4;
bytes signature = 5;
}
message SyncPairInstallation {
uint64 clock = 1;
string installation_id = 2;
string device_type = 3;
string name = 4;
// following fields used for local pairing
uint32 version = 5;
}
message SyncInstallationContactV2 {
uint64 last_updated_locally = 1;
string id = 2;
string profile_image = 3;
string ens_name = 4;
uint64 last_updated = 5;
repeated string system_tags = 6;
string local_nickname = 7;
bool added = 9;
bool blocked = 10;
bool muted = 11;
bool removed = 12;
bool has_added_us = 13;
int64 verification_status = 14;
int64 trust_status = 15;
int64 contact_request_local_state = 16;
int64 contact_request_local_clock = 17;
int64 contact_request_remote_state = 18;
int64 contact_request_remote_clock = 19;
string display_name = 20;
}
message SyncInstallationAccount {
uint64 clock = 1;
string profile_image = 2;
uint64 last_updated = 3;
}
message SyncInstallationCommunity {
uint64 clock = 1;
bytes id = 2;
// Don't sync private_key because we want to have only one control node
bytes private_key = 3 [deprecated = true];
bytes description = 4;
bool joined = 5;
bool verified = 6;
bool muted = 7;
repeated SyncCommunityRequestsToJoin requests_to_join = 8;
SyncCommunitySettings settings = 9;
bool encrypted = 10;
bool spectated = 11;
bytes encryption_keys = 12;
SyncCommunityControlNode control_node = 13;
int64 joined_at = 14;
int64 last_opened_at = 15;
}
message SyncCommunityRequestsToJoin {
bytes id = 1;
string public_key = 2;
uint64 clock = 3;
string ens_name = 4;
string chat_id = 5;
bytes community_id = 6;
uint64 state = 7;
repeated RevealedAccount revealed_accounts = 8;
}
message SyncCommunityControlNode {
// Lamport timestamp of control node change
uint64 clock = 1;
// The device id of the control node
// Empty if there is no control node
string installation_id = 2;
}
message SyncChat {
string id = 1;
uint32 chat_type = 2;
string name = 3;
repeated MembershipUpdateEvents membershipUpdateEvents = 4;
bool active = 5;
uint64 clock = 6;
bool muted = 7;
}
message MembershipUpdateEvents {
uint64 clock = 1;
uint32 type = 2;
repeated string members = 3;
string name = 4;
bytes signature = 5;
string chat_id = 6;
string from = 7;
bytes raw_payload = 8;
string color = 9;
bytes image = 10;
}
message SyncChatRemoved {
uint64 clock = 1;
string id = 2;
}
message SyncChatMessagesRead {
uint64 clock = 1;
string id = 2;
}
message SyncActivityCenterRead {
uint64 clock = 1;
repeated bytes ids = 2;
}
message SyncActivityCenterAccepted {
uint64 clock = 1;
repeated bytes ids = 2;
}
message SyncActivityCenterDismissed {
uint64 clock = 1;
repeated bytes ids = 2;
}
message SyncActivityCenterDeleted {
uint64 clock = 1;
repeated bytes ids = 2;
}
message SyncActivityCenterUnread {
uint64 clock = 1;
repeated bytes ids = 2;
}
message SyncActivityCenterCommunityRequestDecision {
uint64 clock = 1;
bytes id = 2;
uint32 membership_status = 3;
enum community_request_decision {
ACCEPTED = 0;
DECLINED = 1;
}
community_request_decision decision = 4;
}
message SyncBookmark {
uint64 clock = 1;
string url = 2;
string name = 3;
string image_url = 4;
bool removed = 5;
uint64 deleted_at = 6;
}
message SyncEnsUsernameDetail {
uint64 clock = 1;
string username = 2;
uint64 chain_id = 3;
bool removed = 4;
}
message SyncClearHistory {
string chat_id = 1;
uint64 cleared_at = 2;
}
message SyncProfilePicture {
string name = 1;
bytes payload = 2;
uint32 width = 3;
uint32 height = 4;
uint32 file_size = 5;
uint32 resize_target = 6;
uint64 clock = 7;
}
message SyncProfilePictures {
string key_uid = 1;
repeated SyncProfilePicture pictures = 2;
}
message SyncAccount {
uint64 clock = 1;
bytes address = 2;
string key_uid = 3;
bytes public_key = 4;
string path = 5;
string name = 6;
string color_id = 7;
string emoji = 8;
bool wallet = 9;
bool chat = 10;
bool hidden = 11;
bool removed = 12;
int64 position = 13;
string prodPreferredChainIDs = 14;
string testPreferredChainIDs = 15;
string operable = 16;
}
message SyncKeypair {
uint64 clock = 1;
string key_uid = 2;
string name = 3;
string type = 4;
string derived_from = 5;
uint64 last_used_derivation_index = 6;
string synced_from = 7;
repeated SyncAccount accounts = 8;
repeated SyncKeycard keycards = 9;
bool removed = 10;
bytes keycard_pairings = 11;
}
// this message is used for syncing accounts positions only, for syncing any other info consider
// `SyncAccount` or `SyncKeypair` message
message SyncAccountsPositions {
uint64 clock = 1;
repeated SyncAccount accounts = 2;
}
message SyncSavedAddress {
reserved 3;
reserved 4;
bytes address = 1;
string name = 2;
bool removed = 5;
uint64 update_clock = 7;
string chain_short_names = 8;
string ens = 9;
bool is_test = 10;
string color = 11;
}
message SyncCommunitySettings {
uint64 clock = 1;
string community_id = 2;
bool history_archive_support_enabled = 3;
}
message SyncTrustedUser {
uint64 clock = 1;
string id = 2;
TrustStatus status = 3;
enum TrustStatus {
UNKNOWN = 0;
TRUSTED = 1;
UNTRUSTWORTHY = 2;
}
}
message SyncVerificationRequest {
uint64 clock = 1;
string from = 2;
string to = 3;
string challenge = 4;
uint64 requested_at = 5;
string response = 6;
uint64 replied_at = 7;
VerificationStatus verification_status = 8;
string id = 9;
enum VerificationStatus {
UNKNOWN = 0;
PENDING = 1;
ACCEPTED = 2;
DECLINED = 3;
CANCELED = 4;
}
}
message SyncContactRequestDecision {
uint64 clock = 1;
string requestId = 2;
DecisionStatus decision_status = 3;
enum DecisionStatus {
ACCEPTED = 0;
DECLINED = 1;
}
}
/* `BackedUpProfile` is used to describe profile of logged in user */
message BackedUpProfile {
string key_uid = 1;
string display_name = 2;
uint64 display_name_clock = 3;
repeated SyncProfilePicture pictures = 4;
SyncSocialLinks social_links = 5;
repeated SyncEnsUsernameDetail ens_username_details = 6;
}
message RawMessage {
bytes payload = 1;
ApplicationMetadataMessage.Type messageType = 2;
}
message SyncRawMessage {
repeated RawMessage rawMessages = 1;
// we need these to be able to login
bytes subAccountsJsonBytes = 2;
bytes settingsJsonBytes = 3;
}
message SyncKeycard {
string uid = 1;
string name = 2;
bool locked = 3;
string key_uid = 4;
repeated bytes addresses = 5;
uint64 position = 6;
}
message SyncSocialLinks {
repeated SocialLink social_links = 1;
uint64 clock = 2;
}
message SyncAccountCustomizationColor {
uint64 updated_at = 1;
string customization_color = 2;
string key_uid = 3;
}
message TokenPreferences {
string key = 1;
int64 position = 2;
int64 groupPosition = 3;
bool visible = 4;
string communityId = 5;
}
message SyncTokenPreferences {
uint64 clock = 1;
bool testnet = 2;
repeated TokenPreferences preferences = 3;
}
message CollectiblePreferences {
int64 type = 1;
string key = 2;
int64 position = 3;
bool visible = 4;
}
message SyncCollectiblePreferences {
uint64 clock = 1;
bool testnet = 2;
repeated CollectiblePreferences preferences = 3;
}

View File

@@ -0,0 +1,117 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: pin_message.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type PinMessage struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
MessageId string `protobuf:"bytes,2,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
Pinned bool `protobuf:"varint,4,opt,name=pinned,proto3" json:"pinned,omitempty"`
// The type of message (public/one-to-one/private-group-chat)
MessageType MessageType `protobuf:"varint,5,opt,name=message_type,json=messageType,proto3,enum=protobuf.MessageType" json:"message_type,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PinMessage) Reset() { *m = PinMessage{} }
func (m *PinMessage) String() string { return proto.CompactTextString(m) }
func (*PinMessage) ProtoMessage() {}
func (*PinMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_b3c2ad1be7128a0a, []int{0}
}
func (m *PinMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PinMessage.Unmarshal(m, b)
}
func (m *PinMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PinMessage.Marshal(b, m, deterministic)
}
func (m *PinMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_PinMessage.Merge(m, src)
}
func (m *PinMessage) XXX_Size() int {
return xxx_messageInfo_PinMessage.Size(m)
}
func (m *PinMessage) XXX_DiscardUnknown() {
xxx_messageInfo_PinMessage.DiscardUnknown(m)
}
var xxx_messageInfo_PinMessage proto.InternalMessageInfo
func (m *PinMessage) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *PinMessage) GetMessageId() string {
if m != nil {
return m.MessageId
}
return ""
}
func (m *PinMessage) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func (m *PinMessage) GetPinned() bool {
if m != nil {
return m.Pinned
}
return false
}
func (m *PinMessage) GetMessageType() MessageType {
if m != nil {
return m.MessageType
}
return MessageType_UNKNOWN_MESSAGE_TYPE
}
func init() {
proto.RegisterType((*PinMessage)(nil), "protobuf.PinMessage")
}
func init() {
proto.RegisterFile("pin_message.proto", fileDescriptor_b3c2ad1be7128a0a)
}
var fileDescriptor_b3c2ad1be7128a0a = []byte{
// 192 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0x2c, 0xc8, 0xcc, 0x8b,
0xcf, 0x4d, 0x2d, 0x2e, 0x4e, 0x4c, 0x4f, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x00,
0x53, 0x49, 0xa5, 0x69, 0x52, 0xdc, 0xa9, 0x79, 0xa5, 0xb9, 0xc5, 0x10, 0x61, 0xa5, 0x35, 0x8c,
0x5c, 0x5c, 0x01, 0x99, 0x79, 0xbe, 0x10, 0xb5, 0x42, 0x22, 0x5c, 0xac, 0xc9, 0x39, 0xf9, 0xc9,
0xd9, 0x12, 0x8c, 0x0a, 0x8c, 0x1a, 0x2c, 0x41, 0x10, 0x8e, 0x90, 0x2c, 0x17, 0x17, 0xd4, 0xb0,
0xf8, 0xcc, 0x14, 0x09, 0x26, 0x05, 0x46, 0x0d, 0xce, 0x20, 0x4e, 0xa8, 0x88, 0x67, 0x8a, 0x90,
0x38, 0x17, 0x7b, 0x72, 0x46, 0x62, 0x09, 0x48, 0x8e, 0x19, 0x2c, 0xc7, 0x06, 0xe2, 0x7a, 0xa6,
0x08, 0x89, 0x71, 0xb1, 0x15, 0x64, 0xe6, 0xe5, 0xa5, 0xa6, 0x48, 0xb0, 0x28, 0x30, 0x6a, 0x70,
0x04, 0x41, 0x79, 0x42, 0x16, 0x5c, 0x3c, 0x30, 0xf3, 0x4a, 0x2a, 0x0b, 0x52, 0x25, 0x58, 0x15,
0x18, 0x35, 0xf8, 0x8c, 0x44, 0xf5, 0x60, 0x4e, 0xd4, 0x83, 0x3a, 0x27, 0xa4, 0xb2, 0x20, 0x35,
0x88, 0x3b, 0x17, 0xc1, 0x71, 0xe2, 0x8d, 0xe2, 0xd6, 0xd3, 0xb7, 0x86, 0xa9, 0x4b, 0x62, 0x03,
0xb3, 0x8c, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0x78, 0x7a, 0xb9, 0x5d, 0xf0, 0x00, 0x00, 0x00,
}

View File

@@ -0,0 +1,15 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "enums.proto";
message PinMessage {
uint64 clock = 1;
string message_id = 2;
string chat_id = 3;
bool pinned = 4;
// The type of message (public/one-to-one/private-group-chat)
MessageType message_type = 5;
}

View File

@@ -0,0 +1,567 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: profile_showcase.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type ProfileShowcaseCommunity struct {
CommunityId string `protobuf:"bytes,1,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
Order uint32 `protobuf:"varint,2,opt,name=order,proto3" json:"order,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcaseCommunity) Reset() { *m = ProfileShowcaseCommunity{} }
func (m *ProfileShowcaseCommunity) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcaseCommunity) ProtoMessage() {}
func (*ProfileShowcaseCommunity) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{0}
}
func (m *ProfileShowcaseCommunity) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcaseCommunity.Unmarshal(m, b)
}
func (m *ProfileShowcaseCommunity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcaseCommunity.Marshal(b, m, deterministic)
}
func (m *ProfileShowcaseCommunity) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcaseCommunity.Merge(m, src)
}
func (m *ProfileShowcaseCommunity) XXX_Size() int {
return xxx_messageInfo_ProfileShowcaseCommunity.Size(m)
}
func (m *ProfileShowcaseCommunity) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcaseCommunity.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcaseCommunity proto.InternalMessageInfo
func (m *ProfileShowcaseCommunity) GetCommunityId() string {
if m != nil {
return m.CommunityId
}
return ""
}
func (m *ProfileShowcaseCommunity) GetOrder() uint32 {
if m != nil {
return m.Order
}
return 0
}
type ProfileShowcaseAccount struct {
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
ColorId string `protobuf:"bytes,3,opt,name=color_id,json=colorId,proto3" json:"color_id,omitempty"`
Emoji string `protobuf:"bytes,4,opt,name=emoji,proto3" json:"emoji,omitempty"`
Order uint32 `protobuf:"varint,5,opt,name=order,proto3" json:"order,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcaseAccount) Reset() { *m = ProfileShowcaseAccount{} }
func (m *ProfileShowcaseAccount) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcaseAccount) ProtoMessage() {}
func (*ProfileShowcaseAccount) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{1}
}
func (m *ProfileShowcaseAccount) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcaseAccount.Unmarshal(m, b)
}
func (m *ProfileShowcaseAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcaseAccount.Marshal(b, m, deterministic)
}
func (m *ProfileShowcaseAccount) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcaseAccount.Merge(m, src)
}
func (m *ProfileShowcaseAccount) XXX_Size() int {
return xxx_messageInfo_ProfileShowcaseAccount.Size(m)
}
func (m *ProfileShowcaseAccount) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcaseAccount.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcaseAccount proto.InternalMessageInfo
func (m *ProfileShowcaseAccount) GetAddress() string {
if m != nil {
return m.Address
}
return ""
}
func (m *ProfileShowcaseAccount) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *ProfileShowcaseAccount) GetColorId() string {
if m != nil {
return m.ColorId
}
return ""
}
func (m *ProfileShowcaseAccount) GetEmoji() string {
if m != nil {
return m.Emoji
}
return ""
}
func (m *ProfileShowcaseAccount) GetOrder() uint32 {
if m != nil {
return m.Order
}
return 0
}
type ProfileShowcaseCollectible struct {
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"` // Deprecated: Do not use.
Order uint32 `protobuf:"varint,2,opt,name=order,proto3" json:"order,omitempty"`
ContractAddress string `protobuf:"bytes,3,opt,name=contract_address,json=contractAddress,proto3" json:"contract_address,omitempty"`
CommunityId string `protobuf:"bytes,4,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
ChainId uint64 `protobuf:"varint,5,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"`
TokenId string `protobuf:"bytes,6,opt,name=token_id,json=tokenId,proto3" json:"token_id,omitempty"`
AccountAddress string `protobuf:"bytes,7,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcaseCollectible) Reset() { *m = ProfileShowcaseCollectible{} }
func (m *ProfileShowcaseCollectible) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcaseCollectible) ProtoMessage() {}
func (*ProfileShowcaseCollectible) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{2}
}
func (m *ProfileShowcaseCollectible) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcaseCollectible.Unmarshal(m, b)
}
func (m *ProfileShowcaseCollectible) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcaseCollectible.Marshal(b, m, deterministic)
}
func (m *ProfileShowcaseCollectible) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcaseCollectible.Merge(m, src)
}
func (m *ProfileShowcaseCollectible) XXX_Size() int {
return xxx_messageInfo_ProfileShowcaseCollectible.Size(m)
}
func (m *ProfileShowcaseCollectible) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcaseCollectible.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcaseCollectible proto.InternalMessageInfo
// Deprecated: Do not use.
func (m *ProfileShowcaseCollectible) GetUid() string {
if m != nil {
return m.Uid
}
return ""
}
func (m *ProfileShowcaseCollectible) GetOrder() uint32 {
if m != nil {
return m.Order
}
return 0
}
func (m *ProfileShowcaseCollectible) GetContractAddress() string {
if m != nil {
return m.ContractAddress
}
return ""
}
func (m *ProfileShowcaseCollectible) GetCommunityId() string {
if m != nil {
return m.CommunityId
}
return ""
}
func (m *ProfileShowcaseCollectible) GetChainId() uint64 {
if m != nil {
return m.ChainId
}
return 0
}
func (m *ProfileShowcaseCollectible) GetTokenId() string {
if m != nil {
return m.TokenId
}
return ""
}
func (m *ProfileShowcaseCollectible) GetAccountAddress() string {
if m != nil {
return m.AccountAddress
}
return ""
}
type ProfileShowcaseVerifiedToken struct {
Symbol string `protobuf:"bytes,1,opt,name=symbol,proto3" json:"symbol,omitempty"`
Order uint32 `protobuf:"varint,2,opt,name=order,proto3" json:"order,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcaseVerifiedToken) Reset() { *m = ProfileShowcaseVerifiedToken{} }
func (m *ProfileShowcaseVerifiedToken) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcaseVerifiedToken) ProtoMessage() {}
func (*ProfileShowcaseVerifiedToken) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{3}
}
func (m *ProfileShowcaseVerifiedToken) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcaseVerifiedToken.Unmarshal(m, b)
}
func (m *ProfileShowcaseVerifiedToken) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcaseVerifiedToken.Marshal(b, m, deterministic)
}
func (m *ProfileShowcaseVerifiedToken) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcaseVerifiedToken.Merge(m, src)
}
func (m *ProfileShowcaseVerifiedToken) XXX_Size() int {
return xxx_messageInfo_ProfileShowcaseVerifiedToken.Size(m)
}
func (m *ProfileShowcaseVerifiedToken) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcaseVerifiedToken.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcaseVerifiedToken proto.InternalMessageInfo
func (m *ProfileShowcaseVerifiedToken) GetSymbol() string {
if m != nil {
return m.Symbol
}
return ""
}
func (m *ProfileShowcaseVerifiedToken) GetOrder() uint32 {
if m != nil {
return m.Order
}
return 0
}
type ProfileShowcaseUnverifiedToken struct {
ContractAddress string `protobuf:"bytes,1,opt,name=contract_address,json=contractAddress,proto3" json:"contract_address,omitempty"`
Order uint32 `protobuf:"varint,2,opt,name=order,proto3" json:"order,omitempty"`
ChainId uint64 `protobuf:"varint,3,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"`
CommunityId string `protobuf:"bytes,4,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcaseUnverifiedToken) Reset() { *m = ProfileShowcaseUnverifiedToken{} }
func (m *ProfileShowcaseUnverifiedToken) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcaseUnverifiedToken) ProtoMessage() {}
func (*ProfileShowcaseUnverifiedToken) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{4}
}
func (m *ProfileShowcaseUnverifiedToken) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcaseUnverifiedToken.Unmarshal(m, b)
}
func (m *ProfileShowcaseUnverifiedToken) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcaseUnverifiedToken.Marshal(b, m, deterministic)
}
func (m *ProfileShowcaseUnverifiedToken) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcaseUnverifiedToken.Merge(m, src)
}
func (m *ProfileShowcaseUnverifiedToken) XXX_Size() int {
return xxx_messageInfo_ProfileShowcaseUnverifiedToken.Size(m)
}
func (m *ProfileShowcaseUnverifiedToken) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcaseUnverifiedToken.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcaseUnverifiedToken proto.InternalMessageInfo
func (m *ProfileShowcaseUnverifiedToken) GetContractAddress() string {
if m != nil {
return m.ContractAddress
}
return ""
}
func (m *ProfileShowcaseUnverifiedToken) GetOrder() uint32 {
if m != nil {
return m.Order
}
return 0
}
func (m *ProfileShowcaseUnverifiedToken) GetChainId() uint64 {
if m != nil {
return m.ChainId
}
return 0
}
func (m *ProfileShowcaseUnverifiedToken) GetCommunityId() string {
if m != nil {
return m.CommunityId
}
return ""
}
type ProfileShowcaseEntries struct {
Communities []*ProfileShowcaseCommunity `protobuf:"bytes,1,rep,name=communities,proto3" json:"communities,omitempty"`
Accounts []*ProfileShowcaseAccount `protobuf:"bytes,2,rep,name=accounts,proto3" json:"accounts,omitempty"`
Collectibles []*ProfileShowcaseCollectible `protobuf:"bytes,3,rep,name=collectibles,proto3" json:"collectibles,omitempty"`
VerifiedTokens []*ProfileShowcaseVerifiedToken `protobuf:"bytes,4,rep,name=verifiedTokens,proto3" json:"verifiedTokens,omitempty"`
UnverifiedTokens []*ProfileShowcaseUnverifiedToken `protobuf:"bytes,5,rep,name=unverifiedTokens,proto3" json:"unverifiedTokens,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcaseEntries) Reset() { *m = ProfileShowcaseEntries{} }
func (m *ProfileShowcaseEntries) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcaseEntries) ProtoMessage() {}
func (*ProfileShowcaseEntries) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{5}
}
func (m *ProfileShowcaseEntries) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcaseEntries.Unmarshal(m, b)
}
func (m *ProfileShowcaseEntries) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcaseEntries.Marshal(b, m, deterministic)
}
func (m *ProfileShowcaseEntries) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcaseEntries.Merge(m, src)
}
func (m *ProfileShowcaseEntries) XXX_Size() int {
return xxx_messageInfo_ProfileShowcaseEntries.Size(m)
}
func (m *ProfileShowcaseEntries) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcaseEntries.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcaseEntries proto.InternalMessageInfo
func (m *ProfileShowcaseEntries) GetCommunities() []*ProfileShowcaseCommunity {
if m != nil {
return m.Communities
}
return nil
}
func (m *ProfileShowcaseEntries) GetAccounts() []*ProfileShowcaseAccount {
if m != nil {
return m.Accounts
}
return nil
}
func (m *ProfileShowcaseEntries) GetCollectibles() []*ProfileShowcaseCollectible {
if m != nil {
return m.Collectibles
}
return nil
}
func (m *ProfileShowcaseEntries) GetVerifiedTokens() []*ProfileShowcaseVerifiedToken {
if m != nil {
return m.VerifiedTokens
}
return nil
}
func (m *ProfileShowcaseEntries) GetUnverifiedTokens() []*ProfileShowcaseUnverifiedToken {
if m != nil {
return m.UnverifiedTokens
}
return nil
}
type ProfileShowcaseEntriesEncrypted struct {
EncryptedEntries []byte `protobuf:"bytes,1,opt,name=encrypted_entries,json=encryptedEntries,proto3" json:"encrypted_entries,omitempty"`
EncryptionKeys [][]byte `protobuf:"bytes,2,rep,name=encryption_keys,json=encryptionKeys,proto3" json:"encryption_keys,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcaseEntriesEncrypted) Reset() { *m = ProfileShowcaseEntriesEncrypted{} }
func (m *ProfileShowcaseEntriesEncrypted) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcaseEntriesEncrypted) ProtoMessage() {}
func (*ProfileShowcaseEntriesEncrypted) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{6}
}
func (m *ProfileShowcaseEntriesEncrypted) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcaseEntriesEncrypted.Unmarshal(m, b)
}
func (m *ProfileShowcaseEntriesEncrypted) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcaseEntriesEncrypted.Marshal(b, m, deterministic)
}
func (m *ProfileShowcaseEntriesEncrypted) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcaseEntriesEncrypted.Merge(m, src)
}
func (m *ProfileShowcaseEntriesEncrypted) XXX_Size() int {
return xxx_messageInfo_ProfileShowcaseEntriesEncrypted.Size(m)
}
func (m *ProfileShowcaseEntriesEncrypted) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcaseEntriesEncrypted.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcaseEntriesEncrypted proto.InternalMessageInfo
func (m *ProfileShowcaseEntriesEncrypted) GetEncryptedEntries() []byte {
if m != nil {
return m.EncryptedEntries
}
return nil
}
func (m *ProfileShowcaseEntriesEncrypted) GetEncryptionKeys() [][]byte {
if m != nil {
return m.EncryptionKeys
}
return nil
}
type ProfileShowcase struct {
ForEveryone *ProfileShowcaseEntries `protobuf:"bytes,1,opt,name=for_everyone,json=forEveryone,proto3" json:"for_everyone,omitempty"`
ForContacts *ProfileShowcaseEntriesEncrypted `protobuf:"bytes,2,opt,name=for_contacts,json=forContacts,proto3" json:"for_contacts,omitempty"`
ForIdVerifiedContacts *ProfileShowcaseEntriesEncrypted `protobuf:"bytes,3,opt,name=for_id_verified_contacts,json=forIdVerifiedContacts,proto3" json:"for_id_verified_contacts,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ProfileShowcase) Reset() { *m = ProfileShowcase{} }
func (m *ProfileShowcase) String() string { return proto.CompactTextString(m) }
func (*ProfileShowcase) ProtoMessage() {}
func (*ProfileShowcase) Descriptor() ([]byte, []int) {
return fileDescriptor_5bcd51b424a05798, []int{7}
}
func (m *ProfileShowcase) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProfileShowcase.Unmarshal(m, b)
}
func (m *ProfileShowcase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ProfileShowcase.Marshal(b, m, deterministic)
}
func (m *ProfileShowcase) XXX_Merge(src proto.Message) {
xxx_messageInfo_ProfileShowcase.Merge(m, src)
}
func (m *ProfileShowcase) XXX_Size() int {
return xxx_messageInfo_ProfileShowcase.Size(m)
}
func (m *ProfileShowcase) XXX_DiscardUnknown() {
xxx_messageInfo_ProfileShowcase.DiscardUnknown(m)
}
var xxx_messageInfo_ProfileShowcase proto.InternalMessageInfo
func (m *ProfileShowcase) GetForEveryone() *ProfileShowcaseEntries {
if m != nil {
return m.ForEveryone
}
return nil
}
func (m *ProfileShowcase) GetForContacts() *ProfileShowcaseEntriesEncrypted {
if m != nil {
return m.ForContacts
}
return nil
}
func (m *ProfileShowcase) GetForIdVerifiedContacts() *ProfileShowcaseEntriesEncrypted {
if m != nil {
return m.ForIdVerifiedContacts
}
return nil
}
func init() {
proto.RegisterType((*ProfileShowcaseCommunity)(nil), "protobuf.ProfileShowcaseCommunity")
proto.RegisterType((*ProfileShowcaseAccount)(nil), "protobuf.ProfileShowcaseAccount")
proto.RegisterType((*ProfileShowcaseCollectible)(nil), "protobuf.ProfileShowcaseCollectible")
proto.RegisterType((*ProfileShowcaseVerifiedToken)(nil), "protobuf.ProfileShowcaseVerifiedToken")
proto.RegisterType((*ProfileShowcaseUnverifiedToken)(nil), "protobuf.ProfileShowcaseUnverifiedToken")
proto.RegisterType((*ProfileShowcaseEntries)(nil), "protobuf.ProfileShowcaseEntries")
proto.RegisterType((*ProfileShowcaseEntriesEncrypted)(nil), "protobuf.ProfileShowcaseEntriesEncrypted")
proto.RegisterType((*ProfileShowcase)(nil), "protobuf.ProfileShowcase")
}
func init() {
proto.RegisterFile("profile_showcase.proto", fileDescriptor_5bcd51b424a05798)
}
var fileDescriptor_5bcd51b424a05798 = []byte{
// 596 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0xcd, 0x6e, 0xd3, 0x40,
0x10, 0xc7, 0xe5, 0x38, 0x6d, 0xd3, 0x49, 0x9a, 0x84, 0x55, 0x89, 0x0c, 0x42, 0x10, 0x2c, 0x44,
0x53, 0x21, 0x05, 0x09, 0x8e, 0x70, 0x69, 0x43, 0x24, 0x2a, 0x2a, 0x84, 0xb6, 0x85, 0x03, 0x17,
0xcb, 0xb1, 0xd7, 0xea, 0x52, 0x67, 0x37, 0x5a, 0x3b, 0xad, 0xfc, 0x06, 0x1c, 0xe0, 0x19, 0x78,
0x4a, 0xee, 0x68, 0xbf, 0x9c, 0xc4, 0x49, 0x5a, 0x71, 0xb2, 0x67, 0x77, 0xe6, 0x37, 0x33, 0xff,
0x19, 0x1b, 0x7a, 0x33, 0xc1, 0x13, 0x9a, 0x92, 0x20, 0xbb, 0xe2, 0xb7, 0x51, 0x98, 0x91, 0xe1,
0x4c, 0xf0, 0x9c, 0xa3, 0x86, 0x7a, 0x4c, 0xe6, 0x89, 0x7f, 0x01, 0xde, 0x17, 0xed, 0x73, 0x61,
0x5c, 0x46, 0x7c, 0x3a, 0x9d, 0x33, 0x9a, 0x17, 0xe8, 0x39, 0xb4, 0x22, 0x6b, 0x04, 0x34, 0xf6,
0x9c, 0xbe, 0x33, 0xd8, 0xc7, 0xcd, 0xf2, 0xec, 0x2c, 0x46, 0x87, 0xb0, 0xc3, 0x45, 0x4c, 0x84,
0x57, 0xeb, 0x3b, 0x83, 0x03, 0xac, 0x0d, 0xff, 0xb7, 0x03, 0xbd, 0x0a, 0xf5, 0x24, 0x8a, 0xf8,
0x9c, 0xe5, 0xc8, 0x83, 0xbd, 0x30, 0x8e, 0x05, 0xc9, 0x32, 0x83, 0xb3, 0x26, 0x42, 0x50, 0x67,
0xe1, 0x94, 0x28, 0xd2, 0x3e, 0x56, 0xef, 0xe8, 0x11, 0x34, 0x22, 0x9e, 0x72, 0x21, 0xb3, 0xbb,
0xda, 0x5d, 0xd9, 0x3a, 0x33, 0x99, 0xf2, 0x1f, 0xd4, 0xab, 0xab, 0x73, 0x6d, 0x2c, 0xea, 0xd9,
0x59, 0xae, 0xe7, 0xaf, 0x03, 0x8f, 0xd7, 0xba, 0x4c, 0x53, 0x12, 0xe5, 0x74, 0x92, 0x12, 0x74,
0x08, 0xee, 0xdc, 0xb6, 0x77, 0x5a, 0xf3, 0x1c, 0x2c, 0xcd, 0xcd, 0xad, 0xa1, 0x63, 0xe8, 0x46,
0x9c, 0xe5, 0x22, 0x8c, 0xf2, 0xc0, 0x36, 0xa2, 0x2b, 0xeb, 0xd8, 0xf3, 0x13, 0xd3, 0x50, 0x55,
0xbe, 0xfa, 0xba, 0x7c, 0xb2, 0xbf, 0xab, 0x90, 0x32, 0x79, 0x2d, 0x2b, 0xae, 0xe3, 0x3d, 0x65,
0xeb, 0xab, 0x9c, 0x5f, 0x13, 0x75, 0xb5, 0xab, 0x5b, 0x57, 0xf6, 0x59, 0x8c, 0x8e, 0xa0, 0x13,
0x6a, 0x39, 0xcb, 0x12, 0xf6, 0x94, 0x47, 0xdb, 0x1c, 0x9b, 0x0a, 0xfc, 0x73, 0x78, 0x52, 0x69,
0xfb, 0x1b, 0x11, 0x34, 0xa1, 0x24, 0xbe, 0x94, 0x28, 0xd4, 0x83, 0xdd, 0xac, 0x98, 0x4e, 0x78,
0x6a, 0x66, 0x61, 0xac, 0x2d, 0x53, 0xfd, 0xe3, 0xc0, 0xd3, 0x0a, 0xee, 0x2b, 0xbb, 0x59, 0x01,
0x6e, 0x52, 0xc7, 0xd9, 0xac, 0xce, 0x66, 0x79, 0x97, 0x05, 0x71, 0x57, 0x05, 0xb9, 0x5f, 0x4e,
0xff, 0x97, 0xbb, 0xb6, 0x77, 0x63, 0x96, 0x0b, 0x4a, 0x32, 0xf4, 0x01, 0x4a, 0x4f, 0x4a, 0x64,
0x51, 0xee, 0xa0, 0xf9, 0xc6, 0x1f, 0xda, 0xef, 0x60, 0xb8, 0xed, 0x23, 0xc0, 0xcb, 0x61, 0xe8,
0x3d, 0x34, 0x8c, 0xc4, 0x99, 0x57, 0x53, 0x88, 0xfe, 0x56, 0x84, 0xd9, 0x78, 0x5c, 0x46, 0xa0,
0x8f, 0xb2, 0x83, 0x72, 0xed, 0xe4, 0xde, 0x48, 0xc2, 0x8b, 0x3b, 0x8a, 0x28, 0x9d, 0xf1, 0x4a,
0x24, 0xfa, 0x0c, 0xed, 0x15, 0xe1, 0x33, 0xaf, 0xae, 0x58, 0x2f, 0xb7, 0xb2, 0x56, 0x06, 0x8f,
0x2b, 0xd1, 0xe8, 0x12, 0xba, 0x73, 0x56, 0x21, 0xee, 0x28, 0xe2, 0x60, 0x2b, 0xb1, 0x32, 0x7b,
0xbc, 0x46, 0xf0, 0x6f, 0xe1, 0xd9, 0xe6, 0x69, 0x8c, 0x59, 0x24, 0x8a, 0x59, 0x4e, 0x62, 0xf4,
0x0a, 0x1e, 0x10, 0x6b, 0x04, 0x44, 0xdf, 0xaa, 0x8d, 0x69, 0xe1, 0x6e, 0x79, 0x61, 0x67, 0x78,
0x04, 0x1d, 0x73, 0x46, 0x39, 0x0b, 0xae, 0x49, 0xa1, 0x87, 0xd0, 0xc2, 0xed, 0xc5, 0xf1, 0x27,
0x52, 0x64, 0xfe, 0xcf, 0x1a, 0x74, 0x2a, 0x99, 0xd1, 0x08, 0x5a, 0x09, 0x17, 0x01, 0xb9, 0x21,
0xa2, 0xe0, 0x8c, 0xa8, 0x24, 0x77, 0x8d, 0xcf, 0x24, 0xc5, 0xcd, 0x84, 0x8b, 0xb1, 0x09, 0x42,
0xe7, 0x1a, 0x22, 0x77, 0x39, 0x8c, 0xd4, 0x0e, 0x48, 0xc8, 0xf1, 0x7d, 0x90, 0xb2, 0x5f, 0x45,
0x1b, 0x99, 0x68, 0x34, 0x01, 0x2f, 0x51, 0xff, 0xb6, 0xc0, 0x0a, 0xb7, 0x20, 0xbb, 0xff, 0x4b,
0x7e, 0x98, 0xc8, 0xdf, 0xa2, 0x1d, 0xb3, 0xcd, 0x71, 0x7a, 0xf0, 0xbd, 0x39, 0x7c, 0xfd, 0xce,
0x52, 0x26, 0xbb, 0xea, 0xed, 0xed, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa2, 0x77, 0xf8, 0xf3,
0x19, 0x06, 0x00, 0x00,
}

View File

@@ -0,0 +1,58 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message ProfileShowcaseCommunity {
string community_id = 1;
uint32 order = 2;
}
message ProfileShowcaseAccount {
string address = 1;
string name = 2;
string color_id = 3;
string emoji = 4;
uint32 order = 5;
}
message ProfileShowcaseCollectible {
string uid = 1 [deprecated = true];
uint32 order = 2;
string contract_address = 3;
string community_id = 4;
uint64 chain_id = 5;
string token_id = 6;
string account_address = 7;
}
message ProfileShowcaseVerifiedToken {
string symbol = 1;
uint32 order = 2;
}
message ProfileShowcaseUnverifiedToken {
string contract_address = 1;
uint32 order = 2;
uint64 chain_id = 3;
string community_id = 4;
}
message ProfileShowcaseEntries {
repeated ProfileShowcaseCommunity communities = 1;
repeated ProfileShowcaseAccount accounts = 2;
repeated ProfileShowcaseCollectible collectibles = 3;
repeated ProfileShowcaseVerifiedToken verifiedTokens = 4;
repeated ProfileShowcaseUnverifiedToken unverifiedTokens = 5;
}
message ProfileShowcaseEntriesEncrypted {
bytes encrypted_entries = 1;
repeated bytes encryption_keys = 2;
}
message ProfileShowcase {
ProfileShowcaseEntries for_everyone = 1;
ProfileShowcaseEntriesEncrypted for_contacts = 2;
ProfileShowcaseEntriesEncrypted for_id_verified_contacts = 3;
}

View File

@@ -0,0 +1,916 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: push_notifications.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type PushNotificationRegistration_TokenType int32
const (
PushNotificationRegistration_UNKNOWN_TOKEN_TYPE PushNotificationRegistration_TokenType = 0
PushNotificationRegistration_APN_TOKEN PushNotificationRegistration_TokenType = 1
PushNotificationRegistration_FIREBASE_TOKEN PushNotificationRegistration_TokenType = 2
)
var PushNotificationRegistration_TokenType_name = map[int32]string{
0: "UNKNOWN_TOKEN_TYPE",
1: "APN_TOKEN",
2: "FIREBASE_TOKEN",
}
var PushNotificationRegistration_TokenType_value = map[string]int32{
"UNKNOWN_TOKEN_TYPE": 0,
"APN_TOKEN": 1,
"FIREBASE_TOKEN": 2,
}
func (x PushNotificationRegistration_TokenType) String() string {
return proto.EnumName(PushNotificationRegistration_TokenType_name, int32(x))
}
func (PushNotificationRegistration_TokenType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{0, 0}
}
type PushNotificationRegistrationResponse_ErrorType int32
const (
PushNotificationRegistrationResponse_UNKNOWN_ERROR_TYPE PushNotificationRegistrationResponse_ErrorType = 0
PushNotificationRegistrationResponse_MALFORMED_MESSAGE PushNotificationRegistrationResponse_ErrorType = 1
PushNotificationRegistrationResponse_VERSION_MISMATCH PushNotificationRegistrationResponse_ErrorType = 2
PushNotificationRegistrationResponse_UNSUPPORTED_TOKEN_TYPE PushNotificationRegistrationResponse_ErrorType = 3
PushNotificationRegistrationResponse_INTERNAL_ERROR PushNotificationRegistrationResponse_ErrorType = 4
)
var PushNotificationRegistrationResponse_ErrorType_name = map[int32]string{
0: "UNKNOWN_ERROR_TYPE",
1: "MALFORMED_MESSAGE",
2: "VERSION_MISMATCH",
3: "UNSUPPORTED_TOKEN_TYPE",
4: "INTERNAL_ERROR",
}
var PushNotificationRegistrationResponse_ErrorType_value = map[string]int32{
"UNKNOWN_ERROR_TYPE": 0,
"MALFORMED_MESSAGE": 1,
"VERSION_MISMATCH": 2,
"UNSUPPORTED_TOKEN_TYPE": 3,
"INTERNAL_ERROR": 4,
}
func (x PushNotificationRegistrationResponse_ErrorType) String() string {
return proto.EnumName(PushNotificationRegistrationResponse_ErrorType_name, int32(x))
}
func (PushNotificationRegistrationResponse_ErrorType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{1, 0}
}
type PushNotification_PushNotificationType int32
const (
PushNotification_UNKNOWN_PUSH_NOTIFICATION_TYPE PushNotification_PushNotificationType = 0
PushNotification_MESSAGE PushNotification_PushNotificationType = 1
PushNotification_MENTION PushNotification_PushNotificationType = 2
PushNotification_REQUEST_TO_JOIN_COMMUNITY PushNotification_PushNotificationType = 3
)
var PushNotification_PushNotificationType_name = map[int32]string{
0: "UNKNOWN_PUSH_NOTIFICATION_TYPE",
1: "MESSAGE",
2: "MENTION",
3: "REQUEST_TO_JOIN_COMMUNITY",
}
var PushNotification_PushNotificationType_value = map[string]int32{
"UNKNOWN_PUSH_NOTIFICATION_TYPE": 0,
"MESSAGE": 1,
"MENTION": 2,
"REQUEST_TO_JOIN_COMMUNITY": 3,
}
func (x PushNotification_PushNotificationType) String() string {
return proto.EnumName(PushNotification_PushNotificationType_name, int32(x))
}
func (PushNotification_PushNotificationType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{6, 0}
}
type PushNotificationReport_ErrorType int32
const (
PushNotificationReport_UNKNOWN_ERROR_TYPE PushNotificationReport_ErrorType = 0
PushNotificationReport_WRONG_TOKEN PushNotificationReport_ErrorType = 1
PushNotificationReport_INTERNAL_ERROR PushNotificationReport_ErrorType = 2
PushNotificationReport_NOT_REGISTERED PushNotificationReport_ErrorType = 3
)
var PushNotificationReport_ErrorType_name = map[int32]string{
0: "UNKNOWN_ERROR_TYPE",
1: "WRONG_TOKEN",
2: "INTERNAL_ERROR",
3: "NOT_REGISTERED",
}
var PushNotificationReport_ErrorType_value = map[string]int32{
"UNKNOWN_ERROR_TYPE": 0,
"WRONG_TOKEN": 1,
"INTERNAL_ERROR": 2,
"NOT_REGISTERED": 3,
}
func (x PushNotificationReport_ErrorType) String() string {
return proto.EnumName(PushNotificationReport_ErrorType_name, int32(x))
}
func (PushNotificationReport_ErrorType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{8, 0}
}
type PushNotificationRegistration struct {
TokenType PushNotificationRegistration_TokenType `protobuf:"varint,1,opt,name=token_type,json=tokenType,proto3,enum=protobuf.PushNotificationRegistration_TokenType" json:"token_type,omitempty"`
DeviceToken string `protobuf:"bytes,2,opt,name=device_token,json=deviceToken,proto3" json:"device_token,omitempty"`
InstallationId string `protobuf:"bytes,3,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"`
AccessToken string `protobuf:"bytes,4,opt,name=access_token,json=accessToken,proto3" json:"access_token,omitempty"`
Enabled bool `protobuf:"varint,5,opt,name=enabled,proto3" json:"enabled,omitempty"`
Version uint64 `protobuf:"varint,6,opt,name=version,proto3" json:"version,omitempty"`
AllowedKeyList [][]byte `protobuf:"bytes,7,rep,name=allowed_key_list,json=allowedKeyList,proto3" json:"allowed_key_list,omitempty"`
BlockedChatList [][]byte `protobuf:"bytes,8,rep,name=blocked_chat_list,json=blockedChatList,proto3" json:"blocked_chat_list,omitempty"`
Unregister bool `protobuf:"varint,9,opt,name=unregister,proto3" json:"unregister,omitempty"`
Grant []byte `protobuf:"bytes,10,opt,name=grant,proto3" json:"grant,omitempty"`
AllowFromContactsOnly bool `protobuf:"varint,11,opt,name=allow_from_contacts_only,json=allowFromContactsOnly,proto3" json:"allow_from_contacts_only,omitempty"`
ApnTopic string `protobuf:"bytes,12,opt,name=apn_topic,json=apnTopic,proto3" json:"apn_topic,omitempty"`
BlockMentions bool `protobuf:"varint,13,opt,name=block_mentions,json=blockMentions,proto3" json:"block_mentions,omitempty"`
AllowedMentionsChatList [][]byte `protobuf:"bytes,14,rep,name=allowed_mentions_chat_list,json=allowedMentionsChatList,proto3" json:"allowed_mentions_chat_list,omitempty"`
MutedChatList [][]byte `protobuf:"bytes,15,rep,name=muted_chat_list,json=mutedChatList,proto3" json:"muted_chat_list,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationRegistration) Reset() { *m = PushNotificationRegistration{} }
func (m *PushNotificationRegistration) String() string { return proto.CompactTextString(m) }
func (*PushNotificationRegistration) ProtoMessage() {}
func (*PushNotificationRegistration) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{0}
}
func (m *PushNotificationRegistration) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationRegistration.Unmarshal(m, b)
}
func (m *PushNotificationRegistration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationRegistration.Marshal(b, m, deterministic)
}
func (m *PushNotificationRegistration) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationRegistration.Merge(m, src)
}
func (m *PushNotificationRegistration) XXX_Size() int {
return xxx_messageInfo_PushNotificationRegistration.Size(m)
}
func (m *PushNotificationRegistration) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationRegistration.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationRegistration proto.InternalMessageInfo
func (m *PushNotificationRegistration) GetTokenType() PushNotificationRegistration_TokenType {
if m != nil {
return m.TokenType
}
return PushNotificationRegistration_UNKNOWN_TOKEN_TYPE
}
func (m *PushNotificationRegistration) GetDeviceToken() string {
if m != nil {
return m.DeviceToken
}
return ""
}
func (m *PushNotificationRegistration) GetInstallationId() string {
if m != nil {
return m.InstallationId
}
return ""
}
func (m *PushNotificationRegistration) GetAccessToken() string {
if m != nil {
return m.AccessToken
}
return ""
}
func (m *PushNotificationRegistration) GetEnabled() bool {
if m != nil {
return m.Enabled
}
return false
}
func (m *PushNotificationRegistration) GetVersion() uint64 {
if m != nil {
return m.Version
}
return 0
}
func (m *PushNotificationRegistration) GetAllowedKeyList() [][]byte {
if m != nil {
return m.AllowedKeyList
}
return nil
}
func (m *PushNotificationRegistration) GetBlockedChatList() [][]byte {
if m != nil {
return m.BlockedChatList
}
return nil
}
func (m *PushNotificationRegistration) GetUnregister() bool {
if m != nil {
return m.Unregister
}
return false
}
func (m *PushNotificationRegistration) GetGrant() []byte {
if m != nil {
return m.Grant
}
return nil
}
func (m *PushNotificationRegistration) GetAllowFromContactsOnly() bool {
if m != nil {
return m.AllowFromContactsOnly
}
return false
}
func (m *PushNotificationRegistration) GetApnTopic() string {
if m != nil {
return m.ApnTopic
}
return ""
}
func (m *PushNotificationRegistration) GetBlockMentions() bool {
if m != nil {
return m.BlockMentions
}
return false
}
func (m *PushNotificationRegistration) GetAllowedMentionsChatList() [][]byte {
if m != nil {
return m.AllowedMentionsChatList
}
return nil
}
func (m *PushNotificationRegistration) GetMutedChatList() [][]byte {
if m != nil {
return m.MutedChatList
}
return nil
}
type PushNotificationRegistrationResponse struct {
Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
Error PushNotificationRegistrationResponse_ErrorType `protobuf:"varint,2,opt,name=error,proto3,enum=protobuf.PushNotificationRegistrationResponse_ErrorType" json:"error,omitempty"`
RequestId []byte `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationRegistrationResponse) Reset() { *m = PushNotificationRegistrationResponse{} }
func (m *PushNotificationRegistrationResponse) String() string { return proto.CompactTextString(m) }
func (*PushNotificationRegistrationResponse) ProtoMessage() {}
func (*PushNotificationRegistrationResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{1}
}
func (m *PushNotificationRegistrationResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationRegistrationResponse.Unmarshal(m, b)
}
func (m *PushNotificationRegistrationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationRegistrationResponse.Marshal(b, m, deterministic)
}
func (m *PushNotificationRegistrationResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationRegistrationResponse.Merge(m, src)
}
func (m *PushNotificationRegistrationResponse) XXX_Size() int {
return xxx_messageInfo_PushNotificationRegistrationResponse.Size(m)
}
func (m *PushNotificationRegistrationResponse) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationRegistrationResponse.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationRegistrationResponse proto.InternalMessageInfo
func (m *PushNotificationRegistrationResponse) GetSuccess() bool {
if m != nil {
return m.Success
}
return false
}
func (m *PushNotificationRegistrationResponse) GetError() PushNotificationRegistrationResponse_ErrorType {
if m != nil {
return m.Error
}
return PushNotificationRegistrationResponse_UNKNOWN_ERROR_TYPE
}
func (m *PushNotificationRegistrationResponse) GetRequestId() []byte {
if m != nil {
return m.RequestId
}
return nil
}
type ContactCodeAdvertisement struct {
PushNotificationInfo []*PushNotificationQueryInfo `protobuf:"bytes,1,rep,name=push_notification_info,json=pushNotificationInfo,proto3" json:"push_notification_info,omitempty"`
ChatIdentity *ChatIdentity `protobuf:"bytes,2,opt,name=chat_identity,json=chatIdentity,proto3" json:"chat_identity,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ContactCodeAdvertisement) Reset() { *m = ContactCodeAdvertisement{} }
func (m *ContactCodeAdvertisement) String() string { return proto.CompactTextString(m) }
func (*ContactCodeAdvertisement) ProtoMessage() {}
func (*ContactCodeAdvertisement) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{2}
}
func (m *ContactCodeAdvertisement) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContactCodeAdvertisement.Unmarshal(m, b)
}
func (m *ContactCodeAdvertisement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ContactCodeAdvertisement.Marshal(b, m, deterministic)
}
func (m *ContactCodeAdvertisement) XXX_Merge(src proto.Message) {
xxx_messageInfo_ContactCodeAdvertisement.Merge(m, src)
}
func (m *ContactCodeAdvertisement) XXX_Size() int {
return xxx_messageInfo_ContactCodeAdvertisement.Size(m)
}
func (m *ContactCodeAdvertisement) XXX_DiscardUnknown() {
xxx_messageInfo_ContactCodeAdvertisement.DiscardUnknown(m)
}
var xxx_messageInfo_ContactCodeAdvertisement proto.InternalMessageInfo
func (m *ContactCodeAdvertisement) GetPushNotificationInfo() []*PushNotificationQueryInfo {
if m != nil {
return m.PushNotificationInfo
}
return nil
}
func (m *ContactCodeAdvertisement) GetChatIdentity() *ChatIdentity {
if m != nil {
return m.ChatIdentity
}
return nil
}
type PushNotificationQuery struct {
PublicKeys [][]byte `protobuf:"bytes,1,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationQuery) Reset() { *m = PushNotificationQuery{} }
func (m *PushNotificationQuery) String() string { return proto.CompactTextString(m) }
func (*PushNotificationQuery) ProtoMessage() {}
func (*PushNotificationQuery) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{3}
}
func (m *PushNotificationQuery) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationQuery.Unmarshal(m, b)
}
func (m *PushNotificationQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationQuery.Marshal(b, m, deterministic)
}
func (m *PushNotificationQuery) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationQuery.Merge(m, src)
}
func (m *PushNotificationQuery) XXX_Size() int {
return xxx_messageInfo_PushNotificationQuery.Size(m)
}
func (m *PushNotificationQuery) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationQuery.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationQuery proto.InternalMessageInfo
func (m *PushNotificationQuery) GetPublicKeys() [][]byte {
if m != nil {
return m.PublicKeys
}
return nil
}
type PushNotificationQueryInfo struct {
AccessToken string `protobuf:"bytes,1,opt,name=access_token,json=accessToken,proto3" json:"access_token,omitempty"`
InstallationId string `protobuf:"bytes,2,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"`
PublicKey []byte `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
AllowedKeyList [][]byte `protobuf:"bytes,4,rep,name=allowed_key_list,json=allowedKeyList,proto3" json:"allowed_key_list,omitempty"`
Grant []byte `protobuf:"bytes,5,opt,name=grant,proto3" json:"grant,omitempty"`
Version uint64 `protobuf:"varint,6,opt,name=version,proto3" json:"version,omitempty"`
ServerPublicKey []byte `protobuf:"bytes,7,opt,name=server_public_key,json=serverPublicKey,proto3" json:"server_public_key,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationQueryInfo) Reset() { *m = PushNotificationQueryInfo{} }
func (m *PushNotificationQueryInfo) String() string { return proto.CompactTextString(m) }
func (*PushNotificationQueryInfo) ProtoMessage() {}
func (*PushNotificationQueryInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{4}
}
func (m *PushNotificationQueryInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationQueryInfo.Unmarshal(m, b)
}
func (m *PushNotificationQueryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationQueryInfo.Marshal(b, m, deterministic)
}
func (m *PushNotificationQueryInfo) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationQueryInfo.Merge(m, src)
}
func (m *PushNotificationQueryInfo) XXX_Size() int {
return xxx_messageInfo_PushNotificationQueryInfo.Size(m)
}
func (m *PushNotificationQueryInfo) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationQueryInfo.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationQueryInfo proto.InternalMessageInfo
func (m *PushNotificationQueryInfo) GetAccessToken() string {
if m != nil {
return m.AccessToken
}
return ""
}
func (m *PushNotificationQueryInfo) GetInstallationId() string {
if m != nil {
return m.InstallationId
}
return ""
}
func (m *PushNotificationQueryInfo) GetPublicKey() []byte {
if m != nil {
return m.PublicKey
}
return nil
}
func (m *PushNotificationQueryInfo) GetAllowedKeyList() [][]byte {
if m != nil {
return m.AllowedKeyList
}
return nil
}
func (m *PushNotificationQueryInfo) GetGrant() []byte {
if m != nil {
return m.Grant
}
return nil
}
func (m *PushNotificationQueryInfo) GetVersion() uint64 {
if m != nil {
return m.Version
}
return 0
}
func (m *PushNotificationQueryInfo) GetServerPublicKey() []byte {
if m != nil {
return m.ServerPublicKey
}
return nil
}
type PushNotificationQueryResponse struct {
Info []*PushNotificationQueryInfo `protobuf:"bytes,1,rep,name=info,proto3" json:"info,omitempty"`
MessageId []byte `protobuf:"bytes,2,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
Success bool `protobuf:"varint,3,opt,name=success,proto3" json:"success,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationQueryResponse) Reset() { *m = PushNotificationQueryResponse{} }
func (m *PushNotificationQueryResponse) String() string { return proto.CompactTextString(m) }
func (*PushNotificationQueryResponse) ProtoMessage() {}
func (*PushNotificationQueryResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{5}
}
func (m *PushNotificationQueryResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationQueryResponse.Unmarshal(m, b)
}
func (m *PushNotificationQueryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationQueryResponse.Marshal(b, m, deterministic)
}
func (m *PushNotificationQueryResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationQueryResponse.Merge(m, src)
}
func (m *PushNotificationQueryResponse) XXX_Size() int {
return xxx_messageInfo_PushNotificationQueryResponse.Size(m)
}
func (m *PushNotificationQueryResponse) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationQueryResponse.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationQueryResponse proto.InternalMessageInfo
func (m *PushNotificationQueryResponse) GetInfo() []*PushNotificationQueryInfo {
if m != nil {
return m.Info
}
return nil
}
func (m *PushNotificationQueryResponse) GetMessageId() []byte {
if m != nil {
return m.MessageId
}
return nil
}
func (m *PushNotificationQueryResponse) GetSuccess() bool {
if m != nil {
return m.Success
}
return false
}
type PushNotification struct {
AccessToken string `protobuf:"bytes,1,opt,name=access_token,json=accessToken,proto3" json:"access_token,omitempty"`
ChatId []byte `protobuf:"bytes,2,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
PublicKey []byte `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
InstallationId string `protobuf:"bytes,4,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"`
Message []byte `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
Type PushNotification_PushNotificationType `protobuf:"varint,6,opt,name=type,proto3,enum=protobuf.PushNotification_PushNotificationType" json:"type,omitempty"`
Author []byte `protobuf:"bytes,7,opt,name=author,proto3" json:"author,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotification) Reset() { *m = PushNotification{} }
func (m *PushNotification) String() string { return proto.CompactTextString(m) }
func (*PushNotification) ProtoMessage() {}
func (*PushNotification) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{6}
}
func (m *PushNotification) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotification.Unmarshal(m, b)
}
func (m *PushNotification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotification.Marshal(b, m, deterministic)
}
func (m *PushNotification) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotification.Merge(m, src)
}
func (m *PushNotification) XXX_Size() int {
return xxx_messageInfo_PushNotification.Size(m)
}
func (m *PushNotification) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotification.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotification proto.InternalMessageInfo
func (m *PushNotification) GetAccessToken() string {
if m != nil {
return m.AccessToken
}
return ""
}
func (m *PushNotification) GetChatId() []byte {
if m != nil {
return m.ChatId
}
return nil
}
func (m *PushNotification) GetPublicKey() []byte {
if m != nil {
return m.PublicKey
}
return nil
}
func (m *PushNotification) GetInstallationId() string {
if m != nil {
return m.InstallationId
}
return ""
}
func (m *PushNotification) GetMessage() []byte {
if m != nil {
return m.Message
}
return nil
}
func (m *PushNotification) GetType() PushNotification_PushNotificationType {
if m != nil {
return m.Type
}
return PushNotification_UNKNOWN_PUSH_NOTIFICATION_TYPE
}
func (m *PushNotification) GetAuthor() []byte {
if m != nil {
return m.Author
}
return nil
}
type PushNotificationRequest struct {
Requests []*PushNotification `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"`
MessageId []byte `protobuf:"bytes,2,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationRequest) Reset() { *m = PushNotificationRequest{} }
func (m *PushNotificationRequest) String() string { return proto.CompactTextString(m) }
func (*PushNotificationRequest) ProtoMessage() {}
func (*PushNotificationRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{7}
}
func (m *PushNotificationRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationRequest.Unmarshal(m, b)
}
func (m *PushNotificationRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationRequest.Marshal(b, m, deterministic)
}
func (m *PushNotificationRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationRequest.Merge(m, src)
}
func (m *PushNotificationRequest) XXX_Size() int {
return xxx_messageInfo_PushNotificationRequest.Size(m)
}
func (m *PushNotificationRequest) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationRequest.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationRequest proto.InternalMessageInfo
func (m *PushNotificationRequest) GetRequests() []*PushNotification {
if m != nil {
return m.Requests
}
return nil
}
func (m *PushNotificationRequest) GetMessageId() []byte {
if m != nil {
return m.MessageId
}
return nil
}
type PushNotificationReport struct {
Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
Error PushNotificationReport_ErrorType `protobuf:"varint,2,opt,name=error,proto3,enum=protobuf.PushNotificationReport_ErrorType" json:"error,omitempty"`
PublicKey []byte `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
InstallationId string `protobuf:"bytes,4,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationReport) Reset() { *m = PushNotificationReport{} }
func (m *PushNotificationReport) String() string { return proto.CompactTextString(m) }
func (*PushNotificationReport) ProtoMessage() {}
func (*PushNotificationReport) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{8}
}
func (m *PushNotificationReport) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationReport.Unmarshal(m, b)
}
func (m *PushNotificationReport) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationReport.Marshal(b, m, deterministic)
}
func (m *PushNotificationReport) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationReport.Merge(m, src)
}
func (m *PushNotificationReport) XXX_Size() int {
return xxx_messageInfo_PushNotificationReport.Size(m)
}
func (m *PushNotificationReport) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationReport.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationReport proto.InternalMessageInfo
func (m *PushNotificationReport) GetSuccess() bool {
if m != nil {
return m.Success
}
return false
}
func (m *PushNotificationReport) GetError() PushNotificationReport_ErrorType {
if m != nil {
return m.Error
}
return PushNotificationReport_UNKNOWN_ERROR_TYPE
}
func (m *PushNotificationReport) GetPublicKey() []byte {
if m != nil {
return m.PublicKey
}
return nil
}
func (m *PushNotificationReport) GetInstallationId() string {
if m != nil {
return m.InstallationId
}
return ""
}
type PushNotificationResponse struct {
MessageId []byte `protobuf:"bytes,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
Reports []*PushNotificationReport `protobuf:"bytes,2,rep,name=reports,proto3" json:"reports,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PushNotificationResponse) Reset() { *m = PushNotificationResponse{} }
func (m *PushNotificationResponse) String() string { return proto.CompactTextString(m) }
func (*PushNotificationResponse) ProtoMessage() {}
func (*PushNotificationResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_200acd86044eaa5d, []int{9}
}
func (m *PushNotificationResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushNotificationResponse.Unmarshal(m, b)
}
func (m *PushNotificationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PushNotificationResponse.Marshal(b, m, deterministic)
}
func (m *PushNotificationResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_PushNotificationResponse.Merge(m, src)
}
func (m *PushNotificationResponse) XXX_Size() int {
return xxx_messageInfo_PushNotificationResponse.Size(m)
}
func (m *PushNotificationResponse) XXX_DiscardUnknown() {
xxx_messageInfo_PushNotificationResponse.DiscardUnknown(m)
}
var xxx_messageInfo_PushNotificationResponse proto.InternalMessageInfo
func (m *PushNotificationResponse) GetMessageId() []byte {
if m != nil {
return m.MessageId
}
return nil
}
func (m *PushNotificationResponse) GetReports() []*PushNotificationReport {
if m != nil {
return m.Reports
}
return nil
}
func init() {
proto.RegisterEnum("protobuf.PushNotificationRegistration_TokenType", PushNotificationRegistration_TokenType_name, PushNotificationRegistration_TokenType_value)
proto.RegisterEnum("protobuf.PushNotificationRegistrationResponse_ErrorType", PushNotificationRegistrationResponse_ErrorType_name, PushNotificationRegistrationResponse_ErrorType_value)
proto.RegisterEnum("protobuf.PushNotification_PushNotificationType", PushNotification_PushNotificationType_name, PushNotification_PushNotificationType_value)
proto.RegisterEnum("protobuf.PushNotificationReport_ErrorType", PushNotificationReport_ErrorType_name, PushNotificationReport_ErrorType_value)
proto.RegisterType((*PushNotificationRegistration)(nil), "protobuf.PushNotificationRegistration")
proto.RegisterType((*PushNotificationRegistrationResponse)(nil), "protobuf.PushNotificationRegistrationResponse")
proto.RegisterType((*ContactCodeAdvertisement)(nil), "protobuf.ContactCodeAdvertisement")
proto.RegisterType((*PushNotificationQuery)(nil), "protobuf.PushNotificationQuery")
proto.RegisterType((*PushNotificationQueryInfo)(nil), "protobuf.PushNotificationQueryInfo")
proto.RegisterType((*PushNotificationQueryResponse)(nil), "protobuf.PushNotificationQueryResponse")
proto.RegisterType((*PushNotification)(nil), "protobuf.PushNotification")
proto.RegisterType((*PushNotificationRequest)(nil), "protobuf.PushNotificationRequest")
proto.RegisterType((*PushNotificationReport)(nil), "protobuf.PushNotificationReport")
proto.RegisterType((*PushNotificationResponse)(nil), "protobuf.PushNotificationResponse")
}
func init() {
proto.RegisterFile("push_notifications.proto", fileDescriptor_200acd86044eaa5d)
}
var fileDescriptor_200acd86044eaa5d = []byte{
// 1088 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0x5b, 0x4f, 0xe3, 0x46,
0x14, 0xae, 0x93, 0x40, 0x92, 0x93, 0x2b, 0x53, 0x08, 0x5e, 0x5a, 0xb6, 0xa9, 0x7b, 0x8b, 0x78,
0xc8, 0x56, 0x54, 0xea, 0xae, 0xca, 0x4b, 0xb3, 0xc1, 0xb0, 0x2e, 0xc4, 0xce, 0x4e, 0x9c, 0xae,
0xa8, 0x2a, 0x8d, 0x4c, 0x32, 0x80, 0x45, 0xb0, 0x5d, 0xcf, 0x84, 0x2a, 0x6f, 0x55, 0x9f, 0xfb,
0xd2, 0xd7, 0xfe, 0x8c, 0xfd, 0x15, 0xfd, 0x59, 0x95, 0xc7, 0xe3, 0x60, 0x48, 0xb8, 0x54, 0xda,
0xa7, 0xf8, 0x7c, 0xe7, 0x32, 0x73, 0xce, 0xf9, 0xe6, 0x0b, 0xa8, 0xc1, 0x94, 0x5d, 0x10, 0xcf,
0xe7, 0xee, 0x99, 0x3b, 0x72, 0xb8, 0xeb, 0x7b, 0xac, 0x1d, 0x84, 0x3e, 0xf7, 0x51, 0x41, 0xfc,
0x9c, 0x4e, 0xcf, 0xb6, 0x3e, 0x1e, 0x5d, 0x38, 0x9c, 0xb8, 0x63, 0xea, 0x71, 0x97, 0xcf, 0x62,
0xb7, 0xf6, 0xef, 0x0a, 0x7c, 0xda, 0x9f, 0xb2, 0x0b, 0x33, 0x95, 0x8a, 0xe9, 0xb9, 0xcb, 0x78,
0x28, 0xbe, 0x91, 0x05, 0xc0, 0xfd, 0x4b, 0xea, 0x11, 0x3e, 0x0b, 0xa8, 0xaa, 0x34, 0x95, 0x56,
0x75, 0xf7, 0xdb, 0x76, 0x52, 0xb4, 0xfd, 0x50, 0x6e, 0xdb, 0x8e, 0x12, 0xed, 0x59, 0x40, 0x71,
0x91, 0x27, 0x9f, 0xe8, 0x73, 0x28, 0x8f, 0xe9, 0xb5, 0x3b, 0xa2, 0x44, 0x60, 0x6a, 0xa6, 0xa9,
0xb4, 0x8a, 0xb8, 0x14, 0x63, 0x22, 0x03, 0x7d, 0x03, 0x35, 0xd7, 0x63, 0xdc, 0x99, 0x4c, 0x44,
0x1d, 0xe2, 0x8e, 0xd5, 0xac, 0x88, 0xaa, 0xa6, 0x61, 0x63, 0x1c, 0xd5, 0x72, 0x46, 0x23, 0xca,
0x98, 0xac, 0x95, 0x8b, 0x6b, 0xc5, 0x58, 0x5c, 0x4b, 0x85, 0x3c, 0xf5, 0x9c, 0xd3, 0x09, 0x1d,
0xab, 0x2b, 0x4d, 0xa5, 0x55, 0xc0, 0x89, 0x19, 0x79, 0xae, 0x69, 0xc8, 0x5c, 0xdf, 0x53, 0x57,
0x9b, 0x4a, 0x2b, 0x87, 0x13, 0x13, 0xb5, 0xa0, 0xee, 0x4c, 0x26, 0xfe, 0xef, 0x74, 0x4c, 0x2e,
0xe9, 0x8c, 0x4c, 0x5c, 0xc6, 0xd5, 0x7c, 0x33, 0xdb, 0x2a, 0xe3, 0xaa, 0xc4, 0x8f, 0xe8, 0xec,
0xd8, 0x65, 0x1c, 0xed, 0xc0, 0xda, 0xe9, 0xc4, 0x1f, 0x5d, 0xd2, 0x31, 0x11, 0xd3, 0x15, 0xa1,
0x05, 0x11, 0x5a, 0x93, 0x8e, 0xee, 0x85, 0xc3, 0x45, 0xec, 0x73, 0x80, 0xa9, 0x17, 0x8a, 0xf9,
0xd0, 0x50, 0x2d, 0x8a, 0xcb, 0xa4, 0x10, 0xb4, 0x0e, 0x2b, 0xe7, 0xa1, 0xe3, 0x71, 0x15, 0x9a,
0x4a, 0xab, 0x8c, 0x63, 0x03, 0xbd, 0x04, 0x55, 0x9c, 0x49, 0xce, 0x42, 0xff, 0x8a, 0x8c, 0x7c,
0x8f, 0x3b, 0x23, 0xce, 0x88, 0xef, 0x4d, 0x66, 0x6a, 0x49, 0xd4, 0xd8, 0x10, 0xfe, 0x83, 0xd0,
0xbf, 0xea, 0x4a, 0xaf, 0xe5, 0x4d, 0x66, 0xe8, 0x13, 0x28, 0x3a, 0x81, 0x47, 0xb8, 0x1f, 0xb8,
0x23, 0xb5, 0x2c, 0x06, 0x53, 0x70, 0x02, 0xcf, 0x8e, 0x6c, 0xf4, 0x15, 0x54, 0xc5, 0xf5, 0xc8,
0x55, 0xc4, 0x06, 0xdf, 0x63, 0x6a, 0x45, 0xd4, 0xaa, 0x08, 0xb4, 0x27, 0x41, 0xb4, 0x07, 0x5b,
0xc9, 0x20, 0x92, 0xc0, 0x54, 0x9f, 0x55, 0xd1, 0xe7, 0xa6, 0x8c, 0x48, 0x92, 0xe6, 0xfd, 0x7e,
0x0d, 0xb5, 0xab, 0x29, 0xbf, 0x35, 0x99, 0x9a, 0xc8, 0xa8, 0x08, 0x38, 0x89, 0xd3, 0x0e, 0xa0,
0x38, 0x27, 0x0a, 0x6a, 0x00, 0x1a, 0x9a, 0x47, 0xa6, 0xf5, 0xce, 0x24, 0xb6, 0x75, 0xa4, 0x9b,
0xc4, 0x3e, 0xe9, 0xeb, 0xf5, 0x8f, 0x50, 0x05, 0x8a, 0x9d, 0xbe, 0xc4, 0xea, 0x0a, 0x42, 0x50,
0x3d, 0x30, 0xb0, 0xfe, 0xba, 0x33, 0xd0, 0x25, 0x96, 0xd1, 0xde, 0x67, 0xe0, 0xcb, 0x87, 0xe8,
0x88, 0x29, 0x0b, 0x7c, 0x8f, 0xd1, 0x68, 0xf1, 0x6c, 0x2a, 0x28, 0x22, 0xf8, 0x5c, 0xc0, 0x89,
0x89, 0x4c, 0x58, 0xa1, 0x61, 0xe8, 0x87, 0x82, 0x94, 0xd5, 0xdd, 0x57, 0x4f, 0xe3, 0x79, 0x52,
0xb8, 0xad, 0x47, 0xb9, 0x82, 0xef, 0x71, 0x19, 0xb4, 0x0d, 0x10, 0xd2, 0xdf, 0xa6, 0x94, 0xf1,
0x84, 0xc3, 0x65, 0x5c, 0x94, 0x88, 0x31, 0xd6, 0xfe, 0x50, 0xa0, 0x38, 0xcf, 0x49, 0xb7, 0xae,
0x63, 0x6c, 0xe1, 0xa4, 0xf5, 0x0d, 0x58, 0xeb, 0x75, 0x8e, 0x0f, 0x2c, 0xdc, 0xd3, 0xf7, 0x49,
0x4f, 0x1f, 0x0c, 0x3a, 0x87, 0x7a, 0x5d, 0x41, 0xeb, 0x50, 0xff, 0x59, 0xc7, 0x03, 0xc3, 0x32,
0x49, 0xcf, 0x18, 0xf4, 0x3a, 0x76, 0xf7, 0x4d, 0x3d, 0x83, 0xb6, 0xa0, 0x31, 0x34, 0x07, 0xc3,
0x7e, 0xdf, 0xc2, 0xb6, 0xbe, 0x9f, 0x9e, 0x61, 0x36, 0x1a, 0x9a, 0x61, 0xda, 0x3a, 0x36, 0x3b,
0xc7, 0xf1, 0x09, 0xf5, 0x9c, 0xf6, 0x5e, 0x01, 0x55, 0xd2, 0xa6, 0xeb, 0x8f, 0x69, 0x67, 0x7c,
0x4d, 0x43, 0xee, 0x32, 0x1a, 0xad, 0x1b, 0x9d, 0x40, 0x63, 0x41, 0x57, 0x88, 0xeb, 0x9d, 0xf9,
0xaa, 0xd2, 0xcc, 0xb6, 0x4a, 0xbb, 0x5f, 0xdc, 0x3f, 0x9f, 0xb7, 0x53, 0x1a, 0xce, 0x0c, 0xef,
0xcc, 0xc7, 0xeb, 0xc1, 0x1d, 0x57, 0x84, 0xa2, 0x3d, 0xa8, 0xdc, 0x92, 0x23, 0x31, 0xf1, 0xd2,
0x6e, 0xe3, 0xa6, 0x62, 0xc4, 0x0f, 0x43, 0x7a, 0x71, 0x79, 0x94, 0xb2, 0xb4, 0x57, 0xb0, 0xb1,
0xf4, 0x3c, 0xf4, 0x19, 0x94, 0x82, 0xe9, 0xe9, 0xc4, 0x1d, 0x45, 0xef, 0x96, 0x89, 0x5b, 0x96,
0x31, 0xc4, 0xd0, 0x11, 0x9d, 0x31, 0xed, 0xaf, 0x0c, 0x3c, 0xbb, 0xf7, 0xaa, 0x0b, 0x72, 0xa2,
0x2c, 0xca, 0xc9, 0x12, 0x69, 0xca, 0x2c, 0x95, 0xa6, 0x6d, 0x80, 0x9b, 0xab, 0x24, 0xab, 0x9f,
0xdf, 0x64, 0xa9, 0xc4, 0xe4, 0x96, 0x4a, 0xcc, 0x5c, 0x16, 0x56, 0xd2, 0xb2, 0x70, 0xbf, 0x78,
0xed, 0xc0, 0x1a, 0xa3, 0xe1, 0x35, 0x0d, 0x49, 0xea, 0xfc, 0xbc, 0xc8, 0xad, 0xc5, 0x8e, 0x7e,
0x72, 0x0b, 0xed, 0x6f, 0x05, 0xb6, 0x97, 0x8e, 0x63, 0xfe, 0x56, 0x5e, 0x42, 0xee, 0xff, 0x2e,
0x5c, 0x24, 0x44, 0xfd, 0x5f, 0x51, 0xc6, 0x9c, 0x73, 0x9a, 0xcc, 0xa8, 0x8c, 0x8b, 0x12, 0x31,
0xc6, 0xe9, 0x37, 0x98, 0xbd, 0xf5, 0x06, 0xb5, 0x3f, 0xb3, 0x50, 0xbf, 0x5b, 0xfc, 0x29, 0x9b,
0xd9, 0x84, 0xbc, 0x64, 0x94, 0x3c, 0x6d, 0x35, 0xe6, 0xcc, 0x63, 0x9b, 0x58, 0xb2, 0xd1, 0xdc,
0xd2, 0x8d, 0xaa, 0x90, 0x97, 0xf7, 0x97, 0xab, 0x48, 0x4c, 0xd4, 0x85, 0x9c, 0xf8, 0x77, 0x5c,
0x15, 0xaa, 0xf1, 0xe2, 0xfe, 0x21, 0x2d, 0x00, 0x42, 0x2c, 0x44, 0x32, 0x6a, 0xc0, 0xaa, 0x33,
0xe5, 0x17, 0x7e, 0x28, 0x97, 0x25, 0x2d, 0x8d, 0xc1, 0xfa, 0xb2, 0x2c, 0xa4, 0xc1, 0xf3, 0x44,
0x2e, 0xfa, 0xc3, 0xc1, 0x1b, 0x62, 0x5a, 0xb6, 0x71, 0x60, 0x74, 0x3b, 0x76, 0xa4, 0x08, 0x52,
0x3a, 0x4a, 0x90, 0xbf, 0x11, 0x0c, 0x61, 0x98, 0x91, 0xbb, 0x9e, 0x41, 0xdb, 0xf0, 0x0c, 0xeb,
0x6f, 0x87, 0xfa, 0xc0, 0x26, 0xb6, 0x45, 0x7e, 0xb2, 0x0c, 0x93, 0x74, 0xad, 0x5e, 0x6f, 0x68,
0x1a, 0xf6, 0x49, 0x3d, 0xab, 0x05, 0xb0, 0xb9, 0xa8, 0x78, 0x42, 0xb6, 0xd0, 0xf7, 0x50, 0x90,
0x0a, 0xc6, 0x24, 0x2b, 0xb6, 0x1e, 0x90, 0xc9, 0x79, 0xec, 0x23, 0x84, 0xd0, 0xfe, 0xc9, 0x40,
0x63, 0xf1, 0xc8, 0xc0, 0x0f, 0xf9, 0x03, 0x7a, 0xfd, 0xe3, 0x6d, 0xbd, 0xde, 0x79, 0x48, 0xaf,
0xa3, 0x52, 0x4b, 0x15, 0xfa, 0x43, 0x90, 0x43, 0xfb, 0xf5, 0x29, 0x4a, 0x5e, 0x83, 0xd2, 0x3b,
0x6c, 0x99, 0x87, 0xe9, 0xbf, 0xb1, 0x3b, 0x8a, 0x9c, 0x89, 0x30, 0xd3, 0xb2, 0x09, 0xd6, 0x0f,
0x8d, 0x81, 0xad, 0x63, 0x7d, 0xbf, 0x9e, 0xd5, 0xa6, 0xa0, 0x2e, 0x36, 0x24, 0x5f, 0xe8, 0xed,
0xb9, 0x2a, 0x77, 0x1f, 0xda, 0x0f, 0x90, 0x0f, 0x45, 0xef, 0x4c, 0xcd, 0x88, 0x6d, 0x35, 0x1f,
0x1b, 0x12, 0x4e, 0x12, 0x5e, 0x57, 0x7e, 0x29, 0xb5, 0x5f, 0xec, 0x25, 0xe1, 0xa7, 0xab, 0xe2,
0xeb, 0xbb, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x80, 0x64, 0xa2, 0x39, 0x6d, 0x0a, 0x00, 0x00,
}

View File

@@ -0,0 +1,107 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "chat_identity.proto";
message PushNotificationRegistration {
enum TokenType {
UNKNOWN_TOKEN_TYPE = 0;
APN_TOKEN = 1;
FIREBASE_TOKEN = 2;
}
TokenType token_type = 1;
string device_token = 2;
string installation_id = 3;
string access_token = 4;
bool enabled = 5;
uint64 version = 6;
repeated bytes allowed_key_list = 7;
repeated bytes blocked_chat_list = 8;
bool unregister = 9;
bytes grant = 10;
bool allow_from_contacts_only = 11;
string apn_topic = 12;
bool block_mentions = 13;
repeated bytes allowed_mentions_chat_list = 14;
repeated bytes muted_chat_list = 15;
}
message PushNotificationRegistrationResponse {
bool success = 1;
ErrorType error = 2;
bytes request_id = 3;
enum ErrorType {
UNKNOWN_ERROR_TYPE = 0;
MALFORMED_MESSAGE = 1;
VERSION_MISMATCH = 2;
UNSUPPORTED_TOKEN_TYPE = 3;
INTERNAL_ERROR = 4;
}
}
message ContactCodeAdvertisement {
repeated PushNotificationQueryInfo push_notification_info = 1;
ChatIdentity chat_identity = 2;
}
message PushNotificationQuery {
repeated bytes public_keys = 1;
}
message PushNotificationQueryInfo {
string access_token = 1;
string installation_id = 2;
bytes public_key = 3;
repeated bytes allowed_key_list = 4;
bytes grant = 5;
uint64 version = 6;
bytes server_public_key = 7;
}
message PushNotificationQueryResponse {
repeated PushNotificationQueryInfo info = 1;
bytes message_id = 2;
bool success = 3;
}
message PushNotification {
string access_token = 1;
bytes chat_id = 2;
bytes public_key = 3;
string installation_id = 4;
bytes message = 5;
PushNotificationType type = 6;
enum PushNotificationType {
UNKNOWN_PUSH_NOTIFICATION_TYPE = 0;
MESSAGE = 1;
MENTION = 2;
REQUEST_TO_JOIN_COMMUNITY = 3;
}
bytes author = 7;
}
message PushNotificationRequest {
repeated PushNotification requests = 1;
bytes message_id = 2;
}
message PushNotificationReport {
bool success = 1;
ErrorType error = 2;
enum ErrorType {
UNKNOWN_ERROR_TYPE = 0;
WRONG_TOKEN = 1;
INTERNAL_ERROR = 2;
NOT_REGISTERED = 3;
}
bytes public_key = 3;
string installation_id = 4;
}
message PushNotificationResponse {
bytes message_id = 1;
repeated PushNotificationReport reports = 2;
}

View File

@@ -0,0 +1,111 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: segment_message.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type SegmentMessage struct {
// hash of the entire original message
EntireMessageHash []byte `protobuf:"bytes,1,opt,name=entire_message_hash,json=entireMessageHash,proto3" json:"entire_message_hash,omitempty"`
// Index of this segment within the entire original message
Index uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
// Total number of segments the entire original message is divided into
SegmentsCount uint32 `protobuf:"varint,3,opt,name=segments_count,json=segmentsCount,proto3" json:"segments_count,omitempty"`
// The payload data for this particular segment
Payload []byte `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SegmentMessage) Reset() { *m = SegmentMessage{} }
func (m *SegmentMessage) String() string { return proto.CompactTextString(m) }
func (*SegmentMessage) ProtoMessage() {}
func (*SegmentMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_857302809a887a8b, []int{0}
}
func (m *SegmentMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SegmentMessage.Unmarshal(m, b)
}
func (m *SegmentMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SegmentMessage.Marshal(b, m, deterministic)
}
func (m *SegmentMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_SegmentMessage.Merge(m, src)
}
func (m *SegmentMessage) XXX_Size() int {
return xxx_messageInfo_SegmentMessage.Size(m)
}
func (m *SegmentMessage) XXX_DiscardUnknown() {
xxx_messageInfo_SegmentMessage.DiscardUnknown(m)
}
var xxx_messageInfo_SegmentMessage proto.InternalMessageInfo
func (m *SegmentMessage) GetEntireMessageHash() []byte {
if m != nil {
return m.EntireMessageHash
}
return nil
}
func (m *SegmentMessage) GetIndex() uint32 {
if m != nil {
return m.Index
}
return 0
}
func (m *SegmentMessage) GetSegmentsCount() uint32 {
if m != nil {
return m.SegmentsCount
}
return 0
}
func (m *SegmentMessage) GetPayload() []byte {
if m != nil {
return m.Payload
}
return nil
}
func init() {
proto.RegisterType((*SegmentMessage)(nil), "protobuf.SegmentMessage")
}
func init() {
proto.RegisterFile("segment_message.proto", fileDescriptor_857302809a887a8b)
}
var fileDescriptor_857302809a887a8b = []byte{
// 169 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0x2d, 0x4e, 0x4d, 0xcf,
0x4d, 0xcd, 0x2b, 0x89, 0xcf, 0x4d, 0x2d, 0x2e, 0x4e, 0x4c, 0x4f, 0xd5, 0x2b, 0x28, 0xca, 0x2f,
0xc9, 0x17, 0xe2, 0x00, 0x53, 0x49, 0xa5, 0x69, 0x4a, 0xd3, 0x19, 0xb9, 0xf8, 0x82, 0x21, 0x6a,
0x7c, 0x21, 0x4a, 0x84, 0xf4, 0xb8, 0x84, 0x53, 0xf3, 0x4a, 0x32, 0x8b, 0x52, 0x61, 0x9a, 0xe2,
0x33, 0x12, 0x8b, 0x33, 0x24, 0x18, 0x15, 0x18, 0x35, 0x78, 0x82, 0x04, 0x21, 0x52, 0x50, 0xb5,
0x1e, 0x89, 0xc5, 0x19, 0x42, 0x22, 0x5c, 0xac, 0x99, 0x79, 0x29, 0xa9, 0x15, 0x12, 0x4c, 0x0a,
0x8c, 0x1a, 0xbc, 0x41, 0x10, 0x8e, 0x90, 0x2a, 0x17, 0x1f, 0xd4, 0xee, 0xe2, 0xf8, 0xe4, 0xfc,
0xd2, 0xbc, 0x12, 0x09, 0x66, 0xb0, 0x34, 0x2f, 0x4c, 0xd4, 0x19, 0x24, 0x28, 0x24, 0xc1, 0xc5,
0x5e, 0x90, 0x58, 0x99, 0x93, 0x9f, 0x98, 0x22, 0xc1, 0x02, 0xb6, 0x00, 0xc6, 0x75, 0xe2, 0x8d,
0xe2, 0xd6, 0xd3, 0xb7, 0x86, 0x39, 0x34, 0x89, 0x0d, 0xcc, 0x32, 0x06, 0x04, 0x00, 0x00, 0xff,
0xff, 0x12, 0x40, 0x55, 0x2e, 0xd2, 0x00, 0x00, 0x00,
}

View File

@@ -0,0 +1,15 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message SegmentMessage {
// hash of the entire original message
bytes entire_message_hash = 1;
// Index of this segment within the entire original message
uint32 index = 2;
// Total number of segments the entire original message is divided into
uint32 segments_count = 3;
// The payload data for this particular segment
bytes payload = 4;
}

View File

@@ -0,0 +1,17 @@
package protobuf
import (
"github.com/golang/protobuf/proto"
)
//go:generate protoc --go_out=. ./chat_message.proto ./application_metadata_message.proto ./membership_update_message.proto ./command.proto ./contact.proto ./pairing.proto ./push_notifications.proto ./emoji_reaction.proto ./enums.proto ./shard.proto ./group_chat_invitation.proto ./chat_identity.proto ./communities.proto ./pin_message.proto ./anon_metrics.proto ./status_update.proto ./sync_settings.proto ./contact_verification.proto ./community_update.proto ./community_shard_key.proto ./url_data.proto ./community_privileged_user_sync_message.proto ./profile_showcase.proto ./segment_message.proto
func Unmarshal(payload []byte) (*ApplicationMetadataMessage, error) {
var message ApplicationMetadataMessage
err := proto.Unmarshal(payload, &message)
if err != nil {
return nil, err
}
return &message, nil
}

View File

@@ -0,0 +1,213 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: shard.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type Shard struct {
Cluster int32 `protobuf:"varint,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
Index int32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Shard) Reset() { *m = Shard{} }
func (m *Shard) String() string { return proto.CompactTextString(m) }
func (*Shard) ProtoMessage() {}
func (*Shard) Descriptor() ([]byte, []int) {
return fileDescriptor_319ea41e44cdc364, []int{0}
}
func (m *Shard) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Shard.Unmarshal(m, b)
}
func (m *Shard) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Shard.Marshal(b, m, deterministic)
}
func (m *Shard) XXX_Merge(src proto.Message) {
xxx_messageInfo_Shard.Merge(m, src)
}
func (m *Shard) XXX_Size() int {
return xxx_messageInfo_Shard.Size(m)
}
func (m *Shard) XXX_DiscardUnknown() {
xxx_messageInfo_Shard.DiscardUnknown(m)
}
var xxx_messageInfo_Shard proto.InternalMessageInfo
func (m *Shard) GetCluster() int32 {
if m != nil {
return m.Cluster
}
return 0
}
func (m *Shard) GetIndex() int32 {
if m != nil {
return m.Index
}
return 0
}
type PublicShardInfo struct {
// clock
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// community ID
CommunityId []byte `protobuf:"bytes,2,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
// shard information
Shard *Shard `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"`
// if chainID > 0, the signer must be verified through the community contract
ChainId uint64 `protobuf:"varint,4,opt,name=chainId,proto3" json:"chainId,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PublicShardInfo) Reset() { *m = PublicShardInfo{} }
func (m *PublicShardInfo) String() string { return proto.CompactTextString(m) }
func (*PublicShardInfo) ProtoMessage() {}
func (*PublicShardInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_319ea41e44cdc364, []int{1}
}
func (m *PublicShardInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PublicShardInfo.Unmarshal(m, b)
}
func (m *PublicShardInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PublicShardInfo.Marshal(b, m, deterministic)
}
func (m *PublicShardInfo) XXX_Merge(src proto.Message) {
xxx_messageInfo_PublicShardInfo.Merge(m, src)
}
func (m *PublicShardInfo) XXX_Size() int {
return xxx_messageInfo_PublicShardInfo.Size(m)
}
func (m *PublicShardInfo) XXX_DiscardUnknown() {
xxx_messageInfo_PublicShardInfo.DiscardUnknown(m)
}
var xxx_messageInfo_PublicShardInfo proto.InternalMessageInfo
func (m *PublicShardInfo) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *PublicShardInfo) GetCommunityId() []byte {
if m != nil {
return m.CommunityId
}
return nil
}
func (m *PublicShardInfo) GetShard() *Shard {
if m != nil {
return m.Shard
}
return nil
}
func (m *PublicShardInfo) GetChainId() uint64 {
if m != nil {
return m.ChainId
}
return 0
}
type CommunityPublicShardInfo struct {
// Signature of the payload field
Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
// Marshaled PublicShardInfo
Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityPublicShardInfo) Reset() { *m = CommunityPublicShardInfo{} }
func (m *CommunityPublicShardInfo) String() string { return proto.CompactTextString(m) }
func (*CommunityPublicShardInfo) ProtoMessage() {}
func (*CommunityPublicShardInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_319ea41e44cdc364, []int{2}
}
func (m *CommunityPublicShardInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityPublicShardInfo.Unmarshal(m, b)
}
func (m *CommunityPublicShardInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityPublicShardInfo.Marshal(b, m, deterministic)
}
func (m *CommunityPublicShardInfo) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityPublicShardInfo.Merge(m, src)
}
func (m *CommunityPublicShardInfo) XXX_Size() int {
return xxx_messageInfo_CommunityPublicShardInfo.Size(m)
}
func (m *CommunityPublicShardInfo) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityPublicShardInfo.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityPublicShardInfo proto.InternalMessageInfo
func (m *CommunityPublicShardInfo) GetSignature() []byte {
if m != nil {
return m.Signature
}
return nil
}
func (m *CommunityPublicShardInfo) GetPayload() []byte {
if m != nil {
return m.Payload
}
return nil
}
func init() {
proto.RegisterType((*Shard)(nil), "protobuf.Shard")
proto.RegisterType((*PublicShardInfo)(nil), "protobuf.PublicShardInfo")
proto.RegisterType((*CommunityPublicShardInfo)(nil), "protobuf.CommunityPublicShardInfo")
}
func init() {
proto.RegisterFile("shard.proto", fileDescriptor_319ea41e44cdc364)
}
var fileDescriptor_319ea41e44cdc364 = []byte{
// 231 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x8e, 0x3d, 0x4f, 0x04, 0x21,
0x10, 0x86, 0x83, 0x1e, 0x7e, 0x0c, 0x6b, 0x2e, 0x21, 0x16, 0x14, 0x16, 0xe7, 0x26, 0x26, 0x57,
0x61, 0xa2, 0x85, 0x85, 0x9d, 0x56, 0xdb, 0x19, 0xec, 0x6c, 0x0c, 0x0b, 0x7b, 0x1e, 0x91, 0x83,
0x0b, 0x0b, 0x89, 0xf7, 0x1b, 0xfc, 0xd3, 0x66, 0x67, 0x83, 0x26, 0x56, 0xf0, 0xbe, 0x03, 0xcf,
0x3c, 0xc0, 0xc6, 0xad, 0x4e, 0x56, 0xee, 0x53, 0xcc, 0x91, 0x9f, 0xe1, 0xd1, 0x97, 0x4d, 0xfb,
0x00, 0xf4, 0x75, 0x1a, 0x70, 0x01, 0xa7, 0xc6, 0x97, 0x31, 0x0f, 0x49, 0x90, 0x15, 0x59, 0x53,
0x55, 0x23, 0xbf, 0x04, 0xea, 0x82, 0x1d, 0xbe, 0xc4, 0x11, 0xf6, 0x73, 0x68, 0xbf, 0x09, 0x2c,
0x5f, 0x4a, 0xef, 0x9d, 0xc1, 0xff, 0x5d, 0xd8, 0xc4, 0xe9, 0xa5, 0xf1, 0xd1, 0x7c, 0x22, 0x61,
0xa1, 0xe6, 0xc0, 0xaf, 0xa1, 0x31, 0x71, 0xb7, 0x2b, 0xc1, 0xe5, 0xc3, 0xbb, 0xb3, 0x88, 0x69,
0x14, 0xfb, 0xed, 0x3a, 0xcb, 0x6f, 0x80, 0xa2, 0x9e, 0x38, 0x5e, 0x91, 0x35, 0xbb, 0x5b, 0xca,
0xea, 0x27, 0x11, 0xae, 0xe6, 0x29, 0x3a, 0x6e, 0xb5, 0x0b, 0x9d, 0x15, 0x0b, 0xdc, 0x50, 0x63,
0xab, 0x40, 0x3c, 0x57, 0xde, 0x7f, 0xab, 0x2b, 0x38, 0x1f, 0xdd, 0x47, 0xd0, 0xb9, 0xa4, 0x01,
0xcd, 0x1a, 0xf5, 0x57, 0x4c, 0xcc, 0xbd, 0x3e, 0xf8, 0xa8, 0xab, 0x58, 0x8d, 0x4f, 0x17, 0x6f,
0x4c, 0xde, 0x3e, 0x56, 0x93, 0xfe, 0x04, 0x6f, 0xf7, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xa5,
0xbd, 0x3b, 0xd5, 0x49, 0x01, 0x00, 0x00,
}

View File

@@ -0,0 +1,27 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message Shard {
int32 cluster = 1;
int32 index = 2;
}
message PublicShardInfo {
// clock
uint64 clock = 1;
// community ID
bytes community_id = 2;
// shard information
Shard shard = 3;
// if chainID > 0, the signer must be verified through the community contract
uint64 chainId = 4;
}
message CommunityPublicShardInfo {
// Signature of the payload field
bytes signature = 1;
// Marshaled PublicShardInfo
bytes payload = 2;
}

View File

@@ -0,0 +1,150 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: status_update.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type StatusUpdate_StatusType int32
const (
StatusUpdate_UNKNOWN_STATUS_TYPE StatusUpdate_StatusType = 0
StatusUpdate_AUTOMATIC StatusUpdate_StatusType = 1
StatusUpdate_DO_NOT_DISTURB StatusUpdate_StatusType = 2
StatusUpdate_ALWAYS_ONLINE StatusUpdate_StatusType = 3
StatusUpdate_INACTIVE StatusUpdate_StatusType = 4
)
var StatusUpdate_StatusType_name = map[int32]string{
0: "UNKNOWN_STATUS_TYPE",
1: "AUTOMATIC",
2: "DO_NOT_DISTURB",
3: "ALWAYS_ONLINE",
4: "INACTIVE",
}
var StatusUpdate_StatusType_value = map[string]int32{
"UNKNOWN_STATUS_TYPE": 0,
"AUTOMATIC": 1,
"DO_NOT_DISTURB": 2,
"ALWAYS_ONLINE": 3,
"INACTIVE": 4,
}
func (x StatusUpdate_StatusType) String() string {
return proto.EnumName(StatusUpdate_StatusType_name, int32(x))
}
func (StatusUpdate_StatusType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_911acd91e62cd3d7, []int{0, 0}
}
// Specs:
// :AUTOMATIC
// To Send - "AUTOMATIC" status ping every 5 minutes
// Display - Online for up to 5 minutes from the last clock, after that Offline
// :ALWAYS_ONLINE
// To Send - "ALWAYS_ONLINE" status ping every 5 minutes
// Display - Online for up to 2 weeks from the last clock, after that Offline
// :INACTIVE
// To Send - A single "INACTIVE" status ping
// Display - Offline forever
// Note: Only send pings if the user interacted with the app in the last x minutes.
type StatusUpdate struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
StatusType StatusUpdate_StatusType `protobuf:"varint,2,opt,name=status_type,json=statusType,proto3,enum=protobuf.StatusUpdate_StatusType" json:"status_type,omitempty"`
CustomText string `protobuf:"bytes,3,opt,name=custom_text,json=customText,proto3" json:"custom_text,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *StatusUpdate) Reset() { *m = StatusUpdate{} }
func (m *StatusUpdate) String() string { return proto.CompactTextString(m) }
func (*StatusUpdate) ProtoMessage() {}
func (*StatusUpdate) Descriptor() ([]byte, []int) {
return fileDescriptor_911acd91e62cd3d7, []int{0}
}
func (m *StatusUpdate) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_StatusUpdate.Unmarshal(m, b)
}
func (m *StatusUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_StatusUpdate.Marshal(b, m, deterministic)
}
func (m *StatusUpdate) XXX_Merge(src proto.Message) {
xxx_messageInfo_StatusUpdate.Merge(m, src)
}
func (m *StatusUpdate) XXX_Size() int {
return xxx_messageInfo_StatusUpdate.Size(m)
}
func (m *StatusUpdate) XXX_DiscardUnknown() {
xxx_messageInfo_StatusUpdate.DiscardUnknown(m)
}
var xxx_messageInfo_StatusUpdate proto.InternalMessageInfo
func (m *StatusUpdate) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (m *StatusUpdate) GetStatusType() StatusUpdate_StatusType {
if m != nil {
return m.StatusType
}
return StatusUpdate_UNKNOWN_STATUS_TYPE
}
func (m *StatusUpdate) GetCustomText() string {
if m != nil {
return m.CustomText
}
return ""
}
func init() {
proto.RegisterEnum("protobuf.StatusUpdate_StatusType", StatusUpdate_StatusType_name, StatusUpdate_StatusType_value)
proto.RegisterType((*StatusUpdate)(nil), "protobuf.StatusUpdate")
}
func init() {
proto.RegisterFile("status_update.proto", fileDescriptor_911acd91e62cd3d7)
}
var fileDescriptor_911acd91e62cd3d7 = []byte{
// 253 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x4c, 0x8e, 0xc1, 0x4e, 0xc2, 0x40,
0x10, 0x86, 0x5d, 0x40, 0x03, 0x53, 0x4a, 0xea, 0x60, 0x62, 0x6f, 0x56, 0x4e, 0x3d, 0xd5, 0x44,
0x8f, 0x9e, 0xb6, 0xd0, 0x43, 0x23, 0x6e, 0x4d, 0x77, 0x56, 0x82, 0x97, 0x0d, 0xd4, 0x35, 0x31,
0x6a, 0xda, 0xd8, 0x6d, 0x02, 0xef, 0xed, 0x03, 0x98, 0x14, 0x50, 0x4e, 0xf3, 0xff, 0x93, 0x6f,
0xbe, 0x0c, 0x8c, 0x6b, 0xbb, 0xb2, 0x4d, 0xad, 0x9b, 0xea, 0x75, 0x65, 0x4d, 0x54, 0x7d, 0x97,
0xb6, 0xc4, 0x7e, 0x3b, 0xd6, 0xcd, 0xdb, 0xe4, 0x87, 0xc1, 0x50, 0xb6, 0x84, 0x6a, 0x01, 0xbc,
0x80, 0xd3, 0xe2, 0xb3, 0x2c, 0x3e, 0x7c, 0x16, 0xb0, 0xb0, 0x97, 0xef, 0x0a, 0xc6, 0xe0, 0xec,
0x3d, 0x76, 0x5b, 0x19, 0xbf, 0x13, 0xb0, 0x70, 0x74, 0x7b, 0x1d, 0x1d, 0x34, 0xd1, 0xb1, 0x62,
0x5f, 0x68, 0x5b, 0x99, 0x1c, 0xea, 0xbf, 0x8c, 0x57, 0xe0, 0x14, 0x4d, 0x6d, 0xcb, 0x2f, 0x6d,
0xcd, 0xc6, 0xfa, 0xdd, 0x80, 0x85, 0x83, 0x1c, 0x76, 0x2b, 0x32, 0x1b, 0x3b, 0x79, 0x07, 0xf8,
0x3f, 0xc5, 0x4b, 0x18, 0x2b, 0xf1, 0x20, 0xb2, 0x85, 0xd0, 0x92, 0x38, 0x29, 0xa9, 0x69, 0xf9,
0x94, 0x78, 0x27, 0xe8, 0xc2, 0x80, 0x2b, 0xca, 0x1e, 0x39, 0xa5, 0x53, 0x8f, 0x21, 0xc2, 0x68,
0x96, 0x69, 0x91, 0x91, 0x9e, 0xa5, 0x92, 0x54, 0x1e, 0x7b, 0x1d, 0x3c, 0x07, 0x97, 0xcf, 0x17,
0x7c, 0x29, 0x75, 0x26, 0xe6, 0xa9, 0x48, 0xbc, 0x2e, 0x0e, 0xa1, 0x9f, 0x0a, 0x3e, 0xa5, 0xf4,
0x39, 0xf1, 0x7a, 0xb1, 0xfb, 0xe2, 0x44, 0x37, 0xf7, 0x87, 0xf7, 0xd7, 0x67, 0x6d, 0xba, 0xfb,
0x0d, 0x00, 0x00, 0xff, 0xff, 0xaa, 0xa1, 0x52, 0x1d, 0x2d, 0x01, 0x00, 0x00,
}

View File

@@ -0,0 +1,33 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
/* Specs:
:AUTOMATIC
To Send - "AUTOMATIC" status ping every 5 minutes
Display - Online for up to 5 minutes from the last clock, after that Offline
:ALWAYS_ONLINE
To Send - "ALWAYS_ONLINE" status ping every 5 minutes
Display - Online for up to 2 weeks from the last clock, after that Offline
:INACTIVE
To Send - A single "INACTIVE" status ping
Display - Offline forever
Note: Only send pings if the user interacted with the app in the last x minutes. */
message StatusUpdate {
uint64 clock = 1;
StatusType status_type = 2;
string custom_text = 3;
enum StatusType {
UNKNOWN_STATUS_TYPE = 0;
AUTOMATIC = 1;
DO_NOT_DISTURB = 2;
ALWAYS_ONLINE = 3;
INACTIVE = 4;
};
}

View File

@@ -0,0 +1,278 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: sync_settings.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type SyncSetting_Type int32
const (
SyncSetting_UNKNOWN SyncSetting_Type = 0
SyncSetting_CURRENCY SyncSetting_Type = 1
SyncSetting_GIF_RECENTS SyncSetting_Type = 2
SyncSetting_GIF_FAVOURITES SyncSetting_Type = 3
SyncSetting_MESSAGES_FROM_CONTACTS_ONLY SyncSetting_Type = 4
SyncSetting_PREFERRED_NAME SyncSetting_Type = 5
SyncSetting_PREVIEW_PRIVACY SyncSetting_Type = 6
SyncSetting_PROFILE_PICTURES_SHOW_TO SyncSetting_Type = 7
SyncSetting_PROFILE_PICTURES_VISIBILITY SyncSetting_Type = 8
SyncSetting_SEND_STATUS_UPDATES SyncSetting_Type = 9
SyncSetting_STICKERS_PACKS_INSTALLED SyncSetting_Type = 10
SyncSetting_STICKERS_PACKS_PENDING SyncSetting_Type = 11
SyncSetting_STICKERS_RECENT_STICKERS SyncSetting_Type = 12
SyncSetting_DISPLAY_NAME SyncSetting_Type = 13
SyncSetting_BIO SyncSetting_Type = 14
SyncSetting_MNEMONIC_REMOVED SyncSetting_Type = 15
SyncSetting_URL_UNFURLING_MODE SyncSetting_Type = 18
SyncSetting_SHOW_COMMUNITY_ASSET_WHEN_SENDING_TOKENS SyncSetting_Type = 19
SyncSetting_DISPLAY_ASSETS_BELOW_BALANCE SyncSetting_Type = 20
SyncSetting_DISPLAY_ASSETS_BELOW_BALANCE_THRESHOLD SyncSetting_Type = 21
)
var SyncSetting_Type_name = map[int32]string{
0: "UNKNOWN",
1: "CURRENCY",
2: "GIF_RECENTS",
3: "GIF_FAVOURITES",
4: "MESSAGES_FROM_CONTACTS_ONLY",
5: "PREFERRED_NAME",
6: "PREVIEW_PRIVACY",
7: "PROFILE_PICTURES_SHOW_TO",
8: "PROFILE_PICTURES_VISIBILITY",
9: "SEND_STATUS_UPDATES",
10: "STICKERS_PACKS_INSTALLED",
11: "STICKERS_PACKS_PENDING",
12: "STICKERS_RECENT_STICKERS",
13: "DISPLAY_NAME",
14: "BIO",
15: "MNEMONIC_REMOVED",
18: "URL_UNFURLING_MODE",
19: "SHOW_COMMUNITY_ASSET_WHEN_SENDING_TOKENS",
20: "DISPLAY_ASSETS_BELOW_BALANCE",
21: "DISPLAY_ASSETS_BELOW_BALANCE_THRESHOLD",
}
var SyncSetting_Type_value = map[string]int32{
"UNKNOWN": 0,
"CURRENCY": 1,
"GIF_RECENTS": 2,
"GIF_FAVOURITES": 3,
"MESSAGES_FROM_CONTACTS_ONLY": 4,
"PREFERRED_NAME": 5,
"PREVIEW_PRIVACY": 6,
"PROFILE_PICTURES_SHOW_TO": 7,
"PROFILE_PICTURES_VISIBILITY": 8,
"SEND_STATUS_UPDATES": 9,
"STICKERS_PACKS_INSTALLED": 10,
"STICKERS_PACKS_PENDING": 11,
"STICKERS_RECENT_STICKERS": 12,
"DISPLAY_NAME": 13,
"BIO": 14,
"MNEMONIC_REMOVED": 15,
"URL_UNFURLING_MODE": 18,
"SHOW_COMMUNITY_ASSET_WHEN_SENDING_TOKENS": 19,
"DISPLAY_ASSETS_BELOW_BALANCE": 20,
"DISPLAY_ASSETS_BELOW_BALANCE_THRESHOLD": 21,
}
func (x SyncSetting_Type) String() string {
return proto.EnumName(SyncSetting_Type_name, int32(x))
}
func (SyncSetting_Type) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_e2f7a0bce2873c78, []int{0, 0}
}
type SyncSetting struct {
Type SyncSetting_Type `protobuf:"varint,1,opt,name=type,proto3,enum=protobuf.SyncSetting_Type" json:"type,omitempty"`
Clock uint64 `protobuf:"varint,2,opt,name=clock,proto3" json:"clock,omitempty"`
// Types that are valid to be assigned to Value:
//
// *SyncSetting_ValueString
// *SyncSetting_ValueBytes
// *SyncSetting_ValueBool
// *SyncSetting_ValueInt64
Value isSyncSetting_Value `protobuf_oneof:"value"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SyncSetting) Reset() { *m = SyncSetting{} }
func (m *SyncSetting) String() string { return proto.CompactTextString(m) }
func (*SyncSetting) ProtoMessage() {}
func (*SyncSetting) Descriptor() ([]byte, []int) {
return fileDescriptor_e2f7a0bce2873c78, []int{0}
}
func (m *SyncSetting) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SyncSetting.Unmarshal(m, b)
}
func (m *SyncSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SyncSetting.Marshal(b, m, deterministic)
}
func (m *SyncSetting) XXX_Merge(src proto.Message) {
xxx_messageInfo_SyncSetting.Merge(m, src)
}
func (m *SyncSetting) XXX_Size() int {
return xxx_messageInfo_SyncSetting.Size(m)
}
func (m *SyncSetting) XXX_DiscardUnknown() {
xxx_messageInfo_SyncSetting.DiscardUnknown(m)
}
var xxx_messageInfo_SyncSetting proto.InternalMessageInfo
func (m *SyncSetting) GetType() SyncSetting_Type {
if m != nil {
return m.Type
}
return SyncSetting_UNKNOWN
}
func (m *SyncSetting) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
type isSyncSetting_Value interface {
isSyncSetting_Value()
}
type SyncSetting_ValueString struct {
ValueString string `protobuf:"bytes,3,opt,name=value_string,json=valueString,proto3,oneof"`
}
type SyncSetting_ValueBytes struct {
ValueBytes []byte `protobuf:"bytes,4,opt,name=value_bytes,json=valueBytes,proto3,oneof"`
}
type SyncSetting_ValueBool struct {
ValueBool bool `protobuf:"varint,5,opt,name=value_bool,json=valueBool,proto3,oneof"`
}
type SyncSetting_ValueInt64 struct {
ValueInt64 int64 `protobuf:"varint,6,opt,name=value_int64,json=valueInt64,proto3,oneof"`
}
func (*SyncSetting_ValueString) isSyncSetting_Value() {}
func (*SyncSetting_ValueBytes) isSyncSetting_Value() {}
func (*SyncSetting_ValueBool) isSyncSetting_Value() {}
func (*SyncSetting_ValueInt64) isSyncSetting_Value() {}
func (m *SyncSetting) GetValue() isSyncSetting_Value {
if m != nil {
return m.Value
}
return nil
}
func (m *SyncSetting) GetValueString() string {
if x, ok := m.GetValue().(*SyncSetting_ValueString); ok {
return x.ValueString
}
return ""
}
func (m *SyncSetting) GetValueBytes() []byte {
if x, ok := m.GetValue().(*SyncSetting_ValueBytes); ok {
return x.ValueBytes
}
return nil
}
func (m *SyncSetting) GetValueBool() bool {
if x, ok := m.GetValue().(*SyncSetting_ValueBool); ok {
return x.ValueBool
}
return false
}
func (m *SyncSetting) GetValueInt64() int64 {
if x, ok := m.GetValue().(*SyncSetting_ValueInt64); ok {
return x.ValueInt64
}
return 0
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*SyncSetting) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*SyncSetting_ValueString)(nil),
(*SyncSetting_ValueBytes)(nil),
(*SyncSetting_ValueBool)(nil),
(*SyncSetting_ValueInt64)(nil),
}
}
func init() {
proto.RegisterEnum("protobuf.SyncSetting_Type", SyncSetting_Type_name, SyncSetting_Type_value)
proto.RegisterType((*SyncSetting)(nil), "protobuf.SyncSetting")
}
func init() {
proto.RegisterFile("sync_settings.proto", fileDescriptor_e2f7a0bce2873c78)
}
var fileDescriptor_e2f7a0bce2873c78 = []byte{
// 601 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x93, 0x5b, 0x6f, 0x1a, 0x3b,
0x10, 0xc7, 0xd9, 0xb0, 0x5c, 0x62, 0x48, 0xe2, 0x98, 0x9c, 0x1c, 0x4e, 0x4e, 0xa4, 0x50, 0x2a,
0x55, 0x28, 0xaa, 0xa8, 0xd4, 0x56, 0x7d, 0xe9, 0x93, 0xf1, 0x0e, 0xac, 0xc5, 0xae, 0xbd, 0xb2,
0xbd, 0x20, 0xfa, 0x32, 0x6a, 0x10, 0x8d, 0xa2, 0x22, 0x88, 0x02, 0xa9, 0xc4, 0x17, 0xea, 0x97,
0xe8, 0x97, 0xab, 0x76, 0xb7, 0xf4, 0x2a, 0xf5, 0xc9, 0x9e, 0xff, 0xfc, 0xe6, 0xe6, 0x0b, 0x69,
0x6d, 0x76, 0xab, 0x39, 0x6e, 0x16, 0xdb, 0xed, 0xdd, 0xea, 0x76, 0xd3, 0xbf, 0x7f, 0x58, 0x6f,
0xd7, 0xac, 0x9e, 0x2f, 0x37, 0x8f, 0x1f, 0xba, 0x9f, 0xab, 0xa4, 0x61, 0x77, 0xab, 0xb9, 0x2d,
0x00, 0xd6, 0x27, 0xfe, 0x76, 0x77, 0xbf, 0x68, 0x7b, 0x1d, 0xaf, 0x77, 0xfc, 0xf2, 0xa2, 0xbf,
0x07, 0xfb, 0x3f, 0x41, 0x7d, 0xb7, 0xbb, 0x5f, 0x98, 0x9c, 0x63, 0x67, 0xa4, 0x32, 0x5f, 0xae,
0xe7, 0x1f, 0xdb, 0x07, 0x1d, 0xaf, 0xe7, 0x9b, 0xc2, 0x60, 0x4f, 0x49, 0xf3, 0xd3, 0xfb, 0xe5,
0xe3, 0x02, 0x37, 0xdb, 0x87, 0xbb, 0xd5, 0x6d, 0xbb, 0xdc, 0xf1, 0x7a, 0x87, 0x61, 0xc9, 0x34,
0x72, 0xd5, 0xe6, 0x22, 0x7b, 0x42, 0x0a, 0x13, 0x6f, 0x76, 0xdb, 0xc5, 0xa6, 0xed, 0x77, 0xbc,
0x5e, 0x33, 0x2c, 0x19, 0x92, 0x8b, 0x83, 0x4c, 0x63, 0x57, 0x84, 0x7c, 0x43, 0xd6, 0xeb, 0x65,
0xbb, 0xd2, 0xf1, 0x7a, 0xf5, 0xb0, 0x64, 0x0e, 0x0b, 0x62, 0xbd, 0x5e, 0xfe, 0xc8, 0x71, 0xb7,
0xda, 0xbe, 0x79, 0xdd, 0xae, 0x76, 0xbc, 0x5e, 0xf9, 0x7b, 0x0e, 0x99, 0x69, 0xdd, 0x2f, 0x3e,
0xf1, 0xb3, 0x86, 0x59, 0x83, 0xd4, 0x52, 0x35, 0x56, 0x7a, 0xaa, 0x68, 0x89, 0x35, 0x49, 0x5d,
0xa4, 0xc6, 0x80, 0x12, 0x33, 0xea, 0xb1, 0x13, 0xd2, 0x18, 0xc9, 0x21, 0x1a, 0x10, 0xa0, 0x9c,
0xa5, 0x07, 0x8c, 0x91, 0xe3, 0x4c, 0x18, 0xf2, 0x89, 0x4e, 0x8d, 0x74, 0x60, 0x69, 0x99, 0x5d,
0x91, 0xff, 0x63, 0xb0, 0x96, 0x8f, 0xc0, 0xe2, 0xd0, 0xe8, 0x18, 0x85, 0x56, 0x8e, 0x0b, 0x67,
0x51, 0xab, 0x68, 0x46, 0xfd, 0x2c, 0x28, 0x31, 0x30, 0x04, 0x63, 0x20, 0x40, 0xc5, 0x63, 0xa0,
0x15, 0xd6, 0x22, 0x27, 0x89, 0x81, 0x89, 0x84, 0x29, 0x26, 0x46, 0x4e, 0xb8, 0x98, 0xd1, 0x2a,
0xbb, 0x24, 0xed, 0xc4, 0xe8, 0xa1, 0x8c, 0x00, 0x13, 0x29, 0x5c, 0x6a, 0xc0, 0xa2, 0x0d, 0xf5,
0x14, 0x9d, 0xa6, 0xb5, 0xac, 0xce, 0x1f, 0xde, 0x89, 0xb4, 0x72, 0x20, 0x23, 0xe9, 0x66, 0xb4,
0xce, 0xfe, 0x25, 0x2d, 0x0b, 0x2a, 0x40, 0xeb, 0xb8, 0x4b, 0x2d, 0xa6, 0x49, 0xc0, 0xb3, 0x0e,
0x0f, 0xb3, 0xbc, 0xd6, 0x49, 0x31, 0x06, 0x63, 0x31, 0xe1, 0x62, 0x6c, 0x51, 0x2a, 0xeb, 0x78,
0x14, 0x41, 0x40, 0x09, 0xbb, 0x20, 0xe7, 0xbf, 0x79, 0x13, 0x50, 0x81, 0x54, 0x23, 0xda, 0xf8,
0x25, 0xb2, 0x38, 0x05, 0xdc, 0xdb, 0xb4, 0xc9, 0x28, 0x69, 0x06, 0xd2, 0x26, 0x11, 0x9f, 0x15,
0x63, 0x1d, 0xb1, 0x1a, 0x29, 0x0f, 0xa4, 0xa6, 0xc7, 0xec, 0x8c, 0xd0, 0x58, 0x41, 0xac, 0x95,
0x14, 0x68, 0x20, 0xd6, 0x13, 0x08, 0xe8, 0x09, 0x3b, 0x27, 0x2c, 0x35, 0x11, 0xa6, 0x6a, 0x98,
0x9a, 0x48, 0xaa, 0x11, 0xc6, 0x3a, 0x00, 0xca, 0xd8, 0x73, 0xd2, 0xcb, 0xe7, 0x14, 0x3a, 0x8e,
0x53, 0x25, 0xdd, 0x0c, 0xb9, 0xb5, 0xe0, 0x70, 0x1a, 0x82, 0x42, 0x5b, 0x74, 0x83, 0x4e, 0x8f,
0x41, 0x59, 0xda, 0x62, 0x1d, 0x72, 0xb9, 0x2f, 0x9b, 0x63, 0x16, 0x07, 0x10, 0xe9, 0x29, 0x0e,
0x78, 0xc4, 0x95, 0x00, 0x7a, 0xc6, 0xae, 0xc9, 0xb3, 0xbf, 0x11, 0xe8, 0x42, 0x03, 0x36, 0xd4,
0x51, 0x40, 0xff, 0xe9, 0xfa, 0x75, 0x4a, 0x69, 0xd7, 0xaf, 0x9f, 0xd2, 0xd3, 0xeb, 0x23, 0x50,
0x16, 0x53, 0x0b, 0x26, 0x1b, 0xc7, 0x5e, 0xff, 0x27, 0x95, 0x88, 0xd2, 0x00, 0x70, 0xca, 0x9d,
0x08, 0xb3, 0xdb, 0x44, 0x2e, 0x84, 0x4e, 0x95, 0x1b, 0xd4, 0x48, 0xa5, 0x78, 0x6d, 0x47, 0xef,
0x1a, 0xfd, 0x17, 0x6f, 0xf7, 0xdf, 0xe1, 0xa6, 0x9a, 0xef, 0x5e, 0x7d, 0x0d, 0x00, 0x00, 0xff,
0xff, 0x57, 0x49, 0x09, 0x47, 0x5f, 0x03, 0x00, 0x00,
}

View File

@@ -0,0 +1,48 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message SyncSetting {
Type type = 1;
uint64 clock = 2;
oneof value {
string value_string = 3;
bytes value_bytes = 4;
bool value_bool = 5;
int64 value_int64 = 6;
}
enum Type {
UNKNOWN = 0;
CURRENCY = 1;
GIF_RECENTS = 2;
GIF_FAVOURITES = 3;
MESSAGES_FROM_CONTACTS_ONLY = 4;
PREFERRED_NAME = 5;
PREVIEW_PRIVACY = 6;
PROFILE_PICTURES_SHOW_TO = 7;
PROFILE_PICTURES_VISIBILITY = 8;
SEND_STATUS_UPDATES = 9;
STICKERS_PACKS_INSTALLED = 10;
STICKERS_PACKS_PENDING = 11;
STICKERS_RECENT_STICKERS = 12;
DISPLAY_NAME = 13;
BIO = 14;
MNEMONIC_REMOVED = 15;
reserved 16;
reserved "ENS_USERNAMES";
reserved 17;
reserved "INCLUDE_WATCHONLY_ACCOUNT";
URL_UNFURLING_MODE = 18;
SHOW_COMMUNITY_ASSET_WHEN_SENDING_TOKENS = 19;
DISPLAY_ASSETS_BELOW_BALANCE = 20;
DISPLAY_ASSETS_BELOW_BALANCE_THRESHOLD = 21;
}
}
/* TODOs
LastBackup uint64
BackupEnabled bool
*/

View File

@@ -0,0 +1,310 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: url_data.proto
package protobuf
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type Community struct {
DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
MembersCount uint32 `protobuf:"varint,3,opt,name=members_count,json=membersCount,proto3" json:"members_count,omitempty"`
Color string `protobuf:"bytes,4,opt,name=color,proto3" json:"color,omitempty"`
TagIndices []uint32 `protobuf:"varint,5,rep,packed,name=tag_indices,json=tagIndices,proto3" json:"tag_indices,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Community) Reset() { *m = Community{} }
func (m *Community) String() string { return proto.CompactTextString(m) }
func (*Community) ProtoMessage() {}
func (*Community) Descriptor() ([]byte, []int) {
return fileDescriptor_5f1e15b5f0115710, []int{0}
}
func (m *Community) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Community.Unmarshal(m, b)
}
func (m *Community) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Community.Marshal(b, m, deterministic)
}
func (m *Community) XXX_Merge(src proto.Message) {
xxx_messageInfo_Community.Merge(m, src)
}
func (m *Community) XXX_Size() int {
return xxx_messageInfo_Community.Size(m)
}
func (m *Community) XXX_DiscardUnknown() {
xxx_messageInfo_Community.DiscardUnknown(m)
}
var xxx_messageInfo_Community proto.InternalMessageInfo
func (m *Community) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *Community) GetDescription() string {
if m != nil {
return m.Description
}
return ""
}
func (m *Community) GetMembersCount() uint32 {
if m != nil {
return m.MembersCount
}
return 0
}
func (m *Community) GetColor() string {
if m != nil {
return m.Color
}
return ""
}
func (m *Community) GetTagIndices() []uint32 {
if m != nil {
return m.TagIndices
}
return nil
}
type Channel struct {
DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
Emoji string `protobuf:"bytes,3,opt,name=emoji,proto3" json:"emoji,omitempty"`
Color string `protobuf:"bytes,4,opt,name=color,proto3" json:"color,omitempty"`
Community *Community `protobuf:"bytes,5,opt,name=community,proto3" json:"community,omitempty"`
Uuid string `protobuf:"bytes,6,opt,name=uuid,proto3" json:"uuid,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Channel) Reset() { *m = Channel{} }
func (m *Channel) String() string { return proto.CompactTextString(m) }
func (*Channel) ProtoMessage() {}
func (*Channel) Descriptor() ([]byte, []int) {
return fileDescriptor_5f1e15b5f0115710, []int{1}
}
func (m *Channel) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Channel.Unmarshal(m, b)
}
func (m *Channel) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Channel.Marshal(b, m, deterministic)
}
func (m *Channel) XXX_Merge(src proto.Message) {
xxx_messageInfo_Channel.Merge(m, src)
}
func (m *Channel) XXX_Size() int {
return xxx_messageInfo_Channel.Size(m)
}
func (m *Channel) XXX_DiscardUnknown() {
xxx_messageInfo_Channel.DiscardUnknown(m)
}
var xxx_messageInfo_Channel proto.InternalMessageInfo
func (m *Channel) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *Channel) GetDescription() string {
if m != nil {
return m.Description
}
return ""
}
func (m *Channel) GetEmoji() string {
if m != nil {
return m.Emoji
}
return ""
}
func (m *Channel) GetColor() string {
if m != nil {
return m.Color
}
return ""
}
func (m *Channel) GetCommunity() *Community {
if m != nil {
return m.Community
}
return nil
}
func (m *Channel) GetUuid() string {
if m != nil {
return m.Uuid
}
return ""
}
type User struct {
DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
Color string `protobuf:"bytes,3,opt,name=color,proto3" json:"color,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *User) Reset() { *m = User{} }
func (m *User) String() string { return proto.CompactTextString(m) }
func (*User) ProtoMessage() {}
func (*User) Descriptor() ([]byte, []int) {
return fileDescriptor_5f1e15b5f0115710, []int{2}
}
func (m *User) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_User.Unmarshal(m, b)
}
func (m *User) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_User.Marshal(b, m, deterministic)
}
func (m *User) XXX_Merge(src proto.Message) {
xxx_messageInfo_User.Merge(m, src)
}
func (m *User) XXX_Size() int {
return xxx_messageInfo_User.Size(m)
}
func (m *User) XXX_DiscardUnknown() {
xxx_messageInfo_User.DiscardUnknown(m)
}
var xxx_messageInfo_User proto.InternalMessageInfo
func (m *User) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *User) GetDescription() string {
if m != nil {
return m.Description
}
return ""
}
func (m *User) GetColor() string {
if m != nil {
return m.Color
}
return ""
}
type URLData struct {
// Community, Channel, or User
Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
Shard *Shard `protobuf:"bytes,2,opt,name=shard,proto3" json:"shard,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *URLData) Reset() { *m = URLData{} }
func (m *URLData) String() string { return proto.CompactTextString(m) }
func (*URLData) ProtoMessage() {}
func (*URLData) Descriptor() ([]byte, []int) {
return fileDescriptor_5f1e15b5f0115710, []int{3}
}
func (m *URLData) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_URLData.Unmarshal(m, b)
}
func (m *URLData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_URLData.Marshal(b, m, deterministic)
}
func (m *URLData) XXX_Merge(src proto.Message) {
xxx_messageInfo_URLData.Merge(m, src)
}
func (m *URLData) XXX_Size() int {
return xxx_messageInfo_URLData.Size(m)
}
func (m *URLData) XXX_DiscardUnknown() {
xxx_messageInfo_URLData.DiscardUnknown(m)
}
var xxx_messageInfo_URLData proto.InternalMessageInfo
func (m *URLData) GetContent() []byte {
if m != nil {
return m.Content
}
return nil
}
func (m *URLData) GetShard() *Shard {
if m != nil {
return m.Shard
}
return nil
}
func init() {
proto.RegisterType((*Community)(nil), "protobuf.Community")
proto.RegisterType((*Channel)(nil), "protobuf.Channel")
proto.RegisterType((*User)(nil), "protobuf.User")
proto.RegisterType((*URLData)(nil), "protobuf.URLData")
}
func init() {
proto.RegisterFile("url_data.proto", fileDescriptor_5f1e15b5f0115710)
}
var fileDescriptor_5f1e15b5f0115710 = []byte{
// 321 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x92, 0xb1, 0x4e, 0xc3, 0x30,
0x10, 0x40, 0x15, 0xda, 0xb4, 0xe4, 0xdc, 0x80, 0x64, 0x3a, 0x58, 0x2c, 0x84, 0x20, 0xa4, 0x4c,
0x41, 0x94, 0x91, 0x8d, 0xb2, 0x80, 0x10, 0x83, 0x51, 0x17, 0x96, 0xc8, 0x4d, 0x4c, 0x6b, 0x14,
0xdb, 0x95, 0xe3, 0x0c, 0xfd, 0x27, 0x7e, 0x82, 0x3f, 0x43, 0xb5, 0x1b, 0xc2, 0xc2, 0xd6, 0xc9,
0x77, 0xef, 0x4e, 0xe7, 0xe7, 0x93, 0xe1, 0xa4, 0x35, 0x75, 0x51, 0x31, 0xcb, 0xf2, 0x8d, 0xd1,
0x56, 0xe3, 0x63, 0x77, 0x2c, 0xdb, 0x8f, 0x73, 0xd4, 0xac, 0x99, 0xa9, 0x3c, 0x4e, 0xbf, 0x02,
0x88, 0xe6, 0x5a, 0xca, 0x56, 0x09, 0xbb, 0xc5, 0x97, 0x30, 0xa9, 0x44, 0xb3, 0xa9, 0xd9, 0xb6,
0x50, 0x4c, 0x72, 0x12, 0x24, 0x41, 0x16, 0x51, 0xb4, 0x67, 0xaf, 0x4c, 0x72, 0x9c, 0x00, 0xaa,
0x78, 0x53, 0x1a, 0xb1, 0xb1, 0x42, 0x2b, 0x72, 0xb4, 0xef, 0xe8, 0x11, 0xbe, 0x82, 0x58, 0x72,
0xb9, 0xe4, 0xa6, 0x29, 0x4a, 0xdd, 0x2a, 0x4b, 0x06, 0x49, 0x90, 0xc5, 0x74, 0xb2, 0x87, 0xf3,
0x1d, 0xc3, 0x53, 0x08, 0x4b, 0x5d, 0x6b, 0x43, 0x86, 0x6e, 0x80, 0x4f, 0xf0, 0x05, 0x20, 0xcb,
0x56, 0x85, 0x50, 0x95, 0x28, 0x79, 0x43, 0xc2, 0x64, 0x90, 0xc5, 0x14, 0x2c, 0x5b, 0x3d, 0x79,
0x92, 0x7e, 0x07, 0x30, 0x9e, 0xaf, 0x99, 0x52, 0xbc, 0x3e, 0x8c, 0xec, 0x14, 0x42, 0x2e, 0xf5,
0xa7, 0x70, 0x92, 0x11, 0xf5, 0xc9, 0x3f, 0x76, 0xb7, 0x10, 0x95, 0xdd, 0xaa, 0x48, 0x98, 0x04,
0x19, 0x9a, 0x9d, 0xe5, 0xdd, 0x5a, 0xf3, 0xdf, 0x2d, 0xd2, 0xbe, 0x0b, 0x63, 0x18, 0xb6, 0xad,
0xa8, 0xc8, 0xc8, 0xcd, 0x71, 0x71, 0xca, 0x60, 0xb8, 0x68, 0xb8, 0x39, 0x98, 0xbf, 0x37, 0x1d,
0xfc, 0x31, 0x4d, 0x9f, 0x61, 0xbc, 0xa0, 0x2f, 0x8f, 0xcc, 0x32, 0x4c, 0x60, 0x5c, 0x6a, 0x65,
0xb9, 0xb2, 0xee, 0x82, 0x09, 0xed, 0x52, 0x7c, 0x0d, 0xa1, 0xfb, 0x09, 0x6e, 0x2c, 0x9a, 0x9d,
0xf6, 0x4f, 0x79, 0xdb, 0x61, 0xea, 0xab, 0x0f, 0xf1, 0x3b, 0xca, 0x6f, 0xee, 0xbb, 0xda, 0x72,
0xe4, 0xa2, 0xbb, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x71, 0x2e, 0xf3, 0xde, 0x60, 0x02, 0x00,
0x00,
}

View File

@@ -0,0 +1,35 @@
syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
import "shard.proto";
message Community {
string display_name = 1;
string description = 2;
uint32 members_count = 3;
string color = 4;
repeated uint32 tag_indices = 5;
}
message Channel {
string display_name = 1;
string description = 2;
string emoji = 3;
string color = 4;
Community community = 5;
string uuid = 6;
}
message User {
string display_name = 1;
string description = 2;
string color = 3;
}
message URLData {
// Community, Channel, or User
bytes content = 1;
Shard shard = 2;
}