github.com/status-im/status-go@v1.1.0/protocol/protobuf/chat_identity.proto (about) 1 syntax = "proto3"; 2 3 option go_package = "./;protobuf"; 4 package protobuf; 5 6 import "enums.proto"; 7 import "profile_showcase.proto"; 8 9 // ChatIdentity represents the user defined identity associated with their public chat key 10 message ChatIdentity { 11 // Lamport timestamp of the message 12 uint64 clock = 1; 13 14 // ens_name is the valid ENS name associated with the chat key 15 string ens_name = 2; 16 17 // images is a string indexed mapping of images associated with an identity 18 map<string, IdentityImage> images = 3; 19 20 // display name is the user set identity 21 string display_name = 4; 22 23 // description is the user set description 24 string description = 5; 25 26 string color = 6; 27 28 string emoji = 7; 29 30 repeated SocialLink social_links = 8 [deprecated = true]; 31 32 // first known message timestamp in seconds (valid only for community chats for now) 33 // 0 - unknown 34 // 1 - no messages 35 uint32 first_message_timestamp = 9; 36 37 ProfileShowcase profile_showcase = 10; 38 39 uint32 customization_color = 11; 40 } 41 42 // ProfileImage represents data associated with a user's profile image 43 message IdentityImage { 44 45 // payload is a context based payload for the profile image data, 46 // context is determined by the `source_type` 47 bytes payload = 1; 48 49 // source_type signals the image payload source 50 SourceType source_type = 2; 51 52 // image_format signals the image format and method of parsing the payload 53 ImageFormat image_format = 3; 54 55 // encryption_keys is a list of encrypted keys that can be used to decrypted an encrypted payload 56 repeated bytes encryption_keys = 4; 57 58 // encrypted signals the encryption state of the payload, default is false. 59 bool encrypted = 5; 60 61 // SourceType are the predefined types of image source allowed 62 enum SourceType { 63 UNKNOWN_SOURCE_TYPE = 0; 64 65 // RAW_PAYLOAD image byte data 66 RAW_PAYLOAD = 1; 67 68 // ENS_AVATAR uses the ENS record's resolver get-text-data.avatar data 69 // The `payload` field will be ignored if ENS_AVATAR is selected 70 // The application will read and parse the ENS avatar data as image payload data, URLs will be ignored 71 // The parent `ChatMessageIdentity` must have a valid `ens_name` set 72 ENS_AVATAR = 2; 73 } 74 } 75 76 // SocialLinks represents social link assosiated with given chat identity (personal/community) 77 message SocialLink { 78 string text = 1; 79 string url = 2; 80 }