Commit Graph

225 Commits

Author SHA1 Message Date
FoxxMD
eb84df5133 Set dark theme as default 2021-07-16 12:12:17 -04:00
FoxxMD
4b11e348ba Update some logging to be more subreddit specific 2021-07-16 12:08:19 -04:00
FoxxMD
9edacf29fa Refactor log tracking to handle limit's per suberddit
Makes the 'limit' option in UI more true -- keep track of $max number of logs per subreddit and then combine at render time
2021-07-16 11:50:34 -04:00
FoxxMD
56c13474d9 Cover edge case where logs don't exist for a subreddit 2021-07-16 10:15:47 -04:00
FoxxMD
66a4144b7b retry on all stream types 2021-07-16 10:11:17 -04:00
FoxxMD
16880775fb Increase max polling retries
If reddit has a general outage this is where we want to wait the longest before giving up entirely since polling is infrequent (relative to running checks)
2021-07-16 10:11:03 -04:00
FoxxMD
d69d0e972c End stream when error occurs
Stream should also stop polling. It's up to the retry handler and individual usage of stream in app/manager to restart it
2021-07-16 10:10:18 -04:00
FoxxMD
a9350c2828 Fix retry handler and broaden request conditions
* fix other retry compare statement
* check request for status code missing (timeout, socket timeout, address unavailable, etc.) or valid status code
* clarify wording in retry handler logging
2021-07-16 10:09:38 -04:00
FoxxMD
2fe06f21d9 Fix stats margin 2021-07-15 23:04:09 -04:00
FoxxMD
42d71a918f Implement URL checker 2021-07-15 22:58:20 -04:00
FoxxMD
0aa2b24f39 Implement actions 2021-07-15 20:22:27 -04:00
FoxxMD
4771efa32a Add status indicator to subreddit tab name 2021-07-15 20:01:07 -04:00
FoxxMD
1d9f4f32b8 Implement logout and reduce footprint of light dark toggle 2021-07-15 19:54:12 -04:00
FoxxMD
d84e6f1905 Implement oauth helper ui 2021-07-15 19:34:01 -04:00
FoxxMD
ae19d1c9a1 Fix log check 2021-07-15 17:10:31 -04:00
FoxxMD
f9c7cf433e Switch to web as default run command and provide fallback
* Use 'web' as run command for dockerfile
* If on 'web' there is no redirect uri fallback to cli (doesn't break compatibility this way)
2021-07-15 15:44:47 -04:00
FoxxMD
2917233728 More startup logging and better logging on invalid/missing credentials 2021-07-15 15:31:56 -04:00
FoxxMD
6dfb5823ba Add web ui port as configurable 2021-07-15 15:02:41 -04:00
FoxxMD
14e7275f64 Implement operator-specific UI components
* Add api limit, reset, and heartbeat interval to All overview when operator is viewing
* Stream op stats on log emit
* Add env/arg for setting "Operated by"
2021-07-15 14:57:05 -04:00
FoxxMD
1fbe6b708d More layout improvements 2021-07-15 13:37:05 -04:00
FoxxMD
495213bba9 Improvements to web ui
* Implement stats tracking per manager
* Render stats per sub and overall in ui
* Clean up ui layout
2021-07-15 12:54:32 -04:00
FoxxMD
15e031d448 Implement web ui
* Refactor program options to allow running as web
* Implement authentication using reddit oauth
* Use session in memory to store identification and accessible subreddits
* Implement socket.io with shared session to enable streaming logs
* Implement log streaming with per-subreddit views
2021-07-15 01:18:21 -04:00
FoxxMD
6994bbe770 Remove errenous delayUntil default 2021-07-13 14:32:46 -04:00
FoxxMD
a3c923bda6 Fix passing dryrun arg 2021-07-13 10:31:29 -04:00
FoxxMD
a40c4c5e58 Fix erroneous debug change for heartbeat interval 2021-07-12 13:45:19 -04:00
FoxxMD
be9dcdee1c Refactor polling streams to reduce usage and improve error catching
* Re-implement all polling streams with extended poll class for catching errors
* Increase default polling interval to 30 seconds and limit to 50
* When using default interval/limit for mod polling use a shared stream between all managers and poll to /r/mod -- reduces api calls for polling mod streams to 1 regardless of how many subreddits are managed
2021-07-12 13:44:07 -04:00
FoxxMD
07b34caffb Add proxy options and handle polling errors
* Implement proxied snoowrap requests
* Extend snoostorm class so timeout/errors during polling can be caught
2021-07-12 10:01:53 -04:00
FoxxMD
c5a3404242 Remove erroneous debugging addition 2021-07-08 14:13:02 -04:00
FoxxMD
1e03b38f0a Add polling info on options build 2021-07-07 17:19:56 -04:00
FoxxMD
f64be77e70 Change log level of processing delay statement 2021-07-07 17:02:00 -04:00
FoxxMD
a3da77874b Ignore doc updates for docker 2021-07-07 16:42:06 -04:00
FoxxMD
a9f740c9fa Fix example links 2021-07-07 16:40:45 -04:00
FoxxMD
00e6346cdb Fix wording 2021-07-07 16:38:55 -04:00
FoxxMD
951359ac39 Add tuning documentation for repeat activity 2021-07-07 16:10:24 -04:00
FoxxMD
15824e5d0f Implement delay before processing
Using criteria for Activity being N seconds old allows for delay with possibility of immediate processing to avoid api call

Closes #23
2021-07-07 15:23:59 -04:00
FoxxMD
e7c794ec85 Fix activities example 2021-07-07 13:16:04 -04:00
FoxxMD
70e426de7e Fix dajys link 2021-07-07 13:14:27 -04:00
FoxxMD
cc2518d086 Refactor documentation and ENHANCE 2021-07-07 13:06:51 -04:00
FoxxMD
5517c75d4c Update examples 2021-07-07 09:44:12 -04:00
FoxxMD
8e2fee6d50 Fix heartbeat interval 0.4.2 2021-07-06 16:52:45 -04:00
FoxxMD
ed8be6dda2 Refactor app/manager building for in-situ updates
* Separate manager instantiation from configuration flow so config can be reloaded
* Move wiki page parsing into manager for better encapsulation
* Check for wiki revision date on heartbeat and on checks if older than one minute
* Catch config parsing issues and retry on next heartbeat
2021-07-06 16:28:18 -04:00
FoxxMD
00e38b5560 Use correct media property for anchor parsing 2021-07-06 12:59:46 -04:00
FoxxMD
9cac11f436 Implement author parsing for audio/podcast related media
Parse spotify and anchor.fm media sources
2021-07-06 11:33:00 -04:00
FoxxMD
f591c3a05a Implement more powerful content parsing options
* Can get wiki pages from other subreddits
* Can fetch from an external url
2021-07-06 10:27:30 -04:00
FoxxMD
39fad91c7f Fix missing author criteria 2021-07-05 17:20:35 -04:00
FoxxMD
529b8fc03e Further improvements for subreddit name parsing
* Allow whitespace on either side of regex value to parse since its automatically trimmed by getting capture group
* Implement sub name parsing everywhere subreddits can be specified and update documentation to remove prefix restrictions
2021-07-05 16:06:15 -04:00
FoxxMD
54eef5620d Update interfaces and documentation for new filters and item states 2021-07-05 15:39:08 -04:00
FoxxMD
99537fbebb Fix missing filtering behavior on repeat and add remove check
* Add missing include/exclude behavior for counting repeat submissions
* Add parameter to enable user to specify if removed activities should be included
2021-07-05 15:38:49 -04:00
FoxxMD
4c3f9ee082 Fix remove check on remove action 2021-07-05 15:37:37 -04:00
FoxxMD
5b028b6a45 Fix some item state checks and implement subreddit filtering on window
* Fix how removed check is performed since there are different behaviors for submission/comment
* Add filtered and deleted states for item check
* Add subreddit filters (include/exclude) on window criteria
2021-07-05 15:37:19 -04:00