Commit Graph

131 Commits

Author SHA1 Message Date
Dome 69fec3514f Update README.md 2026-04-12 22:15:53 +02:00
Dome ace8c2b27e Update README.md 2026-04-12 22:14:52 +02:00
Dome 3b2471bb4b Update README.md 2026-04-12 21:43:32 +02:00
Dome 78e0de08e5 Update README.md 2026-04-12 21:42:14 +02:00
Dome e9a67d7ff5 Update maubot.yaml 1.0.0 2026-04-12 00:51:58 +02:00
Dome ee3bb9f22e Update README.md 2026-04-12 00:49:16 +02:00
Dome 01ff07d027 Update README.md 2026-04-12 00:47:30 +02:00
Dome 807a151b94 Create community-badge.png 2026-04-12 00:46:54 +02:00
Dome 18f863b535 Update README.md 2026-04-12 00:39:23 +02:00
Dome f477cfb5a5 Update README.md 2026-04-12 00:38:53 +02:00
Dome 84403dc3fb Update README.md 2026-04-12 00:26:20 +02:00
Dome b5bc8075f0 Preparation for First standalone Release as Advanced Community Bot 2026-04-12 00:22:57 +02:00
Dome 1669bbd766 fixed deprocated config parameter comment 2026-04-11 23:56:59 +02:00
Dome edd3eee178 feat: native matrix URI pills for {user}/{room} + major rendering & codebase refactor
This change introduces native `matrix:` URI-based rendering for `{user}` and `{room}` placeholders,
replacing previous plaintext and matrix.to-based links. Users and rooms are now rendered as clickable
pills in supporting clients, with a clean display using display names and room names (no @/# prefixes).

Reporting, moderation, and auto-redaction messages have been updated to use the same rendering logic.
Inspect and event links now also use native `matrix:` URIs for direct in-client navigation.

Internally, URI generation and rendering logic have been unified via central helper functions,
ensuring consistent handling of user IDs, room IDs, aliases, and event IDs.

This commit also includes a broader refactor of the codebase:
- decomposed complex flows (e.g. join handling) into smaller helpers
- moved mutable class-level state to instance-level
- reduced duplicate API calls and redundant logic
- improved overall structure and maintainability

Test coverage has been extended for URI helpers and rendering logic to prevent regressions.

No breaking changes to existing template parameters like `{user_link}` or `{room_link}`.
0.6.0
2026-04-11 20:21:33 +02:00
Dome 933865d80c Update base-config.yaml 2026-04-11 00:55:47 +02:00
Dome b2541c4054 feat: add configurable matrix permalink base, unify user placeholders, and refactor notification rendering
feat: add configurable matrix permalink base, unify user placeholders, and refactor notification rendering
0.5.0
2026-04-10 23:55:17 +02:00
Dome bc490bd084 Merge pull request #1 from ReK42/main
Add `use_community_slug` option to support disabling the slug suffix
2026-04-10 20:58:18 +02:00
Dome 79e073ba2e Update base-config.yaml 0.4.1 2026-04-09 23:58:01 +02:00
Dome a7cb7720d6 Update README.md 2026-04-09 23:17:40 +02:00
Dome 1fcdbe6c7c Update base-config.yaml 2026-04-09 23:10:42 +02:00
Dome 5a72306691 Update maubot.yaml 2026-04-09 23:08:51 +02:00
Dome d6ab470ed0 Update bot.py 2026-04-09 23:08:19 +02:00
Dome a030288e2d Update bot.py 2026-04-09 22:54:19 +02:00
Dome 7fd8d0b76e Update README.md 2026-04-09 20:47:53 +02:00
Dome 369f13bef6 Update README.md 2026-04-09 20:34:22 +02:00
Dome 8bbcf63fcf Update README.md 2026-04-09 20:31:26 +02:00
Dome 898aac2d54 Update maubot.yaml 2026-04-09 20:28:35 +02:00
Dome 5396e7d785 Update base-config.yaml 2026-04-09 20:28:15 +02:00
Dome a741ac4dfe Update bot.py 2026-04-09 20:27:39 +02:00
Dome 20fa8aa401 Update maubot.yaml 2026-04-09 09:49:18 +02:00
Dome de559f9111 feat: add room_id placeholder to join notifications
- Enhanced the join notification logic to support the {room_id} placeholder.
- This allows administrators to include direct matrix.to deep links in notification messages.
- Added a safety fallback that uses the room ID as the name if the room has no display name set.
2026-04-09 09:44:10 +02:00
Dome e33e8f0e02 Update bot.py 2026-04-09 09:23:12 +02:00
Dome ebcc300b3f Update maubot.yaml 2026-04-09 09:10:25 +02:00
Dome 7373b9a856 fix: correct sleep logic in kick_users loop
- Fixed a bug where a string literal "sleep" was passed to the delay function.
- Switched from blocking time.sleep() to non-blocking await asyncio.sleep() to ensure the bot remains responsive during large purge operations.
- The delay now correctly pulls the numerical value from self.config["sleep"].
2026-04-09 09:08:51 +02:00
Dome 5a1ed5aa1a Update bot.py
fix: resolve room aliases in setpower and filter unjoined space rooms

This commit addresses two issues that caused API errors during room iteration and power level syncing:

1. Filter unjoined rooms in `get_space_roomlist`:
Previously, the bot assumed it was a member of all child rooms returned by the parent space state. If the bot was missing from certain child rooms, it threw errors during subsequent operations. The room list is now intersected with `await self.client.get_joined_rooms()` to safely ignore rooms the bot hasn't actually joined yet. Logging has been added to indicate when rooms are skipped.

2. Fix alias resolution (Sigil Bug) in `room_setpower`:
The `room_setpower <target_room>` command failed when users provided a standard room alias (starting with `#`) instead of an internal room ID (`!`), as the Matrix API expects the internal ID for state event operations. Added logic to detect aliases and explicitly resolve them to their respective `room_id` via `self.client.resolve_room_alias()` before attempting to update power levels. Appropriate error handling was also added to notify the user if the alias cannot be resolved.
2026-04-09 09:01:06 +02:00
William Kray 1ec4523fc1 fix room list fetch when attempting to cascade permissions. fixes #20. 2026-04-06 10:27:34 -07:00
William Kray 846249b3f0 bump plugin version 2026-02-24 21:49:12 -08:00
William Kray 774c1e67ed use uncensor_pl and fix some report generation logic thresholds 2026-02-24 21:47:58 -08:00
ReK42 1e653c60e3 Add use_community_slug option to support disabling the slug suffix 2026-02-18 18:34:07 -08:00
William Kray 08aad9b0e1 update some comments around new rewrite 2025-10-01 09:17:48 -07:00
William Kray 8b88d43c35 move verify command to room subcommand 2025-09-09 21:36:49 -07:00
William Kray a92759c100 formatting 2025-09-09 21:21:51 -07:00
William Kray 5f42420619 consolidate commands 2025-09-09 16:51:34 -07:00
William Kray 7b2a60d773 fix reporting 2025-09-09 16:20:43 -07:00
William Kray 87e02b7ea6 more refactoring 2025-09-09 14:49:45 -07:00
William Kray 6582112dfb fix some room permission nonsense 2025-09-09 11:53:50 -07:00
William Kray 63299d33aa vibe coding a lot of this because i dont have a ton of time, replacing a space doesnt work still but i think some v12 things are working so far 2025-08-22 13:22:57 -07:00
William Kray e48f2e3344 make some stuff work 2025-08-18 14:32:29 -07:00
William Kray 3d4578a8d7 fix line breaks in doctor reports 2025-06-29 22:24:07 -07:00
William Kray 81828b9b72 better doctor commands 2025-06-29 22:14:10 -07:00