1598
|
1 #ifndef __XMPP_H__ |
|
2 #define __XMPP_H__ 1 |
|
3 |
|
4 #include <loudmouth/loudmouth.h> |
|
5 #include "roster.h" |
|
6 |
|
7 enum iqreq_type { |
|
8 iqreq_none, |
|
9 iqreq_version, |
|
10 iqreq_time, |
|
11 iqreq_last, |
|
12 iqreq_vcard |
|
13 }; |
|
14 |
|
15 struct annotation { |
|
16 time_t cdate; |
|
17 time_t mdate; |
|
18 gchar *jid; |
|
19 gchar *text; |
|
20 }; |
|
21 |
|
22 struct bookmark { |
|
23 gchar *roomjid; |
|
24 gchar *name; |
|
25 gchar *nick; |
|
26 guint autojoin; |
|
27 /* enum room_printstatus pstatus; */ |
|
28 /* enum room_autowhois awhois; */ |
|
29 }; |
|
30 |
|
31 extern LmConnection* lconnection; |
|
32 extern LmSSL* lssl; |
|
33 |
|
34 void xmpp_connect(void); |
|
35 void xmpp_disconnect(void); |
|
36 |
|
37 void xmpp_room_join(const char *room, const char *nickname, const char *passwd); |
|
38 int xmpp_room_setattrib(const char *roomid, const char *fjid, |
|
39 const char *nick, struct role_affil ra, |
|
40 const char *reason); |
|
41 void xmpp_room_invite(const char *room, const char *fjid, const char *reason); |
|
42 void xmpp_room_unlock(const char *room); |
|
43 void xmpp_room_destroy(const char *room, const char *venue, const char *reason); |
|
44 |
|
45 void xmpp_addbuddy(const char *bjid, const char *name, const char *group); |
|
46 void xmpp_updatebuddy(const char *bjid, const char *name, const char *group); |
|
47 void xmpp_delbuddy(const char *bjid); |
|
48 |
|
49 void xmpp_send_msg(const char *fjid, const char *text, int type, |
|
50 const char *subject, gboolean otrinject, gint *encrypted, |
1602
|
51 LmMessageSubType type_overwrite, gpointer *xep184); |
1598
|
52 |
|
53 void xmpp_send_s10n(const char *bjid, LmMessageSubType type); |
|
54 |
|
55 enum imstatus xmpp_getstatus(void); |
|
56 const char *xmpp_getstatusmsg(void); |
|
57 void xmpp_setprevstatus(void); |
|
58 |
|
59 void xmpp_setstatus(enum imstatus st, const char *recipient, |
|
60 const char *msg, int do_not_sign); |
|
61 |
|
62 void xmpp_send_chatstate(gpointer buddy, guint chatstate); |
|
63 |
|
64 GSList *xmpp_get_all_storage_bookmarks(void); |
|
65 GSList *xmpp_get_all_storage_rosternotes(void); |
|
66 void xmpp_set_storage_bookmark(const char *roomid, const char *name, |
|
67 const char *nick, const char *passwd, |
|
68 int autojoin, enum room_printstatus pstatus, |
|
69 enum room_autowhois awhois); |
|
70 struct annotation *xmpp_get_storage_rosternotes(const char *barejid, |
|
71 int silent); |
|
72 void xmpp_set_storage_rosternotes(const char *barejid, const char *note); |
|
73 guint xmpp_is_bookmarked(const char *bjid); |
|
74 const char *xmpp_get_bookmark_nick(const char *bjid); |
|
75 |
|
76 void xmpp_request(const char *fjid, enum iqreq_type reqtype); |
|
77 void request_vcard(const char *bjid); |
|
78 void xmpp_request_storage(const gchar *storage); |
1599
|
79 |
1598
|
80 #endif /* __XMPP_H__ */ |
1599
|
81 |
|
82 /* vim: set expandtab cindent cinoptions=>2\:2(0: For Vim users... */ |