From 3cb0e8dc5fa436b50f83b978a0bb1e189f90a1f3 Mon Sep 17 00:00:00 2001 From: neelkamath Date: Fri, 11 May 2018 21:30:27 +0530 Subject: Document --- DOCUMENTATION.md | 36 ++++++++++++++++++++++++++++++++++++ README.md | 8 ++++++++ server/README.md | 1 - 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 DOCUMENTATION.md delete mode 100644 server/README.md diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md new file mode 100644 index 0000000..0810db7 --- /dev/null +++ b/DOCUMENTATION.md @@ -0,0 +1,36 @@ +You can programmatically access hack.chat using the following commands. + +hack.chat has three permission levels. When you access a command, hack.chat automatically knows your permission level from your trip code. The lowest permission level is `core`. `mod` is above `core`, so it can access `core` commands in addition to `mod` commands. `admin` is similarly above `mod`. + +# `core` + +|Command|Parameters|Explanation| +|-------|----------|-----------| +|`changenick`|`nick`|This will change your current connections nickname| +|`chat`|`text`|Broadcasts passed `text` field to the calling users channel| +|`disconnect`||Event handler or force disconnect (if your into that kind of thing)| +|`help`|`type` or `category`, `command`|Outputs information about the servers current protocol| +|`invite`|`nick`|Generates a unique (more or less) room name and passes it to two clients| +|`join`|`channel`, `nick`|Place calling socket into target channel with target nick & broadcast event to channel| +|`morestats`||Sends back current server stats to the calling client| +|`move`|`channel`|This will change the current channel to the new one provided| +|`showcases`|`echo`|Simple command module template & info| +|`stats`||Sends back legacy server stats to the calling client| + +# `mod` + +|Command|Parameters|Explanation| +|-------|----------|-----------| +|`ban`|`nick`|Disconnects the target nickname in the same channel as calling socket & adds to ratelimiter| +|`kick`|`nick`|Silently forces target client(s) into another channel. `nick` may be string or array of strings| +|`unban`|`ip` or `hash`|Removes target ip from the ratelimiter| + +# `admin` + +|Command|Parameters|Explanation| +|-------|----------|-----------| +|`addmod`|`nick`|Adds target trip to the config as a mod and upgrades the socket type| +|`listusers`||Outputs all current channels and sockets in those channels| +|`reload`||(Re)loads any new commands into memory, outputs errors if any| +|`saveconfig`||Saves current config| +|`shout`|`text`|Displays passed text to every client connected| \ No newline at end of file diff --git a/README.md b/README.md index 54cebf5..996ca63 100644 --- a/README.md +++ b/README.md @@ -76,6 +76,14 @@ You can now run start the server software with a process manager like [PM2](http A list of changes since the legacy client can be viewed in the [changelog](CHANGELOG.md). +# Documentation + +The [documentation](DOCUMENTATION.md) can be useful for making bots etc. + +# Contributing + +If you are changing the commands, make sure it is backwards compatible with the legacy client and you update the [documentation doc](DOCUMENTATION.md) accordingly. + ## Authors * **Marzavec** - *Initial work* - [marzavec](https://github.com/marzavec) diff --git a/server/README.md b/server/README.md deleted file mode 100644 index 292daab..0000000 --- a/server/README.md +++ /dev/null @@ -1 +0,0 @@ -(TODO) -- cgit v1.2.1