> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# User-user messages

> How to use OneSignal for user-to-user messages.

<Warning>
  Push Notifications are best used as a fallback when both users are not active on your app.

  Tools dedicated to Live Chat functionality include:

  * [XMPP](https://xmpp.org/)
  * [Stream](https://getstream.io/chat/)
</Warning>

If your app uses private or direct messaging and you want to display a push notification alerting a user that a message was sent to them you may want to consider using one of the above technologies. OneSignal is best used for marketing or [Transactional Messages](./transactional-messages) from your company to user.

That being said, it is possible to setup User-to-User Push Notifications through OneSignal following these steps.

### 1. Set the External ID

You should use OneSignal's [Aliases & External ID](./users) to match your records of users with users in OneSignal.

### 2. Send the Message From our API

After users are matched between your database and OneSignal, you can send a message with our API [Create notification](/reference/create-message) method using the `include_aliases: { "external_id": [...] }` or other alias.

***
