• ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
  • ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
Guidelines
The HP Community is where owners of HP products, like you, volunteer to help each other find solutions.
HP Recommended

This post explains the possibility using Enhanced Feature Keys / EFK macros to change softkey functions or remove softkeys.

 

Many other examples involving Soft Keys can be found using the Forum Search.

 

NOTE: This feature is available on VVX Business Media, VVX IP Phones, Poly Trio since UC Software 5.7.2 and CCX Phones when using openSIP or Skype for Business Base Profile.
Older legacy SoundPoint IP 32x/33x, 450, 550, 560, 650, and 670, SoundStation IP 5000, 6000 and 7000, and VVX 1500 running UCS 3.3.0 or newer support softkeys.

 

Please be aware that limited functionality on certain Platforms may occur if an older Version like SIP 3.2.x or older is used.

 

This functionality has only been implemented since SIP 3.0.0 and older Versions are unable to change the Softkey functionality as described below (No support for SPIP300 & SPIP500). 

 

What is an EFK ?

 

Enhanced feature keys (EFK) enables you to customize the functions of a phone's line, soft, and hard keys to assign frequently used functions to keys or to create menu shortcuts to frequently used phone settings.


Enhanced feature key functionality is implemented using star code sequences like *89 and SIP
messaging. Star code sequences that define EFK functions are written as macros that you apply to line and soft keys. The EFK macro language was designed to follow current configuration file standards and to be extensible.


In addition, you can configure an EFK as a line key allowing the users to execute the macro action
defined to that line key. When this feature is enabled, all the EFK macros that are configured using
efk.eklist parameter and has efk.efklist.x.status="1" will display as a line key.

 

You can enable or disable this feature using the configuration parameters or importing the configuration file using the Web Configuration Utility.

 

Any change to a Softkey always requires:

 

feature.enhancedFeatureKeys.enabled="1" 

 

Usually utilizing the efk.efklist.x would require in addition the ability to access the Phone Directory as shown => here <= to be able to assign the EFKList to a spare directory Entry.

 

Since VVX UC Software 5.7.0 the new parameter feature.EFKLineKey.enabled="1" => here <= can be used instead to assign this to a free line key.

 

Possible Keys are:

 

  • up to 10 Softkeys per call state
  • up to 50 EFK Lists

 

Custom soft keys can be added in the following call states:

 

  • Idle There are no active calls.

  • Active This state starts when a call is connected. It stops when the call stops or changes to another state (like hold or dial tone).

  • Alerting (or ringing or incoming proceeding) The phone is ringing.

  • Dial tone You can hear a dial tone.

  • Proceeding (or outgoing proceeding) This state starts when the phone sends a request to the network. It stops when the call is connected.

  • Setup This state starts when the user starts keying in a phone number. This state ends when the Proceeding state starts.

  • Hold The call is put on hold locally.

Since VVX UC Software >6.4.1<  and CCX UC Software >7.2.0< or later we also added

 

  • Transfer
    <web feature.enhancedFeatureKeys.enabled="1" 
    softkey.1.action="xxxx"
    softkey.1.enable="1"
    softkey.1.label="xxxx"
    softkey.1.use.transfer="1" />​
  • Conference
    <web feature.enhancedFeatureKeys.enabled="1" 
    softkey.1.action="xxxx"
    softkey.1.enable="1"
    softkey.1.label="xxxx"
    softkey.1.use.conference="1" />​

 

General possible Keys for $F examples are:


Note: Please 
verify the individual availability of a specific key against the Admin Guide!

 

Line1 Line21 Line41 Softkey1 DoNotDisturb Divert
Line2 Line22 Line42 Softkey2 Select EnterRecord
Line3 Line23 Line43 Softkey3 Conference Exit
Line4 Line24 Line44 Softkey4 Transfer GroupPickup
Line5 Line25 Line45 Softkey5 Redial LCR
Line6 Line26 Line46 VolDown Hold ListenMode
Line7 Line27 Line47 VolUp Status MyStatus
Line8 Line28 Line48 Headset CallList NewCall
Line9 Line29 Dialpad0 Handsfree Page Null
Line10 Line30 Dialpad1 MicMute Talk Offline
Line11 Line31 Dialpad2 Menu Join ParkedPickup
Line12 Line32 Dialpad3 Messages Intercom QuickSetup
Line13 Line33 Dialpad4 Applications LockPhone Redial
Line14 Line34 Dialpad5 Directories ACDAvailable ServerACDAgentAvailable
Line15 Line35 Dialpad6 Setup ACDLogin ServerACDAgentUnavailable
Line16 Line36 Dialpad7 ArrowUp ACDLogout ServerACDSignIn
Line17 Line37 Dialpad8 ArrowDown ACDUnavailable ServerACDSignOut
Line18 Line38 Dialpad9 ArrowLeft Answer Silence
Line19 Line39 DialPadStar ArrowRight BargeIn SpeedDial
Line20 Line40 DialPadPound Backspace BuddyStatus Split
Callers CallPark CallPickup Delete DialpadURL Video
DirectedPickup          

 

