summaryrefslogtreecommitdiff
path: root/packages/backend/src/core/NoteCreateService.ts
diff options
context:
space:
mode:
authorAcid Chicken (硫酸鶏) <root@acid-chicken.com>2023-04-03 13:44:32 +0900
committerAcid Chicken (硫酸鶏) <root@acid-chicken.com>2023-04-03 13:44:32 +0900
commit8d90e88e16c6b9159ac3273e3882ced5251e69d0 (patch)
treedd91ef53608285fe9ab07c70a585dcc188031581 /packages/backend/src/core/NoteCreateService.ts
parentci(#10336): use `pull_request` instead of `pull_request_target` for now (diff)
parentMerge pull request #10420 from misskey-dev/acid-chicken-patch-1 (diff)
downloadmisskey-8d90e88e16c6b9159ac3273e3882ced5251e69d0.tar.gz
misskey-8d90e88e16c6b9159ac3273e3882ced5251e69d0.tar.bz2
misskey-8d90e88e16c6b9159ac3273e3882ced5251e69d0.zip
Merge branch 'develop' of https://github.com/misskey-dev/misskey into storybook
Diffstat (limited to 'packages/backend/src/core/NoteCreateService.ts')
-rw-r--r--packages/backend/src/core/NoteCreateService.ts12
1 files changed, 12 insertions, 0 deletions
diff --git a/packages/backend/src/core/NoteCreateService.ts b/packages/backend/src/core/NoteCreateService.ts
index 7d08053761..7af7099432 100644
--- a/packages/backend/src/core/NoteCreateService.ts
+++ b/packages/backend/src/core/NoteCreateService.ts
@@ -1,6 +1,7 @@
import { setImmediate } from 'node:timers/promises';
import * as mfm from 'mfm-js';
import { In, DataSource } from 'typeorm';
+import Redis from 'ioredis';
import { Inject, Injectable, OnApplicationShutdown } from '@nestjs/common';
import { extractMentions } from '@/misc/extract-mentions.js';
import { extractCustomEmojisFromMfm } from '@/misc/extract-custom-emojis-from-mfm.js';
@@ -150,6 +151,9 @@ export class NoteCreateService implements OnApplicationShutdown {
@Inject(DI.db)
private db: DataSource,
+ @Inject(DI.redis)
+ private redisClient: Redis.Redis,
+
@Inject(DI.usersRepository)
private usersRepository: UsersRepository,
@@ -321,6 +325,14 @@ export class NoteCreateService implements OnApplicationShutdown {
const note = await this.insertNote(user, data, tags, emojis, mentionedUsers);
+ if (data.channel) {
+ this.redisClient.xadd(
+ `channelTimeline:${data.channel.id}`,
+ 'MAXLEN', '~', '1000',
+ `${this.idService.parse(note.id).date.getTime()}-*`,
+ 'note', note.id);
+ }
+
setImmediate('post created', { signal: this.#shutdownController.signal }).then(
() => this.postNoteCreated(note, user, data, silent, tags!, mentionedUsers!),
() => { /* aborted, ignore this */ },