mirror of
https://github.com/janishutz/MusicPlayer.git
synced 2026-09-10 14:25:24 +02:00
49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
import corsManager from '../../corsManager';
|
|
import express from 'express';
|
|
import {
|
|
getLoginSdk
|
|
} from '../../sdk';
|
|
import rooms from '../../manager/rooms';
|
|
import {
|
|
sseMiddleware
|
|
} from '../../manager/rooms/sse';
|
|
|
|
const tackingUpdate = ( message: string ) => {
|
|
return ( request: express.Request, response: express.Response ) => {
|
|
if ( typeof request.params.id === 'string' ) {
|
|
if ( rooms.sendTrackingUpdate( request.params.id, message ) )
|
|
response.sendStatus( 200 );
|
|
else
|
|
response.sendStatus( 500 );
|
|
} else
|
|
response.sendStatus( 400 );
|
|
};
|
|
};
|
|
|
|
const routes = ( app: express.Application, foss: boolean ) => {
|
|
const sdk = getLoginSdk( foss );
|
|
|
|
app.get(
|
|
'/room/:id/tracking/exit',
|
|
corsManager.middleware( false ),
|
|
tackingUpdate( 'exit' )
|
|
);
|
|
|
|
app.get(
|
|
'/room/:id/tracking/ping',
|
|
corsManager.middleware( false ),
|
|
tackingUpdate( 'ping' )
|
|
);
|
|
|
|
app.get(
|
|
'/room/:id/admin',
|
|
corsManager.middleware( false ),
|
|
sdk.loginCheck(),
|
|
sseMiddleware( 'client' )
|
|
);
|
|
};
|
|
|
|
export default {
|
|
routes
|
|
};
|