New EFK since UC Software 5.3.0

 

$TMeetNow$

 

New EFK since UC Software 5.5.2

 

$FBWSAnyWhere$

 

New EFK since UC Software 5.7.0

 

$FAssistantMenu$
$FExecutiveMenu$

 

New EFK since UC Software 5.9.0

 

$Tconsult$

 

A new macro $Tconsult$ is added to execute the consultative transfer functionality irrespective of default transfer type (Consultative/Blind) set on the phone.

 

A complete list of the Key Labels and Internal Functions can be found in the Admin Guide

 

  • UCS 6.3.0 >here<
  • UCS 6.1.0 >here<
  • UCS 6.0.0 >here<
  • UCS 5.9.0 >here<
  • UCS 5.8.0 Page 674
  • UCS 5.7.0 Page 469
  • UCS 5.6.0 Page 138
  • UCS 5.5.0 Page 470
  • UCS 5.4.3 Page 298
  • UCS 5.4.0 Page 295
  • UCS 5.3.0 Page 310
  • UCS 5.2.0 Page 405
  • UCS 5.1.0 Page 369
  • UCS 5.0.1 or UCS 5.0.0 Page 363
  • UCS 4.1.0 Page 375
  • UCS 4.0.2 Page 362
  • UCS 3.3.0 Page C - 18

Accessing Softkey's on a Poly Trio or CCX:

 

  • Press the Hamburger Menu
    image
  • Select the Softkey
    image

 

Example 1:

 

In this example below, we are going to remove the new call softkey, change the function of the forward softkey to forward to the voicemail extension and add a new softkey to dial the voicemail and add our extension and pin automatically.

 

NOTE: Below has been tested against UCS 3.3.3!

 

  • Removal of the New Call Soft Key, automate the call forward facility and add automated Voice Mail access softkey

 

 

Standard Idle Screen:

 

image

 

Running UCS 3.3.x and using below code:

 

 

 

 

 

 

 

<feature>
    <feature.enhancedFeatureKeys feature.enhancedFeatureKeys.enabled="1"></feature.enhancedFeatureKeys>
  </feature>
  <softkeyoff>
  <softkey softkey.feature.newcall="0" softkey.feature.forward="0"/>
  </softkeyoff>
  <softkey2>
  <softkey softkey.1.action="$FDivert$$FSelect$$FSoftKey2$" softkey.1.enable="1" softkey.1.label="Forward" softkey.1.use.idle="1" />
  </softkey2>
  <softkey3>
  <softkey softkey.2.action="8500$Tinvite$$Cwaitconnect$$Cpause4$3001$Tdtmf$$Cpause4$0000$Tdtmf$" softkey.2.enable="1" softkey.2.label="VM" softkey.2.use.idle="1" />
  </softkey3>
  <divertcontact>
  <divert divert.1.contact="8500"/>
  </divertcontact>

 

 

 

 

 

 

 

 

 Running UCS 4.x.x and using below code:

 

 

 

 

 

 

 

 

<WEB feature.enhancedFeatureKeys.enabled="1"
softkey.feature.forward="0"
softkey.feature.newcall="0"
reg.1.fwdContact="8500"
softkey.1.action="$FDivert$$FSelect$$FSoftKey2$"
softkey.2.action="8500$Tinvite$$Cwaitconnect$$Cpause4$3001$Tdtmf$$Cpause4$0000$Tdtmf$"
softkey.1.enable="1"
softkey.2.enable="1"
softkey.1.label="Forward"
softkey.2.label="VM"
softkey.1.use.idle="1"
softkey.2.use.idle="1" />

 

 

 

 

 

 

 

  

 

  • The efk/ enhanced feature key feature is activated via feature.enhancedFeatureKeys.enabled="1"

  • The 2 original softkey's are deactivated via softkey.feature.newcall="0" softkey.feature.forward="0"

  • The macro for the call forward is "$FDivert$$FSelect$$FSoftKey2$", this emulates the Button presses via the menu.

    NOTE: The above example matches the tested phone and simply emulates pressing the individual keys.

  • The softkey is then activated via softkey.1.enable="1"

  • The name for the softkey is defined via softkey.1.label="Forward" and it is only displayed when idle via softkey.1.use.idle="1"

  • The macro for the voicemail is "8500$Tinvite$$Cwaitconnect$$Cpause4$3001$Tdtmf$$Cpause4$0000$Tdtmf$" . This dials 8500 and wait until connected, pauses for 4 seconds and sends the extension 3001 via DTMF, pauses for 4 seconds and sends the password 0000 via DTMF

  • The softkey is then activated via softkey.2.enable="1"

  • The name for the softkey is defined via softkey.2.label="VM" and it is only displayed when idle via softkey.2.use.idle="1"

 

