May
22
2014
0

Asterisk 1.8 T1 w/ PRI + analog fax

It’s been a while since I posted, so I want to come out swinging.  I recently put together a phone system for a medium office.  They have a standard T1 and a 4 port FXS Digium card.  The analog card is for a PA system and two fax machines.  This post is a quick tutorial with examples for installation.

Goals of this post:

  • Configure Digium T1 w/ PRI
  • Configure Analog card channels
  • Asterisk Dahdi setup

This tutorial assumes you have a somewhat recent working build of libpri, dahdi, and Asterisk.

(more…)

Sep
06
2010
0

How to use PHP to reboot a Poycom SIP Phone

I’m knee deep into writing Voice Provision .04(VP4) for VoiceIP Solutions.  Why write another Asterisk GUI?  Because the Trixbox and Elastix software is way to convoluted and makes customization difficult.  They are not well documented and don’t attribute credit back to Asterisk or Digium.

Standard Asterisk scripting and basic macro’s are easier to setup, maintain, develop and troubleshoot.  What I require is a basic PHP SIP/IAX2 user manager that stays out of the dial plan. It must be specifically designed to manage Polycom phones.  This is why I’ve been locked in my room the last 4 weeks and haven’t done any recent articles.  My apologies.

The goals for VP4 are simple, Dynamic realtime SIP user management and standard Asterisk dial plan work via the extensions.conf.  Since VoiceIP Solutions is a certified Polycom reseller, VP4 will include several functions for generating Polycom configuration files and allowing remote reboots of the phones.  In this post I will provide a example of PHP function that reboots a Polycom SoundPoint IP phone by sending a SIP Notify message.

This post assumes you have a basic grasp on LAMP(Linux Apache MySQL PHP).  Also you need a working registered Polycom phone provisioned via a boot server of some kind(HTTP,FTP, TFTP,etc…).  I have a tutorial on that here.

Goals of this Post:
- Install PHP-SIP class from Google Code
- provide example function in PHP

(more…)

Jul
16
2010
1

Resample MP3′s for Polycom Ringtones with Audacity

A customer of VoiceIP Solutions sent me this useful tutorial for re-sampling Polycom Ringtones.   If you have an MP3 you like, it can be re-sampled for use with a Polycom IP SIP phone!  The procedure is pretty straight forward, Install Audacity with yum or your favorite package manager, re-sample the track, then edit the proper Polycom Soundpoint boot files.

Goals of this Post:

- Install Audacity Digital Audio Editor
- Convert a MP3 to Polycom compatible track
- Enable custom special Ringtone on Polycom Soundpoint IP SIP phone

(more…)

Feb
14
2010
6

How to setup automatic Polycom provisioning for the Asterisk 2.0 GUI

Recently we covered the installation of Asterisk 1.6 + Asterisk GUI 2.0.  In this article we will talk about the details necessary to enable Polycom provisioning from the ‘Users’ tab of the Asterisk 2.0 GUI.  By default auto-provisioning will not work out of the box.  You would think when the GUI is installed that it would be setup as well, considering that you have the option to enter a MAC address in the user extension creation process.

Nor are their docs related to configuring this in the source packages(that I could find).  Online forums and tutorials were of no help either.  There are many post online claiming that you need to set up DHCP, ‘option 66′ for Polycom provisioning to work.  This is true of TFTP provisioning from AA50 appliance, but not from the Asterisk 2.0 GUI that relies solely on HTTP.  At least as far as I can tell.

I think Digium is being vague on purpose about this because they do not want to undermine their Asterisk Appliance product.  While I understand this line of thinking, it’s not consistent with the Open Source business models that have succeeded.

Open Source depends on reaching vast amounts of people due to the low cost.  When my customers have to choose between a Avaya system(running Linux) that cost $45,000 /w phones or a Asterisk system w/ Polycom phones for $19,000; it makes the lesser known Asterisk product attractive.  Over time the base builds up and Digium collects on hardware and support fee’s.

