Add command list and API documentation

This commit is contained in:
Ske 2019-07-03 11:44:57 +02:00
parent f4b0607572
commit ab49ad7217
6 changed files with 112 additions and 7 deletions

View File

@ -323,4 +323,40 @@ This requires you to have the *Manage Server* permission on the server. For exam
pk;log #proxy-log
To disable logging, use the `pk;log` command with no channel name.
To disable logging, use the `pk;log` command with no channel name.
## Importing and exporting data
If you're a user of another proxy bot (eg. Tupperbox), or you want to import a saved system backup, you can use the importing and exporting commands.
### Importing from Tupperbox
If you're a user of the *other proxying bot* Tupperbox, you can import system and member information from there. This is a fairly simple process:
1. Export your data from Tupperbox:
```
tul!export
```
2. Copy the URL for the data file (or download it)
3. Import your data into PluralKit:
```
pk;import https://link/to/the/data/file.json
```
*(alternatively, run `pk;import` by itself and attach the .json file)*
Note that while Tupperbox supports features such as multiple proxies per member, per-member system tags, and member groups, PluralKit does not.
PluralKit will warn you when you're importing a Tupperbox file that makes use of such features, as they will not carry over.
### Importing from PluralKit
If you have an exported file from PluralKit, you can import system, member and switch information from there like so:
1. Export your data from PluralKit:
```
pk;export
```
2. Copy the URL for the data file (or download it)
3. Import your data into PluralKit:
```
pk;import https://link/to/the/data/file.json
```
*(alternatively, run `pk;import` by itself and attach the .json file)*
### Exporting your PluralKit data
To export all the data associated with your system, run the `pk;export` command. This will send you a JSON file containing your system, member, and switch information.

View File

@ -5,9 +5,51 @@ permalink: /commands
---
# How to read this
Words in <angle brackets> are *required parameters*. Words in [square brackets] are *optional parameters*. Words with ellipses... indicate multiple repeating parameters.
# Commands
## System commands
- `pk;system [id]` - Shows information about a system.
- `pk;system new [name]` - Creates a new system registered to your account.
- `pk;system rename [new name]` - Changes the description of your system.
- `pk;system description [description]` - Changes the description of your system.
- `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 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.
- `pk;system [id] frontpercent [timeframe]` - Shows the aggregated front history of a system within a given time frame.
- `pk;system [id] list` - Shows a paginated list of a system's members.
- `pk;system [id] list full` - Shows a paginated list of a system's members, with increased detail.
- `pk;link <account>` - Links this system to a different account.
- `pk;unlink [account]` - Unlinks an account from this system.
## Member commands
## whatever
- `pk;member <name>` - Shows information about a member.
- `pk;member new <name>` - Creates a new system member.
- `pk;member <name> rename <new name>` - Changes the name of a member.
- `pk;member <name> description [description` - Changes the description of a member.
- `pk;member <name> avatar [avatar url]` - Changes the avatar of a member.
- `pk;member <name> proxy [tags]` - Changes the proxy tags of a member.
- `pk;member <name> pronouns [pronouns]` - Changes the pronouns of a member.
- `pk;member <name> color [color]` - Changes the color of a member.
- `pk;member <name> birthdate [birthdate]` - Changes the birthday of a member.
- `pk;member <name> delete` - Deletes a member.
## Switching commands
- `pk;switch [member...]` - Registers a switch with the given members.
- `pk;switch move <time>` - Moves the latest switch backwards in time.
- `pk;switch delete` - Deletes the latest switch.
- `pk;switch out` - Registers a 'switch-out' - a switch with no associated members.
## Utility
- `pk;log <channel>` - Sets the channel to log all proxied messages.
- `pk;message <message id>` - Looks up information about a proxied message by its message ID.
- `pk;invite` - Sends the bot invite link for PluralKit.
- `pk;import` - Imports a data file from PluralKit or Tupperbox.
- `pk;expoort` - Exports a data file containing your system information.
## API
- `pk;token` - DMs you a token for using the PluralKit API.
- `pk;token refresh` - Refreshes your API token and invalidates the old one.
## Help
- `pk;help` - Displays a basic help message describing how to use the bot.
- `pk;help proxy` - Directs you to [this page](/guide#proxying).
- `pk;commands` - Directs you to this page!

View File

@ -2,4 +2,6 @@
layout: default
title: API documentation
permalink: /api
---
---
# TODO

View File

@ -2,4 +2,29 @@
layout: default
title: Privacy Policy
permalink: /privacy
---
---
# Privacy Policy
I'm not a lawyer. I don't want to write a 50 page document no one wants to (or can) read. In short:
This is the data PluralKit collects indefinitely:
* Information *you give the bot* (eg. system/member profiles, switch history, linked accounts, etc)
* Metadata about proxied messages (sender account ID, sender system/member, timestamp)
* Aggregate anonymous usage metrics (eg. gateway events received/second, messages proxied/second, commands executed/second)
* Nightly database backups of the above information
This is the data PluralKit does *not* collect:
* Anything not listed above, including...
* Proxied message *contents* (they are fetched on-demand from the original message object when queried)
* Metadata about deleted messages, members, switches or systems
* Information added *and deleted* between nightly backups
* Information about messages that *aren't* proxied through PluralKit
You can export your system information using the `pk;export` command. This does not include message metadata (as the file would be huge). If there's demand for a command to export that, [let me know on GitHub](https://github.com/xSke/PluralKit/issues).
You can delete your information using `pk;delete`. This will delete all system information and associated members, switches, and messages. This will not delete your information from the database backups. Contact me if you want that wiped, too.
The bot is [open-source](https://github.com/xSke/PluralKit). While I can't *prove* this is the code that's running on the production server...
it is, promise.

View File

@ -6,5 +6,4 @@ remote_theme: pmarsceill/just-the-docs
search_enabled: true
aux_links:
"Add PluralKit to your server":
- "https://discordapp.com/oauth2/authorize?client_id=466378653216014359&scope=bot&permissions=536995904"
color_scheme: "dark"
- "https://discordapp.com/oauth2/authorize?client_id=466378653216014359&scope=bot&permissions=536995904"

View File

@ -0,0 +1 @@
$link-color: $blue-100;