Releases available on Modrinth
Simple plugin for handling direct messaging that features:
- Message and Reply
- Toggle messages on or off
- Block users
- Custom formatting with Placeholder API integration
- Social Spy
- Ability to message users from the console, and them to message back
| Command | Permission | What it do |
|---|---|---|
/msg <player> <message> | message.basic.send | Send a private message to another user |
/msgtoggle | message.basic.toggle | Enables/disables recieving private messages |
/r <message> | message.basic.send | Replies to the last person you were talking to |
/block <user> <reason> | message.basic.block | Prevents this user from private messaging you |
/unblock <user> | message.basic.block | Allows this user to private message you again |
/blocklist | message.basic.block | See the list of users you have blocked |
/socialspy | message.admin.social-spy | Toggles whether the user can see the logged messages of other users |
/spmreload | message.reload | Reloads the plugin configuration and messages |
| Permission | Default | What it do |
|---|---|---|
message.reload | OP | Allows reloading the config/locale |
message.basic.* | true | Gives all basic messaging functionality |
message.basic.send | true | Allows sending messages |
message.basic.receive | true | Allows receiving messages |
message.basic.toggle | true | Allows toggling direct messages on or off |
message.basic.block | true | Allows blocking, unblocking, and listing your blocked users |
message.admin.* | OP | Gives all subsequent admin permissions |
message.admin.override | OP | Allows messaging users who have their messages disabled, have you blocked, or do not have the receive permission |
message.admin.social-spy | OP | Shows a log of direct messages being sent between players |
message.admin.console-spy | OP | Shows a log of any direct messages being sent between the console and players (from this plugin) |
message.bypass.social-spy | OP | Prevents messages you send or messages being sent to you from being shown to others with social spy |
message.bypass.command-spy | OP | Prevents commands you send from being shown to social spy |
You can use placeholderAPI placeholders in the messages in the config by doing: <papi:placeholder>
You will need to remove any % from the placeholder, and put in the text alone, so for the placeholder
%player_displayname% you would use <papi:player_displayname> in the file here.
You will need placeholderAPI installed for those placeholders to work
Note: This only works in the
config.ymlThis will not work for messages in the
locale.yml
Using v2.5.0 or higher, you can use Webhooks as a way to log messages sent via SimplePMs. Previously you may have used DiscordSRV to log SimplePM messages to Discord.
By default the config.yml offers these options:
#### This adds Webhook Support focused for Discord###webhook:
enabled: falseurl: ""# This is the JSON Body to send to the webhook.# The default value is modeled after https://docs.discord.com/developers/resources/webhook#execute-webhook# These are the placeholders that can be used:# <sender>: Sender's Username# <sender_display_name>: Sender's Display Name (Nickname), Non-players will have the same name as <sender># <sender_uuid>: Sender's UUID, formatted as xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, this is blank for non-players.# <recipient>: Recipient's Username# <recipient_display_name>: Recipient's Display Name (Nickname), Non-players will have the same name as <recipient># <recipient_uuid>: Recipient's UUID, formatted as xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, this is blank for non-players.# <message>: The message sent through SimplePMs.# <timestamp>: Unix Timestamp (https://www.unixtimestamp.com/)json-body: | { "content": "{message}\n-# {sender_display_name} ({sender}) sent {recipient_display_name} ({recipient}) this on <t:{timestamp}>", "avatar_url": "https://mc-heads.net/avatar/{sender_uuid}", "username": "{sender} > {recipient}" }- Enabled: Whether or not webhooks are enabled.
- URL: URL of the webhook.
- JSON Body: JSON formatted string intended to be sent as the body in a POST request. Placeholders exist for use as well.
If you are using this for Discord,
- The documentation for the JSON body can be found here: https://docs.discord.com/developers/resources/webhook#create-webhook
- Creating a webhook for Discord can be found here: https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks