My "One for All" Ruby plan ** Updated 08-Oct-08

Catalog of dial plans
Aaron
Site Admin
Posts: 4652
Joined: Thu Jul 12, 2007 12:13 am

Post by Aaron » Sun Oct 12, 2008 5:37 am

MikeTelis wrote:Personally, I don't like this approach. MSS extension number is 8 or 10 digits long which is very incovenient, by my standards. I'd prefer 2 or 3-digit extension numbers, it's more than enough for everybody's needs.
Hi Mike,

There was already a request put in to change the extension length a few weeks ago and it has been actioned. The only requirement for an extensions now is that it is greater than 4 characters in length. Having extensions of 2 or 3 characters in length only makes sense where a user has their own domain name to avoid the numbers being allocated pretty much straight away and making those that missed out annoyed.

Regards,

Aaron

MikeTelis
Posts: 1582
Joined: Wed Jul 30, 2008 6:48 am

Post by MikeTelis » Sun Oct 12, 2008 8:19 am

Hi Aaron,

unless it's a local version or own domain, there is no way you can satisfy all your users. You will run out of 4-digit extensions sooner or later, right? :wink:

I hardly can imagine a MSS user who needs more than 100 extensions and from this point of view, aliasing in form of speed dial entries (like I suggested in my previous post) would be the best solution.

Of course, I'm not suggesting that you make extension number 7, 8 or 10 digits min. Since you allow a user to pick their extension number(s) provided the number they want is still available, they will prefer something they can easily remember. For example, DL number, cell phone number, library account or smth like that. Phone numbers can be 5, 6, 7 or 8 digit, depending on country / city. I think that your decision is very flexible and probably the best.

Mike

AndrewNYC
Posts: 1
Joined: Tue Nov 25, 2008 7:48 am

great dial plan, but a small problem

Post by AndrewNYC » Tue Nov 25, 2008 4:18 pm

Thanks for providing this dial plan, it seems to work great!

However, my ruby skills are a little weak, and I've run into a small problem with the dial plan:

On incoming (PSTN to SIP) calls, the caller ID name does not seem to get received properly on my phone. Instead, both the name and number fields show the incoming callers number. (however, if I look on the Call Detail report on mysipswitch.com, there is name information available, or at least the city,state listed for IN, but not OUT)

Anyone know how I can fix this? Thanks!

Andrew


Edit: I deleted all the CallerID code and now my caller ID is working the way I want it!

paulies
Posts: 97
Joined: Mon Jul 28, 2008 11:09 am

Post by paulies » Thu Feb 19, 2009 7:15 pm

Hi All,

When I try the add the code at the begining of this thread I get this error


Ruby dial plans cannot contain "require ", "include", "::", "`" or "system".

Any idea what I am doing wrong

Thanks Paul

rapido
Posts: 14
Joined: Tue Jan 15, 2008 7:42 pm

Post by rapido » Thu Mar 05, 2009 5:44 pm

[quote="paulies"]Hi All,

When I try the add the code at the begining of this thread I get this error


Ruby dial plans cannot contain "require ", "include", "::", "`" or "system".

Any idea what I am doing wrong

Thanks Paul[/quote]

Hi there,

I will reply to you as no-one else bothered.

You need to look thro' the code and find the word "required" in it, change it to "reqd" or anything else.

Then the code will save perfectly.

However the code is more trouble that it is worth.

For example, I want to be able to dial backdoor numbers via Gizmo by dialling 0101 plus the US number.

However the code insists on changing it to "44101" (my country code is 44, and it seems to assume that it is a UK national number).

It also does an Enum lookup (not needed for backdoor numbers - they are free anyway). Then after all that, it decides to try and route it via my default provider "0", which doesn't work either.

What a mess!

There is also no way to automatically put an STD or 'area' code in front of numbers starting 2 to 9, you have to dial the full national number.

Dialling a UK number starting 011 (e.g. for calling someone in area codes starting 011), it somehow changes that to "00" as well... This is because it accepts 00, 011 and 810 as the IDD access prefix. On the assumption that the user is simultaneously in Europe, North America and Russia.

By the way, the "local area code" option has seemingly nothing to do with area codes, or local dialling codes.

It's impressive coding, but too much trouble for the occasional telephone user, who wants their own simple dialplans... with Enum too (on eligible calls only).

-regards
rapido

