Re: [asterisk-users] UK -999 dialing issue

2008-02-15 Thread Benny Amorsen
Jared Smith [EMAIL PROTECTED] writes:

 I've been suggesting that for about four years now (long before I ever
 started working for Digium), but the core Asterisk developers tell me it
 will have a very negative impact on Asterisk performance.

The only reason why it has a negative impact is because everything is
reparsed all the time. If the whole file was parsed ahead-of-time,
having switchable regexp syntaxes would only cost a mispredicted jump
each time.

Ahead-of-time parsing is currently impossible because of realtime dial
plans. That's not a showstopper for me personally, because I think the
current realtime dial plan support is a bad idea anyway, but obviously
there are others with different opinions. Another problem is the
ability to add extensions at runtime, but it should not be impossible
to call a parser function before inserting new extensions.


/Benny



___
-- 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] UK -999 dialing issue

2008-02-14 Thread Phil Knighton
Hi Amit
 
OK, the majority of our calls go out via zaptel fxo and pstn lines.
When these are all busy, calls are routed via a VOIP provider here in
the UK.  All activity is recorded in our logs, and I can find no trace
of either 999 or 112 (if since been reminded that in the UK, you can now
also use 112 which is consistent with continental Europe).
 
I can't find a call placed at the relevant time that had these numbers,
even as mid-part of a string.
 
Below is the part which deals with our external calls.  As you can see,
calls are routed out via zap, or VOIP (that's the gradwell bit).  If
someone prefixes a call with 9 it forces it our via VOIP and if
someone dials 999 it is intercepted and sent via the zap channels. If
no zap channel is free, a call on channel 1 is ended and the number
re-dialled.  This makes sure that emergency calls can always be placed
on a landline.

Any ideas would be appreciated!

Phil
 
[softoption-zap]

exten = _0[123456789].,1,NoOp(${EXTEN})
exten = _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)

; The below section will allow for 3 digit BT numbers to be called, by
prefixing them with 9
; For example: 154 is BT Business Faults - dial 9154

exten = _9[123456789]XX,1,NoOp(${EXTEN})
exten = _9[123456789]XX,2,Dial(Zap/g0/${EXTEN:1},,j)

; The below section will allow for 999 Emergency calls to be made. This
will FORCE these calls
; over our BT lines, which will provide CallerID and location
information to the Emergency Operator
; If there are no BT lines free, it will force a call to end and then
dial

exten = 999,1,NoOp(999)
exten = 999,2,Dial(Zap/g0/999,,j)
exten = 999,3,Hangup()
exten = 999,102,SoftHangup(Zap/1-1)
exten = 999,103,Wait(1)
exten = 999,104,Goto(1)

[softoption-gradwell]
exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
exten = _0[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:1},,)
exten = _[1-9]X,1,Dial(IAX2/Gradwell/441353${EXTEN},,)




From: amit salunkhe [mailto:[EMAIL PROTECTED] 
Sent: 14 February 2008 07:44
To: Phil Knighton
Subject: UK -999 dialing issue


HI Phil
Can u send me ur out call context config. Also tell me what
ur using with Asterisk to make out call SIp-Voip or Pstn line with Fxo
card?
also check with this command in ur Asterisk console. sip
show peers so u  can get anybody from out side place such call inbehalf
of u. check who  how many user regsiter with ur Asterisk. if ur using
FXO card then also there is chance to check this.
   also use Mysql for CDR table tocheck who try to call at time. so
u got any hint for this
 
Regards
Amit

___
-- 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] UK -999 dialing issue

2008-02-14 Thread Gordon Henderson
On Thu, 14 Feb 2008, Phil Knighton wrote:

 [softoption-zap]

 exten = _0[123456789].,1,NoOp(${EXTEN})
 exten = _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
 exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
 exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
 exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)

OMG!!!

You're selecting 2 different output channels depending on the number 
dialled!!!

(UK or international)...

That's ... LCR!!!

In  ... Dialplan!!!

