[mirotalksfu] - refactoring
هذا الالتزام موجود في:
@@ -1,6 +1,6 @@
|
||||
FROM node:14
|
||||
|
||||
WORKDIR /app
|
||||
WORKDIR /src
|
||||
|
||||
RUN apt-get update
|
||||
RUN apt-get install vim -y
|
||||
@@ -9,10 +9,8 @@ COPY package.json .
|
||||
|
||||
RUN npm install
|
||||
|
||||
COPY api api
|
||||
COPY app app
|
||||
COPY public public
|
||||
COPY src src
|
||||
COPY ssl ssl
|
||||
|
||||
EXPOSE 3010/tcp
|
||||
EXPOSE 40000-40100/tcp
|
||||
|
||||
@@ -36,7 +36,7 @@ Open the app with the following **supported browsers** & many more...
|
||||
- Recording your Screen, Audio or Video
|
||||
- Share any YouTube video in real time to your participants
|
||||
- Full Screen Mode on mouse click on the Video element
|
||||
- Supports [REST API](api/README.md) (Application Programming Interface)
|
||||
- Supports [REST API](app/api/README.md) (Application Programming Interface)
|
||||
|
||||
## DigitalOcean
|
||||
|
||||
|
||||
|
قبل العرض: | الارتفاع: | الحجم: 13 KiB بعد العرض: | الارتفاع: | الحجم: 13 KiB |
@@ -35,7 +35,7 @@ let roomList = new Map();
|
||||
|
||||
app.use(cors());
|
||||
app.use(compression());
|
||||
app.use(express.static(path.join(__dirname, '..', 'public')));
|
||||
app.use(express.static(path.join(__dirname, '../../', 'public')));
|
||||
|
||||
// Remove trailing slashes in url handle bad requests
|
||||
app.use((err, req, res, next) => {
|
||||
@@ -57,22 +57,22 @@ app.use((err, req, res, next) => {
|
||||
|
||||
// all start from here
|
||||
app.get(['/'], (req, res) => {
|
||||
res.sendFile(path.join(__dirname, '..', 'public/landing.html'));
|
||||
res.sendFile(path.join(__dirname, '../../', 'public/view/landing.html'));
|
||||
});
|
||||
|
||||
// set new room name and join
|
||||
app.get(['/newroom'], (req, res) => {
|
||||
res.sendFile(path.join(__dirname, '..', 'public/newroom.html'));
|
||||
res.sendFile(path.join(__dirname, '../../', 'public/view/newroom.html'));
|
||||
});
|
||||
|
||||
// if not allow video/audio
|
||||
app.get(['/permission'], (req, res) => {
|
||||
res.sendFile(path.join(__dirname, '..', 'public/permission.html'));
|
||||
res.sendFile(path.join(__dirname, '../../', 'public/view/permission.html'));
|
||||
});
|
||||
|
||||
// privacy policy
|
||||
app.get(['/privacy'], (req, res) => {
|
||||
res.sendFile(path.join(__dirname, '..', 'public/privacy.html'));
|
||||
res.sendFile(path.join(__dirname, '../../', 'public/view/privacy.html'));
|
||||
});
|
||||
|
||||
// no room name specified to join
|
||||
@@ -86,7 +86,7 @@ app.get('/join/*', (req, res) => {
|
||||
log.debug('redirect:' + req.url + ' to ' + url.parse(req.url).pathname);
|
||||
res.redirect(url.parse(req.url).pathname);
|
||||
} else {
|
||||
res.sendFile(path.join(__dirname, '..', 'public/Room.html'));
|
||||
res.sendFile(path.join(__dirname, '../../', 'public/view/Room.html'));
|
||||
}
|
||||
});
|
||||
|
||||
|
قبل العرض: | الارتفاع: | الحجم: 6.2 KiB بعد العرض: | الارتفاع: | الحجم: 6.2 KiB |
@@ -5,8 +5,8 @@
|
||||
"main": "Server.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1",
|
||||
"start": "node src/Server.js",
|
||||
"compile": "npx browserify public/modules/MediasoupClientCompile.js -o public/modules/MediasoupClient.js",
|
||||
"start": "node app/src/Server.js",
|
||||
"compile": "npx browserify public/sfu/MediasoupClientCompile.js -o public/sfu/MediasoupClient.js",
|
||||
"lint": "npx prettier --write ."
|
||||
},
|
||||
"author": "Miroslav Pejic",
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
<!-- Title and Icon -->
|
||||
|
||||
<title>MiroTalk SFU - Room Video Calls, Messaging and Screen Sharing.</title>
|
||||
<link rel="shortcut icon" href="images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="images/logo.svg" />
|
||||
<link rel="shortcut icon" href="../images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="../images/logo.svg" />
|
||||
|
||||
<!-- Meta Information -->
|
||||
|
||||
@@ -42,12 +42,12 @@
|
||||
property="og:description"
|
||||
content="MiroTalk SFU calling provides real-time video calls, messaging and screen sharing."
|
||||
/>
|
||||
<meta property="og:image" content="/images/mirotalksfu.png" />
|
||||
<meta property="og:image" content="../images/mirotalksfu.png" />
|
||||
|
||||
<!-- StyleSheet -->
|
||||
|
||||
<link rel="stylesheet" href="/css/Room.css" />
|
||||
<link rel="stylesheet" href="/css/VideoGrid.css" />
|
||||
<link rel="stylesheet" href="../css/Room.css" />
|
||||
<link rel="stylesheet" href="../css/VideoGrid.css" />
|
||||
|
||||
<!-- https://animate.style 4 using for swal fadeIn-Out -->
|
||||
|
||||
@@ -72,10 +72,10 @@
|
||||
<!-- Js scripts -->
|
||||
|
||||
<script src="/socket.io/socket.io.js"></script>
|
||||
<script src="/modules/MediasoupClient.js"></script>
|
||||
<script src="/js/Room.js"></script>
|
||||
<script src="/js/RoomClient.js"></script>
|
||||
<script src="/js/VideoGrid.js"></script>
|
||||
<script src="../sfu/MediasoupClient.js"></script>
|
||||
<script src="../js/Room.js"></script>
|
||||
<script src="../js/RoomClient.js"></script>
|
||||
<script src="../js/VideoGrid.js"></script>
|
||||
<script src="https://kit.fontawesome.com/d2f1016e6f.js" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.rawgit.com/muaz-khan/DetectRTC/master/DetectRTC.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/qrious/4.0.2/qrious.min.js"></script>
|
||||
@@ -17,8 +17,8 @@
|
||||
<!-- Title and Icon -->
|
||||
|
||||
<title>MiroTalk SFU - Free Video Calls, Messaging and Screen Sharing.</title>
|
||||
<link rel="shortcut icon" href="images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="images/logo.svg" />
|
||||
<link rel="shortcut icon" href="../images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="../images/logo.svg" />
|
||||
|
||||
<!-- Meta Information -->
|
||||
|
||||
@@ -44,11 +44,11 @@
|
||||
property="og:description"
|
||||
content="MiroTalk SFU calling provides real-time video calls, messaging and screen sharing."
|
||||
/>
|
||||
<meta property="og:image" content="images/mirotalksfu.png" />
|
||||
<meta property="og:image" content="../images/mirotalksfu.png" />
|
||||
|
||||
<!-- StyleSheet -->
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=IBM+Plex+Sans:400,600" />
|
||||
<link rel="stylesheet" href="css/landing.css" />
|
||||
<link rel="stylesheet" href="../css/landing.css" />
|
||||
|
||||
<!-- Js scripts -->
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
<div class="brand header-brand">
|
||||
<h1 class="m-0">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="mirotalk-logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="mirotalk-logo" />
|
||||
</a>
|
||||
</h1>
|
||||
</div>
|
||||
@@ -130,7 +130,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-01.svg" alt="mirotalksfu-screen" />
|
||||
<img src="../images/feature-icon-01.svg" alt="mirotalksfu-screen" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">Screen Sharing</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -142,7 +142,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-02.svg" alt="mirotalksfu-webcam" />
|
||||
<img src="../images/feature-icon-02.svg" alt="mirotalksfu-webcam" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">WebCam Streaming</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -154,7 +154,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-03.svg" alt="mirotalksfu-audio" />
|
||||
<img src="../images/feature-icon-03.svg" alt="mirotalksfu-audio" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">Audio Streaming</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -165,7 +165,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-04.svg" alt="mirotalksfu-chat" />
|
||||
<img src="../images/feature-icon-04.svg" alt="mirotalksfu-chat" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">Chat</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -177,7 +177,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-05.svg" alt="mirotalksfu-recording" />
|
||||
<img src="../images/feature-icon-05.svg" alt="mirotalksfu-recording" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">Recording meeting</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -189,7 +189,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-06.svg" alt="mirotalksfu-whiteboard" />
|
||||
<img src="../images/feature-icon-06.svg" alt="mirotalksfu-whiteboard" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">Collaborative Whiteboard</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -201,7 +201,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-01.svg" alt="mirotalksfu-filesharing" />
|
||||
<img src="../images/feature-icon-01.svg" alt="mirotalksfu-filesharing" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">File Sharing</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -212,7 +212,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-02.svg" alt="mirotalksfu-privacy" />
|
||||
<img src="../images/feature-icon-02.svg" alt="mirotalksfu-privacy" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">Total privacy</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -224,7 +224,7 @@
|
||||
<div class="feature text-center is-revealing">
|
||||
<div class="feature-inner">
|
||||
<div class="feature-icon">
|
||||
<img src="images/feature-icon-03.svg" alt="mirotalksfu-security" />
|
||||
<img src="../images/feature-icon-03.svg" alt="mirotalksfu-security" />
|
||||
</div>
|
||||
<h4 class="feature-title mt-24">Maximum security</h4>
|
||||
<p class="text-sm mb-0">
|
||||
@@ -242,7 +242,7 @@
|
||||
<div class="container">
|
||||
<h1 style="text-align: center">Meet the team</h1>
|
||||
<div align="center">
|
||||
<img src="images/miroslav-pejic.png" alt="Team member author" width="180" height="180" />
|
||||
<img src="../images/miroslav-pejic.png" alt="Team member author" width="180" height="180" />
|
||||
<br />
|
||||
<a target="_blank" href="https://www.linkedin.com/in/miroslav-pejic-976a07101/">
|
||||
<h5 class="mt-0 mb-4">Miroslav Pejic</h5>
|
||||
@@ -271,7 +271,7 @@
|
||||
<div class="site-footer-inner">
|
||||
<div class="brand footer-brand">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="Logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
</div>
|
||||
<ul class="footer-links list-reset">
|
||||
@@ -315,6 +315,6 @@
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
<script src="js/landing.js"></script>
|
||||
<script src="../js/landing.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -17,8 +17,8 @@
|
||||
<!-- Title and Icon -->
|
||||
|
||||
<title>MiroTalk SFU - Create your Room name and start the new call.</title>
|
||||
<link rel="shortcut icon" href="images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="images/logo.svg" />
|
||||
<link rel="shortcut icon" href="../images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="../images/logo.svg" />
|
||||
|
||||
<!-- Meta Information -->
|
||||
|
||||
@@ -44,11 +44,11 @@
|
||||
property="og:description"
|
||||
content="MiroTalk SFU calling provides real-time video calls, messaging and screen sharing."
|
||||
/>
|
||||
<meta property="og:image" content="images/mirotalksfu.png" />
|
||||
<meta property="og:image" content="../images/mirotalksfu.png" />
|
||||
|
||||
<!-- StyleSheet -->
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=IBM+Plex+Sans:400,600" />
|
||||
<link rel="stylesheet" href="css/landing.css" />
|
||||
<link rel="stylesheet" href="../css/landing.css" />
|
||||
|
||||
<!-- Js scripts -->
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
<div class="brand header-brand">
|
||||
<h1 class="m-0">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="Logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
</h1>
|
||||
</div>
|
||||
@@ -136,7 +136,7 @@
|
||||
<div class="site-footer-inner">
|
||||
<div class="brand footer-brand">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="Logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
</div>
|
||||
<ul class="footer-links list-reset">
|
||||
@@ -180,7 +180,7 @@
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
<script src="js/landing.js"></script>
|
||||
<script src="js/newroom.js"></script>
|
||||
<script src="../js/landing.js"></script>
|
||||
<script src="../js/newroom.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -17,8 +17,8 @@
|
||||
<!-- Title and Icon -->
|
||||
|
||||
<title>MiroTalk SFU - Allow Video or Audio access to join in the Room.</title>
|
||||
<link rel="shortcut icon" href="images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="images/logo.svg" />
|
||||
<link rel="shortcut icon" href="../images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="../images/logo.svg" />
|
||||
|
||||
<!-- Meta Information -->
|
||||
|
||||
@@ -35,12 +35,12 @@
|
||||
property="og:description"
|
||||
content="MiroTalk SFU calling provides real-time HD quality and latency simply not available with traditional technology."
|
||||
/>
|
||||
<meta property="og:image" content="/images/mirotalksfu.png" />
|
||||
<meta property="og:image" content="../images/mirotalksfu.png" />
|
||||
|
||||
<!-- StyleSheet -->
|
||||
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=IBM+Plex+Sans:400,600" />
|
||||
<link rel="stylesheet" href="css/landing.css" />
|
||||
<link rel="stylesheet" href="../css/landing.css" />
|
||||
|
||||
<!-- Js scripts -->
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
<div class="brand header-brand">
|
||||
<h1 class="m-0">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="Logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
</h1>
|
||||
</div>
|
||||
@@ -117,7 +117,7 @@
|
||||
<div class="site-footer-inner">
|
||||
<div class="brand footer-brand">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="Logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
</div>
|
||||
<ul class="footer-links list-reset">
|
||||
@@ -161,6 +161,6 @@
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
<script src="js/landing.js"></script>
|
||||
<script src="../js/landing.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -17,8 +17,8 @@
|
||||
<!-- Title and Icon -->
|
||||
|
||||
<title>MiroTalk SFU - privacy policy.</title>
|
||||
<link rel="shortcut icon" href="images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="images/logo.svg" />
|
||||
<link rel="shortcut icon" href="../images/logo.svg" />
|
||||
<link rel="apple-touch-icon" href="../images/logo.svg" />
|
||||
|
||||
<!-- Meta Information -->
|
||||
|
||||
@@ -35,12 +35,12 @@
|
||||
property="og:description"
|
||||
content="MiroTalk SFU calling provides real-time HD quality and latency simply not available with traditional technology."
|
||||
/>
|
||||
<meta property="og:image" content="/images/mirotalksfu.png" />
|
||||
<meta property="og:image" content="../images/mirotalksfu.png" />
|
||||
|
||||
<!-- StyleSheet -->
|
||||
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=IBM+Plex+Sans:400,600" />
|
||||
<link rel="stylesheet" href="css/landing.css" />
|
||||
<link rel="stylesheet" href="../css/landing.css" />
|
||||
|
||||
<!-- Js scripts -->
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
<div class="brand header-brand">
|
||||
<h1 class="m-0">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="Logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
</h1>
|
||||
</div>
|
||||
@@ -113,7 +113,7 @@
|
||||
<div class="site-footer-inner">
|
||||
<div class="brand footer-brand">
|
||||
<a href="/">
|
||||
<img class="header-logo-image" src="images/logo.svg" alt="Logo" />
|
||||
<img class="header-logo-image" src="../images/logo.svg" alt="Logo" />
|
||||
</a>
|
||||
</div>
|
||||
<ul class="footer-links list-reset">
|
||||
@@ -154,6 +154,6 @@
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
<script src="js/landing.js"></script>
|
||||
<script src="../js/landing.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
المرجع في مشكلة جديدة
حظر مستخدم