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
7

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…)

Dec
21
2009
0

How to setup auto-provisioning for Polycom SoundPoint IP phones using the Asterisk Appliance

The Digium Asterisk Appliance has built-in features for handling Polycom SIP handsets.  It’s very easy to do and will save you the trouble of individually configuring the settings of each phone.  I have a Digium AA50 configured with a standard dial plan and a Polycom Soundpoint IP 501.

Goals of this Post:

– Configure AA50 Polycom Provisioning
– Configure Polycom SoundPoint IP 501 phone

(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>

Jun
27
2009
4

SOLVED: ProFTP will not start after install on Fedora 11

I was working on a project for VoiceIP Solutions yesterday and I required a FTP server to provision some Polycom Soundpoint IP phones. So I did my usual ‘yum install proftpd’ , followed by ‘service proftpd start’, but the service failed to start. So after some poking around – checking user assignment for that process and permissions I found nothing. So I decided to invoke the server from the command line with the ‘-t’ to check for errors:

[root@mattcom1 log]# proftpd -t
Checking syntax of configuration file
– warning: unable to determine IP address of ‘mattcom1’
– error: no valid servers configured
– Fatal: error processing configuration file ‘/etc/proftpd.conf’

The error told me right away that the issue was my ‘/etc/hosts’ file. My server name ‘mattcom1’ was not found in that file. Even though both the Network manager and Network configuration tools showed a hostname, there was actually nothing added to the ‘/etc/hosts’ file. watch out for this one!

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…)

Apr
02
2009
5

How to configure a Polycom SoundPoint IP phone for Asterisk on Fedora 10

In my opinion the best IP business phones on the market are made by Polycom. Anyone that knows anything about the VoIP Industry knows that!  High quality Polycom desk phones combined with Asterisk are a great combination of quality/price. So to that end we’re doing this lab.

Polycom employs several methods of provisioning the SIP phones.  For general configuration Sound Point IP have an excellent built web GUI,  but for multiple phones Polycom has an XML based system as well.  Every Sound Point IP can be provisioned based on MAC address.  Polycom’s provisioning method makes use of TFTP, FTP, or HTTP to deliver firmware updates and individual phone settings.

The goals of this post:

– Configure FTP server for Polycom firmware and configuration

– Configure Asterisk SIP extension

– deploy firmware and XML configuration files to Polycom SoundPoint IP 501 SIP phone

(more…)

Mar
19
2009
4

VoiceIP Solutions offers Asterisk PHP GUI for large scale deployments



VoiceIP Solutions
is a Asterisk ‘consulting & deployment’ company in Seattle Washington.  They deploy Asterisk solutions for businesses of all sizes.  From small offices to universities and call centers.  They have sites deployed all over the United States, but mostly on the West Coast.  I’ve been following them for some time; I guess they started deploying Asterisk before 1.2 was released.  I talked to one of their sales rep’s(I think his name was Liam) about the business and wondered if they had done any development work?  He told me that they had done some PHP work for managing larger installs and proceeded to direct me to one of there engineer/developers.

(more…)

Jan
09
2009
0

Fedora, Asterisk, Polycom and making dhcp option 66

My main job at work is to build, configure, maintain, etc… Asterisk phone systems.  Every phone system needs phones and the most popular VoIP phones for Asterisk are the Polycom Soundpoint IP SIP phones.  One of the great features of the SoundPoint IP series is the ability to easily manage a large number of phones by storing their configuration files on a central FTP server.  In this article:

1) I briefly explain the Polycom Soundpoint IP series FTP boot process(not a tutorial).

2) provide a basic example of a dhcpd.conf that supplies FTP credentials for the Polycom phones via DHCP.

The Polycom phone boots up and attempts to retrieve it’s configuration file and check for firmware updates.  The ftp username and password are entered during the first boot of the phone.  For a small number of phones this is fine, but Polycom Soundpoint IP phones have the built-in ‘option 66’ for easily deploying an unlimited number of phones.

Option 66 is a term used by some DHCP vendors to describe DHCP code 66.  This option code(when set) supplies a TFTP boot server address to the DHCP client to boot from.  In our case we’re talking about VoIP phones, but option 66 is probably most commonly used by citrix thin clients.

There isn’t much out there on how to configure option 66 with standard Linux DHCP server.  After googling for a while, I decided to install gdhcpd.  It’s a simple DHCP configuration tool that is easy to use.  I generated a simple configuration using the tool then added options I read about in the man file.  Trust me… read man files.  A wealth of info without the need to forum hop.

[matt@mattcom1 Desktop]$ man dhcpd.conf

[matt@mattcom1 Desktop]$ man dhcp-options

dhcpd.conf:

ddns-update-style none;
ddns-updates off;
option T150 code 150 = string;
deny client-updates;
one-lease-per-client false;
allow bootp;

#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#   see ‘man 5 dhcpd.conf’
#

subnet 192.168.7.0 netmask 255.255.255.0 {
interface eth0;
range 192.168.7.9 192.168.7.12;
default-lease-time 6000;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option time-offset -28800;
option tftp-server-name “ftp://polycom:password@192.168.7.2”;
option ntp-servers pool.ntp.org;
option domain-name-servers 4.2.2.2;
}

——————————————————————————————————–

Change the subnet,range, and netmask to your taste!  Then restart the dhcp daemon.

[matt@mattcom1 Desktop]$ service dhcpd restart