Koozali.org: home of the SME Server

SAIL - a couple of thoughts

Offline SARK devs

  • ****
  • 2,806
  • +1/-0
    • http://sarkpbx.com
SAIL - a couple of thoughts
« Reply #45 on: May 25, 2006, 12:27:17 AM »
Quote
Oh, and another thing.... (You must be getting sick of me by now!  )
Not a bit of it.  Your input is very much appreciated - as is everyone's.  We aren't at all precious about the product; it's still very young, and we're fortunate that the architecture allows us to change it very rapidly. Keep posting.

Quote
I think it's a bad thing that Asterisk answers incoming calls before either the extension answers or voicemail kicks in.
Agreed.  The answer code is the oldest in SAIL.  It was the first stuff we did and it isn't as smart as it could be.  In any event, it's due a rework and it will get looked at when we finish testing the "outcomes" code for extensions and aliasing, which should just be in time to dovetail nicely with the BRI integration and zapata rework.  (plan?  there's a plan?).   :-)

Best

WillKemp

SAIL - a couple of thoughts
« Reply #46 on: May 27, 2006, 12:06:52 PM »
Hi!

I think forcing 4-digit extension numbers is a bad thing. In a small business with, say, 10 phones, it's ridiculous to have to dial a 4-digit number to call one of those 10 extensions, when a 2-digit number would be adequate.

I think extension numbers also should be able to start with any digit - i.e., including '*' and '#'. I know the "standard" thing for PABXs is to have to dial '0' or something for an outside line, but i think it would be much more sensible to have to dial '*' followed by the (2-digit?) extension number for an inside line. That way, you could dial exactly as you would a home phone - plus internal extensions. It would significantly reduce the number of keypresses many workers would have to make in a day (and put an end to the irritation of automatically going to dial the '0' when you're at home! ;-) )

We're no longer constrained by the limitations of the old PABXs, so we should improve on them where we can, i reckon.

Will

WillKemp

SAIL - a couple of thoughts
« Reply #47 on: May 28, 2006, 09:18:24 AM »
Scheduling...

I've never come across any discussion of this anywhere, but i made a passing reference to starting Asterisk in the stuff about it not forking.

I always use nice -n -20 asterisk when i start up Asterisk. It seems sensible to set the scheduling priority as high as possible, in an attempt to give it the best possible chance to do any signal processing smoothly. I don't know if it really makes any difference though.

Does anyone else think there's any point to this?

hoopla

SAIL - a couple of thoughts
« Reply #48 on: May 29, 2006, 08:31:14 PM »
Quote from: "selintra"
We aren't at all precious about the product; it's still very young, and we're fortunate that the architecture allows us to change it very rapidly. Keep posting.

I'm not sure if I've messed up trying to install, or if one of these rapid changes has broken something.

I try "rpm -Uvh smeserver-asterisk-1.2.3-1.i686.rpm" which gets me "error: Failed dependencies:
        smeserver-asterisk-zappri is needed by smeserver-asterisk-1.2.3-1.i686" but I already installed that. Just to be sure, I try again:
"rpm -Uvh smeserver-asterisk-zappri-MPP-1.2.2-1.i686.rpm"

"Preparing...                ########################################### [100%]
        package smeserver-asterisk-zappri-MPP-1.2.2-1 is already installed"

So what is missing?

Offline SARK devs

  • ****
  • 2,806
  • +1/-0
    • http://sarkpbx.com
SAIL - a couple of thoughts
« Reply #49 on: May 29, 2006, 09:13:52 PM »
Hello Hoopla,

The dependency it's asking for is smeserver-asterisk-zappri NOT smeserver-asterisk-zappri-MPP, which is what you have installed.  smeserver-asterisk-1.2.3-1  had a prereq for zappri (no MPP).  smeserver-1.2.3-2 will run with either.  So...

Install smeserver-asterisk-1.2.3-2.i686.

Kind Regards

Selintra

Offline SARK devs

  • ****
  • 2,806
  • +1/-0
    • http://sarkpbx.com
SAIL - a couple of thoughts
« Reply #50 on: May 30, 2006, 06:19:03 AM »
Quote
I think forcing 4-digit extension numbers is a bad thing. In a small business with, say, 10 phones, it's ridiculous to have to dial a 4-digit number to call one of those 10 extensions, when a 2-digit number would be adequate.


Hi Will,

You can have short numbers and asterisks and hashes if you wish, simply by declaring them as aliases.  

Best

WillKemp

SAIL - a couple of thoughts
« Reply #51 on: May 30, 2006, 10:21:59 AM »
Quote from: "selintra"
You can have short numbers and asterisks and hashes if you wish, simply by declaring them as aliases.

That's very clumsy, complicated and confusing way of doing something that ought to be simple!

Doing stuff like that makes maintenance more difficult too. And it also ties up a series of extension numbers unnecesarily (thinking in terms of pattern matching on 1st or 1st and 2nd digit, etc).

Offline SARK devs

  • ****
  • 2,806
  • +1/-0
    • http://sarkpbx.com
SAIL - a couple of thoughts
« Reply #52 on: May 30, 2006, 11:31:26 AM »
Quote
That's very clumsy, complicated and confusing way of doing something that ought to be simple!


Hello Will,

Heres the long answer  ;-)

Keys are allocated as meaningless unique digit strings in keeping with Boyce-Codd entity integrity.  Semantics, even convenient ones, should not be allocated to primary keys.  Furthermore, we do not want to complicate the mainline with decision making code based upon any semantic constructs mapped onto number series, particularly any of range or form.  

SAIL is about speed and economy of execution.  Nothing else (and we've benchmarked 'em all) comes even close to us on path length and economy of resource at run time.  However we DO have to handle the need for short "feature key" sequences such as CFIM, CFBS etc etc.  In an earlier post you referred to us being free to challenge traditional ways of doing telephony.  Well that's true but not at the risk of steepening the end-client's learning curve.   PBX users are accustomed to the switches working in a certain way (probably with Definity being the World Wide dejour standard) and we would only challenge that if we felt there were very large gains to be made.

Aliasing allows us to give the SOHO user a simple semantic mapping which is indistinguishable to them from a real extension. It also runs blindingy quickly because it involves a single in-memory  foreign-key/primary match.  

The key structure gives us unlimited headroom without compromise so we can handle a system from 2 phones to 20000 and beyond (given enough resource) without system change.   The 4-digit limit is purely front-end.  The back-end recognises no such limit.  It also recognises that traditional PBX's use *nn and shortcodes for system commands and users are used to that and comfortable with it.

With SAIL, we are absolutely obsessed with two things; speed of execution at run-time and regressable, manageable code.  None of the other asterisk generators can demonstrate either of these things today and that's why we believe SME/SAIL is the ONLY (strike that - Bicom is also very close although it doesn't install/de-install as competently as we do) credible production-capable asterisk workbench out there right now.    

