FreeCalypso > hg > freecalypso-tools
diff uptools/atcmd/smsend_text.c @ 362:89fe66cb60f6
fcup-smsend program put together, compiles
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 05 Mar 2018 01:47:18 +0000 |
parents | |
children | dc2fd8e6f42c |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uptools/atcmd/smsend_text.c Mon Mar 05 01:47:18 2018 +0000 @@ -0,0 +1,40 @@ +/* + * This module implements SMS sending/writing in text mode. + */ + +#include <sys/types.h> +#include <stdio.h> + +extern void cmgw_callback(); + +extern int sms_write_mode; + +prep_for_text_mode() +{ + atinterf_exec_cmd_needok("AT+CMGF=1", 0, 0); + atinterf_exec_cmd_needok("AT+CSCS=\"8859-1\"", 0, 0); + atinterf_exec_cmd_needok("AT+CSMP=1,,0,0", 0, 0); +} + +send_in_text_mode(binda, textstr) + u_char *binda; + char *textstr; +{ + char *cmdname; + void (*callback)(); + char send_cmd[64], digits[21]; + + if (sms_write_mode) { + cmdname = "CMGW"; + callback = cmgw_callback; + } else { + cmdname = "CMGS"; + callback = 0; + } + if (binda[0]) { + decode_address_digits(binda + 2, digits, binda[0]); + sprintf(send_cmd, "AT+%s=\"%s\",%u", cmdname, digits, binda[1]); + } else + sprintf(send_cmd, "AT+%s", cmdname); + atinterf_exec_cmd_needok(send_cmd, textstr, callback); +}