public boolean kickClient(int cientID, boolean onlyChannelKick, String kickReason)
	{
		resetLastError();
		
		if (!isConnected())
		{
			saveLastError("kickClient(): Not connected to TS3 server!");
			return false;
		}
		
		HashMap<String, String> hmIn;
		try
		{
			String command = "clientkick clid=" + Integer.toString(cientID) + " reasonid=" + (onlyChannelKick ? "4" : "5");
			
			if (kickReason != null && kickReason.length() > 0)
			{
				command += " reasonmsg=" + encodeTS3String(kickReason);
			}
			
			hmIn = doInternalCommand(command);
			if (!hmIn.get("id").equals("0"))
			{
				saveLastError("kickClient()", hmIn.get("id"), hmIn.get("msg"), hmIn.get("extra_msg"), hmIn.get("failed_permid"));
				return false;
			}
		}
		catch (Exception e)
		{
			if (DEBUG) e.printStackTrace();
			saveLastError("Exception kickClient(): " + e.toString());
			return false;
		}
		
		return true;
	}