So from my perspective, any Asterisk installation helps Digium’s bottom line eventually.  Even if Digium doesn’t see money from every Asterisk user, simply the presence of those users makes Asterisk a more credible product.  Bringing more and more Enterprise and Government contracts to everyone, thus more money and investment into Digium.

Alright my tirade is over, back to business!  This post assumes you have installed a recent version of Linux, Asterisk 1.6 and the Asterisk 2.0 GUI installed.  If you do not, read my post:How to setup the Asterisk 2.0 GUI with Asterisk 1.6.

The Goals of this Post:

-configure phoneprov for Asterisk 2.0 GUI

(more…)

Sep
09
2009
0

Adjust date & time (NTP) on Fedora Linux

Correct time is crucial for many Network services.  Time stamps are required for accurate logs, email, and in the case of Asterisk – voicemail.  A customer sent me a request for instructions on adjusting date & time for their Asterisk PBX.  Most Fedora based systems come with a tool just for this purpose.  From the Desktop open a console window and type:

(more…)

Aug
25
2009
60

How to Query a Database from MySQL with Asterisk 1.6 ODBC

I’ve been administering Asterisk servers for many years and everyday I’m learning something new.  As the size of the projects have gotten bigger, so have the demands of my customers.  One common request is database integration.  In the past I’ve used external AGI scripts to run database queries to return values to Asterisk.  But more recently I’ve been avoiding AGI in favor of direct access SQL.  This is achieved by building ODBC modules into Asterisk at build time.  Let me tell you, it’s worth it!

Asterisk & ODBC provide the ability to easily update and retrieve data by defining SQL statements as special variables that can be called from the dial plan.  For instance, we could bill ‘long distance’, take credit cards and let Asterisk access other types of information.  In my tutorial we will configure Asterisk to dial a variable that represents a SQL statement.  This could also be done by calling an AGI script, but why do the extra work?

This ‘How to’ is specifically geared towards MySQL.  However, if you set the up the ODBC driver correctly you can use any SQL server you like.  Which leads me to my next thought, before you start, make sure ODBC is set up correctly.  Follow one of my previous tutorials:

configure Linux ODBC for MS-SQL

configure Linux ODBC for MYSQL

Once you do this we are ready to continue…

The goals of this post:

- create MySQL table with example data
- configure res_odbc.conf
- configure func_odbc.conf
- configure extensions.conf for query

(more…)

Jul
18
2009
1

How to use the ODBC driver to Connect to MySQL database in Fedora 10

A few weeks back I covered connecting ODBC to MS-SQL, but today we are going to do the same thing with MySQL.  The process is very similar.  One might ask, why use ODBC driver in the first place?  The reason is simple, there are many flavors of SQL and the ODBC driver allows one standard to connect them.  For that reason many software developers use ODBC for connecting their applications to SQL.

For my purposes, the Asterisk PBX platform can use ODBC to call ‘dial plan’ functions from the database, but that is another article!  This post assumes you have a working MySQL server and at least one table with data to pull from.

Goal of this Post:

- Install ODBC driver for MySQL
- configure odbc.ini
- configure odbcinst.ini
- verify connectivity with isql

(more…)

Jun
28
2009
1

Polycom 501 XML configuration file Example

This file is named by the MAC address of your Polycom SoundPoint IP SIP phone followed by, ‘-phone.cfg’.  In your FTP folder you would have a file for each phone – I have a single phone.  It’s MAC is ’0004F202734B’; so my phones configuration file would be named, ’0004f202734b-phone.cfg’.  I believe there are other conventions for naming this file as well.

The example below was used to connect my phone with a VoiceIP Solutions Asterisk PBX.  This example shows just a fraction of the many possible features in this line.  For my purposes, I defined the Asterisk server IP address, and it’s SIP credentials.  I also added the NTP server.  The ‘mwi’ tag refers to ‘message waiting information’, here I set the mailbox(s) I’m subscribing to and the extension to check voicemail.   My Asterisk voicemail menu is extension ’299′.