NOTE: This is only an example and numbers may need to be changed to match the local setup. The Admin Guide and the Feature Descriptions & Technical Notifications Page contain additional examples.

 

 

The Phone now shows the new softkey's:

 

image

 

Pressing Forward will toggle between call forward on or off

 

image

 

Example 2:

 

  • Park a call Softkey

Note: Below has been tested against UCS 4.0.4

 

 

 

 

 

 

 

<park feature.enhancedFeatureKeys.enabled="1" softkey.1.enable="1" softkey.1.use.active="1" softkey.1.label="Park" softkey.1.insert="4" softkey.1.action="#$Cp1$700" />

 

 

 

 

 

 

 

 

  • The efk/ enhanced feature key feature is activated via feature.enhancedFeatureKeys.enabled="1"

  • The macro for the Call Park is softkey.1.action="#$Cp1$700" . This sends a # / hash during an active call which places the far end on hold and then pauses for 1 second and dials the Park Orbit of 700.

    (Above is an Asterisk example and your individual switch may not support such feature)

  •  The softkey is activated via softkey.1.enable="1" and only displayed during an active call via softkey.1.use.active="1".

  • We name the Key Park via softkey.1.label="Park".

  • We place the key on the fourth position via softkey.1.insert="4".

 

Example 3:

 

  • Create a softkey that uses a specific Speed Dial and Line to dial out

Note: Below has been tested against UCS 4.0.4

 

 

 

 

 

 

 

<sd feature.enhancedFeatureKeys.enabled="1" softkey.1.enable="1" softkey.1.use.idle="1" softkey.1.label="SD-Call" softkey.1.insert="4" softkey.1.action="$FLine2$$S1$$Cnewcall$" />

 

 

 

 

 

 

 

 

 

  • The efk/ enhanced feature key feature is activated via feature.enhancedFeatureKeys.enabled="1"

  • The macro for using a speed dial on Line 2 in this example is softkey.1.action="$FLine2$$S1$$Cnewcall$" .
    This selects Line 2 during idle state and then uses Speed Dial 1 for a new call.

    (Please be aware that the local phone directory needs to have a speed dial target number programmed for the selected speed dial )

  •  The softkey is activated via softkey.1.enable="1" and only displayed when the phone is idle via softkey.1.use.idle="1".

  • We name the Key SD-Call via softkey.1.label="SD-Call".

  • We place the key on the fourth position via softkey.1.insert="4".

 

Example 4:

 

  • Move the position of a softkey

Note: Below has been tested against UCS 4.1.5

 

Based on the below example configuration we add the softkey's

 

 

 

 

 

 

 

<test feature.enhancedFeatureKeys.enabled="1"
	reg.1.fwdContact="8500"
	softkey.1.action="$FDivert$$FSelect$$FSoftKey2$"
softkey.2.action="8500$Tinvite$$Cwaitconnect$$Cpause4$3001$Tdtmf$$Cpause4$0000$Tdtmf$"
	softkey.1.enable="1"
	softkey.2.enable="1"
	softkey.1.label="Test1"
	softkey.2.label="Test2"
	softkey.1.use.idle="1"
	softkey.2.use.idle="1"/>

 

 

 

 

 

 

 

 

 If no precede is set:

 

image

 

If precede is set for Softkey 1 only:

 

softkey.1.precede="1"

 image

 

If precede is set for Softkey 2 only:

 

<web softkey.2.precede="1"/>

 

image

 

If precede is set for both Softkey's:

 

<web softkey.1.precede="1"
softkey.2.precede="1" />

 

image

 

Example 5:

 

  • Create a off hook Page softkey

Note: Below has been tested against UCS 5.0.1

 

An example configuration (attached):

 

 

 

 

 

 

 

