public string GetUserInfo(string oAuthToken, string oAuthTokenSecret, string format, string fields) { OAuthBase oAuth = new OAuthBase(); string accessTokenUrl = string.Format("http://{0}/v2/people/@me/@self", ApiDomain); string timestamp = oAuth.GenerateTimeStamp(); string nonce = oAuth.GenerateNonce(); List<QueryParameter> parameters = new List<QueryParameter>(); parameters.Add(new QueryParameter("fields", fields)); parameters.Add(new QueryParameter("format", format)); string signature = oAuth.GenerateSignature( new Uri(accessTokenUrl), ConsumerKey, ConsumerSecret, oAuthToken, oAuthTokenSecret, "GET", timestamp, nonce, SignatureTypes.HMACSHA1, parameters); string accessQueryParametersFormat = "{0}?fields={1}&format={2}&oauth_consumer_key={3}&oauth_nonce={4}&oauth_signature={5}&oauth_signature_method={6}&oauth_timestamp={7}&oauth_token={8}&oauth_version={9}"; string generatedAccessTokenUrl = string.Format( accessQueryParametersFormat, accessTokenUrl, OAuthBase.UrlEncode(fields), OAuthBase.UrlEncode(format), OAuthBase.UrlEncode(ConsumerKey), OAuthBase.UrlEncode(nonce), OAuthBase.UrlEncode(signature), OAuthBase.UrlEncode("HMAC-SHA1"), OAuthBase.UrlEncode(timestamp), OAuthBase.UrlEncode(oAuthToken), OAuthBase.UrlEncode("1.0")); return HttpGet(generatedAccessTokenUrl); }
public OAuthTuple GetAccessToken(string oAuthToken, string oAuthTokenSecret) { OAuthBase oAuth = new OAuthBase(); string accessTokenUrl = string.Format("http://{0}/access_token", ApiDomain); string timestamp = oAuth.GenerateTimeStamp(); string nonce = oAuth.GenerateNonce(); string signatureAccess = oAuth.GenerateSignature( new Uri(accessTokenUrl), ConsumerKey, ConsumerSecret, oAuthToken, oAuthTokenSecret, "GET", timestamp, nonce, SignatureTypes.HMACSHA1); string accessQueryParametersFormat = "{0}?oauth_consumer_key={1}&oauth_token={2}&oauth_signature_method={3}&oauth_signature={4}&oauth_timestamp={5}&oauth_nonce={6}&oauth_version={7}"; string generatedAccessTokenUrl = string.Format( accessQueryParametersFormat, accessTokenUrl, OAuthBase.UrlEncode(ConsumerKey), OAuthBase.UrlEncode(oAuthToken), OAuthBase.UrlEncode("HMAC-SHA1"), OAuthBase.UrlEncode(signatureAccess), OAuthBase.UrlEncode(timestamp), OAuthBase.UrlEncode(nonce), OAuthBase.UrlEncode("1.0")); string accessTokenReturn = HttpGet(generatedAccessTokenUrl); return Util.ParseQueryString(accessTokenReturn); }
public OAuthTuple GetRequestToken() { string requestTokenUrl = string.Format("http://{0}/request_token", ApiDomain); OAuthBase oAuth = new OAuthBase(); string nonce = oAuth.GenerateNonce(); string timestamp = oAuth.GenerateTimeStamp(); string signature = oAuth.GenerateSignature( new Uri(requestTokenUrl), ConsumerKey, ConsumerSecret, "", "", "GET", timestamp, nonce, SignatureTypes.HMACSHA1); string requestTokenUrlFormat = "{0}?oauth_consumer_key={1}&oauth_nonce={2}&oauth_signature={3}&oauth_signature_method={4}&oauth_timestamp={5}&oauth_token={6}&oauth_version={7}"; string generatedRequestTokenUrl = string.Format( requestTokenUrlFormat, requestTokenUrl, OAuthBase.UrlEncode(ConsumerKey), OAuthBase.UrlEncode(nonce), OAuthBase.UrlEncode(signature), OAuthBase.UrlEncode("HMAC-SHA1"), OAuthBase.UrlEncode(timestamp), OAuthBase.UrlEncode(""), OAuthBase.UrlEncode("1.0")); string requestToken = HttpGet(generatedRequestTokenUrl); return Util.ParseQueryString(requestToken); }
public string PostNotifications(string oAuthToken, long applicationId, string templateId, IDictionary<string, string> templateParameters, string culture, string format) { string templateParametersString = Util.DictionaryToJson(templateParameters); string requestTokenUrl = string.Format("http://{0}/v1/applications/{1}/notifications", ApiDomain, applicationId); Uri uri = new Uri(requestTokenUrl); OAuthBase oAuth = new OAuthBase(); string nonce = oAuth.GenerateNonce(); string timestamp = oAuth.GenerateTimeStamp(); List<QueryParameter> parameters = new List<QueryParameter>(); parameters.Add(new QueryParameter("culture", culture)); parameters.Add(new QueryParameter("format", format)); parameters.Add(new QueryParameter("templateId", templateId)); parameters.Add(new QueryParameter("templateParameters", templateParametersString)); string signature = oAuth.GenerateSignature( uri, ConsumerKey, ConsumerSecret, oAuthToken, "", "POST", timestamp, nonce, SignatureTypes.HMACSHA1, parameters); string requestTokenUrlFormat = "{0}?culture={1}&format={2}&oauth_consumer_key={3}&oauth_nonce={4}&oauth_signature_method={5}&oauth_timestamp={6}&oauth_token={7}&oauth_version={8}&oauth_signature={9}"; string generatedUrl = string.Format( requestTokenUrlFormat, requestTokenUrl, culture, format, OAuthBase.UrlEncode(ConsumerKey), OAuthBase.UrlEncode(nonce), OAuthBase.UrlEncode("HMAC-SHA1"), OAuthBase.UrlEncode(timestamp), OAuthBase.UrlEncode(oAuthToken), OAuthBase.UrlEncode("1.0"), OAuthBase.UrlEncode(signature)); string message = GenerateTemplateActivityBody(templateId, OAuthBase.UrlEncode(templateParametersString)); UTF8Encoding encoding = new UTF8Encoding(); byte[] requestData = encoding.GetBytes(message); var response = HttpPost(generatedUrl, requestData); return response; }
public PostActivityFeedResult PostActivityFeed(string oAuthToken, string templateId, IDictionary<string, string> templateParameters, IList<string> mediaItems, string culture, string format) { string templateParametersString = Util.DictionaryToJson(templateParameters); string mediaItemsString = Util.ListToJson(mediaItems); string requestTokenUrl = string.Format("http://{0}/v2/activities/@me/@self", ApiDomain); Uri uri = new Uri(requestTokenUrl); OAuthBase oAuth = new OAuthBase(); string nonce = oAuth.GenerateNonce(); string timestamp = oAuth.GenerateTimeStamp(); List<QueryParameter> parameters = new List<QueryParameter>(); parameters.Add(new QueryParameter("culture", culture)); parameters.Add(new QueryParameter("format", format)); parameters.Add(new QueryParameter("templateId", templateId)); parameters.Add(new QueryParameter("templateParameters", templateParametersString)); parameters.Add(new QueryParameter("mediaItems", mediaItemsString)); string signature = oAuth.GenerateSignature( uri, ConsumerKey, ConsumerSecret, oAuthToken, "", "POST", timestamp, nonce, SignatureTypes.HMACSHA1, parameters); string requestTokenUrlFormat = "http://{0}/v2/activities/@me/@self?culture={1}&format={2}&oauth_consumer_key={3}&oauth_nonce={4}&oauth_signature_method={5}&oauth_timestamp={6}&oauth_token={7}&oauth_version={8}&oauth_signature={9}"; string generatedUrl = string.Format( requestTokenUrlFormat, ApiDomain, culture, format, OAuthBase.UrlEncode(ConsumerKey), OAuthBase.UrlEncode(nonce), OAuthBase.UrlEncode("HMAC-SHA1"), OAuthBase.UrlEncode(timestamp), OAuthBase.UrlEncode(oAuthToken), OAuthBase.UrlEncode("1.0"), OAuthBase.UrlEncode(signature)); string message = GenerateTemplateActivityBody(templateId, OAuthBase.UrlEncode(templateParametersString), OAuthBase.UrlEncode(mediaItemsString)); UTF8Encoding encoding = new UTF8Encoding(); byte[] requestData = encoding.GetBytes(message); var response = HttpPost(generatedUrl, requestData); var postActivityFeedResult = (PostActivityFeedResult)JsonConvert.Import(typeof(PostActivityFeedResult), response); return postActivityFeedResult; }
public PersonInfo GetMySpaceInfo(string oAuthToken, string oAuthTokenSecret) { OAuthBase oAuth = new OAuthBase(); string url = string.Format("http://{0}/v1/user.json", ApiDomain); string timestamp = oAuth.GenerateTimeStamp(); string nonce = oAuth.GenerateNonce(); string signatureAccess = oAuth.GenerateSignature( new Uri(url), ConsumerKey, ConsumerSecret, oAuthToken, oAuthTokenSecret, "GET", timestamp, nonce, SignatureTypes.HMACSHA1); string queryParametersFormat = "{0}?oauth_consumer_key={1}&oauth_token={2}&oauth_signature_method={3}&oauth_signature={4}&oauth_timestamp={5}&oauth_nonce={6}&oauth_version={7}"; string generatedUrl = string.Format( queryParametersFormat, url, OAuthBase.UrlEncode(ConsumerKey), OAuthBase.UrlEncode(oAuthToken), OAuthBase.UrlEncode("HMAC-SHA1"), OAuthBase.UrlEncode(signatureAccess), OAuthBase.UrlEncode(timestamp), OAuthBase.UrlEncode(nonce), OAuthBase.UrlEncode("1.0")); var response = HttpGet(generatedUrl); var personInfoResult = (PersonInfo)JsonConvert.Import(typeof(PersonInfo), response); return personInfoResult; }
public ExtendedProfile GetMySpaceExtendedProfile(string oAuthToken, string oAuthTokenSecret, long userId) { OAuthBase oAuth = new OAuthBase(); string url = string.Format("http://{0}/v1/users/{1}/profile.json", ApiDomain, userId); string timestamp = oAuth.GenerateTimeStamp(); string nonce = oAuth.GenerateNonce(); List<QueryParameter> parameters = new List<QueryParameter>(); parameters.Add(new QueryParameter("detailtype", "extended")); string signatureAccess = oAuth.GenerateSignature( new Uri(url), ConsumerKey, ConsumerSecret, oAuthToken, oAuthTokenSecret, "GET", timestamp, nonce, SignatureTypes.HMACSHA1, parameters); string queryParametersFormat = "{0}?detailtype={1}&oauth_consumer_key={2}&oauth_token={3}&oauth_signature_method={4}&oauth_signature={5}&oauth_timestamp={6}&oauth_nonce={7}&oauth_version={8}"; string generatedUrl = string.Format( queryParametersFormat, url, OAuthBase.UrlEncode("extended"), OAuthBase.UrlEncode(ConsumerKey), OAuthBase.UrlEncode(oAuthToken), OAuthBase.UrlEncode("HMAC-SHA1"), OAuthBase.UrlEncode(signatureAccess), OAuthBase.UrlEncode(timestamp), OAuthBase.UrlEncode(nonce), OAuthBase.UrlEncode("1.0")); var response = HttpGet(generatedUrl); var extendedProfile = (ExtendedProfile)JsonConvert.Import(typeof(ExtendedProfile), response); return extendedProfile; }