Each client command is composed of a single line of text terminated by a newline character. A carriage return followed by a newline (\r\n) is considered to be the same as a newline character (\n) alone.
Client commands may or may not require additional parameters. Each parameter consists of values, separated by pipe symbol ( | ). Example command_name value1 [ | value2 | value3 .. ].
Pipe symbol ( | ) is not permitted as part of the value.
For each client command, the server will respond with a response code indicating success or failure, and optionally some descriptive text indication actions taken.
Command names are NOT case sensitive.
Parameters/values for any command must appear in exact order following the command. If a value is not applicable or existent for a particular command, an empty value ( | | ) should be provided.