# Send a channel message

> Learn how to send a message to a channel in the sample application.

To send a channel message, you must first join the channel. Channel names are URIs that are formatted by using the issuer string.

In this example scenario, join "sip:[confctl-g-xyzzy.test@mt1s.vivox.com](mailto:confctl-g-xyzzy.test@mt1s.vivox.com)", which is a g-type (general) channel that is controlled by issuer "xyzzy".

The user Alice joins a channel, as detailed in the following code:

```plaintext
[SDKSampleApp]: addsession -c sip:confctl-g-xyzzy.test@mt1s.vivox.com
* Adding channel sip:confctl-g-xyzzy.test@mt1s.vivox.com (muted=no) (audio=yes) (text=yes) to session group sg_sip:confctl-g-xyzzy.test@mt1s.vivox.com with handle sip:confctl-g-xyzzy.test@mt1s.vivox.com
* Issuing req_sessiongroup_add_session with cookie=4
* Request req_sessiongroup_add_session with cookie=4 completed.
* evt_sessiongroup_added: sg_sip:confctl-g-xyzzy.test@mt1s.vivox.com [.xyzzy.alice.]
* evt_session_added: sip:confctl-g-xyzzy.test@mt1s.vivox.com [sg_sip:confctl-g-xyzzy.test@mt1s.vivox.com]
* evt_text_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_text_connecting
* evt_media_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_media_connecting 'Success' (0)
* evt_text_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_text_connected
* evt_participant_added: sip:confctl-g-xyzzy.test@mt1s.vivox.com sip:.xyzzy.alice.@mt1s.vivox.com
* evt_media_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_media_connected 'Success' (0)
```

Alice then sends a channel message, as detailed in the following code:

```plaintext
[SDKSampleApp]: message -m "bob are you in channel?"
* Sending message 'bob are you in channel?' to session handle sip:confctl-g-xyzzy.test@mt1s.vivox.com
* Issuing req_session_send_message with cookie=5
* Request req_session_send_message with cookie=5 completed.
```

The other user Bob joins the same channel, as detailed in the following code:

```plaintext
[SDKSampleApp]: addsession -c sip:confctl-g-xyzzy.test@mt1s.vivox.com
* Adding channel sip:confctl-g-xyzzy.test@mt1s.vivox.com (muted=no) (audio=yes) (text=yes) to session groupsg_sip:confctl-g-xyzzy.test@mt1s.vivox.com with handle sip:confctl-g-xyzzy.test@mt1s.vivox.com
* Issuing req_sessiongroup_add_session with cookie=3
* Request req_sessiongroup_add_session with cookie=3 completed.
* evt_sessiongroup_added: sg_sip:confctl-g-xyzzy.test@mt1s.vivox.com [.xyzzy.bob.]
* evt_session_added: sip:confctl-g-xyzzy.test@mt1s.vivox.com [sg_sip:confctl-g-xyzzy.test@mt1s.vivox.com]
* evt_text_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_text_connecting
* evt_media_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_media_connecting 'Success' (0)
* evt_message: sip:confctl-g-xyzzy.test@mt1s.vivox.com sip:.xyzzy.alice.@mt1s.vivox.com bob are you in channel?
* evt_participant_added: sip:confctl-g-xyzzy.test@mt1s.vivox.com sip:.xyzzy.alice.@mt1s.vivox.com
* evt_text_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_text_connected
* evt_participant_added: sip:confctl-g-xyzzy.test@mt1s.vivox.com sip:.xyzzy.bob.@mt1s.vivox.com
* evt_media_stream_updated: sip:confctl-g-xyzzy.test@mt1s.vivox.com session_media_connected 'Success' (0)
```

Although Bob joined after Alice, because the channel message history policy has been enabled on this server, Bob sees the message (message event) "bob are you there?".
