Provision Polycom: Difference between revisions

From KlavoWiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
To provision a Polycom Phone.<br>
To provision a Polycom Phone.<br>


= tftp setup =
First create a user account making sure you use the same name as the password.
First create a user account making sure you use the same name as the password.
<pre>
<pre>
Line 12: Line 13:
# Now the important part is to edit the cfg files in /home/PlcmSpIp
# Now the important part is to edit the cfg files in /home/PlcmSpIp


== macaddress.cfg ==
= macaddress.cfg =
<pre>
<pre>
<?xml version="1.0" standalone="yes"?>
<?xml version="1.0" standalone="yes"?>
Line 19: Line 20:
<!-- Configuration File Management white paper available from: -->
<!-- Configuration File Management white paper available from: -->
<!-- http://www.polycom.com/common/documents/whitepapers/configuration_file_management_on_soundpoint_ip_phones.pdf -->
<!-- http://www.polycom.com/common/documents/whitepapers/configuration_file_management_on_soundpoint_ip_phones.pdf -->
<!-- $RCSfile: 000000000000.cfg,v $  $Revision: 1.19.2.1 $ -->
<!-- $RCSfile: 000000000000.cfg,v $  $Revision: 1.21.20.3 $ -->


<APPLICATION APP_FILE_PATH="sip.ld" CONFIG_FILES="8900.cfg, sip.cfg" MISC_FILES="" LOG_FILE_DIRECTORY="" OVERRIDES_DIRECTORY="" CONTACTS_DIRECTORY="" LICENSE_DIRECTORY=""/>
<APPLICATION APP_FILE_PATH="sip.ld" CONFIG_FILES="201.cfg, sip.cfg" MISC_FILES="" LOG_FILE_DIRECTORY="" OVERRIDES_DIRECTORY="" CONTACTS_DIRECTORY="" LICENSE_DIRECTORY="">
 
 
<APPLICATION_VVX1500 CONFIG_FILES_VVX1500="phone1.cfg, sip.cfg"/>
 
<!-- Change sip_vvx1500.cfg to sip_vvx1500_H323.cfg to enable H.323 if so licensed -->
<APPLICATION_SPIP300 APP_FILE_PATH_SPIP300="sip_212.ld" CONFIG_FILES_SPIP300="phone1_212.cfg, sip_212.cfg"/>
<APPLICATION_SPIP500 APP_FILE_PATH_SPIP500="sip_212.ld" CONFIG_FILES_SPIP500="phone1_212.cfg, sip_212.cfg"/>
<APPLICATION_SPIP301 APP_FILE_PATH_SPIP301="sip_313.ld" CONFIG_FILES_SPIP301="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SPIP501 APP_FILE_PATH_SPIP501="sip_313.ld" CONFIG_FILES_SPIP501="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SPIP600 APP_FILE_PATH_SPIP600="sip_313.ld" CONFIG_FILES_SPIP600="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SPIP601 APP_FILE_PATH_SPIP601="sip_313.ld" CONFIG_FILES_SPIP601="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SSIP4000 APP_FILE_PATH_SSIP4000="sip_313.ld" CONFIG_FILES_SSIP4000="phone1_313.cfg, sip_313.cfg"/>
 
</APPLICATION>
</pre>
</pre>


== extension.cfg ==
= extension.cfg =
<pre>
<pre>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!-- Example Per-phone Configuration File -->
<!-- Example Per-phone Configuration File -->
<!-- $RCSfile: phone1.cfg,v $  $Revision: 1.104.2.2 $ -->
<!-- $RCSfile: phone1.cfg,v $  $Revision: 1.121.4.5 $ -->
<phone1>
<phone>
  <reg
  <reg  
 
      reg.1.auth.userId="201"
      reg.1.auth.password=""
      reg.1.server.1.address="192.168.1.1"
      reg.1.server.1.port="5060"
      reg.1.address="201"
      reg.1.label="201"
      reg.1.ringType="2"
      reg.1.lineKeys="4"
 
       reg.1.displayName=""
       reg.1.displayName=""
      reg.1.address="8901"
      reg.1.label="8901"
       reg.1.type="private"
       reg.1.type="private"
       reg.1.lcs=""
       reg.1.lcs=""
       reg.1.csta=""
       reg.1.csta=""
       reg.1.thirdPartyName=""
       reg.1.thirdPartyName=""
      reg.1.auth.userId="8901"
      reg.1.auth.password=""
       reg.1.auth.optimizedInFailover=""
       reg.1.auth.optimizedInFailover=""
       reg.1.musicOnHold.uri=""
       reg.1.musicOnHold.uri=""
      reg.1.server.1.address="192.168.42.250"
      reg.1.server.1.port="5060"
       reg.1.server.1.transport="DNSnaptr"
       reg.1.server.1.transport="DNSnaptr"
      reg.1.server.2.transport="DNSnaptr"
       reg.1.server.1.expires=""
       reg.1.server.1.expires=""
       reg.1.server.1.expires.overlap=""
       reg.1.server.1.expires.overlap=""
Line 53: Line 71:
       reg.1.server.1.expires.lineSeize=""
       reg.1.server.1.expires.lineSeize=""
       reg.1.server.1.lcs=""
       reg.1.server.1.lcs=""
      reg.1.server.1.failOver.reRegisterOn=""
      reg.1.server.2.address=""
      reg.1.server.1.failOver.failBack.mode=""
      reg.1.server.1.failOver.failBack.timeout=""
      reg.1.server.2.port=""
      reg.1.server.2.transport="DNSnaptr"
      reg.1.server.2.expires=""
      reg.1.server.2.expires.overlap=""
      reg.1.server.2.register=""
      reg.1.server.2.retryTimeOut=""
      reg.1.server.2.retryMaxCount=""
      reg.1.server.2.expires.lineSeize=""
      reg.1.server.2.lcs=""
      reg.1.server.2.failOver.reRegisterOn=""
      reg.1.server.2.failOver.failRegistrationOn=""
       reg.1.outboundProxy.address=""
       reg.1.outboundProxy.address=""
      reg.1.server.2.failOver.failBack.mode=""
      reg.1.server.2.failOver.failBack.timeout=""
       reg.1.outboundProxy.port=""
       reg.1.outboundProxy.port=""
       reg.1.outboundProxy.transport=""
       reg.1.outboundProxy.transport=""
       reg.1.acd-login-logout="0"
       reg.1.acd-login-logout="0"
      reg.1.outboundProxy.failOver.reRegisterOn=""
       reg.1.acd-agent-available="0"
       reg.1.acd-agent-available="0"
      reg.1.outboundProxy.failOver.failRegistrationOn=""
      reg.1.outboundProxy.failOver.failBack.mode=""
      reg.1.outboundProxy.failOver.failBack.timeout=""
       reg.1.proxyRequire=""
       reg.1.proxyRequire=""
      reg.1.ringType="2"
      reg.1.lineKeys="6"
       reg.1.callsPerLineKey=""
       reg.1.callsPerLineKey=""
       reg.1.bargeInEnabled=""
       reg.1.bargeInEnabled=""
