mirror of
https://github.com/vector-im/element-call.git
synced 2026-10-16 23:45:50 +00:00
WIP
This commit is contained in:
@@ -49,19 +49,21 @@ export type ClientDelegationParts = Pick<
|
||||
"_unstable_delegateDelayedLeave" | "baseUrl"
|
||||
>;
|
||||
|
||||
export interface DelegateDelayedLeaveParams {
|
||||
client: ClientDelegationParts;
|
||||
membership: CallMembershipIdentityParts;
|
||||
url: string;
|
||||
roomId: string;
|
||||
delayId: string;
|
||||
}
|
||||
|
||||
export async function delegateDelayedLeave({
|
||||
client,
|
||||
membership,
|
||||
url,
|
||||
roomId,
|
||||
delayId,
|
||||
}: {
|
||||
client: ClientDelegationParts;
|
||||
membership: CallMembershipIdentityParts;
|
||||
url: string;
|
||||
roomId: string;
|
||||
delayId: string;
|
||||
}): Promise<void> {
|
||||
}: DelegateDelayedLeaveParams): Promise<void> {
|
||||
await doNetworkOperationWithRetry(async () =>
|
||||
client._unstable_delegateDelayedLeave({
|
||||
url,
|
||||
|
||||
+20
-16
@@ -37,6 +37,15 @@ function isEndpointUnsupported(e: unknown): boolean {
|
||||
);
|
||||
}
|
||||
|
||||
export interface GetSFUConfigParams {
|
||||
client: csApi.ClientGetTokenParts & openID.ClientOpenIDParts;
|
||||
membership: CallMembershipIdentityParts;
|
||||
transport: UnstableLivekitTransport;
|
||||
roomId: string;
|
||||
role: "publisher" | "subscriber";
|
||||
logger: Logger;
|
||||
}
|
||||
|
||||
export async function getSFUConfig({
|
||||
client,
|
||||
membership,
|
||||
@@ -44,14 +53,7 @@ export async function getSFUConfig({
|
||||
roomId,
|
||||
role,
|
||||
logger,
|
||||
}: {
|
||||
client: csApi.ClientGetTokenParts & openID.ClientOpenIDParts;
|
||||
membership: CallMembershipIdentityParts;
|
||||
transport: UnstableLivekitTransport;
|
||||
roomId: string;
|
||||
role: "publisher" | "subscriber";
|
||||
logger: Logger;
|
||||
}): Promise<SFUConfig> {
|
||||
}: GetSFUConfigParams): Promise<SFUConfig> {
|
||||
if ("url" in transport) {
|
||||
try {
|
||||
return await csApi.getSFUConfig({
|
||||
@@ -91,6 +93,15 @@ export async function getSFUConfig({
|
||||
});
|
||||
}
|
||||
|
||||
export interface DelegateDelayedLeaveParams {
|
||||
client: csApi.ClientDelegationParts & openID.ClientOpenIDParts;
|
||||
membership: CallMembershipIdentityParts;
|
||||
transport: UnstableLivekitTransport;
|
||||
roomId: string;
|
||||
delayId: string;
|
||||
logger: Logger;
|
||||
}
|
||||
|
||||
export async function delegateDelayedLeave({
|
||||
client,
|
||||
membership,
|
||||
@@ -98,14 +109,7 @@ export async function delegateDelayedLeave({
|
||||
roomId,
|
||||
delayId,
|
||||
logger,
|
||||
}: {
|
||||
client: csApi.ClientDelegationParts & openID.ClientOpenIDParts;
|
||||
membership: CallMembershipIdentityParts;
|
||||
transport: UnstableLivekitTransport;
|
||||
roomId: string;
|
||||
delayId: string;
|
||||
logger: Logger;
|
||||
}): Promise<void> {
|
||||
}: DelegateDelayedLeaveParams): Promise<void> {
|
||||
if ("url" in transport) {
|
||||
try {
|
||||
await csApi.delegateDelayedLeave({
|
||||
|
||||
@@ -78,7 +78,6 @@ import {
|
||||
type RemoteScreenShareViewModel,
|
||||
} from "../state/media/RemoteScreenShareViewModel";
|
||||
import { Connection } from "../state/CallViewModel/remoteMembers/Connection";
|
||||
import { type SFUConfig } from "../livekit/auth";
|
||||
|
||||
export function withFakeTimers(continuation: () => void): void {
|
||||
vi.useFakeTimers();
|
||||
|
||||
Reference in New Issue
Block a user