Installing FreePBXv3 in Elastix-2.0 RC3

Tuesday, July 6th, 2010

Yes it’s surprisingly easy, and yes you too can have it today!

This is still very much a work-in-progress, as we’re merging two unfinished products and I’ve not had enough of a chance to test it thoroughly either so I’m hoping for some response from the community on this one. I think this is quite possibly the first time that FreePBXv3 has been tied into a major distro, and I reckon it’d be cool to see Elastix-2.0 support FreePBXv3 officially.

I have however tested Ext’s registering happily, calling each other, so I know that FreePBXv3 is tied in correctly.

Anyway, I’ve tar’d up a slightly older version of FreePBXv3, as they’re undergoing some design changes right at the moment which mean that the current version doesn’t install. So, we’ll be using this.

Total installation should only take about 5 minutes, so this How-To will be nice and short!

(more…)

  • Share/Bookmark

Offsite differential nightly backups for Elastix

Monday, June 21st, 2010

It’s happened to everybody at some time or another, you wish you could go back to yesterdays system. You make a change and delete some IVR menu you shouldn’t have but can’t remember how it was setup so you can’t recreate it.

The built-in Elastix Backups is great, but only if you remember to do it. I have the memory of a sieve so unfortunately I rarely remember.

The good thing is it’s now no longer difficult for you to backup a system automatically!

Because I don’t do any faxing or the likes on my systems, it doesn’t get backed up. This also won’t backup FOP2, your amportal.conf and other such things.

Here’s what it will do:

  • All core Asterisk files in /etc/asterisk
  • Custom sound files used in voicemails / recordings
  • Voicemail boxes
  • CDR records
  • FreePBX custom system files
  • Differential backups from the previous day, so you’re not wasting storage space and transferring large volumes of data regularly.

It’s enough for you to basically take a stock Elastix system and be back up and running in seconds.

Scenario: Your HDD died. You didn’t have any monitoring in place and so the SMART warnings went undetected. Your system is now down. Thankfully you have the ISO of Elastix, so you quickly throw it into the machine and reinstall (Or if you’re like me, you have a “vanilla” system ready on another HDD).  It boots the brand new Elastix installation and you’re now in a position to restore from your backups.
You now restore from your backups by simply copying everything in your last daily backup to your / folder, and it overwrites everything it needs to. You quickly reimport the .sql file into MySQL and you’re back, with minimal disruption.

  1. The script
  2. The prep work
  3. Adding it to your crontab (So it works automatically of course)
  4. Testing
  5. Password-less logins
  6. More testing = Success!
  7. Restoring

Here’s how you do it:

(more…)

  • Share/Bookmark

Installing ADA (Asterisk Desktop Assistant) on Elastix

Monday, May 10th, 2010

Formerly SnapANumber, ADA is now offered by Digium. However, the first thing that you’ll notice is that it was written for their Asterisk Business Edition.

That’s great if you have ABE, but not so good if you’re one of the millions of installs out there that uses vanilla Asterisk.

This guide presumes you already have ADA downloaded and installed. If not, you can get the latest (At the time of writing) version 1.1 from here:

http://dl1.digium.com/ADA1.1/ADAInstall.exe

Now you’re going to ignore any instructions you’re previously read, and we’ll start from scratch. Don’t worry, you’ll be up and running in a matter of moments!

(more…)

  • Share/Bookmark

How-To: Hotel Management System for Elastix

Wednesday, March 17th, 2010

Two blog posts in 24 hours? We’re on a roll here!
Based off PIAF’s Hotel Management System, we’re going to make some minor adjustments to have this work with Elastix. This is a brilliant Hotel Room Management system with the ability to restrict the calls from Ext’s when they are not checked in, per-second billing, and more!

Contents:

  1. Installing the base system
  2. Updating the config
  3. Fixing up HTTPS
  4. Updating dial-plan
  5. Closing words

(more…)

  • Share/Bookmark

Broadcast messages with Elastix’s Call Center Module

Thursday, January 28th, 2010

Hi people, this is my first appearence at this blog, by way of a small introduction  my name is Juan Pablo Bustos and I’m writing from Mendoza – Argentina, I’m a Systems Analyst and also I have my ECT Certification.

I’ve been talking with Rafael about publishing this method, and he suggested to share it in the Elastix Blog, so that’s why I’ve have published it, so we can polish it and see a way to implement it on a larger scale.

