Polycom VVX 500 Problems

Discussion in '3CX Phone System - General' started by wilh, Jul 12, 2016.

Thread Status:
Not open for further replies.
  1. wilh

    Joined:
    Jan 21, 2016
    Messages:
    7
    Likes Received:
    0
    Well, today was a bit of a nightmare...

    A client has an existing PBX and ~20 Polycom VVX 500 phones. They have outgrown their PBX and I have been trying to sell 3CX to them for a while...

    ...I know this model isn't officially supported, so, I purchased one of these from eBay to have a little play around and make sure it worked fine. I alsosetup a multi tenant instance of 3CX v14. With the exception of phone book and a few little bits which I wasn't concerned about, it worked perfectly.

    I went to their office today, setup a new instance and purchased a 16SC Pro license.

    I setup the first few users, and then manually setup the first phone and it worked great (well, voicemail did - no trunk yet).

    I went to set up the second phone... and... not working!

    I tried 3 other phones in the office, and none of them would work. There was another phone with the exact same firmware revision as the one that did, but, I couldn't get it to work - even when applying a backup of the config from the one that did work.

    So, today was a bit of a nightmare to say the least... I am not really sure what I could have done differently as I tested it all working, but, I am where I am!

    Before I go through a night of pain and whip out Wireshark and other bits, I was just wondering, has anyone else ever seen anything similar or can you give any pointers?

    Thanks
     
  2. pswarowski

    Joined:
    Mar 14, 2016
    Messages:
    14
    Likes Received:
    0
    I did a conversion of a client from another PBX to 3cx. They have 100+ VVX 410 phones which is basically the same backend as the VVX 500. I ran into issues but not exactly when you're describing.

    Can you go into more detail on how you're setting up the phones?

    Are you using a provisioning template?
    Are you manually putting in settings into the phone?

    Can you provide more detail on what is not working? Is the line failing to register?

    I would recommend creating a provisioning profile and work out the kinks from there. It will allow you to scale this faster and use it if you sell 3cx to any other clients running VVX phones.
     
  3. wilh

    Joined:
    Jan 21, 2016
    Messages:
    7
    Likes Received:
    0
    Hi, sorry I missed your post.

    A bit more news, I haven't rescheduled a re-visit to the client yet, but, I took 3 phones away with me. After going through many different firmware versions, I found one that seems to work on one - I just have to test on others.

    This has been a bit of a nightmare and is such a shame as I think that the VVX 500 is probably the nicest IP Phone I have used to date!

    If you have any provisioning templates that may help me though, please can you share - or, I may try to fire up a verison 15 instance to get them as I am currently doing it manually.

    Please see below for your questions.

    I perform a factory reset, followed by manually changing the server/port/auth id/user/password/display name. nothing else - directory e.t.c. are unused until I figure it out.

    Nope

    Yep, as above.

    Everything, I am wondering if it is a firmware bug as wireshark is showing no traffic on the PBX machine at all.

    I believe that the phone is not accepting the port change.

    I really don't understand as I have two identical phones and I am getting different results with the same config file (exported from the first phone)!
     
  4. pswarowski

    Joined:
    Mar 14, 2016
    Messages:
    14
    Likes Received:
    0
    Here is the one that I have spent a lot of time with,

    I had to cut it off for a character limit for the boards. I stopped at BLF 50 but the file goes to 128. Just rinse and repeat.

    paging goes to multicast IP 224.0.0.32
    It will reset the phone password to what is on the phone config like other 3cx phones
    I think you can get in using the MAC address on these phones should you mess up and remove the phone before writing down the password to the phone.

    Also note that these phones will discover if a switch port is tagged for a VLAN via LLDP for some model of managed switches. I had this issue where the phone was not set to use a specific VLAN in its config but it would boot and try to tag itself on that VLAN. You will have an idea that this is happening because it fails to get DHCP on whatever VLAN you are expecting.

    You can work off of the provisioning profile for the SPIP5000 or something like that. They are pretty similar.

    We are running our phones off of firmware 5.2.5.0987

    Here are some good polycom links for settings
    http://plcmtechnet.com/documents/voice/ ... ing_enable
    http://documents.polycom.com/documents/ ... ftware-5-2

    HERE IS THE PROVISIONING PROFILE
    <?xml version="1.0" encoding="utf-8"?>
    <doc xmlns:tcx="http://www.3cx.com">
    <header>
    <type>phone-template</type>
    <version>44241</version>
    <time>2015-04-18 15:00:00</time>
    <name>Polycom VVX</name>
    <url>http://www.polycom.com</url>
    <models>
    <model ua="PolycomVVX-VVX_300-UA">Polycom VVX 300</model>
    <model ua="PolycomVVX-VVX_310-UA">Polycom VVX 310</model>
    <model ua="PolycomVVX-VVX_400-UA">Polycom VVX 400</model>
    <model ua="PolycomVVX-VVX_410-UA">Polycom VVX 410</model>
    <model ua="PolycomVVX-VVX_500-UA">Polycom VVX 500</model>
    <model ua="PolycomVVX-VVX_600-UA">Polycom VVX 600</model>
    </models>
    <description>Polycom VVX</description>
    <parsers>
    <parser>BLF</parser>
    </parsers>
    <rebootParams>
    <event-name>check-sync</event-name>
    </rebootParams>
    <resyncParams>
    <event-name>check-sync</event-name>
    </resyncParams>
    <firmwareParams>
    <event-name>check-sync</event-name>
    </firmwareParams>
    <AllowWebPasswordChange>1</AllowWebPasswordChange>
    <dst variableName="dstEnableDisable" enable="1" disable="0">
    </dst>
    <languages>
    <!--The first entry is the selected entry in management console-->
    <option value="English United States">
    <item name="langwebUI">English (en-us)</item>
    </option>
    </languages>
    <timezoneParams param="time_utc_offset_seconds">
    <!--The first entry is the selected entry in management console-->
    <option value="-18000">GMT-5:00 (US Eastern Time, New York)</option>
    <option value="-43200">GMT-12:00 (International Date Line West)</option>
    <option value="-39600">GMT-11:00 (Midway Island, Samoa)</option>
    <option value="-36000">GMT-10:00 (US Hawaiian Time)</option>
    <option value="-32400">GMT-9:00 (US Alaska Time)</option>
    <option value="-28800">GMT-8:00 (US Pacific Time, Los Angeles)</option>
    <option value="-25200">GMT-7:00 (US Mountain Time, Denver)</option>
    <option value="-21600">GMT-6:00 (US Central Time, Chicago)</option>
    <option value="-16200">GMT-4:30 (Venezuela)</option>
    <option value="-14400">GMT-4:00 (Atlantic Time, Quebec)</option>
    <option value="-12600">GMT-3:30 (Newfoundland)</option>
    <option value="-10800">GMT-3:00 (Greenland)</option>
    <option value="-7200">GMT-2:00 (Mid-Atlantic)</option>
    <option value="-3600">GMT-1:00 (Azores, Cape Verdi Is.)</option>
    <option value="0">GMT(London, Dublin, Edinburgh, Lisbon, Casablanca, Monrovia)</option>
    <option value="3600">GMT+1:00 (Paris,Amsterdam, Berlin, Rome, Vienna, Madrid, Warsaw, Brussels)</option>
    <option value="7200">GMT+2:00 (Israel, Cairo, Athens, Helsinki, Istanbul, Buchrest)</option>
    <option value="10800">GMT+3:00 (Moscow, Kuwait, Baghdad, Tehran, Nairobi)</option>
    <option value="12600">GMT+3:30 (Tehran)</option>
    <option value="14400">GMT+4:00 (Abu Dhabi, Baku)</option>
    <option value="16200">GMT+4:30 (Kabul)</option>
    <option value="18000">GMT+5:00 (Islamabad, Ekaterinburg, Karachi, Tashkent)</option>
    <option value="19800">GMT+5:30 (Chennai, New Delhi, Mumbai)</option>
    <option value="20700">GMT+5:45 (Kathmandu)</option>
    <option value="21600">GMT+6:00 (Almaty, Astana. Dhaka, Novosibirsk)</option>
    <option value="23400">GMT+6:30 (Rangoon)</option>
    <option value="25200">GMT+7:00 (Bankok, Jakarta, Hanoi, Krasnoyarsk)</option>
    <option value="28800">GMT+8:00 (Beijing, Singapore, Taipei, Kuala Lumpur, Irkutsk, Perth)</option>
    <option value="32400">GMT+9:00 (Japan, Korea, Yakutsk)</option>
    <option value="34200">GMT+9:30 (Adelaide, Darwin)</option>
    <option value="36000">GMT+10:00 (Brisbane, Sydney, Melbourne, Canberra, Guam, Hobart)</option>
    <option value="39600">GMT+11:00 (Magadan, Solomon Is., New Caledonia)</option>
    <option value="43200">GMT+12:00 (Auckland, Wellington, Fiji)</option>
    <option value="46800">GMT+13:00 (Nuku'alofa)</option>
    </timezoneParams>
    <Codecspriorities>
    <Codecspriority variableName="codec1" priority="1">
    <!--The first entry is the selected entry in management console-->
    <option value="voice.codecPref.G711_Mu=&quot;1&quot;">PCMU</option>
    <option value="voice.codecPref.G711_A=&quot;1&quot;">PCMA</option>
    <option value="voice.codecPref.G729_AB=&quot;1&quot;">G729A/B</option>
    </Codecspriority>
    <Codecspriority variableName="codec2" priority="2">
    <!--The first entry is the selected entry in management console-->
    <option value="voice.codecPref.G711_A=&quot;2&quot;">PCMA</option>
    <option value="voice.codecPref.G711_Mu=&quot;2&quot;">PCMU</option>
    <option value="voice.codecPref.G729_AB=&quot;2&quot;">G729A/B</option>
    </Codecspriority>
    <Codecspriority variableName="codec3" priority="3">
    <!--The first entry is the selected entry in management console-->
    <option value="voice.codecPref.G729_AB=&quot;3&quot;">G729A/B</option>
    <option value="voice.codecPref.G711_Mu=&quot;3&quot;">PCMU</option>
    <option value="voice.codecPref.G711_A=&quot;3&quot;">PCMA</option>
    </Codecspriority>
    <Codecspriority variableName="codec4" priority="4">
    <!--The first entry is the selected entry in management console-->
    <option value="not_available">Not Available</option>
    </Codecspriority>
    </Codecspriorities>
    </header>
    <data>
    <device>
    <type>phone</type>
    <field name="Name">000000000000.cfg</field>
    <deviceconfig filename="000000000000.cfg"><![CDATA[<?xml version="1.0" standalone="yes"?>
    <!-- New Default Master SIP Configuration File 000000000000.cfg -->
    <!-- For information on configuring Polycom VoIP phones please refer to the -->
    <!-- Configuration File Management white paper available from: -->
    <!-- http://www.polycom.com/common/documents ... phones.pdf -->
    <APPLICATION APP_FILE_PATH="sip.ld" CONFIG_FILES="" MISC_FILES="000000000000-directory.xml" LOG_FILE_DIRECTORY="" OVERRIDES_DIRECTORY="" CONTACTS_DIRECTORY="" LICENSE_DIRECTORY="">
    <APPLICATION_VVX300 CONFIG_FILES_VVX300="polycomboot.cfg, customer-sip.cfg, defaultpolycom_40x.cfg"/>
    <APPLICATION_VVX310 CONFIG_FILES_VVX310="polycomboot.cfg, customer-sip.cfg, defaultpolycom_41x.cfg"/>
    <APPLICATION_VVX400 CONFIG_FILES_VVX400="polycomboot.cfg, customer-sip.cfg, defaultpolycom_40x.cfg"/>
    <APPLICATION_VVX410 CONFIG_FILES_VVX410="polycomboot.cfg, customer-sip.cfg, defaultpolycom_41x.cfg"/>
    <APPLICATION_VVX500 CONFIG_FILES_VVX500="polycomboot.cfg, customer-sip.cfg, defaultpolycom_41x.cfg"/>
    <APPLICATION_VVX600 CONFIG_FILES_VVX600="polycomboot.cfg, customer-sip.cfg, defaultpolycom_41x.cfg"/>
    </APPLICATION>
    ]]></deviceconfig>
    </device>
    </data>
    <data>
    <device>
    <type>phone</type>
    <field name="Name">polycomboot.cfg</field>
    <deviceconfig filename="polycomboot.cfg"><![CDATA[<?xml version="1.0" standalone="yes"?><APPLICATION device.set="1" device.net.etherVlanFilter.set="1" device.net.etherVlanFilter="1" device.net.vlanId.set="1" device.net.vlanId="1" device.net.cdpEnabled.set="1" device.net.cdpEnabled="0" device.dhcp.enabled.set="1" device.dhcp.enabled="1" device.dhcp.offerTimeout.set="1" device.dhcp.offerTimeout="1" device.dhcp.bootSrvUseOpt.set="1" device.dhcp.bootSrvUseOpt="2" device.prov.serverName.set="1" device.prov.serverName="%%pbx_ip%%" device.prov.serverType.set="1" device.prov.serverType="2" device.auth.localAdminPassword.set="0" device.auth.localAdminPassword="" device.auth.localUserPassword.set="1" device.auth.localUserPassword="123"/>
    ]]></deviceconfig>
    </device>
    </data>
    <data>
    <device>
    <type>phone</type>
    <field name="Name">%%mac_address%%.cfg</field>
    <deviceconfig filename="%%mac_address%%.cfg"><![CDATA[<?xml version="1.0" standalone="yes"?>
    <APPLICATION APP_FILE_PATH="sip.ld" CONFIG_FILES="polycom-VVX-[MACADDRESS].cfg" MISC_FILES="" LOG_FILE_DIRECTORY="" OVERRIDES_DIRECTORY="" CONTACTS_DIRECTORY="" LICENSE_DIRECTORY="">
    ]]></deviceconfig>
    </device>
    </data>
    <data>
    <device>
    <type>phone</type>
    <!-- Friendly Name -->
    <field name="Name">polycom-VVX-%%mac_address%%.cfg</field>
    <deviceconfig filename="polycom-VVX-%%mac_address%%.cfg"><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <!-- polycom-VVX-[MACADDRESS].cfg -->
    <!-- Generated by 3CX PhoneSystem -->

    <polycomConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="polycomConfig.xsd">

    <device device.set="1"/>
    <auth device.auth.localAdminPassword.set="1" device.auth.localAdminPassword="%%DESKPHONE_PASSWORD%%"/>

    <call
    call.directedCallPickupString="%%param::pickup%%"
    call.directedCallPickupMethod="legacy"
    call.offeringTimeOut="0"
    />

    <dialplan
    dialplan.digitmap="[8-9]11|[0-1][2-9]xxxxxxxxx|[2-9]xxxxxxxxxT"
    dialplan.digitmap.timeout="3"
    dialplan.1.digitmap=""
    dialplan.1.digitmap.timeout="3"
    />

    <divert>
    divert.noanswer.1.enabled="0"
    />

    <efk>
    <version efk.version="2" />
    <efklist
    efk.efklist.1.mname="Paging"
    efk.efklist.1.label="Paging"
    efk.efklist.1.status="1"
    efk.efklist.1.action.string="$FPage$"
    />
    </efk>

    <feature
    feature.directedCallPickup.enabled="1"
    feature.urlDialing.enabled="0"
    feature.enhancedFeatureKeys.enabled="1"
    />

    <msg.mwi
    msg.mwi.1.subscribe="%%extension_number%%"
    msg.mwi.1.callBackMode="contact"
    msg.mwi.1.callBack="%%vm_number%%"
    />

    <ptt
    ptt.address="224.0.0.32"
    ptt.port="10000"
    ptt.pageMode.enable="1"
    ptt.pageMode.codec="G.711Mu"
    />

    <reg
    reg.1.address="%%extension_number%%"
    reg.1.auth.password="%%extension_auth_pw%%"
    reg.1.auth.userId="%%extension_auth_id%%"
    reg.1.displayName="%%extension_first_name%% %%extension_last_name%%"
    reg.1.label="%%extension_number%%"
    reg.1.lineKeys="1"
    reg.1.callsPerLineKey="2"
    reg.1.server.1.address="%%pbx_ip%%"
    reg.1.server.1.expires="120"
    reg.1.server.1.port="%%param::sipport%%"
    reg.1.server.1.register="1"
    />

    <softkey
    softkey.1.label="Paging"
    softkey.1.action="$FPage$"
    softkey.1.enable="1"
    softkey.1.use.dialtone="1"
    softkey.1.use.hold="1"
    />

    <up
    up.backlight.onIntensity="2"
    up.backlight.idleIntensity="2"
    up.onetouchvoicemail="1"

    />

    <tcpIpApp.sntp
    tcpIpApp.sntp.resyncPeriod="86400"
    tcpIpApp.sntp.address="%%param::time_ntp_server%%"
    tcpIpApp.sntp.address.overrideDHCP="1"
    tcpIpApp.sntp.gmtOffset="%%param::time_utc_offset_seconds%%"
    tcpIpApp.sntp.gmtOffset.overrideDHCP="1"
    tcpIpApp.sntp.daylightSavings.enable="%%dstEnableDisable%%"
    tcpIpApp.sntp.daylightSavings.fixedDayEnable="1"
    tcpIpApp.sntp.daylightSavings.start.date="%%param::time_dst_start_day%%"
    tcpIpApp.sntp.daylightSavings.start.month="%%param::time_dst_start_month%%"
    tcpIpApp.sntp.daylightSavings.start.time="%%param::time_dst_start_hour%%"
    tcpIpApp.sntp.daylightSavings.stop.date="%%param::time_dst_end_day%%"
    tcpIpApp.sntp.daylightSavings.stop.month="%%param::time_dst_end_month%%"
    tcpIpApp.sntp.daylightSavings.stop.time="%%param::time_dst_end_hour%%"
    />

    <tone
    tone.dtmf.rfc2833Payload="101"
    />

    <!--The below codecs are commented and are used for documentation purposes only-->
    <!--voice.codecPref.G722="1"-->
    <!--voice.codecPref.G711_Mu="2"-->
    <!--voice.codecPref.G711_A="3"-->
    <!--voice.codecPref.G729_AB="4"-->

    <voice.codecPref
    %%codec1%%
    %%codec2%%
    %%codec3%%
    voice.codecPref.G719.32kbps=""
    voice.codecPref.G719.48kbps=""
    voice.codecPref.G719.64kbps=""
    voice.codecPref.G722=""
    voice.codecPref.G7221.16kbps=""
    voice.codecPref.G7221.24kbps=""
    voice.codecPref.G7221.32kbps=""
    voice.codecPref.G7221_C.24kbps=""
    voice.codecPref.G7221_C.32kbps=""
    voice.codecPref.G7221_C.48kbps=""
    voice.codecPref.iLBC.13_33kbps=""
    voice.codecPref.iLBC.15_2kbps=""
    voice.codecPref.Lin16.8ksps=""
    voice.codecPref.Lin16.16ksps=""
    voice.codecPref.Lin16.32ksps=""
    voice.codecPref.Lin16.44_1ksps=""
    voice.codecPref.Lin16.48ksps=""
    voice.codecPref.Siren14.24kbps=""
    voice.codecPref.Siren14.32kbps=""
    voice.codecPref.Siren14.48kbps=""
    />

    <voice.volume
    voice.volume.persist.handset="1"
    voice.volume.persist.headset="1"
    voice.volume.persist.handsfree="1"
    />

    <voIpProt.SIP
    voIpProt.SIP.allowTransferOnProceeding="0"
    voIpProt.SIP.use486forReject="1"
    voIpProt.SIP.specialEvent.checkSync.alwaysReboot="1"
    />

    <voIpProt.SIP.alertInfo
    voIpProt.SIP.alertInfo.1.class="4"
    voIpProt.SIP.alertInfo.1.value="auto-answer"
    />

    <lcl
    lcl.ml.lang="%%langwebUI%%"

    lcl.ml.lang.menu.1="Chinese_China" lcl.ml.lang.menu.1.label="简体中文 (zh-cn)"
    lcl.ml.lang.menu.2="Danish_Denmark" lcl.ml.lang.menu.2.label="Dansk (da-dk)"
    lcl.ml.lang.menu.3="Dutch_Netherlands" lcl.ml.lang.menu.3.label="Nederlands (nl-nl)"
    lcl.ml.lang.menu.4="English_Canada" lcl.ml.lang.menu.4.label="English (en-ca)"
    lcl.ml.lang.menu.5="English_United_Kingdom" lcl.ml.lang.menu.5.label="English (en-gb)"
    lcl.ml.lang.menu.6="English_United_States" lcl.ml.lang.menu.6.label="English (en-us)"
    lcl.ml.lang.menu.7="French_France" lcl.ml.lang.menu.7.label="Français (fr-fr)"
    lcl.ml.lang.menu.8="German_Germany" lcl.ml.lang.menu.8.label="Deutsch (de-de)"
    lcl.ml.lang.menu.9="Italian_Italy" lcl.ml.lang.menu.9.label="Italiano (it-it)"
    lcl.ml.lang.menu.10="Japanese_Japan" lcl.ml.lang.menu.10.label="日本語 (ja-jp)"
    lcl.ml.lang.menu.11="Korean_Korea" lcl.ml.lang.menu.11.label="한국어 (ko-kr)"
    lcl.ml.lang.menu.12="Norwegian_Norway" lcl.ml.lang.menu.12.label="Norsk (no-no)"
    lcl.ml.lang.menu.13="Polish_Poland" lcl.ml.lang.menu.13.label="Polski (pl-pl)"
    lcl.ml.lang.menu.14="Portuguese_Portugal" lcl.ml.lang.menu.14.label="Português (pt-br)"
    lcl.ml.lang.menu.15="Russian_Russia" lcl.ml.lang.menu.15.label="Русский (ru-ru)"
    lcl.ml.lang.menu.16="Slovenian_Slovenia" lcl.ml.lang.menu.16.label="Slovenski (sl-si)"
    lcl.ml.lang.menu.17="Spanish_Spain" lcl.ml.lang.menu.17.label="Español (es-es)"
    lcl.ml.lang.menu.18="Swedish_Sweden" lcl.ml.lang.menu.18.label="Svenska (sv-se)"

    lcl.ml.lang.clock.1.24HourClock="1" lcl.ml.lang.clock.1.format="D,dM" lcl.ml.lang.clock.1.longFormat="1" lcl.ml.lang.clock.1.dateTop="1"
    lcl.ml.lang.clock.2.24HourClock="1" lcl.ml.lang.clock.2.format="D,dM" lcl.ml.lang.clock.2.longFormat="1" lcl.ml.lang.clock.2.dateTop="1"
    lcl.ml.lang.clock.3.24HourClock="1" lcl.ml.lang.clock.3.format="D,dM" lcl.ml.lang.clock.3.longFormat="1" lcl.ml.lang.clock.3.dateTop="1"
    lcl.ml.lang.clock.4.24HourClock="0" lcl.ml.lang.clock.4.format="D,Md" lcl.ml.lang.clock.4.longFormat="1" lcl.ml.lang.clock.4.dateTop="1"
    lcl.ml.lang.clock.5.24HourClock="0" lcl.ml.lang.clock.5.format="D,Md" lcl.ml.lang.clock.5.longFormat="1" lcl.ml.lang.clock.5.dateTop="1"
    lcl.ml.lang.clock.6.24HourClock="0" lcl.ml.lang.clock.6.format="D,Md" lcl.ml.lang.clock.6.longFormat="1" lcl.ml.lang.clock.6.dateTop="1"
    lcl.ml.lang.clock.7.24HourClock="1" lcl.ml.lang.clock.7.format="D,dM" lcl.ml.lang.clock.7.longFormat="1" lcl.ml.lang.clock.7.dateTop="1"
    lcl.ml.lang.clock.8.24HourClock="1" lcl.ml.lang.clock.8.format="D,dM" lcl.ml.lang.clock.8.longFormat="1" lcl.ml.lang.clock.8.dateTop="1"
    lcl.ml.lang.clock.9.24HourClock="1" lcl.ml.lang.clock.9.format="D,dM" lcl.ml.lang.clock.9.longFormat="1" lcl.ml.lang.clock.9.dateTop="1"
    lcl.ml.lang.clock.10.24HourClock="1" lcl.ml.lang.clock.10.format="Md,D" lcl.ml.lang.clock.10.longFormat="1" lcl.ml.lang.clock.10.dateTop="1"
    lcl.ml.lang.clock.11.24HourClock="1" lcl.ml.lang.clock.11.format="D,dM" lcl.ml.lang.clock.11.longFormat="1" lcl.ml.lang.clock.11.dateTop="1"
    lcl.ml.lang.clock.12.24HourClock="1" lcl.ml.lang.clock.12.format="D,dM" lcl.ml.lang.clock.12.longFormat="1" lcl.ml.lang.clock.12.dateTop="1"
    lcl.ml.lang.clock.13.24HourClock="1" lcl.ml.lang.clock.13.format="D,dM" lcl.ml.lang.clock.13.longFormat="1" lcl.ml.lang.clock.13.dateTop="1"
    lcl.ml.lang.clock.14.24HourClock="1" lcl.ml.lang.clock.14.format="D,dM" lcl.ml.lang.clock.14.longFormat="1" lcl.ml.lang.clock.14.dateTop="1"
    lcl.ml.lang.clock.15.24HourClock="1" lcl.ml.lang.clock.15.format="D,dM" lcl.ml.lang.clock.15.longFormat="1" lcl.ml.lang.clock.15.dateTop="1"
    lcl.ml.lang.clock.16.24HourClock="1" lcl.ml.lang.clock.16.format="D,dM" lcl.ml.lang.clock.16.longFormat="1" lcl.ml.lang.clock.16.dateTop="1"
    lcl.ml.lang.clock.17.24HourClock="1" lcl.ml.lang.clock.17.format="D,dM" lcl.ml.lang.clock.17.longFormat="1" lcl.ml.lang.clock.17.dateTop="1"
    lcl.ml.lang.clock.18.24HourClock="1" lcl.ml.lang.clock.18.format="D,dM" lcl.ml.lang.clock.18.longFormat="1" lcl.ml.lang.clock.18.dateTop="1"

    lcl.ml.lang.list="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18"
    />

    <attendant
    attendant.uri=""
    attendant.reg="1"
    attendant.ringType="1"
    attendant.behaviors.display.spontaneousCallAppearances.normal=""
    attendant.behaviors.display.spontaneousCallAppearances.automata=""
    attendant.behaviors.display.remoteCallerID.normal=""
    attendant.behaviors.display.remoteCallerID.automata=""
    />

    {IF blf1}
    <attendant attendant.resourceList.1.address="%%blf1%%" attendant.resourceList.1.label="%%blffirstname1%% %%blflastname1%%" attendant.resourceList.1.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.1.address="" attendant.resourceList.1.label="" attendant.resourceList.1.type=""/>
    {ENDIF}

    {IF blf2}
    <attendant attendant.resourceList.2.address="%%blf2%%" attendant.resourceList.2.label="%%blffirstname2%% %%blflastname2%%" attendant.resourceList.2.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.2.address="" attendant.resourceList.2.label="" attendant.resourceList.2.type=""/>
    {ENDIF}

    {IF blf3}
    <attendant attendant.resourceList.3.address="%%blf3%%" attendant.resourceList.3.label="%%blffirstname3%% %%blflastname3%%" attendant.resourceList.3.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.3.address="" attendant.resourceList.3.label="" attendant.resourceList.3.type=""/>
    {ENDIF}

    {IF blf4}
    <attendant attendant.resourceList.4.address="%%blf4%%" attendant.resourceList.4.label="%%blffirstname4%% %%blflastname4%%" attendant.resourceList.4.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.4.address="" attendant.resourceList.4.label="" attendant.resourceList.4.type=""/>
    {ENDIF}

    {IF blf5}
    <attendant attendant.resourceList.5.address="%%blf5%%" attendant.resourceList.5.label="%%blffirstname5%% %%blflastname5%%" attendant.resourceList.5.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.5.address="" attendant.resourceList.5.label="" attendant.resourceList.5.type=""/>
    {ENDIF}

    {IF blf6}
    <attendant attendant.resourceList.6.address="%%blf6%%" attendant.resourceList.6.label="%%blffirstname6%% %%blflastname6%%" attendant.resourceList.6.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.6.address="" attendant.resourceList.6.label="" attendant.resourceList.6.type=""/>
    {ENDIF}

    {IF blf7}
    <attendant attendant.resourceList.7.address="%%blf7%%" attendant.resourceList.7.label="%%blffirstname7%% %%blflastname7%%" attendant.resourceList.7.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.7.address="" attendant.resourceList.7.label="" attendant.resourceList.7.type=""/>
    {ENDIF}

    {IF blf8}
    <attendant attendant.resourceList.8.address="%%blf8%%" attendant.resourceList.8.label="%%blffirstname8%% %%blflastname8%%" attendant.resourceList.8.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.8.address="" attendant.resourceList.8.label="" attendant.resourceList.8.type=""/>
    {ENDIF}

    {IF blf9}
    <attendant attendant.resourceList.9.address="%%blf9%%" attendant.resourceList.9.label="%%blffirstname9%% %%blflastname9%%" attendant.resourceList.9.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.9.address="" attendant.resourceList.9.label="" attendant.resourceList.9.type=""/>
    {ENDIF}

    {IF blf10}
    <attendant attendant.resourceList.10.address="%%blf10%%" attendant.resourceList.10.label="%%blffirstname10%% %%blflastname10%%" attendant.resourceList.10.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.10.address="" attendant.resourceList.10.label="" attendant.resourceList.10.type=""/>
    {ENDIF}

    {IF blf11}
    <attendant attendant.resourceList.11.address="%%blf11%%" attendant.resourceList.11.label="%%blffirstname11%% %%blflastname11%%" attendant.resourceList.11.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.11.address="" attendant.resourceList.11.label="" attendant.resourceList.11.type=""/>
    {ENDIF}

    {IF blf12}
    <attendant attendant.resourceList.12.address="%%blf12%%" attendant.resourceList.12.label="%%blffirstname12%% %%blflastname12%%" attendant.resourceList.12.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.12.address="" attendant.resourceList.12.label="" attendant.resourceList.12.type=""/>
    {ENDIF}

    {IF blf13}
    <attendant attendant.resourceList.13.address="%%blf13%%" attendant.resourceList.13.label="%%blffirstname13%% %%blflastname13%%" attendant.resourceList.13.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.13.address="" attendant.resourceList.13.label="" attendant.resourceList.13.type=""/>
    {ENDIF}

    {IF blf14}
    <attendant attendant.resourceList.14.address="%%blf14%%" attendant.resourceList.14.label="%%blffirstname14%% %%blflastname14%%" attendant.resourceList.14.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.14.address="" attendant.resourceList.14.label="" attendant.resourceList.14.type=""/>
    {ENDIF}

    {IF blf15}
    <attendant attendant.resourceList.15.address="%%blf15%%" attendant.resourceList.15.label="%%blffirstname15%% %%blflastname15%%" attendant.resourceList.15.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.15.address="" attendant.resourceList.15.label="" attendant.resourceList.15.type=""/>
    {ENDIF}

    {IF blf16}
    <attendant attendant.resourceList.16.address="%%blf16%%" attendant.resourceList.16.label="%%blffirstname16%% %%blflastname16%%" attendant.resourceList.16.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.16.address="" attendant.resourceList.16.label="" attendant.resourceList.16.type=""/>
    {ENDIF}

    {IF blf17}
    <attendant attendant.resourceList.17.address="%%blf17%%" attendant.resourceList.17.label="%%blffirstname17%% %%blflastname17%%" attendant.resourceList.17.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.17.address="" attendant.resourceList.17.label="" attendant.resourceList.17.type=""/>
    {ENDIF}

    {IF blf18}
    <attendant attendant.resourceList.18.address="%%blf18%%" attendant.resourceList.18.label="%%blffirstname18%% %%blflastname18%%" attendant.resourceList.18.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.18.address="" attendant.resourceList.18.label="" attendant.resourceList.18.type=""/>
    {ENDIF}

    {IF blf19}
    <attendant attendant.resourceList.19.address="%%blf19%%" attendant.resourceList.19.label="%%blffirstname19%% %%blflastname19%%" attendant.resourceList.19.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.19.address="" attendant.resourceList.19.label="" attendant.resourceList.19.type=""/>
    {ENDIF}

    {IF blf20}
    <attendant attendant.resourceList.20.address="%%blf20%%" attendant.resourceList.20.label="%%blffirstname20%% %%blflastname20%%" attendant.resourceList.20.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.20.address="" attendant.resourceList.20.label="" attendant.resourceList.20.type=""/>
    {ENDIF}

    {IF blf21}
    <attendant attendant.resourceList.21.address="%%blf21%%" attendant.resourceList.21.label="%%blffirstname21%% %%blflastname21%%" attendant.resourceList.21.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.21.address="" attendant.resourceList.21.label="" attendant.resourceList.21.type=""/>
    {ENDIF}

    {IF blf22}
    <attendant attendant.resourceList.22.address="%%blf22%%" attendant.resourceList.22.label="%%blffirstname22%% %%blflastname22%%" attendant.resourceList.22.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.22.address="" attendant.resourceList.22.label="" attendant.resourceList.22.type=""/>
    {ENDIF}

    {IF blf23}
    <attendant attendant.resourceList.23.address="%%blf23%%" attendant.resourceList.23.label="%%blffirstname23%% %%blflastname23%%" attendant.resourceList.23.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.23.address="" attendant.resourceList.23.label="" attendant.resourceList.23.type=""/>
    {ENDIF}

    {IF blf24}
    <attendant attendant.resourceList.24.address="%%blf24%%" attendant.resourceList.24.label="%%blffirstname24%% %%blflastname24%%" attendant.resourceList.24.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.24.address="" attendant.resourceList.24.label="" attendant.resourceList.24.type=""/>
    {ENDIF}

    {IF blf25}
    <attendant attendant.resourceList.25.address="%%blf25%%" attendant.resourceList.25.label="%%blffirstname25%% %%blflastname25%%" attendant.resourceList.25.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.25.address="" attendant.resourceList.25.label="" attendant.resourceList.25.type=""/>
    {ENDIF}

    {IF blf26}
    <attendant attendant.resourceList.26.address="%%blf26%%" attendant.resourceList.26.label="%%blffirstname26%% %%blflastname26%%" attendant.resourceList.26.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.26.address="" attendant.resourceList.26.label="" attendant.resourceList.26.type=""/>
    {ENDIF}

    {IF blf27}
    <attendant attendant.resourceList.27.address="%%blf27%%" attendant.resourceList.27.label="%%blffirstname27%% %%blflastname27%%" attendant.resourceList.27.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.27.address="" attendant.resourceList.27.label="" attendant.resourceList.27.type=""/>
    {ENDIF}

    {IF blf28}
    <attendant attendant.resourceList.28.address="%%blf28%%" attendant.resourceList.28.label="%%blffirstname28%% %%blflastname28%%" attendant.resourceList.28.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.28.address="" attendant.resourceList.28.label="" attendant.resourceList.28.type=""/>
    {ENDIF}

    {IF blf29}
    <attendant attendant.resourceList.29.address="%%blf29%%" attendant.resourceList.29.label="%%blffirstname29%% %%blflastname29%%" attendant.resourceList.29.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.29.address="" attendant.resourceList.29.label="" attendant.resourceList.29.type=""/>
    {ENDIF}

    {IF blf30}
    <attendant attendant.resourceList.30.address="%%blf30%%" attendant.resourceList.30.label="%%blffirstname30%% %%blflastname30%%" attendant.resourceList.30.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.30.address="" attendant.resourceList.30.label="" attendant.resourceList.30.type=""/>
    {ENDIF}

    {IF blf31}
    <attendant attendant.resourceList.31.address="%%blf31%%" attendant.resourceList.31.label="%%blffirstname31%% %%blflastname31%%" attendant.resourceList.31.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.31.address="" attendant.resourceList.31.label="" attendant.resourceList.31.type=""/>
    {ENDIF}

    {IF blf32}
    <attendant attendant.resourceList.32.address="%%blf32%%" attendant.resourceList.32.label="%%blffirstname32%% %%blflastname32%%" attendant.resourceList.32.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.32.address="" attendant.resourceList.32.label="" attendant.resourceList.32.type=""/>
    {ENDIF}

    {IF blf33}
    <attendant attendant.resourceList.33.address="%%blf33%%" attendant.resourceList.33.label="%%blffirstname33%% %%blflastname33%%" attendant.resourceList.33.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.33.address="" attendant.resourceList.33.label="" attendant.resourceList.33.type=""/>
    {ENDIF}

    {IF blf34}
    <attendant attendant.resourceList.34.address="%%blf34%%" attendant.resourceList.34.label="%%blffirstname34%% %%blflastname34%%" attendant.resourceList.34.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.34.address="" attendant.resourceList.34.label="" attendant.resourceList.34.type=""/>
    {ENDIF}

    {IF blf35}
    <attendant attendant.resourceList.35.address="%%blf35%%" attendant.resourceList.35.label="%%blffirstname35%% %%blflastname35%%" attendant.resourceList.35.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.35.address="" attendant.resourceList.35.label="" attendant.resourceList.35.type=""/>
    {ENDIF}

    {IF blf36}
    <attendant attendant.resourceList.36.address="%%blf36%%" attendant.resourceList.36.label="%%blffirstname36%% %%blflastname36%%" attendant.resourceList.36.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.36.address="" attendant.resourceList.36.label="" attendant.resourceList.36.type=""/>
    {ENDIF}

    {IF blf37}
    <attendant attendant.resourceList.37.address="%%blf37%%" attendant.resourceList.37.label="%%blffirstname37%% %%blflastname37%%" attendant.resourceList.37.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.37.address="" attendant.resourceList.37.label="" attendant.resourceList.37.type=""/>
    {ENDIF}

    {IF blf38}
    <attendant attendant.resourceList.38.address="%%blf38%%" attendant.resourceList.38.label="%%blffirstname38%% %%blflastname38%%" attendant.resourceList.38.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.38.address="" attendant.resourceList.38.label="" attendant.resourceList.38.type=""/>
    {ENDIF}

    {IF blf39}
    <attendant attendant.resourceList.39.address="%%blf39%%" attendant.resourceList.39.label="%%blffirstname39%% %%blflastname39%%" attendant.resourceList.39.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.39.address="" attendant.resourceList.39.label="" attendant.resourceList.39.type=""/>
    {ENDIF}

    {IF blf40}
    <attendant attendant.resourceList.40.address="%%blf40%%" attendant.resourceList.40.label="%%blffirstname40%% %%blflastname40%%" attendant.resourceList.40.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.40.address="" attendant.resourceList.40.label="" attendant.resourceList.40.type=""/>
    {ENDIF}

    {IF blf41}
    <attendant attendant.resourceList.41.address="%%blf41%%" attendant.resourceList.41.label="%%blffirstname41%% %%blflastname41%%" attendant.resourceList.41.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.41.address="" attendant.resourceList.41.label="" attendant.resourceList.41.type=""/>
    {ENDIF}

    {IF blf42}
    <attendant attendant.resourceList.42.address="%%blf42%%" attendant.resourceList.42.label="%%blffirstname42%% %%blflastname42%%" attendant.resourceList.42.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.42.address="" attendant.resourceList.42.label="" attendant.resourceList.42.type=""/>
    {ENDIF}

    {IF blf43}
    <attendant attendant.resourceList.43.address="%%blf43%%" attendant.resourceList.43.label="%%blffirstname43%% %%blflastname43%%" attendant.resourceList.43.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.43.address="" attendant.resourceList.43.label="" attendant.resourceList.43.type=""/>
    {ENDIF}

    {IF blf44}
    <attendant attendant.resourceList.44.address="%%blf44%%" attendant.resourceList.44.label="%%blffirstname44%% %%blflastname44%%" attendant.resourceList.44.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.44.address="" attendant.resourceList.44.label="" attendant.resourceList.44.type=""/>
    {ENDIF}

    {IF blf45}
    <attendant attendant.resourceList.45.address="%%blf45%%" attendant.resourceList.45.label="%%blffirstname45%% %%blflastname45%%" attendant.resourceList.45.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.45.address="" attendant.resourceList.45.label="" attendant.resourceList.45.type=""/>
    {ENDIF}

    {IF blf46}
    <attendant attendant.resourceList.46.address="%%blf46%%" attendant.resourceList.46.label="%%blffirstname46%% %%blflastname46%%" attendant.resourceList.46.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.46.address="" attendant.resourceList.46.label="" attendant.resourceList.46.type=""/>
    {ENDIF}

    {IF blf47}
    <attendant attendant.resourceList.47.address="%%blf47%%" attendant.resourceList.47.label="%%blffirstname47%% %%blflastname47%%" attendant.resourceList.47.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.47.address="" attendant.resourceList.47.label="" attendant.resourceList.47.type=""/>
    {ENDIF}

    {IF blf48}
    <attendant attendant.resourceList.48.address="%%blf48%%" attendant.resourceList.48.label="%%blffirstname48%% %%blflastname48%%" attendant.resourceList.48.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.48.address="" attendant.resourceList.48.label="" attendant.resourceList.48.type=""/>
    {ENDIF}

    {IF blf49}
    <attendant attendant.resourceList.49.address="%%blf49%%" attendant.resourceList.49.label="%%blffirstname49%% %%blflastname49%%" attendant.resourceList.49.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.49.address="" attendant.resourceList.49.label="" attendant.resourceList.49.type=""/>
    {ENDIF}

    {IF blf50}
    <attendant attendant.resourceList.50.address="%%blf50%%" attendant.resourceList.50.label="%%blffirstname50%% %%blflastname50%%" attendant.resourceList.50.type="automata"/>
    {ELSE}
    <attendant attendant.resourceList.50.address="" attendant.resourceList.50.label="" attendant.resourceList.50.type=""/>
    {ENDIF}

    </polycomConfig>
    ]]></deviceconfig>
    </device>
    </data>
    </doc>
     
  5. pswarowski

    Joined:
    Mar 14, 2016
    Messages:
    14
    Likes Received:
    0
Thread Status:
Not open for further replies.