Line 66: Line 103:
       reg.1.serverFeatureControl.cf=""
       reg.1.serverFeatureControl.cf=""
       reg.1.strictLineSeize=""
       reg.1.strictLineSeize=""
      reg.1.useCompleteUriForRetrieve="1"
       reg.1.tcpFastFailover=""
       reg.1.tcpFastFailover=""
      reg.1.protocol.SIP=""
      reg.1.protocol.H323=""
      reg.1.server.H323.1.address=""
      reg.1.server.H323.1.port=""
      reg.1.server.H323.1.expires="" />


      reg.2.displayName="" reg.2.address="" reg.2.label="" reg.2.type="private" reg.2.lcs="" reg.2.csta="" reg.2.thirdPartyName="" reg.2.auth.userId="" reg.2.auth.password="" reg.2.auth.optimizedInFailover="" reg.2.server.1.address="" reg.2.server.1.port="" reg.2.server.1.transport="DNSnaptr" reg.2.server.2.transport="DNSnaptr" reg.2.server.1.expires="" reg.2.server.1.expires.overlap="" reg.2.server.1.register="" reg.2.server.1.retryTimeOut="" reg.2.server.1.retryMaxCount="" reg.2.server.1.expires.lineSeize="" reg.2.outboundProxy.address="" reg.2.outboundProxy.port="" reg.2.outboundProxy.transport="" reg.2.acd-login-logout="0" reg.2.acd-agent-available="0" reg.2.proxyRequire="" reg.2.ringType="2" reg.2.lineKeys="" reg.2.callsPerLineKey="" reg.2.bargeInEnabled="" reg.2.serverFeatureControl.dnd="" reg.2.serverFeatureControl.cf="" reg.2.strictLineSeize=""
  <call>
      reg.3.displayName="" reg.3.address="" reg.3.label="" reg.3.type="private" reg.3.lcs="" reg.3.csta="" reg.3.thirdPartyName="" reg.3.auth.userId="" reg.3.auth.password="" reg.3.auth.optimizedInFailover="" reg.3.server.1.address="" reg.3.server.1.port="" reg.3.server.1.transport="DNSnaptr" reg.3.server.2.transport="DNSnaptr" reg.3.server.1.expires="" reg.3.server.1.expires.overlap="" reg.3.server.1.register="" reg.3.server.1.retryTimeOut="" reg.3.server.1.retryMaxCount="" reg.3.server.1.expires.lineSeize="" reg.3.outboundProxy.address="" reg.3.outboundProxy.port="" reg.3.outboundProxy.transport="" reg.3.acd-login-logout="0" reg.3.acd-agent-available="0" reg.3.proxyRequire="" reg.3.ringType="2" reg.3.lineKeys="" reg.3.callsPerLineKey="" reg.3.bargeInEnabled="" reg.3.serverFeatureControl.dnd="" reg.3.serverFeatureControl.cf="" reg.3.strictLineSeize=""
    <donotdisturb call.donotdisturb.perReg="0" />
      reg.4.displayName="" reg.4.address="" reg.4.label="" reg.4.type="private" reg.4.lcs="" reg.4.csta="" reg.4.thirdPartyName="" reg.4.auth.userId="" reg.4.auth.password="" reg.4.auth.optimizedInFailover="" reg.4.server.1.address="" reg.4.server.1.port="" reg.4.server.1.transport="DNSnaptr" reg.4.server.2.transport="DNSnaptr" reg.4.server.1.expires="" reg.4.server.1.expires.overlap="" reg.4.server.1.register="" reg.4.server.1.retryTimeOut="" reg.4.server.1.retryMaxCount="" reg.4.server.1.expires.lineSeize="" reg.4.outboundProxy.address="" reg.4.outboundProxy.port="" reg.4.outboundProxy.transport="" reg.4.acd-login-logout="0" reg.4.acd-agent-available="0" reg.4.proxyRequire="" reg.4.ringType="2" reg.4.lineKeys="" reg.4.callsPerLineKey="" reg.4.bargeInEnabled="" reg.4.serverFeatureControl.dnd="" reg.4.serverFeatureControl.cf="" reg.4.strictLineSeize=""
      reg.5.displayName="" reg.5.address="" reg.5.label="" reg.5.type="private" reg.5.lcs="" reg.5.csta="" reg.5.thirdPartyName="" reg.5.auth.userId="" reg.5.auth.password="" reg.5.auth.optimizedInFailover="" reg.5.server.1.address="" reg.5.server.1.port="" reg.5.server.1.transport="DNSnaptr" reg.5.server.2.transport="DNSnaptr" reg.5.server.1.expires="" reg.5.server.1.expires.overlap="" reg.5.server.1.register="" reg.5.server.1.retryTimeOut="" reg.5.server.1.retryMaxCount="" reg.5.server.1.expires.lineSeize="" reg.5.outboundProxy.address="" reg.5.outboundProxy.port="" reg.5.outboundProxy.transport="" reg.5.acd-login-logout="0" reg.5.acd-agent-available="0" reg.5.proxyRequire="" reg.5.ringType="2" reg.5.lineKeys="" reg.5.callsPerLineKey="" reg.5.bargeInEnabled="" reg.5.serverFeatureControl.dnd="" reg.5.serverFeatureControl.cf="" reg.5.strictLineSeize=""
      reg.6.displayName="" reg.6.address="" reg.6.label="" reg.6.type="private" reg.6.lcs="" reg.6.csta="" reg.6.thirdPartyName="" reg.6.auth.userId="" reg.6.auth.password="" reg.6.auth.optimizedInFailover="" reg.6.server.1.address="" reg.6.server.1.port="" reg.6.server.1.transport="DNSnaptr" reg.6.server.2.transport="DNSnaptr" reg.6.server.1.expires="" reg.6.server.1.expires.overlap="" reg.6.server.1.register="" reg.6.server.1.retryTimeOut="" reg.6.server.1.retryMaxCount="" reg.6.server.1.expires.lineSeize="" reg.6.outboundProxy.address="" reg.6.outboundProxy.port="" reg.6.outboundProxy.transport="" reg.6.acd-login-logout="0" reg.6.acd-agent-available="0" reg.6.proxyRequire="" reg.6.ringType="2" reg.6.lineKeys="" reg.6.callsPerLineKey="" reg.6.bargeInEnabled="" reg.6.serverFeatureControl.dnd="" reg.6.serverFeatureControl.cf="" reg.6.strictLineSeize=""


  />
    <autoOffHook call.autoOffHook.1.enabled="0"
                call.autoOffHook.1.contact=""
                call.autoOffHook.1.protocol=""
                call.autoOffHook.2.enabled="0"
                call.autoOffHook.2.contact=""
                call.autoOffHook.2.protocol=""
                call.autoOffHook.3.enabled="0"
                call.autoOffHook.3.contact=""
                call.autoOffHook.3.protocol=""
                call.autoOffHook.4.enabled="0"
                call.autoOffHook.4.contact=""
                call.autoOffHook.4.protocol=""
                call.autoOffHook.5.enabled="0"
                call.autoOffHook.5.contact=""
                call.autoOffHook.5.protocol=""
                call.autoOffHook.6.enabled="0"
                call.autoOffHook.6.contact=""
                call.autoOffHook.6.protocol="" />


  <call>
    <missedCallTracking call.missedCallTracking.1.enabled="1"
      <donotdisturb call.donotdisturb.perReg="0"/>
                        call.missedCallTracking.2.enabled="1"
                        call.missedCallTracking.3.enabled="1"
                        call.missedCallTracking.4.enabled="1"
                        call.missedCallTracking.5.enabled="1"
                        call.missedCallTracking.6.enabled="1" />


      <autoOffHook
    <serverMissedCall call.serverMissedCall.1.enabled="0"
        call.autoOffHook.1.enabled="0" call.autoOffHook.1.contact=""
                      call.serverMissedCall.2.enabled="0"
        call.autoOffHook.2.enabled="0" call.autoOffHook.2.contact=""
                      call.serverMissedCall.3.enabled="0"
        call.autoOffHook.3.enabled="0" call.autoOffHook.3.contact=""
                      call.serverMissedCall.4.enabled="0"
        call.autoOffHook.4.enabled="0" call.autoOffHook.4.contact=""
                      call.serverMissedCall.5.enabled="0"
        call.autoOffHook.5.enabled="0" call.autoOffHook.5.contact=""
                      call.serverMissedCall.6.enabled="0" />
        call.autoOffHook.6.enabled="0" call.autoOffHook.6.contact=""/>


      <missedCallTracking
    <callWaiting call.callWaiting.ring="beep" />
        call.missedCallTracking.1.enabled="1"
  </call>
        call.missedCallTracking.2.enabled="1"
        call.missedCallTracking.3.enabled="1"
        call.missedCallTracking.4.enabled="1"
        call.missedCallTracking.5.enabled="1"
        call.missedCallTracking.6.enabled="1"/>


      <serverMissedCall
  <divert divert.1.contact=""
        call.serverMissedCall.1.enabled="0"
          divert.1.autoOnSpecificCaller="1"
        call.serverMissedCall.2.enabled="0"
          divert.1.sharedDisabled="1"
        call.serverMissedCall.3.enabled="0"
          divert.2.contact=""
        call.serverMissedCall.4.enabled="0"
          divert.2.autoOnSpecificCaller="1"
        call.serverMissedCall.5.enabled="0"
          divert.2.sharedDisabled="1"
        call.serverMissedCall.6.enabled="0"/>
          divert.3.contact=""
          divert.3.autoOnSpecificCaller="1"
          divert.3.sharedDisabled="1"
          divert.4.contact=""
          divert.4.autoOnSpecificCaller="1"
          divert.4.sharedDisabled="1"
          divert.5.contact=""
          divert.5.autoOnSpecificCaller="1"
          divert.5.sharedDisabled="1"
          divert.6.contact=""
          divert.6.autoOnSpecificCaller="1"
          divert.6.sharedDisabled="1">


      <callWaiting call.callWaiting.ring="beep"/>
    <fwd divert.fwd.1.enabled="1"
  </call>
 
 
  <divert
        divert.1.contact="" divert.1.autoOnSpecificCaller="1" divert.1.sharedDisabled="1"
        divert.2.contact="" divert.2.autoOnSpecificCaller="1" divert.2.sharedDisabled="1"
        divert.3.contact="" divert.3.autoOnSpecificCaller="1" divert.3.sharedDisabled="1"
        divert.4.contact="" divert.4.autoOnSpecificCaller="1" divert.4.sharedDisabled="1"
        divert.5.contact="" divert.5.autoOnSpecificCaller="1" divert.5.sharedDisabled="1"
        divert.6.contact="" divert.6.autoOnSpecificCaller="1" divert.6.sharedDisabled="1">
 
      <fwd
        divert.fwd.1.enabled="1"
         divert.fwd.2.enabled="1"
         divert.fwd.2.enabled="1"
         divert.fwd.3.enabled="1"
         divert.fwd.3.enabled="1"
         divert.fwd.4.enabled="1"
         divert.fwd.4.enabled="1"
         divert.fwd.5.enabled="1"
         divert.fwd.5.enabled="1"
         divert.fwd.6.enabled="1"/>
         divert.fwd.6.enabled="1" />
 
    <busy divert.busy.1.enabled="1"
          divert.busy.1.contact=""
          divert.busy.2.enabled="1"
          divert.busy.2.contact=""
          divert.busy.3.enabled="1"
          divert.busy.3.contact=""
          divert.busy.4.enabled="1"
          divert.busy.4.contact=""
          divert.busy.5.enabled="1"
          divert.busy.5.contact=""
          divert.busy.6.enabled="1"
          divert.busy.6.contact="" />
 
    <noanswer divert.noanswer.1.enabled="1"
              divert.noanswer.1.timeout="55"
              divert.noanswer.1.contact=""
              divert.noanswer.2.enabled="1"
              divert.noanswer.2.timeout="55"
              divert.noanswer.2.contact=""
              divert.noanswer.3.enabled="1"
              divert.noanswer.3.timeout="55"
              divert.noanswer.3.contact=""
              divert.noanswer.4.enabled="1"
              divert.noanswer.4.timeout="55"
              divert.noanswer.4.contact=""
              divert.noanswer.5.enabled="1"
              divert.noanswer.5.timeout="55"
              divert.noanswer.5.contact=""
              divert.noanswer.6.enabled="1"
              divert.noanswer.6.timeout="55"
              divert.noanswer.6.contact="" />


      <busy
    <dnd divert.dnd.1.enabled="0"
        divert.busy.1.enabled="1" divert.busy.1.contact=""
        divert.dnd.1.contact=""
         divert.busy.2.enabled="1" divert.busy.2.contact=""
         divert.dnd.2.enabled="0"
         divert.busy.3.enabled="1" divert.busy.3.contact=""
        divert.dnd.2.contact=""
         divert.busy.4.enabled="1" divert.busy.4.contact=""
         divert.dnd.3.enabled="0"
         divert.busy.5.enabled="1" divert.busy.5.contact=""
        divert.dnd.3.contact=""
         divert.busy.6.enabled="1" divert.busy.6.contact=""/>
         divert.dnd.4.enabled="0"
        divert.dnd.4.contact=""
         divert.dnd.5.enabled="0"
        divert.dnd.5.contact=""
         divert.dnd.6.enabled="0"
        divert.dnd.6.contact="" />
  </divert>


      <noanswer
        divert.noanswer.1.enabled="1" divert.noanswer.1.timeout="60" divert.noanswer.1.contact=""
        divert.noanswer.2.enabled="1" divert.noanswer.2.timeout="60" divert.noanswer.2.contact=""
        divert.noanswer.3.enabled="1" divert.noanswer.3.timeout="60" divert.noanswer.3.contact=""
        divert.noanswer.4.enabled="1" divert.noanswer.4.timeout="60" divert.noanswer.4.contact=""
        divert.noanswer.5.enabled="1" divert.noanswer.5.timeout="60" divert.noanswer.5.contact=""
        divert.noanswer.6.enabled="1" divert.noanswer.6.timeout="60" divert.noanswer.6.contact=""/>


      <dnd
  <dialplan dialplan.1.impossibleMatchHandling="0"
        divert.dnd.1.enabled="0" divert.dnd.1.contact=""
            dialplan.1.removeEndOfDial="1"
        divert.dnd.2.enabled="0" divert.dnd.2.contact=""
            dialplan.1.applyToUserSend="1"
        divert.dnd.3.enabled="0" divert.dnd.3.contact=""
            dialplan.1.applyToUserDial="1"
        divert.dnd.4.enabled="0" divert.dnd.4.contact=""
            dialplan.1.applyToCallListDial="0"
        divert.dnd.5.enabled="0" divert.dnd.5.contact=""
            dialplan.1.applyToDirectoryDial="0"
        divert.dnd.6.enabled="0" divert.dnd.6.contact=""/>
            dialplan.1.applyToTelUriDial="1"
            dialplan.2.impossibleMatchHandling="0"
            dialplan.2.removeEndOfDial="1"
            dialplan.2.applyToUserSend="1"
            dialplan.2.applyToUserDial="1"
            dialplan.2.applyToCallListDial="0"
            dialplan.2.applyToDirectoryDial="0"
            dialplan.2.applyToTelUriDial="1"
            dialplan.3.impossibleMatchHandling="0"
            dialplan.3.removeEndOfDial="1"
            dialplan.3.applyToUserSend="1"
            dialplan.3.applyToUserDial="1"
            dialplan.3.applyToCallListDial="0"
            dialplan.3.applyToDirectoryDial="0"
            dialplan.3.applyToTelUriDial="1"
            dialplan.4.impossibleMatchHandling="0"
            dialplan.4.removeEndOfDial="1"
            dialplan.4.applyToUserSend="1"
            dialplan.4.applyToUserDial="1"
            dialplan.4.applyToCallListDial="0"
            dialplan.4.applyToDirectoryDial="0"
            dialplan.4.applyToTelUriDial="1"
            dialplan.5.impossibleMatchHandling="0"
            dialplan.5.removeEndOfDial="1"
            dialplan.5.applyToUserSend="1"
            dialplan.5.applyToUserDial="1"
            dialplan.5.applyToCallListDial="0"
            dialplan.5.applyToDirectoryDial="0"
            dialplan.5.applyToTelUriDial="1"
            dialplan.6.impossibleMatchHandling="0"
            dialplan.6.removeEndOfDial="1"
            dialplan.6.applyToUserSend="1"
            dialplan.6.applyToUserDial="1"
            dialplan.6.applyToCallListDial="0"
            dialplan.6.applyToDirectoryDial="0"
            dialplan.6.applyToTelUriDial="1">


  </divert>
    <digitmap dialplan.1.digitmap=""
              dialplan.1.digitmap.timeOut=""
              dialplan.2.digitmap=""
              dialplan.2.digitmap.timeOut=""
              dialplan.3.digitmap=""
              dialplan.3.digitmap.timeOut=""
              dialplan.4.digitmap=""
              dialplan.4.digitmap.timeOut=""
              dialplan.5.digitmap=""
              dialplan.5.digitmap.timeOut=""
              dialplan.6.digitmap=""
              dialplan.6.digitmap.timeOut="" />


  <dialplan
    <routing>
        dialplan.1.impossibleMatchHandling="0"
      <server dialplan.1.routing.server.1.address=""
        dialplan.1.removeEndOfDial="1"
              dialplan.1.routing.server.1.port=""
        dialplan.1.applyToUserSend="1"
              dialplan.2.routing.server.1.address=""
        dialplan.1.applyToUserDial="1"
              dialplan.2.routing.server.1.port=""
        dialplan.1.applyToCallListDial="0"
              dialplan.3.routing.server.1.address=""
        dialplan.1.applyToDirectoryDial="0"
              dialplan.3.routing.server.1.port=""
              dialplan.4.routing.server.1.address=""
              dialplan.4.routing.server.1.port=""
              dialplan.5.routing.server.1.address=""
              dialplan.5.routing.server.1.port=""
              dialplan.6.routing.server.1.address=""
              dialplan.6.routing.server.1.port="" />


        dialplan.2.impossibleMatchHandling="0" dialplan.2.removeEndOfDial="1" dialplan.2.applyToUserSend="1" dialplan.2.applyToUserDial="1" dialplan.2.applyToCallListDial="0" dialplan.2.applyToDirectoryDial="0"
      <emergency dialplan.1.routing.emergency.1.value=""
        dialplan.3.impossibleMatchHandling="0" dialplan.3.removeEndOfDial="1" dialplan.3.applyToUserSend="1" dialplan.3.applyToUserDial="1" dialplan.3.applyToCallListDial="0" dialplan.3.applyToDirectoryDial="0"
                dialplan.1.routing.emergency.1.server.1=""
        dialplan.4.impossibleMatchHandling="0" dialplan.4.removeEndOfDial="1" dialplan.4.applyToUserSend="1" dialplan.4.applyToUserDial="1" dialplan.4.applyToCallListDial="0" dialplan.4.applyToDirectoryDial="0"
                dialplan.2.routing.emergency.1.value=""
        dialplan.5.impossibleMatchHandling="0" dialplan.5.removeEndOfDial="1" dialplan.5.applyToUserSend="1" dialplan.5.applyToUserDial="1" dialplan.5.applyToCallListDial="0" dialplan.5.applyToDirectoryDial="0"
                dialplan.2.routing.emergency.1.server.1=""
        dialplan.6.impossibleMatchHandling="0" dialplan.6.removeEndOfDial="1" dialplan.6.applyToUserSend="1" dialplan.6.applyToUserDial="1" dialplan.6.applyToCallListDial="0" dialplan.6.applyToDirectoryDial="0">
                dialplan.3.routing.emergency.1.value=""
                dialplan.3.routing.emergency.1.server.1=""
                dialplan.4.routing.emergency.1.value=""
                dialplan.4.routing.emergency.1.server.1=""
                dialplan.5.routing.emergency.1.value=""
                dialplan.5.routing.emergency.1.server.1=""
                dialplan.6.routing.emergency.1.value=""
                dialplan.6.routing.emergency.1.server.1="" />
    </routing>
  </dialplan>


      <digitmap
  <msg msg.bypassInstantMessage="1">
         dialplan.1.digitmap="" dialplan.1.digitmap.timeOut=""
    <mwi msg.mwi.1.subscribe=""
         dialplan.2.digitmap="" dialplan.2.digitmap.timeOut=""
         msg.mwi.1.callBackMode="registration"
         dialplan.3.digitmap="" dialplan.3.digitmap.timeOut=""
        msg.mwi.1.callBack=""
         dialplan.4.digitmap="" dialplan.4.digitmap.timeOut=""
        msg.mwi.2.subscribe=""
         dialplan.5.digitmap="" dialplan.5.digitmap.timeOut=""
         msg.mwi.2.callBackMode="registration"
         dialplan.6.digitmap="" dialplan.6.digitmap.timeOut=""/>
        msg.mwi.2.callBack=""
        msg.mwi.3.subscribe=""
         msg.mwi.3.callBackMode="registration"
        msg.mwi.3.callBack=""
        msg.mwi.4.subscribe=""
         msg.mwi.4.callBackMode="registration"
        msg.mwi.4.callBack=""
        msg.mwi.5.subscribe=""
         msg.mwi.5.callBackMode="registration"
        msg.mwi.5.callBack=""
        msg.mwi.6.subscribe=""
         msg.mwi.6.callBackMode="registration"
        msg.mwi.6.callBack="" />
  </msg>


      <routing>
  <nat nat.ip=""
        <server
      nat.signalPort=""
        dialplan.1.routing.server.1.address="" dialplan.1.routing.server.1.port=""
      nat.mediaPortStart=""
        dialplan.2.routing.server.1.address="" dialplan.2.routing.server.1.port=""
      nat.keepalive.interval="" />
        dialplan.3.routing.server.1.address="" dialplan.3.routing.server.1.port=""
 
        dialplan.4.routing.server.1.address="" dialplan.4.routing.server.1.port=""
  <attendant attendant.uri=""
        dialplan.5.routing.server.1.address="" dialplan.5.routing.server.1.port=""
            attendant.reg=""
        dialplan.6.routing.server.1.address="" dialplan.6.routing.server.1.port=""/>
            attendant.ringType="1"
            attendant.behaviors.display.spontaneousCallAppearances.normal=""
            attendant.behaviors.display.spontaneousCallAppearances.automata=""
            attendant.behaviors.display.remoteCallerID.normal=""
            attendant.behaviors.display.remoteCallerID.automata=""
            attendant.resourceList.1.address="" attendant.resourceList.1.label="" attendant.resourceList.1.type=""
            attendant.resourceList.2.address="" attendant.resourceList.2.label="" attendant.resourceList.2.type=""
            attendant.resourceList.3.address="" attendant.resourceList.3.label="" attendant.resourceList.3.type=""
            attendant.resourceList.4.address="" attendant.resourceList.4.label="" attendant.resourceList.4.type=""
            attendant.resourceList.5.address="" attendant.resourceList.5.label="" attendant.resourceList.5.type=""
            attendant.resourceList.6.address="" attendant.resourceList.6.label="" attendant.resourceList.6.type=""
            attendant.resourceList.7.address="" attendant.resourceList.7.label="" attendant.resourceList.7.type=""
            attendant.resourceList.8.address="" attendant.resourceList.8.label="" attendant.resourceList.8.type=""
            attendant.resourceList.9.address="" attendant.resourceList.9.label="" attendant.resourceList.9.type=""
            attendant.resourceList.10.address="" attendant.resourceList.10.label="" attendant.resourceList.10.type=""
            attendant.resourceList.11.address="" attendant.resourceList.11.label="" attendant.resourceList.11.type=""
            attendant.resourceList.12.address="" attendant.resourceList.12.label="" attendant.resourceList.12.type=""
            attendant.resourceList.13.address="" attendant.resourceList.13.label="" attendant.resourceList.13.type=""
            attendant.resourceList.14.address="" attendant.resourceList.14.label="" attendant.resourceList.14.type=""
            attendant.resourceList.15.address="" attendant.resourceList.15.label="" attendant.resourceList.15.type=""
            attendant.resourceList.16.address="" attendant.resourceList.16.label="" attendant.resourceList.16.type=""
            attendant.resourceList.17.address="" attendant.resourceList.17.label="" attendant.resourceList.17.type=""
            attendant.resourceList.18.address="" attendant.resourceList.18.label="" attendant.resourceList.18.type=""
            attendant.resourceList.19.address="" attendant.resourceList.19.label="" attendant.resourceList.19.type=""
            attendant.resourceList.20.address="" attendant.resourceList.20.label="" attendant.resourceList.20.type=""
            attendant.resourceList.21.address="" attendant.resourceList.21.label="" attendant.resourceList.21.type=""
            attendant.resourceList.22.address="" attendant.resourceList.22.label="" attendant.resourceList.22.type=""
            attendant.resourceList.23.address="" attendant.resourceList.23.label="" attendant.resourceList.23.type=""
            attendant.resourceList.24.address="" attendant.resourceList.24.label="" attendant.resourceList.24.type=""
            attendant.resourceList.25.address="" attendant.resourceList.25.label="" attendant.resourceList.25.type=""
            attendant.resourceList.26.address="" attendant.resourceList.26.label="" attendant.resourceList.26.type=""
            attendant.resourceList.27.address="" attendant.resourceList.27.label="" attendant.resourceList.27.type=""
            attendant.resourceList.28.address="" attendant.resourceList.28.label="" attendant.resourceList.28.type=""
            attendant.resourceList.29.address="" attendant.resourceList.29.label="" attendant.resourceList.29.type=""
            attendant.resourceList.30.address="" attendant.resourceList.30.label="" attendant.resourceList.30.type=""
            attendant.resourceList.31.address="" attendant.resourceList.31.label="" attendant.resourceList.31.type=""
            attendant.resourceList.32.address="" attendant.resourceList.32.label="" attendant.resourceList.32.type=""
            attendant.resourceList.33.address="" attendant.resourceList.33.label="" attendant.resourceList.33.type=""
            attendant.resourceList.34.address="" attendant.resourceList.34.label="" attendant.resourceList.34.type=""
            attendant.resourceList.35.address="" attendant.resourceList.35.label="" attendant.resourceList.35.type=""
            attendant.resourceList.36.address="" attendant.resourceList.36.label="" attendant.resourceList.36.type=""
            attendant.resourceList.37.address="" attendant.resourceList.37.label="" attendant.resourceList.37.type=""
            attendant.resourceList.38.address="" attendant.resourceList.38.label="" attendant.resourceList.38.type=""
            attendant.resourceList.39.address="" attendant.resourceList.39.label="" attendant.resourceList.39.type=""
            attendant.resourceList.40.address="" attendant.resourceList.40.label="" attendant.resourceList.40.type=""
            attendant.resourceList.41.address="" attendant.resourceList.41.label="" attendant.resourceList.41.type=""
            attendant.resourceList.42.address="" attendant.resourceList.42.label="" attendant.resourceList.42.type=""
            attendant.resourceList.43.address="" attendant.resourceList.43.label="" attendant.resourceList.43.type=""
            attendant.resourceList.44.address="" attendant.resourceList.44.label="" attendant.resourceList.44.type=""
            attendant.resourceList.45.address="" attendant.resourceList.45.label="" attendant.resourceList.45.type=""
            attendant.resourceList.46.address="" attendant.resourceList.46.label="" attendant.resourceList.46.type=""
            attendant.resourceList.47.address="" attendant.resourceList.47.label="" attendant.resourceList.47.type="" />
  <roaming_buddies roaming_buddies.reg="" />
  <roaming_privacy roaming_privacy.reg="" />
 
  <user_preferences up.analogHeadsetOption="0"
                    up.offHookAction.none=""
                    up.pictureFrame.folder=""
                    up.pictureFrame.timePerImage=""
                    up.screenSaver.enabled="0"
                    up.screenSaver.waitTime="" />
 
  <acd acd.reg="" acd.stateAtSignIn="" />
