Esempio n. 1
0
        /// <summary>
        /// Sets up steam connection.
        /// </summary>
        /// <param name="steamCredentials">Credentials to use for login.</param>
        public SteamHandling(SteamCredentials steamCredentials)
        {
            _credentials = steamCredentials;

            _client     = new SteamClient();
            _manager    = new CallbackManager(_client);
            _authTicket = new SteamAuthTicket(_client, _manager);
            _user       = _client.GetHandler <SteamUser>();

            _onConnected    = _manager.Subscribe <SteamClient.ConnectedCallback>(OnConnected);
            _onDisconnected = _manager.Subscribe <SteamClient.DisconnectedCallback>(OnDisconnected);

            _onLoginKey    = _manager.Subscribe <SteamUser.LoginKeyCallback>(OnLoginKey);
            _onLoggedOn    = _manager.Subscribe <SteamUser.LoggedOnCallback>(OnLoggedOn);
            _onMachineAuth = _manager.Subscribe <SteamUser.UpdateMachineAuthCallback>(OnMachineAuthDetails);

            _client.Connect();

            callbacksTask = Task.Factory.StartNew(() =>
            {
                while (true)
                {
                    _manager.RunWaitCallbacks();
                }
            }, cts.Token, TaskCreationOptions.LongRunning, TaskScheduler.Default);
        }
Esempio n. 2
0
 /// <summary>
 /// Sets up steam connection and sets logger to use for debug information.
 /// </summary>
 /// <param name="steamCredentials">Credentials to use for login.</param>
 /// <param name="logger">Logger instance.</param>
 public SteamHandling(SteamCredentials steamCredentials, ILogger <SteamHandling> logger) : this(steamCredentials)
 {
     _logger = logger;
 }