diff options
Diffstat (limited to 'src/server')
-rw-r--r-- | src/server/Message.ts | 9 | ||||
-rw-r--r-- | src/server/authentication/models/current_user_utils.ts | 1 | ||||
-rw-r--r-- | src/server/index.ts | 46 |
3 files changed, 56 insertions, 0 deletions
diff --git a/src/server/Message.ts b/src/server/Message.ts index 621abfd1e..6ce5cd96a 100644 --- a/src/server/Message.ts +++ b/src/server/Message.ts @@ -42,6 +42,11 @@ export interface Diff extends Reference { readonly diff: any; } +export interface RoomMessage { + readonly message: string; + readonly room: string; +} + export namespace MessageStore { export const Foo = new Message<string>("Foo"); export const Bar = new Message<string>("Bar"); @@ -59,4 +64,8 @@ export namespace MessageStore { export const YoutubeApiQuery = new Message<YoutubeQueryInput>("Youtube Api Query"); export const DeleteField = new Message<string>("Delete field"); export const DeleteFields = new Message<string[]>("Delete fields"); + export const NotifyRoommates = new Message<RoomMessage>("message"); + export const HangUpCall = new Message<string>("bye"); + + } diff --git a/src/server/authentication/models/current_user_utils.ts b/src/server/authentication/models/current_user_utils.ts index 36d4cd2f2..cc24cce71 100644 --- a/src/server/authentication/models/current_user_utils.ts +++ b/src/server/authentication/models/current_user_utils.ts @@ -51,6 +51,7 @@ export class CurrentUserUtils { { title: "todo item", icon: "check", ignoreClick: true, drag: 'getCopy(this.dragFactory, true)', dragFactory: notes[notes.length - 1] }, { title: "web page", icon: "globe-asia", ignoreClick: true, drag: 'Docs.Create.WebDocument("https://en.wikipedia.org/wiki/Hedgehog", { width: 300, height: 300, title: "New Webpage" })' }, { title: "cat image", icon: "cat", ignoreClick: true, drag: 'Docs.Create.ImageDocument("https://upload.wikimedia.org/wikipedia/commons/thumb/3/3a/Cat03.jpg/1200px-Cat03.jpg", { width: 200, title: "an image of a cat" })' }, + { title: "webcam", icon: "video", ignoreClick: true, drag: 'Docs.Create.WebCamDocument("", { width: 400, height: 400, title: "a test cam" })' }, { title: "record", icon: "microphone", ignoreClick: true, drag: `Docs.Create.AudioDocument("${nullAudio}", { width: 200, title: "ready to record audio" })` }, { title: "clickable button", icon: "bolt", ignoreClick: true, drag: 'Docs.Create.ButtonDocument({ width: 150, height: 50, title: "Button" })' }, { title: "presentation", icon: "tv", ignoreClick: true, drag: 'Doc.UserDoc().curPresentation = Docs.Create.PresDocument(new List<Doc>(), { width: 200, height: 500, title: "a presentation trail" })' }, diff --git a/src/server/index.ts b/src/server/index.ts index 313a2f0e2..2b18fc578 100644 --- a/src/server/index.ts +++ b/src/server/index.ts @@ -86,12 +86,58 @@ function routeSetter({ isRelease, addSupervisedRoute, logRegistrationOutcome }: secureHandler: ({ res }) => res.redirect("/home") }); + // Utils.AddServerHandler(socket, MessageStore.NotifyRoommates, message => HandleRoommateNotification(socket, message)); + // // Utils.AddServerHandler(socket, MessageStore.HangUpCall, message => HandleHangUp(socket, message)); + // // Utils.AddRoomHandler(socket, "create or join", HandleCreateOrJoin); + + // function HandleRoommateNotification(socket: Socket, message: RoomMessage) { + // //socket.broadcast.emit('message', message); + // console.log("The room that sent this: ", message.room, " and message is : ", message.message); + // server.sockets.in(message.room).emit('message', message); + + // } + + // function HandleCreateOrJoin(socket: io.Socket, room: string) { + // console.log("Received request to create or join room " + room); + + + // let clientsInRoom = server.sockets.adapter.rooms[room]; + // let numClients = clientsInRoom ? Object.keys(clientsInRoom.sockets).length : 0; + // console.log('Room ' + room + ' now has ' + numClients + ' client(s)'); + + + // if (numClients === 0) { + // socket.join(room); + // console.log('Client ID ' + socket.id + ' created room ' + room); + // socket.emit('created', room, socket.id); + + // } else if (numClients === 1) { + // console.log('Client ID ' + socket.id + ' joined room ' + room); + // server.sockets.in(room).emit('join', room); + // socket.join(room); + // socket.emit('joined', room, socket.id); + // server.sockets.in(room).emit('ready'); + + // } else { + // socket.emit('full', room); + // } + + + + + + // } + + // function HandleHangUp(socket: io.Socket, message: string) { + // console.log("Receive bye from someone"); + // } addSupervisedRoute({ method: Method.GET, subscription: "/serverHeartbeat", secureHandler: ({ res }) => res.send(true) }); + const serve: PublicHandler = ({ req, res }) => { const detector = new mobileDetect(req.headers['user-agent'] || ""); const filename = detector.mobile() !== null ? 'mobile/image.html' : 'index.html'; |