</phone>
</pre>
 
= sip.cfg =
The following changes to sip.cfg will increase the users’ experience.
 
=== url dialing ===
This is so that the CID is the actual CID set in Asterisk and not exten@IP_address.
 
<pre>
from feature.9.name="url-dialing" feature.9.enabled="1"
to  feature.9.name="url-dialing" feature.9.enabled="0"
</pre>


        <emergency
=== time zone ===
        dialplan.1.routing.emergency.1.value="" dialplan.1.routing.emergency.1.server.1=""
Set the required time zone. The field tcpIpApp.sntp.resyncPeriod is the amount of secdons that the telephone should resync its time from the NTP server.
        dialplan.2.routing.emergency.1.value="" dialplan.2.routing.emergency.1.server.1=""
        dialplan.3.routing.emergency.1.value="" dialplan.3.routing.emergency.1.server.1=""
        dialplan.4.routing.emergency.1.value="" dialplan.4.routing.emergency.1.server.1=""
        dialplan.5.routing.emergency.1.value="" dialplan.5.routing.emergency.1.server.1=""
        dialplan.6.routing.emergency.1.value="" dialplan.6.routing.emergency.1.server.1=""/>
      </routing>
  </dialplan>


<pre>
from tcpIpApp.sntp.resyncPeriod="86400" tcpIpApp.sntp.address=""
to  tcpIpApp.sntp.resyncPeriod="21600" tcpIpApp.sntp.address="ntp.bri.connect.com.au"


  <msg
