Re: [asterisk-users] extensions.conf vs. AEL
In article [EMAIL PROTECTED], Tilghman Lesher [EMAIL PROTECTED] wrote: On Thursday 04 October 2007 07:07:47 Barzilai Spinak wrote: All this discussion is pointless. As pointless as the discussion of assembly versus high-level languages decades ago. As one of the main architects, I don't find this discussion pointless. My personal opinion of AEL is that it's coming along nicely, but it's still not up to the point where I would consider using it for most dialplans. That day will come, and I'm working with Steve Murphy to ensure that it does. One thing that you did not see in the language wars of yesteryear was of the assembly language changing in subtle ways, to make development in the higher level language easier or more consistent, as is the case with AEL and extensions.conf. I just got the 2nd edition Asterisk book from O'Reilly, and was surprised to find nothing in there about AEL, except a mention of extensions.ael on page 471. Cheers Tony -- Tony Mountifield Work: [EMAIL PROTECTED] - http://www.softins.co.uk Play: [EMAIL PROTECTED] - http://tony.mountifield.org ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
On Fri, 2007-10-05 at 09:17 +, Tony Mountifield wrote: In article [EMAIL PROTECTED], Tilghman Lesher [EMAIL PROTECTED] wrote: On Thursday 04 October 2007 07:07:47 Barzilai Spinak wrote: All this discussion is pointless. As pointless as the discussion of assembly versus high-level languages decades ago. As one of the main architects, I don't find this discussion pointless. My personal opinion of AEL is that it's coming along nicely, but it's still not up to the point where I would consider using it for most dialplans. That day will come, and I'm working with Steve Murphy to ensure that it does. One thing that you did not see in the language wars of yesteryear was of the assembly language changing in subtle ways, to make development in the higher level language easier or more consistent, as is the case with AEL and extensions.conf. I just got the 2nd edition Asterisk book from O'Reilly, and was surprised to find nothing in there about AEL, except a mention of extensions.ael on page 471. From what I heard, they had it on the list, but the deadline came up, and it wasn't ready, so There'll probably be a whole chapter on AEL in the next edition Maybe they'll make it (the AEL chapter) available a little early? (hint, hint!) murf smime.p7s Description: S/MIME cryptographic signature ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
I just got the 2nd edition Asterisk book from O'Reilly, and was surprised to find nothing in there about AEL, except a mention of extensions.ael on page 471. This is too bad. A preliminary chapter, an intro into AEL, why it's valuable, etc. would have been very welcome. Even an appendix of a few pages with examples and references to on-line documentation would have been helpful. I don't think I want to wait for the 3rd edition. Perhaps the Asterisk Cookbook will have some AEL stuff in it... -MC ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Michael Collins wrote: I just got the 2nd edition Asterisk book from O'Reilly, and was surprised to find nothing in there about AEL, except a mention of extensions.ael on page 471. This is too bad. A preliminary chapter, an intro into AEL, why it's valuable, etc. would have been very welcome. Even an appendix of a few pages with examples and references to on-line documentation would have been helpful. I don't think I want to wait for the 3rd edition. Perhaps the Asterisk Cookbook will have some AEL stuff in it... drum Our book Practical Asterisk 1.4, due out 1Q 2008, will include an AEL chapter. We actually delayed publication to get it in because we thought it was important. You can check out the work in progress at http://www.the-asterisk-book.com/unstable/ /drum Cheers, -Stephen- ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
On Fri, 2007-10-05 at 09:17 +, Tony Mountifield wrote: I just got the 2nd edition Asterisk book from O'Reilly, and was surprised to find nothing in there about AEL, except a mention of extensions.ael on page 471. That's because we were rushed on the book, and none of the authors has learned it well enough to write about it. It's on my radar for the next edition, however. -Jared ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
On Fri, 2007-10-05 at 08:40 -0700, Michael Collins wrote: This is too bad. A preliminary chapter, an intro into AEL, why it's valuable, etc. would have been very welcome. Even an appendix of a few pages with examples and references to on-line documentation would have been helpful. I don't think I want to wait for the 3rd edition. Perhaps the Asterisk Cookbook will have some AEL stuff in it... You know, you don't have to wait for the 3rd edition... you could always write something yourself and post it on the web, or join the (mostly dormant, unfortunately) Asterisk Documentation Project. :-) -Jared ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
You know, you don't have to wait for the 3rd edition... you could always write something yourself and post it on the web, or join the (mostly dormant, unfortunately) Asterisk Documentation Project. :-) -Jared Well, I could, if I _could_! :) I was hoping to learn AEL from the new book... my expression was meant as a lament for the * community. The TFOT book(s) is very cool and AEL would have made it even better. I respect the TFOT authors and a chapter or section from them would have been most welcome. I'm certain they would have done a much better job than I ever could have! -MC ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
All this discussion is pointless. As pointless as the discussion of assembly versus high-level languages decades ago. Except most people rooting for extension.conf don't even have the technical and conceptual amplitude to understand what they are talking about... they just want some telephony system to make a quick buck, or save in their LD calls... A lot of Asterisk is technically and architecturally twisted, and spaghettied, and with many redundant ways of doing the same thing (in different stages of obsolescence, incompleteness, and (un)documented). At least AEL is a step in the right direction (even though it has to adapt itself to the ugliness that exists below..) BarZ Steve Murphy wrote: On Wed, 2007-10-03 at 09:33 -0600, Anthony Francis wrote: Eric ManxPower Wieling wrote: Let us not forget that AEL cannot be stored in a database therefore rendering you unable to utilize realtime. AEL converted into standard extensions.conf syntax in the dialplan. Doesn't this render having used AEL pointless? Absolutely not! Reasons to use AEL: 1. Several semantic checks are done on the AEL that are NOT done if you go straight to extensions.conf. We try to protect you... from yourself. 2. At least one security issue in USAGE is avoided by having AEL compile the corresponding code; as to how many more issues will automatically be handled via AEL in the future, is impossible to say. We'll see. If you keep coding via extensions.conf, be prepared to make corrections... if you do it in AEL, a restart of Asterisk will hopefully suffice, after AEL is updated. 3. Syntax errors are reported by AEL. It is pretty good at catching all omissions and commissions. Better than the extensions.conf parser is. For example, I don't know if we catch it now, but if you accidentally say extem = 3,... instead of exten = 3,... in extensions.conf, that line will silently be dropped. Sure, we could fix this, but to fix ALL possible problems will require an expensive rewrite of the config file parser, from the ground up. 4. You are insulated against any mods to extensions.conf; like the change to ',' instead of '|' in app arguments. No changes to AEL code are necessary. 5. In extensions.conf, you have to feed your dialplan to asterisk to find any problems. AEL provides the standalone parser, aelparse, so you can correct any problems BEFORE feeding it to a living asterisk. 6. AEL is easier to read, IF you take advantage of the ability to use tabs, etc. wisely. Especially for nested code. Staying away from goto as much as possible, and using the flow of control and looping statements will make your code easier to read, compose, and maintain in the future. It means fewer bugs in your code, and overall this all means lower cost. And higher profits. 7. Repetitious entry of extenname, priority, in your tabular extensions.conf can lead to subtle errors that could be hard to find, ESPECIALLY if you resort to using priority NUMBERS instead of n. And, if you ARE so foolish as to use just raw numbers, and you have to insert or delete a line or two, you have to renumber the remaining lines, and heaven help you if you make a simple error, and accidentally skip a number. 8. Work flow. Since aelparse allows you to dump the compiled dialplan in extensions.conf format, you can still use stuff like realtime. You can use this output against machines that don't even have pbx_ael loaded, then, and you should be able to use 1.4 compiled dialplans on 1.2 machines, as long as you are careful about what apps you call, and how you call them. 9. Easier to write code. Good Code. using Goto's in extensions.conf will allow you to do anything you need to do, but it also results in spaghetti style code. While the original author might be able to decrypt it, and maintain it, unless it's really well commented, the next guy to play with it, is going to have a hard time. Following the flow of control thru spaghetti can get your adrenalin flowing-- and side affects from strange cases and leakage in the spaghetti can make some devilishly hard to solve problems. Think of and treat extensions.conf like assembly code. Think of and treat AEL like a high(er) level language. For those who never did the computer science thing, I have just one piece of advise, and ignore this at your peril: your dialplan is a work of computer programming. It's software. If you don't treat it that way, and use good software methodologies, you'll pay your price. murf ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and
Re: [asterisk-users] extensions.conf vs. AEL
On Thursday 04 October 2007 07:07:47 Barzilai Spinak wrote: All this discussion is pointless. As pointless as the discussion of assembly versus high-level languages decades ago. As one of the main architects, I don't find this discussion pointless. My personal opinion of AEL is that it's coming along nicely, but it's still not up to the point where I would consider using it for most dialplans. That day will come, and I'm working with Steve Murphy to ensure that it does. One thing that you did not see in the language wars of yesteryear was of the assembly language changing in subtle ways, to make development in the higher level language easier or more consistent, as is the case with AEL and extensions.conf. Except most people rooting for extension.conf don't even have the technical and conceptual amplitude to understand what they are talking about... they just want some telephony system to make a quick buck, or save in their LD calls... This seems like a rather harsh indictment, when it really comes down to the fact that writing in extensions.conf works today, and while AEL does work to a certain extent, many people would rather not have to rewrite their dialplans every time an architectural flaw is found in AEL that limits what they can do; ergo, they write their stuff in extensions.conf until the point where AEL becomes more trusted. A lot of Asterisk is technically and architecturally twisted, and spaghettied, and with many redundant ways of doing the same thing (in different stages of obsolescence, incompleteness, and (un)documented). As a maintainer and architect, I would very much like to hear specific criticisms on how you think this could be improved. We try to deprecate specific functionality that doesn't work correctly or which could be expressed in better ways, which allows users of the system to transition away from those expressions to better methods over a period of time, instead of immediately at an upgrade; we believe this facilitates adoptions and upgrade processes. At least AEL is a step in the right direction (even though it has to adapt itself to the ugliness that exists below..) All high level languages have to adapt themselves to the ugliness below. That is part of what makes them high-level languages. -- Tilghman ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
In my opinion the dialplan isn't where that logic belongs. /b On Oct 3, 2007, at 12:32 AM, Yehavi Bourvine +972-8-9489444 [EMAIL PROTECTED] wrote: Hello, I see that most people are using the extensions.conf syntax (most of the examples and questions here use that syntax). recently I've translated all my dial plan to AEL syntax and I find it much easier, especially when you need IFs. Why most people don't use it? Am I missing something? Thanks! __Yehavi: ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Where would you suggest all the logic goes Brian? Garth Garth van Sittert BSc (Physics Computer Science) - Main: 08600 BITCO Phone: +27 (0)11 875 6900 Fax:+27 (0)11 875 6901 Mobile: +27 (0)83 791 6662 Email: [EMAIL PROTECTED] MSN:[EMAIL PROTECTED] Web:www.bitco.co.za Brian West wrote: In my opinion the dialplan isn't where that logic belongs. /b On Oct 3, 2007, at 12:32 AM, Yehavi Bourvine +972-8-9489444 [EMAIL PROTECTED] wrote: Hello, I see that most people are using the extensions.conf syntax (most of the examples and questions here use that syntax). recently I've translated all my dial plan to AEL syntax and I find it much easier, especially when you need IFs. Why most people don't use it? Am I missing something? Thanks! __Yehavi: ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
You have various scripting languages things like that can go in! /b On Oct 3, 2007, at 4:12 AM, Garth van Sittert wrote: Where would you suggest all the logic goes Brian? Garth Garth van Sittert BSc (Physics Computer Science) - Main: 08600 BITCO Phone: +27 (0)11 875 6900 Fax: +27 (0)11 875 6901 Mobile: +27 (0)83 791 6662 Email: [EMAIL PROTECTED] MSN: [EMAIL PROTECTED] Web:www.bitco.co.za Brian West wrote: In my opinion the dialplan isn't where that logic belongs. /b On Oct 3, 2007, at 12:32 AM, Yehavi Bourvine +972-8-9489444 [EMAIL PROTECTED] wrote: Hello, I see that most people are using the extensions.conf syntax (most of the examples and questions here use that syntax). recently I've translated all my dial plan to AEL syntax and I find it much easier, especially when you need IFs. Why most people don't use it? Am I missing something? Thanks! __Yehavi: ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Yehavi Bourvine +972-8-9489444 wrote: Hello, I see that most people are using the extensions.conf syntax (most of the examples and questions here use that syntax). recently I've translated all my dial plan to AEL syntax and I find it much easier, especially when you need IFs. Why most people don't use it? Am I missing something? I just think its the default so probably many new people to Asterisk start there and then possibly move over to AEL or AGI scripts later on as needs become more complex... For those that have been in the Asterisk community for a longer period of time, the traditional flat line script was all that was available until AEL came along as far as I know. I wrote an automated dialplan generator so much of *our* systems had the traditional flat script because its much easier to produce that traditional asterisk script from a GUI that generates script for you. I prefer pascal syntax personally, so we use a pascal based AGI/FastAGI engine that I wrote for much of our more advanced logic. In the end, it probably comes down to preference and need, I would think. Nice to be proficient in writing it all; flat scripts, AEL, AGI/FastAGI/Manager API (using your programming/script language of prefernce)this way we can have more tools to solve more problems for our customers or company. --- Warm Regards, Lee ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Lee Jenkins wrote: Yehavi Bourvine +972-8-9489444 wrote: Hello, I see that most people are using the extensions.conf syntax (most of the examples and questions here use that syntax). recently I've translated all my dial plan to AEL syntax and I find it much easier, especially when you need IFs. Why most people don't use it? Am I missing something? I just think its the default so probably many new people to Asterisk start there and then possibly move over to AEL or AGI scripts later on as needs become more complex... For those that have been in the Asterisk community for a longer period of time, the traditional flat line script was all that was available until AEL came along as far as I know. I wrote an automated dialplan generator so much of *our* systems had the traditional flat script because its much easier to produce that traditional asterisk script from a GUI that generates script for you. I prefer pascal syntax personally, so we use a pascal based AGI/FastAGI engine that I wrote for much of our more advanced logic. In the end, it probably comes down to preference and need, I would think. Nice to be proficient in writing it all; flat scripts, AEL, AGI/FastAGI/Manager API (using your programming/script language of prefernce)this way we can have more tools to solve more problems for our customers or company. --- Warm Regards, Lee Let us not forget that AEL cannot be stored in a database therefore rendering you unable to utilize realtime. -- Thank you and have a wonderful day, Anthony Francis Rockynet VOIP (303) 444-7052 opt 2 [EMAIL PROTECTED] ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Wouldnt that take a very large portion of datapower, to startup the parsers and such, instead of having the whole dialplan natively in Asterisk. We always try to do as much as possible in dialplan, so that we are not reliant on external scripts. Kind Regards Jon Leren Schøpzinsky -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brian West Sent: 3. oktober 2007 15:18 To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] extensions.conf vs. AEL You have various scripting languages things like that can go in! /b On Oct 3, 2007, at 4:12 AM, Garth van Sittert wrote: Where would you suggest all the logic goes Brian? Garth Garth van Sittert BSc (Physics Computer Science) - Main: 08600 BITCO Phone: +27 (0)11 875 6900 Fax: +27 (0)11 875 6901 Mobile: +27 (0)83 791 6662 Email: [EMAIL PROTECTED] MSN: [EMAIL PROTECTED] Web:www.bitco.co.za Brian West wrote: In my opinion the dialplan isn't where that logic belongs. /b On Oct 3, 2007, at 12:32 AM, Yehavi Bourvine +972-8-9489444 [EMAIL PROTECTED] wrote: Hello, I see that most people are using the extensions.conf syntax (most of the examples and questions here use that syntax). recently I've translated all my dial plan to AEL syntax and I find it much easier, especially when you need IFs. Why most people don't use it? Am I missing something? Thanks! __Yehavi: ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Let us not forget that AEL cannot be stored in a database therefore rendering you unable to utilize realtime. AEL converted into standard extensions.conf syntax in the dialplan. ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
On Oct 3, 2007, at 9:39 AM, Jon Schøpzinsky wrote: Wouldnt that take a very large portion of datapower, to startup the parsers and such, instead of having the whole dialplan natively in Asterisk. We always try to do as much as possible in dialplan, so that we are not reliant on external scripts. Kind Regards Jon Leren Schøpzinsky Stepping thru the dialplan line by line is one of the most inefficient things in Asterisk... Every priority it checks and rechecks the dialplan and priorty at the very least 5 times per priority. I think this is one thing being addressed in 1.4 and later. Dialplan logic isn't a language in my opinion. /b ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Lee Jenkins wrote: Why most people don't use it? Am I missing something? I think it looks too much like C. Doug -- Ben Franklin quote: Those who would give up Essential Liberty to purchase a little Temporary Safety, deserve neither Liberty nor Safety. ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Eric ManxPower Wieling wrote: Let us not forget that AEL cannot be stored in a database therefore rendering you unable to utilize realtime. AEL converted into standard extensions.conf syntax in the dialplan. Doesn't this render having used AEL pointless? -- Thank you and have a wonderful day, Anthony Francis ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
Its just a different way to express the same thing in a more fluid way. /b On Oct 3, 2007, at 10:33 AM, Anthony Francis wrote: Doesn't this render having used AEL pointless? ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
To each his own. I like the flat files personally, they are more fluid to me. Thanks, Steve Brian West wrote: Its just a different way to express the same thing in a more fluid way. /b On Oct 3, 2007, at 10:33 AM, Anthony Francis wrote: Doesn't this render having used AEL pointless? ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
I'm growing fond of XML. /b On Oct 3, 2007, at 10:39 AM, Steve Totaro wrote: To each his own. I like the flat files personally, they are more fluid to me. Thanks, Steve ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] extensions.conf vs. AEL
On Wed, 2007-10-03 at 09:33 -0600, Anthony Francis wrote: Eric ManxPower Wieling wrote: Let us not forget that AEL cannot be stored in a database therefore rendering you unable to utilize realtime. AEL converted into standard extensions.conf syntax in the dialplan. Doesn't this render having used AEL pointless? Absolutely not! Reasons to use AEL: 1. Several semantic checks are done on the AEL that are NOT done if you go straight to extensions.conf. We try to protect you... from yourself. 2. At least one security issue in USAGE is avoided by having AEL compile the corresponding code; as to how many more issues will automatically be handled via AEL in the future, is impossible to say. We'll see. If you keep coding via extensions.conf, be prepared to make corrections... if you do it in AEL, a restart of Asterisk will hopefully suffice, after AEL is updated. 3. Syntax errors are reported by AEL. It is pretty good at catching all omissions and commissions. Better than the extensions.conf parser is. For example, I don't know if we catch it now, but if you accidentally say extem = 3,... instead of exten = 3,... in extensions.conf, that line will silently be dropped. Sure, we could fix this, but to fix ALL possible problems will require an expensive rewrite of the config file parser, from the ground up. 4. You are insulated against any mods to extensions.conf; like the change to ',' instead of '|' in app arguments. No changes to AEL code are necessary. 5. In extensions.conf, you have to feed your dialplan to asterisk to find any problems. AEL provides the standalone parser, aelparse, so you can correct any problems BEFORE feeding it to a living asterisk. 6. AEL is easier to read, IF you take advantage of the ability to use tabs, etc. wisely. Especially for nested code. Staying away from goto as much as possible, and using the flow of control and looping statements will make your code easier to read, compose, and maintain in the future. It means fewer bugs in your code, and overall this all means lower cost. And higher profits. 7. Repetitious entry of extenname, priority, in your tabular extensions.conf can lead to subtle errors that could be hard to find, ESPECIALLY if you resort to using priority NUMBERS instead of n. And, if you ARE so foolish as to use just raw numbers, and you have to insert or delete a line or two, you have to renumber the remaining lines, and heaven help you if you make a simple error, and accidentally skip a number. 8. Work flow. Since aelparse allows you to dump the compiled dialplan in extensions.conf format, you can still use stuff like realtime. You can use this output against machines that don't even have pbx_ael loaded, then, and you should be able to use 1.4 compiled dialplans on 1.2 machines, as long as you are careful about what apps you call, and how you call them. 9. Easier to write code. Good Code. using Goto's in extensions.conf will allow you to do anything you need to do, but it also results in spaghetti style code. While the original author might be able to decrypt it, and maintain it, unless it's really well commented, the next guy to play with it, is going to have a hard time. Following the flow of control thru spaghetti can get your adrenalin flowing-- and side affects from strange cases and leakage in the spaghetti can make some devilishly hard to solve problems. Think of and treat extensions.conf like assembly code. Think of and treat AEL like a high(er) level language. For those who never did the computer science thing, I have just one piece of advise, and ignore this at your peril: your dialplan is a work of computer programming. It's software. If you don't treat it that way, and use good software methodologies, you'll pay your price. murf smime.p7s Description: S/MIME cryptographic signature ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
[asterisk-users] extensions.conf vs. AEL
Hello, I see that most people are using the extensions.conf syntax (most of the examples and questions here use that syntax). recently I've translated all my dial plan to AEL syntax and I find it much easier, especially when you need IFs. Why most people don't use it? Am I missing something? Thanks! __Yehavi: ___ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users