Commit graph

70 commits

Author SHA1 Message Date
Aine
ea1533acae
add !pm relay - per-mailbox relay config 2024-05-02 11:28:37 +03:00
Aine
0e3655195a
replace email processing reactions; update deps 2024-04-30 09:18:04 +03:00
Aine
10213cc7d7
update deps 2024-02-19 19:52:03 +02:00
Aine
dd0ad4c245
refactor to mautrix 0.17.x; update deps 2024-02-11 20:47:04 +02:00
Aine
0d0dcf20b9
lint fixes 2023-10-03 00:03:29 +03:00
Aine
bebfa6df92
provide proper reply-to fallback by default 2023-09-28 15:17:55 +03:00
Aine
da41bd31fb
add !pm banlist:totals, fix notices on reactions 2023-09-28 08:30:37 +03:00
Aine
7fbb279830
use proper thread IDs on metadata save and error reporting 2023-09-27 15:07:55 +03:00
Aine
816db6f409
always reply to a specific message; moved matrix-related utils to the linkpearl; refactoring 2023-09-27 12:43:55 +03:00
Aine
60b4386dd8
automatically ignore known forwarded addresses, fixes #64 2023-09-18 12:35:37 +03:00
Aine
2bdb8ca635 BREAKING: update mautrix to 0.15.x 2023-06-01 14:32:20 +00:00
Aine
fcd6110790
add trusted proxies 2022-11-27 00:30:50 +02:00
Aine
8d6c4aeafe
big refactoring 2022-11-25 23:33:38 +02:00
Aine
21772d7360
mailbox activation, closes #52 2022-11-21 15:37:44 +02:00
Aine
6ddb894577
allow reserved mailboxes, closes #43 2022-11-20 20:55:41 +02:00
Aine
3ef6d2698e
optimize ban checks 2022-11-18 09:22:18 +02:00
Aine
ec266e9108
wip encrypted parent event 2022-11-15 19:22:15 +02:00
Aine
eb07bc1ac7
mail queue 2022-11-14 20:02:13 +02:00
Aine
307aca7f23
refactor smtp 2022-11-10 13:26:12 +02:00
Aine
15d5afe90f
initial, rought, not-user-friendly support for multi-domain setup 2022-11-08 18:16:38 +02:00
Aine
6f4da59387
feedback, typos, renaming 2022-10-10 09:41:22 +03:00
Aine
ed5765b42a
move seding files and work with account data to the linkpearl level 2022-10-02 13:51:58 +03:00
Aine
fda0d62087
send emails 2022-09-04 22:09:53 +03:00
Aine
104e948b9c
remove migrations 2022-08-31 10:33:13 +03:00
Aine
84b1900dbb
adjust initBotUsers() 2022-08-30 18:29:16 +03:00
Aine
cec2761911
users adjustments 2022-08-30 15:43:06 +03:00
Aine
9f66d1fee6
rename options, rename settings types 2022-08-30 14:45:07 +03:00
Aine
5ed3a53223
diff bot and room settings 2022-08-30 14:37:19 +03:00
Aine
f97ebb604a
manage users in runtime, closes #16 2022-08-29 21:41:14 +03:00
Aine
0ba951fbe6
set default POSTMOOGLE_USERS pattern 2022-08-29 20:56:28 +03:00
Aine
e0bd71717c
remove NOOWNER, closes #14 2022-08-29 20:21:37 +03:00
Aine
505a1b42d7
removed federation, closes #12 2022-08-29 19:58:54 +03:00
Aine
5a5a649cba
add cache 2022-08-29 15:28:37 +03:00
Aine
6623251695
refactored 2022-08-29 12:30:43 +03:00
Slavi Pantaleev
a057654962 Put command access checks on the command level
Checking using `settings.Allowed` is odd. Not all commands are related
to setting configuration settings. Admin commands are coming in the
future, for which this is certainly not the case.

We now do access checks early on (during command processing), so command
handlers can be clean of access checks. If we're inside of a command
handler, the user is privileged to run it.
2022-08-29 10:27:53 +03:00
Slavi Pantaleev
a62dc0df4f Add POSTMOOGLE_ADMINS 2022-08-29 09:10:31 +03:00
Slavi Pantaleev
1d6b43a83a Reindent bot/bot.go 2022-08-28 17:56:19 +03:00
Slavi Pantaleev
dc5ed41723 Merge branch 'main' into 'user-whitelisting'
# Conflicts:
#   bot/bot.go
2022-08-28 14:50:57 +00:00
Aine
13776ad7a6
properly update mailbox, fixes #9 2022-08-28 09:37:18 +03:00
Aine
d1c48b9b31
add per-room mutex, possibly fixes #8 2022-08-27 22:10:22 +03:00
Slavi Pantaleev
8ad2e29930 Add support for configuring user whitelisting
This does not do anything useful just yet.
It will be hooked to access control checks later on.

Wildcards are converted to regular expressions, because it was simpler
to do that than to write (or include) some ugly wildcard matcher library.
It also provides more flexibility, should we wish to use it later.
Regular expressions should also work well performance-wise.

We compile wildcards to regexes early on (during configuration
processing) and fail if we detect a bad pattern. This is meant to
catch various problems (typos or other mistakes) that could happen.

For this to work, configuration building had to be redone, since it can
now return an error. This may be useful in the future for validating
other configuration settings.

Related to https://gitlab.com/etke.cc/postmoogle/-/issues/1
2022-08-27 07:50:41 +03:00
Aine
f2d81495dc
refactor Send(), fixes #6 2022-08-26 23:06:20 +03:00
Aine
4000b39480
add custom status message 2022-08-26 16:40:43 +03:00
Aine
2da1aacc7a
automatically remove mailboxes in empty rooms, fixes #3 2022-08-26 16:22:44 +03:00
Aine
2dcba843cc
add 'nofiles' option, refactored bot.Send(); fixes #2 2022-08-26 16:11:08 +03:00
Aine
42c9e15619
add 'nothreads' option, fixes #4 2022-08-26 16:00:37 +03:00
Aine
41a52c1eca
add 'nohtml' option, fixes #5 2022-08-26 15:56:25 +03:00
Aine
0a5bc5d989
refactor rooms/roomsmu to sync.Map 2022-08-25 22:38:45 +03:00
Aine
b0c274491f
refactor to context, remove sentry spans 2022-08-25 22:31:12 +03:00
Slavi Pantaleev
06856adb86 Simplify code 2022-08-25 21:38:42 +03:00