<WEB 	feature.enhancedFeatureKeys.enabled="1"
	softkey.1.action="$FPage$"
	softkey.1.enable="1"
	softkey.1.label="PAGE"
	softkey.1.use.dialtone="1"
	softkey.1.precede="1"
	/>

 

 

 

 

 

 

 

 

 Above will add a new PAGE Key when the phone is off hook:

 

VVX500

image

 

VVX400

 

image

 

Example 6:

 

  • Create a Blind Transfer softkey and option

Note: Below has been tested against UCS 5.0.2

 

An example configuration (attached):

 

 

 

 

 

 

 

<blind feature.enhancedFeatureKeys.enabled="1" softkey.1.enable="1" softkey.1.precede="1" softkey.1.use.active="1" softkey.1.action="$P1N4$$Trefer$" softkey.1.label="Blind" efk.efkprompt.1.status="1" 
efk.efkprompt.1.label="Enter transfer destination" 
efk.efkprompt.1.type="numeric" 
efk.efkprompt.1.userfeedback="visible" 
efk.efkprompt.1.digitmatching="none" />

 

 

 

 

 

 

 

 

 

Above will add a BLIND softkey once the call is answered:

 

image

 

Pressing the Key will open a Prompt for the extension to dial:

 

image

 

The P1 is for the Prompt 1 and N4 is for 4 Digit extensions. 

------------------------------------------------
Notice: I am an HP Poly employee but all replies within the community are done as a volunteer outside of my day role. This community forum is not an official HP Poly support resource, thus responses from HP Poly employees, partners, and customers alike are best-effort in attempts to share learned knowledge.
If you need immediate and/or official assistance for former Poly\Plantronics\Polycom please open a service ticket through your support channels
For HP products please check HP Support.

Please also ensure you always check the General VoIP , Video Endpoint , UC Platform (Microsoft) , PSTN
6 REPLIES 6
HP Recommended

Example 7:

 

  • Create a one-touch conference active call button to a fixed number

 

 

 

<conference feature.enhancedFeatureKeys.enabled="1"
softkey.1.enable="1" 
softkey.1.use.active="1" 
softkey.1.label="DCon" 
softkey.1.insert="1" softkey.1.action="$FConference$123$Tinvite$$Cwc$$FJoin$" />

 

 

 

 

  • Above example will create a new Softkey called DCon and will only be displayed (position 1) whilst on an active call

    Pressing this key will automatically dial
    123 and await (wc) until the call is connected and then join the calls together.

image

 

 

Example 8:

 

 

  • Create a Softkey to directly access the LYNC directory during a call

 

 

<Change 
feature.enhancedFeatureKeys.enabled="1" 
softkey.1.action="$FTransfer$$FDirectories$$FDialpad2$" 
softkey.1.enable="1"
softkey.1.label="Lync Dir."
softkey.1.use.active="1" />

 

 

  • Above example will create a new Softkey called Lync Dir. and will only be displayed during an active call

image

  • Pressing this key will automatically access the LYNC directory only.

 

image

 

 

Example 9:

 

 

  • Create a Softkey to directly transfer a call and hangup
    <WEB 	feature.enhancedFeatureKeys.enabled="1"
    	softkey.1.action="123$Trefer$"
    	softkey.1.enable="1"
    	softkey.1.label="Dtrans"
    	softkey.1.use.active="1"
    	softkey.1.insert="3"
    	/>

  • The above will only display the key Dtrans when a incoming call is answered. Pressing this key will dial 123 and REFER the active "held" call to this number.

Example 10:

 

  • Create a one-touch Intercom Button calling a contact

UCS 5.2.0 added this new Functionality which enables the Intercom functionality without requiring the support of a call server using the SIP Info-Header functionality explained => here <=

 

 

feature.enhancedFeatureKeys.enabled="1" softkey.1.precede="1" softkey.1.label="IC-Bob" softkey.1.use.idle="1" softkey.1.enable="1" softkey.1.action="1002$Tintercom$"

 

 

Using the above example will add a new Softkey before any other softkey called IC-Bob and dial Extension 1002 Using the $Tintercom$ functionality.

 

image

 

The UCS 5.2.0 Admin Guide page 150 explains this in more detail

 

Example 11:

 

  • Removal of the Basic Call Management Soft keys

Polycom VVX 300, 310 , 400 and 410 and for example SoundPoint IP 550, 560, 650 and 670 have physical hardware keys for Hold or Transfer (in some instances even Conference) options and it may be therefore desirable to remove the duplicated soft keys that appear during an active call.

 

