Compare commits
37 Commits
adbeb2071b
...
55455be8e7
Author | SHA1 | Date | |
---|---|---|---|
55455be8e7 | |||
62a82dc3a5 | |||
ac078e72ff | |||
be396e1047 | |||
149876fc70 | |||
a6681ffe40 | |||
efc9bfd114 | |||
a8afa8a532 | |||
507c131058 | |||
043f66eb0c | |||
cb5716dd5c | |||
ae39a45f6d | |||
0ec5769ee0 | |||
72ee3e43ab | |||
f20c7fada8 | |||
53a654c50f | |||
d54403299f | |||
177d54ec67 | |||
649c7a3767 | |||
08d6ccbb21 | |||
fd005351b5 | |||
fc111540d8 | |||
c4f4be0aa8 | |||
40c03592df | |||
a59cbcf8cc | |||
7cc3a95b38 | |||
05e3d997f1 | |||
9c731f4085 | |||
f6d862966e | |||
05ccd5cfd4 | |||
43eee11c7e | |||
0033cd528d | |||
5022d88b1d | |||
52b922825f | |||
07be8af9ae | |||
29737fe5d8 | |||
1f5755b72d |
53
app.js
53
app.js
@ -1,21 +1,17 @@
|
|||||||
import 'dotenv/config'
|
require('dotenv').config()
|
||||||
|
|
||||||
/**
|
const express = require('express');
|
||||||
* integrating mediasoup server with a node.js application
|
const app = express();
|
||||||
*/
|
const Server = require('socket.io');
|
||||||
|
const path = require('node:path');
|
||||||
/* Please follow mediasoup installation requirements */
|
const fs = require('node:fs');
|
||||||
/* https://mediasoup.org/documentation/v3/mediasoup/installation/ */
|
let https = require('https');
|
||||||
import express from 'express'
|
try {
|
||||||
const app = express()
|
https = require('node:https');
|
||||||
|
} catch (err) {
|
||||||
import https from 'httpolyglot'
|
console.log('https support is disabled!');
|
||||||
import fs from 'fs'
|
}
|
||||||
import path from 'path'
|
const mediasoup = require('mediasoup');
|
||||||
const __dirname = path.resolve()
|
|
||||||
|
|
||||||
import Server from 'socket.io'
|
|
||||||
import mediasoup from 'mediasoup'
|
|
||||||
|
|
||||||
let worker
|
let worker
|
||||||
/**
|
/**
|
||||||
@ -47,21 +43,26 @@ app.use('/sfu', express.static(path.join(__dirname, 'public')))
|
|||||||
// SSL cert for HTTPS access
|
// SSL cert for HTTPS access
|
||||||
const options = {
|
const options = {
|
||||||
key: fs.readFileSync('./server/ssl/key.pem', 'utf-8'),
|
key: fs.readFileSync('./server/ssl/key.pem', 'utf-8'),
|
||||||
cert: fs.readFileSync('./server/ssl/cert.pem', 'utf-8')
|
cert: fs.readFileSync('./server/ssl/cert.pem', 'utf-8'),
|
||||||
}
|
}
|
||||||
|
|
||||||
const httpsServer = https.createServer(options, app)
|
const httpsServer = https.createServer(options, app);
|
||||||
|
|
||||||
httpsServer.listen(process.env.PORT, () => {
|
|
||||||
console.log('Listening on port:', process.env.PORT)
|
|
||||||
})
|
|
||||||
|
|
||||||
const io = new Server(httpsServer, {
|
const io = new Server(httpsServer, {
|
||||||
allowEIO3: true
|
allowEIO3: true,
|
||||||
|
origins: ["*:*"],
|
||||||
|
// allowRequest: (req, next) => {
|
||||||
|
// console.log('req', req);
|
||||||
|
// next(null, true)
|
||||||
|
// }
|
||||||
});
|
});
|
||||||
|
// const io = new Server(server, { origins: '*:*', allowEIO3: true });
|
||||||
|
|
||||||
// socket.io namespace (could represent a room?)
|
httpsServer.listen(process.env.PORT, () => {
|
||||||
const peers = io.of('/mediasoup')
|
console.log('Video server listening on port:', process.env.PORT)
|
||||||
|
})
|
||||||
|
|
||||||
|
const peers = io.of('/')
|
||||||
|
|
||||||
const createWorker = async () => {
|
const createWorker = async () => {
|
||||||
worker = await mediasoup.createWorker({
|
worker = await mediasoup.createWorker({
|
||||||
|
14
package-lock.json
generated
14
package-lock.json
generated
@ -12,7 +12,6 @@
|
|||||||
"@types/express": "^4.17.13",
|
"@types/express": "^4.17.13",
|
||||||
"dotenv": "^16.0.1",
|
"dotenv": "^16.0.1",
|
||||||
"express": "^4.18.1",
|
"express": "^4.18.1",
|
||||||
"httpolyglot": "^0.1.2",
|
|
||||||
"mediasoup": "^3.10.4",
|
"mediasoup": "^3.10.4",
|
||||||
"mediasoup-client": "^3.6.54",
|
"mediasoup-client": "^3.6.54",
|
||||||
"parcel": "^2.7.0",
|
"parcel": "^2.7.0",
|
||||||
@ -4603,14 +4602,6 @@
|
|||||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
|
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/httpolyglot": {
|
|
||||||
"version": "0.1.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/httpolyglot/-/httpolyglot-0.1.2.tgz",
|
|
||||||
"integrity": "sha512-ouHI1AaQMLgn4L224527S5+vq6hgvqPteurVfbm7ChViM3He2Wa8KP1Ny7pTYd7QKnDSPKcN8JYfC8r/lmsE3A==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.10.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/https-browserify": {
|
"node_modules/https-browserify": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
|
||||||
@ -11558,11 +11549,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"httpolyglot": {
|
|
||||||
"version": "0.1.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/httpolyglot/-/httpolyglot-0.1.2.tgz",
|
|
||||||
"integrity": "sha512-ouHI1AaQMLgn4L224527S5+vq6hgvqPteurVfbm7ChViM3He2Wa8KP1Ny7pTYd7QKnDSPKcN8JYfC8r/lmsE3A=="
|
|
||||||
},
|
|
||||||
"https-browserify": {
|
"https-browserify": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
|
||||||
|
@ -12,12 +12,10 @@
|
|||||||
"keywords": [],
|
"keywords": [],
|
||||||
"author": "",
|
"author": "",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"type": "module",
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/express": "^4.17.13",
|
"@types/express": "^4.17.13",
|
||||||
"dotenv": "^16.0.1",
|
"dotenv": "^16.0.1",
|
||||||
"express": "^4.18.1",
|
"express": "^4.18.1",
|
||||||
"httpolyglot": "^0.1.2",
|
|
||||||
"mediasoup": "^3.10.4",
|
"mediasoup": "^3.10.4",
|
||||||
"mediasoup-client": "^3.6.54",
|
"mediasoup-client": "^3.6.54",
|
||||||
"parcel": "^2.7.0",
|
"parcel": "^2.7.0",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user