{
if(MTPNP_AD_Get_Startup_Mode() == MTPNP_AD_NVRAM_DUALCARD ||
MTPNP_AD_Get_Startup_Mode() == MTPNP_AD_NVRAM_CARD1)
{
return TRUE;
}
else
{
return FALSE;
}
}
BOOL RCT_SIM2_StartUp(void)
{
if(MTPNP_AD_Get_Startup_Mode() == MTPNP_AD_NVRAM_DUALCARD ||
MTPNP_AD_Get_Startup_Mode() == MTPNP_AD_NVRAM_CARD2)
{
return TRUE;
}
else
{
return FALSE;
}
}
BOOL RCT_Get_Card1Status(void)
{
if(MTPNP_AD_Get_Card1Status() == MTPNP_AD_SIMCARD_VALID)
return TRUE;
else
return FALSE;
}
BOOL RCT_Get_Card2Status(void)
{
if(MTPNP_AD_Get_Card2Status() == MTPNP_AD_SIMCARD_VALID)
return TRUE;
else
return FALSE;
}
BOOL mmi_send_message(char *pPhoneNum, char *pMessageContent, unsigned char dcs)
{
mmi_sms_send_msg_req_struct *sendmessage = NULL;
S8 tmp;
U8 i;
U16 msg_len = 0;
BOOL is_SIM_1=0;
if(RCT_SIM1_StartUp() == TRUE &&RCT_Get_Card1Status() == TRUE)
{
is_SIM_1=1;
}
else if (RCT_SIM2_StartUp() == TRUE &&RCT_Get_Card2Status() == TRUE)
{
is_SIM_1=0;
}
else
{
is_SIM_1=1;
}
if(is_SIM_1==1)
{
MTPNP_AD_Free_Channel(MTPNP_AD_SMS_CHANNEL);
MTPNP_AD_Set_Channel(MTPNP_AD_SMS_CHANNEL, MTPNP_AD_CHANNEL_MASTER);
}
else
{
MTPNP_AD_Free_Channel(MTPNP_AD_SMS_CHANNEL);
MTPNP_PFAL_Active_Slave_SMS(MTPNP_TRUE);
MTPNP_AD_Set_Channel(MTPNP_AD_SMS_CHANNEL, MTPNP_AD_CHANNEL_SLAVE);
}
sendmessage = (mmi_sms_send_msg_req_struct*)OslConstructDataPtr(sizeof(*sendmessage));
sendmessage->ref_count = 1;
sendmessage->msg_len = sizeof(mmi_sms_send_msg_req_struct);
sendmessage->profile = 0;
sendmessage->reply_index = MMI_FRM_SMS_INVALID_INDEX;
sendmessage->para = 0;
memset(sendmessage->sc_addr.number, 0xff, MAX_CC_ADDR_LEN);
sendmessage->sc_addr.length = 0xff;
sendmessage->sc_addr.type = 0xff;
sendmessage->vp = 0xff;
sendmessage->pid = 0xff;
sendmessage->udhi = 0;
sendmessage->seq_num = 0;
memset(sendmessage->msg, 0, SMSAL_MAX_MSG_LEN);
mmi_frm_sms_convert_ascii_num_to_l4_num(&sendmessage->dest, (U8*)pPhoneNum);
if(SMSAL_DEFAULT_DCS == dcs)
{
msg_len = strlen((S8*)pMessageContent);
}
else
{
msg_len = mmi_ucs2strlen((S8*)pMessageContent) * 2;
for(i=0; i<msg_len; i+=2)
{
tmp = pMessageContent[i];
pMessageContent[i] = pMessageContent[i+1];
pMessageContent[i+1] = tmp;
}
}
if(SMSAL_MAX_MSG_LEN < msg_len)
{
return FALSE;
}
sendmessage->length = msg_len;
memcpy(sendmessage->msg, (U8*)pMessageContent, sendmessage->length);
if(is_SIM_1==1)
{
mmi_frm_sms_send_message(MOD_MMI,MOD_L4C,0,PRT_MSG_ID_MMI_SMS_SEND_MSG_REQ,(oslParaType*)sendmessage,NULL);
}
else
{
MTPNP_PFAL_Send_Message_Segment((void *)sendmessage);
}
return TRUE;
}