Skip to content

Data interfaces

SyncStage data interfaces#

interface IHostInfo {
  port: number;
  address: string;
  audioServerId: string;
  streamingUrl: string;
}
interface IConnectionInfo {
  connectionId: string;
  createdAt: string;
  updatedAt: string;
  userId: string;
  isMuted: boolean;
  displayName?: string | null;
  hostInfo?: IHostInfo | null;

  connection(): Connection;
}
interface ILatencyOptimizationLevel {
  level: number;
}
interface IMeasurements {
  networkDelayMs: number;
  networkJitterMs: number;
  quality: number;
}
interface IServerInstance {
  zoneId: string;
  zoneName: string;
  studioServerId: string;
}
interface ISessionIdentifier {
  sessionId: string;
  sessionCode: string;
  createdAt: string;
}
interface ISession {
  sessionId: string;
  sessionCode: string | null;
  createdAt: string;
  updatedAt: string;
  transmitter?: IConnection | null;
  receivers: Array<IConnection>;
  isRecording: boolean;
}
interface IConnection {
  identifier: string;
  userId: string;
  displayName?: string | null;
  isMuted: boolean;
  createdAt: string;
  updatedAt: string;
}
interface ISessionInfo {
  sessionId: string;
  sessionCode: string | null;
  sessionStatus: string;
  serverIsReady: boolean;
  websocketUrl: string;
  transmitter?: IConnectionInfo | null;
  receivers: Array<IConnectionInfo>;
  createdAt: string;
  updatedAt: string;
  recordingStatus: string;
}
export interface IZoneLatency {
  name: string;
  latency: string;
}