From 82afc242389066aeb72beeba96cd488ff181efd4 Mon Sep 17 00:00:00 2001 From: zarazaex69 Date: Thu, 14 May 2026 03:58:39 +0300 Subject: [PATCH] docs: clarify wbstream datachannel limitations --- docs/about.md | 26 ++++++++++++++------------ docs/fast.md | 4 ++-- docs/manual.md | 14 ++++++++------ docs/settings.md | 11 +++++++---- docs/sub.md | 2 +- docs/uri.md | 4 ++-- 6 files changed, 34 insertions(+), 27 deletions(-) diff --git a/docs/about.md b/docs/about.md index 3347446..8c6c3bf 100644 --- a/docs/about.md +++ b/docs/about.md @@ -393,8 +393,9 @@ Carrier - это WebRTC сервис видеозвонков, через кот - Сервис трансляций от Wildberries: `stream.wb.ru` - **Рекомендуется** - самый стабильный - Минимальная прослойка, почти прямой relay -- Работает со всеми транспортами: datachannel, vp8channel, seichannel, videochannel -- Поддерживает автогенерацию Room ID (`mode: gen`) +- Работает с vp8channel, seichannel, videochannel +- DataChannel поддерживается условно: WB Stream должен выдать участникам право `canPublishData`, обычно через модераторские/permission права комнаты. В обычном guest flow DC не рекомендуется. +- Room ID нужно создавать вручную через stream.wb.ru - Инициализация звонка автоматически --- @@ -409,8 +410,8 @@ Transport определяет как именно данные упаковыв - Лимит payload: 12KB на сообщение (ограничение SFU) - Надёжный, упорядоченный (SCTP гарантирует) -- Работает с jazz (нежелательно - банят) и wbstream -- **Лучшая комбинация: `wbstream + datachannel`** +- Работает с jazz (нежелательно - банят) и условно с wbstream +- WB Stream DataChannel требует `canPublishData=true` у участников. Без модераторских/permission прав WB Stream может поднять соединение, но не маршрутизировать data packets. ### vp8channel @@ -582,7 +583,7 @@ cd olcrtc # генерация ключа openssl rand -hex 32 -# создать конфиг (пример: wbstream + datachannel) +# создать конфиг (пример: wbstream + vp8channel) cat > server.yaml <?@#$ **Примеры:** ``` -olcrtc://wbstream?datachannel@room-01#d823fa...$RU / olc free sub olcrtc://wbstream?vp8channel@room-01#d823fa...$RU +olcrtc://wbstream?datachannel@room-01#d823fa...$RU / requires canPublishData olcrtc://telemost?seichannel@room-01#d823fa...$RU ``` @@ -717,7 +718,7 @@ olcrtc://telemost?seichannel@room-01#d823f #refresh: 10m #icon: 🇷🇺 -olcrtc://wbstream?datachannel@room-01#key$RU / free +olcrtc://wbstream?vp8channel@room-01#key$RU / free ##name: RU-1 ##ip: 1.2.3.4 ##comment: basic free node @@ -731,7 +732,7 @@ olcrtc://wbstream?datachannel@room-01#key$RU / free | Transport | telemost | jazz | wbstream | |---|:---:|:---:|:---:| -| datachannel | - | `*` | `+` | +| datachannel | - | `*` | `!` | | vp8channel | `+` | `+` | `+` | | seichannel | - | `+` | `+` | | videochannel | `+` | `+` | `+` | @@ -739,14 +740,15 @@ olcrtc://wbstream?datachannel@room-01#key$RU / free - `+` работает - `-` не поддерживается - `*` работает, но jazz банит IP за паттерны datachannel трафика +- `!` работает только если WB Stream выдал участникам право `canPublishData` (обычно через модераторские/permission права) -**Рекомендуется:** `wbstream + datachannel` - максимальная скорость, минимальный пинг, без бана. +**Рекомендуется для wbstream:** `vp8channel` как обычный режим. `wbstream + datachannel` быстрый, но не рекомендуется без модераторских прав: в guest flow WB Stream может выдавать токены с `canPublishData=false`, и DC не будет маршрутизировать данные. **Скорость по убыванию:** `datachannel` > `vp8channel` > `seichannel` > `videochannel` -**Рекордный замер:** на связке `wbstream + datachannel` (test by `x2827262628281872727`) зафиксированы пинг **7 мс** и скорость **792.62 Mbps на вход / 749.69 Mbps на выход** - максимум, измеренный через olcRTC. +**Рекордный замер:** на связке `wbstream + datachannel` (test by `x2827262628281872727`) зафиксированы пинг **7 мс** и скорость **792.62 Mbps на вход / 749.69 Mbps на выход** - максимум, измеренный через olcRTC. Сейчас этот режим зависит от WB Stream permission `canPublishData` и не считается рекомендуемым для обычного guest flow. speedtest diff --git a/docs/fast.md b/docs/fast.md index 59827e3..43dc5d4 100644 --- a/docs/fast.md +++ b/docs/fast.md @@ -116,12 +116,12 @@ Enter choice [1-4, default: 1]: ``` Рекомендации: -- **datachannel** - самый быстрый, минимальный пинг. Работает с `jazz` и `wbstream`. **Jazz банит IP за datachannel** - лучше используй только с `wbstream`. +- **datachannel** - самый быстрый, минимальный пинг. Работает с `jazz` и условно с `wbstream`. **Jazz банит IP за datachannel**; **WBStream DC требует `canPublishData`/модераторские права у участников**, поэтому для обычного guest flow не рекомендуется. - **vp8channel** - работает везде, быстрый, но большой пинг. - **seichannel** - работает везде кроме telemost, медленный, но мелкий пинг. - **videochannel** - работает везде, самый медленный и большой пинг. -**Лучшая комбинация: `wbstream + datachannel`** - максимальная скорость, минимальный пинг, без риска бана. +**Рекомендуемая комбинация для wbstream: `wbstream + vp8channel`**. `wbstream + datachannel` используй только если участникам выданы права на отправку data packets. ### Room ID diff --git a/docs/manual.md b/docs/manual.md index bfb8ca3..e6edc42 100644 --- a/docs/manual.md +++ b/docs/manual.md @@ -147,10 +147,12 @@ openssl rand -hex 32 На серверной машине (VPS и т.д.). Подбери нужную комбинацию carrier + transport из матрицы в [settings.md](settings.md). -### wbstream + datachannel (рекомендуется - максимальная скорость и пинг) +### wbstream + vp8channel (рекомендуется) Сначала создай руму вручную через сайт [wbstream](https://stream.wb.ru) (автогенерация через `mode: gen` для wbstream больше не поддерживается) и сохрани её ID. +`wbstream + datachannel` поддерживается только если участникам выданы права на отправку data packets (`canPublishData=true`), обычно через модераторские/permission права комнаты. В обычном guest flow DC не рекомендуется. + Создай YAML конфиг: ```yaml @@ -164,7 +166,7 @@ room: crypto: key: "d823fa01cb3e0609b67322f7cf984c4ee2e4ce2e294936fc24ef38c9e59f4799" net: - transport: datachannel + transport: vp8channel dns: "1.1.1.1:53" data: data ``` @@ -182,7 +184,7 @@ Room ID нужно передать клиенту. Добавь `debug: true` в YAML конфиг - увидишь каждое соединение: ``` -2026/05/03 08:05:23 Connecting link via direct/datachannel/wbstream... +2026/05/03 08:05:23 Connecting link via direct/vp8channel/wbstream... 2026/05/03 08:05:25 wbstream publisher state: connected 2026/05/03 08:05:27 Link connected 2026/05/03 08:05:43 sid=3 connect icanhazip.com:443 @@ -195,7 +197,7 @@ Room ID нужно передать клиенту. На своей машине. Auth provider, transport, room ID и key должны совпадать с сервером. -### wbstream + datachannel +### wbstream + vp8channel ```yaml # client.yaml @@ -208,7 +210,7 @@ room: crypto: key: "" net: - transport: datachannel + transport: vp8channel dns: "1.1.1.1:53" socks: host: "127.0.0.1" @@ -239,7 +241,7 @@ room: crypto: key: "" net: - transport: datachannel + transport: vp8channel dns: "1.1.1.1:53" socks: host: "127.0.0.1" diff --git a/docs/settings.md b/docs/settings.md index 1ca4214..393f203 100644 --- a/docs/settings.md +++ b/docs/settings.md @@ -14,7 +14,7 @@ | Transport | telemost | jazz | wbstream | |-----------|:--------:|:----:|:--------:| -| datachannel | - | * | + | +| datachannel | - | * | ! | | vp8channel | + | + | + | | seichannel | - | + | + | | videochannel | + | + | + | @@ -23,8 +23,9 @@ - `+` - работает - `-` - не поддерживается - `*` - работает, но не желательно +- `!` - работает только если участникам выданы права на отправку data packets (`canPublishData`), обычно через модераторские права -**Рекомендуемая комбинация: `wbstream + datachannel`** - максимальная скорость, минимальный пинг. +**Рекомендуемая комбинация для wbstream: `wbstream + vp8channel`**. `wbstream + datachannel` быстрый, но в обычном guest/anonymous flow WB Stream выдаёт токены с `canPublishData=false`; без выдачи участникам модераторских/permission прав DC не маршрутизирует данные и поэтому не рекомендуется. Скорость по убыванию: `datachannel` > `vp8channel` > `seichannel` > `videochannel` @@ -162,7 +163,9 @@ gen: ## Готовые конфиги -### wbstream + datachannel (рекомендуется - максимальная скорость, без бана) +### wbstream + datachannel (не рекомендуется без модераторских прав) + +WB Stream DataChannel работает только когда участникам выданы права на отправку data packets (`canPublishData=true`), обычно через модераторские/permission права комнаты. В обычном guest flow WB Stream может выдавать токены с `canPublishData=false`, тогда соединение поднимется, но данные через DC не пойдут. Для обычного использования выбирай `vp8channel`, `seichannel` или `videochannel`. ```yaml # room ID нужно создать вручную через https://stream.wb.ru @@ -201,7 +204,7 @@ socks: data: data ``` -### wbstream + datachannel + SOCKS5 аутентификация +### wbstream + datachannel + SOCKS5 аутентификация (только с модераторскими правами) ```yaml # client.yaml с логином и паролем на прокси diff --git a/docs/sub.md b/docs/sub.md index 4217803..74ea4c2 100644 --- a/docs/sub.md +++ b/docs/sub.md @@ -154,7 +154,7 @@ olcrtc://wbstream?datachannel@abc123xyz#aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ##name: DE-Backup ##icon: 🇩🇪 ##color: #2EBD85 -##comment: reserve route, wbstream+datachannel - max speed +##comment: reserve route, wbstream+datachannel requires canPublishData/moderator permissions ``` ## Имплементация клиента для подписок diff --git a/docs/uri.md b/docs/uri.md index 9544c44..80bd0bc 100644 --- a/docs/uri.md +++ b/docs/uri.md @@ -113,13 +113,13 @@ Payload не используется. ## Примеры -### wbstream + datachannel (рекомендуется) +### wbstream + datachannel (только с permission rights) ```text olcrtc://wbstream?datachannel@room-01#d823fa01cb3e0609b67322f7cf984c4ee2e4ce2e294936fc24ef38c9e59f4799$RU / olc free sub / IPv6 ``` -Payload не нужен - datachannel параметров не имеет. +Payload не нужен - datachannel параметров не имеет. Для WBStream этот режим не рекомендуется в обычном guest flow: участникам нужны права на отправку data packets (`canPublishData=true`), обычно через модераторские/permission права комнаты. ### Эквивалент YAML