about summary refs log tree commit diff
path: root/ExampleBots/ModerationBot/FirstRunTasks.cs
diff options
context:
space:
mode:
Diffstat (limited to 'ExampleBots/ModerationBot/FirstRunTasks.cs')
-rw-r--r--ExampleBots/ModerationBot/FirstRunTasks.cs83
1 files changed, 0 insertions, 83 deletions
diff --git a/ExampleBots/ModerationBot/FirstRunTasks.cs b/ExampleBots/ModerationBot/FirstRunTasks.cs
deleted file mode 100644
index 9dece1d..0000000
--- a/ExampleBots/ModerationBot/FirstRunTasks.cs
+++ /dev/null
@@ -1,83 +0,0 @@
-using LibMatrix;
-using LibMatrix.Homeservers;
-using LibMatrix.Responses;
-using ModerationBot.AccountData;
-
-namespace ModerationBot;
-
-public class FirstRunTasks {
-    public static async Task<BotData> ConstructBotData(AuthenticatedHomeserverGeneric hs, ModerationBotConfiguration configuration, BotData? botdata) {
-        botdata ??= new BotData();
-        var creationContent = CreateRoomRequest.CreatePrivate(hs, name: "Rory&::ModerationBot - Control room", roomAliasName: "moderation-bot-control-room");
-        creationContent.Invite = configuration.Admins;
-        creationContent.CreationContent["type"] = "gay.rory.moderation_bot.control_room";
-
-        if (botdata.ControlRoom is null)
-            try {
-                botdata.ControlRoom = (await hs.CreateRoom(creationContent)).RoomId;
-            }
-            catch (Exception e) {
-                if (e is not MatrixException { ErrorCode: "M_ROOM_IN_USE" }) {
-                    Console.WriteLine(e);
-                    throw;
-                }
-
-                creationContent.RoomAliasName += $"-{Guid.NewGuid()}";
-                botdata.ControlRoom = (await hs.CreateRoom(creationContent)).RoomId;
-            }
-        //set access rules to allow joining via control room
-        // creationContent.InitialState.Add(new StateEvent {
-        //     Type = "m.room.join_rules",
-        //     StateKey = "",
-        //     TypedContent = new RoomJoinRulesEventContent {
-        //         JoinRule = "knock_restricted",
-        //         Allow = new() {
-        //             new RoomJoinRulesEventContent.AllowEntry {
-        //                 Type = "m.room_membership",
-        //                 RoomId = botdata.ControlRoom
-        //             }
-        //         }
-        //     }
-        // });
-
-        creationContent.Name = "Rory&::ModerationBot - Log room";
-        creationContent.RoomAliasName = "moderation-bot-log-room";
-        creationContent.CreationContent["type"] = "gay.rory.moderation_bot.log_room";
-
-        if (botdata.LogRoom is null)
-            try {
-                botdata.LogRoom = (await hs.CreateRoom(creationContent)).RoomId;
-            }
-            catch (Exception e) {
-                if (e is not MatrixException { ErrorCode: "M_ROOM_IN_USE" }) {
-                    Console.WriteLine(e);
-                    throw;
-                }
-
-                creationContent.RoomAliasName += $"-{Guid.NewGuid()}";
-                botdata.LogRoom = (await hs.CreateRoom(creationContent)).RoomId;
-            }
-
-        creationContent.Name = "Rory&::ModerationBot - Policy room";
-        creationContent.RoomAliasName = "moderation-bot-policy-room";
-        creationContent.CreationContent["type"] = "gay.rory.moderation_bot.policy_room";
-
-        if (botdata.DefaultPolicyRoom is null)
-            try {
-                botdata.DefaultPolicyRoom = (await hs.CreateRoom(creationContent)).RoomId;
-            }
-            catch (Exception e) {
-                if (e is not MatrixException { ErrorCode: "M_ROOM_IN_USE" }) {
-                    Console.WriteLine(e);
-                    throw;
-                }
-
-                creationContent.RoomAliasName += $"-{Guid.NewGuid()}";
-                botdata.DefaultPolicyRoom = (await hs.CreateRoom(creationContent)).RoomId;
-            }
-
-        await hs.SetAccountDataAsync("gay.rory.moderation_bot_data", botdata);
-
-        return botdata;
-    }
-}