from  tcpIpApp.sntp.gmtOffset=""
        msg.bypassInstantMessage="0">
to    tcpIpApp.sntp.gmtOffset="36000" <-- in secdons  i.e. GMT +10 = 36000
      <mwi
</pre>
        msg.mwi.1.subscribe="" msg.mwi.1.callBackMode="contact" msg.mwi.1.callBack="9999"
        msg.mwi.2.subscribe="" msg.mwi.2.callBackMode="registration" msg.mwi.2.callBack=""
        msg.mwi.3.subscribe="" msg.mwi.3.callBackMode="registration" msg.mwi.3.callBack=""
        msg.mwi.4.subscribe="" msg.mwi.4.callBackMode="registration" msg.mwi.4.callBack=""
        msg.mwi.5.subscribe="" msg.mwi.5.callBackMode="registration" msg.mwi.5.callBack=""
        msg.mwi.6.subscribe="" msg.mwi.6.callBackMode="registration" msg.mwi.6.callBack=""/>
  </msg>


  <nat nat.ip="" nat.signalPort="" nat.mediaPortStart="" nat.keepalive.interval=""/>
If you are in an area that has day light savings then you also need to set these appropriate settings
  <attendant attendant.uri="" attendant.reg="" attendant.ringType=""/>
<pre>
  <roaming_buddies roaming_buddies.reg=""/>
