> For the complete documentation index, see [llms.txt](https://documentation.hak5.org/wifi-pineapple-pager/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.hak5.org/wifi-pineapple-pager/mac_picker.md).

# MAC\_PICKER

`MAC_PICKER` Ask the user to interactively enter a MAC address via the Pager UI

### When to use it <a href="#when-to-use-it" id="when-to-use-it"></a>

Use `MAC_PICKER` any time a payload needs a MAC address, such as for a client or BSSID configuration or a target device."

#### Syntax <a href="#syntax" id="syntax"></a>

```none
MAC_PICKER [text prompt] [default mac]
```

**text prompt&#x20;*****required***

Text prompt / dialog title shown to the user. Text prompts should be kept short enough to fit on the device display.

**default mac&#x20;*****required***

Default MAC address when the picker launches. Must be an empty string ("") for a blank prompt.

{% hint style="warning" %}
A default MAC should typically be provided. To prompt the user with no default, usr a blank quoted string (`""`) for the MAC parameter.
{% endhint %}

<figure><img src="/files/CdBT64smxsAJ6jmOIREi" alt="The MAC picker dialog"><figcaption><p>The MAC picker dialog</p></figcaption></figure>

<figure><img src="/files/7ybCHeyWRkOujvBQjXjV" alt="The MAC picker editor"><figcaption><p>The MAC picker editor</p></figcaption></figure>

### Results <a href="#results" id="results"></a>

`MAC_PICKER` will wait until the user has made a selection, pausing the payload.

`MAC_PICKER` exits with a return code of `0` if the user continues, and non-zero if the user cancels

`MAC_PICKER` returns the MAC address as the output

### Examples <a href="#examples" id="examples"></a>

```bash
__userip=$(MAC_PICKER "Target MAC" "00:DE:AD:BE:EF:00") || exit 0
```

```bash
__userip=$(MAC_PICKER "No default MAC" "") || exit 0
```

{% hint style="info" %}
Remember to enclose the prompt text in quotes if it contains spaces!
{% endhint %}
