# Core concepts (/en/realtime-media/rtmp-gateway/reference/core-concepts)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

RTC (Real-Time Communication) refers to real-time communication technology that allows almost instant exchange of audio, video, and other data between the sender and the receiver.

Agora SDKs provide real-time audio and video interaction services, with multi-platform and multi-device support. This includes high-definition video calls, voice-only calls, interactive live streaming, as well as one-on-one and multi-group chats.

This article introduces the key processes and concepts you need to know to use Agora SDKs.

## Using the Agora Console [#using-the-agora-console]

To use Agora SDKs, create an audio and video project in the Agora Console first. See [Agora account management](../build/manage-agora-account.md) for details.

![Create project in Agora Console](https://assets-docs.agora.io/images/common/create-project.svg)

#### Agora Console [#agora-console]

[Agora Console](https://console.agora.io/v2) is the main dashboard where you manage your Agora projects and services.

## General concepts [#general-concepts]

### App ID [#app-id]

The App ID is a random string generated within Agora Console when you create a new project.

### App certificate [#app-certificate]

An App certificate is a string generated by Agora Console to enable token authentication.

### Token [#token]

A token is a dynamic key that the Agora authentication server uses to check user permissions.

### Channel [#channel]

Agora uses the channel name to identify a channel. Users who specify the same channel name join a common channel and interact with each other.

### Channel profile [#channel-profile]

Agora supports multiple channel profiles, including `COMMUNICATION` and `LIVE_BROADCASTING`.

| Channel profile     | Description                                                                                                                                                                                   |
| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `COMMUNICATION`     | Suitable for one-on-one or group calls, where all users in the channel talk freely.                                                                                                           |
| `LIVE_BROADCASTING` | In a live streaming channel, users have two client roles: host and audience. Hosts send and receive audio or video, while audience members only receive audio or video with sending disabled. |

### Stream [#stream]

A stream is a sequence of digitally encoded coherent signals that contains audio or video data.

### Publish [#publish]

Publishing is the act of sending a user's audio or video data to the channel.

### Subscribe [#subscribe]

Subscribing is the act of receiving media streams published by remote users to the channel.

### User ID [#user-id]

A User ID (UID) identifies a user in a channel.

### User role [#user-role]

A user role defines whether users in the channel have permission to publish streams.

### Connection (`RtcConnection`) [#connection-rtcconnection]

The connection between the SDK and the channel. When you need to publish or receive multiple streams in multiple channels, a connection specifies the target channel.

### Agora SDRTN(R) [#agora-sdrtnr]

Agora's core engagement services are powered by its Software-Defined Real-Time Network, which is accessible and available globally with low latency and high availability.
