VoIP.ms BLF Configuration w/ Poly VVX350


Can anyone help me with configuring BLF lines for extensions as well as parking lot for VoIP.ms? I’ve set up 3 sub-accounts (3 extensions) 610, 620, 630. These settings are manually provisioned, and extension to extension calling, and inbound and outbound calling is working fine. I want to use the additional soft keys to allow users to monitor the other 2 extensions, and 2 parking lot spots. Following the guide here, I opened a ticket with VoIP.ms and asked them to enable BLF on my account/server. They confirmed this is complete. According to this article, it looks like they turn on something called SIP Presence. Then it goes awry because it seems like the Grandstream phones do this differently than the Polys do.

I tried to enter the ‘address’ under the BLF Settings as XXXXXX_YYYYYY### where XXXXXX = VoIP.ms account number, YYYYYY = ClientCode, ### = 3 digit extension number. So for example it would look like 987654_WMTCHC610, which could be an account number and code for Walmart in Chicago for extension 610.

When I pop this into the phone configuration I get nothing new on the display, only the 2 registered extension lines. This includes when I put in their BLF code for the parking lots (this is in the Parking Lot section.) I reached out to VoIP.MS support for assistance and they aren’t sure and have no documentation on how to set this up. With other VoIP providers, I would put in the SIP username which is unique to each extension, like WMTCHC901_EXT_610 here and it works perfectly.

I read elsewhere that someone trying to get this working with Grandstream had issues until they changed to a different VoIP.ms server… I haven’t tried that yet but I will. I was just hoping to confirm someone’s working configuration before I tried that.

If anyone has cracked this with VoIP.ms and the Poly VVX phones, I’d appreciate you sharing your configuration. Thanks.

Unfortunately, Polycom devices are the hardest phone to provision.

You may want to try your luck over at the VoIP.ms forums or support channels.

The what now? Can you provide a link? FWIW, I’ve tried DSLReports & r/VoIP…

Long time FreePBX (Asterisk), VoIP.MS, Poly user…

Doing this from memory and few config examples as I don’t have a desk phone to test with at home.

I’ve never done exactly what you ask (BLF from VoIP.MS) but have done this soo many times with Poly and Asterisk - I’m confident this will work…

There are 3 ways to do this…

1 - the web based menu

If the phone is on “GENERIC” profile (regular SIP) and NOT “TEAMS” profile, there will be a web menu enabled by default.

Goto “https://[ip of phone]”

Default password is 456

Enable “Presence” and then reboot phone. You will need to do this on all phones.

Once rebooted, add contact to the contact directory on a phone. Specify the extension number in the “Contact Number” section. If the extension is on the same PBX that this phone uses to register it’s lines - you just need the ext number.

Scroll down on contact, select to enable the BUDDYWATCH feature.

The contact will now be monitored for it’s presence (Available, Busy, etc).

2 - Config XML file

You can load a config file in a XML format into the phones using the web menu. The XML file has to be formatted correctly or you don’t get the results you expect. I edit in Notepad++ and use XML Notepad (free) to double check the XML layout.

Here are some pointers. I’ve used these with VVX 500/1 and 601 models - but VVX350 should be the same.

feature.presence.enabled=“1” (enables the presence feature mentioned earlier)
lineKey.reassignment.enabled=“1” (allow you to reassign keys)
feature.enhancedFeatureKeys.enabled=“1” (allow enhanced keys)
up.numOfDisplayColumns=“1” (set the columns on the display to 1. NOTE - 4 items in a column)
feature.EFKLineKey.enabled=“1” (enable EFK keys)

lineKey.1.category=“Line” (set the first line key)
lineKey.1.index=“1” (use the first Line instance for this key)
lineKey.2.category=“Line” (set the 2nd line key)
lineKey.2.index=“1” (also use the first Line instance for this second line key)

lineKey.5.category=BLF (NOTE - this is lineKey 5 - so this appears on the NEXT screen for the phone, which in this case, is a color display expansion module. Also NOTE it is set as a BLF key)
attendant.resourceList.5.address=7720 (local ext number of contact)
attendant.resourceList.5.label=Chunky_7720 (any label you like)

lineKey.6.category=“EFK” (NOTE - set as a EFK key - think speed dial)
efk.efklist.6.action.string=“1234567890” (number as dialed from phone)
efk.efklist.6.mname=“Chunky (cell)” (any label you like)
efk.efklist.6.status=“1” (enable it)

You can EXPORT an XML file from the phone to see the layout - edit - and IMPORT back in.

Full example XML file as ZIP file here = Config XML file for VVX color expansion module - Poly Community

It is for a color expansion module, but should work the same with any VVX phone


Ploy phones have a REST API. Once enabled in the web menu, you can reach out to the phone using URLS’s to the phone’s IP and it will set items in the config based on your URL.

This is more complex then any other method - so I rarely use it - but mentioned it for completeness.