mirror of
https://github.com/vector-im/element-call.git
synced 2024-11-15 00:04:59 +08:00
Make webrtc stats configurable (#1019)
* stats: make webrtc stats configurable
This commit is contained in:
parent
15350b6989
commit
e3a3859739
@ -53,7 +53,7 @@
|
|||||||
"i18next-browser-languagedetector": "^6.1.8",
|
"i18next-browser-languagedetector": "^6.1.8",
|
||||||
"i18next-http-backend": "^1.4.4",
|
"i18next-http-backend": "^1.4.4",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"matrix-js-sdk": "github:matrix-org/matrix-js-sdk#90234402a71955d60ca75a068e5450bdafed0b41",
|
"matrix-js-sdk": "github:matrix-org/matrix-js-sdk#261bc81554580b442769a65ceed2b154178fbe1c",
|
||||||
"matrix-widget-api": "^1.3.1",
|
"matrix-widget-api": "^1.3.1",
|
||||||
"mermaid": "^8.13.8",
|
"mermaid": "^8.13.8",
|
||||||
"normalize.css": "^8.0.1",
|
"normalize.css": "^8.0.1",
|
||||||
|
@ -32,6 +32,8 @@ import { isLocalRoomId, createRoom, roomNameFromRoomId } from "../matrix-utils";
|
|||||||
import { translatedError } from "../TranslatedError";
|
import { translatedError } from "../TranslatedError";
|
||||||
import { widget } from "../widget";
|
import { widget } from "../widget";
|
||||||
|
|
||||||
|
const STATS_COLLECT_INTERVAL_TIME_MS = 30000;
|
||||||
|
|
||||||
export interface GroupCallLoadState {
|
export interface GroupCallLoadState {
|
||||||
loading: boolean;
|
loading: boolean;
|
||||||
error?: Error;
|
error?: Error;
|
||||||
@ -94,10 +96,13 @@ export const useLoadGroupCall = (
|
|||||||
const fetchOrCreateGroupCall = async (): Promise<GroupCall> => {
|
const fetchOrCreateGroupCall = async (): Promise<GroupCall> => {
|
||||||
const room = await fetchOrCreateRoom();
|
const room = await fetchOrCreateRoom();
|
||||||
logger.debug(`Fetched / joined room ${roomIdOrAlias}`);
|
logger.debug(`Fetched / joined room ${roomIdOrAlias}`);
|
||||||
const groupCall = client.getGroupCallForRoom(room.roomId);
|
let groupCall = client.getGroupCallForRoom(room.roomId);
|
||||||
logger.debug("Got group call", groupCall?.groupCallId);
|
logger.debug("Got group call", groupCall?.groupCallId);
|
||||||
|
|
||||||
if (groupCall) return groupCall;
|
if (groupCall) {
|
||||||
|
groupCall.setGroupCallStatsInterval(STATS_COLLECT_INTERVAL_TIME_MS);
|
||||||
|
return groupCall;
|
||||||
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
!widget &&
|
!widget &&
|
||||||
@ -112,12 +117,14 @@ export const useLoadGroupCall = (
|
|||||||
createPtt ? "PTT" : "video"
|
createPtt ? "PTT" : "video"
|
||||||
} call`
|
} call`
|
||||||
);
|
);
|
||||||
return await client.createGroupCall(
|
groupCall = await client.createGroupCall(
|
||||||
room.roomId,
|
room.roomId,
|
||||||
createPtt ? GroupCallType.Voice : GroupCallType.Video,
|
createPtt ? GroupCallType.Voice : GroupCallType.Video,
|
||||||
createPtt,
|
createPtt,
|
||||||
GroupCallIntent.Room
|
GroupCallIntent.Room
|
||||||
);
|
);
|
||||||
|
groupCall.setGroupCallStatsInterval(STATS_COLLECT_INTERVAL_TIME_MS);
|
||||||
|
return groupCall;
|
||||||
}
|
}
|
||||||
|
|
||||||
// We don't have permission to create the call, so all we can do is wait
|
// We don't have permission to create the call, so all we can do is wait
|
||||||
@ -126,6 +133,7 @@ export const useLoadGroupCall = (
|
|||||||
const onGroupCallIncoming = (groupCall: GroupCall) => {
|
const onGroupCallIncoming = (groupCall: GroupCall) => {
|
||||||
if (groupCall?.room.roomId === room.roomId) {
|
if (groupCall?.room.roomId === room.roomId) {
|
||||||
clearTimeout(timeout);
|
clearTimeout(timeout);
|
||||||
|
groupCall.setGroupCallStatsInterval(STATS_COLLECT_INTERVAL_TIME_MS);
|
||||||
client.off(
|
client.off(
|
||||||
GroupCallEventHandlerEvent.Incoming,
|
GroupCallEventHandlerEvent.Incoming,
|
||||||
onGroupCallIncoming
|
onGroupCallIncoming
|
||||||
|
16
yarn.lock
16
yarn.lock
@ -1821,10 +1821,10 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@juggle/resize-observer/-/resize-observer-3.3.1.tgz#b50a781709c81e10701004214340f25475a171a0"
|
resolved "https://registry.yarnpkg.com/@juggle/resize-observer/-/resize-observer-3.3.1.tgz#b50a781709c81e10701004214340f25475a171a0"
|
||||||
integrity sha512-zMM9Ds+SawiUkakS7y94Ymqx+S0ORzpG3frZirN3l+UlXUmSUR7hF4wxCVqW+ei94JzV5kt0uXBcoOEAuiydrw==
|
integrity sha512-zMM9Ds+SawiUkakS7y94Ymqx+S0ORzpG3frZirN3l+UlXUmSUR7hF4wxCVqW+ei94JzV5kt0uXBcoOEAuiydrw==
|
||||||
|
|
||||||
"@matrix-org/matrix-sdk-crypto-js@^0.1.0-alpha.6":
|
"@matrix-org/matrix-sdk-crypto-js@^0.1.0-alpha.7":
|
||||||
version "0.1.0-alpha.6"
|
version "0.1.0-alpha.7"
|
||||||
resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-js/-/matrix-sdk-crypto-js-0.1.0-alpha.6.tgz#c0bdb9ab0d30179b8ef744d1b4010b0ad0ab9c3a"
|
resolved "https://registry.yarnpkg.com/@matrix-org/matrix-sdk-crypto-js/-/matrix-sdk-crypto-js-0.1.0-alpha.7.tgz#136375b84fd8a7e698f70fc969f668e541a61313"
|
||||||
integrity sha512-7hMffzw7KijxDyyH/eUyTfrLeCQHuyU3kaPOKGhcl3DZ3vx7bCncqjGMGTnxNPoP23I6gosvKSbO+3wYOT24Xg==
|
integrity sha512-sQEG9cSfNji5NYBf5h7j5IxYVO0dwtAKoetaVyR+LhIXz/Su7zyEE3EwlAWAeJOFdAV/vZ5LTNyh39xADuNlTg==
|
||||||
|
|
||||||
"@matrix-org/olm@https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.14.tgz":
|
"@matrix-org/olm@https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.14.tgz":
|
||||||
version "3.2.14"
|
version "3.2.14"
|
||||||
@ -10550,12 +10550,12 @@ matrix-events-sdk@0.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/matrix-events-sdk/-/matrix-events-sdk-0.0.1.tgz#c8c38911e2cb29023b0bbac8d6f32e0de2c957dd"
|
resolved "https://registry.yarnpkg.com/matrix-events-sdk/-/matrix-events-sdk-0.0.1.tgz#c8c38911e2cb29023b0bbac8d6f32e0de2c957dd"
|
||||||
integrity sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==
|
integrity sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==
|
||||||
|
|
||||||
"matrix-js-sdk@github:matrix-org/matrix-js-sdk#90234402a71955d60ca75a068e5450bdafed0b41":
|
"matrix-js-sdk@github:matrix-org/matrix-js-sdk#261bc81554580b442769a65ceed2b154178fbe1c":
|
||||||
version "24.1.0"
|
version "25.0.0"
|
||||||
resolved "https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/90234402a71955d60ca75a068e5450bdafed0b41"
|
resolved "https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/261bc81554580b442769a65ceed2b154178fbe1c"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime" "^7.12.5"
|
"@babel/runtime" "^7.12.5"
|
||||||
"@matrix-org/matrix-sdk-crypto-js" "^0.1.0-alpha.6"
|
"@matrix-org/matrix-sdk-crypto-js" "^0.1.0-alpha.7"
|
||||||
another-json "^0.2.0"
|
another-json "^0.2.0"
|
||||||
bs58 "^5.0.0"
|
bs58 "^5.0.0"
|
||||||
content-type "^1.0.4"
|
content-type "^1.0.4"
|
||||||
|
Loading…
Reference in New Issue
Block a user