0004f202734b-phone.cfg:

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”yes”?>
<!– Example Per-phone Configuration File –>
<!– $RCSfile: phone1.cfg,v $  $Revision: 1.104.2.2 $ –>
<phone1>
<reg
reg.1.displayName=”5555″
reg.1.address=”5555″
reg.1.auth.userId=”5555″
reg.1.auth.password=”2005″
reg.1.server.1.address=”192.168.1.254″
tcpIpApp.sntp.address=”pool.ntp.org”
tcpIpApp.sntp.gmtOffset=”-33600″
>
<mwi
msg.mwi.1.subscribe=”5555″
msg.mwi.1.callBackMode=”contact”
msg.mwi.1.callBack=”299″
>
</phone1>

May
07
2009
0

How to make USB and DVD ROM drives work on Fedora 10

Lately, I’ve been working on Asterisk PBX related articles, but today we’re going to tackle a common problem with Fedora 10: getting drives to mount to the Desktop.  If you are experiencing trouble, the likely cause is that your current user, does not have permissions to access that hardware.  The reason for this has a lot to do with the security model of Linux.

In the old days computers came on large mainframes.  It was not practical for engineers and scientist to have their very own main frame, so Unix was designed to be a multi-user operating system.  Everyone connected their own keyboard & monitor.  The permission structure was set so only certain individual accounts could do certain things.  Like say, reboot a system or delete a database.

By contrast Microsoft Windows(thru XP) is a single user operating system.  In Windows you can create extra accounts, but any of those accounts can execute arbitrary code from anywhere in the file system (c:\\ drive).  Which is a big reason for the many attacks on Windows systems.

Recently my friend got a virus that made XP unbootable and stole his World of Warcraft account login and password.  The hacker then used that information to login to his account, change his password, and his accounts valid email address.  The hacker then sold all his gear and used his character to scam other people in bad trades.  The account became banned for “economic extortion” before my friend could get his Windows XP machine back up and running.  Now he runs WoW on WINE/Fedora 10.

An appeal to Blizzard got his account back after several days and many emails. My friend requested that they check the IP address of the hacker and compare that to his previous logins.  What if the virus had collected his bank account credentials instead?  In a way he got lucky.

Goals of this Post:

- correct authorizations in Fedora 10 and allow access to USB and DVD – ROM devices

It seems odd that someone would be unable to access a USB thumb drive on any modern desktop computer, but Red Hat the maker of Fedora Linux is far more interested in their commercial offering, Red Hat Enterprise Linux(RHEL).  They model RHEL development on previous versions of Fedora.  So desktop integration is obviously not their top priority; stability and security is.  This neglect has allowed rival Unbuntu Linux to come in and snatch up the Linux desktop market.  Big mistake Red Hat…  however with a little work we can make Fedora 10 desktop work well without them.

So to correct the permissions issue(from Gnome) start by clicking, System –> Preferences –> System –> Authorizations.  Fedora may ask you for your ‘root’ password.

fedora10-authorizations-usb

fedora10-authorizations-usb

Set access to allow anyone to mount and unmount USB and other devices!  I hope this helps.  It’s frustrating dealing with these little things, but hey, “it’s free”!  If it doesn’t take, leave a comment below and I’ll try to help.

Apr
08
2009
2

Install Queuemetrics Call Center software for Asterisk on Fedora 10


What makes Asterisk so great is the growing ecosystem of 3rd party software.  For call centers based on Asterisk PBX, the best on the market is Queuemetrics.  This solution allows for over 150 different statistics to be collected.  Here is just a few:

Number of calls
Total call length
Average call length
Average call waiting
Number of unanswered calls
Average time before disconnection
Area code
Number of calls
Total calling time
Average time per call (for taken calls)
Average wait per call
Average position at disconnection (for lost calls)
Number of available agents
Total agent time
Average agent time
Minimum/ maximum agent session duration
Agent availability

If by now you are not convinced take a look at the complete list; you can check out Loway’s site and Queuemetrics here.  I have personally helped setup several commercial call centers(while working for VoiceIP Solutions) with this software and I am impressed at the value and support for our customers purchase.  So today we are going to set up a basic Queuemetrics installation; we will not be covering the Asterisk portion.  Nothing fancy here, but I can get you started.

The goal of this post:

- install Queuemetrics

(more…)