NOTE: The Conference soft key cannot be removed from phones that do not have a hardware key mapped !

 

In order to remove the Hold and Transfer Softkey the following configuration should be applied:

 

 

<web feature.enhancedFeatureKeys.enabled="1" softkey.feature.basicCallManagement.redundant="0" />

 

 

 

Example on a VVX410:

 

image

 

Note: The above will simply remove the softkeys but will not align the existing spaces left by the removal

 

The Conference Facility itself can be disabled:

 

<web call.localConferenceEnabled="0" />

The above therefore would remove the Conference Soft Key.

 

In order to remove the Hold, Conference and Transfer Softkey and align the leftover keys the following configuration should be applied:

 

Example on a VVX410:

 

image

 

 

Example configuration is attached as DisableConferenceBasicCallManagementAllignLeft.cfg

 

Example 12 :

 

  • Create a Transfer Softkey and return to the Idle screen

 

The VVX300/310/400/410 have less space on their display to show softkeys and also lack the touch screen disabilities of the VVX500/600. 

 

It may be therefore of interest, whilst transferring a call, to return to the Phone Idle screen rather than having presented last caller list.

 

The below example adds a new Softkey called Trans and automatically returns to the Idle screen (Lines). It also removes the standard Hold and Transfer soft keys.

 

 

<web feature.enhancedFeatureKeys.enabled="1" softkey.1.enable="1" softkey.1.use.active="1" softkey.1.label="Trans" softkey.1.precede="1" softkey.1.action="$FTransfer$$FSoftkey1$" softkey.feature.basicCallManagement.redundant="0" />

 

 

Pressing the Trans Softkey whilst in a call:

 

image

 

Pressing Exit will allow the user to toggle back to the last caller screen

 

image

image

An example configuration is attached

 

Example 13 :

 

  • Create a Factory Reset Softkey 

It may be desirable for testing purposes to be able to factory reset the phone in a quick manner.

 

image

 

The below example simulates the steps a user manually would have to make:

 

 

<web feature.enhancedFeatureKeys.enabled="1" softkey.1.precede="1" softkey.1.action="$FSetup$$FDialpad2$$FDialpad4$$FDialpad5$$FDialpad6$$FSelect$$FDialpad1$$FDialpad5$$FDialpad5$$FSoftkey4$" softkey.1.enable="1" softkey.1.label="Factory" softkey.1.use.idle="1" />

 

 

An example configuration is attached (ResetFactory.zip)

 

For additional security, you may want to mask the Admin Password via:

 

<web up.echoPasswordDigits="0"/>

NOTE: The above was only added in UC Software 5.2.2!

 

Example 14 :

 

  • Create a Softkey to Open a Web Site 

It may be desirable to have a softkey to open a Web Site using the Microbroser

 

image

 

 

<WEB 	feature.enhancedFeatureKeys.enabled="1"
	softkey.1.action="http://google.co.uk"
	softkey.1.enable="1"
	softkey.1.label="Google"
	softkey.1.use.idle="1"
	softkey.1.precede="1"
	/>

 

 

 

Pressing the Key opens the page

 

image 

 

Example 15:

 

It may be required that an EFK Action is only sent on the actual line used and not on the first line.

 

Please add this to the configuration as discussed => here <=

<web call.stickyAutoLineSeize="1"/>

 

------------------------------------------------
Notice: I am an HP Poly employee but all replies within the community are done as a volunteer outside of my day role. This community forum is not an official HP Poly support resource, thus responses from HP Poly employees, partners, and customers alike are best-effort in attempts to share learned knowledge.
If you need immediate and/or official assistance for former Poly\Plantronics\Polycom please open a service ticket through your support channels
For HP products please check HP Support.

Please also ensure you always check the General VoIP , Video Endpoint , UC Platform (Microsoft) , PSTN
HP Recommended

Troubleshooting Enhanced Feature Keys / EFK and Configurable Soft Keys on Polycom Phones

 

Under certain circumstances it may be desirable to debug an EFK issue if the feature is not working as expected

 

Lower the logging level for the EFK either via the Web Interface:

 

image

 

Or a configuration file:

 

<Logging log.level.change.efk="1" />

 

 

Example EFK:

 

<Example feature.enhancedFeatureKeys.enabled="1"
softkey.1.action="123$Tinvite$" softkey.1.enable="1"
softkey.1.label="Dan" softkey.1.use.idle="1"
softkey.1.use.active="1" />

 

 

