Sueta
CH

ChatWatcher

1.0.1

Keep a log of every player.

·Plugin

ChatWatcher essentially saves all the user input of every player in the server, thus allowing the server operators to find who issued a dangerous command, who used inappropriate language or behavior etc...

It is a fairly easy plugin to handle because it has few commands and few permissions. In fact it has one and only command and two permissions.

Commands:

/chatwatcher combine <filename1> <filename2> [filename3] ...

This command allows you to combine two or more files into one which is sorted by date. Having this command is essential, because it is hard to have multiple files open and trying to read from all of them having in mind all of the different dates and messages.

NOTE: The filename is case sensitive and it is the original file name from 'plugins/ChatWatcher/data/' without the extension. Example: The filename of 'plugins/ChatWatcher/data/sheach.txt' is just 'sheach'.

Permissions:
- ChatWatcher.use
Allows the player to issue the /watcher command.
- ChatWatcher.bypass
Users with this permission will not be logged.

NOTE: OP players will be logged as well, unless they have the bypass permission.
.
Config:

Config
#How old messages the plugin keeps in the files.
#loggingTime is counted in DAYS
#set this to 0 and the plugin will never log.
#set this to a negative and the plugin will log indefinatly (NOT RECOMMENDED)
loggingTime: 10
#Players in this list will not be logged by the plugin.
#Players in this list dont need the ChatWatcher.bypass permission.
#If you dont want anyone to be in this list type the bellow syntax.
#playerExceptions: []
#If you dont want anyone to be logged just set the loggingTime to 0
playerExceptions:
- notch
- myname
- myveryVERYtrustworthyfriendsname
#Commands in this list will not be logged
#If you want all of the commands to be logged just type the following syntax.
#commandExceptions: []
commandExceptions:
- login
- register
#End of config.
  • loggingTime is a field that accepts only integer numbers. Its purpose is to limit the logging time of the plugin. Example if "loggingTime: 10" the plugin will log only the last 10 days from the last chat or command event issued by a user, the rest data will be deleted. Setting this to 0 will stop the plugin from logging (WARNING: it is possible that some log data might be deleted). Setting this to a negative integer will allow the plugin to log indefinitely (NOT RECOMMENDED) .
  • playerExceptions is a list. Adding a name of a player in this list is like giving that same player the permission ChatWatcher.bypass
  • commandExceptions is also a list. Any command in this list will be logged but its contents will be hidden.

Keep in mind that this plugin is still in development, so give suggestions for future updates.

Similar projects

Plugin →