src/protocols/msn/notification.c

branch
soc.2006.msnp13
changeset 13858
fe1fbb9cc42b
parent 13857
c890f17bf06d
child 13859
c3536c40d533
equal deleted inserted replaced
13857:c890f17bf06d 13858:fe1fbb9cc42b
388 cmdproc->last_cmd->payload_cb = msg_cmd_post; 388 cmdproc->last_cmd->payload_cb = msg_cmd_post;
389 cmdproc->servconn->payload_len = atoi(cmd->params[2]); 389 cmdproc->servconn->payload_len = atoi(cmd->params[2]);
390 }else{ 390 }else{
391 g_return_if_fail(cmd->payload_cb != NULL); 391 g_return_if_fail(cmd->payload_cb != NULL);
392 392
393 gaim_debug_info("MaYuan","MSG payload:{%s}\n",cmd->payload);
393 cmd->payload_cb(cmdproc, cmd, cmd->payload, cmd->payload_len); 394 cmd->payload_cb(cmdproc, cmd, cmd->payload, cmd->payload_len);
394 } 395 }
395 } 396 }
396 397
397 /************************************************************************** 398 /**************************************************************************
1357 } 1358 }
1358 1359
1359 static void 1360 static void
1360 initial_mdata_msg(MsnCmdProc *cmdproc, MsnMessage *msg) 1361 initial_mdata_msg(MsnCmdProc *cmdproc, MsnMessage *msg)
1361 { 1362 {
1362 gaim_debug_info("MaYuan","mdata...{%s} \n",msg->body); 1363 MsnSession *session;
1364 xmlnode *mdNode;
1365 char *end;
1366 char **elems, **cur, **tokens;
1367
1368 // gaim_debug_info("MaYuan","mdata...{%s} \n",msg->body);
1369
1370 /*new a oim session*/
1371 session = cmdproc->session;
1372 session->oim = msn_oim_new(session);
1373
1374 /*parse offline message data*/
1375 elems = g_strsplit(msg->body, "\r\n", 0);
1376 for (cur = elems; *cur != NULL; cur++){
1377 const char *key, *value;
1378
1379 // gaim_debug_info("MaYuan","cur:{%s}\n",*cur);
1380 tokens = g_strsplit(*cur, ": ", 2);
1381
1382 key = tokens[0];
1383 value = tokens[1];
1384
1385 /*if not MIME content ,then return*/
1386 if ((key != NULL) && (!strcmp(key, "Mail-Data")) ){
1387 // gaim_debug_info("MaYuan","data:{%s}\n",value);
1388 msn_parse_oim_msg(session->oim,value);
1389 g_strfreev(tokens);
1390 break;
1391 }
1392
1393 g_strfreev(tokens);
1394 }
1395
1396 g_strfreev(elems);
1363 } 1397 }
1364 1398
1365 static void 1399 static void
1366 email_msg(MsnCmdProc *cmdproc, MsnMessage *msg) 1400 email_msg(MsnCmdProc *cmdproc, MsnMessage *msg)
1367 { 1401 {

mercurial