Pressing the key will dial 123 and show the following action in the logs / syslog

 

image

 

1120133408|efk  |1|03|Macro [123$Tinvite$] is valid.
1120133408|efk  |1|03|Action [123$Tinvite$] looks good.
1120133408|efk  |1|03|No more input...
1120133408|efk  |1|03|Efk exec engine: adding token [123]
1120133408|efk  |1|03|Efk exec engine: adding token [Tinvite]
1120133408|efk  |1|03|User buffer contains [123].
1120133408|efk  |1|03|Executing [invite], sending [123].
1120133408|efk  |1|03|EFK Exec engine said we are done and will stop.

 

------------------------------------------------
Notice: I am an HP Poly employee but all replies within the community are done as a volunteer outside of my day role. This community forum is not an official HP Poly support resource, thus responses from HP Poly employees, partners, and customers alike are best-effort in attempts to share learned knowledge.
If you need immediate and/or official assistance for former Poly\Plantronics\Polycom please open a service ticket through your support channels
For HP products please check HP Support.

Please also ensure you always check the General VoIP , Video Endpoint , UC Platform (Microsoft) , PSTN
HP Recommended

Enhanced Feature Keys Enhancements:

 

  • Polycom UC Software 5.7.0 allows you to assign an Enhanced Feature Key as a line key using feature.EFKLineKey.enabled parameter. 

    After you enable this feature, all the EFK macros that are configured using efk.eklist parameter having efk.efklist.x.status=1, display as a line key. 

    Before you enable this feature using feature.EFKLineKey.enabled, make sure the value of the parameter feature.enhancedFeatureKeys.enabled is set to 1.

    image


    The Icon for this is the Pin in the red highlighted position.

 

 

<test 	feature.EFKLineKey.enabled="1" efk.efklist.1.action.string="ReplaceWithNumber" 
		efk.efklist.1.mname="ReplaceWithName" feature.enhancedFeatureKeys.enabled="1" 
		efk.efklist.1.status="1" />

 

 

  

The above would add a phone number with a name

 

 

Introducing the Line Key Reassignment >here< for example with a basic configuration would "break" the above basic cfg:

 

<web 		efk.efklist.1.action.string="ReplaceWithNumber" 
		efk.efklist.1.mname="ReplaceWithName" 
		feature.enhancedFeatureKeys.enabled="1" 
		efk.efklist.1.status="1"
		lineKey.reassignment.enabled="1"
		lineKey.1.category="Line"
		lineKey.1.index="1"/>

 

image

 

Ensuring the actual EFK function key is defined:

 

<web feature.EFKLineKey.enabled="1" 
		efk.efklist.1.action.string="ReplaceWithNumber" 
		efk.efklist.1.mname="ReplaceWithName" 
		feature.enhancedFeatureKeys.enabled="1" 
		efk.efklist.1.status="1"
		lineKey.reassignment.enabled="1" 
		lineKey.1.category="Line"
		lineKey.1.index="1"
		lineKey.5.category="EFK"/>

 

image

 

Introducing yet another feature to define the number of line keys allowed on the phone:

 

<web feature.EFKLineKey.enabled="1" 
		efk.efklist.1.action.string="ReplaceWithNumber" 
		efk.efklist.1.mname="ReplaceWithName" 
		feature.enhancedFeatureKeys.enabled="1" 
		efk.efklist.1.status="1"
		lineKey.reassignment.enabled="1" 
		lineKey.1.category="Line"
		lineKey.1.index="1"
		lineKey.5.category="EFK"
		up.numOfDisplayColumns="2"/>

 

image

 

The above example uses a number to be dialled. Changing the efk.efklist.X.action.string into an actual EFK like efk.efklist.1.action.string="$FLdapCorpDir$" would add the corporate Directory

image

 

or changing the EFK into an action string

 

<web		feature.EFKLineKey.enabled="1" 
		efk.efklist.1.action.string="501$Tinvite$$Cwaitconnect$,6021561#$Tdtmf$" 
		efk.efklist.1.mname="Act.Key" 
		feature.enhancedFeatureKeys.enabled="1" 
		efk.efklist.1.status="1"
		lineKey.reassignment.enabled="1" 
		lineKey.1.category="Line"
		lineKey.1.index="1"
		lineKey.5.category="EFK"
		up.numOfDisplayColumns="2" />

 

 

The above would dial 501 and wait until connected and it would then wait for 2 seconds using the, (comma) and then dial 6021561# via DTMF

