Spaces:
Runtime error
Runtime error
Harden call socket lifecycle and ICE fallback set (v2.6.6)
Browse files- client.js +22 -1
- index.html +2 -2
- package.json +1 -1
client.js
CHANGED
|
@@ -549,7 +549,12 @@ function switchAccount() {
|
|
| 549 |
|
| 550 |
|
| 551 |
function connectSocket() {
|
| 552 |
-
//
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 553 |
if (socket) {
|
| 554 |
try {
|
| 555 |
socket.removeAllListeners();
|
|
@@ -6175,6 +6180,22 @@ function createPeerConnection(peerId) {
|
|
| 6175 |
username: 'openrelayproject',
|
| 6176 |
credential: 'openrelayproject'
|
| 6177 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 6178 |
// numb.viagenie free TURN fallback
|
| 6179 |
{
|
| 6180 |
urls: 'turn:numb.viagenie.ca',
|
|
|
|
| 549 |
|
| 550 |
|
| 551 |
function connectSocket() {
|
| 552 |
+
// Reuse existing active socket to avoid duplicating/disrupting signaling during calls.
|
| 553 |
+
if (socket && (socket.connected || socket.active)) {
|
| 554 |
+
return;
|
| 555 |
+
}
|
| 556 |
+
|
| 557 |
+
// Cleanup stale socket before creating a new one.
|
| 558 |
if (socket) {
|
| 559 |
try {
|
| 560 |
socket.removeAllListeners();
|
|
|
|
| 6180 |
username: 'openrelayproject',
|
| 6181 |
credential: 'openrelayproject'
|
| 6182 |
},
|
| 6183 |
+
// openrelay public TURN (legacy hostname fallback)
|
| 6184 |
+
{
|
| 6185 |
+
urls: 'turn:openrelay.metered.ca:80',
|
| 6186 |
+
username: 'openrelayproject',
|
| 6187 |
+
credential: 'openrelayproject'
|
| 6188 |
+
},
|
| 6189 |
+
{
|
| 6190 |
+
urls: 'turn:openrelay.metered.ca:443',
|
| 6191 |
+
username: 'openrelayproject',
|
| 6192 |
+
credential: 'openrelayproject'
|
| 6193 |
+
},
|
| 6194 |
+
{
|
| 6195 |
+
urls: 'turn:openrelay.metered.ca:443?transport=tcp',
|
| 6196 |
+
username: 'openrelayproject',
|
| 6197 |
+
credential: 'openrelayproject'
|
| 6198 |
+
},
|
| 6199 |
// numb.viagenie free TURN fallback
|
| 6200 |
{
|
| 6201 |
urls: 'turn:numb.viagenie.ca',
|
index.html
CHANGED
|
@@ -3048,7 +3048,7 @@
|
|
| 3048 |
<div class="chat-header-title" id="chatTitle">💬 Select a friend to chat</div>
|
| 3049 |
</div>
|
| 3050 |
<div class="chat-header-actions">
|
| 3051 |
-
<span class="build-badge mobile-essential" id="buildVersionBadge" title="Frontend build version">v2.6.
|
| 3052 |
<button class="header-btn mobile-essential" onclick="toggleArchiveChat()" title="Archive chat">
|
| 3053 |
<i class="fas fa-archive"></i>
|
| 3054 |
</button>
|
|
@@ -3665,7 +3665,7 @@
|
|
| 3665 |
|
| 3666 |
<script src="/socket.io/socket.io.js"></script>
|
| 3667 |
<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js"></script>
|
| 3668 |
-
<script src="client.js?v=2.6.
|
| 3669 |
</body>
|
| 3670 |
</html>
|
| 3671 |
|
|
|
|
| 3048 |
<div class="chat-header-title" id="chatTitle">💬 Select a friend to chat</div>
|
| 3049 |
</div>
|
| 3050 |
<div class="chat-header-actions">
|
| 3051 |
+
<span class="build-badge mobile-essential" id="buildVersionBadge" title="Frontend build version">v2.6.6</span>
|
| 3052 |
<button class="header-btn mobile-essential" onclick="toggleArchiveChat()" title="Archive chat">
|
| 3053 |
<i class="fas fa-archive"></i>
|
| 3054 |
</button>
|
|
|
|
| 3665 |
|
| 3666 |
<script src="/socket.io/socket.io.js"></script>
|
| 3667 |
<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js"></script>
|
| 3668 |
+
<script src="client.js?v=2.6.6"></script>
|
| 3669 |
</body>
|
| 3670 |
</html>
|
| 3671 |
|
package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
{
|
| 2 |
"name": "discord-like-app",
|
| 3 |
-
"version": "2.6.
|
| 4 |
"main": "server.js",
|
| 5 |
"scripts": {
|
| 6 |
"dev": "nodemon server.js",
|
|
|
|
| 1 |
{
|
| 2 |
"name": "discord-like-app",
|
| 3 |
+
"version": "2.6.6",
|
| 4 |
"main": "server.js",
|
| 5 |
"scripts": {
|
| 6 |
"dev": "nodemon server.js",
|