And according to a recent thread, that's like ... impossible, not 
recommended, really really hard, with databases and external hardware 
required, etc. (!!!)

(sorry)

Gordon
(dialplan junkie)

___
-- 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] UK -999 dialing issue

2008-02-14 Thread Steve Langstaff

 [softoption-zap]
 
 exten = _0[123456789].,1,NoOp(${EXTEN})
 exten = _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
 exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
 exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
 exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)

Just an aside -

1) For clarity, could you use 'Z' here instead of '[123456789]'?

2) It does not look like you would be able to dial numbers that
start with 0[123456789] and then have subsequent zeros
(e.g. 01xx xxx ) - is that your intent? 


___
-- 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] UK -999 dialing issue

2008-02-14 Thread Thomas Kenyon
Steve Langstaff wrote:
 [softoption-zap]

 exten = _0[123456789].,1,NoOp(${EXTEN})
 exten = _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
 exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
 exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
 exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)
 
 Just an aside -
 
 1) For clarity, could you use 'Z' here instead of '[123456789]'?
 
 2) It does not look like you would be able to dial numbers that
 start with 0[123456789] and then have subsequent zeros
 (e.g. 01xx xxx ) - is that your intent? 
 
Very good point, he probably wants.
exten = _90ZX.,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)

___
-- 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] UK -999 dialing issue

2008-02-14 Thread SIP
Gordon Henderson wrote:
 On Thu, 14 Feb 2008, Phil Knighton wrote:

   
 [softoption-zap]

 exten = _0[123456789].,1,NoOp(${EXTEN})
 exten = _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
 exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
 exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
 exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)
 

 OMG!!!

 You're selecting 2 different output channels depending on the number 
 dialled!!!

 (UK or international)...

 That's ... LCR!!!

 In  ... Dialplan!!!

 And according to a recent thread, that's like ... impossible, not 
 recommended, really really hard, with databases and external hardware 
 required, etc. (!!!)

 (sorry)

 Gordon
 (dialplan junkie)

   
Not impossible. I think the explanation was that it was ugly. And... 
well... that is.  Now, imagine sorting through a list of 500,000 
possible dialing prefixes (something we have) instead of 3 or 4. Tell me 
that would be clean and pretty without a DB lookup.

Anyone can LCR 2 routes in a dialplan, but that's hardly an effective 
example of LCR.

N.

___
-- 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] UK -999 dialing issue

2008-02-14 Thread Benny Amorsen
Steve Langstaff [EMAIL PROTECTED] writes:

 [softoption-zap]
 
 exten = _0[123456789].,1,NoOp(${EXTEN})
 exten = _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
 exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
 exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
 exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)

[..]
 2) It does not look like you would be able to dial numbers that
 start with 0[123456789] and then have subsequent zeros
 (e.g. 01xx xxx ) - is that your intent? 

. does not repeat the previous pattern, it simply matches one or more
of anything. _0Z. will happily match 010.


/Benny



___
-- 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] UK -999 dialing issue

2008-02-14 Thread Tilghman Lesher
On Thursday 14 February 2008 03:39:33 Phil Knighton wrote:
 OK, the majority of our calls go out via zaptel fxo and pstn lines.
 When these are all busy, calls are routed via a VOIP provider here in
 the UK.  All activity is recorded in our logs, and I can find no trace
 of either 999 or 112 (if since been reminded that in the UK, you can now
 also use 112 which is consistent with continental Europe).

 I can't find a call placed at the relevant time that had these numbers,
 even as mid-part of a string.

I had a recent run-in with the provider who provides my toll-free numbers, as
they had gotten a subpoena for the identity of the customer who ran some
toll-frees that were being used for fraudulent purposes.  It turns out that
they had two number transposed prior to getting the subpoena, so not only
did they have the wrong customer, they subpoenaed the wrong provider.

Consider that if the police will not provide you records of the call, they may
have already discovered that they queried the wrong provider.

