# Set up an SMS Channel for VoiceMeUp

A VoiceMeUp SMS (Short Message Service) channel lets your agents exchange text messages and MMS (Multimedia Messaging Service, messages with images or other files) with customers without leaving the Cloud Voice App. This page covers the end-to-end setup: generating a webhook on your phone system, wiring up a number and account in VoiceMeUp, and routing inbound messages to the right agent or queue.

## Requirements

Before you begin, confirm that your Cloud Voice PBX (Private Branch Exchange, the phone system that manages your calls and messages) meets the following conditions.

- **Firmware**: Version 84.23.0.24 or later.
- **Domain name**: The PBX domain name must not include underscore characters. Because of a limitation on the provider side, an underscore causes the messaging channel to fail authentication or to stop receiving messages.
- **Domain certificate**: A valid domain certificate must be installed.

:::note
If your Cloud Voice PBX uses a custom root domain rather than a standard platform-provided domain, install a valid domain certificate before you continue. Without one, the messaging channel can fail authentication or fail to receive messages.
:::

## Supported message types and limits

The channel carries both SMS text messages and MMS multimedia messages. VoiceMeUp determines which MMS file types you can send.

:::caution
For outbound MMS, VoiceMeUp downloads each attachment from a link generated by the PBX. If you have configured an Allowed Country/Region IP Access Protection rule, be sure to permit IP access from the country where VoiceMeUp operates, otherwise the file transfer will fail.
:::

Channel limits:

- **Maximum file size**: 100 MB
- **File retention period**: 72 hours

## How the setup works

The process has three stages:

1. Generate a webhook URL on your Cloud Voice PBX.
2. Set up the messaging feature in VoiceMeUp.
3. Create the SMS channel in Cloud Voice and connect it with your VoiceMeUp account and number.

## Step 1. Obtain a webhook URL on the PBX

You will need this webhook URL when you configure a number for SMS in VoiceMeUp.

1. Log in to the PBX web portal and go to **Messaging > Message Channel**.
2. Click **Add** and choose **SMS**.
3. In the **ITSP** (Internet Telephony Service Provider) drop-down list, select **VoiceMeUp**, then copy the **Webhook URL**.

:::caution
The webhook URL is regenerated as soon as you leave this page. Always use the most recently generated URL when you set up the number in the provider's portal.
:::

![Cloud Voice, the SMS channel dialog with VoiceMeUp selected and the generated webhook URL highlighted](/images/pbx/webhook-for-voicemeup-pce.png)

## Step 2. Configure the messaging feature on VoiceMeUp

