Fix Announce Activity
This commit is contained in:
@ -40,11 +40,13 @@ export default async function(resolver: Resolver, actor: IRemoteUser, activity:
|
||||
if (!note.to.includes('https://www.w3.org/ns/activitystreams#Public')) {
|
||||
if (note.cc.includes('https://www.w3.org/ns/activitystreams#Public')) {
|
||||
visibility = 'home';
|
||||
} else if (note.to.includes(`${actor.uri}/followers`)) { // TODO: person.followerと照合するべき?
|
||||
visibility = 'followers';
|
||||
} else {
|
||||
visibility = 'specified';
|
||||
visibleUsers = await Promise.all(note.to.map(uri => resolvePerson(uri)));
|
||||
}
|
||||
} if (activity.cc.length == 0) visibility = 'followers';
|
||||
}
|
||||
//#endergion
|
||||
|
||||
await post(actor, {
|
||||
|
@ -1,5 +1,15 @@
|
||||
export default (id: string, object: any) => ({
|
||||
type: 'Announce',
|
||||
id,
|
||||
object
|
||||
});
|
||||
import config from '../../../config';
|
||||
import { INote } from '../../../models/note';
|
||||
|
||||
export default (object: any, note: INote) => {
|
||||
const attributedTo = `${config.url}/users/${note.userId}`;
|
||||
|
||||
return {
|
||||
id: `${config.url}/notes/${note._id}`,
|
||||
type: 'Announce',
|
||||
published: note.createdAt.toISOString(),
|
||||
to: ['https://www.w3.org/ns/activitystreams#Public'],
|
||||
cc: [attributedTo, `${attributedTo}/followers`],
|
||||
object
|
||||
};
|
||||
};
|
||||
|
Reference in New Issue
Block a user