/*****************************************************************************\
** **
-** PBX4Linux **
+** Linux Call Router **
** **
**---------------------------------------------------------------------------**
** Copyright: Andreas Eversberg **
** **
\*****************************************************************************/
-#define SOCKET_NAME "/var/run/PBX4Linux.socket"
+#define SOCKET_NAME "/var/run/LCR.socket"
/* structures that define message between admin-tool and pbx */
ADMIN_RESPONSE_CMD_DIAL,
ADMIN_REQUEST_CMD_RELEASE,
ADMIN_RESPONSE_CMD_RELEASE,
+ ADMIN_REQUEST_CMD_BLOCK,
+ ADMIN_RESPONSE_CMD_BLOCK,
ADMIN_REQUEST_STATE,
ADMIN_RESPONSE_STATE,
+ ADMIN_RESPONSE_S_REMOTE,
ADMIN_RESPONSE_S_INTERFACE,
ADMIN_RESPONSE_S_PORT,
ADMIN_RESPONSE_S_EPOINT,
- ADMIN_RESPONSE_S_CALL,
+ ADMIN_RESPONSE_S_JOIN,
ADMIN_CALL_SETUP,
ADMIN_CALL_SETUP_ACK,
ADMIN_CALL_PROCEEDING,
struct admin_response_cmd {
int error; /* error code 0 = ok*/
char message[256]; /* info / response text */
+ int block;
+ int portnum;
};
struct admin_response_state {
struct tm tm;
char logfile[128];
int interfaces;
- int calls;
+ int remotes;
+ int joins;
int epoints;
int ports;
};
struct admin_response_interface {
- int portnum;
char interface_name[32];
+ int portnum;
+ int block;
int ntmode;
int ptp;
int pri;
- int iftype;
+ int extension;
int use; /* number of ports that use this interface */
int l1link; /* down(0) or up(1) */
int l2link; /* down(0) or up(1) */
int channels;
- int busy[256]; /* if port is idle(0) busy(1) */
+ char busy[256]; /* if port is idle(0) busy(1) */
unsigned long port[256]; /* current port */
};
-struct admin_response_call {
- unsigned long serial; /* call serial number */
+struct admin_response_remote {
+ char name[32]; /* name of remote application */
+};
+
+struct admin_response_join {
+ unsigned long serial; /* join serial number */
+ char remote[32]; /* remote application name */
unsigned long partyline;
};
struct admin_response_epoint {
unsigned long serial;
- unsigned long call; /* link to call */
-// int call_notify; /* if relation notified on hold */
-// int call_hold; /* if relation on hold */
+ unsigned long join; /* link to join */
+// int join_notify; /* if relation notified on hold */
+// int join_hold; /* if relation on hold */
int rx_state;
int tx_state;
int state;
struct admin_trace_req {
int detail;
- char category[4];
- char name[64];
+ char category;
int port;
char interface[64];
char caller[34];
};
struct admin_trace_rsp {
- char text[512];
+ char text[1024];
};
-//struct admin_msg {
-// int type; /* type of message */
-// unsigned long ref; /* reference to individual endpoints */
-// union parameter param; /* parameter union */
-//};
+struct admin_msg {
+ int type; /* type of message */
+ unsigned long ref; /* reference to individual endpoints */
+ union parameter param; /* parameter union */
+};
struct admin_message {
int message; /* type of admin message */
struct admin_response_interface i;
struct admin_response_port p;
struct admin_response_epoint e;
- struct admin_response_call c;
+ struct admin_response_join j;
+ struct admin_response_remote r;
struct admin_call call;
-// struct admin_msg msg;
+ struct admin_msg msg;
struct admin_trace_req trace_req;
struct admin_trace_rsp trace_rsp;
} u;