tcpIpApp.sntp.address.overrideDHCP="0" tcpIpApp.sntp.gmtOffset="36000" tcpIpApp.sntp.gmtOffset.overrideDHCP="0"
  <roaming_privacy roaming_privacy.reg=""/>
tcpIpApp.sntp.daylightSavings.enable="0" tcpIpApp.sntp.daylightSavings.fixedDayEnable="0" tcpIpApp.sntp.daylightSavings.start.month="3"
tcpIpApp.sntp.daylightSavings.start.date="8" tcpIpApp.sntp.daylightSavings.start.time="2" tcpIpApp.sntp.daylightSavings.start.dayOfWeek="1"
tcpIpApp.sntp.daylightSavings.start.dayOfWeek.lastInMonth="0" tcpIpApp.sntp.daylightSavings.stop.month="11"
tcpIpApp.sntp.daylightSavings.stop.date="1" tcpIpApp.sntp.daylightSavings.stop.time="2" tcpIpApp.sntp.daylightSavings.stop.dayOfWeek="1"
tcpIpApp.sntp.daylightSavings.stop.dayOfWeek.lastInMonth="0"
</pre>


  <user_preferences
=== language ===
        up.analogHeadsetOption="0"
To set the language of the handset.
        up.offHookAction.none=""
        up.pictureFrame.folder=""
        up.pictureFrame.timePerImage=""
        up.screenSaver.enabled="0"
        up.screenSaver.waitTime=""/>


  <acd acd.reg="" acd.stateAtSignIn=""/>
<pre>
from lcl.ml.lang=""
to  lcl.ml.lang="English_United_Kingdom"
</pre>


