That is because it jumps to a new state through either TRUNK_STEP_SOFTDIAL or TRUNK_STEP_DIALXFER. Anytime I jump to new state, I always return false from a scrXXX handler so that the ccscript engine does not try to multi-step execute. When the new state completes it advances the engine, which is why I do not advance here either. Hence, return true/false is being used in the scripting engine for scrXXX handlers not in terms of error, but in terms of indicating execution behavior. This is true in ccscript3 as well, where there are further automatic options to execute scripted code blocks quickly. That is part of why Bayonne2 often "seems" to run scripts faster than bayonne1 on low port density systems, although clever use of begin in bayonne1 scripting can achieve similar results.

Julien Chavanton wrote:
Hi David,

Looking at Bayonne 1.2.14
server/scrDial: "return true;" as been commented, and sometimes the dial
command exit the script?
I guess it shall return true if everything went well?


//      advance();
//      return true;

        if(soft)
                trunkStep(TRUNK_STEP_SOFTDIAL);
        else
                trunkStep(TRUNK_STEP_DIALXFER);
        return false;


_______________________________________________
Bayonne-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bayonne-devel
begin:vcard
fn:David Sugar
n:Sugar;David
org:GNU Telephony
adr:;;;;;;USA
email;internet:[EMAIL PROTECTED]
tel;work:+1 201 215 2609
x-mozilla-html:FALSE
url:http://www.gnutelephony.org
version:2.1
end:vcard

_______________________________________________
Bayonne-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bayonne-devel

Reply via email to