SIP: Fix incoming re-invite
[lcr.git] / gsm_bs.h
1
2 /* GSM port class */
3 class Pgsm_bs : public Pgsm
4 {
5         public:
6         Pgsm_bs(int type, char *portname, struct port_settings *settings, struct interface *interface);
7         ~Pgsm_bs();
8
9         char p_g_bs_name[32];
10         unsigned char *p_g_dtmf; /* DTMF tone generation (MS only) */
11         int p_g_dtmf_index; /* DTMF tone generation index */
12
13         void select_payload_type(struct gsm_mncc *mncc, unsigned char *payload_types, int *media_types, int *payloads, int max_payloads);
14         void setup_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
15         void call_conf_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *gsm);
16         void start_dtmf_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
17         void stop_dtmf_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
18         void hold_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
19         void retr_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
20         void message_setup(unsigned int epoint_id, int message_id, union parameter *param);
21         int message_epoint(unsigned int epoint_id, int message_id, union parameter *param);
22 };
23
24 int gsm_bs_conf(struct gsm_conf *gsm_conf, char *conf_error);
25 int gsm_bs_exit(int rc);
26 int gsm_bs_init(void);
27 int gsm_bs_new(struct interface *interface);
28 int gsm_bs_delete(const char *name);
29
30 int message_bsc(class Pgsm_bs *pgsm_bs, struct lcr_gsm *lcr_gsm, int msg_type, void *arg);