struct iaxc_ev_levels { float input; float output; }; struct iaxc_ev_text { int type; int callNo; /* call number for IAX text */ char message[IAXC_EVENT_BUFSIZ]; }; struct iaxc_ev_call_state { int callNo; int state; char remote[IAXC_EVENT_BUFSIZ]; char remote_name[IAXC_EVENT_BUFSIZ]; char local[IAXC_EVENT_BUFSIZ]; char local_context[IAXC_EVENT_BUFSIZ]; }; typedef struct iaxc_event_struct { int type; union { struct iaxc_ev_levels levels; struct iaxc_ev_text text; struct iaxc_ev_call_state call; } ev; } iaxc_event;