X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmodels%2Fvideo%2Fvideo-live.ts;h=014491d50011f532de056c2e79e022d1276ce33c;hb=d9bf974f5df787bbeaab5b04949ca91a2b3ca2a3;hp=8608bc84ca9f654ff2b262904ef4072ff177b15d;hpb=a5cf76afa378aae81af2a9b0ce548e5d2582f832;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/models/video/video-live.ts b/server/models/video/video-live.ts index 8608bc84c..014491d50 100644 --- a/server/models/video/video-live.ts +++ b/server/models/video/video-live.ts @@ -1,6 +1,7 @@ import { AllowNull, BelongsTo, Column, CreatedAt, DataType, DefaultScope, ForeignKey, Model, Table, UpdatedAt } from 'sequelize-typescript' import { WEBSERVER } from '@server/initializers/constants' import { MVideoLive, MVideoLiveVideo } from '@server/types/models' +import { AttributesOnly } from '@shared/core-utils' import { LiveVideo, VideoState } from '@shared/models' import { VideoModel } from './video' import { VideoBlacklistModel } from './video-blacklist' @@ -28,12 +29,20 @@ import { VideoBlacklistModel } from './video-blacklist' } ] }) -export class VideoLiveModel extends Model { +export class VideoLiveModel extends Model>> { - @AllowNull(false) + @AllowNull(true) @Column(DataType.STRING) streamKey: string + @AllowNull(false) + @Column + saveReplay: boolean + + @AllowNull(false) + @Column + permanentLive: boolean + @CreatedAt createdAt: Date @@ -89,8 +98,14 @@ export class VideoLiveModel extends Model { toFormattedJSON (): LiveVideo { return { - rtmpUrl: WEBSERVER.RTMP_URL, - streamKey: this.streamKey + // If we don't have a stream key, it means this is a remote live so we don't specify the rtmp URL + rtmpUrl: this.streamKey + ? WEBSERVER.RTMP_URL + : null, + + streamKey: this.streamKey, + permanentLive: this.permanentLive, + saveReplay: this.saveReplay } } }