Logo
To join TandmX please send an email with the following information to [email protected]
  • Whether you need hosted lines, or you would like to connect an Asterisk switch.
  • If hosted lines, how many?
  • If an Asterisk switch, please send you server's FQDN/Static IP
  • Please send your IAX2 Context / Username (Boilerplate Ex. "from-tandmx")
  • Please generate your own IAX2 MD5 Secret, preferably between 5-12 characters long, and include it in your e-mail
  • Please include your preferred number blocs (you may check for availability here)
Boilerplate Code Links
Creating a local DISA for outbound calls (for previous installs):
Let's say you don't necessarily want to route all calls through TandmX, that's more than understandable. The DISA Subrouting file includes a subroutine that will give you dialtone when called. You may simply call the subroutine by a simple "GoSub". Example: GoSub(dt,s,1) Thats it! Very simple, right?
Converting a former NPSTN Dialplan to TandmX Guide:
To convert a former NPSTN switch to TandmX, first begin by making a backup of your dial plan. You can do this simply by just copying your dialplan file to a different file extension. Example:
cp extensions.conf extensions.conf.OLD

Next, begin by removing the old NPSTN contexts from your NPSTN dialplan that is related to call routing. Examples include the "dt" subroutine, "from-npstn", "dt-route", etc. Simply copy the three main contexts into your dialplan from the TandmX boiler plate code. You will need these three contexts for your switch to place outbound calls, "dt", "find-route", and "from-internal". Proceed to paste these contexts into your switch.
Then, find your global variables. The context should say [globals]. You will need to add your TandmX Authentication Key and Host ID to the global variables to verify calls. Examples:

[globals]
tandmxkey=(REPLACE_WITH_AUTH_KEY)
tandmxhostid=10


These codes tell the routing system how to authenticate, verify, and route your call. Each switch owner has a user account. That account is defined by there authentication key. However, one user account may own more than one host, requiring the need for a Host ID to deferintiate between multiple hosts owned by the same user.

Now, let's move to "iax.conf". Here we will need to add our inbound user, generate a secret, and place calls! Simple, right?
Create an IAX2 context of type user, or copy the boilerplate code's "iax.conf" "from-tandmx" context and settings.
Example IAX2 User:
[from-tandmx]
type=user
context=local
auth=md5
secret=RandomPhrase123


In the above sample code, you may want to change your username. Just change the context name from "from-tandmx" to whatever you would like. Generate your own secret, you may use an online character generator. Stray away from fancy characters, as they might mess with URL encoding of the address. Accepted characters are a-z, A-Z, 0-9.

Once you have added the above code, your switch should be able to place and receive calls on TandmX!