changeset 1589:963f761c5511

[gaim-migrate @ 1599] More fun fixes for the whole family. committer: Tailor Script <tailor@pidgin.im>
author Rob Flynn <gaim@robflynn.com>
date Fri, 16 Mar 2001 09:29:03 +0000
parents 2a3cac07e69d
children b4e54a752676
files plugins/msn/msn.c
diffstat 1 files changed, 50 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/msn/msn.c	Fri Mar 16 09:25:03 2001 +0000
+++ b/plugins/msn/msn.c	Fri Mar 16 09:29:03 2001 +0000
@@ -584,6 +584,56 @@
 
 		return;
 	}
+	else if (!strncmp("FLN ", buf, 4))
+	{
+		/* Someone signed off */
+		char **res;
+
+		res = g_strsplit(buf, " ", 0);
+
+		serv_got_update(gc, res[1], 0, 0, 0, 0, 0, 0);
+
+		g_strfreev(res);
+
+		return;
+	}
+	if ( (!strncmp("NLN ", buf, 4)) || (!strncmp("ILN ", buf, 4)))
+	{
+		int status;
+		int query;
+		char **res;
+
+		res = g_strsplit(buf, " ", 0);
+
+		if (strcasecmp(res[0], "NLN") == 0)
+			query = 1;
+		else
+			query = 2;
+
+		if (!strcasecmp(res[query], "NLN"))
+			status = UC_NORMAL;
+		else if (!strcasecmp(res[query], "BSY"))
+			status = UC_NORMAL | (MSN_BUSY << 5);
+		else if (!strcasecmp(res[query], "IDL"))
+			status = UC_NORMAL | (MSN_IDLE << 5);
+		else if (!strcasecmp(res[query], "BRB"))
+			status = UC_NORMAL | (MSN_BRB << 5);
+		else if (!strcasecmp(res[query], "AWY"))
+			status = UC_UNAVAILABLE;
+		else if (!strcasecmp(res[query], "PHN"))
+			status = UC_NORMAL | (MSN_PHONE << 5);
+		else if (!strcasecmp(res[query], "LUN"))
+			status = UC_NORMAL | (MSN_LUNCH << 5);
+		else
+			status = UC_NORMAL;
+
+		serv_got_update(gc, res[query+1], 1, 0, 0, 0, status, 0);
+
+		g_strfreev(res);
+		return;
+	}
+
+	
 	else if (!strncmp("BYE ", buf, 4))
 	{
 		char **res;