Mark Veidemanis
e77c046965
Fix list parsing
2022-08-15 00:26:11 +01:00
Mark Veidemanis
7a8cee1431
Fix debugging code in keepChannels
2022-08-15 00:08:11 +01:00
Mark Veidemanis
e6527b4f9f
Add debugging code in keepChannels
2022-08-15 00:07:29 +01:00
Mark Veidemanis
8979a03bbd
Subtract one from length of list for indices
2022-08-15 00:04:49 +01:00
Mark Veidemanis
f7b84913f2
Lower max_chans to length of LIST if it's shorter
2022-08-15 00:03:12 +01:00
Mark Veidemanis
5123941c79
More debugging for reg tests and getstr command
2022-08-14 11:41:29 +01:00
Mark Veidemanis
6cc07c9171
Add allRelaysActive output to network info
2022-08-14 10:58:28 +01:00
Mark Veidemanis
ed1f3cdca7
Add debug statements and only check if network is connected when parting channels
2022-08-14 09:25:54 +01:00
Mark Veidemanis
15523bed96
Add more information to relay API return
2022-08-13 23:36:39 +01:00
Mark Veidemanis
653d9ea4f9
Add even more debugging
2022-08-13 23:18:56 +01:00
Mark Veidemanis
f1229a76e1
Extra debugging for getting active relays
2022-08-13 23:17:26 +01:00
Mark Veidemanis
7415ca5556
Use ChanKeep system for joining channels with joinSingle
2022-08-13 21:54:14 +01:00
Mark Veidemanis
9780a2dfc8
Fully make use of ECA for multiple channels
2022-08-13 21:40:53 +01:00
Mark Veidemanis
43c5625b3b
Implement configurable chanlimit and add more fields about LIST output to Redis
2022-08-13 20:37:21 +01:00
Mark Veidemanis
dd67e9cc8b
Implement ChanKeep without requiring persistent chanlimits on all networks
2022-08-13 19:20:29 +01:00
Mark Veidemanis
c145e5cf18
Add some debug statements and statistics for chanlimits
2022-08-13 18:40:13 +01:00
Mark Veidemanis
5db0373731
Print message if relay is unauthenticated/disconnected
2022-08-13 14:06:34 +01:00
Mark Veidemanis
4d543f31ec
Add connected status to IRC info return and check when getting active relays
2022-08-13 13:40:33 +01:00
Mark Veidemanis
6c92e8e7d9
Reformat code
2022-08-13 13:32:22 +01:00
Mark Veidemanis
836e621063
Implement getting LIST information from API
2022-08-13 13:27:20 +01:00
Mark Veidemanis
ddc9af0ddf
Add docstrings to chankeep
2022-08-12 23:53:02 +01:00
Mark Veidemanis
edfb3f15eb
Implement migrating networks
2022-08-12 23:32:00 +01:00
Mark Veidemanis
14967f662c
Subtract allocated channel slots from total
2022-08-12 22:31:12 +01:00
Mark Veidemanis
0b370fc155
Improve channel allocation and write basic tests for it
2022-08-12 22:27:49 +01:00
Mark Veidemanis
719f014265
Implement best effort allocation
2022-08-11 21:44:19 +01:00
Mark Veidemanis
1ef600a9df
Simplify variable names and reformat
2022-08-11 20:51:41 +01:00
Mark Veidemanis
b72a0672a5
Use ceil instead of round for relay number rounding
2022-08-11 20:46:44 +01:00
Mark Veidemanis
bb3b96e7f7
Expand ECA secondary allocation algorithm
2022-08-11 20:43:34 +01:00
Mark Veidemanis
c4db8ec99d
Adding more debug statements in ECA system
2022-08-11 20:36:24 +01:00
Mark Veidemanis
73b0518a8f
Print information about received LIST
2022-08-11 20:32:49 +01:00
Mark Veidemanis
ea81fc80e3
Don't add 1 to current relays when iterating
2022-08-11 20:13:30 +01:00
Mark Veidemanis
8cd22888b7
Add extra debug call for allRelaysActive
2022-08-11 20:12:38 +01:00
Mark Veidemanis
c983a8e3b6
Allow gaps in relay numbering
2022-08-11 19:22:09 +01:00
Mark Veidemanis
9b03485b69
More error handling when joining channels with ChanKeep
2022-08-02 09:01:24 +01:00
Mark Veidemanis
75f79cf072
Fix joining channels with inactive relays
2022-07-29 17:28:09 +01:00
Mark Veidemanis
15583bdaab
Implement relay, channel and alias management
2022-07-27 22:03:42 +01:00
Mark Veidemanis
80c016761f
Reformat again
2022-07-21 13:40:09 +01:00
Mark Veidemanis
2fecd98978
Reformat project
2022-07-21 13:40:05 +01:00
Mark Veidemanis
27cafa1def
Revert "Reformat project"
...
This reverts commit 64e3e1160aa76d191740342ab3edc68807f890fb.
2022-07-21 13:40:01 +01:00
Mark Veidemanis
da678617d8
Reformat project
2022-07-21 13:39:59 +01:00
Mark Veidemanis
7c855e09c0
Reformat code with pre-commit
2022-07-21 13:39:41 +01:00
Mark Veidemanis
08b5dc06f0
Implement relay-independent join
2020-11-02 20:14:02 +00:00
Mark Veidemanis
fe86d30155
Fix various bugs and off by one with provisioning
2020-10-31 23:55:11 +00:00
Mark Veidemanis
1fec14d759
Clarify error message to be more helpful
2020-10-31 00:11:28 +00:00
Mark Veidemanis
95ee63e399
Fix circular import in ChanKeep/provisioning modules
2020-10-28 18:38:27 +00:00
Mark Veidemanis
f50a40d207
Fixes to auth detection and message parsing
...
* don't check authentication if the network doesn't need to
register
* don't pass through muser for ZNC type messages
* avoid duplicate message for queries containing highlights
* make a copy of the cast for metadata analysis to avoid poisoning it
* set up callback for when the instance is authenticated, so we can
request a LIST immediately if so desired
* separate out seeding functions to populate CHANLIMIT to ease future
work involving other options, such as PREFIX
2020-06-07 17:26:53 +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
91885170f1
Check registration status before joining channels
...
Do not join channels if any relay for a network is unregistered.
2020-05-31 13:09:58 +01:00
Mark Veidemanis
a20fcdb8fc
Remove some debugging code from ChanKeep
2019-10-31 15:54:07 +00:00
Mark Veidemanis
7ffb6125aa
Fix various bugs uncovered by the LIST system
...
* Work around Twisted's broken handling of spaces
* Work around Twisted's broken line decoding
* Don't run signedOn twice for relays
* Improved detection of whether the endpoint is connected to ZNC
* Delay a LIST until all configured relays are online
* Discard a LIST if there are no callbacks for it
* Get rid of some double-negative ternary blocks
2019-10-31 15:44:59 +00:00