diff --git a/src/package-lock.json b/src/package-lock.json --- a/src/package-lock.json +++ b/src/package-lock.json @@ -7037,6 +7037,12 @@ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, + "jsnlog": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/jsnlog/-/jsnlog-2.30.0.tgz", + "integrity": "sha512-o3ROQVkhek+dkc7/9TXlB4TNtxUpYsRLOBJHZYk3Vy0B5zRBmfv9tyr56PrjcgEXuy06ARgfLTANY0+ImhzzGA==", + "dev": true + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -8242,22 +8248,23 @@ } }, "openvidu-browser": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/openvidu-browser/-/openvidu-browser-2.17.0.tgz", - "integrity": "sha512-wholLLrs2R1Rf05+QPOH4eIO9LaKO9UvoinGNHU9WoP32L9cU6WeqL0sH3gHhUdiYPqGwTNRPjC3qk/ltjUbDA==", + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/openvidu-browser/-/openvidu-browser-2.18.0.tgz", + "integrity": "sha512-a9HPAG8p2vG9XGThPUbZWPI5sO1OFmrxKQdCZM3RLmasXQa2Lwj7X1Aicsznb7RtDBg/lD8NdNwAQjm4ZDt2Nw==", "dev": true, "requires": { "freeice": "2.2.2", "hark": "1.2.3", + "jsnlog": "2.30.0", "platform": "1.3.6", - "uuid": "8.3.1", + "uuid": "8.3.2", "wolfy87-eventemitter": "5.2.9" }, "dependencies": { "uuid": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.1.tgz", - "integrity": "sha512-FOmRr+FmWEIG8uhZv6C2bTgEVXsHk08kE7mPlrBbEe+c3r9pjceVPgupIfNIhc4yx55H69OXANrUaSuu9eInKg==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true } } diff --git a/src/package.json b/src/package.json --- a/src/package.json +++ b/src/package.json @@ -26,7 +26,7 @@ "frappe-charts": "^1.5.8", "jquery": "^3.6.0", "laravel-mix": "^6.0.12", - "openvidu-browser": "^2.17.0", + "openvidu-browser": "^2.18.0", "popper.js": "^1.16.0", "postcss": "^8.2.8", "resolve-url-loader": "^3.1.2", diff --git a/src/resources/js/meet/app.js b/src/resources/js/meet/app.js --- a/src/resources/js/meet/app.js +++ b/src/resources/js/meet/app.js @@ -164,10 +164,6 @@ metadata.element = participantCreate(metadata) connections[connId] = metadata - - // Send the current user status to the connecting user - // otherwise e.g. nickname might be not up to date - signalUserUpdate(event.connection) }) session.on('connectionDestroyed', event => { @@ -212,6 +208,10 @@ // Update the wrapper controls/status participantUpdate(metadata.element, metadata) + + // Send the current user status to the connecting user + // otherwise e.g. nickname might be not up to date + signalUserUpdate(event.stream.connection) }) // Stream properties changes e.g. audio/video muted/unmuted @@ -723,7 +723,7 @@ data: JSON.stringify(data), type: 'userChanged', to: connection ? [connection] : undefined - }) + }).catch(err => { console.error(err) }); // The same nickname for screen sharing session if (screenSession) { @@ -731,7 +731,7 @@ data: JSON.stringify(data), type: 'userChanged', to: connection ? [connection] : undefined - }) + }).catch(err => { console.error(err) }); } } diff --git a/src/tests/Feature/Controller/OpenViduTest.php b/src/tests/Feature/Controller/OpenViduTest.php --- a/src/tests/Feature/Controller/OpenViduTest.php +++ b/src/tests/Feature/Controller/OpenViduTest.php @@ -494,7 +494,8 @@ $this->assertSame('success', $json['status']); $this->assertTrue(strpos($json['token'], 'wss://') === 0); - $this->assertTrue(strpos($json['token'], 'role=PUBLISHER') !== false); + // OpenVidu 2.18 does not send 'role' param in the token uri + // $this->assertTrue(strpos($json['token'], 'role=PUBLISHER') !== false); } /**