2 * @file notification.h Notification server functions
6 * Purple is the legal property of its developers, whose names are too numerous
7 * to list here. Please refer to the COPYRIGHT file distributed with this
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
24 #ifndef _MSN_NOTIFICATION_H_
25 #define _MSN_NOTIFICATION_H_
27 /*MSN protocol challenge info*/
29 /*MSNP15 challenge: WLM 8.5.1288.816*/
30 #define MSNP15_WLM_PRODUCT_KEY "ILTXC!4IXB5FB*PX"
31 #define MSNP15_WLM_PRODUCT_ID "PROD0119GSJUC$18"
34 #define MSNP13_WLM_PRODUCT_KEY "O4BG@C7BWLYQX?5G"
35 #define MSNP13_WLM_PRODUCT_ID "PROD01065C%ZFN6F"
37 #define MSNP10_PRODUCT_KEY "VT6PX?UQTM4WM%YR"
38 #define MSNP10_PRODUCT_ID "PROD0038W!61ZTF9"
40 typedef struct _MsnNotification MsnNotification;
47 struct _MsnNotification
52 * This is a convenience pointer that always points to
56 MsnServConn *servconn;
61 typedef void (*MsnFqyCb)(MsnSession *session, const char *passport, MsnNetwork network, gpointer data);
64 void uum_send_msg(MsnSession *session,MsnMessage *msg);
66 void msn_notification_end(void);
67 void msn_notification_init(void);
69 void msn_notification_add_buddy_to_list(MsnNotification *notification,
70 MsnListId list_id, MsnUser *user);
71 void msn_notification_rem_buddy_from_list(MsnNotification *notification,
72 MsnListId list_id, MsnUser *user);
74 void msn_notification_send_fqy(MsnSession *session,
75 const char *payload, int payload_len,
76 MsnFqyCb cb, gpointer cb_data);
78 MsnNotification *msn_notification_new(MsnSession *session);
79 void msn_notification_destroy(MsnNotification *notification);
80 gboolean msn_notification_connect(MsnNotification *notification,
81 const char *host, int port);
82 void msn_notification_disconnect(MsnNotification *notification);
83 void msn_notification_dump_contact(MsnSession *session);
86 * Closes a notification.
88 * It's first closed, and then disconnected.
90 * @param notification The notification object to close.
92 void msn_notification_close(MsnNotification *notification);
94 void msn_got_login_params(MsnSession *session, const char *ticket, const char *response);
96 #endif /* _MSN_NOTIFICATION_H_ */