﻿
# Customizing the account title

CloudSoftphone can show a user's name, line username, or a combination such as
**Jane Smith – 204** in the home-screen account label. The label can use the
provisioned account title or a template with placeholders.

## External provisioning: use the account title

For clients using [external provisioning](../frameworks/provisioning/external_provisioning.md), return the Account XML
[`title`](../frameworks/account/account.md#title) with the label you want:

```xml
<account>
    <title>Jane Smith – 204</title>
</account>
```

This works with the default account-label behavior, without any preference-key
configuration. The title must be non-empty.

If the app is configured to show the Cloud ID instead, contact Acrobits support
to change the label source. Updating `title` alone will not override that setting.

## Provisioning Connectors and custom patterns

If you use a Provisioning Connector for NetSapiens, Metaswitch, or BroadSoft,
or want a custom pattern built from existing values, contact **Acrobits support**.
Support will set the `accountBubbleTextSource` preference key to `TranslationKey`
and set the `account_bubble_text` translation to your desired template.

For example:

```text
*account[userDisplayName]* – *account[username]*
```

Each `*account[fieldName]*` placeholder reads that field from the selected
account. Plain text, including spaces and the dash, stays unchanged. If
`userDisplayName` is `Jane Smith` and `username` is `204`, the result is
**Jane Smith – 204**. The fields must already be present in the provisioned
Account XML.

This changes the home-screen label. It does not change the account's `title`
or SIP display name.

### Choose fields for your Provisioning Connector

Use these placeholders to display the user's name:

| Provisioning Connector | Recommended name placeholder | Displayed value |
| --- | --- | --- |
| Metaswitch | `*account[userDisplayName]*` | Subscriber name, or the provisioned account title if no subscriber name is available. |
| NetSapiens | `*account[userDisplayName]*` | User's display name. |
| BroadSoft | `*account[acrobitsDisplayName]*` | User's first and last name. |

To display the **line username**, use `*account[username]*`. This is the SIP
line/device username and may differ from the user's extension. For example,
NetSapiens may supply `115c` rather than `115`. For a **Name – Extension** label,
first check which provisioned field contains the extension, then use that field
in the template.

### Global placeholders and localization

Patterns can also use [global placeholders](../frameworks/placeholders.md#account-and-global-placeholders),
such as `*appName*` or `*globalUsername*` (the initial sign-in username).
Use `*account[username]*` when you need the line username.
See the [global parameter reference](../frameworks/reporting/intro.md#global-parameters)
for other app and device values.

The `account_bubble_text` translation can have a different pattern for each app
language. Give support the wording you want for each language, keeping the
placeholder names unchanged. The app translates the surrounding text; names and
other provisioned values remain as supplied.

After changing provisioning or label configuration, check both a newly
provisioned account and an existing account after reprovisioning.

