Inside the Asterisk

The Gutting of ODBC in Asterisk

When Asterisk 13.8.0 gets released, it will contain a large-scale change to the ODBC code. Those of you that use ODBC for your realtime configuration will either see no change or a performance improvement. The big change is how Asterisk manages ODBC connections: it doesn’t do it anymore. Why remove ODBC connection management? Like most

Read More

Converting from chan_agent to app_agent_pool

The move from chan_agent to app_agent_pool The idea behind chan_agent  was simple.  The agent channel created by chan_agent  acts as a proxy for the corresponding “real” channel which is logged in as the agent.  When the call connected to the agent channel is done, the proxied “real” channel goes back to waiting for the next

Read More

Integrating Asterisk with StatsD

Statistics all the Things It’s often useful to know what is happening on a production Asterisk server. While gathering machine statistics – such as disk I/O, CPU and memory usage, and other characteristics – is a relatively well understood problem, that isn’t always sufficient. It’s often useful to correlate what is happening inside of Asterisk

Read More

The PJSIP Outbound Registration ‘line’ Option

Outbound SIP registrations are a commonly used practice in Asterisk. They allow an upstream server, such as one in use by an ITSP, to know where you are and to route calls to you. This is easy to configure and see in practice. Where many people have difficulty though is identifying calls from that upstream

Read More

How to Contribute to Asterisk: Part Three

In the previous post on contributing to Asterisk, we set up the Asterisk Test Suite and wrote a test for the CDR  dialplan function that reproduced the bug in ASTERISK-25179 and failed. In this post, we will: Figure out where the bug is in the code base Write a patch that fixes it, and passes

Read More

How to Contribute to Asterisk: Part Two

In the previous post, we: Picked out a bug to fix, ASTERISK-25179 Signed up for an Asterisk account, signed a CLA, and created our profile in Gerrit Cloned Asterisk from its Git repo, installed its dependencies, built and installed it Run the Asterisk unit tests After doing all that, we concluded that we’d be better

Read More

How to Contribute to Asterisk: Part One

Have you ever run into a bug in Asterisk? If so, don’t despair. Asterisk is software, and despite anyone’s claims to the contrary, all software contains bugs. While you can – and should! – simply file a bug in the Asterisk issue tracker, you may decide that you’d like to try your hand at fixing

Read More
Scroll to Top