CSharpRTMP.Core.Protocols.Rtmfp.InboundRTMFPProtocol.OnConnection C# (CSharp) Method

OnConnection() public method

public OnConnection ( Session session, Variant parameters, AMFObjectWriter response ) : bool
session Session
parameters Variant
response AMFObjectWriter
return bool
        public override bool OnConnection(Session session, Variant parameters, AMFObjectWriter response)
        {
            string appName = parameters[0][Defines.RM_INVOKE_PARAMS_CONNECT_APP];
            //var parameters = pFrom.CustomParameters;
            //var instanceName = index == -1?"_default_": appName.Substring(index + 1);
            var oldApplication = Application;
            var newApp = ClientApplicationManager.SwitchRoom(this, appName, Application.Configuration);

            if (newApp != null && newApp != oldApplication)
            {
                var handler = newApp.GetProtocolHandler<BaseRtmfpAppProtocolHandler>(this);
                return handler.CurrentProtocol.OnConnection(session, parameters, response);
            }

            if (newApp == null || (newApp == oldApplication && !Application.OnConnect(session, parameters)))
            {
                return false;
            }

            return true;
        }