aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/types/plugins/register-server-option.model.ts
diff options
context:
space:
mode:
Diffstat (limited to 'server/types/plugins/register-server-option.model.ts')
-rw-r--r--server/types/plugins/register-server-option.model.ts21
1 files changed, 20 insertions, 1 deletions
diff --git a/server/types/plugins/register-server-option.model.ts b/server/types/plugins/register-server-option.model.ts
index fb4f12a4c..1e2bd830e 100644
--- a/server/types/plugins/register-server-option.model.ts
+++ b/server/types/plugins/register-server-option.model.ts
@@ -1,4 +1,5 @@
1import { Response, Router } from 'express' 1import { Response, Router } from 'express'
2import { Server } from 'http'
2import { Logger } from 'winston' 3import { Logger } from 'winston'
3import { ActorModel } from '@server/models/actor/actor' 4import { ActorModel } from '@server/models/actor/actor'
4import { 5import {
@@ -16,12 +17,13 @@ import {
16 ThumbnailType, 17 ThumbnailType,
17 VideoBlacklistCreate 18 VideoBlacklistCreate
18} from '@shared/models' 19} from '@shared/models'
19import { MUserDefault, MVideoThumbnail } from '../models' 20import { MUserDefault, MVideo, MVideoThumbnail, UserNotificationModelForApi } from '../models'
20import { 21import {
21 RegisterServerAuthExternalOptions, 22 RegisterServerAuthExternalOptions,
22 RegisterServerAuthExternalResult, 23 RegisterServerAuthExternalResult,
23 RegisterServerAuthPassOptions 24 RegisterServerAuthPassOptions
24} from './register-server-auth.model' 25} from './register-server-auth.model'
26import { RegisterServerWebSocketRouteOptions } from './register-server-websocket-route.model'
25 27
26export type PeerTubeHelpers = { 28export type PeerTubeHelpers = {
27 logger: Logger 29 logger: Logger
@@ -83,15 +85,25 @@ export type PeerTubeHelpers = {
83 } 85 }
84 86
85 server: { 87 server: {
88 // PeerTube >= 5.0
89 getHTTPServer: () => Server
90
86 getServerActor: () => Promise<ActorModel> 91 getServerActor: () => Promise<ActorModel>
87 } 92 }
88 93
94 socket: {
95 sendNotification: (userId: number, notification: UserNotificationModelForApi) => void
96 sendVideoLiveNewState: (video: MVideo) => void
97 }
98
89 plugin: { 99 plugin: {
90 // PeerTube >= 3.2 100 // PeerTube >= 3.2
91 getBaseStaticRoute: () => string 101 getBaseStaticRoute: () => string
92 102
93 // PeerTube >= 3.2 103 // PeerTube >= 3.2
94 getBaseRouterRoute: () => string 104 getBaseRouterRoute: () => string
105 // PeerTube >= 5.0
106 getBaseWebSocketRoute: () => string
95 107
96 // PeerTube >= 3.2 108 // PeerTube >= 3.2
97 getDataDirectoryPath: () => string 109 getDataDirectoryPath: () => string
@@ -135,5 +147,12 @@ export type RegisterServerOptions = {
135 // * /plugins/:pluginName/router/... 147 // * /plugins/:pluginName/router/...
136 getRouter(): Router 148 getRouter(): Router
137 149
150 // PeerTube >= 5.0
151 // Register WebSocket route
152 // Base routes of the WebSocket router are
153 // * /plugins/:pluginName/:pluginVersion/ws/...
154 // * /plugins/:pluginName/ws/...
155 registerWebSocketRoute: (options: RegisterServerWebSocketRouteOptions) => void
156
138 peertubeHelpers: PeerTubeHelpers 157 peertubeHelpers: PeerTubeHelpers
139} 158}