X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=message.h;h=63abc65117a8754ea809b0f43173fdf34d59d398;hp=f1b4e30428f7650ac616d447ad356fcbae0146ce;hb=3ac6881c22bce18091f19b06958ac66016bf9a32;hpb=0efcf371b4a61fa1376e83d2b7404aeb47a36e26 diff --git a/message.h b/message.h index f1b4e30..63abc65 100644 --- a/message.h +++ b/message.h @@ -12,29 +12,31 @@ #define ISDN_TRANSMIT 256 // samples enum { /* interface types */ - INFO_ITYPE_ISDN, + INFO_ITYPE_ISDN, /* call from external */ INFO_ITYPE_ISDN_EXTENSION, /* call from internal extension */ INFO_ITYPE_CHAN, - INFO_ITYPE_VBOX, + INFO_ITYPE_VBOX }; enum { /* number types */ - INFO_NTYPE_UNKNOWN = 0, + INFO_NTYPE_NOTPRESENT = 0, + INFO_NTYPE_UNKNOWN, INFO_NTYPE_SUBSCRIBER, INFO_NTYPE_NATIONAL, - INFO_NTYPE_INTERNATIONAL, + INFO_NTYPE_INTERNATIONAL }; enum { /* number presentation */ - INFO_PRESENT_NULL = 0, - INFO_PRESENT_ALLOWED, - INFO_PRESENT_RESTRICTED, INFO_PRESENT_NOTAVAIL, + INFO_PRESENT_ALLOWED, + INFO_PRESENT_RESTRICTED }; enum { /* number presentation */ INFO_SCREEN_USER, /* user provided */ - INFO_SCREEN_NETWORK, /* network provided */ + INFO_SCREEN_USER_VERIFIED_PASSED, + INFO_SCREEN_USER_VERIFIED_FAILED, + INFO_SCREEN_NETWORK /* network provided */ }; enum { /* redirection reason */ @@ -43,7 +45,7 @@ enum { /* redirection reason */ INFO_REDIR_NORESPONSE, INFO_REDIR_UNCONDITIONAL, INFO_REDIR_OUTOFORDER, - INFO_REDIR_CALLDEFLECT, + INFO_REDIR_CALLDEFLECT }; #define INFO_NOTIFY_NONE 0x00 @@ -129,6 +131,7 @@ enum { /* isdnsignal */ enum { /* bchannel assignment */ BCHANNEL_REQUEST, /* application requests bchannel */ + BCHANNEL_RELEASE, /* application releases bchannel */ BCHANNEL_ASSIGN, /* bchannel assigned by LCR */ BCHANNEL_ASSIGN_ACK, /* application acknowledges */ BCHANNEL_REMOVE, /* bchannel removed by LCR */ @@ -144,14 +147,8 @@ enum { B_STATE_IMPORTING, /* BCHANNEL_REMOVE sent */ }; enum { - B_EVENT_USE, /* activate/export bchannel */ - B_EVENT_EXPORTREQUEST, /* remote app requests bchannel */ - B_EVENT_ACTIVATED, /* DL_ESTABLISH received */ - B_EVENT_DROP, /* deactivate/re-import bchannel */ - B_EVENT_DEACTIVATED, /* DL_RELEASE received */ - B_EVENT_EXPORTED, /* BCHANNEL_ASSIGN received */ - B_EVENT_IMPORTED, /* BCHANNEL_REMOVE received */ - B_EVENT_TIMEOUT, /* timeout for bchannel state */ + B_MODE_TRANSPARENT, /* normal transparent audio */ + B_MODE_HDLC, /* hdlc data mode */ }; /* call-info structure CALLER */ @@ -166,6 +163,11 @@ struct caller_info { int present; /* presentation */ int screen; /* who provided the number */ char display[84]; /* display information */ + char id2[32]; /* second callerid */ + int ntype2; /* second type of number */ + int present2; /* second presentation */ + int screen2; /* second who provided the number */ + char imsi[16]; /* IMSI for gsm originated calls */ }; /* call-info structure DIALING */ @@ -175,6 +177,8 @@ struct dialing_info { int itype; /* type of interface */ int ntype; /* type of number */ int sending_complete; /* end of dialing */ + char display[84]; /* display information */ + char keypad[33]; /* send keypad facility */ }; /* call-info structure CONNECT */ @@ -189,6 +193,7 @@ struct connect_info { int present; /* presentation */ int screen; /* who provided the number */ char display[84]; /* display information */ + char imsi[16]; /* IMSI for gsm terminated calls */ }; /* call-info structure DISCONNECT */ @@ -212,6 +217,7 @@ struct redir_info { /* call-info structure capability */ struct capa_info { + int source_mode; /* forward mode */ int bearer_capa; /* capability */ int bearer_mode; /* circuit/packet */ int bearer_info1; /* alaw,ulaw,... */ @@ -249,7 +255,6 @@ struct useruser_info { struct message_setup { int isdn_port; /* card number 1...n (only on calls from isdn port) */ int port_type; /* type of port (only required if message is port -> epoint) */ - int dtmf; /* used to enabled dtmf dialing at setup state */ int partyline; /* if set, call will be a conference room */ int partyline_jingle; /* if set, the jingle will be played on conference join */ struct caller_info callerinfo; /* information about the caller */ @@ -257,7 +262,7 @@ struct message_setup { struct redir_info redirinfo; /* info on redirection (to the calling user) */ struct capa_info capainfo; /* info on l2,l3 capability */ struct useruser_info useruser; /* user-user */ - char exten[128]; /* asterisk extension */ + char context[128]; /* asterisk context */ }; /* call-info structure PARK */ @@ -311,7 +316,7 @@ struct param_hello { struct param_bchannel { int type; /* BCHANNEL_* */ - unsigned long handle; /* bchannel stack/portid */ + unsigned int handle; /* bchannel stack/portid */ int tx_gain, rx_gain; char pipeline[256]; unsigned char crypt[128]; @@ -357,8 +362,8 @@ struct lcr_msg { struct lcr_msg *next; int type; /* type of 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; + unsigned int id_from; /* in case of flow==PORT_TO_EPOINT: id_from is the port's serial, id_to is the epoint's serial */ + unsigned int id_to; int keep; union parameter param; }; @@ -367,6 +372,7 @@ enum { /* messages between entities */ MESSAGE_NONE, /* no message */ MESSAGE_TONE, /* set information tone (to isdn port) */ MESSAGE_DTMF, /* dtmf digit (from isdn port) */ + MESSAGE_ENABLEKEYPAD, /* remote application requests keypad/dtmf */ MESSAGE_mISDNSIGNAL, /* special mixer command (down to isdn port) */ MESSAGE_SETUP, /* setup message */ MESSAGE_INFORMATION, /* additional digit information */ @@ -401,6 +407,7 @@ enum { /* messages between entities */ "MESSAGE_NONE", \ "MESSAGE_TONE", \ "MESSAGE_DTMF", \ + "MESSAGE_ENABLEKEYPAD", \ "MESSAGE_mISDNSIGNAL", \ "MESSAGE_SETUP", \ "MESSAGE_INFORMATION", \