/// <summary> /// Post status /// </summary> /// <param name="model"></param> /// <param name="network"></param> /// <returns></returns> public ResponseModel Post(SocialMessageModel model, SocialMediaEnums.SocialNetwork network) { try { var token = GetActiveTokenOfSocialMedia(network); if (token != null) { object response = null; var authorizeModel = new SocialMediaResponseModel { AppId = token.AppId, AppSecret = token.AppSecret, AccessToken = token.AccessToken, AccessTokenSecret = token.AccessTokenSecret }; switch (network) { case SocialMediaEnums.SocialNetwork.Facebook: response = SocialUtilities.PostFacebookStatus(authorizeModel, model); break; case SocialMediaEnums.SocialNetwork.Twitter: response = SocialUtilities.PostTwitterStatus(authorizeModel, model); break; case SocialMediaEnums.SocialNetwork.LinkedIn: response = SocialUtilities.PostLinkedInStatus(authorizeModel, model); break; } var responseResult = string.Empty; if (response != null) { responseResult = SerializeUtilities.Serialize(response); } return(new ResponseModel { Success = true, Data = responseResult }); } return(new ResponseModel { Success = false, Message = T("SocialMediaToken_Message_ObjectNotFound") }); } catch (Exception exception) { return(new ResponseModel(exception)); } }
/// <summary> /// Get active token by social media id /// </summary> /// <param name="socialNetwork"></param> /// <returns></returns> public SocialMediaToken GetActiveTokenOfSocialMedia(SocialMediaEnums.SocialNetwork socialNetwork) { var socialMediaToken = FetchFirst(token => token.SocialMediaId == (int)socialNetwork && token.IsDefault); if (socialMediaToken == null) { socialMediaToken = FetchFirst(s => s.SocialMediaId == (int)socialNetwork && s.Status == SocialMediaEnums.TokenStatus.Active); } return(socialMediaToken); }