Kevin Harwell

Blog Author

CentOS 8: Installing Asterisk Dependencies

We’ve had a few questions about whether or not Asterisk could easily install on CentOS 8. A few months ago the answer to that question was no. However, given some time, a few added packages later, and a custom open source repository contribution we now believe that answer has changed. In this post I’ll explain

Read More

Issue Walkthrough: DTLS, and the Case of Bad Audio

A past post discusses some tips and tricks to employ when encountering a problem. Here we’ll walk through an issue applying some of those techniques. Recently an Asterisk issue came up involving occasional static and/or silence for audio. Broadly speaking the problem can be described as Alice calls Bob (using SIP), Bob answers, the call

Read More

ARI: Rested Developments

The Asterisk Rest Interface (ARI) over the last year received several enhancements that have been requested by the community: server side event filtering automatic context creation moving a channel between apps Although these topics have been discussed previously, with Astricon, and the release of Asterisk 17.0.0 just around the corner I think it’s a good

Read More

Stasis State: Improved Management

Stasis has been a core part of Asterisk for a while now. However, state management within it is a bit precarious. A new stasis_state module has been created to help address some of the complications that arise when attempting to store, and administer state within stasis. Stasis Cache and Topic Pool Typically, the stasis cache

Read More

Developer Notes: Large Number Storage

I ran into a curious problem the other day while working on an issue involving the storage, manipulation, and conversion of large number values in Asterisk. Background Many moons ago REMB support was added to Asterisk. In order to support a large bit rate the REMB RFC represents the value as mantissa and exponent. Both

Read More

Filtering Event Types in ARI

Since the arrival of the Asterisk REST Interface (ARI) requests have been made to allow for event type filtering capabilities. Consumers have wanted a way to make it so Asterisk only sends a specified subset of events to the connected application. Guess what, the wait is finally over! Starting with Asterisk 13.26.0, and Asterisk 16.3.0

Read More

Performance Improvements: Inbound Registration

Measuring performance in Asterisk, like most software systems for that matter, can be a complicated task. When testing performance it is important to define goals, and limit the context for that which is being tested. It’s been previously shown that res_pjsip might have an efficiency problem when it comes to inbound registration. Our main goal for this

Read More

Asterisk Test Suite: Building Better Tests

Let’s talk some more about testing, understanding the test framework for Asterisk, and building better tests. An exciting topic I know! In a previous post, we discussed how unit testing Asterisk worked. Here, though we’ll be talking a bit about the Asterisk Test Suite. The Asterisk Test Suite is a way to write automated, functional, “black-box”

Read More

Asterisk Call Party, Privacy, and Header Presentation

Asterisk allows users to manipulate call party identification information through mechanisms like configuration options and dialplan functions (for instance CALLERID and CONNECTEDLINE to name a couple). This grants the user freedom to adjust values with regards to what call/caller information to expose and/or override. With this freedom, though, comes some complexity, and confusion. Especially when

Read More

Asterisk 15: Multi-stream Media and SFU

In a previous post some of the upcoming changes made for Asterisk 15 have been discussed. Specifically, one of the items mentioned is the beginnings of a multi-stream media framework. Starting in 15, groundwork has been laid that greatly enhances media flow in Asterisk. Taking advantage of this new architecture, changes have also been made

Read More
Scroll to Top