My Profile Photo

Joshua Colp


#VoIP enthusiast, #FibreOP evangelist, #Fintech newbie, #VideoStreaming experimenter


Neutron: An Experiment

When doing Asterisk development I like to have a server around that has test extensions which have defined behavior. It’s useful when testing SIP, dialing, and bridging functionality. Traditionally I’ve run this on a virtual machine on my local network. As of now I’m changing and expanding this.

Neutron is what I’m calling this adventure. It’s a self-updating Asterisk server with test extensions that have defined behavior. You can access it over IPv4 and IPv6 using UDP or TCP. It also provides the ability to use the new Asterisk REST interface without having to mess with Asterisk. Connect a SIP client, connect an ARI application, profit.

When I say self-updating I mean it. The server automatically downloads the latest pjproject trunk and Asterisk 12 branch nightly, rebuilds, cleans out old stuff, and restarts it.

Neutron is also an experiment in having the new chan_pjsip architecture accessible on the public internet. While the instance itself has no ability to place calls to PSTN numbers there is still scanner software attempting to do so. This is a nice way to see what happens and how it handles it.

So what can you do right now?

  • Place calls into neutron over IPv4/IPv6 UDP and TCP.
  • Join a conference bridge.
  • Test NAT situations.
  • Test the Asterisk REST interface.

I have purposely limited this on initial release to see how it behaves in the wild. If things go well I plan on adding additional functionality to test out more of the new PJSIP work and Asterisk itself. Some things might include…

  • SIP inbound registrations
  • SSL and TLS
  • WebRTC
  • HTML5 ARI example (drag’n’drop! everyone loves drag’n’drop!)

But we’ll see how it goes!

So if you want to find out how to attack cough I mean use neutron head to http://neutron.jcn-labs.net/ and give it a go.

If you have any suggestions for improvements, additional test extensions, or feedback don’t hestiate to contact me on Twitter at @joshnet or email me at jcolp@joshua-colp.com.

Cheers,