Exemplo n.º 1
0
        public NTierClient(IParamsNTierClient parameters, string oauthToken = "")
        {
            _parameters = parameters;
            _client     = string.IsNullOrWhiteSpace(oauthToken)
                ? new TcpNETClient(new ParamsTcpClient
            {
                EndOfLineCharacters = "\r\n",
                Port  = _parameters.Port,
                Uri   = _parameters.Uri,
                IsSSL = _parameters.IsSSL
            })
                : new TcpNETClient(new ParamsTcpClient
            {
                EndOfLineCharacters = "\r\n",
                Port  = _parameters.Port,
                Uri   = _parameters.Uri,
                IsSSL = _parameters.IsSSL
            }, oauthToken: oauthToken);

            _client.ConnectionEvent += OnConnectionEvent;
            _client.ErrorEvent      += OnErrorEvent;
            _client.MessageEvent    += OnMessageEvent;
        }
Exemplo n.º 2
0
        static async Task CreateClientAsync()
        {
            Console.WriteLine("Select service type: ");

            for (int i = 0; i < Enum.GetNames(typeof(RegisterType)).Length; i++)
            {
                Console.WriteLine($"{i + 1}: {((RegisterType)i).ToString()}");
            }

            var line = Console.ReadLine();

            if (int.TryParse(line, out var selection) &&
                --selection >= 0 &&
                selection < Enum.GetNames(typeof(RegisterType)).Length)
            {
                if (_client != null)
                {
                    _client.MessageEvent -= OnNTierMessageEventAsync;
                    _client.Dispose();
                    _client = null;
                }

                _parameters = new ParamsNTierClient
                {
                    Port = 9345,
                    ReconnectIntervalSec = 12,
                    Uri          = "localhost",
                    RegisterType = (RegisterType)selection
                };

                _client = new NTierClient(_parameters);
                _client.MessageEvent += OnNTierMessageEventAsync;
                await _client.StartAsync();
            }

            await MenuAsync();
        }