summaryrefslogtreecommitdiff
path: root/packages/backend/src/queue
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2023-03-20 20:12:38 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2023-03-20 20:12:38 +0900
commit54630edb0f8cf91480e19f4e8e56c05158bc3a8f (patch)
treee891f085a09ff3dcc1e54103222920f7544f6b0b /packages/backend/src/queue
parentfix(users/show): ユーザーが見つからなかった場合に404ステー... (diff)
downloadsharkey-54630edb0f8cf91480e19f4e8e56c05158bc3a8f.tar.gz
sharkey-54630edb0f8cf91480e19f4e8e56c05158bc3a8f.tar.bz2
sharkey-54630edb0f8cf91480e19f4e8e56c05158bc3a8f.zip
enhance: 使われてないアンテナは自動停止されるように
Resolve #9373
Diffstat (limited to 'packages/backend/src/queue')
-rw-r--r--packages/backend/src/queue/processors/CleanProcessorService.ts15
1 files changed, 13 insertions, 2 deletions
diff --git a/packages/backend/src/queue/processors/CleanProcessorService.ts b/packages/backend/src/queue/processors/CleanProcessorService.ts
index 7fd2cde9c0..9534454fd7 100644
--- a/packages/backend/src/queue/processors/CleanProcessorService.ts
+++ b/packages/backend/src/queue/processors/CleanProcessorService.ts
@@ -1,7 +1,7 @@
import { Inject, Injectable } from '@nestjs/common';
import { In, LessThan } from 'typeorm';
import { DI } from '@/di-symbols.js';
-import type { AntennaNotesRepository, MutedNotesRepository, NotificationsRepository, RoleAssignmentsRepository, UserIpsRepository } from '@/models/index.js';
+import type { AntennaNotesRepository, AntennasRepository, MutedNotesRepository, NotificationsRepository, RoleAssignmentsRepository, UserIpsRepository } from '@/models/index.js';
import type { Config } from '@/config.js';
import type Logger from '@/logger.js';
import { bindThis } from '@/decorators.js';
@@ -26,6 +26,9 @@ export class CleanProcessorService {
@Inject(DI.mutedNotesRepository)
private mutedNotesRepository: MutedNotesRepository,
+ @Inject(DI.antennasRepository)
+ private antennasRepository: AntennasRepository,
+
@Inject(DI.antennaNotesRepository)
private antennaNotesRepository: AntennaNotesRepository,
@@ -55,8 +58,16 @@ export class CleanProcessorService {
reason: 'word',
});
- this.antennaNotesRepository.delete({
+ this.mutedNotesRepository.delete({
id: LessThan(this.idService.genId(new Date(Date.now() - (1000 * 60 * 60 * 24 * 90)))),
+ reason: 'word',
+ });
+
+ // 7日以上使われてないアンテナを停止
+ this.antennasRepository.update({
+ lastUsedAt: LessThan(new Date(Date.now() - (1000 * 60 * 60 * 24 * 7))),
+ }, {
+ isActive: false,
});
const expiredRoleAssignments = await this.roleAssignmentsRepository.createQueryBuilder('assign')