From d2205ea7e672502da3d61d0c787a7693e4e21017 Mon Sep 17 00:00:00 2001 From: Ske Date: Sun, 22 Dec 2019 14:26:53 +0100 Subject: [PATCH] Update documentation with new features --- PluralKit.Bot/Commands/HelpCommands.cs | 2 +- PluralKit.Core/Utils.cs | 1 + docs/1-user-guide.md | 9 +++++++++ docs/2-command-list.md | 1 + docs/3-api-documentation.md | 3 +++ 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/PluralKit.Bot/Commands/HelpCommands.cs b/PluralKit.Bot/Commands/HelpCommands.cs index 0ee047a2..be5578a4 100644 --- a/PluralKit.Bot/Commands/HelpCommands.cs +++ b/PluralKit.Bot/Commands/HelpCommands.cs @@ -15,7 +15,7 @@ namespace PluralKit.Bot.Commands .AddField("What is this for? What are systems?", "This bot detects messages with certain tags associated with a profile, then replaces that message under a \"pseudo-account\" of that profile using webhooks. This is useful for multiple people sharing one body (aka \"systems\"), people who wish to roleplay as different characters without having several accounts, or anyone else who may want to post messages as a different person from the same account.") .AddField("Why are people's names saying [BOT] next to them?", "These people are not actually bots, this is just a Discord limitation. See [the documentation](https://pluralkit.me/guide#proxying) for an in-depth explanation.") .AddField("How do I get started?", "To get started using PluralKit, try running the following commands (of course replacing the relevant names with your own):\n**1**. `pk;system new` - Create a system (if you haven't already)\n**2**. `pk;member add John` - Add a new member to your system\n**3**. `pk;member John proxy [text]` - Set up [square brackets] as proxy tags\n**4**. You're done! You can now type [a message in brackets] and it'll be proxied appropriately.\n**5**. Optionally, you may set an avatar from the URL of an image with `pk;member John avatar [link to image]`, or from a file by typing `pk;member John avatar` and sending the message with an attached image.\n\nSee [the documentation](https://pluralkit.me/guide#member-management) for more information.") - .AddField("Useful tips", $"React with {Emojis.Error} on a proxied message to delete it (only if you sent it!)\nReact with {Emojis.RedQuestion} on a proxied message to look up information about it (like who sent it)\nType **`pk;invite`** to get a link to invite this bot to your own server!") + .AddField("Useful tips", $"React with {Emojis.Error} on a proxied message to delete it (only if you sent it!)\nReact with {Emojis.RedQuestion} on a proxied message to look up information about it (like who sent it)\nReact with {Emojis.Bell} on a proxied message to \"ping\" the sender\nType **`pk;invite`** to get a link to invite this bot to your own server!") .AddField("More information", "For a full list of commands, see [the command list](https://pluralkit.me/commands).\nFor a more in-depth explanation of message proxying, see [the documentation](https://pluralkit.me/guide#proxying).\nIf you're an existing user of Tupperbox, type `pk;import` and attach a Tupperbox export file (from `tul!export`) to import your data from there.") .AddField("Support server", "We also have a Discord server for support, discussion, suggestions, announcements, etc: https://discord.gg/PczBt78") .WithFooter("By @Ske#6201 | GitHub: https://github.com/xSke/PluralKit/ | Website: https://pluralkit.me/") diff --git a/PluralKit.Core/Utils.cs b/PluralKit.Core/Utils.cs index 3076888b..ad42d7d9 100644 --- a/PluralKit.Core/Utils.cs +++ b/PluralKit.Core/Utils.cs @@ -262,6 +262,7 @@ namespace PluralKit public static readonly string Note = "\U0001f4dd"; public static readonly string ThumbsUp = "\U0001f44d"; public static readonly string RedQuestion = "\u2753"; + public static readonly string Bell = "\U0001F514"; } public static class Formats diff --git a/docs/1-user-guide.md b/docs/1-user-guide.md index 02109466..bf51b472 100644 --- a/docs/1-user-guide.md +++ b/docs/1-user-guide.md @@ -285,6 +285,15 @@ If you want information about a proxied message (eg. for moderation reasons), yo Either you can react to the message itself with the ❔ or ❓ emoji, which will DM you information about the message in question, or you can use the `pk;message` command followed by [the message's ID](https://support.discordapp.com/hc/en-us/articles/206346498-Where-can-I-find-my-User-Server-Message-ID-). +### Pinging a specific user +If you'd like to "ping" the account behind a proxied message without having to query the message and ping them yourself, +you can react to the message with the 🔔 or ❗ emoji, and PluralKit will ping the relevant member and account in the same +channel on your behalf with a link to the message you reacted to. + +### Disabling proxying on a per-server basis +If you need to disable proxying messages for your system entirely in a specific server (for example, if you'd like to +use a different proxy bot there), you can type `pk;system proxy on/off` to do that. + ### Deleting messages Since the messages will be posted by PluralKit's webhook, there's no way to delete the message as you would a normal user message. To delete a PluralKit-proxied message, you can react to it with the ❌ emoji. Note that this only works if the message has diff --git a/docs/2-command-list.md b/docs/2-command-list.md index 8f03ada2..5abc2d19 100644 --- a/docs/2-command-list.md +++ b/docs/2-command-list.md @@ -17,6 +17,7 @@ Words in \ are *required parameters*. Words in [square brackets] - `pk;system avatar [avatar url]` - Changes the avatar of your system. - `pk;system tag [tag]` - Changes the system tag of your system. - `pk;system timezone [location]` - Changes the time zone of your system. +- `pk;system proxy [on|off]` - Toggles message proxying for a specific server. - `pk;system delete` - Deletes your system. - `pk;system [id] fronter` - Shows the current fronter of a system. - `pk;system [id] fronthistory` - Shows the last 10 fronters of a system. diff --git a/docs/3-api-documentation.md b/docs/3-api-documentation.md index 632ff159..25086c76 100644 --- a/docs/3-api-documentation.md +++ b/docs/3-api-documentation.md @@ -67,6 +67,7 @@ The following three models (usually represented in JSON format) represent the va |---|---|---| |timestamp|datetime|| |id|snowflake|The ID of the message sent by the webhook. Encoded as string for precision reasons.| +|original|snowflake|The ID of the (now-deleted) message that triggered the proxy. Encoded as string for precision reasons.| |sender|snowflake|The user ID of the account that triggered the proxy. Encoded as string for precision reasons.| |channel|snowflake|The ID of the channel the message was sent in. Encoded as string for precision reasons.| |system|full System object|The system that proxied the message.| @@ -371,6 +372,7 @@ Queries a system by its linked Discord account ID (17/18-digit numeric snowflake ### GET /msg/\ Looks up a proxied message by its message ID. Returns `404 Not Found` if the message ID is invalid or wasn't found (eg. was deleted or not proxied by PK). +You can also look messages up by their *trigger* message ID (useful for, say, logging bot integration). #### Example request GET https://api.pluralkit.me/v1/msg/601014599386398700 @@ -380,6 +382,7 @@ Looks up a proxied message by its message ID. Returns `404 Not Found` if the mes { "timestamp": "2019-07-17T11:37:26.805Z", "id": "601014599386398700", + "original": "601014598168435600", "sender": "466378653216014359", "channel": "471388251102380000", "system": {