Simply use call states

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
pull/21833/head
Šimon Brandner 2021-06-01 10:11:48 +02:00
parent 6b72c13e34
commit f96e25d833
No known key found for this signature in database
GPG Key ID: 9760693FDD98A790
2 changed files with 6 additions and 17 deletions

View File

@ -21,16 +21,6 @@ import { CallEvent, CallState, MatrixCall } from "matrix-js-sdk/src/webrtc/call"
import CallHandler from '../../CallHandler';
import { EventEmitter } from 'events';
export enum CallEventGrouperState {
Incoming = "incoming",
Connecting = "connecting",
Connected = "connected",
Ringing = "ringing",
Missed = "missed",
Rejected = "rejected",
Ended = "ended",
}
export enum CallEventGrouperEvent {
StateChanged = "state_changed",
}
@ -38,7 +28,7 @@ export enum CallEventGrouperEvent {
export default class CallEventGrouper extends EventEmitter {
invite: MatrixEvent;
call: MatrixCall;
state: CallEventGrouperState;
state: CallState;
public answerCall = () => {
this.call?.answer();
@ -76,9 +66,7 @@ export default class CallEventGrouper extends EventEmitter {
}
private setCallState = () => {
if (this.call?.state === CallState.Ringing) {
this.state = CallEventGrouperState.Incoming;
}
this.state = this.call.state
this.emit(CallEventGrouperEvent.StateChanged, this.state);
}

View File

@ -19,8 +19,9 @@ import React from 'react';
import { MatrixEvent } from "matrix-js-sdk/src/models/event";
import { _t } from '../../../languageHandler';
import MemberAvatar from '../avatars/MemberAvatar';
import CallEventGrouper, { CallEventGrouperEvent, CallEventGrouperState } from '../../structures/CallEventGrouper';
import CallEventGrouper, { CallEventGrouperEvent } from '../../structures/CallEventGrouper';
import FormButton from '../elements/FormButton';
import { CallState } from 'matrix-js-sdk/src/webrtc/call';
interface IProps {
mxEvent: MatrixEvent;
@ -28,7 +29,7 @@ interface IProps {
}
interface IState {
callState: CallEventGrouperState;
callState: CallState;
}
export default class CallEvent extends React.Component<IProps, IState> {
@ -57,7 +58,7 @@ export default class CallEvent extends React.Component<IProps, IState> {
const sender = event.sender ? event.sender.name : event.getSender();
let content;
if (this.state.callState === CallEventGrouperState.Incoming) {
if (this.state.callState === CallState.Ringing) {
content = (
<div className="mx_CallEvent_content">
<FormButton