case UPMSG_ALARM:
printf(“Type=%d Ch= %d 收到线路告警消息\n“,pmsg->ChType,
pmsg->ChIndex);?
break;
case DOWNMSG_SETPARAM:
printf(“Type=%d Ch= %d
收到上传参数消息\n“,pmsg->ChType, pmsg->ChIndex);?
break;
default:
printf(“Type=%d Ch= %d 收到未处理消息 msg=0x%x\n“,pmsg->ChType,
pmsg->ChIndex,pmsg->MsgType);
break;
} }
◆ 编写各个需要处理的事件函数,用于处理对应的事件,
例如: //////////通道呼入处理
void ProcessCallMsg(CH *P,RMSG *pmsg)
{
RMSG ms=*pmsg;//暂时保存
printf(“Type= %d Ch= %d 呼入 %s ,被叫号码=%s,主叫号码(包括原被叫)
=%s\n“,pmsg->ChType, pmsg->ChIndex,pmsg->Function==F_C_NORMAL
“呼叫建立“:“重叠呼叫“, pmsg->GetCalled(),pmsg->GetCaller());
Ack(*pmsg);//对呼入应答摘机
time_t tt; time(&tt);
tm *pt=localtime(&tt);
char c[256]; sprintf(c,“今天是%d年%d月%d日。“,pt->tm_year+1900,
pt->tm_mon+1,pt->tm_mday);
PlayTTS(*pmsg,c,1,0);
sprintf(c,“您拨的是%s第%d通道。“,GetChTypeStr(pmsg->ChType),
pmsg->ChIndex);
PlayTTS(*pmsg,c,0,0); //播放合成语音
if(ms.GetCallerLen())
{
sprintf(c,“主叫号码是%s。“,ms.GetCaller());
PlayTTS(*pmsg,c,0,0);
}
if(ms.GetCalledLen())
{
sprintf(c,“被叫号码是%s。“,ms.GetCalled());
PlayTTS(*pmsg,c,0,0);
}
|
| 上一页 [1][2][3] 4 [5][6] 下一页 |