Mercurial > hg
annotate mcabber/src/events.h @ 1607:14690e624e9d
Add modules
author | Myhailo Danylenko <isbear@ukrpost.net> |
---|---|
date | Sun, 11 Oct 2009 16:01:52 +0200 |
parents | 351427ef0b4b |
children |
rev | line source |
---|---|
745
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
1 #ifndef __EVENTS_H__ |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
2 #define __EVENTS_H__ 1 |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
3 |
1607 | 4 #include "config.h" // MODULES_ENABLE |
745
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
5 |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
6 #define EVS_DEFAULT_TIMEOUT 90 |
747
9875bc774ddf
Event maximum timeout could be higher... Set to 5 days.
Mikael Berthe <mikael@lilotux.net>
parents:
745
diff
changeset
|
7 #define EVS_MAX_TIMEOUT 432000 |
745
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
8 |
952 | 9 #define EVS_CONTEXT_TIMEOUT 0U |
10 #define EVS_CONTEXT_CANCEL 1U | |
11 #define EVS_CONTEXT_USER 2U | |
745
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
12 |
749
6c633adaae10
Use events system for subscription requests
Mikael Berthe <mikael@lilotux.net>
parents:
748
diff
changeset
|
13 typedef enum { |
1128 | 14 EVS_TYPE_SUBSCRIPTION = 1, |
1607 | 15 EVS_TYPE_INVITATION = 2, |
16 #ifdef MODULES_ENABLE | |
17 EVS_TYPE_USER = 3, | |
18 #endif | |
749
6c633adaae10
Use events system for subscription requests
Mikael Berthe <mikael@lilotux.net>
parents:
748
diff
changeset
|
19 } evs_type; |
6c633adaae10
Use events system for subscription requests
Mikael Berthe <mikael@lilotux.net>
parents:
748
diff
changeset
|
20 |
745
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
21 /* Common structure for events (evs) and IQ requests (iqs) */ |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
22 typedef struct { |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
23 char *id; |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
24 time_t ts_create; |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
25 time_t ts_expire; |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
26 guint8 type; |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
27 gpointer data; |
1213
4a7db2870685
Improve Private Storage detection.
Mikael Berthe <mikael@lilotux.net>
parents:
1128
diff
changeset
|
28 int (*callback)(); |
753 | 29 char *desc; |
745
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
30 } eviqs; |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
31 |
1128 | 32 typedef struct { |
33 char* to; | |
34 char* from; | |
35 char* passwd; | |
36 char* reason; | |
37 } event_muc_invitation; | |
38 | |
1598 | 39 eviqs *evs_new(guint8 type, time_t timeout); |
40 int evs_del(const char *evid); | |
41 int evs_callback(const char *evid, guint evcontext); | |
42 gboolean evs_check_timeout(); | |
43 void evs_display_list(void); | |
44 GSList *evs_geteventslist(int forcompl); | |
745
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
45 |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
46 #endif /* __EVENTS_H__ */ |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
47 |
413e95f3051a
Introduce user "events" list
Mikael Berthe <mikael@lilotux.net>
parents:
diff
changeset
|
48 /* vim: set expandtab cindent cinoptions=>2\:2(0: For Vim users... */ |