Yealink add "**" after every DSS Key

I have an issue with speed dials on Yealink phones.

Endpoint Manager adds ‘**’ in the “Extension” field (the rightmost column if you check Yealink’s web interface) of to every DSS Keys. It’s fine for BLFs, but it creates a problem for speed dials.

What it does is that once the call is dialed using a speeddial, the phone dials ** after a few seconds. For most call, it doesn’t create any problem, as the “" is dialed during ring time, but for calls answered rapidly by an IVR, the "” in caught by the IVR.

To fix the problem, the “**” should only be added to DSS Keys configured as BLFs, but Endpoint manager adds it to every key, regardless of the type.

As anyone ever encountered this situation ?

Another way to fix it would be on Yealink’s side: clear the Extension field when DSS Key type = Speed dial. I will try to get a hold of them.

Hmmm Weird.
I’ve got an old T28P, and I’m using EMP in latest version, all works fine to me.
Check your firmware.
Anyway, When I press on speed dial button (not BLF), that works fine. but no double * in close the field number, even if EPM add ** by default, the phone should not dial ** at the end of dial.

Or perhaps, there’s an issue with a specific model of phone.

The issues happens on T54w phones (not supported for now, I know) and on T46s with EPM’s supported firmware.

I know that the ** code is linked to the “Directed Call Pickup” Feature code. I changed it for **** for a test and after that, the phone dialed **** after a speeddial. I see the ** dialed in the Full Logs (I enable DTMF logging).

It seems like the “Extension” is set to ** in the phone by some kind of dark magic !

Here is the configuration exported from a provisioned phone:

linekey.1.extension = **
linekey.1.label = 201
linekey.1.pickup_value = **

The first line is the culprit. The problem is, this line is nowhere to be found in the provisioning file generated by EPM. Where does it come from ?

If I manually add this line in EPM: “linekey.1.extension=%NULL%”, the speed dial key works fine and I don’t see “linekey.1.extension=**” when I export the configuration from the phone.

If I reset a phone to factory default and manually program a speed dial, the “linekey.1.extension” remains empty and the speed dial works correctly.

I’ll keep on searching and will post anything usefull I find.

Ok I think I found something.

From the Yealink admin manual:

linekey.X.extension

For multicast paging:
It configures the channel of multicast paging group.
For BLF/BLF list/intercom feature:
It configures the pickup code.
Note: It is only applicable when “linekey.X.type” is set to 14, 16, 24 or 39. It is not
applicable to T19 E2 IP phones.

The problem is that a speeddial key is type 13, but the linekey.X.extension seems to be applied, even if it shouldn’t.

I will contact Yealink on this.

Ok thanks for your feedback. :wink:
Interesting anyway.
I was prety sure that was a firmware issue, because the behavior should be the same for all.

Umm what? No it is not. It is clearly a bug with EPM. You are populating linekey.1.pickup_value, when it should not be populated, with ** regardless of the button type the user chooses in EPM.

Yes, it may be a Yealink bug that the phone GUI is showing it in the linekey.1.extension field on screen.

But EPM should not be populating EVERY SINGLE line.X.pickup_value with ** to being with.

The linekey.X.pickup_value is not used for BLF pickup. It is supposed to be for Visual BLF (if configured) pickup, see page 455.

As @chrischevy noted, the “Extension” field in the phone GUI, or the linekey.X.extension field is for the BLF/BLF List pickup as noted on page 170.

Yealink is certainly not blameless, it most certainly seems like the devices are showing the pickup_value in the extension field, but either way, EPM should not be populating all of them. It should only be populated when the correct BLF is set.

Not when nothing is set at all.

Even on every single expansion module linekey.

Instead you should be setting the extension value, and ONLY when the key type is 14, 16, 24, or 39.

1 Like

On my system (not using EPM) I have the Yealink phones uploading their config via HTTP PUT. It makes it very simple to see what Yealink does.
image
image

Add the ** to Extension
image
image

I then removed the ** again, let the file upload. Then I manually updated the pickup_value field with ** and the told the phone to resync.
image
It was blank here.
image

But look at the uploaded config now.
image

I told it to refresh again, and it did not change the GUI. So I told it to reboot. Now the GUI shows it in `extension also.
image

Conclusion:
Bug 1: EPM inside FreePBX is using a field it should not be using. This entire problem would go away if EPM used the extension field as it is designed to be used instead of the pickup_value.
Bug 2: Yealink is mixing up the pickup_value and extension some place in the firmware.

Indeed, even if we populate ** in a field which is not used by this feature, Yealink should not use it anyway. That works for T28P at least.
I can’t imagine to get this issue and never had any complains until there.
Lets see what we can do in EPM.
Create a JIRA ticket for that or contact suport team to create it.

I thought I was pretty clear that it was a Yealink issue also.

Yes, I know. And?
Have you created a JIRA ticket?

1 Like

I don’t have commercial EPM purchased. I cannot create a commercial ticket. I’ve complained about that before too.

The answer was lie and sign into a random client system with EPM purchased and make a ticket.

Yealink ticket opened for their part of this as noted in my previous post.
https://ticket.yealink.com/page/question-detail.html?id=98409

Wow!
Thanks Sorvani for all your help !

Also I opened a ticket :
https://issues.freepbx.org/browse/FREEI-1010

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

An update from Yealink. Issue confirmed and in process.

1 Like

No one can see that though. So we simply have to wait and hope.

@jsmith this is something that could use some thought from a community and or roadmap perspective.

There should be some kind of visibility into this kind of stuff. It’s a commercial module, I get that.

But it is such a hassle to get something reported. In this thread a user kicked up an issue with EPM. Ok great. But is it an EPM issue or a Yealink issue? In this case it is both. But when I determined that, I was unable to do anything about creating a bug report for EPM as I do not have EPM on our company’s PBX.

I have clients that have it, but I’m not going to randomly sign into a client PBX to test things just for a bug report.

For EPM, in this case,the bug is simply the fact that it is always populating a field that it should not be.

That of course though, is what caused us to figure out that Yealink also had a bug in their firmware that was incorrectly applying that field that was incorrectly populated.

But now Yealink has a bug reported and getting resolved, and yes theirs is also not public. But I’m not asking it the entire report be made public from Sangoma. but maybe a way to see status?

Maybe it is not feasible. I dunno.

Did anyone get a fix for this yet? I have a bunch of T46s phones that if you put a speed-dial on it you get the **. I did find on a Yealink forum someone also having the issues and gave a workaround. If you add the line of code below to the base file of the line-key that you put the speed-dial on. It will provision correctly out of the EPM. Unfortunately to do this for all the users would take forever.

linekey.XX.extension = %NULL%