Solved

What is the best way to roll-out Polycom phones using Asterisk?

Posted on 2010-08-26
2
632 Views
Last Modified: 2013-12-27
I am looking for a way to roll-out Polycom 601 phones the same way I would roll out any large Cisco solution. In Asterisk, is there a way to build a database of my 601s' MACs and push out configs? That may not be the to go with Asterisk. What is this Polycom boot server I keep hearing about and will it do what I want?  Where can I find it?  How do you do mass roll-outs of new phones?
0
Comment
Question by:Marinertek
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 11

Accepted Solution

by:
jfaubiontx earned 500 total points
ID: 33539251
Sure using XML files we roll-out new phones with consistent configs all the time. You can set the dhcpd to provide information to the Polycom to locate it's boot server. From there the Polycom can use tftp to request it's configuration files. These XML files can define the extension, password, server addresses and everything else you would like to configure on the phones.

You will need to be running dhcpd on your server. Add a group definition for your Polycoms if you don't already have one. Use the following as an example

    group polycom {
        default-lease-time 84600;
        option boot-server "ftp://PlcmSpIp:pAsSw0rD@10.0.1.3";
        # host name is optional, but may help you track extensions
        host 100 {
            hardware ethernet 00:04:f2:18:72:1d;
            fixed-address 10.0.1.100;
        }
    }
     
   
What this does for you is provide a way to set a specific time for your leases, assign a specific IP address to the phones, and define the user name and password to use to ftp the config files. We like to have the last octet match the extension number. Makes it easier to locate the right phone when you need to log into it. Restart the dhcpd.

You also need a user on the system to allow access to the files. Polycom has a default user defined in the phones of PlcmSpIp and a password of Polycom. The dhcpd can override this information. This is the method we use as setting up a user with a default user name and password is not a good security risk. Next you need to copy the files into the directory. Download the release you want to use and unpack to this directory.

For more information on building the config files check out the following:

Config White Paper

You need a server.cfg file in here to define the server address and basic options. Something like the following:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<localcfg>
 <server voIpProt.server.1.address="10.0.1.3"/>
 <SIP>
   <outboundProxy voIpProt.SIP.outboundProxy.address="10.0.1.3"/>
 </SIP>
   <SNTP
   tcpIpApp.sntp.daylightSavings.enable="1"
   tcpIpApp.sntp.address="10.0.1.3"
   tcpIpApp.sntp.gmtOffset="-18000"
   />
<localcfg>

Next you need a phone specific registration file. This can be named pretty much anything be we use <mac_address>reg.cfg to help keep them straight. I have also used the <extension_number>.cfg before as well. It will need something like the following although this example is based on the IP330 model:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<reginfo>
  <reg
    reg.1.displayName="Phone_Name"
    reg.1.address="114"
    reg.1.label="114"
    reg.1.auth.userId="114"
    reg.1.auth.password="ByteMe"
    reg.1.lineKeys="2"
    reg.1.server.1.address=""
    reg.1.server.1.expires=""
    reg.1.server.1.expires.lineSeize="30"
    reg.1.server.1.port="5060"
    reg.1.server.1.register="1"
    reg.1.server.1.retryMaxCount=""
    reg.1.server.1.retryTimeOut=""
    reg.1.server.1.transport="DNSnaptr"
    reg.1.server.2.transport="DNSnaptr"
    reg.1.thirdPartyName=""
    reg.1.type="private"
    reg.1.ringType="12"
   />
  <dialplan>
    dialplan.impossibleMatchHandling="0"
    dialplan.removeEndOfDial="1"
    dialplan.applyToUserSend="1"
    dialplan.applyToUserDial="1"
    dialplan.applyToCallListDial="0"
    dialplan.applyToDirectoryDial="0">
    <digitmap>
      dialplan.digitmap="[2-9]11|0T|011xxx.T|[0-1][2-9]xxxxxxxxx|[2-9]xxxxxxxxx|*xx|[1-2]xxT"
      dialplan.digitmap.timeOut="3|3|3|3|3|3|3"
    </digitmap>
  </dialplan>
  <msg msg.bypassInstantMessage="1">
    <mwi msg.mwi.1.callBack="*86"
      msg.mwi.1.callBackMode="contact"
      msg.mwi.1.subscribe="114"
    </mwi>
  </msg>
  <voice>
    <volume voice.volume.persist.handset="1" voice.volume.persist.headset="1" voice.volume.persist.handsfree="1"/>
    <gains
        voice.gain.tx.analog.chassis.IP_330="39"
        voice.gain.rx.analog.chassis.IP_330="0"
        voice.gain.tx.analog.preamp.chassis="32"

        voice.gain.rx.analog.handset.sidetone="-20"
        voice.gain.tx.analog.handset="6"
        voice.gain.rx.analog.handset="0"
        voice.gain.tx.analog.preamp.handset="23"

        voice.gain.rx.analog.headset.sidetone="-24"
        voice.gain.tx.analog.headset="3"
        voice.gain.rx.analog.headset="0"
        voice.gain.tx.analog.preamp.headset="23"

        voice.gain.rx.analog.ringer.IP_330="2"
    </gain>
  </voice>
</reginfo>

Start your ftp server, we like vsftpd. Restart the phone. You can tail the message file to ensure that the phone gets the files listed above. It is late here, I'm tired, and I have probably missed something so if you have questions let me know. It really isn't that difficult once you get the basics ready and the time it saves is worth the effort even if you only have a few phones to setup.  


0
 
LVL 5

Author Comment

by:Marinertek
ID: 33541424
This is very similar to what I found here.

http://www.voip-info.org/wiki/view/Asterisk%40Home+Handbook+Wiki+Chapter+7#7224HowtouseProvisioningCentralBootServe

Thanks for you help.  Please follow this question for a while as while I'm setting this up I am sure I will have questions.
0

Featured Post

Why You Need a DevOps Toolchain

IT needs to deliver services with more agility and velocity. IT must roll out application features and innovations faster to keep up with customer demands, which is where a DevOps toolchain steps in. View the infographic to see why you need a DevOps toolchain.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Need manual for NEC 92753A phone 5 175
exchange UM and Lync quastiones 6 92
Cisco Phone implementation supported backups 1 71
General network\voice question.. 4 55
As companies replace their old PBX phone systems with Unified IP Communications, many are finding out that legacy applications such as fax do not work well with VoIP. Fortunately, Cloud Faxing provides a cost-effective alternative that works over an…
Skype is a P2P (Peer to Peer) instant messaging and VOIP (Voice over IP) service – as well as a whole lot more.
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question