diff --git a/Iceshrimp.Backend/Core/Federation/ActivityPub/ActivityHandlerService.cs b/Iceshrimp.Backend/Core/Federation/ActivityPub/ActivityHandlerService.cs index ad03cbb5..f65ff226 100644 --- a/Iceshrimp.Backend/Core/Federation/ActivityPub/ActivityHandlerService.cs +++ b/Iceshrimp.Backend/Core/Federation/ActivityPub/ActivityHandlerService.cs @@ -269,7 +269,8 @@ public class ActivityHandlerService( throw GracefulException.UnprocessableEntity("Invalid or unsupported announce object"); var dbNote = await noteSvc.ResolveNoteAsync(note.Id, note); - await noteSvc.CreateNoteAsync(resolvedActor, announce.GetVisibility(activity.Actor), renote: dbNote); + await noteSvc.CreateNoteAsync(resolvedActor, announce.GetVisibility(activity.Actor), renote: dbNote, + uri: announce.Id); return; } case ASEmojiReact reaction: diff --git a/Iceshrimp.Backend/Core/Services/NoteService.cs b/Iceshrimp.Backend/Core/Services/NoteService.cs index 95f9bc49..63a7cbb5 100644 --- a/Iceshrimp.Backend/Core/Services/NoteService.cs +++ b/Iceshrimp.Backend/Core/Services/NoteService.cs @@ -59,7 +59,7 @@ public class NoteService( public async Task CreateNoteAsync( User user, Note.NoteVisibility visibility, string? text = null, string? cw = null, Note? reply = null, Note? renote = null, IReadOnlyCollection? attachments = null, Poll? poll = null, - bool localOnly = false + bool localOnly = false, string? uri = null ) { logger.LogDebug("Creating note for local user {id}", user.Id); @@ -130,6 +130,7 @@ public class NoteService( var note = new Note { Id = IdHelpers.GenerateSlowflakeId(), + Uri = uri, Text = text?.Trim(), Cw = cw?.Trim(), Reply = reply,