</phone1>
=== miscellaneous settings ===
<pre>
from feature.1.name="presence" feature.1.enabled="0" to feature.1.name="presence" feature.1.enabled="1"
from  up.welcomeSoundOnWarmBootEnabled="0" to  up.welcomeSoundOnWarmBootEnabled="1"
</pre>
</pre>
[[Category : Polycom]] [[Category : Asterisk]]
[[Category : Polycom]] [[Category : Asterisk]]

Revision as of 00:35, 29 June 2010

To provision a Polycom Phone.

tftp setup

First create a user account making sure you use the same name as the password.

useradd PlcmSpIp
passwd PlcmSpIp
  1. Download the latest SIP and BootROM files form the Polycom WEB site and extract the ZIP files to the /home/PlcmSpIp folder.
  2. Setup DHCP with option 66 to point the IP or FQDN of the server you have created the PlcmSpIp user on.
  3. Now you need to install a TFTP server. Review the page Tftp on how to do so.
  4. Now the important part is to edit the cfg files in /home/PlcmSpIp

macaddress.cfg

<?xml version="1.0" standalone="yes"?>
<!-- Default Master SIP Configuration File-->
<!-- For information on configuring Polycom VoIP phones please refer to the -->
<!-- Configuration File Management white paper available from: -->
<!-- http://www.polycom.com/common/documents/whitepapers/configuration_file_management_on_soundpoint_ip_phones.pdf -->
<!-- $RCSfile: 000000000000.cfg,v $  $Revision: 1.21.20.3 $ -->

<APPLICATION APP_FILE_PATH="sip.ld" CONFIG_FILES="201.cfg, sip.cfg" MISC_FILES="" LOG_FILE_DIRECTORY="" OVERRIDES_DIRECTORY="" CONTACTS_DIRECTORY="" LICENSE_DIRECTORY="">


<APPLICATION_VVX1500 CONFIG_FILES_VVX1500="phone1.cfg, sip.cfg"/>

<!-- Change sip_vvx1500.cfg to sip_vvx1500_H323.cfg to enable H.323 if so licensed -->
<APPLICATION_SPIP300 APP_FILE_PATH_SPIP300="sip_212.ld" CONFIG_FILES_SPIP300="phone1_212.cfg, sip_212.cfg"/>
<APPLICATION_SPIP500 APP_FILE_PATH_SPIP500="sip_212.ld" CONFIG_FILES_SPIP500="phone1_212.cfg, sip_212.cfg"/>
<APPLICATION_SPIP301 APP_FILE_PATH_SPIP301="sip_313.ld" CONFIG_FILES_SPIP301="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SPIP501 APP_FILE_PATH_SPIP501="sip_313.ld" CONFIG_FILES_SPIP501="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SPIP600 APP_FILE_PATH_SPIP600="sip_313.ld" CONFIG_FILES_SPIP600="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SPIP601 APP_FILE_PATH_SPIP601="sip_313.ld" CONFIG_FILES_SPIP601="phone1_313.cfg, sip_313.cfg"/>
<APPLICATION_SSIP4000 APP_FILE_PATH_SSIP4000="sip_313.ld" CONFIG_FILES_SSIP4000="phone1_313.cfg, sip_313.cfg"/>

</APPLICATION>

