Commit Graph

63 Commits

Author SHA1 Message Date
Mark Veidemanis 7489512a82 Add example file for blacklist 2020-11-01 19:55:32 +00:00
Mark Veidemanis 1f178a20ed Implement channel blacklisting 2020-11-01 19:54:24 +00:00
Mark Veidemanis fe52561b71 Implement registration at net-level 2020-11-01 03:37:29 +00:00
Mark Veidemanis fc3a349cb3 Fix registration cancellation bug in regproc 2020-10-31 23:58:03 +00:00
Mark Veidemanis 45f02c323b Improve authentication detection
Add a negative check in the event we are authenticated and registered,
but not confirmed, as this fools other checks.
2020-10-31 16:49:37 +00:00
Mark Veidemanis b67eee42c1 Implement another level of logging for tracing 2020-10-31 00:10:33 +00:00
Mark Veidemanis 9e6dd5e03d Note that arguments to list are optional 2020-10-31 00:06:35 +00:00
Mark Veidemanis 77e8ef4c16 Implement authentication checking on connection 2020-10-28 22:50:12 +00:00
Mark Veidemanis 4c08225a50
Remove condition-based monitoring system 2020-06-07 15:31:43 +01:00
Mark Veidemanis 45070b06e2
Implement authentication detection
* pending command to see which instances have never authenticated
* authcheck command to see which instances are not currently
  authenticated
2020-05-31 21:52:56 +01:00
Mark Veidemanis 12db2f349e
Add help for pending command 2020-05-31 16:40:51 +01:00
Mark Veidemanis 014de9f958
Remove leftover irc.json file 2020-05-30 21:42:26 +01:00
Mark Veidemanis f90f2fdef7
Implement registration and confirmation of nicks 2020-05-30 21:40:10 +01:00
Mark Veidemanis 376d1bd911
Add IRC network definitions 2019-12-28 17:50:38 +00:00
Mark Veidemanis b97ebe43ab Only start one relay with the auto command
We only need one initial relay, as ChanKeep will automatically add as
many as it needs when receiving a LIST response.
2019-10-13 12:37:01 +01:00
Mark Veidemanis 7a6e3338c0 Implement ChanKeep joining functions
* Low-key channel joining with incrementally increasing delay
* Spin up needed instances to be able to cover a certain channel space
* Fix provisioning functions to prevent race conditions with lots of
relays being created at once
* Tweakable switchover from covering all channels to only covering
channels with more users than the mean of the cumulative user count
2019-10-11 13:07:57 +01:00
Mark Veidemanis f9619a5bc4 Remove help entry for del 2019-10-08 21:12:06 +01:00
Mark Veidemanis 78e4d6bd66 Rename 'message' to 'msg' and 'target' to 'channel' 2019-10-05 00:51:00 +01:00
Mark Veidemanis d35f96de87 Error checking on alias removal and clean up when removing relays 2019-10-02 20:45:28 +01:00
Mark Veidemanis a3b81f8849 Implement more automated provisioning of aliases and relays, and remove networks cleanly 2019-10-02 20:26:05 +01:00
Mark Veidemanis 0f31d7f5e2 Implement admall command to run commands as the administrative relay user 2019-10-02 13:46:02 +01:00
Mark Veidemanis 32309ecec2 Change alias definitions to be global, so aliases can be reused across different networks 2019-09-29 22:45:16 +01:00
Mark Veidemanis 15ca45e5df Implement Ctrl-C handling and fix a large number of small bugs 2019-09-28 19:46:10 +01:00
Mark Veidemanis 2d70d5af11 Add error checking in places, set up automatic relay provisioning and fix starting bots 2019-08-25 21:29:11 +01:00
Mark Veidemanis ff74968ff8 Merge branch 'master' into datarestructure 2019-08-19 20:19:42 +01:00
Mark Veidemanis 545282e201 Add deduplication precision toggle, fix printing odd characters and implement sending messages to all instances of a certain network, or all networks associated with a certain alias 2019-08-16 21:27:23 +01:00
Mark Veidemanis f34ddab6fc Improvements to query and self event detection, implement all command and debug flags 2019-08-15 21:20:49 +01:00
Al Beano 63539a4edb Merge branch 'master' into datarestructure 2019-08-11 22:01:29 +01:00
Al Beano e5adcfef4c Rework data structures, storing all front-end network data in Network objects 2019-08-11 21:58:14 +01:00
Mark Veidemanis 2757256d4f Implement a single function for all callbacks from IRC hooks and send a seperate notification if an action takes place that concerns a bot 2019-08-11 21:54:22 +01:00
Al Beano 15bc195648 Add automatic alias generation function 2019-08-10 11:44:31 +01:00
Mark Veidemanis 68c6aa969d Remove keyword system, implement ZNC notifications to relay, remove exact from cast fields and fix security bug in relay 2019-08-05 22:51:16 +01:00
Mark Veidemanis c850984a3b Update gitignore and remove token configuration 2019-03-22 23:05:00 +00:00
Mark Veidemanis fc304d4b25 Implement the relay channel and command for generating tokens 2019-03-18 21:01:28 +00:00
Mark Veidemanis 8926cb76ec Renovate the module system and implement adding and resuming pool instances using the new relay/alias/network system 2019-01-26 18:58:21 +00:00
Mark Veidemanis 4efea3f535 Implement the backend for automatically provisioning relays 2019-01-26 01:57:24 +00:00
Mark Veidemanis 6046329a83 Start implementing relay abstractions for smarter network handling and minor cosmetic changes 2019-01-20 19:56:54 +00:00
Mark Veidemanis e97792c460 Tweak help output for users and chans to indicate multiple arguments are possible 2018-11-02 22:58:20 +00:00
Mark Veidemanis 44aa0f1727 Implement users command to see the mutual users of one or more channels and squash some bugs 2018-10-08 20:08:10 +01:00
Mark Veidemanis eaebab0cf4 Add a help page for the chans command 2018-10-07 20:46:43 +01:00
Mark Veidemanis 1de3f17d45 Change help text for who command 2018-08-31 22:20:42 +01:00
Mark Veidemanis ad00e0c07d Make the Redis socket configurable 2018-08-27 20:52:39 +01:00
Mark Veidemanis 36105c7e9a Move user metadata info into redis 2018-08-27 20:42:49 +01:00
Mark Veidemanis a61f74e578 Implement staggered WHO information collection to avoid detection 2018-07-29 13:04:47 +01:00
Mark Veidemanis 9e3ae677e1 Add config option for WHO loop interval 2018-07-28 22:02:40 +01:00
Mark Veidemanis edea19222d Implement support for modes and get WHO data on a loop 2018-07-28 21:32:31 +01:00
Mark Veidemanis bc87ffddf7 Implement monitoring system for flexible metadata matching 2018-07-27 22:58:37 +01:00
Mark Veidemanis 66e7785f6f Implement query notifications and recognise ZNC's messages 2018-05-07 19:58:19 +01:00
Mark Veidemanis 369ddbe939 Additional checks on keyword matches to prevent errors when no part message is specified 2018-03-14 20:20:53 +00:00
Mark Veidemanis d168d69732 Import the main module properly and fix some oddities in Twisted to prevent it from discarding some data 2018-03-14 20:14:02 +00:00