/// <summary>
        /// <para>Events:</para>
        /// <para>@emits sctpstatechange - (sctpState: SctpState)</para>
        /// <para>@emits trace - (trace: TransportTraceEventData)</para>
        /// <para>Observer events:</para>
        /// <para>@emits close</para>
        /// <para>@emits newproducer - (producer: Producer)</para>
        /// <para>@emits newconsumer - (consumer: Consumer)</para>
        /// <para>@emits newdataproducer - (dataProducer: DataProducer)</para>
        /// <para>@emits newdataconsumer - (dataConsumer: DataConsumer)</para>
        /// <para>@emits sctpstatechange - (sctpState: SctpState)</para>
        /// <para>@emits trace - (trace: TransportTraceEventData)</para>
        /// </summary>
        /// <param name="loggerFactory"></param>
        /// <param name="transportInternalData"></param>
        /// <param name="sctpParameters"></param>
        /// <param name="sctpState"></param>
        /// <param name="channel"></param>
        /// <param name="payloadChannel"></param>
        /// <param name="appData"></param>
        /// <param name="getRouterRtpCapabilities"></param>
        /// <param name="getProducerById"></param>
        /// <param name="getDataProducerById"></param>
        public PipeTransport(ILoggerFactory loggerFactory,
                             TransportInternalData transportInternalData,
                             SctpParameters?sctpParameters,
                             SctpState?sctpState,
                             Channel channel,
                             PayloadChannel payloadChannel,
                             Dictionary <string, object>?appData,
                             Func <RtpCapabilities> getRouterRtpCapabilities,
                             Func <string, Producer?> getProducerById,
                             Func <string, DataProducer?> getDataProducerById,
                             TransportTuple tuple,
                             bool rtx,
                             SrtpParameters?srtpParameters
                             ) : base(loggerFactory, transportInternalData, sctpParameters, sctpState, channel, payloadChannel, appData, getRouterRtpCapabilities, getProducerById, getDataProducerById)
        {
            _loggerFactory = loggerFactory;
            _logger        = loggerFactory.CreateLogger <PipeTransport>();

            // Data
            Tuple          = tuple;
            Rtx            = rtx;
            SrtpParameters = srtpParameters;

            HandleWorkerNotifications();
        }
Beispiel #2
0
        /// <summary>
        /// <para>Events:</para>
        /// <para>@emits tuple - (tuple: TransportTuple)</para>
        /// <para>@emits rtcptuple - (rtcpTuple: TransportTuple)</para>
        /// <para>@emits sctpstatechange - (sctpState: SctpState)</para>
        /// <para>@emits trace - (trace: TransportTraceEventData)</para>
        /// <para>Observer events:</para>
        /// <para>@emits close</para>
        /// <para>@emits newproducer - (producer: Producer)</para>
        /// <para>@emits newconsumer - (producer: Producer)</para>
        /// <para>@emits newdataproducer - (dataProducer: DataProducer)</para>
        /// <para>@emits newdataconsumer - (dataProducer: DataProducer)</para>
        /// <para>@emits tuple - (tuple: TransportTuple)</para>
        /// <para>@emits rtcptuple - (rtcpTuple: TransportTuple)</para>
        /// <para>@emits sctpstatechange - (sctpState: SctpState)</para>
        /// <para>@emits trace - (trace: TransportTraceEventData)</para>
        /// </summary>
        /// <param name="loggerFactory"></param>
        /// <param name="transportInternalData"></param>
        /// <param name="sctpParameters"></param>
        /// <param name="sctpState"></param>
        /// <param name="channel"></param>
        /// <param name="payloadChannel"></param>
        /// <param name="appData"></param>
        /// <param name="getRouterRtpCapabilities"></param>
        /// <param name="getProducerById"></param>
        /// <param name="getDataProducerById"></param>
        public PlainTransport(ILoggerFactory loggerFactory,
                              TransportInternalData transportInternalData,
                              SctpParameters?sctpParameters,
                              SctpState?sctpState,
                              Channel channel,
                              PayloadChannel payloadChannel,
                              Dictionary <string, object>?appData,
                              Func <RtpCapabilities> getRouterRtpCapabilities,
                              Func <string, Producer> getProducerById,
                              Func <string, DataProducer> getDataProducerById,
                              bool?rtcpMux,
                              bool?comedia,
                              TransportTuple tuple,
                              TransportTuple?rtcpTuple,
                              SrtpParameters?srtpParameters
                              ) : base(loggerFactory, transportInternalData, sctpParameters, sctpState, channel, payloadChannel, appData, getRouterRtpCapabilities, getProducerById, getDataProducerById)
        {
            _logger = loggerFactory.CreateLogger <PlainTransport>();

            // Data
            RtcpMux        = rtcpMux;
            Comedia        = comedia;
            Tuple          = tuple;
            RtcpTuple      = rtcpTuple;
            SrtpParameters = srtpParameters;

            HandleWorkerNotifications();
        }