Summary:ASTERISK-12683: Generating output without additional NoOp()
Reporter:Arkadiusz Malka (yarns)Labels:
Date Opened:2008-09-04 07:37:18Date Closed:2008-09-08 15:05:30
Versions:Frequency of

its possible to add new option to aelparse which should works like -w but without additional NoOp in generated file. Now ael generates something like this:

1. Set(ktoryGsm=${ARG1})
2. Set(GROUP()=${ktoryGsm})
3. GotoIf($["${ktoryGsm}"=="gsm3"]?4:6)
4. Dial(IAX2/${ktoryGsm}/2${numer})
5. Goto(7)
6. Dial(IAX2/${ktoryGsm}/${numer})
7. NoOp(Finish if-gsmCall-725)
9. Set(proba=$[0])
10. GotoIf($[${proba} < 2]?11:24)
11. Wait(0.25)
12. GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?13:21)
13. NoOp(---------> PROBA ${proba} <----------)
14. GotoIf($["${ktoryGsm}"=="gsm3"]?15:17)
15. Dial(IAX2/${ktoryGsm}/2${numer})
16. Goto(18)
17. Dial(IAX2/${ktoryGsm}/${numer})
18. NoOp(Finish if-if-while-gsmCall-726-727-728)
19. Set(proba=$[${proba}+1])
20. Goto(22)
21. Set(proba=$[20])
22. NoOp(Finish if-while-gsmCall-726-727)
23. Goto(10)
24. NoOp(Finish while-gsmCall-726)

Take a look at line 20 it jumps to 22 only for NoOp and then backs.
Additional option to generate output without additionals NoOp could make console output easier to read.
Comments:By: Leif Madsen (lmadsen) 2008-09-04 07:42:14

I don't quite understand what you're asking here... but it appears to be a feature request, which is not handled on the bug tracker. You will need to either provide a patch for the requested feature to move this forward, or you can use one of the various bounty pages to have your feature developed for you.

Please advise.

By: Steve Murphy (murf) 2008-09-08 15:05:28

OK, I'm closing this bug, but I'm putting this request in my queue for updates.
Please, refer to: http://voip-info.org/wiki/view/Asterisk+AEL2#AEL2EnhancementRequestHistory
and I've entered this issue as ASTERISK-5, see down at the bottom.

I just want to tell you that I won't get to this until next year, because I've used up all my non-bugfixing time (which includes enhancements) for the year.
I've thought several times on making an "optimization" option available, and
modifying the code generator to honor it, wherein it will not generate NoOps to mark the end of code blocks.

It's an enhancement request, because: a. The generated code works as it is;
b. it's not a performance issue, the NoOps are not slowing things down to the point where your dialplan is failing. c. It's not even a readability issue; the messages you see on the console follow the execution sequence in the generated code.

But **is** an optimization issue, and I've added it to the wiki page for AEL2; and I do want to do it, when I get some time built up.