awrtc_browser
Version:
Compatible browser implementation to the Unity asset WebRTC Video Chat. Try examples in build folder
78 lines (77 loc) • 2.58 kB
TypeScript
import { ICall } from "./ICall";
import { IMediaNetwork } from "./IMediaNetwork";
import { CallEventHandler } from "./CallEventArgs";
import { NetworkConfig } from "./NetworkConfig";
import { MediaConfig } from "./MediaConfig";
import { ConnectionId } from "../network/index";
declare enum CallState {
Invalid = 0,
Initialized = 1,
Configuring = 2,
Configured = 3,
RequestingAddress = 4,
WaitingForIncomingCall = 5,
WaitingForOutgoingCall = 6,
InCall = 7,
Closed = 8
}
/**This class wraps an implementation of
* IMediaStream and converts its polling system
* to an easier to use event based system.
*
* Ideally use only features defined by
* ICall to avoid having to deal with internal changes
* in future updates.
*/
export declare class AWebRtcCall implements ICall {
private MESSAGE_TYPE_INVALID;
private MESSAGE_TYPE_DATA;
private MESSAGE_TYPE_STRING;
private MESSAGE_TYPE_CONTROL;
protected mNetworkConfig: NetworkConfig;
private mMediaConfig;
private mCallEventHandlers;
addEventListener(listener: CallEventHandler): void;
removeEventListener(listener: CallEventHandler): void;
protected mNetwork: IMediaNetwork;
private mConnectionInfo;
private mConferenceMode;
private mState;
get State(): CallState;
private mIsDisposed;
private mServerInactive;
private mPendingListenCall;
private mPendingCallCall;
private mPendingAddress;
constructor(config?: NetworkConfig);
protected Initialize(network: IMediaNetwork): void;
Configure(config: MediaConfig): void;
Call(address: string): void;
Listen(address: string): void;
Send(message: string, reliable?: boolean, id?: ConnectionId): void;
private InternalSendToAll;
private InternalSendTo;
SendData(message: Uint8Array, reliable: boolean, id: ConnectionId): void;
private PackStringMsg;
private UnpackStringMsg;
private PackDataMsg;
private UnpackDataMsg;
private InternalSendRawTo;
Update(): void;
private FrameToCallEvent;
private MediaEventToCallEvent;
private PendingCall;
private ProcessCall;
private PendingListen;
private ProcessListen;
private DoPending;
private ClearPending;
private CheckDisposed;
private EnsureConfiguration;
private TriggerCallEvent;
private OnConfigurationComplete;
private OnConfigurationFailed;
protected DisposeInternal(disposing: boolean): void;
Dispose(): void;
}
export {};