public comum.dto.PerfilAccessToken Processar(string token, Guid empresaId) { var responseFacebookInfos = empresaClient.ObterInfoFacebook(empresaId); responseFacebookInfos.ThrownIfError(); var facekookInfos = responseFacebookInfos.Item; var url = $"https://graph.facebook.com/{facekookInfos.GraphApiVersao}/oauth/access_token?grant_type=fb_exchange_token&client_id={facekookInfos.AppId}&client_secret={facekookInfos.AppSecret}&fb_exchange_token={token}"; var envelopeResponse = WebRequestHelper.GetExterno <AccessTokenResponse>(url); envelopeResponse.ThrownIfError(); var perfilToken = new comum.dto.PerfilAccessToken { Token = envelopeResponse.Item.access_token, Expiracao = DateTimeHelper.Now().AddSeconds(envelopeResponse.Item.expires_in), Tipo = envelopeResponse.Item.token_type }; perfilToken.Json = SerializadorHelper.Serializar(perfilToken); return(perfilToken); }
public AccessTokenResponse Obter(string code, Guid empresaId) { var responseFacebookInfos = empresaClient.ObterInfoFacebook(empresaId); responseFacebookInfos.ThrownIfError(); var facekookInfos = responseFacebookInfos.Item; var url = $"https://graph.facebook.com/v9.0/oauth/access_token?client_id={facekookInfos.AppId}&redirect_uri={facekookInfos.URLRedirectOauth}&state=1&client_secret={facekookInfos.AppSecret}&code={code}"; var envelope = WebRequestHelper.GetExterno <AccessTokenResponse>(url); var accessTokenResponse = envelope.Item; if (accessTokenResponse.error != null && accessTokenResponse.error.code == 100) { if (accessTokenResponse.error.error_subcode == 36007) { throw new UnauthorizedAccessException(); } else { throw new InvalidCredentialException(); } } return(accessTokenResponse); }
public UserResponse Obter(string token) { var url = $"https://graph.facebook.com/me?fields=id,name,short_name,picture&access_token={token}"; var response = WebRequestHelper.GetExterno <UserResponse>(url); return(response.Item); }
private Response ObterChat(string liveChatId, string pageToken) { var messagesUrlPreparada = string.Format(settings.url.messages, liveChatId, settings.apiKey, pageToken); var messagesResponse = WebRequestHelper.GetExterno <Response>(messagesUrlPreparada, ObterHeader()); messagesResponse.ThrownIfError(); return(messagesResponse.Item); }
public ResponseEnvelope <Item> ObterLive() { var url = string.Format(settings.url.liveBroadcasts, settings.apiKey); var token = oauth2Servico.ObterToken(); var response = WebRequestHelper.GetExterno <Response>(url, ObterHeader()); response.ThrownIfError(); var envelope = new ResponseEnvelope <Item>(); if (response.Item.PageInfo.TotalResults >= 1) { envelope.Item = response.Item.Items[0]; } else { envelope.HttpStatusCode = HttpStatusCode.NotFound; } return(envelope); }