X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=interface.h;h=1f9b4b0815f38a7a11bab03b7b283f94ebccf0fc;hp=ea9cbadfeea3a48b61fefbf7ae9bc731d401ed77;hb=4b85a2abcd708ad8d0e02dca9913db7bd6ab4fed;hpb=5463e1b62a39ce417b610584e3d34a8bc30ac15e diff --git a/interface.h b/interface.h index ea9cbad..1f9b4b0 100644 --- a/interface.h +++ b/interface.h @@ -52,10 +52,9 @@ struct interface_port { int l1hold; /* hold layer 1 (1=on, 0=off) */ int l2hold; /* hold layer 2 (1=force, -1=disable, 0=default) */ unsigned int ss5; /* set, if SS5 signalling enabled, also holds feature bits */ - int remote; /* interface is a remote app interface */ - char remote_app[32]; /* name of remote application */ int channel_force; /* forces channel by protocol */ int nodtmf; /* disables DTMF */ + int dtmf_threshold; /* DTMF level threshold */ struct select_channel *out_channel; /* list of channels to select */ struct select_channel *in_channel; /* the same for incoming channels */ int block; /* set if interface is blocked */ @@ -69,6 +68,9 @@ struct interface_port { int dialmax; /* maximum number of digits to dial */ char tones_dir[128]; int nonotify; /* blocks outgoing notify messages */ + int pots_flash; /* allow flash button / keypulse to hold active call */ + int pots_ring; /* after hangup let calls on hold ring the phone */ + int pots_transfer; /* after hangup, two calls are transfered */ }; struct interface_msn { @@ -89,6 +91,8 @@ struct interface_screen { struct interface { struct interface *next; char name[64]; /* name of interface */ + int app; /* application to use for interface (0 = PBX) */ + char bridge_if[64]; /* name of destination interface for bridge application */ int external; /* interface used for external calls */ int extension; /* calls are handled as extension */ int is_tones; /* generate tones */ @@ -104,8 +108,15 @@ struct interface { char pipeline[256]; /* filter pipeline */ unsigned char bf_key[56]; /* filter blowfish */ int bf_len; /* filter length of blowfish */ + int remote; /* interface is a remote app interface */ + char remote_app[32]; /* name of remote application */ + char remote_context[128]; /* context feld to use for remote application */ #ifdef WITH_GSM_BS int gsm_bs; /* interface is an GSM BS interface */ +#if 0 + int gsm_bs_payloads; + unsigned char gsm_bs_payload_types[8]; +#endif #endif #ifdef WITH_GSM_MS int gsm_ms; /* interface is an GSM MS interface */ @@ -113,8 +124,8 @@ struct interface { #endif #ifdef WITH_SIP int sip; /* interface is a SIP interface */ - char sip_local_ip[16]; - char sip_remote_ip[16]; + char sip_local_peer[32]; + char sip_remote_peer[32]; void *sip_inst; /* sip instance */ #endif int rtp_bridge; /* bridge RTP directly (for calls comming from interface) */ @@ -136,7 +147,8 @@ extern char interface_error[256]; struct interface *read_interfaces(void); void free_interfaces(struct interface *interface_start); void relink_interfaces(void); -void load_port(struct interface_port *ifport); +void load_mISDN_port(struct interface_port *ifport); void doc_interface(void); void do_screen(int out, char *id, int idsize, int *type, int *present, const char *interface_name); +struct interface *getinterfacebyname(const char *name);