TelisWizard (introducing a GUI dial plan; no Ruby required)

Many SIP Sorcery users have reason to be grateful to the resident Ruby expert Mike Telis and his Flexible table-controlled dial plan (version 2). This dial plan has saved many users from having to dive headlong into Ruby programming in order to set up a speed dial or set the rules for how they forward through their different providers. After seeing how popular the dial plan was becoming I thought it would be a good idea to incorporate it into the sipsorcery Silverlight portal (and eventually the AJAX portal). That would mean the users of Mike’s dial plan would not need to do any Ruby programming at all which I get the feeling a large number would appreciate.

The point of this post is to announce that the sipsorcery Silverlight portal now does include a new dial plan option that is based around a slightly modified version of Mike’s dial plan, the reason for the slight modification is to do with the practicalities of designing the GUI. The new dial plan option is called TelisWizard (the full name being a bit of a mouthful).

The dial plan has 6 sections which correspond to the same sections in Mike’s original plan:

  • Speed dials – numbers that can be set for commonly dialled destinations like family members,
  • Dial plan provider – entries for existing SIP or Google Voice provide entries that can be set for prefix dialling and configured for use in routes,
  • Routes – these are what determine how outbound calls get routed. A pattern is specified that attempts to match the dialled number and when one if found the route is used for the call,
  • ENUM – a way to map PSTN numbers to a SIP URI (kind of like a speed dial but for PSTN numbers),
  • CNAM – a way to map incoming numbers to common names (sort of the opposite to ENUM),
  • Options – a number of handy options for use in the dial plan.

The GUI has a help panel at the bottom of each screen to provide assistance.

The Ruby that’s actually running the dial plan is hosted in the sipsorcery repository on github.

I suspect there are still a few things to iron out with the GUI and the dial plan to make it simpler to use and I’d encourage anyone who is already using Mike’s existing dial plan to try it out and provide feedback on the forums.

And of course a massive thank you to Mike Telis for not only the huge number of hours he put into writing and testing the script but the seemingly endless support he provides to questions that people ask about it!

  1. AC’s avatar

    This is awesome, I hope somebody posts a tutorial soon, as I can’t figure out how to get it to work, and I’m unable to view the TelisWizard thread in the forum.


  2. Qub’s avatar

    HI. I wish the telisWizard allow to set CID prefix for incoming calls to see what sip provider the call is using.

    and a option to set google voice numbers

    thanks for this awesome telis wizard


  3. sw’s avatar

    Are we able to make calls among SipSorcery users without going through GV nor any DID number? Or at least among SipSorcery sub accounts within the same user?

    Currently my own dial plan’s “speed dial” portion is designed for sub accounts to call each other without going through GV nor any provider’s DID.


  4. Qub’s avatar

    SW how you config the speed dial to be able to call each local extension? without using dids or gv ?


    1. sw’s avatar

      Here’s the basic idea: when you see the dialed number is *1, *2, … you switch to corresponding your sub account. No GV or DIDs are involved.
      speed_dial = {
      ‘*1’ => ‘subacct1’,
      ‘*2’ => ‘subacct2’,
      ‘*3’ => ‘subacct3’,
      ‘*4’ => ‘subacct4’

      dst_num = req.URI.User #destination number

      case dst_num
      when /^*d$/ #speed dial
      local_receiver = speed_dial[dst_num.to_str]
      sys.Log(“speed_dial: #{dst_num}=>#{local_receiver}”)
      sys.Dial(“#{local_receiver}@local”,60) # ring local user


    2. Seth Wisely’s avatar

      Thanks Mike, I have learned much… and much further yet remains.


    3. Seth Wisely’s avatar

      natty nuked my moonlight.. soon I shall toy with all the buttons.. I mean wizard



Your email address will not be published. Required fields are marked *