# Configure Function Keys

Function keys turn a single click into a shortcut. Depending on the type you assign, a key can show you the live status of an extension, mailbox, queue, or parking slot, or fire off a common action such as a speed dial or a presence change. This page explains how to set up function keys from the Cloud Voice App Desktop Client.

## Where function keys apply

Once you save your function keys, they follow your extension across every client you sign in to. The number you can assign depends on the endpoint.

| Endpoint | Maximum function keys |
| --- | --- |
| Cloud Voice App Desktop Client | 120 |
| Cloud Voice App Web Client | 120 |
| Cloud Voice App Mobile Client | 120 |
| Cloud Voice for Google | 120 |
| IP phones set up with Auto Provisioning | Limited by the number of line keys the phone supports |

:::note
Auto Provisioning is the process where the phone system automatically pushes settings to a registered IP phone, so you do not have to configure the phone by hand. Your saved function keys are part of what it pushes.
:::

## Add or edit function keys

1. Sign in to the Cloud Voice App Desktop Client and open **Preferences > Function Keys**. Any keys your administrator has already assigned to your extension appear in the list.
2. Add or adjust keys to suit how you work:
   - **Type**: Pick a key type. See [Function key types](#function-key-types) for what each one does.
   - **Value**: Enter the value that matches the key type, such as the extension, number, or queue the key acts on.
   - **Label**: Optional. Give the key a name so it is easy to recognize.

   ![Function key settings with the type, value, and label fields](/images/pbx/desktop-add-function-key.png)

   :::tip
   Always fill in the **Label**. On the mini panel and on an IP phone screen, the label is what names each key, so a clear label (for example the person's name on a BLF key) saves you from guessing what each key does.
   :::
3. Click **Save**.

## What happens after you save

Your keys apply everywhere at once:

- They appear across all Cloud Voice App clients and Cloud Voice for Google. Click the function-key icon ![Function key panel icon](/images/pbx/function-key.png) in the top toolbar to open a mini panel where you can watch the objects you monitor and run their actions.

  ![Function key mini panel open in the Cloud Voice App](/images/pbx/function-key-on-linkus-web.jpg)

- If your extension is registered on an IP phone through Auto Provisioning, the phone picks up the same changes automatically.

  :::caution
  An IP phone can only program as many function keys as it has physical line keys. If you assign more keys than the phone supports, the keys beyond that limit are silently dropped and never take effect. Keep your most important keys near the top of the list so they land on the phone.
  :::

  ![Function keys mapped onto the line keys of an IP phone](/images/pbx/function-key-on-ip-phone.jpg)

## Function key types

Use the table below to choose a key type and to read the status each key can display. Icons marked as IP-phone only do not appear on the Cloud Voice App clients.

| Key type | What it does | Status indicators |
| --- | --- | --- |
| **N/A** | No function assigned. | ![Unconfigured key](/images/pbx/key-light.png) The key does nothing until you assign a type. |
| **Line** | Adds a line key. Available on IP phones only. | ![Line key](/images/pbx/line-light.png) IP phones only. |
| **BLF** (Busy Lamp Field) | Watch an extension or extension group and act on its calls. A BLF key works like a status lamp: it shows at a glance whether the object you monitor is idle, ringing, or busy. | **Extension:** ![Unregistered](/images/pbx/extension-unregistered-light.png) Unregistered. <br> ![Available](/images/pbx/presence-available-light.png) Online and available, click to call the extension. <br> ![Away](/images/pbx/presence-away-light.png) Away from desk. <br> ![Do Not Disturb](/images/pbx/blf-presence-dnd.png) Do Not Disturb, not accepting calls. <br> ![Lunch break](/images/pbx/presence-lunch-break-light.png) On lunch break. <br> ![Business trip](/images/pbx/presence-buessiness-trip-light.png) On a business trip. <br> ![Off work](/images/pbx/presence-off-work-light.png) Off work. <br> ![Ringing](/images/pbx/ringing-light.png) Receiving a call, click to pick it up (on the Mobile Client, tap the key, then tap the incoming call). <br> ![On a call](/images/pbx/talking-light.png) On a call. <br> ![On hold](/images/pbx/hold-light.png) Call on hold. <br> **Extension group:** ![Group idle](/images/pbx/icon-group-idle.png) No ringing calls (calls already in progress do not change this). <br> ![One ringing call](/images/pbx/icon-group-ringing.png) One ringing call to a group member. <br> ![Two ringing calls](/images/pbx/icon-group-ringing-2.png) Two ringing calls. <br> ![Three or more ringing calls](/images/pbx/icon-group-ringing-3+.png) Three or more ringing calls, hover for details, then click a call to pick it up. <br> ![Group not found](/images/pbx/icon-group-invalid.png) The extension group no longer exists. <br> _This key has no effect during an audio conference call._ |
| **Speed Dial** | Call a frequently used number or extension in one click. | ![Speed dial](/images/pbx/dialpad.png) Click to dial the saved number or extension. |
| **Set Presence** | Switch your own extension to a chosen presence state. | ![Available](/images/pbx/presence-available-light.png) Set presence to **Available**. <br> ![Away](/images/pbx/presence-away-light.png) Set presence to **Away**. <br> ![Business trip](/images/pbx/presence-buessiness-trip-light.png) Set presence to **Business Trip**. <br> ![Do Not Disturb](/images/pbx/blf-presence-dnd.png) Set presence to **Do Not Disturb**. <br> ![Lunch break](/images/pbx/presence-lunch-break-light.png) Set presence to **Lunch Break**. <br> ![Off work](/images/pbx/presence-off-work-light.png) Set presence to **Off Work**. |
| **Check Voicemail** | Monitor a mailbox and listen to its messages. | ![Mailbox deleted](/images/pbx/invalid-voicemail.png) The monitored extension has been deleted. <br> ![All read](/images/pbx/read-voicemail-light.png) All messages have been read. <br> ![Unread messages](/images/pbx/unread-voicemail-light.png) Unread messages waiting, click the key, then enter the voicemail PIN when prompted. |
| **Check Group Voicemail** | Monitor a shared-mode group mailbox and listen to its messages. | ![Group mailbox deleted](/images/pbx/invalid-voicemail-group.png) The group voicemail has been deleted. <br> ![All read](/images/pbx/read-voicemail-group-light.png) All messages have been read. <br> ![Unread messages](/images/pbx/unread-voicemail-group-light.png) Unread messages waiting, click the key, then enter the group voicemail PIN when prompted. |
| **Park & Retrieve** | Monitor a parking slot, park a call to it, or retrieve a parked call. | ![Slot invalid](/images/pbx/moored-invalid-light.png) The parking number is invalid. <br> ![Slot free](/images/pbx/moored-available-light.png) The slot is free, click to park your current call there. <br> ![Slot occupied](/images/pbx/moored-occupied-light.png) A call is parked, click to retrieve it. <br> _This key has no effect during an audio conference call._ |
| **Intercom** | Monitor an extension and place an intercom call to make an announcement. | ![Unregistered](/images/pbx/intercom-unregistered-light.png) The extension is unregistered. <br> ![Available](/images/pbx/intercom-idle-light.png) The extension is available. <br> ![Ringing](/images/pbx/intercom-ringing-light.png) The extension is receiving a call. <br> ![On a call](/images/pbx/intercom-talking-light.png) The extension is on a call. |
| **DTMF** (Dual-Tone Multi-Frequency) | Send a preset DTMF string during a call instead of typing it each time. DTMF tones are the sounds the keypad makes when you press digits, used to navigate phone menus or enter a PIN. | ![Send DTMF](/images/pbx/dtmf-light.png) During a call, click to send the DTMF signals. <br> _This key has no effect during an audio conference call._ |
| **Agent Login/Logout** | Monitor and toggle your login status in a queue. | ![Not a member](/images/pbx/agent-invaild.png) You are not a member of the queue. <br> ![Logged in](/images/pbx/agent-login-unpause.png) Logged in to the queue. <br> ![Logged out](/images/pbx/agent-logout.png) Logged out of the queue. |
| **Agent Pause/Unpause** | Monitor and toggle your service status in a queue. | ![Serving](/images/pbx/agent-login-unpause.png) Serving the queue. <br> ![Paused](/images/pbx/agent-pause.png) Paused in the queue. <br> ![Not a member](/images/pbx/agent-invaild.png) You are not a member of the queue. <br> ![Not logged in](/images/pbx/agent-logout.png) Not logged in to the queue. |
| **LDAP Directory** | Open the LDAP (Lightweight Directory Access Protocol) phonebook, a shared network directory, to look up contacts. Available on IP phones only. | ![LDAP directory](/images/pbx/ldap-light.png) IP phones only. |
| **Boss-Secretary Feature** | Monitor the call status of your boss or secretary. | **As a boss (watching your secretary):** ![Secretary free](/images/pbx/secretary-status-free.png) Not handling any calls for you. <br> ![Secretary busy](/images/pbx/secretary-status-busy.png) Answering calls for you. <br> ![Secretary holding](/images/pbx/secretary-status-hold.png) Holding a call, waiting for you to answer. <br> **As a secretary (watching your boss):** ![Boss no held call](/images/pbx/boss-status-unhold.png) No calls on hold for you to resume. <br> ![Boss holding](/images/pbx/boss-status-hold.png) Holding a call, waiting for you to resume. |
| **Call Forward** | Turn call forwarding on or off. Available on IP phones only. | ![Call forward](/images/pbx/call-forward.png) IP phones only. |
| **Action URL** | Send an HTTP GET request to a set URL to report an event. Available on IP phones only. | ![Action URL](/images/pbx/action-url.png) IP phones only. |
