Example #1
0
        public async Task <bool> LaunchInstance(Instance instance)
        {
            var settingsTask = _context.ActiveFarmSettings;
            var stateTask    = _stateService.GetFarmState();

            await Task.WhenAll(settingsTask, stateTask);

            var settings = settingsTask.Result;
            var state    = stateTask.Result;

            string scriptName;

            if (instance is Bot)
            {
                scriptName = settings.BotScriptName;
            }
            else
            {
                scriptName = settings.MuleScriptName;
            }

            var args = new ClientStartArgs(instance.Account.Username, instance.Account.Password, scriptName)
            {
                Proxy = _mapper.Map <ProxyVm>(instance.Account.Proxy),
            };

            return(await _clientHandler.StartClient(state.SocketAddress, args, settings.ApiKey));
        }