CMake UNIMRCP_SOURCE_DIR better guessed and documented.

git-svn-id: http://unimrcp.googlecode.com/svn@2162 f001bc3a-424a-0410-80a0-a715b8f413a8
Print out the associated Asterisk channel name while creating a new speech channel.

git-svn-id: http://unimrcp.googlecode.com/svn@2163 f001bc3a-424a-0410-80a0-a715b8f413a8
Use a new helper function get_speech_channel() to retrieve a speech channel associated with the provided MRCP session. Not a functional change, hopefully.

git-svn-id: http://unimrcp.googlecode.com/svn@2164 f001bc3a-424a-0410-80a0-a715b8f413a8
Do not check for schannel->mutex != NULL every here and there. The mutex is being created and destroyed with the corresponding schannel and must always be available in between.

Helps reduce the code size quite significantly and made it easier to follow.

git-svn-id: http://unimrcp.googlecode.com/svn@2165 f001bc3a-424a-0410-80a0-a715b8f413a8
Retrieve and print out status and response code in case of an error in on_channel_add().

git-svn-id: http://unimrcp.googlecode.com/svn@2166 f001bc3a-424a-0410-80a0-a715b8f413a8
Took out unused handler on_channel_remove().

git-svn-id: http://unimrcp.googlecode.com/svn@2167 f001bc3a-424a-0410-80a0-a715b8f413a8
Fixed a race condition issue in Asterisk applications.

The issue applies to all the apps: SynthAndRecog, MRCPRecog, and MRCPSynth, where an application may get stuck infinitely in speech_channel_open() having the following conditions met.

An application is getting executed, the establishment of a new synthesizer or recognizer session/channel fails due to a license issue or other error in the MRCP server, and as a consequence, the calling thread of the application may (not always) get stuck waiting for a response from the MRCP client. The response is actually signaled but not delivered/received due to a race in the function speech_channel_open().

git-svn-id: http://unimrcp.googlecode.com/svn@2168 f001bc3a-424a-0410-80a0-a715b8f413a8
Cleaned up and enhanced a bit init.d script for unimrcpserver.

git-svn-id: http://unimrcp.googlecode.com/svn@2169 f001bc3a-424a-0410-80a0-a715b8f413a8
Use apr_ring instead of apt_obj_list for MRCPv2 connections.

git-svn-id: http://unimrcp.googlecode.com/svn@2170 f001bc3a-424a-0410-80a0-a715b8f413a8
Use a connection pool within apr_socket_accept().

This makes memory allocation for accepted sockets more predictable and independent from each other. The point is not to use a pool shared among multiple sockets/connections, where the lifetime of the shared pool could theoretically be infinite.

git-svn-id: http://unimrcp.googlecode.com/svn@2171 f001bc3a-424a-0410-80a0-a715b8f413a8
Use apr_hash to hold pending control channels. Before, mrcp_connection was used as a temporary container.

git-svn-id: http://unimrcp.googlecode.com/svn@2172 f001bc3a-424a-0410-80a0-a715b8f413a8
Use apr_ring to hold a list of RTSP connections.

This change allows to get rid of a sub-pool used for the connection list.

git-svn-id: http://unimrcp.googlecode.com/svn@2173 f001bc3a-424a-0410-80a0-a715b8f413a8
Allow timers to be (re)set. The ongoing timer, if any, will be implicitly stopped.

git-svn-id: http://unimrcp.googlecode.com/svn@2174 f001bc3a-424a-0410-80a0-a715b8f413a8
Added [optional] timer support to consumer task.

The timer support will be available with a new release of the local version of the APR-util library, where timed push and pop operations have been implemented for apr_queue_t.

git-svn-id: http://unimrcp.googlecode.com/svn@2175 f001bc3a-424a-0410-80a0-a715b8f413a8
Use const qualifier.

git-svn-id: http://unimrcp.googlecode.com/svn@2176 f001bc3a-424a-0410-80a0-a715b8f413a8
Initialize APR ring element just for sanity (not a functional change).

git-svn-id: http://unimrcp.googlecode.com/svn@2177 f001bc3a-424a-0410-80a0-a715b8f413a8
Slightly modified processing of start and termination requests in apt_task interface.

git-svn-id: http://unimrcp.googlecode.com/svn@2178 f001bc3a-424a-0410-80a0-a715b8f413a8
Release task message if signal() method fails.

git-svn-id: http://unimrcp.googlecode.com/svn@2179 f001bc3a-424a-0410-80a0-a715b8f413a8
Added new methods to the apt_task interface to take a task offline: apt_task_offline() and to bring it back online: apt_task_online().

git-svn-id: http://unimrcp.googlecode.com/svn@2180 f001bc3a-424a-0410-80a0-a715b8f413a8
Initialize APR ring element just for sanity (not a functional change).


git-svn-id: http://unimrcp.googlecode.com/svn@2181 f001bc3a-424a-0410-80a0-a715b8f413a8