On the issue of manageable code (which you didn't raise but is part of the overall answer), the acid test has to be this. -  Can you regress a new release easily and quickly if it fails?  Because if you can't then you better have shit hot lawyers or a very fast car.  Customers will tolerate an on-line system being down for hours or even a day or two in some circumstances.  Try taking away their phones for even a few minutes and you'll very quickly grasp the legal concept of liquidated damages.

We've sweated blood on SAIL and Asterisk itself, bringing the packaging,  distribution and performance to a level where it can  safely be distributed to none-technical end-customers.  We won't compromise that with number series management or anything else which dilutes the underlying simplicity and purity of the mainline.

I'll get off me soap box now.

:-)

Best

WillKemp

SAIL - a couple of thoughts
« Reply #53 on: May 30, 2006, 11:59:37 AM »
Quote from: "selintra"
Heres the long answer  ;-)

Thanks for that.

I'm convinced! ;-)

Offline SARK devs

  • ****
  • 2,806
  • +1/-0
    • http://sarkpbx.com
SAIL - a couple of thoughts
« Reply #54 on: May 30, 2006, 12:23:20 PM »
Sorry mate - I've stopped smoking and it's making me a bit aggressive.  There's blood up the walls here in the office, the wife's gone back to her mother's and the dog's gone missing.  I wouldn't mind, but I really miss the dog.

Best

WillKemp

SAIL - a couple of thoughts
« Reply #55 on: June 04, 2006, 03:47:03 AM »
Quote from: "WillKemp"

Now... Something a little worrying that i noticed today when i rebooted my server. During the bootup process, when all the services are scrolling up the screen with [ok] on the right hand side, it gets to Asterisk and stops. No [ok], no nothing.

Switching to another virtual terminal, i did asterisk -r and found Asterisk was running. It had obviously failed to fork and become a daemon from the rc script. I killed it and restarted it with

nice -20 asterisk >/dev/null 2>&1 &

which puts it in the background whether it wants to or not!

It was just lucky i was booting with a monitor that particular time, as i normally wouldn't be.

I'm wondering if it's something in my configs, because it won't fork and background on my laptop, either - and hasn't been doing so for a while. If it is, i can't begin to imagine what.

Well, i finally got round to working out what it was in the configs that causes that problem. If you add the following lines to asterisk.conf in an otherwise unmodified sample /etc/asterisk , it happens:

Code: [Select]
[options]
verbose = 4       ; Verbosity level for logging (- v)


I've posted a bug report to bugs.digium.com .

WillKemp

SAIL - a couple of thoughts
« Reply #56 on: June 04, 2006, 11:58:04 PM »
The response to the Asterisk bug report:

Quote
This is known behavior.  I have brought it up to Mark before and he likes
it this way (using the verbose option implies not to fork).

To work around this issue, you can use alwaysfork=yes in the [options]
section of asterisk.conf, or start asterisk with the -F option.


It might be a good idea to include alwaysfork=yes in asterisk.conf in SAIL.

Offline SARK devs

  • ****
  • 2,806
  • +1/-0
    • http://sarkpbx.com
SAIL - a couple of thoughts
« Reply #57 on: June 06, 2006, 07:24:22 AM »
Thanks Will

We have to rework the startups as part of "Cologne" so I'll look at it there.

Best

Jeff