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... */
|