public IActionResult BroadcasterCode( [FromServices] API.Twitch.IBroadcasterTokenValidator broadcasterTokenValidator, [FromQuery(Name = "code")] string code, [FromQuery(Name = "state")] string state) { broadcasterTokenValidator.SetCode(code, state); return(Ok()); }
protected async Task <bool> ConfigureBroadcasterAccount( API.Twitch.IBroadcasterTokenValidator broadcasterTokenValidator, API.Twitch.HelixHelper helixHelper) { bool successful = true; if (string.IsNullOrEmpty(botConfig.Broadcaster)) { WritePrompt("Broadcaster Username"); string inputUserName = Console.ReadLine()?.Trim(); if (!string.IsNullOrEmpty(inputUserName)) { botConfig.Broadcaster = inputUserName; botConfig.Serialize(); } else { WriteError("No Broadcaster Username received."); successful = false; } } if (!string.IsNullOrEmpty(botConfig.TwitchClientId) && !string.IsNullOrEmpty(botConfig.TwitchClientSecret) && !string.IsNullOrEmpty(botConfig.Broadcaster)) { if (await broadcasterTokenValidator.TryToConnect()) { //Set broadcasterID if it's not set if (string.IsNullOrEmpty(botConfig.BroadcasterId)) { //Fetch the Broadcaster ID API.Twitch.TwitchUsers userData = await helixHelper.GetUsers(null, new List <string>() { botConfig.Broadcaster }); if (userData.Data is not null && userData.Data.Count > 0) { botConfig.BroadcasterId = userData.Data[0].ID; botConfig.Serialize(); } else { WriteError("Unable to fetch BroadcasterId. Please check broadcaster credentials and try again."); successful = false; } } } else { WriteError("Unable to connect to Twitch. Please check broadcaster credentials and try again."); successful = false; } }
public IActionResult BroadcasterCode( [FromServices] API.Twitch.IBroadcasterTokenValidator broadcasterTokenValidator, [FromQuery(Name = "code")] string code, [FromQuery(Name = "state")] string state) { if (string.IsNullOrEmpty(code) || string.IsNullOrEmpty(state)) { return(BadRequest()); } broadcasterTokenValidator.SetCode(code, state); return(Ok()); }
public StandardConfigurator( Config.BotConfiguration botConfig, ICommunication communication, ErrorHandler errorHandler, API.Twitch.HelixHelper helixHelper, API.Twitch.IBotTokenValidator botTokenValidator, API.Twitch.IBroadcasterTokenValidator broadcasterTokenValidator) : base(botConfig, communication, errorHandler) { this.helixHelper = helixHelper; this.botTokenValidator = botTokenValidator; this.broadcasterTokenValidator = broadcasterTokenValidator; }