SIP: Add DTMF support (receive INFO only)
[lcr.git] / fxs.h
1 /*****************************************************************************\
2 **                                                                           **
3 ** PBX4Linux                                                                 **
4 **                                                                           **
5 **---------------------------------------------------------------------------**
6 ** Copyright: Andreas Eversberg                                              **
7 **                                                                           **
8 ** fxs-port header file                                                      **
9 **                                                                           **
10 \*****************************************************************************/ 
11
12 /* FXS port classes */
13 class Pfxs : public PmISDN
14 {
15         public:
16         Pfxs(int type, struct mISDNport *mISDNport, char *portname, struct port_settings *settings, struct interface *interface, int mode);
17         ~Pfxs();
18
19         struct lcr_work p_m_fxs_delete;
20         struct lcr_timer p_m_fxs_dtmf_timer;
21         int p_m_fxs_allow_dtmf;
22         int p_m_fxs_age;
23         int p_m_fxs_knocking;
24
25         int ph_control_pots(unsigned int cont, unsigned char *data, int len);
26         int hunt_bchannel(void);
27
28         void pickup_ind(unsigned int cont);
29         void hangup_ind(unsigned int cont);
30         void answer_ind(unsigned int cont);
31         void hold_ind(unsigned int cont);
32         void retrieve_ind(unsigned int cont);
33         void keypulse_ind(unsigned int cont);
34         void flash_ind(unsigned int cont);
35         void reject_ind(unsigned int cont);
36
37         void message_setup(unsigned int epoint_id, int message_id, union parameter *param);
38         void message_information(unsigned int epoint_id, int message_id, union parameter *param);
39         void message_release(unsigned int epoint_id, int message_id, union parameter *param);
40         void message_proceeding(unsigned int epoint_id, int message_id, union parameter *param);
41         void message_alerting(unsigned int epoint_id, int message_id, union parameter *param);
42         void message_connect(unsigned int epoint_id, int message_id, union parameter *param);
43         void message_disconnect(unsigned int epoint_id, int message_id, union parameter *param);
44         int message_epoint(unsigned int epoint_id, int message, union parameter *param);
45 };
46
47 int stack2manager_fxs(struct mISDNport *mISDNport, unsigned int cont);
48