Call recording Asterisk

I was experimenting with Asterisk IP/PBX, which I have deployed recently. It was a bit tough after few years of not touching it, but eventually I did it. One of the major feature you need to have, running heavy loaded call-center, is call recording. And fortunately there is embedded feature in this soft switch called MixMonitor. Well, there are few limitations, but using Linux and 3d party we can easily get rid of them (i.e. I want mp3 format for all my recordings instead of GSM or others).

In case of private cloud Asterisk deployment you probably never meet storage free space issue as you can allocate your bottomless NAS or old Server with dozen pair of JBOD, but in my certain case we have tiny VPS instance (EC2 T2-Micro) with Debian 8.x on board and the overall available space on it 20 GB general purpose disk. Well this is fine if you don't have other data on it, but it shares with CRM and other staff. And this 20 Gig can be extended, but as this is SSD, we don't really need this. Instead we can go ahead and involve AWS S3 object storage into that schema and use S3 or even further Glacier for call recordings archival (if we'll have such retention).

So the overall idea is to have the following combination of three: VPS, AWS, users!

  • «deb_astrsk» is my Debian box on top of virtual machine in my VPS. It has asterisk 13 and s3fs for mounting S3 buckets enabled.
  • «aws_s3» is AWS with few created buckets and IAM policies configured for s3fs integration.
  • «u1» and «u2» are two sample users (really basic level of computer science knowledge, what requires super super simple and very very straightforward those recording files management: listen, copy, delete).

Well the first two steps are not that hard, but the last is going to be cumbersome.. without 3d party.

Create S3 bucket

We go AWS console and create our bucket.

Mount AWS S3 bucket to your Linux

This part is going to be skipped due to recently written article here. Just need to member the path (i.e. /mnt/asterisk/), so this is the folder we are going to store our call files.

Mount AWS S3 bucket to your Windows

One of the really easiest way to do so is to use Cloudberry Drive. It is east to install and configure, it just works and it allows me to change my mount type between removable drive or network share (the second one is great to have as I can make it available across my corporate network for everyone whom it may concern).

When you did mount your AWS S3 bucket to Linux you used Access and Secret key pair. We need this info again for the Drive to mount to one of our Windows letter. I am going to skip configuration as it super simple. Here are few picture I'd like to highlight here:

Also it is cool to know, that Cloudberry drive supports over 50 public storages, thus the missing thing here is to figure out how to work S3 compatible or other storage from Linux.

In short, this is about:

Start discussion:
Related articles:
How to install, configure and run Asterisk 13 on Debian 8.x. From nothing to PBX in 5 minutes! ... more
about 6 years#pbx #asterisk #debian
This tutorial explains how to install and configure fail2ban for Asterisk 13 IP/PBX. ... more
about 6 years#fail2ban #asterisk
In this article you will know how to compile G.729 from binaries for your Asterisk IP/PBX. ... more
about 6 years#g729 #asterisk
Cloudberry 1.8 for Mac OS X is now live! Impressive list of features and storage platforms support! S3 compatible, new UI and etc. ... more
over 5 years#cloudberrylab #mac
Amazon Web Services (AWS) has its own AWS Linux AMI (also free tier). There are several reasons you want to use this AMI for your projects. ... more
Working with customers is great experience and you always learn or invent something new. I've been working on the case with files portioning ... more
In this article you'll learn how to protect your data against hardware and software failures according to the 3-2-1 rule. ... more
Since FullAccess is disabled even for Administrator's account in Exchange (including 2010) CloudBerry Backup for Exchange can't restore using Administrator's username and password pair for item level restore of any mailbox. Let's fix it. ... more
In CloudBerry Lab we help people to move data offsite to the cloud either with backup or file management solution. Sometimes I need sample files, a lot of sample files. ... more
over 4 years#cloudberrylab #ruby
Launching AWS EC2 can be supplied by something what is known as "user data" and it helps to have things ready before you access it. ... more
How to pre-deploy App using user data script for Windows OS with powershell powered script in EC2? Example inside. ... more
In this short article you will learn how to use PsExec with remote powershell script to download, execute and clean up software. You can do it for multiple computers in super easy way. ... more
Here at CloudBerry, where one of the goal I have is to help partners decide, pick and build right configurations for dealing with computers data when they need backup solution. FTP, SCP, WebDav and some other proprietary protocols have been here forever, where simplicity and flexibility made them number one in data protection and management fields as primary target configurations. But, there is big BUT... ... more