public void addMessage(InetAddress source, InetAddress destination,
			String body, long timestamp, boolean private_msg) {
		PaneTab selectedTab = null;
		if (destination.equals(this.client.getOwnUser().getIP())) {
			if (getTab(source) != null || AddIncomingTab(source)) {
				selectedTab = getTab(source);
			}
		}
		if (source.equals(this.client.getOwnUser().getIP())
				|| destination.equals(this.client.getMulticastAddress())) {
			selectedTab = getTab(destination);
		}
		if (selectedTab != null) {
			JTextArea chatArea = selectedTab.getTextArea();
			User sourceUser = client.getUser(source);
			String userName = source.getHostName().replace(".local", "");
			if (sourceUser != null) {
				userName = sourceUser.getName();
			}
			String result = "[" + convertTime(timestamp) + "] " + userName
					+ ": " + body + "\n";
			chatArea.append(result);
			chatArea.setCaretPosition(chatArea.getDocument().getLength());
		}
	}