Skip to content

Commit 8cc40ac

Browse files
committed
worked on modmail
1 parent 75e54e5 commit 8cc40ac

File tree

2 files changed

+116
-7
lines changed

2 files changed

+116
-7
lines changed

docs/modmail/basics.md

Lines changed: 108 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,110 @@
11
# Modmail starter guide (Modmail 101)
22

3-
---
4-
<center><h1>Coming soon</h1></center>
5-
<center>We're still working on adding this documentation file - please check back later or raise a PR.</center>
3+
In this document, we've collected everything that is helpful to understand how to use modmail on any server.
4+
5+
:::info
6+
You can also send this document to your support team so they understand how the Modmail-Bot works.
7+
:::
8+
9+
## Creating and processing tickets {#basics}
10+
11+
Users can create tickets by either sending a direct message to the Modmail-Bot or using a button below
12+
an [information message](./configuration/modmail-info). When a user opens a ticket, they
13+
can [select a Ticket Topic](./advanced-features/ticket-topics) if enabled. Once done, a ticket channel will be created
14+
in which staff members can send messages. Messages sent into this channel will be transmitted to the user via a direct
15+
message, where the user can reply. Any messages sent via DM to the bot will automatically show up in the ticket channel.
16+
17+
Staff members can coordinate with each other or make notes that are not sent to users by prefixing their message with
18+
`!`. By default, anyone who has access to the ticket channel will be treated as a staff member, so make sure to
19+
configure the correct permissions for the ticket category.
20+
21+
In big servers, tickets might need to be assigned to specific staff members. For this,
22+
the [Claiming](./advanced-features/ticket-claiming) feature can be used.
23+
24+
Once a ticket has been resolved, the staff members (and the user if [configured](./configuration/ticket-close)) can
25+
close the ticket using the `/close` slash-command.
26+
27+
When a ticket gets closed, a transcript called "Log" will be generated. The transcript will be sent into
28+
a [Log channel](./configuration/bot-configuration) and can also be sent to the user,
29+
if [configured](./configuration/ticket-close).
30+
31+
Sometimes similar information needs to be collected from users to process their requests. For
32+
this [Forms](./advanced-features/forms) can be created that allow users to enter required information using a native
33+
form. To send a form to a user, use the `/form` command.
34+
35+
When closing a ticket, the user will receive a notification that [can be configured](./configuration/bot-configuration).
36+
You can also collect feedback from users using the [Feedback](./advanced-features/support-feedback) feature.
37+
38+
Staff members can monitor support activity and optimize support processes using
39+
the [Analytics](./advanced-features/analytics) feature.
40+
41+
## Snippets {#snippets}
42+
43+
Sometimes, similar or repetitive messages need to be sent to users. To avoid typing out the same message over and over,
44+
snippets can be used. Snippets are text-modules that staff members can create and use in tickets. Each snippet has their
45+
own unique Snippet-Key that can be set when creating a snippet. Optionally, you can also attach
46+
a [form](./advanced-features/forms) to a snippet to avoid typing multiple commands to send a snippet and a form at the
47+
same time. Snippets can also include buttons that allow users to close the ticket directly.
48+
49+
<SlashCommandExplanation />
50+
51+
To use snippets staff members can
52+
53+
* use the `/s snippet:<SnippetKey>` to send a snippet directly into a ticket. This is the easiest way as an
54+
auto-complete menu will help staff members to select the correct snippet.
55+
* write `!!<SnippetKey>` (replace `<SnippetKey>` with the key of the snippet) to directly send the content of a snippet
56+
into a ticket.
57+
* include `{{<SnippetKey}}` (replace `<SnippetKey>` with the key of the snippet) into any message that you send to a
58+
user. The `{{<SnippetKey}}` will be replaced by the snippet content while leaving the rest of the message unchanged.
59+
60+
To manage snippets, the following commands are available to staff members:
61+
62+
* Create a new snippet with `/snippets create key:<SnippetKey> [close-buttons:<Boolean>] [form:<Form>]`. Enter a new,
63+
unused snippet key as the `key` parameter. If you want to give users the option to directly close tickets using
64+
buttons that will be added below the snippet message, enable the `close-buttons` parameter. If you also want to send
65+
a [form](./advanced-features/forms) with the snippet, set the `form` parameter. Once you submit the command, a dialog
66+
will appear in which you can enter your snippet content.
67+
* To edit an existing snippet, use `/snippets edit key:<SnippetKey> [close-buttons:<Boolean>] [form:<Form>]`. Select an
68+
existing snippet as the `key` parameter. If you want to give users the option to directly close tickets using
69+
buttons that will be added below the snippet message, enable the `close-buttons` parameter. If you also want to send
70+
a [form](./advanced-features/forms) with the snippet, set the `form` parameter. Once you submit the command, a dialog
71+
will appear in which you can edit your snippet key and content.
72+
* To delete a snippet, use the `/snippet delete key:<SnippetKey>` slash command. Select an existing snippet as the `key`
73+
parameter and submit the command to delete the snippet. Once submitted, the snippet will be deleted permanently. This
74+
cannot be undone.
75+
* To preview the content of a snippet, use the `/snippet preview key:<SnippetKey>` slash command. Select an existing
76+
snippet as the `key` parameter. Once you submit the command, the content of the snippet and some additional details
77+
will be displayed.
78+
* To list all available snippets, use the `/snippets list [page:<Number>]` slash command. This command will display all
79+
snippets on your server and will also include the usage count of each snippet. If you have a lot of snippets, please
80+
set the `page` parameter to switch between pages.
81+
82+
## Anonymous messages {#anonymous-messages}
83+
84+
Sometimes, staff members are not comfortable sharing their name with staff members. To fit your need, you can always
85+
adjust
86+
your [message configuration](./configuration/advanced-messaging), to hide the identity of staff members. Still, you
87+
might want a setup were staff members appear with their name in most cases, but in certain tickets you want them to send
88+
messages that are credited to their highest role (e.g. send a message that will be displayed to users as "Moderator:
89+
Your message here").
90+
91+
While the identity of staff members won't be displayed to users when using anonymous messages, their identity will still
92+
be visible in the log and the ticket channel.
93+
94+
* [Snippets](#snippets) can be sent as anonymous by either writing `!!!<SnippetKey>` or using the `/as` slash command.
95+
96+
## Blocklisting users {#blacklist}
97+
98+
Sometimes users abuse support services. To avoid these users spamming your Modmail-system, consider using the blocklist
99+
feature. Once the feature [is enabled](./configuration/bot-configuration), staff members can use the following commands
100+
to manage the blocklist:
101+
102+
<SlashCommandExplanation />
103+
104+
* `/blacklist list`: List all users that are on the blocklist.
105+
* `/blacklist add user:<User> reason:<Text> [duration:<Duration>]`: Add a user to the blocklist. By default, blocklist
106+
entries are permanent unless a duration is being configured in the duration parameter (e.g. `2d4h` will result in a
107+
block of 2 days and 4 hours).
108+
* `/blacklist remove user:<User>`: Removes a user from the blocklist.
109+
* `/blacklist status user:<User>`: Check if a user has been blocklisted. The reason and duration of the block will also
110+
be displayed.

docs/modmail/configuration/main.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@ sidebar_position: 1
66

77
Configure the basic look and behavior of your modmail.
88

9-
---
10-
11-
<center><h1>Coming soon</h1></center>
12-
<center>We're still working on adding this documentation file - please check back later or raise a PR.</center>
9+
| Configuration option | Description |
10+
|--------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
11+
| Category for new ticket | New Modmail tickets will be created in this category, unless a ticket is being opened in a [Ticket Topics](./../advanced-features/ticket-topics) that has an overwriting configured. New tickets will automatically sync permissions to this category - this means that everyone who has access to the category will see new tickets. |
12+
| Log-Channel | The Modmail will send ticket-logs and -transcript and important messages into this channel. |
13+
| Ticket Welcome Message | This message will be sent to users when they open a new ticket, unless a ticket is being opened in a [Ticket Topics](./../advanced-features/ticket-topics) that has an overwriting configured. |
14+
| Ticket Close Message | This message will be sent to users when their ticket has been closed. If you have configured [Support Feedback](./../advanced-features/support-feedback), the feedback message will be sent in addition to this message. |
15+
| New Thread Ping | Configure who will be pinged when a new ticket gets created. You can choose Discord's @everyone or @here pings which will ping everyone who has access to the ticket channels. Alternatively, you can set custom roles that get pinged or disable pings all together. |
16+
| Allow staff members to edit each others messages | If enabled, staff members will be able to edit messages from other staff members using the `/edit`or `/delete` slash commands. |

0 commit comments

Comments
 (0)