Перейти к основному содержимому
Версия: 2026.2.4

Каналы

Раздел «Каналы» — подключение к голосовому/медиа-каналу, список присутствующих в нём участников и редактирование настроек уже существующего канала. Создание, удаление и перемещение каналов внутри группы описаны в разделе «Группы» — здесь только то, что относится к уже существующему каналу напрямую.

Все запросы этого раздела требуют заголовок Authorization: Bearer <accessToken>.

Объект ошибки​

При любой ошибке вместо 200 OK возвращается default-ответ:

ПолеТипОписание
codeintegerЧисловой код ошибки (google.rpc.Code).
messagestringЧеловекочитаемое описание ошибки.
detailsarrayДополнительные структурированные детали ошибки (google.protobuf.Any); в большинстве случаев пуст.

Подключиться к каналу​

POST/v1/channels/{channelId}/connect

Подключает текущего пользователя к голосовому/медиа-каналу и возвращает данные для подключения к медиасерверу (LiveKit) — точно тот же механизм, что используют боты (см. «Голос» в Bot API).

Параметры пути​

ПолеТипОписание
channelIdstringИдентификатор канала, к которому подключается пользователь.

Ответ 200 OK​

ПолеТипОписание
tokenstringJWT для подключения к медиасерверу — привязан к конкретному пользователю и комнате (каналу), даёт права публиковать и подписываться на медиапотоки.
serverUrlstringURL медиасервера, к которому нужно подключаться с этим токеном.

{
"token": "eyJhbGciOiJIUzI1NiJ9.eyJ2aWRlbyI6eyJyb29tIjoiM2ZhODVmNjQtNTcxNy00NTYyLWIzZmMtMmM5NjNmNjZhZmE2Iiwicm9vbUpvaW4iOnRydWV9fQ.dGhpcyBpcyBub3QgcmVhbA",
"serverUrl": "wss://media.iopta.org"
}
Требуется доступ к каналу

Подключение отклоняется, если пользователь не состоит в группе канала или ему не разрешён доступ к этому каналу (права/оверрайды — см. «Права и роли»).

Ответ default (ошибка)​

Стандартный объект ошибки — например, если канал не найден, группа канала не найдена, или пользователю не разрешено подключаться.


Изменить настройки канала​

POST/v1/channels/{channelId}

Обновляет имя, описание и (для голосовых каналов) лимит участников и битрейт.

Параметры пути​

ПолеТипОписание
channelIdstringИдентификатор канала.

Тело запроса​

ПолеТипОписание
name?stringНовое имя канала.
description?stringНовое описание канала.
userLimit?integerЛимит участников в голосовом канале — только для голосовых каналов.
bitrate?integerБитрейт голосового канала — только для голосовых каналов.

{
"channelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "general-voice",
"userLimit": 10
}
Только создатель канала

Изменять настройки канала может только его создатель (creatorId). userLimit и bitrate можно задавать только для голосовых каналов — на текстовом канале запрос будет отклонён.

Ответ 200 OK​

ПолеТипОписание
successbooleanВсегда true при успешном ответе.

Ответ default (ошибка)​

Стандартный объект ошибки — например, если канал не найден, вызывающий не создатель канала, или userLimit/bitrate переданы для текстового канала.


Получить участников голосового канала​

GET/v1/channels/{channelId}/users

Возвращает список пользователей, которые сейчас находятся в голосовом канале, с их состоянием микрофона/камеры/заглушки.

Параметры пути​

ПолеТипОписание
channelIdstringИдентификатор голосового канала.

Ответ 200 OK​

ПолеТипОписание
usersarrayСписок объектов ChannelVoiceUser (см. ниже).

Объект ChannelVoiceUser

ПолеТипОписание
userUserПрофиль участника.
micIsEnabledbooleanВключён ли микрофон.
camIsEnabledbooleanВключена ли камера.
isDeafenedbooleanОтключён ли звук у самого участника (deafen).

Ответ default (ошибка)​

Стандартный объект ошибки.