Commit Graph

49 Commits

Author SHA1 Message Date
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
Mark Veidemanis da6c45f093 Implement counting keyword events and a unified buffers system for when the master channel is unavailable 2018-03-10 13:54:04 +00:00
Mark Veidemanis eae4315562 Move server functions to a separate file 2018-03-04 13:26:53 +00:00
Mark Veidemanis 8dec0b6828 Implement counting of various IRC events 2018-02-24 12:42:27 +00:00
Mark Veidemanis 378c4d9bba Implement loading new modules at runtime 2018-02-23 23:26:21 +00:00
Mark Veidemanis 5d5b5d4d47 Make connection notifications configurable 2018-02-21 20:31:47 +00:00
Mark Veidemanis f53cb060d0 Add connecting and disconnecting notifications 2018-02-21 20:24:08 +00:00
Mark Veidemanis aacb50d5d2 Update examples and change how variables used when reconnecting are set 2018-02-03 19:31:59 +00:00
Mark Veidemanis 88426be62a Move things into factories and implement reconnecting 2018-02-03 19:03:47 +00:00
Mark Veidemanis c1bbf3c0d0 Make a folder for example configuration files 2018-02-02 19:01:41 +00:00
Mark Veidemanis 89ac1c1ce3 Implement loading/saving all configuration files at once 2018-02-02 18:56:50 +00:00
Mark Veidemanis 5c7669e09c Fix the help for the stats command 2018-02-02 18:04:56 +00:00
Mark Veidemanis 6776cec2d4 Remove old config files 2018-01-17 19:04:58 +00:00
Mark Veidemanis a7599dddfe Separate out into different directories and reshuffle configuration directives 2018-01-17 19:02:41 +00:00