summaryrefslogtreecommitdiff
path: root/src/server/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/api')
-rw-r--r--src/server/api/endpoints/admin/emoji/add.ts5
-rw-r--r--src/server/api/stream/index.ts9
2 files changed, 14 insertions, 0 deletions
diff --git a/src/server/api/endpoints/admin/emoji/add.ts b/src/server/api/endpoints/admin/emoji/add.ts
index f56303b32f..77e29cfb2a 100644
--- a/src/server/api/endpoints/admin/emoji/add.ts
+++ b/src/server/api/endpoints/admin/emoji/add.ts
@@ -7,6 +7,7 @@ import { insertModerationLog } from '../../../../../services/insert-moderation-l
import { ApiError } from '../../../error';
import { ID } from '../../../../../misc/cafy-id';
import rndstr from 'rndstr';
+import { publishBroadcastStream } from '../../../../../services/stream';
export const meta = {
desc: {
@@ -53,6 +54,10 @@ export default define(meta, async (ps, me) => {
await getConnection().queryResultCache!.remove(['meta_emojis']);
+ publishBroadcastStream('emojiAdded', {
+ emoji: await Emojis.pack(emoji.id)
+ });
+
insertModerationLog(me, 'addEmoji', {
emojiId: emoji.id
});
diff --git a/src/server/api/stream/index.ts b/src/server/api/stream/index.ts
index 2781d14bd9..b7cefcf5ab 100644
--- a/src/server/api/stream/index.ts
+++ b/src/server/api/stream/index.ts
@@ -39,6 +39,10 @@ export default class Connection {
this.wsConnection.on('message', this.onWsConnectionMessage);
+ this.subscriber.on('broadcast', async ({ type, body }) => {
+ this.onBroadcastMessage(type, body);
+ });
+
if (this.user) {
this.updateFollowing();
this.followingClock = setInterval(this.updateFollowing, 5000);
@@ -72,6 +76,11 @@ export default class Connection {
}
}
+ @autobind
+ private onBroadcastMessage(type: string, body: any) {
+ this.sendMessageToWs(type, body);
+ }
+
/**
* APIリクエスト要求時
*/