From f5faa4f2ed76bc559cff76c6571ceca33141a34c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Berthommier?= Date: Fri, 26 Jan 2024 20:43:18 +0100 Subject: [PATCH] feat(server): fix queue processing --- server/api/servarr/base.ts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/server/api/servarr/base.ts b/server/api/servarr/base.ts index c004b474..548f0794 100644 --- a/server/api/servarr/base.ts +++ b/server/api/servarr/base.ts @@ -48,6 +48,17 @@ export interface QualityProfile { name: string; } +interface QueueStatus { + id: number; + totalCount: number; + count: number; + unknownCount: number; + errors: boolean; + warnings: boolean; + unknownErrors: boolean; + unknownWarnings: boolean; +} + interface QueueItem { size: number; title: string; @@ -155,13 +166,28 @@ class ServarrBase extends ExternalAPI { } }; + public getQueueStatus = async (): Promise => { + try { + const response = await this.axios.get(`/queue/status`); + + return response.data; + } catch (e) { + throw new Error( + `[${this.apiName}] Failed to retrieve queue status: ${e.message}` + ); + } + }; + public getQueue = async (): Promise<(QueueItem & QueueItemAppendT)[]> => { try { + const { totalCount } = await this.getQueueStatus(); + const response = await this.axios.get>( `/queue`, { params: { includeEpisode: true, + pageSize: totalCount, }, } );