diff options
Diffstat (limited to 'src/modem.h')
-rw-r--r-- | src/modem.h | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/src/modem.h b/src/modem.h index 7383d1c..308d656 100644 --- a/src/modem.h +++ b/src/modem.h @@ -1,25 +1,36 @@ #ifndef foomodemhfoo #define foomodemhfoo -enum modem_state { MODEM_STATE_INIT, MODEM_STATE_AUDIO_SIMPLE, MODEM_STATE_AUDIO_SHBUF, MODEM_STATE_DONE }; +#include "buffio.h" + +enum modem_state { + MODEM_STATE_INIT, + MODEM_STATE_CALLER_NUMBER_EXPECT, + MODEM_STATE_CALLER_NUMBER, + MODEM_STATE_RING_EXPECT, + MODEM_STATE_RING, + MODEM_STATE_ANSWER, + MODEM_STATE_VTXVRX, + MODEM_STATE_CONNECTION, + MODEM_STATE_CONNECTION_SHBUF, + MODEM_STATE_DONE +}; #define MODEM_BUF_LEN (10*1024) struct modem { char *dev; - int fd; - char *ouput_buf; - size_t output_buf_len; - - char *input_buf; - size_t input_buf_len; + struct buffio *buffio; enum modem_state state; + int command_index; pid_t child_pid; struct timeval timeout; + + int dle_flag; }; struct modem *modem_open(const char *dev); |