Mercurial > hg
annotate mcabber/src/jabglue.h @ 990:35e7913affb7
Send events/chatstates notifications (JEP-22/JEP-85)
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Wed, 01 Nov 2006 00:57:56 +0100 |
parents | 6e2bfd1ffded |
children | c8b1a52b2fd6 |
rev | line source |
---|---|
29 | 1 #ifndef __JABGLUE_H__ |
2 #define __JABGLUE_H__ 1 | |
3 | |
159 | 4 #include <glib.h> |
5 | |
572
afc2bd38b15c
Implement affiliations handling, add "/room whois"
Mikael Berthe <mikael@lilotux.net>
parents:
568
diff
changeset
|
6 #include "roster.h" |
29 | 7 #include "../libjabber/jabber.h" |
8 | |
237 | 9 #if HAVE_CONFIG_H |
10 # include <config.h> | |
11 #endif | |
12 | |
13 #if ! HAVE_DECL_STRPTIME | |
14 extern char *strptime (); | |
15 #endif | |
16 | |
29 | 17 extern jconn jc; |
18 | |
46 | 19 extern char imstatus2char[]; |
277
4d7040cff8ee
Remove busy/occupied status, which does not really exist
Mikael Berthe <mikael@lilotux.net>
parents:
272
diff
changeset
|
20 // Status chars: '_', 'o', 'i', 'f', 'd', 'n', 'a' |
46 | 21 |
37 | 22 enum agtype { |
693 | 23 unknown, |
24 groupchat, | |
25 transport, | |
26 search | |
27 }; | |
28 | |
29 enum iqreq_type { | |
30 iqreq_none, | |
31 iqreq_version, | |
32 iqreq_time | |
37 | 33 }; |
34 | |
298
35cda94e570d
Add /connect and /disconnect commands
Mikael Berthe <mikael@lilotux.net>
parents:
294
diff
changeset
|
35 char *compose_jid(const char *username, const char *servername, |
35cda94e570d
Add /connect and /disconnect commands
Mikael Berthe <mikael@lilotux.net>
parents:
294
diff
changeset
|
36 const char *resource); |
403
17aa60c6dc63
Allow a different server name than the jid domain name
Mikael Berthe <mikael@lilotux.net>
parents:
300
diff
changeset
|
37 jconn jb_connect(const char *jid, const char *server, unsigned int port, |
17aa60c6dc63
Allow a different server name than the jid domain name
Mikael Berthe <mikael@lilotux.net>
parents:
300
diff
changeset
|
38 int ssl, const char *pass); |
472
75442262c082
Disable some commands when not connected
Mikael Berthe <mikael@lilotux.net>
parents:
469
diff
changeset
|
39 inline unsigned char jb_getonline(void); |
29 | 40 void jb_disconnect(void); |
952 | 41 void jb_main(void); |
617
d3a8b43bf9e7
Add "/authorization" command
Mikael Berthe <mikael@lilotux.net>
parents:
599
diff
changeset
|
42 void jb_subscr_send_auth(const char *jid); |
d3a8b43bf9e7
Add "/authorization" command
Mikael Berthe <mikael@lilotux.net>
parents:
599
diff
changeset
|
43 void jb_subscr_cancel_auth(const char *jid); |
d3a8b43bf9e7
Add "/authorization" command
Mikael Berthe <mikael@lilotux.net>
parents:
599
diff
changeset
|
44 void jb_subscr_request_auth(const char *jid); |
834
6f913f4fbb2a
Use jb_subscr_ in jb_delbuddy()
Mikael Berthe <mikael@lilotux.net>
parents:
693
diff
changeset
|
45 void jb_subscr_request_cancel(const char *jid); |
244 | 46 void jb_addbuddy(const char *jid, const char *name, const char *group); |
205 | 47 void jb_delbuddy(const char *jid); |
208 | 48 void jb_updatebuddy(const char *jid, const char *name, const char *group); |
952 | 49 inline enum imstatus jb_getstatus(void); |
50 inline const char *jb_getstatusmsg(void); | |
444 | 51 void jb_setstatus(enum imstatus st, const char *recipient, const char *msg); |
475
fa49ac0bb8f3
Add "/room topic", and display topic changes
Mikael Berthe <mikael@lilotux.net>
parents:
472
diff
changeset
|
52 void jb_send_msg(const char *jid, const char *text, int type, |
988
6e2bfd1ffded
Add ids to message stanzas if needed
Mikael Berthe <mikael@lilotux.net>
parents:
952
diff
changeset
|
53 const char *subject, const char *id); |
436 | 54 void jb_send_raw(const char *str); |
990
35e7913affb7
Send events/chatstates notifications (JEP-22/JEP-85)
Mikael Berthe <mikael@lilotux.net>
parents:
988
diff
changeset
|
55 void jb_send_chatstate(gpointer buddy, guint chatstate); |
952 | 56 void jb_keepalive(void); |
57 inline void jb_reset_keepalive(void); | |
112 | 58 void jb_set_keepalive_delay(unsigned int delay); |
900
b41684465283
MUC: join password-protected room
Mikael Berthe <mikael@lilotux.net>
parents:
834
diff
changeset
|
59 void jb_room_join(const char *room, const char *nickname, const char *passwd); |
449 | 60 void jb_room_unlock(const char *room); |
599 | 61 void jb_room_destroy(const char *room, const char *venue, const char *reason); |
486 | 62 void jb_room_invite(const char *room, const char *jid, const char *reason); |
584 | 63 int jb_room_setattrib(const char *roomid, const char *jid, const char *nick, |
64 struct role_affil ra, const char *reason); | |
689
281aab5aef50
Introduce jb_iqs_display_list() helper function for debugging
Mikael Berthe <mikael@lilotux.net>
parents:
617
diff
changeset
|
65 void jb_iqs_display_list(void); |
693 | 66 void jb_request(const char *jid, enum iqreq_type reqtype); |
29 | 67 |
68 #endif /* __JABGLUE_H__ */ | |
576 | 69 |
580 | 70 /* vim: set expandtab cindent cinoptions=>2\:2(0: For Vim users... */ |