all: updated FSF address in GPL text
[sip-router] / modules / pua / event_list.h
1 /*
2  * $Id: event_list.h  2007-05-03 15:05:20Z anca_vamanu $
3  *
4  * pua module - presence user agent module
5  *
6  * Copyright (C) 2007 Voice Sistem S.R.L.
7  *
8  * This file is part of Kamailio, a free SIP server.
9  *
10  * Kamailio 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
14  *
15  * Kamailio 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.
19  *
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  02110-1301  USA
23  *
24  *      initial version  2007-05-03 (anca)
25  */
26
27 #ifndef _PUA_EVLIST_H_
28 #define _PUA_EVLIST_H_
29
30 #include "../../str.h"
31 //#include "send_publish.h"
32
33 struct publ_info;
34
35 typedef int (evs_process_body_t)(struct publ_info* , str** final_body, 
36                  int ver, str** tuple);
37
38 typedef struct pua_event
39 {
40         int ev_flag;                   
41         str name;
42         str content_type;         /* default content type for that event*/      
43         evs_process_body_t* process_body;
44         struct pua_event* next;
45
46 }pua_event_t;
47
48 extern pua_event_t* pua_evlist;
49
50 pua_event_t* init_pua_evlist(void);
51
52 int add_pua_event(int ev_flag, char* name, char* content_type,
53                 evs_process_body_t* process_body);
54
55 typedef int (*add_pua_event_t)(int ev_flag, char* name, char* content_type,
56                 evs_process_body_t* process_body);
57
58 pua_event_t* contains_pua_event(str* name);
59
60 pua_event_t* get_event(int ev_flag);
61
62 void destroy_pua_evlist(void);
63
64 #endif