mirror of
https://github.com/signalwire/freeswitch.git
synced 2026-07-24 13:12:03 +00:00
bump rev to upstream r1401
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16719 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
#include "recogscenario.h"
|
||||
#include "recorderscenario.h"
|
||||
#include "dtmfscenario.h"
|
||||
#include "setparamscenario.h"
|
||||
#include "unimrcp_client.h"
|
||||
#include "apt_log.h"
|
||||
|
||||
@@ -52,7 +53,6 @@ UmcFramework::UmcFramework() :
|
||||
m_pTask(NULL),
|
||||
m_pMrcpClient(NULL),
|
||||
m_pMrcpApplication(NULL),
|
||||
m_Ready(false),
|
||||
m_pScenarioTable(NULL),
|
||||
m_pSessionTable(NULL)
|
||||
{
|
||||
@@ -69,19 +69,7 @@ bool UmcFramework::Create(apt_dir_layout_t* pDirLayout, apr_pool_t* pool)
|
||||
|
||||
m_pSessionTable = apr_hash_make(m_pPool);
|
||||
m_pScenarioTable = apr_hash_make(m_pPool);
|
||||
if(!CreateTask())
|
||||
return false;
|
||||
|
||||
/* wait for READY state,
|
||||
preferably cond wait object should be used */
|
||||
int attempts = 0;
|
||||
while(!m_Ready && attempts < 10)
|
||||
{
|
||||
attempts++;
|
||||
apr_sleep(500000);
|
||||
}
|
||||
|
||||
return true;
|
||||
return CreateTask();
|
||||
}
|
||||
|
||||
void UmcFramework::Destroy()
|
||||
@@ -155,7 +143,6 @@ bool UmcFramework::CreateTask()
|
||||
pVtable->on_terminate_complete = UmcOnTerminateComplete;
|
||||
}
|
||||
|
||||
m_Ready = false;
|
||||
apt_task_start(pTask);
|
||||
return true;
|
||||
}
|
||||
@@ -186,6 +173,8 @@ UmcScenario* UmcFramework::CreateScenario(const char* pType)
|
||||
return new RecorderScenario();
|
||||
else if(strcasecmp(pType,"DtmfRecognizer") == 0)
|
||||
return new DtmfScenario();
|
||||
else if(strcasecmp(pType,"Params") == 0)
|
||||
return new SetParamScenario();
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
@@ -524,13 +513,6 @@ apt_bool_t AppOnResourceDiscover(mrcp_application_t *application, mrcp_session_t
|
||||
return pSession->OnResourceDiscover(descriptor,status);
|
||||
}
|
||||
|
||||
apt_bool_t AppOnReady(mrcp_application_t *application, mrcp_sig_status_code_e status)
|
||||
{
|
||||
UmcFramework* pFramework = (UmcFramework*) mrcp_application_object_get(application);
|
||||
pFramework->m_Ready = true;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void UmcOnStartComplete(apt_task_t* pTask)
|
||||
{
|
||||
apt_consumer_task_t* pConsumerTask = (apt_consumer_task_t*) apt_task_object_get(pTask);
|
||||
@@ -568,7 +550,6 @@ apt_bool_t UmcProcessMsg(apt_task_t *pTask, apt_task_msg_t *pMsg)
|
||||
AppOnChannelAdd,
|
||||
AppOnChannelRemove,
|
||||
AppOnMessageReceive,
|
||||
AppOnReady,
|
||||
AppOnTerminateEvent,
|
||||
AppOnResourceDiscover
|
||||
};
|
||||
@@ -578,26 +559,22 @@ apt_bool_t UmcProcessMsg(apt_task_t *pTask, apt_task_msg_t *pMsg)
|
||||
}
|
||||
case UMC_TASK_RUN_SESSION_MSG:
|
||||
{
|
||||
if(pFramework->m_Ready)
|
||||
pFramework->ProcessRunRequest(pUmcMsg->m_ScenarioName,pUmcMsg->m_ProfileName);
|
||||
pFramework->ProcessRunRequest(pUmcMsg->m_ScenarioName,pUmcMsg->m_ProfileName);
|
||||
break;
|
||||
}
|
||||
case UMC_TASK_KILL_SESSION_MSG:
|
||||
{
|
||||
if(pFramework->m_Ready)
|
||||
pFramework->ProcessKillRequest(pUmcMsg->m_SessionId);
|
||||
pFramework->ProcessKillRequest(pUmcMsg->m_SessionId);
|
||||
break;
|
||||
}
|
||||
case UMC_TASK_SHOW_SCENARIOS_MSG:
|
||||
{
|
||||
if(pFramework->m_Ready)
|
||||
pFramework->ProcessShowScenarios();
|
||||
pFramework->ProcessShowScenarios();
|
||||
break;
|
||||
}
|
||||
case UMC_TASK_SHOW_SESSIONS_MSG:
|
||||
{
|
||||
if(pFramework->m_Ready)
|
||||
pFramework->ProcessShowSessions();
|
||||
pFramework->ProcessShowSessions();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user