Hello all,

why does this:

<extension name="catch_simple_message_from_originate">
    <condition field="destination_number" expression="^(simple_message)$" require-nested="false">
        <action application="ring_ready"/>
        <action application="answer"/>
        <action application="sleep" data="1000"/>
        <action application="playback" data="${audio}"/>
        <condition field="${record_voicemail}" expression="^true$">
            <action application="log" data="CRIT I will be recording!"/>
            <action application="record_session" data="tmp/${record_filename}.mp3"/>
        </condition>
        <action application="hangup" date="NORMAL_CLEARING"/>
    </condition>
</extension>


Why when executed is moved around? The hangup should execute AFTER the inner condition

Dialplan: sofia/external/1234567890@sip.mydomain.com Action sleep(1000)
Dialplan: sofia/external/1234567890@sip.mydomain.com Action playback(${cdrBucket}/${audio1})
Dialplan: sofia/external/1234567890@sip.mydomain.com Action hangup()
|--- Dialplan: Processing recursive conditions level:1 [catch_simple_message_from_originate_recur_1] require-nested=FALSE
|--- Dialplan: sofia/external/1234567890@sip.mydomain.com Regex (PASS) [catch_simple_message_from_originate_recur_1] ${record_voicemail}(true) =~ /^true$/ break=on-false
|--- Dialplan: sofia/external/1234567890@sip.mydomain.com Action log(CRIT I will be recording!)
|--- Dialplan: sofia/external/1234567890@sip.mydomain.com Action record_session(tmp/${record_filename}.mp3)


Regards,

David Villasmil
phone: +34669448337