From 1131ce8a716b2cd2b4ed1253af40b26ae0631297 Mon Sep 17 00:00:00 2001
From: syuilo <syuilotan@yahoo.co.jp>
Date: Mon, 23 Apr 2018 15:37:27 +0900
Subject: [PATCH] =?UTF-8?q?sharedInbox=E3=82=92=E6=8F=90=E4=BE=9B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/remote/activitypub/renderer/person.ts |  1 +
 src/server/activitypub.ts                 | 10 +++++++---
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/src/remote/activitypub/renderer/person.ts b/src/remote/activitypub/renderer/person.ts
index f1c8056a75..424305f8d3 100644
--- a/src/remote/activitypub/renderer/person.ts
+++ b/src/remote/activitypub/renderer/person.ts
@@ -10,6 +10,7 @@ export default user => {
 		id,
 		inbox: `${id}/inbox`,
 		outbox: `${id}/outbox`,
+		sharedInbox: `${config.url}/inbox`,
 		url: `${config.url}/@${user.username}`,
 		preferredUsername: user.username,
 		name: user.name,
diff --git a/src/server/activitypub.ts b/src/server/activitypub.ts
index 73ed43406d..3c07a3e2f2 100644
--- a/src/server/activitypub.ts
+++ b/src/server/activitypub.ts
@@ -1,4 +1,5 @@
 import * as mongo from 'mongodb';
+import * as Koa from 'koa';
 import * as Router from 'koa-router';
 const json = require('koa-json-body');
 const httpSignature = require('http-signature');
@@ -19,8 +20,7 @@ const router = new Router();
 
 //#region Routing
 
-// inbox
-router.post('/users/:user/inbox', json(), ctx => {
+function inbox(ctx: Koa.Context) {
 	let signature;
 
 	ctx.req.headers.authorization = 'Signature ' + ctx.req.headers.signature;
@@ -39,7 +39,11 @@ router.post('/users/:user/inbox', json(), ctx => {
 	}).save();
 
 	ctx.status = 202;
-});
+}
+
+// inbox
+router.post('/inbox', json(), inbox);
+router.post('/users/:user/inbox', json(), inbox);
 
 // note
 router.get('/notes/:note', async (ctx, next) => {