extension.cfg

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!-- Example Per-phone Configuration File -->
<!-- $RCSfile: phone1.cfg,v $  $Revision: 1.121.4.5 $ -->
<phone>
  <reg 

       reg.1.auth.userId="201"
       reg.1.auth.password=""
       reg.1.server.1.address="192.168.1.1"
       reg.1.server.1.port="5060"
       reg.1.address="201"
       reg.1.label="201"
       reg.1.ringType="2"
       reg.1.lineKeys="4"

       reg.1.displayName=""
       reg.1.type="private"
       reg.1.lcs=""
       reg.1.csta=""
       reg.1.thirdPartyName=""
       reg.1.auth.optimizedInFailover=""
       reg.1.musicOnHold.uri=""
       reg.1.server.1.transport="DNSnaptr"
       reg.1.server.1.expires=""
       reg.1.server.1.expires.overlap=""
       reg.1.server.1.register=""
       reg.1.server.1.retryTimeOut=""
       reg.1.server.1.retryMaxCount=""
       reg.1.server.1.expires.lineSeize=""
       reg.1.server.1.lcs=""
       reg.1.server.1.failOver.reRegisterOn=""
       reg.1.server.2.address=""
       reg.1.server.1.failOver.failBack.mode=""
       reg.1.server.1.failOver.failBack.timeout=""
       reg.1.server.2.port=""
       reg.1.server.2.transport="DNSnaptr"
       reg.1.server.2.expires=""
       reg.1.server.2.expires.overlap=""
       reg.1.server.2.register=""
       reg.1.server.2.retryTimeOut=""
       reg.1.server.2.retryMaxCount=""
       reg.1.server.2.expires.lineSeize=""
       reg.1.server.2.lcs=""
       reg.1.server.2.failOver.reRegisterOn=""
       reg.1.server.2.failOver.failRegistrationOn=""
       reg.1.outboundProxy.address=""
       reg.1.server.2.failOver.failBack.mode=""
       reg.1.server.2.failOver.failBack.timeout=""
       reg.1.outboundProxy.port=""
       reg.1.outboundProxy.transport=""
       reg.1.acd-login-logout="0"
       reg.1.outboundProxy.failOver.reRegisterOn=""
       reg.1.acd-agent-available="0"
       reg.1.outboundProxy.failOver.failRegistrationOn=""
       reg.1.outboundProxy.failOver.failBack.mode=""
       reg.1.outboundProxy.failOver.failBack.timeout=""
       reg.1.proxyRequire=""
       reg.1.callsPerLineKey=""
       reg.1.bargeInEnabled=""
       reg.1.serverFeatureControl.dnd=""
       reg.1.serverFeatureControl.cf=""
       reg.1.strictLineSeize=""
       reg.1.useCompleteUriForRetrieve="1"
       reg.1.tcpFastFailover=""
       reg.1.protocol.SIP=""
       reg.1.protocol.H323=""
       reg.1.server.H323.1.address=""
       reg.1.server.H323.1.port=""
       reg.1.server.H323.1.expires="" />

  <call>
    <donotdisturb call.donotdisturb.perReg="0" />

    <autoOffHook call.autoOffHook.1.enabled="0"
                 call.autoOffHook.1.contact=""
                 call.autoOffHook.1.protocol=""
                 call.autoOffHook.2.enabled="0"
                 call.autoOffHook.2.contact=""
                 call.autoOffHook.2.protocol=""
                 call.autoOffHook.3.enabled="0"
                 call.autoOffHook.3.contact=""
                 call.autoOffHook.3.protocol=""
                 call.autoOffHook.4.enabled="0"
                 call.autoOffHook.4.contact=""
                 call.autoOffHook.4.protocol=""
                 call.autoOffHook.5.enabled="0"
                 call.autoOffHook.5.contact=""
                 call.autoOffHook.5.protocol=""
                 call.autoOffHook.6.enabled="0"
                 call.autoOffHook.6.contact=""
                 call.autoOffHook.6.protocol="" />

    <missedCallTracking call.missedCallTracking.1.enabled="1"
                        call.missedCallTracking.2.enabled="1"
                        call.missedCallTracking.3.enabled="1"
                        call.missedCallTracking.4.enabled="1"
                        call.missedCallTracking.5.enabled="1"
                        call.missedCallTracking.6.enabled="1" />

    <serverMissedCall call.serverMissedCall.1.enabled="0"
                      call.serverMissedCall.2.enabled="0"
                      call.serverMissedCall.3.enabled="0"
                      call.serverMissedCall.4.enabled="0"
                      call.serverMissedCall.5.enabled="0"
                      call.serverMissedCall.6.enabled="0" />

    <callWaiting call.callWaiting.ring="beep" />
  </call>

  <divert divert.1.contact=""
          divert.1.autoOnSpecificCaller="1"
          divert.1.sharedDisabled="1"
          divert.2.contact=""
          divert.2.autoOnSpecificCaller="1"
          divert.2.sharedDisabled="1"
          divert.3.contact=""
          divert.3.autoOnSpecificCaller="1"
          divert.3.sharedDisabled="1"
          divert.4.contact=""
          divert.4.autoOnSpecificCaller="1"
          divert.4.sharedDisabled="1"
          divert.5.contact=""
          divert.5.autoOnSpecificCaller="1"
          divert.5.sharedDisabled="1"
          divert.6.contact=""
          divert.6.autoOnSpecificCaller="1"
          divert.6.sharedDisabled="1">

    <fwd divert.fwd.1.enabled="1"
         divert.fwd.2.enabled="1"
         divert.fwd.3.enabled="1"
         divert.fwd.4.enabled="1"
         divert.fwd.5.enabled="1"
         divert.fwd.6.enabled="1" />

    <busy divert.busy.1.enabled="1"
          divert.busy.1.contact=""
          divert.busy.2.enabled="1"
          divert.busy.2.contact=""
          divert.busy.3.enabled="1"
          divert.busy.3.contact=""
          divert.busy.4.enabled="1"
          divert.busy.4.contact=""
          divert.busy.5.enabled="1"
          divert.busy.5.contact=""
          divert.busy.6.enabled="1"
          divert.busy.6.contact="" />

    <noanswer divert.noanswer.1.enabled="1"
              divert.noanswer.1.timeout="55"
              divert.noanswer.1.contact=""
              divert.noanswer.2.enabled="1"
              divert.noanswer.2.timeout="55"
              divert.noanswer.2.contact=""
              divert.noanswer.3.enabled="1"
              divert.noanswer.3.timeout="55"
              divert.noanswer.3.contact=""
              divert.noanswer.4.enabled="1"
              divert.noanswer.4.timeout="55"
              divert.noanswer.4.contact=""
              divert.noanswer.5.enabled="1"
              divert.noanswer.5.timeout="55"
              divert.noanswer.5.contact=""
              divert.noanswer.6.enabled="1"
              divert.noanswer.6.timeout="55"
              divert.noanswer.6.contact="" />

    <dnd divert.dnd.1.enabled="0"
         divert.dnd.1.contact=""
         divert.dnd.2.enabled="0"
         divert.dnd.2.contact=""
         divert.dnd.3.enabled="0"
         divert.dnd.3.contact=""
         divert.dnd.4.enabled="0"
         divert.dnd.4.contact=""
         divert.dnd.5.enabled="0"
         divert.dnd.5.contact=""
         divert.dnd.6.enabled="0"
         divert.dnd.6.contact="" />
  </divert>


  <dialplan dialplan.1.impossibleMatchHandling="0"
            dialplan.1.removeEndOfDial="1"
            dialplan.1.applyToUserSend="1"
            dialplan.1.applyToUserDial="1"
            dialplan.1.applyToCallListDial="0"
            dialplan.1.applyToDirectoryDial="0"
            dialplan.1.applyToTelUriDial="1"
            dialplan.2.impossibleMatchHandling="0"
            dialplan.2.removeEndOfDial="1"
            dialplan.2.applyToUserSend="1"
            dialplan.2.applyToUserDial="1"
            dialplan.2.applyToCallListDial="0"
            dialplan.2.applyToDirectoryDial="0"
            dialplan.2.applyToTelUriDial="1"
            dialplan.3.impossibleMatchHandling="0"
            dialplan.3.removeEndOfDial="1"
            dialplan.3.applyToUserSend="1"
            dialplan.3.applyToUserDial="1"
            dialplan.3.applyToCallListDial="0"
            dialplan.3.applyToDirectoryDial="0"
            dialplan.3.applyToTelUriDial="1"
            dialplan.4.impossibleMatchHandling="0"
            dialplan.4.removeEndOfDial="1"
            dialplan.4.applyToUserSend="1"
            dialplan.4.applyToUserDial="1"
            dialplan.4.applyToCallListDial="0"
            dialplan.4.applyToDirectoryDial="0"
            dialplan.4.applyToTelUriDial="1"
            dialplan.5.impossibleMatchHandling="0"
            dialplan.5.removeEndOfDial="1"
            dialplan.5.applyToUserSend="1"
            dialplan.5.applyToUserDial="1"
            dialplan.5.applyToCallListDial="0"
            dialplan.5.applyToDirectoryDial="0"
            dialplan.5.applyToTelUriDial="1"
            dialplan.6.impossibleMatchHandling="0"
            dialplan.6.removeEndOfDial="1"
            dialplan.6.applyToUserSend="1"
            dialplan.6.applyToUserDial="1"
            dialplan.6.applyToCallListDial="0"
            dialplan.6.applyToDirectoryDial="0"
            dialplan.6.applyToTelUriDial="1">

    <digitmap dialplan.1.digitmap=""
              dialplan.1.digitmap.timeOut=""
              dialplan.2.digitmap=""
              dialplan.2.digitmap.timeOut=""
              dialplan.3.digitmap=""
              dialplan.3.digitmap.timeOut=""
              dialplan.4.digitmap=""
              dialplan.4.digitmap.timeOut=""
              dialplan.5.digitmap=""
              dialplan.5.digitmap.timeOut=""
              dialplan.6.digitmap=""
              dialplan.6.digitmap.timeOut="" />

    <routing>
      <server dialplan.1.routing.server.1.address=""
              dialplan.1.routing.server.1.port=""
              dialplan.2.routing.server.1.address=""
              dialplan.2.routing.server.1.port=""
              dialplan.3.routing.server.1.address=""
              dialplan.3.routing.server.1.port=""
              dialplan.4.routing.server.1.address=""
              dialplan.4.routing.server.1.port=""
              dialplan.5.routing.server.1.address=""
              dialplan.5.routing.server.1.port=""
              dialplan.6.routing.server.1.address=""
              dialplan.6.routing.server.1.port="" />

      <emergency dialplan.1.routing.emergency.1.value=""
                 dialplan.1.routing.emergency.1.server.1=""
                 dialplan.2.routing.emergency.1.value=""
                 dialplan.2.routing.emergency.1.server.1=""
                 dialplan.3.routing.emergency.1.value=""
                 dialplan.3.routing.emergency.1.server.1=""
                 dialplan.4.routing.emergency.1.value=""
                 dialplan.4.routing.emergency.1.server.1=""
                 dialplan.5.routing.emergency.1.value=""
                 dialplan.5.routing.emergency.1.server.1=""
                 dialplan.6.routing.emergency.1.value=""
                 dialplan.6.routing.emergency.1.server.1="" />
    </routing>
  </dialplan>

  <msg msg.bypassInstantMessage="1">
    <mwi msg.mwi.1.subscribe=""
         msg.mwi.1.callBackMode="registration"
         msg.mwi.1.callBack=""
         msg.mwi.2.subscribe=""
         msg.mwi.2.callBackMode="registration"
         msg.mwi.2.callBack=""
         msg.mwi.3.subscribe=""
         msg.mwi.3.callBackMode="registration"
         msg.mwi.3.callBack=""
         msg.mwi.4.subscribe=""
         msg.mwi.4.callBackMode="registration"
         msg.mwi.4.callBack=""
         msg.mwi.5.subscribe=""
         msg.mwi.5.callBackMode="registration"
         msg.mwi.5.callBack=""
         msg.mwi.6.subscribe=""
         msg.mwi.6.callBackMode="registration"
         msg.mwi.6.callBack="" />
  </msg>

  <nat nat.ip=""
       nat.signalPort=""
       nat.mediaPortStart=""
       nat.keepalive.interval="" />

  <attendant attendant.uri=""
             attendant.reg=""
             attendant.ringType="1"
             attendant.behaviors.display.spontaneousCallAppearances.normal=""
             attendant.behaviors.display.spontaneousCallAppearances.automata=""
             attendant.behaviors.display.remoteCallerID.normal=""
             attendant.behaviors.display.remoteCallerID.automata=""
             attendant.resourceList.1.address="" attendant.resourceList.1.label="" attendant.resourceList.1.type=""
             attendant.resourceList.2.address="" attendant.resourceList.2.label="" attendant.resourceList.2.type=""
             attendant.resourceList.3.address="" attendant.resourceList.3.label="" attendant.resourceList.3.type=""
             attendant.resourceList.4.address="" attendant.resourceList.4.label="" attendant.resourceList.4.type=""
             attendant.resourceList.5.address="" attendant.resourceList.5.label="" attendant.resourceList.5.type=""
             attendant.resourceList.6.address="" attendant.resourceList.6.label="" attendant.resourceList.6.type=""
             attendant.resourceList.7.address="" attendant.resourceList.7.label="" attendant.resourceList.7.type=""
             attendant.resourceList.8.address="" attendant.resourceList.8.label="" attendant.resourceList.8.type=""
             attendant.resourceList.9.address="" attendant.resourceList.9.label="" attendant.resourceList.9.type=""
             attendant.resourceList.10.address="" attendant.resourceList.10.label="" attendant.resourceList.10.type=""
             attendant.resourceList.11.address="" attendant.resourceList.11.label="" attendant.resourceList.11.type=""
             attendant.resourceList.12.address="" attendant.resourceList.12.label="" attendant.resourceList.12.type=""
             attendant.resourceList.13.address="" attendant.resourceList.13.label="" attendant.resourceList.13.type=""
             attendant.resourceList.14.address="" attendant.resourceList.14.label="" attendant.resourceList.14.type=""
             attendant.resourceList.15.address="" attendant.resourceList.15.label="" attendant.resourceList.15.type=""
             attendant.resourceList.16.address="" attendant.resourceList.16.label="" attendant.resourceList.16.type=""
             attendant.resourceList.17.address="" attendant.resourceList.17.label="" attendant.resourceList.17.type=""
             attendant.resourceList.18.address="" attendant.resourceList.18.label="" attendant.resourceList.18.type=""
             attendant.resourceList.19.address="" attendant.resourceList.19.label="" attendant.resourceList.19.type=""
             attendant.resourceList.20.address="" attendant.resourceList.20.label="" attendant.resourceList.20.type=""
             attendant.resourceList.21.address="" attendant.resourceList.21.label="" attendant.resourceList.21.type=""
             attendant.resourceList.22.address="" attendant.resourceList.22.label="" attendant.resourceList.22.type=""
             attendant.resourceList.23.address="" attendant.resourceList.23.label="" attendant.resourceList.23.type=""
             attendant.resourceList.24.address="" attendant.resourceList.24.label="" attendant.resourceList.24.type=""
             attendant.resourceList.25.address="" attendant.resourceList.25.label="" attendant.resourceList.25.type=""
             attendant.resourceList.26.address="" attendant.resourceList.26.label="" attendant.resourceList.26.type=""
             attendant.resourceList.27.address="" attendant.resourceList.27.label="" attendant.resourceList.27.type=""
             attendant.resourceList.28.address="" attendant.resourceList.28.label="" attendant.resourceList.28.type=""
             attendant.resourceList.29.address="" attendant.resourceList.29.label="" attendant.resourceList.29.type=""
             attendant.resourceList.30.address="" attendant.resourceList.30.label="" attendant.resourceList.30.type=""
             attendant.resourceList.31.address="" attendant.resourceList.31.label="" attendant.resourceList.31.type=""
             attendant.resourceList.32.address="" attendant.resourceList.32.label="" attendant.resourceList.32.type=""
             attendant.resourceList.33.address="" attendant.resourceList.33.label="" attendant.resourceList.33.type=""
             attendant.resourceList.34.address="" attendant.resourceList.34.label="" attendant.resourceList.34.type=""
             attendant.resourceList.35.address="" attendant.resourceList.35.label="" attendant.resourceList.35.type=""
             attendant.resourceList.36.address="" attendant.resourceList.36.label="" attendant.resourceList.36.type=""
             attendant.resourceList.37.address="" attendant.resourceList.37.label="" attendant.resourceList.37.type=""
             attendant.resourceList.38.address="" attendant.resourceList.38.label="" attendant.resourceList.38.type=""
             attendant.resourceList.39.address="" attendant.resourceList.39.label="" attendant.resourceList.39.type=""
             attendant.resourceList.40.address="" attendant.resourceList.40.label="" attendant.resourceList.40.type=""
             attendant.resourceList.41.address="" attendant.resourceList.41.label="" attendant.resourceList.41.type=""
             attendant.resourceList.42.address="" attendant.resourceList.42.label="" attendant.resourceList.42.type=""
             attendant.resourceList.43.address="" attendant.resourceList.43.label="" attendant.resourceList.43.type=""
             attendant.resourceList.44.address="" attendant.resourceList.44.label="" attendant.resourceList.44.type=""
             attendant.resourceList.45.address="" attendant.resourceList.45.label="" attendant.resourceList.45.type=""
             attendant.resourceList.46.address="" attendant.resourceList.46.label="" attendant.resourceList.46.type=""
             attendant.resourceList.47.address="" attendant.resourceList.47.label="" attendant.resourceList.47.type="" />
  <roaming_buddies roaming_buddies.reg="" />
  <roaming_privacy roaming_privacy.reg="" />

  <user_preferences up.analogHeadsetOption="0"
                    up.offHookAction.none=""
                    up.pictureFrame.folder=""
                    up.pictureFrame.timePerImage=""
                    up.screenSaver.enabled="0"
                    up.screenSaver.waitTime="" />

  <acd acd.reg="" acd.stateAtSignIn="" />