-- 
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] UK -999 dialing issue

2008-02-14 Thread Steve Langstaff
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On Behalf Of 
 Benny Amorsen
 Sent: 14 February 2008 13:57

 Steve Langstaff [EMAIL PROTECTED] writes:
 
  [softoption-zap]
  
  exten = _0[123456789].,1,NoOp(${EXTEN}) exten = 
  _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
  exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
  exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
  exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)
 
 [..]
  2) It does not look like you would be able to dial numbers that
  start with 0[123456789] and then have subsequent zeros
  (e.g. 01xx xxx ) - is that your intent? 
 
 . does not repeat the previous pattern, it simply matches one 
 or more of anything. _0Z. will happily match 010.

Oops! Yes, I see that now - my fault for confusing Asterisk pattern
matching with RFC3435 pattern matching. Sorry.

___
-- 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] UK -999 dialing issue

2008-02-14 Thread Tilghman Lesher
On Thursday 14 February 2008 07:55:08 SIP wrote:
 Gordon Henderson wrote:
  On Thu, 14 Feb 2008, Phil Knighton wrote:
  [softoption-zap]
 
  exten = _0[123456789].,1,NoOp(${EXTEN})
  exten = _0[123456789].,2,Dial(Zap/g0/${EXTEN},,j)
  exten = _0[123456789].,103,Dial(IAX2/Gradwell/44${EXTEN:1},,)
  exten = _00[1-9].,1,Dial(IAX2/Gradwell/${EXTEN:2},,)
  exten = _90[123456789].,1,Dial(IAX2/Gradwell/44${EXTEN:2},,)
 
  OMG!!!
 
  You're selecting 2 different output channels depending on the number
  dialled!!!
 
  (UK or international)...
 
  That's ... LCR!!!
 
  In  ... Dialplan!!!
 
  And according to a recent thread, that's like ... impossible, not
  recommended, really really hard, with databases and external hardware
  required, etc. (!!!)

 Not impossible. I think the explanation was that it was ugly. And...
 well... that is.  Now, imagine sorting through a list of 500,000
 possible dialing prefixes (something we have) instead of 3 or 4. Tell me
 that would be clean and pretty without a DB lookup.

 Anyone can LCR 2 routes in a dialplan, but that's hardly an effective
 example of LCR.

Right, and as soon as you add func_odbc to the mix, it becomes easy to query
such a database  in the dialplan.

-- 
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] UK -999 dialing issue

2008-02-14 Thread Benny Amorsen
Steve Langstaff [EMAIL PROTECTED] writes:

 Oops! Yes, I see that now - my fault for confusing Asterisk pattern
 matching with RFC3435 pattern matching. Sorry.

Unfortunately inventing a new regex syntax seems to be a favourite
pastime.

Perhaps it would be possible to allow exten = /00.*/,Dial... It might
cause problems with the ex-GF syntax. Another starting character could
mean RFC3435 pattern matching.


/Benny



___
-- 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] UK -999 dialing issue

2008-02-14 Thread Jared Smith
On Thu, 2008-02-14 at 22:32 +0100, Benny Amorsen wrote:
 Perhaps it would be possible to allow exten = /00.*/,Dial... It might
 cause problems with the ex-GF syntax. Another starting character could
 mean RFC3435 pattern matching.

I've been suggesting that for about four years now (long before I ever
started working for Digium), but the core Asterisk developers tell me it
will have a very negative impact on Asterisk performance.  I'd obviously
like to see it use a different character to inform the dialplan parser
that we're using a different pattern matching system, so that we can
limit the performance impact to just those extensions that require it.

But, for now, I've lived to learn to get along with the things that the
dialplan provides.  Don't forget that we have two different regex
operators what we can use inside of an Asterisk dialplan expression. :-)

exten = _X.,1,GotoIf($[${EXTEN} : /#+[2-7][0-9]{3}/]?happy)

-- 
Jared Smith
Community Relations Manager
Digium, Inc.


___
-- 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