The objective of this implementation is to use Elastix’s dialer to call a list of customers to deliver a message and to be able to still use the Call Center with “real” agents. I have also added a little PHP script that logs the customer’s answer (number dialed) after the call is completed.

To get this to work, we need to create:

- Some “virtual agents” that are created in the same way as the “real” agents in the  Call Center’s GUI.

- A Custom Context to log them in with the command AgentCallbackLogin (sadly deprecated in Asterisk 1.6 , but able to be worked around).

- Another Custom Context to log them (for debugging purposes, but useful sometimes).

- A Custom Context to redirect the calls to a final custom context that will handle the calls. (more…)

  • Share/Bookmark

Useful Elastix Videos

Friday, November 27th, 2009

In this post we are going to share some useful video tutorials uploaded to Youtube by  Scott Wittenberg.  These and other videos can be accessed in the Elastix Youtube Channel.

In this article you can watch the following videos:

  • How to setup a basic Extension in Elastix
  • How to setup a basic outgoing trunk in Elastix
  • How to setup Follow Me in Elastix
  • How to Setup A Basic DID (Telephone Number) Using Elastix
  • How to setup a basic IVR (Automated Attendant) in Elastix

How to setup a basic Extension in Elastix

(more…)

  • Share/Bookmark

iLBC vs g729 — The quick guide to using compressed codecs in Elastix

Tuesday, November 17th, 2009

We all know that g711 (alaw / ulaw) is meant to sound the best. It’s uncompressed and equivalent quality to ISDN, which most businesses are used to with their traditional PABX System.

However, it comes at a price, 64kbps + overheads means around 111kbps when you factor in everything else over an ADSL PPPoA / PPPoE connection.

Now that’s a LOT when you think about it, considering on a standard ADSL2+ line you’re going to max out at around 5-7 SIP lines, especially if it’s a shared connection. This is where a compressed codec such as (My personal favorite) iLBC, or g729, can be incredibly cost effective, as you can load up around 15-20 on the same sort of bandwidth. When you’re a small business, that means with the right kind of QoS, you can share your ADSL Broadband connection and still have 5-10 concurrent phone calls, all happily living together.

So do away with expensive BRI interfaces and monthly charges, and go SIP!

We’re going to look at a few things very briefly:

1) MOS – What is it and why do I care?

2) Which codec is right for me?

3) g729 – Installation

4) iLBC – Installation

5) Trunk and Extension setup

6) Testing the codecs

(more…)

  • Share/Bookmark

Interoffice Trunking with Elastix & IAX Part 2

Monday, November 16th, 2009

Thanks to a comment from Alonso Gordillo on Inter-Office Trunking using Elastix, I have decided that it warranted a second part describing how to use your new Inter-Office trunk to have calls routed through the other office’s Elastix PBX. If you havent already, first please read Interoffice Trunking with Elastix & IAX Part 1

Lets start with the original diagram

MelSydOfficeVisio

Now as you will note, I have used two Australian Cities called Sydney and Melbourne, but this could just as easily been Australia and New Zealand, or Australia and U.S. (more…)

  • Share/Bookmark

Skype for Elastix (Asterisk)

Saturday, November 14th, 2009

Introduction
===========

Previous to the release of Skype for Asterisk, many users have implemented a range of Third Party products and tools that required usually a separate machine as a Skype Gateway. It was a messy way of implementing it as the Skype API was more of a high level API and it was the only way of implementing it. Whilst commercially these gateways were used, they were not an ideal commercial solution with increased points of failure and complexity.

Recently Skype had a change of mindset and started working with a few interested parties to implement a more integrated approach  with a lower level API, which means a cleaner integration. Asterisk was one of these parties and  have worked together with Skype to produce a product call Skype for Asterisk.

It does have a cost, but to be fair, it is quite a reasonable one for the functionality, and there is licenced proprietary code which needs to be paid for. Now there have been a few people saying that $US66 is expensive to pay per channel, many of them who run an Asterisk based systems at home. Most businesses who recognise the value and want this functionality, will dismiss the cost immediately. With 405 million registered Skype users world wide, and based on the fact that 30% of these users are business users, leaves you with 121 million potential people who can call your business directly for free (especially if your product is an international product), whether it is for support, ordering a product or your own remote offices that already have Skype installed on their desktop, it is a very small cost to pay.

