mirror of
https://github.com/matrix-org/mjolnir.git
synced 2024-10-01 05:36:06 +00:00
Add an option to sync rooms on startup
This commit is contained in:
parent
e69f0e6940
commit
5e081e2246
@ -18,11 +18,11 @@ Phase 2:
|
|||||||
* [x] More useful spam in management room
|
* [x] More useful spam in management room
|
||||||
* [ ] Command to import ACLs, etc from rooms
|
* [ ] Command to import ACLs, etc from rooms
|
||||||
* [ ] Vet rooms on startup option
|
* [ ] Vet rooms on startup option
|
||||||
* [ ] Room upgrade handling (both protected+list rooms)
|
|
||||||
* [ ] Command to actually unban users (instead of leaving them stuck)
|
* [ ] Command to actually unban users (instead of leaving them stuck)
|
||||||
|
|
||||||
Phase 3:
|
Phase 3:
|
||||||
* [ ] Synapse antispam module
|
* [ ] Synapse antispam module
|
||||||
|
* [ ] Room upgrade handling (both protected+list rooms)
|
||||||
* [ ] Support community-defined scopes? (ie: no hardcoded config)
|
* [ ] Support community-defined scopes? (ie: no hardcoded config)
|
||||||
* [ ] Riot hooks (independent of mjolnir?)
|
* [ ] Riot hooks (independent of mjolnir?)
|
||||||
|
|
||||||
|
@ -33,6 +33,10 @@ managementRoom: "#moderators:example.org"
|
|||||||
# Set to false to make the management room a bit quieter.
|
# Set to false to make the management room a bit quieter.
|
||||||
verboseLogging: true
|
verboseLogging: true
|
||||||
|
|
||||||
|
# Set to false to disable synchronizing the ban lists on startup. If true, this
|
||||||
|
# is the same as running !mjolnir sync immediately after startup.
|
||||||
|
syncOnStartup: true
|
||||||
|
|
||||||
# The room ID or alias where the bot's own personal ban list is kept. This is
|
# The room ID or alias where the bot's own personal ban list is kept. This is
|
||||||
# where the commands to manage a ban list end up being routed to. Note that
|
# where the commands to manage a ban list end up being routed to. Note that
|
||||||
# this room is NOT automatically added to the banLists list below - you will
|
# this room is NOT automatically added to the banLists list below - you will
|
||||||
|
@ -20,6 +20,7 @@ import { applyServerAcls } from "./actions/ApplyAcl";
|
|||||||
import { RoomUpdateError } from "./models/RoomUpdateError";
|
import { RoomUpdateError } from "./models/RoomUpdateError";
|
||||||
import { COMMAND_PREFIX, handleCommand } from "./commands/CommandHandler";
|
import { COMMAND_PREFIX, handleCommand } from "./commands/CommandHandler";
|
||||||
import { applyUserBans } from "./actions/ApplyBan";
|
import { applyUserBans } from "./actions/ApplyBan";
|
||||||
|
import config from "./config";
|
||||||
|
|
||||||
export class Mjolnir {
|
export class Mjolnir {
|
||||||
|
|
||||||
@ -64,7 +65,12 @@ export class Mjolnir {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public start() {
|
public start() {
|
||||||
return this.client.start();
|
return this.client.start().then(() => {
|
||||||
|
if (config.syncOnStartup) {
|
||||||
|
this.client.sendNotice(this.managementRoomId, "Syncing lists...");
|
||||||
|
return this.syncLists();
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public async syncLists() {
|
public async syncLists() {
|
||||||
|
@ -28,6 +28,7 @@ interface IConfig {
|
|||||||
autojoin: boolean;
|
autojoin: boolean;
|
||||||
managementRoom: string;
|
managementRoom: string;
|
||||||
verboseLogging: boolean;
|
verboseLogging: boolean;
|
||||||
|
syncOnStartup: boolean;
|
||||||
publishedBanListRoom: string;
|
publishedBanListRoom: string;
|
||||||
protectedRooms: string[]; // matrix.to urls
|
protectedRooms: string[]; // matrix.to urls
|
||||||
banLists: string[]; // matrix.to urls
|
banLists: string[]; // matrix.to urls
|
||||||
|
Loading…
Reference in New Issue
Block a user