Esempio n. 1
0
        public static void Main(string[] args)
        {
            string ClientId     = System.Configuration.ConfigurationManager.AppSettings["RedditClientID"];
            string ClientSecret = System.Configuration.ConfigurationManager.AppSettings["RedditClientSecret"];
            string RediretURI   = System.Configuration.ConfigurationManager.AppSettings["RedditRedirectURI"];

            cabalSub = System.Configuration.ConfigurationManager.AppSettings["CabalSubreddit"].ToLower();

            SNWebAgent agent = new SNWebAgent();

            SNWebAgent.UserAgent = "SnooNotes (by /u/meepster23)";
            SNWebAgent.RateLimit = SNWebAgent.RateLimitMode.Burst;

            ap = new RedditSharp.AuthProvider(ClientId, ClientSecret, RediretURI, agent);


            users = ApplicationUser.GetUsers().ToDictionary(k => k.UserName.ToLower(), v => v);

            if (args.Length > 0)
            {
                foreach (string subname in args)
                {
                    ProcessSub(Subreddit.GetSubreddits(subname).Single());
                }
            }
            else
            {
                List <Subreddit> subs = Subreddit.GetSubreddits().ToList();
                foreach (Subreddit sub in subs)
                {
                    ProcessSub(sub);
                }
            }
        }
Esempio n. 2
0
        public static void Main( string[] args )
        {
            string ClientId = System.Configuration.ConfigurationManager.AppSettings["RedditClientID"];
            string ClientSecret = System.Configuration.ConfigurationManager.AppSettings["RedditClientSecret"];
            string RediretURI = System.Configuration.ConfigurationManager.AppSettings["RedditRedirectURI"];

            cabalSub = System.Configuration.ConfigurationManager.AppSettings["CabalSubreddit"].ToLower();

            SNWebAgent agent = new SNWebAgent();
            SNWebAgent.UserAgent = "SnooNotes (by /u/meepster23)";
            SNWebAgent.RateLimit = SNWebAgent.RateLimitMode.Burst;

            ap = new RedditSharp.AuthProvider( ClientId, ClientSecret, RediretURI, agent );

            users = ApplicationUser.GetUsers().ToDictionary( k => k.UserName.ToLower(), v => v );

            if ( args.Length > 0 ) {
                foreach ( string subname in args ) {
                    ProcessSub( Subreddit.GetSubreddits( subname ).Single() );
                }
            }
            else {
                List<Subreddit> subs = Subreddit.GetSubreddits().ToList();
                foreach ( Subreddit sub in subs ) {
                    ProcessSub( sub );
                }
            }
        }
Esempio n. 3
0
		public static void RevokeRefreshToken( string token ) {
			string ClientId = System.Configuration.ConfigurationManager.AppSettings["RedditClientID"];
			string ClientSecret = System.Configuration.ConfigurationManager.AppSettings["RedditClientSecret"];
			string RediretURI = System.Configuration.ConfigurationManager.AppSettings["RedditRedirectURI"];
			SNWebAgent agent = new SNWebAgent();
			RedditSharp.AuthProvider ap = new RedditSharp.AuthProvider( ClientId, ClientSecret, RediretURI, agent );
			ap.RevokeToken( token, true );

		}
Esempio n. 4
0
		public static void GetNewToken( Models.ApplicationUser ident ) {
			string ClientId = System.Configuration.ConfigurationManager.AppSettings["RedditClientID"];
			string ClientSecret = System.Configuration.ConfigurationManager.AppSettings["RedditClientSecret"];
			string RediretURI = System.Configuration.ConfigurationManager.AppSettings["RedditRedirectURI"];

			SNWebAgent agent = new SNWebAgent();
			RedditSharp.AuthProvider ap = new RedditSharp.AuthProvider( ClientId, ClientSecret, RediretURI, agent );

			string newaccesstoken = ap.GetOAuthToken( ident.RefreshToken, true );
			ident.AccessToken = newaccesstoken;
			ident.TokenExpires = DateTime.UtcNow.AddMinutes( 50 );
		}
Esempio n. 5
0
        public virtual async Task RevokeRefreshTokenAsync(string token, string username)
        {
            string ClientId     = Configuration["RedditClientID"];
            string ClientSecret = Configuration["RedditClientSecret"];
            string RediretURI   = Configuration["RedditRedirectURI"];

            RedditSharp.WebAgent     agent = new RedditSharp.WebAgent();
            RedditSharp.AuthProvider ap    = new RedditSharp.AuthProvider(ClientId, ClientSecret, RediretURI, agent);
            await ap.RevokeTokenAsync(token, true);

            await agentPool.RemoveWebAgentAsync(username); //TODO revoke here instead
        }
Esempio n. 6
0
        public string GetToken(RedditSharp.AuthProvider provider)
        {
            if (DateTime.UtcNow >= TokenExpires.AddMinutes(-5))
            {
                AccessToken  = provider.GetOAuthToken(RefreshToken, true);
                TokenExpires = DateTime.UtcNow.AddMinutes(50);
                // freshUsers.Add(UserName, AccessToken);

                using (SqlConnection con = new SqlConnection(constring))
                {
                    string query = "update AspNetUsers " +
                                   "set AccessToken = @AccessToken, TokenExpires = @TokenExpires " +
                                   "where Id = @Id";
                    con.Execute(query, this);
                }
            }
            return(AccessToken);
        }