diff options
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/api/endpoints/admin/emoji/add.ts | 5 | ||||
| -rw-r--r-- | src/server/api/stream/index.ts | 9 |
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リクエスト要求時 */ |