Log in to the [VoiceMeUp customer portal](https://clients.voicemeup.com/v3/login) and complete the following.

1. Purchase a DID (Direct Inward Dialing) number that includes the SMS feature. A DID is a phone number that routes calls and messages straight to a specific destination on your phone system.

   :::caution
   Under US legislation (A2P 10DLC), 10-digit long code (10DLC) numbers used for application-to-person messaging must be registered. Messages sent to US numbers from an unregistered 10DLC number will be blocked. If you communicate with US-based customers, contact VoiceMeUp to complete 10DLC registration for your DID and avoid delivery disruptions.
   :::

   ![Purchasing a DID number with the SMS feature in the VoiceMeUp portal](/images/pbx/purchase-voicemeup-did.png)

2. Configure the messaging webhook for the DID number.

   a. Open the edit page for the DID you want to use.

   
   ![Cloud Voice, the VoiceMeUp DID edit page](/images/pbx/edit-did-voicemeup.png)

   b. Enable SMS/MMS for the DID, and set the Callback URL to the PBX webhook URL you copied in Step 1.

   
   ![Cloud Voice, a VoiceMeUp DID with SMS/MMS enabled and the PBX webhook set as the callback URL](/images/pbx/webhook-for-voicemeup-did-pce.png)

3. Create a user account for the integration with the PBX.

   a. Add a new user account.

   
   ![Cloud Voice, creating a new user account in the VoiceMeUp portal](/images/pbx/create-account-voicemeup.png)

   b. Fill in the account information and enable API (Application Programming Interface) access for the account.

   :::note
   Make a note of the username you set. You will enter it on the PBX later.
   :::

   
   ![Cloud Voice, configuring account details and enabling API access in VoiceMeUp](/images/pbx/configure-account-for-voicemeup.png)

   After you save, the account is created and you are returned to the user account list.

   c. Open the account's details page and copy its **Auth Token** for the integration.

   ![The VoiceMeUp account details page showing the Auth Token](/images/pbx/voicemeup-auth-token.png)

## Step 3. Create and configure the SMS channel on the PBX

Create the channel and connect it with the account credentials and number you obtained from VoiceMeUp.

1. Log in to the PBX web portal and go to **Messaging > Message Channel**.
2. Click **Add** and choose **SMS**.
3. On the **Authentication** tab, enter your VoiceMeUp details:

   - **Name**: A label that helps you recognize the channel.
   - **ITSP**: Select **VoiceMeUp**.
   - **Username**: Paste the username of the VoiceMeUp account you created in Step 2.
   - **Auth Token**: Paste the auth token you copied from that account.

   
   ![Cloud Voice, the Authentication tab of a VoiceMeUp SMS channel](/images/pbx/voicemeup-auth-setting-pce.png)

4. On the **Messaging Settings** tab, configure the channel.

   a. In **Message Sending Rate**, set how many messages the PBX may send per second.

   :::note
   - If more messages are queued than the rate allows, the PBX holds them in a queue and sends them at the configured rate.
   - If your rate exceeds the limit set by VoiceMeUp, messages may fail to send. Confirm your account's rate limit with VoiceMeUp and raise it if needed.
   :::

   b. Configure the session settings as needed:

   - **Close Session Automatically**: Select this to have the system close sessions that have been inactive for a set period, then enter the number of days in **Session Timeout (Days)**.
   - **Allow the Creation of Duplicate Active Sessions**: Select this to permit a new session even when an active session already exists between the same sender and receiver. When enabled, if an agent starts a session in the Cloud Voice App and a matching active session already exists on the channel, the app prompts them to confirm. If they continue, the original session leaves the previous handler's list and is taken over by the new agent, along with the full chat history.

   ![The session settings for an SMS channel, including automatic session closure](/images/pbx/auto-closure-of-conversations.png)

   c. In the **Number** section, click **Add** to create a message routing rule.

   ![Adding a message routing rule that maps a number to an inbound destination](/images/pbx/sms-did-number-rule.png)

   - **Number**: Enter your purchased number or specify an Alphanumeric Sender ID.

     :::note
     Enter the phone number in E.164 format (`[+][country code][phone number]`), for example `+14102161183`.
     :::

   - **Destination for Inbound Messaging**: Choose where inbound messages from this number go.

     - **Extension**: Pick an extension from the **Extension** drop-down list. Only that extension user receives inbound messages from the number.
     - **Message Queue**: Pick a queue from the **Message Queue** drop-down list. Every agent in the queue is notified of new inbound sessions, but once an agent picks up a session, only that agent receives and can reply to the follow-up messages in it.
     - **Third-Party Message Analytics Platform (Transmitted via API)**: Forward inbound messages to a third-party analytics platform over the API for advanced processing. This requires your PBX to already be integrated with the analytics platform through the Cloud Voice API; once selected, the PBX transmits inbound messages to it automatically. You can monitor the API event (30031) New Message Notification to be alerted when a new message arrives, and the PBX also provides a full Message API suite for advanced message interactions with the integrated platform.

   - **Extensions allowed to create messaging sessions**: Select which extensions may start a new messaging session with customers.

   d. Click **Save**.

5. Click **Save**.

## Result

- The channel is created and appears in the Message Channel list with a green **Status** indicator, confirming the connection is active.

  ![The Message Channel list showing an active VoiceMeUp SMS channel](/images/pbx/voicemeup-sms-channel-ok.png)

- The PBX tracks the number of messages sent and received on the channel. The **Total** column shows all outbound messages, including both successful and failed sends.

  :::note
  - Sent-message counts only include messages sent from agents' Cloud Voice Apps. To calculate actual cost, ask VoiceMeUp for the precise number of messages transmitted, since long texts (over 160 characters) are split into segments before delivery, which increases the sent count.
  - Use the time filter to narrow the statistics to a specific period.
  :::

  ![The message report with sent and received counts per channel](/images/pbx/message-report.png)

## What to do next

Send a text message to the configured number and confirm that the assigned agent receives it in the Cloud Voice App.
