# Allow Agents to Manage Their Status via IP Phones

If your agents work from IP (Internet Protocol) desk phones, you can turn a pair of programmable keys into shortcuts for changing their queue status. Once configured, an agent presses one key to join or leave a queue and another to pause or resume calls, while the key's indicator light shows their current state. This page walks you through assigning those keys and pushing the settings to the phones.

The indicator used here is a BLF (Busy Lamp Field) key: a programmable key whose LED reflects the live state of whatever it is set to watch. In this case it watches the agent's own status in a queue.

## Before you start

The IP phones must already be provisioned through Cloud Voice auto provisioning and mapped to the agents' extensions. If you haven't set that up yet, provision and assign the phones first, then return here.

:::note
For step-by-step provisioning instructions for each supported phone brand, see the [IP Phone Configuration Guide](/pbx/ip-phone-configuration-guide/ip-phone-configuration-guide-overview/).
:::

## Step 1. Assign function keys on the agents' extensions

1. Open the configuration for the agents' function keys:
   1. Sign in to the Cloud Voice management portal and go to **Extension and Trunk > Extension**.
   2. Select the extensions that belong to your agents and click **Edit**.
   3. Open the **Function Keys** tab.
2. Define the keys for those extensions:
   1. Select the **Bulk Edit** checkbox.

      :::note
      Bulk Edit applies the same key layout to every extension you selected, so you configure the keys once instead of repeating the setup for each agent.
      :::
   2. Pick a key and fill in the following fields:

      ![Function key configured with an Agent Login/Logout type pointing at a specific queue](/images/pbx/function-keys-agent-login-pause.png)

      - **Type**: choose one of the two status controls:
        - **Agent Login/Logout** lets the agent join or leave the queue.
        - **Agent Pause/Unpause** lets the agent pause or resume incoming queue calls.
      - **Value**: select the queue the agent belongs to.
      - **Label**: optional text shown on the phone screen for that key.

      :::tip
      Add a clear **Label** such as the queue name or "Pause". The label is what the agent reads on the phone screen, so it prevents mixing up keys when an extension has several of them.
      :::
3. Click **Save**.

## Step 2. Push the settings to the agents' phones

Saving the extension changes does not update the physical phones on its own. You reprovision the phones so they download the new function-key layout.

1. Go to **Auto Provisioning > Phones**.
2. Select the phones assigned to your agents and click **Reprovision**.

   ![Auto provisioning list with several agent phones selected for reprovisioning](/images/pbx/bulk-reproision.png)

   :::caution
   Reprovisioning pushes new configuration to the phone and can make it reboot to apply the change. A reboot drops any call in progress and briefly takes the phone offline, so do this when the selected agents are not on active calls.
   :::
3. Confirm by clicking **OK** in the dialog that appears.

## Result

Agents can now watch and change their status for the assigned queue directly from the BLF keys and their indicator lights.

:::note
Indicator behavior can differ between phone models, so the exact color or blink pattern may not match the table below on every device.
:::

| BLF key | LED status | What it means |
| --- | --- | --- |
| Log in/Log out | Solid green | The agent is logged in to the queue. Press the **Log in/Log out** key to log out. |
| Log in/Log out | Solid red | The agent is logged out of the queue. Press the **Log in/Log out** key to log in. |
| Log in/Log out | Off | The key isn't tracking the agent's status. Recheck the key settings and confirm the agent's extension is registered. |
| Pause/Unpause | Solid green | The agent is available for queue calls. Press the **Pause/Unpause** key to pause them. |
| Pause/Unpause | Flashing red | The agent has paused queue calls. Press the **Pause/Unpause** key to resume them. |
| Pause/Unpause | Off | The key isn't tracking the agent's status. Recheck the key settings and confirm the agent's extension is registered. |