------------------------------------------------
Notice: I am an HP Poly employee but all replies within the community are done as a volunteer outside of my day role. This community forum is not an official HP Poly support resource, thus responses from HP Poly employees, partners, and customers alike are best-effort in attempts to share learned knowledge.
If you need immediate and/or official assistance for former Poly\Plantronics\Polycom please open a service ticket through your support channels
For HP products please check HP Support.

Please also ensure you always check the General VoIP , Video Endpoint , UC Platform (Microsoft) , PSTN
HP Recommended

Macro Actions explanation:

 

Action String

Description

$L<label>$

This is the label for the entire operation. The value can be any string including the null string (in this case, no label displays). This label is used if no other operation label collection method worked (up to the point where this field is introduced). Make this the first entry in the action string to be sure this label is used; otherwise another label may be used and this one ignored.

digits

The digits to be sent. The appearance of this parameter depends on the action string.

$C<command>$

This is the command. It can appear anywhere in the action string. Supported commands (or shortcuts) include:

hangup ( hu ) hold ( h ) waitconnect ( wc )

pause <number of seconds> ( p <num sec> ) where the maximum value is 10

$T<type>$

The embedded action type. Multiple actions can be defined. Supported action types include:

invite dtmf refer intercom

Polycom recommends that you always define this field. If it is not defined, the supplied digits are dialed using INVITE (if no active call) or DTMF (if an active call). The use of refer method is call server dependent and may require the addition of star codes.

$M<macro>$

The embedded macro. The <macro> string must begin with a letter. If the macro name is not defined, the execution of the action string fails.

$P<prompt num>N<num digits>$

The user input prompt string.

$S<speed dial index>$

The speed dial index. Only digits are valid. The action is found in the contact field of the local directory entry pointed to by the index

$F<internal function>$

An internal key function.

URL

A URL. Only one per action string is supported.

------------------------------------------------
Notice: I am an HP Poly employee but all replies within the community are done as a volunteer outside of my day role. This community forum is not an official HP Poly support resource, thus responses from HP Poly employees, partners, and customers alike are best-effort in attempts to share learned knowledge.
If you need immediate and/or official assistance for former Poly\Plantronics\Polycom please open a service ticket through your support channels
For HP products please check HP Support.

Please also ensure you always check the General VoIP , Video Endpoint , UC Platform (Microsoft) , PSTN
HP Recommended

Macro for Enhanced Feature Keys Functional Improvements

 

      ▪     Internal Key Functions

 

UCS 6.1.0 adds a new list of internal key functions (usually $F ) for the new macro $A<internal function>$.

 

New Macro for Internal Key Function

 

Action String

Description

$A<internal function>$

The internal key function. If you need to add value to the macro, use a parameter value before the macro definition.

For example, 1$AVoiceMail$ - Voice mail is an internal function, which uses “1” as an input for the parameter.

 

Function Description Notes
VoiceMail Displays the voicemail messages for a registration line. Must have a prefixed line index.
PageGroup Initiates paging. Example: 5$APageGroup$ - It initiates the paging from default page group5.
Admin must enable the input page channel.

 

Additional Internal Key Functions

 

The following table lists the new internal key functions for enhanced feature keys.

 

Internal Key Functions

 

Function Description
Diagnostic Displays the diagnostic screen.
MediaStat Displays the media statistics screen.
Preferences Displays the preference menu screen.
LdapCorpDir Displays the corporate directory menu screen.
GAB Displays the Ribbon
communications Global Address Book.
PAB Displays the Ribbon
communications Personal Address Book.
CallList Displays the call logs.
Favorites Displays the favorites list.
UCOneDir Displays the UCOne directory.
Calendar Displays the calendar screen.

 

image

 

  • Press Preferences EFK takes user directly to Preferences
  • Press Messages EFK takes user to the Messages screen
  • Press Paging EFK to initiate paging to a page group (configured as part of the EFK macro).

image

 

  • Press CallList EFK to show the Call list.
  • Press LdapCorpDir EFK to go to the Corporate directory.
  • Press Calendar EFK to go to the calendar.

Example:

 

Below configuration will show a preferences EFK on the phone and pressing it will take the user to Preferences Menu.

 

<test feature.EFKLineKey.enabled=“1”
 feature.enhancedFeatureKeys.enabled=“1”
 efk.efklist.1.mname=“Preferences”
 efk.efklist.1.status=“1”
 efk.efklist.1.action.string=“$FPreferences$” />

 

Note: For voice mail and paging, the action string, should be defined with the following syntax :

 

<n>$A< Internal function>$


