@phenixrts/sdk
Version:
JavaScript SDK
40 lines (39 loc) • 1.17 kB
TypeScript
import { ISetRemoteDescriptionRequest } from './SetRemoteDescription';
export type SubscribeStatus = 'ok' | 'no-stream';
export interface ISubscribeRequest {
apiVersion: number;
clientVersion: string;
bearerToken: string;
failureCount: number;
httpRoundTripTime: number;
}
export interface ISubscribeWithOfferRequest extends ISubscribeRequest {
setRemoteDescription: ISetRemoteDescriptionRequest;
createAnswerDescription: {
apiVersion: number;
};
}
export interface ISubscribeWithoutOfferRequest extends ISubscribeRequest {
createOfferDescription: {
apiVersion: number;
};
}
export interface ISubscribeSuccessResponse {
status: 'ok';
streamId: string;
sharedSecret: string;
lag: number;
rtcConfiguration?: RTCConfiguration;
setRemoteDescriptionResponse?: {
sessionDescription: RTCSessionDescription;
};
createOfferDescriptionResponse?: {
sessionDescription: RTCSessionDescription;
};
createAnswerDescriptionResponse?: {
sessionDescription: RTCSessionDescription;
};
}
export interface ISubscribeFailureResponse {
status: SubscribeStatus;
}