diff options
Diffstat (limited to 'shared/server-commands/videos/streaming-playlists-command.ts')
-rw-r--r-- | shared/server-commands/videos/streaming-playlists-command.ts | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/shared/server-commands/videos/streaming-playlists-command.ts b/shared/server-commands/videos/streaming-playlists-command.ts new file mode 100644 index 000000000..5d40d35cb --- /dev/null +++ b/shared/server-commands/videos/streaming-playlists-command.ts | |||
@@ -0,0 +1,44 @@ | |||
1 | import { HttpStatusCode } from '@shared/models' | ||
2 | import { unwrapBody, unwrapTextOrDecode, unwrapBodyOrDecodeToJSON } from '../requests' | ||
3 | import { AbstractCommand, OverrideCommandOptions } from '../shared' | ||
4 | |||
5 | export class StreamingPlaylistsCommand extends AbstractCommand { | ||
6 | |||
7 | get (options: OverrideCommandOptions & { | ||
8 | url: string | ||
9 | }) { | ||
10 | return unwrapTextOrDecode(this.getRawRequest({ | ||
11 | ...options, | ||
12 | |||
13 | url: options.url, | ||
14 | implicitToken: false, | ||
15 | defaultExpectedStatus: HttpStatusCode.OK_200 | ||
16 | })) | ||
17 | } | ||
18 | |||
19 | getSegment (options: OverrideCommandOptions & { | ||
20 | url: string | ||
21 | range?: string | ||
22 | }) { | ||
23 | return unwrapBody<Buffer>(this.getRawRequest({ | ||
24 | ...options, | ||
25 | |||
26 | url: options.url, | ||
27 | range: options.range, | ||
28 | implicitToken: false, | ||
29 | defaultExpectedStatus: HttpStatusCode.OK_200 | ||
30 | })) | ||
31 | } | ||
32 | |||
33 | getSegmentSha256 (options: OverrideCommandOptions & { | ||
34 | url: string | ||
35 | }) { | ||
36 | return unwrapBodyOrDecodeToJSON<{ [ id: string ]: string }>(this.getRawRequest({ | ||
37 | ...options, | ||
38 | |||
39 | url: options.url, | ||
40 | implicitToken: false, | ||
41 | defaultExpectedStatus: HttpStatusCode.OK_200 | ||
42 | })) | ||
43 | } | ||
44 | } | ||