# HG changeset patch # User Ma Yuan # Date 1156429303 0 # Node ID 0af038b3b7fe5835d9332ffb0bd04b70b1bf4bf9 # Parent ea23c4c010cf84798dfede1ef0bfb3ee0e632aae [gaim-migrate @ 17014] add Change the PSM string Currently read from Gaim Status Line Thanks for Chris's Code committed by Ma Yuan committer: Ethan Blanton diff -r ea23c4c010cf -r 0af038b3b7fe src/protocols/msn/state.c --- a/src/protocols/msn/state.c Wed Aug 23 17:01:31 2006 +0000 +++ b/src/protocols/msn/state.c Thu Aug 24 14:21:43 2006 +0000 @@ -108,19 +108,32 @@ return psm; } +/* set the MSN's PSM info,Currently Read from the status Line + * Thanks for Cris Code + */ void msn_set_psm(MsnSession *session) { + GaimAccount *account = session->account; + GaimPresence *presence; + GaimStatus *status; MsnCmdProc *cmdproc; MsnTransaction *trans; - char *payload; + char *payload,*statusline; + + g_return_if_fail(session != NULL); + g_return_if_fail(session->notification != NULL); cmdproc = session->notification->cmdproc; /*prepare PSM info*/ if(session->psm){ g_free(session->psm); } - session ->psm = g_strdup(msn_build_psm("Hello",NULL,NULL)); + /*Get the PSM string from Gaim's Status Line*/ + presence = gaim_account_get_presence(account); + status = gaim_presence_get_active_status(presence); + statusline = gaim_status_get_attr_string(status, "message"); + session ->psm = g_strdup(msn_build_psm(statusline,NULL,NULL)); payload = session->psm; gaim_debug_info("MaYuan","UUX{%s}\n",payload); @@ -166,6 +179,7 @@ g_free(msnobj_str); } + msn_set_psm(session); } const char *