Now before you get started. There is one very important concept that is important and something that you may not have come across before. The Skype account must be a Skype Business Account http://www.skype.com/business/products/business-control-panel/ . Now don’t panic as you see all the monetary values on the Skype page. The business control panel was not purely setup for Skype for Asterisk. This business control panel was originally setup to allow businesses to control and monetarily monitor their employees Skype usage. This mechanism however is the only way that it can be implemented. It is not a big deal, just a matter of registering, and once completed, create a username under that account that will be used for your Skype for Asterisk.

Now before you start, I recommend have a brief read through the document on the Digium website as it does contain some additional information that doesn’t required repeating here. https://www.digium.com/en/supportcenter/documentation/viewdocs/SFA

Now the other reason to go to that website is to confirm the latest versions of software and their links. Likewise you may need to replace the links in this tutorial with ones more suited to your setup (e.g. you might need the x64 versions). The tutorial below is based on the Elastix 1.6 on a 32bit platform (previous to this it worked fine on a 1.5 – possibly with yum updates which brought the Asterisk version up to the required level). (more…)

  • Share/Bookmark

Interoffice Trunking with Elastix & IAX Part1

Thursday, November 12th, 2009

Introduction
=========

As a business grows, it is necessary to open further offices, usually in separate locations, or due to geographic requirements, they need a warehouse or distribution center that is separate to the head office.

One of the issues that occurs is the isolation of the two or more offices, almost as though they are two separate businesses. This occurs due the geographic isolation, but also in many cases isolation as they are using separate systems. Even the necessity, when dialling the other office, to dial a full phone number, continues to enforce this isolation.

It is surprising, especially in an office culture, how a simple change of dialling other office extensions directly, makes a change to the mentality of how the other office(s) are perceived. Add a few other functions such as the receptionist console providing visibility of the other office extensions (and their visibility of yours), and even an internal Instant Messaging/Presence ability that works across the two offices, and the culture changes. Further add in the ability for any staff to call the person that they need direct, knowing that there is no cost for the call.

I have seen it on many occasions, and I have had discussions with company directors who will categorically state that it has had a huge impact on their business efficiency and co-operation between branches due to a more homogenous single business. They also know that calls between all their offices have no call costs, and even if they wish to, they could stretch it further to include video between the various offices, either in a single room at each site, or at key staff desktops.

This document is not going to cover how to implement instant messaging, or the receptionist console, or how to setup video as these are generally covered by other tutorials on this site. Like all good systems, it is best implemented one building block at a time, test, and then move to the next phase, unless you are very experienced in which case, you generally don’t require this tutorial .

So the purpose of this guide is to provide you with the step by step guide on how to connect two offices together utilising an Elastix system in both offices.

Planning
======

Connecting two offices or sites with Elastix is relatively simple, but like all good things a bit of planning ahead of implementation is a good investment. I have seen many mistakes made, not from not understanding the concepts, but actually becoming confused with setup details and not putting the basic building blocks in place first. Some do start with the basic building blocks, but part way through they make a leap feeling confident, making changes on the fly, and then it ends up not working.

So it is important to write out what you are trying to do, it will make it easier in the long run. Even printing the configs from this tutorial, making changes to the names to suit your setup, will keep you on the right track.

This planning also extends to making sure that each site is using a separate set of Extension numbers e.g. 200 range in Sydney and the 500 range in Melbourne. This simplifies your routing rules. If you are setting up the two Elastix systems for the first time, then this is worth considering the particular numbering separation to make it easy for both yourself and the business. It may not always possible, especially if the two systems are already in existence and already using a common extension numbering scheme, and this is covered quickly at the end of this tutorial.

The Scenario
===========

This is scenario and configurations are taken from a production system, so you know that they work.

The company has two offices one in Sydney and one in Melbourne. The office in Sydney has 60 staff and the one Melbourne has 20 staff

The two offices have a Virtual Private Network (VPN) between them which will generally be the case with most businesses that need to share or access data between their offices.

Elastix IP Address & IP Ranges used by each office
The Sydney office has a 192.168.0.0/255.255.255.0 ip address range
The Sydney Elastix system has an ip address of 192.168.0.100
The Melbourne office as a 192.168.1.0/255.255.255.0 ip address range
The Melbourne Elastix system has an ip address of 192.168.1.100

Extensions setup on Elastix at each Office

Sydney : Extensions 201 – 260
Melbourne : Extensions 501 – 521
MelSydOfficeVisio (more…)

  • Share/Bookmark