I try to send MMS via AirLink GL6110.
I am new in Open AT and in all this -SIM/SMS/MMS/GPRS- infrastructure.
I use Developer Studio Build Version 1.2.0.201012171243-R6026 and I try to work with MMS example from WIP plugin package. This example does not work for me. And i try to understand what is wrong. And i have many questions…
One of them why AT-commands from the example don’t send response: “OK”/“ERROR”/“something else”.
Here the code of AT+GPRS handler:
static void gprs_hdlr(adl_atCmdPreParser_t* params)
{
TRACE (( 1, "IN GPRS_HDLR: start" ));
if(params->Type == ADL_CMD_TYPE_PARA)
{
if(params->NbPara == 3)
{
TRACE (( 1, "IN GPRS_HDLR: params=3" ));
wm_strcpy(gprs_apn,(ascii*)ADL_GET_PARAM(params,0));
wm_strcpy(gprs_uname,(ascii*)ADL_GET_PARAM(params,1));
wm_strcpy(gprs_passw,(ascii*)ADL_GET_PARAM(params,2));
adl_atSendResponse(ADL_AT_RSP,"\r\nOK\r\n");
TRACE (( 1, "IN GPRS_HDLR: starting gprs" ));
start_gprs(gprs_apn,gprs_uname,gprs_passw);
TRACE (( 1, "IN GPRS_HDLR: after starting gprs" ));
}
else
TRACE (( 1, "IN GPRS_HDLR: sending ERROR" ));
adl_atSendResponse(ADL_AT_RSP,"\r\nERROR\r\n");
}
else if(params->Type == ADL_CMD_TYPE_TEST)
{
TRACE (( 1, "IN GPRS_HDLR: type = test" ));
ascii buf[256] = {0};
wm_sprintf(buf,"\r\n+GPRS: 32,32,32\r\n");
adl_atSendResponse(ADL_AT_INT,buf);
adl_atSendResponse(ADL_AT_RSP,"\r\nOK\r\n");
}
}
this handler is subscribed in such way:
adl_atCmdSubscribe("AT+GPRS",gprs_hdlr,(ADL_CMD_TYPE_TEST | ADL_CMD_TYPE_PARA |
0x0033));
I know that handler code is executed (i know this from TRACE messages) when i type something like <at+gprs=“sdfsf”,“sdfsdf”,“dfsf”>, but there is no answer “OK” in console. Why? What is wrong with adl_atSendResponse(ADL_AT_RSP,"\r\nOK\r\n") command? Or this is right behavior?
Packages are used:
SDK profile: Open AT Embedded Software Suite (2.32.0.xxxx)
OS: Open AT OS (6.32.0.3)
Firmware: 7.42.0.2010xxxx
Plugin: WIP 5.30.0.2031