It seems enabling the following command resolves my problem:

<param name="threaded-system-exec" value="true"/>

Can anyone explain in detail what this variable does? 

Thanks!



On Mon, 3 Sep 2018 at 20:30, Lee Vidor via FreeSWITCH-users <freeswitch-users@lists.freeswitch.org> wrote:



---------- Forwarded message ----------
From: Lee Vidor <leevidor89@googlemail.com>
To: freeswitch-users@lists.freeswitch.org
Cc: 
Bcc: 
Date: Fri, 31 Aug 2018 13:50:27 +0100
Subject: mod_tts_commandline hangs in call flow
Hi

I'm currently using mod_tts_commandline with a python script to AWS text to speech API. The flow works fine during a single call.

Event socket API -> Freeswitch dialplan -> mod_tts_commandline -> Python script -> AWS API -> Voice file -> Freeswitch say

However when there a number of concurrent calls (even just 10 to 15) the request to execute the python script hangs until all the calls are at the same requesting state. As if mod_tts_commandline is waiting for something to happen.

Dial plan:

        <extension name="tts_google">
            <condition field="destination_number" expression="^11111$">
                <action application="set" data="call_timeout=60" />
                <action application="answer"/>
                <action application="detect_silence" data="100 30 25000"/>
                <action application="speak" data="tts_commandline|${lang}|${text}" />
                <action application="hangup"/>
            </condition>
        </extension>

tts_commandline.conf:

        <param name="command" value="/usr/bin/python /usr/local/freeswitch/scripts/synthesize_text.py --language=${voice} --filename=${file} --text=${text}"/>
    </settings>

Execution of python script in freeswitch logs:

2018-08-30 11:19:57.641892 [ERR] switch_ivr_play_say.c:2385 switch_ivr_detect_silence: SILENCE DETECTED
2018-08-30 11:19:57.641892 [DEBUG] switch_core_codec.c:248 sofia/external/33123456789 Restore previous codec PCMU:0.
EXECUTE sofia/external/33123456789 speak(tts_commandline|en-US|Hi, This is a test message)
2018-08-30 11:19:57.641892 [DEBUG] switch_ivr_play_say.c:3025 OPEN TTS tts_commandline
2018-08-30 11:19:57.641892 [DEBUG] switch_ivr_play_say.c:3035 Raw Codec Activated
2018-08-30 11:19:57.641892 [DEBUG] mod_tts_commandline.c:160 Executing: /usr/bin/python /usr/local/freeswitch/scripts/synthesize_text.py --language='en-US' --filename='/tmp/92ec5996-0dc8-4293-b5ba-465430811fed.tmp.wav' --text='Hi, This is a test message'

"Simultaneous calls requesting mod_tts_commandline"

Log from python script: (notice it's called with a 15 second delay)  ---> What is causing this delay?

2018-08-30 11:20:12,488 DEBUG Called script
2018-08-30 11:20:12,490 DEBUG Arguments Namespace(filename='/tmp/92ec5996-0dc8-4293-b5ba-465430811fed.tmp.wav', language='en-US', ssml=None, text='Hi, This is a test message')
2018-08-30 11:20:12,490 DEBUG synthesize_text requested

The python script executes fine and returns to freeswitch:

2018-08-30 11:20:14.541919 [DEBUG] switch_core_file.c:342 File /tmp/c61d2034-c1b1-4f42-932f-350484553b5a.tmp.wav sample rate 24000 doesn't match requested rate 8000
2018-08-30 11:20:14.541919 [DEBUG] switch_ivr_play_say.c:2729 Speaking text: Hi, This is a test message

Any help or further debugging steps would be appreciated. 

Thanks 
 
Lee



---------- Forwarded message ----------
From: Lee Vidor via FreeSWITCH-users <freeswitch-users@lists.freeswitch.org>
To: freeswitch-users@lists.freeswitch.org
Cc: 
Bcc: 
Date: Mon, 03 Sep 2018 12:30:09 -0700 (PDT)
Subject: [Freeswitch-users] mod_tts_commandline hangs in call flow
_________________________________________________________________________
Professional FreeSWITCH Services
sales@freeswitch.com
https://freeswitch.com

Official FreeSWITCH Sites
https://freeswitch.com/oss
https://freeswitch.org/confluence
https://cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
https://freeswitch.com