In the macro definition, <n> is a numeric string that can represent a registration line index for voice mail or page group index for paging.


Example:

1$AVoiceMail$ 

or

5$APageGroup$

 

 

------------------------------------------------
Notice: I am an HP Poly employee but all replies within the community are done as a volunteer outside of my day role. This community forum is not an official HP Poly support resource, thus responses from HP Poly employees, partners, and customers alike are best-effort in attempts to share learned knowledge.
If you need immediate and/or official assistance for former Poly\Plantronics\Polycom please open a service ticket through your support channels
For HP products please check HP Support.

Please also ensure you always check the General VoIP , Video Endpoint , UC Platform (Microsoft) , PSTN
HP Recommended

UC Software 6.0.0 added the ability to create an EFK which a Prompt which gives the user access to the Phone Screen in order to select the Lines or BLF's or Speed Dials.

 

Lines_EFK_01.png

The above is a directed call pick up EFK which when pressed offers the Prompt and then once selecting the Lines softkey, dials the chosen contact.

 

Another example could be to Dial a Voice Mail of a specific user

 

imageimageimageimage

 

In the above example, the user pressed the ToVM Softkey. This presents him with prompt voice mail. Selecting the Lines key will allow him access to his idle display. Selecting the extension 3048 will then dial 8500 and DTMF 3048

 

Example config:

 

<test feature.enhancedFeatureKeys.enabled="1"
	softkey.1.action="8500$Tinvite$$Cwaitconnect$$P1N4$"
	softkey.1.enable="1"
	softkey.1.use.idle="1"
	softkey.1.label="ToVm"
	efk.softkey.alignleft="1"
	efk.efkprompt.1.label="Voice Mail"
	efk.efkprompt.1.status="1"
	efk.efkprompt.1.type="numeric"/>

Example Logging:

 

1107154655|efk  |1|00|Macro [8500$Tinvite$$Cwaitconnect$$P1N4$] is valid.
1107154655|efk  |1|00|Action [8500$Tinvite$$Cwaitconnect$$P1N4$] looks good.
1107154655|efk  |1|00|Creating new menu... 
1107154655|efk  |1|00|New menu has been created... 
1107154657|efk  |1|00|Line Select menu has been created... 
1107154658|efk  |1|00|Efk exec engine: adding token [8500]
1107154658|efk  |1|00|Efk exec engine: adding token [Tinvite]
1107154658|efk  |1|00|Efk exec engine: adding token [Cwaitconnect]
1107154658|efk  |1|00|Efk exec engine: adding token [3048]
1107154658|efk  |1|00|User buffer contains [8500].
1107154658|efk  |1|00|Executing [invite], sending [8500].
1107154658|efk  |1|00|Executing [waitconnect], breaking out.

...

1107154658|sip  |0|00|    INVITE sip:8500@10.252.122.122;user=phone SIP/2.0

...

1107154658|efk  |1|00|Got call state change: [4]
1107154658|efk  |1|00|Got call state change: [4]
1107154658|efk  |1|00|Got call state change: [6]
1107154658|efk  |1|00|EFK is in connected state.
1107154658|efk  |1|00|EFK engine state is [3].
1107154658|efk  |1|00|Going to check calls.
1107154658|efk  |1|00|Calls are not null.
1107154658|efk  |1|00|Continue to run EFK engine in connected state.
1107154658|efk  |1|00|User buffer contains [3048].
1107154658|efk  |1|00|EFK buffer not empty but no action assigned.
1107154658|efk  |1|00|EFK Exec engine will invoke default dialing behavior.
1107154658|efk  |1|00|Trying to dial [3048] using dtmf.
1107154658|efk  |1|00|DTMF dial is sending digits: [3048]
1107154658|efk  |1|00|EFK Exec engine said we are done and will stop.
------------------------------------------------
Notice: I am an HP Poly employee but all replies within the community are done as a volunteer outside of my day role. This community forum is not an official HP Poly support resource, thus responses from HP Poly employees, partners, and customers alike are best-effort in attempts to share learned knowledge.
If you need immediate and/or official assistance for former Poly\Plantronics\Polycom please open a service ticket through your support channels
For HP products please check HP Support.

Please also ensure you always check the General VoIP , Video Endpoint , UC Platform (Microsoft) , PSTN
† The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the <a href="https://www8.hp.com/us/en/terms-of-use.html" class="udrlinesmall">Terms of Use</a> and <a href="/t5/custom/page/page-id/hp.rulespage" class="udrlinesmall"> Rules of Participation</a>.