summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/StreamingApiServerService.ts
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2023-04-08 21:27:21 +0900
committerGitHub <noreply@github.com>2023-04-08 21:27:21 +0900
commita096f621cf5a47c3330935c2b9b5bfe54dfc0091 (patch)
treeb3b6a1a1ce5105091bebc80b96cfd5a73402da80 /packages/backend/src/server/api/StreamingApiServerService.ts
parentMerge pull request #10402 from misskey-dev/develop (diff)
parent[ci skip] Update CHANGELOG.md (diff)
downloadmisskey-a096f621cf5a47c3330935c2b9b5bfe54dfc0091.tar.gz
misskey-a096f621cf5a47c3330935c2b9b5bfe54dfc0091.tar.bz2
misskey-a096f621cf5a47c3330935c2b9b5bfe54dfc0091.zip
Merge pull request #10506 from misskey-dev/develop
13.11.0
Diffstat (limited to 'packages/backend/src/server/api/StreamingApiServerService.ts')
-rw-r--r--packages/backend/src/server/api/StreamingApiServerService.ts29
1 files changed, 14 insertions, 15 deletions
diff --git a/packages/backend/src/server/api/StreamingApiServerService.ts b/packages/backend/src/server/api/StreamingApiServerService.ts
index 13526f277d..e0e5b71a82 100644
--- a/packages/backend/src/server/api/StreamingApiServerService.ts
+++ b/packages/backend/src/server/api/StreamingApiServerService.ts
@@ -9,6 +9,7 @@ import { NoteReadService } from '@/core/NoteReadService.js';
import { GlobalEventService } from '@/core/GlobalEventService.js';
import { NotificationService } from '@/core/NotificationService.js';
import { bindThis } from '@/decorators.js';
+import { CacheService } from '@/core/CacheService.js';
import { AuthenticateService } from './AuthenticateService.js';
import MainStreamConnection from './stream/index.js';
import { ChannelsService } from './stream/ChannelsService.js';
@@ -21,8 +22,8 @@ export class StreamingApiServerService {
@Inject(DI.config)
private config: Config,
- @Inject(DI.redisSubscriber)
- private redisSubscriber: Redis.Redis,
+ @Inject(DI.redisForPubsub)
+ private redisForPubsub: Redis.Redis,
@Inject(DI.usersRepository)
private usersRepository: UsersRepository,
@@ -45,7 +46,7 @@ export class StreamingApiServerService {
@Inject(DI.userProfilesRepository)
private userProfilesRepository: UserProfilesRepository,
- private globalEventService: GlobalEventService,
+ private cacheService: CacheService,
private noteReadService: NoteReadService,
private authenticateService: AuthenticateService,
private channelsService: ChannelsService,
@@ -73,8 +74,6 @@ export class StreamingApiServerService {
return;
}
- const connection = request.accept();
-
const ev = new EventEmitter();
async function onRedisMessage(_: string, data: string): Promise<void> {
@@ -82,22 +81,22 @@ export class StreamingApiServerService {
ev.emit(parsed.channel, parsed.message);
}
- this.redisSubscriber.on('message', onRedisMessage);
+ this.redisForPubsub.on('message', onRedisMessage);
const main = new MainStreamConnection(
- this.followingsRepository,
- this.mutingsRepository,
- this.renoteMutingsRepository,
- this.blockingsRepository,
- this.channelFollowingsRepository,
- this.userProfilesRepository,
this.channelsService,
- this.globalEventService,
this.noteReadService,
this.notificationService,
- connection, ev, user, miapp,
+ this.cacheService,
+ ev, user, miapp,
);
+ await main.init();
+
+ const connection = request.accept();
+
+ main.init2(connection);
+
const intervalId = user ? setInterval(() => {
this.usersRepository.update(user.id, {
lastActiveDate: new Date(),
@@ -112,7 +111,7 @@ export class StreamingApiServerService {
connection.once('close', () => {
ev.removeAllListeners();
main.dispose();
- this.redisSubscriber.off('message', onRedisMessage);
+ this.redisForPubsub.off('message', onRedisMessage);
if (intervalId) clearInterval(intervalId);
});