rasa.signal-service-java.2.15.3_unofficial_106.source-code.Groups.proto Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of signal-service-java Show documentation
Show all versions of signal-service-java Show documentation
Signal Service communication library for Java, unofficial fork
// Proto schema formatted by Wire, do not edit.
// Source: Groups.proto
syntax = "proto3";
option java_package = "org.signal.storageservice.protos.groups";
option java_multiple_files = true;
message AvatarUploadAttributes {
string key = 1;
string credential = 2;
string acl = 3;
string algorithm = 4;
string date = 5;
string policy = 6;
string signature = 7;
}
message Member {
bytes userId = 1;
Role role = 2;
bytes profileKey = 3;
// Only set when sending to server
bytes presentation = 4;
uint32 joinedAtRevision = 5;
enum Role {
UNKNOWN = 0;
DEFAULT = 1;
ADMINISTRATOR = 2;
}
}
message PendingMember {
Member member = 1;
bytes addedByUserId = 2;
uint64 timestamp = 3;
}
message RequestingMember {
bytes userId = 1;
bytes profileKey = 2;
// Only set when sending to server
bytes presentation = 3;
uint64 timestamp = 4;
}
message BannedMember {
bytes userId = 1;
uint64 timestamp = 2;
}
message AccessControl {
AccessRequired attributes = 1;
AccessRequired members = 2;
AccessRequired addFromInviteLink = 3;
enum AccessRequired {
UNKNOWN = 0;
ANY = 1;
MEMBER = 2;
ADMINISTRATOR = 3;
UNSATISFIABLE = 4;
}
}
message Group {
bytes publicKey = 1;
bytes title = 2;
string avatar = 3;
bytes disappearingMessagesTimer = 4;
AccessControl accessControl = 5;
uint32 revision = 6;
repeated Member members = 7;
repeated PendingMember pendingMembers = 8;
repeated RequestingMember requestingMembers = 9;
bytes inviteLinkPassword = 10;
bytes description = 11;
bool announcementsOnly = 12;
repeated BannedMember bannedMembers = 13;
}
message GroupChange {
bytes actions = 1;
bytes serverSignature = 2;
uint32 changeEpoch = 3;
message Actions {
bytes sourceServiceId = 1;
uint32 revision = 2;
repeated AddMemberAction addMembers = 3;
repeated DeleteMemberAction deleteMembers = 4;
repeated ModifyMemberRoleAction modifyMemberRoles = 5;
repeated ModifyMemberProfileKeyAction modifyMemberProfileKeys = 6;
repeated AddPendingMemberAction addPendingMembers = 7;
repeated DeletePendingMemberAction deletePendingMembers = 8;
repeated PromotePendingMemberAction promotePendingMembers = 9;
ModifyTitleAction modifyTitle = 10;
ModifyAvatarAction modifyAvatar = 11;
ModifyDisappearingMessagesTimerAction modifyDisappearingMessagesTimer = 12;
ModifyAttributesAccessControlAction modifyAttributesAccess = 13;
ModifyMembersAccessControlAction modifyMemberAccess = 14;
ModifyAddFromInviteLinkAccessControlAction modifyAddFromInviteLinkAccess = 15;
repeated AddRequestingMemberAction addRequestingMembers = 16;
repeated DeleteRequestingMemberAction deleteRequestingMembers = 17;
repeated PromoteRequestingMemberAction promoteRequestingMembers = 18;
ModifyInviteLinkPasswordAction modifyInviteLinkPassword = 19;
ModifyDescriptionAction modifyDescription = 20;
ModifyAnnouncementsOnlyAction modifyAnnouncementsOnly = 21;
repeated AddBannedMemberAction addBannedMembers = 22;
repeated DeleteBannedMemberAction deleteBannedMembers = 23;
repeated PromotePendingPniAciMemberProfileKeyAction promotePendingPniAciMembers = 24;
message AddMemberAction {
Member added = 1;
bool joinFromInviteLink = 2;
}
message DeleteMemberAction {
bytes deletedUserId = 1;
}
message ModifyMemberRoleAction {
bytes userId = 1;
Member.Role role = 2;
}
message ModifyMemberProfileKeyAction {
// Only set when sending to server
bytes presentation = 1;
// Only set when receiving from server
bytes user_id = 2;
// Only set when receiving from server
bytes profile_key = 3;
}
message AddPendingMemberAction {
PendingMember added = 1;
}
message DeletePendingMemberAction {
bytes deletedUserId = 1;
}
message PromotePendingMemberAction {
// Only set when sending to server
bytes presentation = 1;
// Only set when receiving from server
bytes user_id = 2;
// Only set when receiving from server
bytes profile_key = 3;
}
message PromotePendingPniAciMemberProfileKeyAction {
// Only set when sending to server
bytes presentation = 1;
// Only set when receiving from server
bytes userId = 2;
// Only set when receiving from server
bytes pni = 3;
// Only set when receiving from server
bytes profileKey = 4;
}
message AddRequestingMemberAction {
RequestingMember added = 1;
}
message DeleteRequestingMemberAction {
bytes deletedUserId = 1;
}
message PromoteRequestingMemberAction {
bytes userId = 1;
Member.Role role = 2;
}
message AddBannedMemberAction {
BannedMember added = 1;
}
message DeleteBannedMemberAction {
bytes deletedUserId = 1;
}
message ModifyTitleAction {
bytes title = 1;
}
message ModifyDescriptionAction {
bytes description = 1;
}
message ModifyAvatarAction {
string avatar = 1;
}
message ModifyDisappearingMessagesTimerAction {
bytes timer = 1;
}
message ModifyAttributesAccessControlAction {
AccessControl.AccessRequired attributesAccess = 1;
}
message ModifyMembersAccessControlAction {
AccessControl.AccessRequired membersAccess = 1;
}
message ModifyAddFromInviteLinkAccessControlAction {
AccessControl.AccessRequired addFromInviteLinkAccess = 1;
}
message ModifyInviteLinkPasswordAction {
bytes inviteLinkPassword = 1;
}
message ModifyAnnouncementsOnlyAction {
bool announcementsOnly = 1;
}
}
}
message GroupResponse {
Group group = 1;
bytes groupSendEndorsementsResponse = 2;
}
message GroupChanges {
repeated GroupChangeState groupChanges = 1;
bytes groupSendEndorsementsResponse = 2;
message GroupChangeState {
GroupChange groupChange = 1;
Group groupState = 2;
}
}
message GroupChangeResponse {
GroupChange groupChange = 1;
bytes groupSendEndorsementsResponse = 2;
}
message GroupAttributeBlob {
oneof content {
string title = 1;
bytes avatar = 2;
uint32 disappearingMessagesDuration = 3;
string description = 4;
}
}
message GroupInviteLink {
oneof contents {
GroupInviteLinkContentsV1 v1Contents = 1;
}
message GroupInviteLinkContentsV1 {
bytes groupMasterKey = 1;
bytes inviteLinkPassword = 2;
}
}
message GroupJoinInfo {
bytes publicKey = 1;
bytes title = 2;
string avatar = 3;
uint32 memberCount = 4;
AccessControl.AccessRequired addFromInviteLink = 5;
uint32 revision = 6;
bool pendingAdminApproval = 7;
bytes description = 8;
}
message GroupExternalCredential {
string token = 1;
}