From: <may...@us...> - 2006-09-03 16:27:19
|
Revision: 17139 http://svn.sourceforge.net/gaim/?rev=17139&view=rev Author: mayuan2006 Date: 2006-09-03 09:27:11 -0700 (Sun, 03 Sep 2006) Log Message: ----------- add the last time parse option to prepare for the gradually update procedure committed by MaYuan<may...@gm...> Modified Paths: -------------- branches/soc-2006-msnp13/src/protocols/msn/contact.c Modified: branches/soc-2006-msnp13/src/protocols/msn/contact.c =================================================================== --- branches/soc-2006-msnp13/src/protocols/msn/contact.c 2006-09-03 14:42:38 UTC (rev 17138) +++ branches/soc-2006-msnp13/src/protocols/msn/contact.c 2006-09-03 16:27:11 UTC (rev 17139) @@ -127,7 +127,9 @@ int list_op =0; char * passport; xmlnode * node,*body,*response,*result,*services,*service,*memberships; + xmlnode *LastChangeNode; xmlnode *membershipnode,*members,*member,*passportNode; + char *lastchange; session = contact->session; gaim_debug_misc("xml","parse contact list:{%s}\nsize:%d\n",contact->soapconn->body,contact->soapconn->body_len); @@ -149,6 +151,12 @@ gaim_debug_misc("xml","services{%p},name:%s\n",services,services->name); service =xmlnode_get_child(services,"Service"); gaim_debug_misc("xml","service{%p},name:%s\n",service,service->name); + + /*Last Change Node*/ + LastChangeNode = xmlnode_get_child(service,"LastChange"); + lastchange = xmlnode_get_data(LastChangeNode); + gaim_debug_misc("MSNContact","LastChangeNode %s\n",lastchange); + memberships =xmlnode_get_child(service,"Memberships"); gaim_debug_misc("xml","memberships{%p},name:%s\n",memberships,memberships->name); for(membershipnode = xmlnode_get_child(memberships, "Membership"); membershipnode; @@ -251,7 +259,8 @@ xmlnode * node,*body,*response,*result; xmlnode *groups,*group,*groupname,*groupId,*groupInfo; xmlnode *contacts,*contactNode,*contactId,*contactInfo,*contactType,*passportName,*displayName,*groupIds,*guid; - xmlnode *ab; + xmlnode *abNode,*LastChangeNode; + char *lastchange; char *group_name,*group_id; session = contact->session; @@ -426,7 +435,12 @@ } } - ab =xmlnode_get_child(result,"ab"); + abNode =xmlnode_get_child(result,"ab"); + if(abNode != NULL){ + LastChangeNode = xmlnode_get_child(abNode,"lastChange"); + lastchange = xmlnode_get_data(LastChangeNode); + gaim_debug_info("MsnAB"," lastchange:{%s}\n",lastchange); + } xmlnode_free(node); msn_soap_free_read_buf(contact->soapconn); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <may...@us...> - 2006-09-07 17:32:35
|
Revision: 17182 http://svn.sourceforge.net/gaim/?rev=17182&view=rev Author: mayuan2006 Date: 2006-09-07 10:32:25 -0700 (Thu, 07 Sep 2006) Log Message: ----------- change to fix the process of Phone Member TODO: need to support Phone user later committed by MaYuan<may...@gm...> Modified Paths: -------------- branches/soc-2006-msnp13/src/protocols/msn/contact.c Modified: branches/soc-2006-msnp13/src/protocols/msn/contact.c =================================================================== --- branches/soc-2006-msnp13/src/protocols/msn/contact.c 2006-09-06 16:14:22 UTC (rev 17181) +++ branches/soc-2006-msnp13/src/protocols/msn/contact.c 2006-09-07 17:32:25 UTC (rev 17182) @@ -134,10 +134,9 @@ session = contact->session; gaim_debug_misc("xml","parse contact list:{%s}\nsize:%d\n",contact->soapconn->body,contact->soapconn->body_len); node = xmlnode_from_str(contact->soapconn->body, contact->soapconn->body_len); -// node = xmlnode_from_str(contact->soapconn->body, -1); if(node == NULL){ - gaim_debug_misc("xml","parse from str err!\n"); + gaim_debug_misc("xml","parse contact from str err!\n"); return; } gaim_debug_misc("xml","node{%p},name:%s,child:%s,last:%s\n",node,node->name,node->child->name,node->lastchild->name); @@ -333,6 +332,7 @@ g_free(group_id); /*Process contact List*/ + gaim_debug_info("MSNAB","process contact list...\n"); contacts =xmlnode_get_child(result,"contacts"); for(contactNode = xmlnode_get_child(contacts, "Contact"); contactNode; contactNode = xmlnode_get_next_twin(contactNode)){ @@ -365,6 +365,10 @@ /*TODO: add it to the none-instant Messenger group and recognize as email Membership*/ /*Yahoo User?*/ emailsNode = xmlnode_get_child(contactInfo,"emails"); + if(emailsNode == NULL){ + /*TODO: need to support the Mobile type*/ + continue; + } for(contactEmailNode = xmlnode_get_child(emailsNode,"ContactEmail");contactEmailNode; contactEmailNode = xmlnode_get_next_twin(contactEmailNode) ){ messengerEnabledNode = xmlnode_get_child(contactEmailNode,"isMessengerEnabled"); @@ -408,16 +412,12 @@ msn_user_set_uid(user,uid); msn_user_set_type(user,msn_get_user_type(type)); user->list_op |= MSN_LIST_FL_OP; - gaim_debug_info("MsnAB","prepare to free Name...\n"); g_free(Name); - gaim_debug_info("MsnAB","prepare to free passport...\n"); g_free(passport); - gaim_debug_info("MsnAB","prepare to free uid...\n"); g_free(uid); - gaim_debug_info("MsnAB","prepare to free type...\n"); g_free(type); - gaim_debug_misc("MsnAB","prepare for guid parse...\n"); + gaim_debug_misc("MsnAB","parse guid...\n"); groupIds = xmlnode_get_child(contactInfo,"groupIds"); if(groupIds){ for(guid = xmlnode_get_child(groupIds, "guid");guid; @@ -439,7 +439,7 @@ if(abNode != NULL){ LastChangeNode = xmlnode_get_child(abNode,"lastChange"); lastchange = xmlnode_get_data(LastChangeNode); - gaim_debug_info("MsnAB"," lastchange:{%s}\n",lastchange); + gaim_debug_info("MsnAB"," lastchanged Time:{%s}\n",lastchange); } xmlnode_free(node); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |