content and user administration via a Matrix bot?
From time to time site-operators receive a certain pattern of requests from users:
- remove user from a group (missing in action or refusing to leave)
- remove a group (e.g. a duplicate)
- remove a user (leaving the site)
- transfer an article from personal to a group's sphere
- ...?
Currently these tasks need to be executed via the django admin interface, which requires a separate django account and is comparatively cumbersome to use for some operations.
Thus it could be nice to conduct these actions via an interactive text-based interface, e.g.:
remove_user_from_group USER GROUP
remove_group GROUP
remove_user USER
regroup_contribution CONTRIBUTION_ID WANTED_GROUP
help
These interactions could be embedded into a Matrix room.
Site-operators would be invited to a room. A Matrix-Bot (e.g. grouprise-admin-bot
) would be in the same room. This room is configured in the grouprise settings (e.g. matrix_admin_bot: {admin_rooms: ["!1234567890abcedef:gestadten.org"]}
).
Whenever a site-operator starts a message with grouprise-admin
(or some other prefix, which could be common among matrix bots), the bot would interprete the rest of the line as a command. The result of the command execution would be communicated back into the chat as text messages.
I can imagine the following benefits of this approach:
- Adding new commands to this text-based interface (compared to a web-based interface) should be trivial.
- The above matrix room could be used as the main communication channel for internal discussions between site operators in addition to these administrative requests. This would offer a good history of recent administrative actions (which is not available for actions conducted via the django-admin interface) visible for all operators of the site.
This suggested new feature (matrix_admin_bot
) is not related to the existing matrix_chat
feature.
What do you think?