about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2025-03-19 12:11:41 +0100
committerRory& <root@rory.gay>2025-03-19 12:11:41 +0100
commited4bfc6958b951fde4ec48182ffc759f297f2a62 (patch)
tree543726b5e4e71e5bb41026306849a44448237975
parentRejecting invites from already banned users works now (diff)
downloadMatrixAntiDmSpam-ed4bfc6958b951fde4ec48182ffc759f297f2a62.tar.xz
Small cleanup, add start of readme
m---------LibMatrix0
-rw-r--r--MatrixAntiDmSpam/MatrixAntiDmSpam.csproj9
-rw-r--r--MatrixAntiDmSpam/MatrixAntiDmSpam.icobin0 -> 29017 bytes
-rw-r--r--MatrixAntiDmSpam/MatrixAntiDmSpam.pngbin0 -> 37050 bytes
-rw-r--r--MatrixAntiDmSpam/PolicyListFetcher.cs2
-rw-r--r--MatrixAntiDmSpam/PolicyStore.cs1
-rwxr-xr-xMatrixAntiDmSpam/build.sh11
-rw-r--r--README.MD20
8 files changed, 40 insertions, 3 deletions
diff --git a/LibMatrix b/LibMatrix
-Subproject c076141883ae7e02fcef33b8aed2bcbc0a53c16
+Subproject 14931ea211415ce504152945d75eecb1354f564
diff --git a/MatrixAntiDmSpam/MatrixAntiDmSpam.csproj b/MatrixAntiDmSpam/MatrixAntiDmSpam.csproj

index 5a322ce..4d3c459 100644 --- a/MatrixAntiDmSpam/MatrixAntiDmSpam.csproj +++ b/MatrixAntiDmSpam/MatrixAntiDmSpam.csproj
@@ -4,7 +4,14 @@ <TargetFramework>net9.0</TargetFramework> <Nullable>enable</Nullable> <ImplicitUsings>enable</ImplicitUsings> - <UserSecretsId>dotnet-MatrixInviteLogger-87d8c346-8c07-42f9-8bfb-f2a714bbd663</UserSecretsId> + </PropertyGroup> + + <PropertyGroup Condition="'$(Configuration)' == 'Release'"> + <Optimize>true</Optimize> + <RunAOTCompilation>true</RunAOTCompilation> + <PublishTrimmed>true</PublishTrimmed> + <PublishSingleFile>true</PublishSingleFile> + <ApplicationIcon>MatrixAntiDmSpam.ico</ApplicationIcon> </PropertyGroup> <ItemGroup> diff --git a/MatrixAntiDmSpam/MatrixAntiDmSpam.ico b/MatrixAntiDmSpam/MatrixAntiDmSpam.ico new file mode 100644
index 0000000..b2df81c --- /dev/null +++ b/MatrixAntiDmSpam/MatrixAntiDmSpam.ico
Binary files differdiff --git a/MatrixAntiDmSpam/MatrixAntiDmSpam.png b/MatrixAntiDmSpam/MatrixAntiDmSpam.png new file mode 100644
index 0000000..7d32797 --- /dev/null +++ b/MatrixAntiDmSpam/MatrixAntiDmSpam.png
Binary files differdiff --git a/MatrixAntiDmSpam/PolicyListFetcher.cs b/MatrixAntiDmSpam/PolicyListFetcher.cs
index 9a521b2..c98be08 100644 --- a/MatrixAntiDmSpam/PolicyListFetcher.cs +++ b/MatrixAntiDmSpam/PolicyListFetcher.cs
@@ -37,7 +37,7 @@ public class PolicyListFetcher(ILogger<PolicyListFetcher> logger, AntiDmSpamConf private async Task<int> LoadPolicyList(PolicyRoom room) { var policies = room.GetPoliciesAsync().ToBlockingEnumerable().ToList(); - policyStore.AddPolicies(policies); + await policyStore.AddPolicies(policies); return policies.Count(); } } \ No newline at end of file diff --git a/MatrixAntiDmSpam/PolicyStore.cs b/MatrixAntiDmSpam/PolicyStore.cs
index 22f9225..f2ddd36 100644 --- a/MatrixAntiDmSpam/PolicyStore.cs +++ b/MatrixAntiDmSpam/PolicyStore.cs
@@ -14,7 +14,6 @@ public class PolicyStore { public async Task AddPolicy(StateEventResponse evt) { var eventKey = $"{evt.RoomId}:{evt.Type}:{evt.StateKey}"; - // UserPolicies.ToList().ForEach(x => Console.WriteLine(x.Key)); switch (evt.TypedContent) { case UserPolicyRuleEventContent userPolicy: UserPolicies[eventKey] = userPolicy; diff --git a/MatrixAntiDmSpam/build.sh b/MatrixAntiDmSpam/build.sh new file mode 100755
index 0000000..a325f72 --- /dev/null +++ b/MatrixAntiDmSpam/build.sh
@@ -0,0 +1,11 @@ +#!/bin/sh +for arch in {x64,arm64} +do + for platform in {osx,win,linux} + do + set -x + dotnet publish -c Release -r ${platform}-${arch} --nologo --property AssemblyName="$(basename $PWD)-${platform}-${arch}" -o bin/release + set +x + done +done +wait diff --git a/README.MD b/README.MD new file mode 100644
index 0000000..8a6aaa5 --- /dev/null +++ b/README.MD
@@ -0,0 +1,20 @@ +# <img src="https://cgit.rory.gay/matrix/tools/MatrixAntiDmSpam.git/plain/MatrixAntiDmSpam/MatrixAntiDmSpam/MatrixAntiDmSpam.png"/> MatrixAntiDmSpam +--- + +A project to make invite spam more manageable at scale. + +## Dependencies +- `dotnet-sdk 9.0.200+` +- A device that is online a lot of the time, can be a server + +## Setup +```shell +# Check out the repository + submodules +git clone --recursive https://cgit.rory.gay/matrix/tools/MatrixAntiDmSpam.git + +# Enter project directory +cd MatrixAntiDmSpam/MatrixAntiDmSpam + +# Build the project +dotnet publish -c Release +``` \ No newline at end of file