]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/shared/shared-video-live/live-video.service.ts
Move to sass module
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-video-live / live-video.service.ts
CommitLineData
c6c0fa6c
C
1import { catchError } from 'rxjs/operators'
2import { HttpClient } from '@angular/common/http'
3import { Injectable } from '@angular/core'
4import { RestExtractor } from '@app/core'
b5b68755 5import { LiveVideo, LiveVideoCreate, LiveVideoUpdate } from '@shared/models'
f8c00564 6import { environment } from '../../../environments/environment'
c6c0fa6c
C
7
8@Injectable()
a5cf76af 9export class LiveVideoService {
c6c0fa6c
C
10 static BASE_VIDEO_LIVE_URL = environment.apiUrl + '/api/v1/videos/live/'
11
12 constructor (
13 private authHttp: HttpClient,
14 private restExtractor: RestExtractor
15 ) {}
16
b5b68755 17 goLive (video: LiveVideoCreate) {
c6c0fa6c 18 return this.authHttp
a5cf76af 19 .post<{ video: { id: number, uuid: string } }>(LiveVideoService.BASE_VIDEO_LIVE_URL, video)
c6c0fa6c
C
20 .pipe(catchError(err => this.restExtractor.handleError(err)))
21 }
22
23 getVideoLive (videoId: number | string) {
24 return this.authHttp
a5cf76af 25 .get<LiveVideo>(LiveVideoService.BASE_VIDEO_LIVE_URL + videoId)
c6c0fa6c
C
26 .pipe(catchError(err => this.restExtractor.handleError(err)))
27 }
b5b68755
C
28
29 updateLive (videoId: number | string, liveUpdate: LiveVideoUpdate) {
30 return this.authHttp
31 .put(LiveVideoService.BASE_VIDEO_LIVE_URL + videoId, liveUpdate)
32 .pipe(catchError(err => this.restExtractor.handleError(err)))
33 }
c6c0fa6c 34}