X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=message.h;h=c45867d473d638452d9d356ead98bd83c5298d96;hp=e95e8e7f53d6765db5ff371d26487e93e0ac2d9e;hb=ef3fc1931a2fa82f482d21fb1296735206463d3a;hpb=559ff64e3062b70f27ddceba825f40642a6c5725 diff --git a/message.h b/message.h index e95e8e7..c45867d 100644 --- a/message.h +++ b/message.h @@ -118,10 +118,11 @@ enum { /* diversion types */ #define INFO_HLC_AUDIOVISUAL 0xe0 enum { /* isdnsignal */ - mISDNSIGNAL_VOLUME, - mISDNSIGNAL_CONF, - mISDNSIGNAL_NODATA, /* no data required */ - mISDNSIGNAL_ECHO, + mISDNSIGNAL_VOLUME, /* change volume */ + mISDNSIGNAL_CONF, /* joint/split conference */ + mISDNSIGNAL_CALLDATA, /* data required by call instance */ + mISDNSIGNAL_ECHO, /* enable/disable echoe */ + mISDNSIGNAL_DELAY, /* use delay or adaptive jitter */ }; /* call-info structure CALLER */ @@ -140,7 +141,7 @@ struct caller_info { /* call-info structure DIALING */ struct dialing_info { - char number[256]; /* number dialing (so far) */ + char id[256]; /* number dialing (so far) */ char interfaces[128]; /* interfaces for extenal calls */ int itype; /* type of interface */ int ntype; /* type of number */ @@ -150,11 +151,10 @@ struct dialing_info { /* call-info structure CONNECT */ struct connect_info { char id[32]; /* id of caller (user number) */ - char voip[64]; /* URI of voip (or gateway) */ - char intern[32]; /* internal id */ + char extension[32]; /* internal id */ char name[16]; int isdn_port; /* internal/external port (if call is isdn) */ - char interfaces[128]; /* interfaces for extenal calls */ + char interface[128]; /* interface for extenal calls */ int itype; /* type of interface */ int ntype; /* type of number */ int present; /* presentation */ @@ -172,8 +172,7 @@ struct disconnect_info { /* call-info structure REDIR */ struct redir_info { char id[32]; /* id of caller (user number) */ - char voip[64]; /* host of voip (or gateway) */ - char intern[32]; /* internal id */ + char extension[32]; /* internal id */ int isdn_port; /* internal/external port (if call is isdn) */ int itype; /* type of interface */ int ntype; /* type of number */ @@ -195,8 +194,7 @@ struct capa_info { struct notify_info { int notify; /* notifications (see INFO_NOTIFY_*) */ char id[32]; /* redirection id (user number) */ - char voip[64]; /* host of voip (or gateway) */ - char intern[32]; /* internal id */ + char extension[32]; /* internal id */ int isdn_port; /* internal/external port (if call is isdn) */ int itype; /* type of interface */ int ntype; /* type of number */ @@ -241,9 +239,6 @@ struct park_info { struct param_data { unsigned char data[512]; /* audio/hdlc data */ int len; /* audio/hdlc data */ - int compressed; /* 0 for law-data, 1 for 16-bit data */ - unsigned long port_id; /* to identify the source of this data */ - int port_type; /* type of the source's port */ }; struct param_play { @@ -266,9 +261,10 @@ struct param_mISDNsignal { int rxvol; int txvol; int conf; - int nodata; + int calldata; int tone; int echo; + int delay; }; /* encryption control structure CRYPT */ @@ -315,6 +311,7 @@ struct message { int flow; /* from where to where */ unsigned long id_from; /* in case of flow==PORT_TO_EPOINT: id_from is the port's serial, id_to is the epoint's serial */ unsigned long id_to; + int keep; union parameter param; }; @@ -352,7 +349,7 @@ enum { /* messages between entities */ MESSAGE_VBOX_TONE, /* set answering VBOX tone */ MESSAGE_TONE_COUNTER, /* tone counter (for VBOX tone use) */ MESSAGE_TONE_EOF, /* tone is end of file */ - MESSAGE_VBOX_RECORD, /* tell endpoint to start recording */ + MESSAGE_HELLO, /* hello message for asterisk */ }; #define MESSAGES static const char *messages_txt[] = { \ @@ -384,12 +381,13 @@ enum { /* messages between entities */ "MESSAGE_VBOX_TONE", \ "MESSAGE_TONE_COUNTER", \ "MESSAGE_TONE_EOF", \ - "MESSAGE_VBOX_RECORD", \ + "MESSAGE_HELLO", \ }; struct message *message_create(int id_from, int id_to, int flow, int type); void message_put(struct message *message); +void message_forward(int id_from, int id_to, int flow, union parameter *param); struct message *message_get(void); void message_free(struct message *message);