VOS_UINT32 NAS_MMC_SndOmSmsIndMsg(VOS_VOID) { NAS_OM_SMS_IND_STRU stNasOmSmsInd; DIAG_TRANS_IND_STRU stDiagTransInd; VOS_UINT32 ulRet; /* 初始化 */ PS_MEM_SET(&stNasOmSmsInd, 0x00, sizeof(NAS_OM_SMS_IND_STRU)); /* 填充消息内容 */ NAS_SMS_BuildSmsOmInfo(&stNasOmSmsInd); stNasOmSmsInd.enPrimId = ID_NAS_OM_SMS_CONFIRM; stNasOmSmsInd.usToolsId = 0; stDiagTransInd.ulModule = DIAG_GEN_MODULE(VOS_GetModemIDFromPid(WUEPS_PID_SMS), DIAG_MODE_UMTS);; stDiagTransInd.ulPid = WUEPS_PID_SMS; stDiagTransInd.ulMsgId = ((VOS_UINT32)(VOS_GetModemIDFromPid(WUEPS_PID_SMS)) << 16) + ID_NAS_OM_SMS_CONFIRM; stDiagTransInd.ulLength = sizeof(NAS_OM_SMS_IND_STRU); stDiagTransInd.pData = &stNasOmSmsInd; /* 发送消息 */ ulRet = DIAG_TransReport(&stDiagTransInd); if (VOS_OK != ulRet) { NAS_WARNING_LOG(WUEPS_PID_SMS, "NAS_MMC_SndOmSmsIndMsg:WARNING: Send msg fail."); } return ulRet; }
VOS_VOID NAS_SMS_SndOmInquireCnfMsg( ID_NAS_OM_INQUIRE_STRU *pstOmInquireMsg ) { ID_NAS_OM_CNF_STRU *pstSmsOmCnf ; pstSmsOmCnf = VOS_NULL_PTR; pstSmsOmCnf = (ID_NAS_OM_CNF_STRU *)PS_MEM_ALLOC(WUEPS_PID_SMS, (sizeof(ID_NAS_OM_CNF_STRU) + sizeof(NAS_OM_SMS_CONFIRM_STRU)) - NAS_OM_DATA_PTR_LEN); /* 申请内存 */ if (VOS_NULL_PTR == pstSmsOmCnf) { NAS_ERROR_LOG(WUEPS_PID_SMS, "NAS_MMC_SndOmInquireCnfMsg:Memory Allocate fail!"); return; } PS_MEM_SET((VOS_INT8*)pstSmsOmCnf, 0 ,sizeof(ID_NAS_OM_CNF_STRU)); pstSmsOmCnf->ucFuncType = 4; pstSmsOmCnf->ucReserve = 0; pstSmsOmCnf->usLength = NAS_OM_DATA_OFFSET + sizeof(NAS_OM_SMS_CONFIRM_STRU); pstSmsOmCnf->ulSn = 0; pstSmsOmCnf->ulTimeStamp = OM_GetSlice(); pstSmsOmCnf->usPrimId = ID_NAS_OM_SMS_CONFIRM; pstSmsOmCnf->usToolsId = pstOmInquireMsg->usToolsId; NAS_SMS_BuildSmsOmInfo((NAS_OM_SMS_CONFIRM_STRU*)(pstSmsOmCnf->aucData)); OM_SendData( (OM_RSP_PACKET_STRU*)pstSmsOmCnf, (sizeof(ID_NAS_OM_CNF_STRU) + sizeof(NAS_OM_SMS_CONFIRM_STRU)) - NAS_OM_DATA_PTR_LEN ); /* 原语发送 */ PS_MEM_FREE(WUEPS_PID_SMS, pstSmsOmCnf); }