1 /*****************************************************************************\
5 **---------------------------------------------------------------------------**
6 ** Copyright: Andreas Eversberg **
8 ** Administration tool header file **
10 \*****************************************************************************/
12 #define SOCKET_NAME "/var/run/PBX4Linux.socket"
14 /* structures that define message between admin-tool and pbx */
17 ADMIN_REQUEST_CMD_INTERFACE,
18 ADMIN_RESPONSE_CMD_INTERFACE,
19 ADMIN_REQUEST_CMD_ROUTE,
20 ADMIN_RESPONSE_CMD_ROUTE,
21 ADMIN_REQUEST_CMD_DIAL,
22 ADMIN_RESPONSE_CMD_DIAL,
23 ADMIN_REQUEST_CMD_RELEASE,
24 ADMIN_RESPONSE_CMD_RELEASE,
27 ADMIN_RESPONSE_S_INTERFACE,
28 ADMIN_RESPONSE_S_PORT,
29 ADMIN_RESPONSE_S_EPOINT,
30 ADMIN_RESPONSE_S_CALL,
33 ADMIN_CALL_PROCEEDING,
36 ADMIN_CALL_DISCONNECT,
44 struct admin_response_cmd {
45 int error; /* error code 0 = ok*/
46 char message[256]; /* info / response text */
49 struct admin_response_state {
50 char version_string[64];
59 struct admin_response_interface {
61 char interface_name[32];
66 int use; /* number of ports that use this interface */
67 int l1link; /* down(0) or up(1) */
68 int l2link; /* down(0) or up(1) */
70 int busy[256]; /* if port is idle(0) busy(1) */
71 unsigned long port[256]; /* current port */
74 struct admin_response_call {
75 unsigned long serial; /* call serial number */
76 unsigned long partyline;
79 struct admin_response_epoint {
81 unsigned long call; /* link to call */
82 // int call_notify; /* if relation notified on hold */
83 // int call_hold; /* if relation on hold */
91 int park; /* if parked */
93 unsigned char park_callid[8];
94 int crypt; /* crypt state */
97 struct admin_response_port {
98 unsigned long serial; /* port serial number */
99 char name[64]; /* name of port */
100 unsigned long epoint; /* link to epoint */
102 int isdn; /* if port is isdn */
103 int isdn_chan; /* bchannel number */
104 int isdn_hold; /* on hold */
105 int isdn_ces; /* ces to use (>=0)*/
109 char interface[64]; /* name of port */
110 char callerid[64]; /* use caller id */
111 char dialing[64]; /* number to dial */
112 int present; /* presentation */
113 int cause; /* cause to send */
123 struct admin_message {
124 int type; /* type of message */
125 unsigned long ref; /* reference to individual endpoints */
126 union parameter param; /* parameter union */
129 struct admin_message {
130 int message; /* type of admin message */
132 struct admin_response_cmd x;
133 struct admin_response_state s;
134 struct admin_response_interface i;
135 struct admin_response_port p;
136 struct admin_response_epoint e;
137 struct admin_response_call c;
138 struct admin_call call;
139 struct admin_message message;
140 struct admin_trace trace;
147 ADMIN_STATE_IN_SETUP,
148 ADMIN_STATE_OUT_SETUP,
149 ADMIN_STATE_IN_OVERLAP,
150 ADMIN_STATE_OUT_OVERLAP,
151 ADMIN_STATE_IN_PROCEEDING,
152 ADMIN_STATE_OUT_PROCEEDING,
153 ADMIN_STATE_IN_ALERTING,
154 ADMIN_STATE_OUT_ALERTING,
156 ADMIN_STATE_IN_DISCONNECT,
157 ADMIN_STATE_OUT_DISCONNECT,