</phone>

sip.cfg

The following changes to sip.cfg will increase the users’ experience.

url dialing

This is so that the CID is the actual CID set in Asterisk and not exten@IP_address.

from feature.9.name="url-dialing" feature.9.enabled="1"
to   feature.9.name="url-dialing" feature.9.enabled="0"

time zone

Set the required time zone. The field tcpIpApp.sntp.resyncPeriod is the amount of secdons that the telephone should resync its time from the NTP server.

from tcpIpApp.sntp.resyncPeriod="86400" tcpIpApp.sntp.address="" 
to   tcpIpApp.sntp.resyncPeriod="21600" tcpIpApp.sntp.address="ntp.bri.connect.com.au" 

from  tcpIpApp.sntp.gmtOffset=""
to    tcpIpApp.sntp.gmtOffset="36000"  <-- in secdons  i.e. GMT +10 = 36000

If you are in an area that has day light savings then you also need to set these appropriate settings

tcpIpApp.sntp.address.overrideDHCP="0" tcpIpApp.sntp.gmtOffset="36000" tcpIpApp.sntp.gmtOffset.overrideDHCP="0"
tcpIpApp.sntp.daylightSavings.enable="0" tcpIpApp.sntp.daylightSavings.fixedDayEnable="0" tcpIpApp.sntp.daylightSavings.start.month="3"
tcpIpApp.sntp.daylightSavings.start.date="8" tcpIpApp.sntp.daylightSavings.start.time="2" tcpIpApp.sntp.daylightSavings.start.dayOfWeek="1"
tcpIpApp.sntp.daylightSavings.start.dayOfWeek.lastInMonth="0" tcpIpApp.sntp.daylightSavings.stop.month="11"
tcpIpApp.sntp.daylightSavings.stop.date="1" tcpIpApp.sntp.daylightSavings.stop.time="2" tcpIpApp.sntp.daylightSavings.stop.dayOfWeek="1"
tcpIpApp.sntp.daylightSavings.stop.dayOfWeek.lastInMonth="0"

language

To set the language of the handset.

from lcl.ml.lang=""
to   lcl.ml.lang="English_United_Kingdom"

miscellaneous settings

from feature.1.name="presence" feature.1.enabled="0" to feature.1.name="presence" feature.1.enabled="1"
from  up.welcomeSoundOnWarmBootEnabled="0" to  up.welcomeSoundOnWarmBootEnabled="1"