@phenixrts/sdk
Version:
JavaScript SDK
43 lines (42 loc) • 1.58 kB
TypeScript
import { ISetRemoteDescriptionRequest } from './SetRemoteDescription';
export type PublishStatus = 'ok' | 'not-found' | 'geo-restricted' | 'geo-blocked' | 'unauthorized' | 'rate-limited' | 'capacity' | 'timeout' | 'forbidden-tag' | 'missing-channel-or-room-id' | 'port-in-range-not-found' | 'failed';
export interface IPublishRequest {
apiVersion: number;
clientVersion: string;
bearerToken: string;
failureCount: number;
httpRoundTripTime: number;
name: string;
options?: string[];
}
export interface IPublishWithOfferRequest extends IPublishRequest {
setRemoteDescription: ISetRemoteDescriptionRequest;
createAnswerDescription: {
streamId: string;
apiVersion: number;
};
}
export interface IPublishWithoutOfferRequest extends IPublishRequest {
createOfferDescription: {
streamId: string;
apiVersion: number;
};
}
export interface IPublishSuccessResponse {
status: 'ok';
streamId: string;
sharedSecret: string;
rtcConfiguration?: RTCConfiguration;
setRemoteDescriptionResponse?: {
sessionDescription: RTCSessionDescription;
};
createOfferDescriptionResponse?: {
sessionDescription: RTCSessionDescription;
};
createAnswerDescriptionResponse?: {
sessionDescription: RTCSessionDescription;
};
}
export interface IPublishResponse {
status: 'not-found' | 'geo-restricted' | 'geo-blocked' | 'unauthorized' | 'rate-limited' | 'capacity' | 'timeout' | 'forbidden-tag' | 'missing-channel-or-room-id' | 'port-in-range-not-found' | 'failed';
}