rod178
Posts: 104
Joined: Sun Apr 12, 2009 12:41 pm
Location: Australia

Post by rod178 » Mon Apr 13, 2009 3:54 pm

I'm investigating using this dial plan.
I want to incorporate additional functionality as follows:

Test for VSP availabilty and fallback to a second vsp if required.
- Would vsp1.isAvailable() determine VSP availability?
-- vsp1="provider1" vsp2="provider2 etc
- the intent would be to automatically fallback to vsp2 if vsp1 not available
-- via case construct
- code would be placed immediately before the below

thanks for any advice to get me started


# Speeddial = { "0" => "303@sip.blueface.ie", "1" => "**500@voxalot.com" }
Speeddial = {
"9901" => "613@fwd.pulver.com", # Echo test USA
"9949" => "enum-echo-test@sip.nemox.net", # Echo test Germany
"9944" => "sip:904@mouselike.org", # Call quality test UK
"303" => "303@sip.blueface.ie", # Calls speaking time @ blueface
"612" => "612@fwd.pulver.com" # Calls speaking time @ pulver
}

# Providers table.
#
# Syntax: "Key" => "[Prefix]@Provider"
#
# Where:
# Key A single digit, 0 being the default.
# Prefix Optional prefix that needs to be added to the dialed number.
# Provider Provider by name, as listed in MySipSwitch configuration.
#
# You can override the provider by dialing a number with the prefix *1 and then
# the key. For example:
#
# *1412125553456 dials 12125553456 using the provider at key 4
#
# VSPtable = { "0" => "@ provider1", "1" => "@ provider2" }
VSPtable = {
"0" => "00@futurenine", # default provider (prefix numbers with 00)
"1" => "02@futurenine", # Future Nine grey route
"2" => "03@futurenine", # Future Nine white route
"3" => "04@futurenine", # Future Nine premium route
"4" => "*@voxalot", # voxalot (prefix with '*')
"5" => "@example" # Example provider, without prefix

rod178
Posts: 104
Joined: Sun Apr 12, 2009 12:41 pm
Location: Australia

Post by rod178 » Tue Apr 14, 2009 6:49 am

Doing some more searching I have found

sys.Dial("vsp1&vsp2&vsp3")

I am supposing that if vsp1 is 'dead' then an attempt will be made to call out on vsp2.

User avatar
TheFug
Posts: 914
Joined: Sat Oct 06, 2007 8:23 am
Location: The Netherlands, North-Holland

Post by TheFug » Tue Apr 14, 2009 5:58 pm

rod178 wrote:Doing some more searching I have found

sys.Dial("vsp1&vsp2&vsp3")

I am supposing that if vsp1 is 'dead' then an attempt will be made to call out on vsp2.
That should be:

sys.Dial("vsp1|vsp2|vsp3")

I just saw this in an other post, the & rings all providers at the same time.
Thanks, The Fug.

gear: my ISP's Zyxel Modem/Router in bridge, Sitecom WL309 Router, Siemens Gigaset 301D

rod178
Posts: 104
Joined: Sun Apr 12, 2009 12:41 pm
Location: Australia

Post by rod178 » Wed Apr 15, 2009 8:08 am

paulies wrote:Hi All,

When I try the add the code at the begining of this thread I get this error


Ruby dial plans cannot contain "require ", "include", "::", "`" or "system".

Any idea what I am doing wrong

Thanks Paul
I too get this message when I endeavour to run the script at the beginning of this thread. I've seached for the 'offending' terms. They do not exist in the code !!

Could anyone advise how to resolve this problem?

Dan
Posts: 8
Joined: Sun May 17, 2009 12:35 pm

Post by Dan » Sun May 17, 2009 12:41 pm

rod178 wrote:
paulies wrote:Hi All,

When I try the add the code at the begining of this thread I get this error


Ruby dial plans cannot contain "require ", "include", "::", "`" or "system".

Any idea what I am doing wrong

Thanks Paul
I too get this message when I endeavour to run the script at the beginning of this thread. I've seached for the 'offending' terms. They do not exist in the code !!

Could anyone advise how to resolve this problem?
Hi,

this is answerd already, but as i missed it & figured it out again on my own I thought it may be worth restating:

in the first few lines of code there is this line:

Code: Select all

# Specifies the host name required to place a local (MSS to MSS) call.
change 'required' to needed (or anything else) & it will fix the issue.

Post Reply