import type { InviteStreamType } from '@/apis';
import type { Nullable } from '@/types';

export type SendRtpInfo = Nullable<{
  ip: string;
  port: number;
  ssrc: string;
  platformId: string;
  deviceId: string;
  channelId: string;
  app: string;
  streamId: string;
  /**
   * 推流状态
   * 0 等待设备推流上来
   * 1 等待上级平台回复ack
   * 2 推流中
   */
  status: number;
  /**
   * 是否为tcp
   */
  tcp: boolean;
  /**
   * 是否为tcp主动模式
   */
  tcpActive: boolean;
  localPort: number;
  mediaServerId: string;
  serverId: string;
  callId: string;
  fromTag: string;
  toTag: string;
  /**
   * 发送时，rtp的pt（uint8_t）,不传时默认为96
   */
  pt: number;
  /**
   * 发送时，rtp的负载类型。为true时，负载为ps；为false时，为es；
   */
  usePs: boolean;
  /**
   * 当usePs 为false时，有效。为1时，发送音频；为0时，发送视频；不传时默认为0
   */
  onlyAudio: boolean;
  /**
   * 是否开启rtcp保活
   */
  rtcp: boolean;
  playType: InviteStreamType;
}>;
