family update

This commit is contained in:
lendry
2026-06-24 23:17:24 +03:00
parent 9727cf3f35
commit f2366a69a0
18 changed files with 1374 additions and 103 deletions

View File

@@ -6,8 +6,13 @@ service ChatService {
rpc ListRooms (ListRoomsRequest) returns (ListRoomsResponse);
rpc CreateRoom (CreateRoomRequest) returns (ChatRoomResponse);
rpc UpdateRoomSettings (UpdateRoomSettingsRequest) returns (ChatRoomResponse);
rpc AddRoomMember (AddRoomMemberRequest) returns (ChatRoomResponse);
rpc RemoveRoomMember (RemoveRoomMemberRequest) returns (ChatRoomResponse);
rpc ListMessages (ListMessagesRequest) returns (ListMessagesResponse);
rpc SendMessage (SendMessageRequest) returns (ChatMessageResponse);
rpc EditMessage (EditMessageRequest) returns (ChatMessageResponse);
rpc DeleteMessage (DeleteMessageRequest) returns (ChatMessageResponse);
rpc MarkRoomRead (MarkRoomReadRequest) returns (MutationResponse);
rpc VotePoll (VotePollRequest) returns (ChatMessageResponse);
rpc SetRoomNotificationsMuted (SetRoomNotificationsMutedRequest) returns (MutationResponse);
}
@@ -31,6 +36,18 @@ message UpdateRoomSettingsRequest {
optional bool notificationsMuted = 4;
}
message AddRoomMemberRequest {
string userId = 1;
string roomId = 2;
string memberUserId = 3;
}
message RemoveRoomMemberRequest {
string userId = 1;
string roomId = 2;
string memberUserId = 3;
}
message ListMessagesRequest {
string userId = 1;
string roomId = 2;
@@ -50,6 +67,23 @@ message SendMessageRequest {
optional PollPayload poll = 9;
}
message EditMessageRequest {
string userId = 1;
string messageId = 2;
string content = 3;
}
message DeleteMessageRequest {
string userId = 1;
string messageId = 2;
}
message MarkRoomReadRequest {
string userId = 1;
string roomId = 2;
optional string lastMessageId = 3;
}
message PollPayload {
string question = 1;
repeated string options = 2;
@@ -75,6 +109,8 @@ message ChatRoomMemberResponse {
string displayName = 3;
bool hasAvatar = 4;
bool notificationsMuted = 5;
string familyRole = 6;
bool isChatCreator = 7;
}
message ChatRoomResponse {
@@ -86,6 +122,7 @@ message ChatRoomResponse {
string updatedAt = 6;
repeated ChatRoomMemberResponse members = 7;
optional ChatMessageResponse lastMessage = 8;
optional string createdById = 9;
}
message PollOptionResponse {
@@ -118,6 +155,9 @@ message ChatMessageResponse {
optional string metadataJson = 11;
string createdAt = 12;
optional PollResponse poll = 13;
optional string editedAt = 14;
bool isDeleted = 15;
optional bool readByAll = 16;
}
message ListRoomsResponse {

View File

@@ -33,6 +33,7 @@ service FamilyService {
rpc SearchFamilyInviteUsers (SearchFamilyInviteUsersRequest) returns (SearchFamilyInviteUsersResponse);
rpc RespondFamilyInvite (RespondFamilyInviteRequest) returns (FamilyInviteResponse);
rpc ListFamilyInvites (ListFamilyInvitesRequest) returns (ListFamilyInvitesResponse);
rpc GetFamilyPresence (GetFamilyGroupRequest) returns (FamilyPresenceResponse);
}
message AuthorizeRequest {
@@ -270,3 +271,15 @@ message ListFamilyGroupsResponse {
message MutationResponse {
int32 count = 1;
}
message FamilyPresenceMember {
string userId = 1;
string displayName = 2;
bool online = 3;
optional string lastSeenAt = 4;
}
message FamilyPresenceResponse {
repeated FamilyPresenceMember members = 1;
int32 onlineCount = 2;
}

View File

@@ -14,6 +14,9 @@ service MediaService {
rpc GetFamilyAvatarAccessUrl (FamilyAvatarAccessRequest) returns (MediaAccessResponse);
rpc CreateChatMediaUploadUrl (ChatMediaUploadRequest) returns (PresignedUploadResponse);
rpc GetChatMediaAccessUrl (ChatMediaAccessRequest) returns (MediaAccessResponse);
rpc CreateChatRoomAvatarUploadUrl (ChatRoomAvatarUploadRequest) returns (PresignedUploadResponse);
rpc ConfirmChatRoomAvatar (ConfirmChatRoomAvatarRequest) returns (ChatRoomAvatarResponse);
rpc GetChatRoomAvatarAccessUrl (ChatRoomAvatarAccessRequest) returns (MediaAccessResponse);
}
message AvatarUploadRequest {
@@ -105,3 +108,25 @@ message ChatMediaAccessRequest {
string storageKey = 3;
optional string fileName = 4;
}
message ChatRoomAvatarUploadRequest {
string requesterId = 1;
string roomId = 2;
string contentType = 3;
}
message ConfirmChatRoomAvatarRequest {
string requesterId = 1;
string roomId = 2;
string storageKey = 3;
}
message ChatRoomAvatarAccessRequest {
string requesterId = 1;
string roomId = 2;
}
message ChatRoomAvatarResponse {
string roomId = 1;
bool hasAvatar = 2;
}