接收呼叫到弹出提示窗流程

未结 0 173
纳入话题 标签: OpenRtcomm 流程 呼叫
首先在ThreadProc_mis_io线程通过qyRecvMsg收到数据。
接着构造MIS_MSG_INPUT,分配buffer并填充收到的字节流数据。
调用decryptData解密数据
调用pProcInfo.postReciveMsg2Mgr_mc --> postReciveMsg2Mgr --> qPostMsgAndTrigger将MIS_MSG_INPUT存入pProcInfo.mgrQ队列

切换到mcThreadProc_mis_mgr线程
调用qGetMsg得到MIS_MSG_INPUT对象(input)
procMsgInput_mgr_req
将input的buffer传入qyntohRouteTalkData
调用qyntohImLStream得到uiContentType
解析uiContentType == CONST_imCommType_transferAvInfo
调用stream2Data将字节流转为IM_CONTENTU对象
匹配 IM_CONTENTU->uiType==CONST_imCommType_transferAvInfo
procMsgInput_mc_mgr
procMsgInput_mc_media_mgr
调用qPostMsg(pMsgInput, pQyMc.gui.processQ)将pMsgInput存入pQyMc.gui.processQ队列
pf_PostMessage(pQyMc.gui.hMainWnd, CONST_qyWm_postComm, CONST_qyWmParam_msgArrive)
呼叫消息发送到MainActivity的MyHandler

切换到MainActivity
MyHandler里调用mainWnd_OnQyPostComm
匹配wParam==CONST_qyWmParam_msgArrive
调用qGetMsg(pQyMc.gui.processQ)得到pMsg

匹配pMsg.uiType==CONST_misMsgType_input
qnmCommProc_mis.IM_CONTENTU pContent = input.data.buf;
匹配pContent.uiType==CONST_imCommType_transferAvInfo
进入mainWnd_procMsgInput_transferAvInfo函数

newTaskInfoIndex为pProcInfo.pQmcTaskInfos[i]生成QMC_TASK_INFO对象,并返回i
getQmcTaskInfoByIndex返回生成QMC_TASK_INFO

调用gui_notify_chk通知MainActivity开始显示呼叫消息弹窗。

tmp_notify_avCall_ifForegrounded

显示通知

回复
去登录
本周热议