1 files changed, 39 insertions, 0 deletions
diff --git a/src/database/entities/StreamSession.ts b/src/database/entities/StreamSession.ts
new file mode 100644
index 00000000..1dca2424
--- /dev/null
+++ b/src/database/entities/StreamSession.ts
@@ -0,0 +1,39 @@
+import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm";
+import { BaseClass } from "./BaseClass";
+import { User } from "./User";
+import { Stream } from "./Stream";
+
+@Entity({
+ name: "stream_sessions",
+})
+export class StreamSession extends BaseClass {
+ @Column()
+ @RelationId((session: StreamSession) => session.stream)
+ stream_id: string;
+
+ @JoinColumn({ name: "stream_id" })
+ @ManyToOne(() => Stream, {
+ onDelete: "CASCADE",
+ })
+ stream: Stream;
+
+ @Column()
+ @RelationId((session: StreamSession) => session.user)
+ user_id: string;
+
+ @JoinColumn({ name: "user_id" })
+ @ManyToOne(() => User, {
+ onDelete: "CASCADE",
+ })
+ user: User;
+
+ @Column({ nullable: true })
+ token: string;
+
+ // this is for gateway session
+ @Column()
+ session_id: string;
+
+ @Column({ default: false })
+ used: boolean;
+}
|