Home

fsky / j2i

public
Overview Code History Branches Pull requestsIssuesInsights
main
HomeOverview Code PRsIssues

Implement optional XMPP→IRC ban synchronization

2 weeks ago

3977a65
Authored
Kruno9/8/2026, 6:01:52 PM
This update introduces the ability to sync bans from XMPP MUCs to corresponding IRC channels. When a puppet is banned in a MUC, the bridge will now automatically apply a ban (`+b`) and kick the associated IRC nick. This feature is off by default and can be enabled globally or per connection.

Key changes include:
- New `sync_bans` configuration option for global, XMPP, IRC, and bridge-specific settings.
- Implementation of ban synchronization logic in the bridge and XMPP component.
- Updated documentation and examples to reflect the new functionality.

This enhancement improves the management of user bans across platforms, ensuring consistency in user access control.

Closes #2.

Co-authored-by: Cursor <cursoragent@cursor.com>

Parent65e0405

9 files changed
  • CHANGELOG.md+1−0
  • README.md+3−0
  • config.example.toml+20−0
  • src/j2i/bridge.py+72−0
  • src/j2i/config.py+10−0
  • src/j2i/irc/client.py+22−0
  • src/j2i/xmpp/component.py+92−15
  • tests/test_bansync.py+364−0
tests/test_irc_client.py
+45
−0