Dragory
667b552bf5
Fix error when supplying all config values from env variables
...
If there was no config file and all config values were loaded from env
variables, the userConfig object was never assigned a value and would
throw an error when loading env variables.
2019-12-05 21:50:02 +02:00
Dragory
4920425ad0
Mention logChannelId option in log channel errors
2019-12-05 21:49:24 +02:00
Dragory
69352eb756
Remove old logChannelId fallback, add additional verification that the log channel is a text channel
2019-12-05 21:04:45 +02:00
Dragory
d625e527d6
Fix crash in update checker if package.json's repository value is set to a repository without releases
2019-12-05 20:24:39 +02:00
Dragory
7e567a3267
Handle boolean values in config.ini properly
2019-12-03 03:00:26 +02:00
Dragory
20b46811c0
Slight wording changes in README. Use Modmail instead of ModMail consistently.
2019-12-03 02:47:46 +02:00
Dragory
8dd6513ca3
Add support for loading config values from environment variables
2019-12-03 02:40:50 +02:00
Dragory
1007dc0dd1
Add support for loading config values from environment variables. Fix nested/object values in config.ini.
2019-12-03 02:27:55 +02:00
Dragory
518bf93f6f
Fix incompatibility with Node.js 10 versions prior to 10.9.0
2019-12-03 02:06:44 +02:00
Dragory
6635fe1414
Make sure numeric options are numbers. Convert empty strings from config.ini to null. Some loading message tweaks.
2019-12-03 02:00:00 +02:00
Dragory
89e7d6373b
Switch from TOML to INI. New documentation. Add start.bat file for Windows.
2019-12-03 01:51:11 +02:00
Dragory
686c36dda4
Add support for TOML config files. Use TOML config files by default.
2019-12-02 19:01:36 +02:00
Dragory
2ea858daac
Move plugin loading to its own file. Define plugin API more explicitly.
2019-09-18 02:15:22 +03:00
Dragory
0f61966d4e
Add support for adding attachment storage types in plugins
2019-09-18 01:52:16 +03:00
Dragory
5244cce31c
Fix local attachments when temp dir and bot dir are on different drives
2019-09-18 01:34:17 +03:00
Dragory
8f9709b34b
Make syncPermissionsOnMove option true by default
2019-08-13 20:37:00 +03:00
Dragory
5085cf363a
Call plugin functions with an object instead
...
Previously, plugin functions were called with 4 arguments.
These 4 arguments are now part of the passed object instead, making the
plugin system much more scalable in the future.
2019-08-13 20:34:46 +03:00
Dragory
01e63f27b6
Re-apply bot status every hour
2019-08-13 19:59:33 +03:00
Dragory
fcd48d6420
Wait for main and inbox guilds to become available before initializing the bot
2019-08-13 19:58:05 +03:00
Dragory
158db3c070
Fix replies without text that include attachments
2019-06-16 22:37:05 +03:00
Dragory
38c7bd83ff
Switch to knub-command-manager instead of Eris's command client. Update sqlite3 for Node.js 12 support.
2019-06-16 22:27:30 +03:00
Dragory
099e01c25a
Update Node.js version check at startup to require Node.js 10
2019-06-09 21:02:34 +03:00
Dragory
86529ae50c
Don't hardcode repo URL for update check user agent
2019-06-09 20:32:52 +03:00
Dragory
3cf31f37d9
Add pagination to !logs
2019-06-09 20:25:47 +03:00
Dragory
a60515bcc7
Fix !block/unblock time arg without explicit user id
2019-06-09 20:25:21 +03:00
Dragory
1259669c9d
Add support for timed blocks. Add !is_blocked.
2019-06-09 20:04:40 +03:00
Dragory
4bfd247be3
Add support for command aliases
2019-06-09 19:31:16 +03:00
Dragory
7a57e3eb45
Add support for multiple mentionRole values
2019-06-09 19:24:00 +03:00
Dragory
2d5bf76209
Add support for snippet arguments
2019-06-09 19:17:32 +03:00
Dragory
373aef55cf
Add basic support for plugins
2019-06-09 17:53:49 +03:00
Dragory
b9133da4da
Add update notifications
2019-06-09 17:31:17 +03:00
Dragory
eb2f109301
Add rolesInThreadHeader config option
2019-06-09 16:04:17 +03:00
Dragory
18f3da1247
Add guildGreetings config option
2019-06-09 15:56:04 +03:00
Dragory
b5fe1de87b
Ignore errors from unknown message types
2019-06-05 23:11:08 +03:00
Dragory
ae3f3920e3
Ignore account age/time on server requirements when using !newthread
2019-04-15 19:26:14 +03:00
Dragory
22e03d2335
Rename requiredJoinedAt -> requiredTimeOnServer, add support for multiple main guilds for that setting
2019-04-15 19:06:59 +03:00
santiago
f2808c0b04
Add requirement for joinedAt
2019-04-15 10:43:22 -03:00
Dragory
2a20d9fdaa
Escape markdown in user nickname and some other places
2019-03-28 05:03:47 +02:00
Dragory
3d077cb252
Add current voice channel to thread header
2019-03-28 04:57:21 +02:00
Dragory
073f3a87ea
Add categoryAutomation config option and make newThreadCategoryId a shortcut for the newThread sub-option. Add support for per-guild categories via categoryAutomation.
2019-03-28 04:54:12 +02:00
Dragory
ddc3f6425a
Clean-up
2019-03-28 04:29:50 +02:00
Dragory
3cc566e6b0
Re-fetch member info from the API if we can't find a user on a main guild
2019-03-28 04:29:40 +02:00
Dragory
a470b72016
Add attachmentStorage option
2019-03-06 23:31:24 +02:00
Miikka
591d6251ce
Merge pull request #225 from reboxer/master
...
Allow users to be mentioned in botMentionResponse
2019-03-06 21:39:37 +02:00
Dragory
688ab7ceea
Add support for scheduled !suspend
2019-03-06 21:37:36 +02:00
Dragory
bee147c19d
Allow !loglink in suspended threads
2019-03-06 21:36:17 +02:00
Dragory
188f7543ee
Allow silent scheduled closes. Make close time format stricter (no whitespace).
2019-03-06 21:15:09 +02:00
Dragory
cd3da4c4ec
Add syncPermissionsOnMove config option
2019-03-06 20:50:24 +02:00
Dragory
5e1a1e7e15
Add 'silent' option to !close when closeMessage is specified
2019-02-23 23:32:18 +02:00
Dragory
86bc6fd809
Only delete the reply command if the bot was able to send the reply
2019-02-23 22:55:26 +02:00
santiago
508b78fce2
Allow users to be mentioned in botMentionResponse
2019-02-23 11:33:22 -03:00
Dragory
ee51e35f6f
Fix potential error with webhook messages
2019-01-11 18:29:48 +02:00
Dragory
21d2a7453c
Add allowUserClose option. Fixes #69
2018-09-20 23:31:14 +03:00
Dragory
2f1b51d97a
Add support for sending anonymous snippets. Add snippetPrefixAnon option. Fixes #82
2018-09-20 22:54:47 +03:00
Dragory
1ec0a811d9
Support role and user IDs in inboxServerPermission. Allow specifying multiple values for inboxServerPermission.
2018-09-20 22:27:59 +03:00
Dragory
a8822ea002
Merge branch 'config-fix' of https://github.com/Akhawais/modmailbot into Akhawais-config-fix
2018-09-20 22:08:50 +03:00
Dragory
d07384a01e
Add botMentionResponse option. Fixes #143
2018-09-20 22:07:38 +03:00
Dragory
68af488663
Add mentionUserInThreadHeader option. Fixes #152
2018-09-20 22:03:51 +03:00
Dragory
2f04ed8359
Fix pingOnBotMention on same server setups. Fixes #134
2018-09-20 21:57:54 +03:00
Dylan Akhawais
5a760b5e50
Moving the 'getAllUsers' option into the correct parameter object
2018-08-29 02:30:12 +01:00
Dragory
2cecbc3e46
Add support for a .js config file
2018-08-08 01:32:22 +03:00
Dragory
55367665e8
Update mime node-mime to 2.3.1
2018-08-08 01:10:38 +03:00
Dragory
b7673b7544
Add smallAttachmentLimit config option to control the size limit of relaySmallAttachmentsAsAttachments
2018-08-08 00:59:02 +03:00
Dragory
7e7bd03798
Fix crash if the close message failed to send when closing a thread
2018-08-08 00:55:03 +03:00
Dragory
ff977b3eea
Gracefully handle web server errors
2018-08-08 00:54:01 +03:00
Dragory
6b8a409ff4
Don't alert for main server pings if the pinger is a bot
2018-08-01 00:40:12 +03:00
Dragory
c7c0ee4e9a
Change requiredAccountAge to use hours instead of days
2018-07-27 20:35:37 +03:00
Dragory
1aa4abd62e
Rename account age options
2018-07-27 19:48:45 +03:00
Jonas Pardon
9c1a5863f5
Add option for minimum account age for contacting modmail
...
Saw this on the to-do list and decided to give it a shot. Tested and works without issues for me. I advise testing yourself before merging, there's always a chance I missed something since your code is quite extended to work through.
2018-07-10 11:59:29 +02:00
Jonas Pardon
6f327b7456
Added an optional close message
...
You can assign a value to closeMessage to make the bot DM people when their thread gets closed.
2018-07-05 18:34:12 +02:00
Dragory
445659d592
Fix greetings not being sent after 2.9.0
...
Greetings broke when multi-server support was added.
This commit fixes that.
2018-05-14 19:49:15 +03:00
Dragory
54e9fbd597
Chunk long messages so they don't fail to send
2018-05-03 20:33:19 +03:00
Dragory
1d2f3dd4d8
Fix crash when the auto-response cannot be sent. Add pingOnBotMention option for controlling whether the staff get pinged for bot mentions.
2018-05-03 20:26:12 +03:00
Dragory
cd96c70f1c
Switch config parser to JSON5. Accept multiple config file names.
2018-05-03 19:55:21 +03:00
Miikka
685ccdd226
Always show multi-server header when using multiple servers
...
Previously, if the user was on only one server, the server name would not be shown in the thread header.
2018-05-03 19:37:50 +03:00
Miikka
777ea2dd2c
Fix crash when user edits a DM after the thread is closed
2018-05-03 14:22:38 +03:00
Miikka
82a89b6e86
modules.move: slightly prioritize categories that start with the search string
2018-04-25 02:25:49 +03:00
Miikka
d6793d5c12
modules.move: fix !move ignoring the last letter of the category name
2018-04-25 02:21:24 +03:00
Dragory
e5588d7c83
Use minutes as the default unit for timed close
...
Before, doing !close 30 would close the thread in 30 seconds. Now it
will be closed in 30 minutes.
2018-04-21 16:44:03 +03:00
Dragory
a839372cfe
You can now use !close c as an alias for !close cancel
2018-04-21 16:42:35 +03:00
Dragory
5e1b5112a2
Add !alert
...
Using !alert in a modmail thread will ping you the next time the thread
gets a new reply. Use !alert cancel to cancel.
2018-04-21 16:39:38 +03:00
Dragory
3911d92edc
Display source guild in bot mention notifications
...
Only when using multiple main guilds.
2018-04-21 15:54:41 +03:00
Dragory
319f6571bc
Add !id
...
The !id command returns the user ID of the current thread. Useful for
getting the user ID on mobile.
2018-04-21 15:41:03 +03:00
Dragory
e5b29a235e
Add multi-server support and more thread header information
...
Fixes #63 . Multi-server support allows you to set an array of ids in
mainGuildId. If there are more than 1 main guild, the thread header will
display nickname and join date for each main guild the user is in.
Thread header information now also includes how long it's been since the
user joined the guild(s).
The commit also includes some minor code cleanup.
2018-04-21 15:38:21 +03:00
Dragory
1fc32f71d0
Fix #67 : errors from privacy settings are now ignored with greetings
2018-04-21 14:31:58 +03:00
Dragory
4305609f0b
Add !newthread
2018-04-08 02:56:30 +03:00
Dragory
9c322a5af3
Add !version command
2018-03-13 07:59:27 +02:00
Dragory
ab3d70008a
Move more code from main.js to individual module files. Rename plugins -> modules. Remove some obsolete comments.
2018-03-13 07:45:31 +02:00
Dragory
5717bf83fd
Make !close time parser stricter and allow 'd' for days. Format close time better in the confirmation message. Add additional start-up info for missing dependencies.
2018-03-13 07:27:59 +02:00
Dragory
434dab59ee
Fix some inconsistencies between DB drivers, also fixing scheduled closes on MySQL/MariaDB (again)
2018-03-13 06:23:32 +02:00
Dragory
07c0336f72
Also add that fix to the third place where it's needed
2018-03-11 23:20:59 +02:00
Dragory
2251cabe86
Additional fix for scheduling in MySQL/MariaDB
2018-03-11 23:19:45 +02:00
Dragory
119faf1d37
Commands used in threads are now saved again. Refactor some of the code into plugins.
2018-03-11 23:17:14 +02:00
Dragory
38bb553588
Scheduling fix for MySQL/MariaDB version 3000
2018-03-11 22:48:53 +02:00
Dragory
91bb245b59
Don't start scheduled close loop until after connecting to Discord
2018-03-11 22:45:43 +02:00
Dragory
0b677d338e
Actually fix scheduled closing on MySQL/MariaDB
2018-03-11 22:42:40 +02:00
Dragory
40e420a40d
Fix scheduled closing on MySQL/MariaDB
2018-03-11 22:36:52 +02:00
Dragory
b8a5021dd5
Add thread suspending
2018-03-11 22:27:52 +02:00
Dragory
dc44bdc103
Remove duplicate definition of threads.findById
2018-03-11 22:15:29 +02:00
Dragory
32260fd22c
Auto-close threads if their inbox server channel is deleted
2018-03-11 22:15:16 +02:00