ویدیورایان
خانه / توسعه‌دهندگان
پلتفرم توسعه‌دهندگان

ویدئوی بلادرنگ، دقیقاً همان‌طور که مهندس‌ها انتظار دارند

ویدیورایان یک صفحهٔ کنترل REST کوچک و قابل‌پیش‌بینی ارائه می‌کند و از طریق هر SDK سازگار LiveKit با WebRTC استاندارد حرف می‌زند: اتاق بسازید، توکن مهمانِ کوتاه‌عمر ضرب کنید و وصل شوید — بدون قفلِ SDK و بدون ابریِ مبهم بین شما و کاربرانتان.

شروع سریع

از صفر تا یک تماس زنده، در سه فراخوانی

سطح رایگان نه حساب می‌خواهد نه کلید API — نام اتاق همان اعتبارنامه است. همه‌چیز زیر روی API تولیدی تست شده است.

۱ — اتاق بسازید

به POST /v1/public/rooms یک نام بدهید و یک roomId بگیرید که می‌توانید به اشتراک بگذارید یا در محصولتان جاسازی کنید.

۲ — توکن مهمان ضرب کنید

به POST /v1/guest/rooms/{ref}/tokens یک نام نمایشی بدهید و یک JWT کوتاه‌عمر LiveKit تحویل بگیرید.

۳ — با هر SDK وصل شوید

توکن را به livekit-client بدهید یا رابط میزبانی‌شدهٔ /r/{roomId} را باز کنید — همین.

quickstart.sh — tested against production
# 1 — create a room (no key needed; same name returns the same room)
curl -s -X POST https://api.videorayan.ir/v1/public/rooms \
  -H "Content-Type: application/json" \
  -d '{"name":"community"}'
# → {"roomId":"4843ba3a-e800-475a-b78c-7ae60c9d33d7","name":"community"}

# 2 — mint a guest token
curl -s -X POST https://api.videorayan.ir/v1/guest/rooms/community/tokens \
  -H "Content-Type: application/json" \
  -d '{"identity":"SaraDev"}'
# → {"token":"eyJ…","identity":"SaraDev","roomName":"community","expiresAt":"…+10min"}

# 3 — humans join with: https://videorayan.ir/r/community
بدون حساب، بدون کلید. سطح عمومی از طراحی باز است — لینک اتاق مثل لینک جلسه کار می‌کند. برای اتاق‌هایی که مال خودتان‌اند، با نقش host و سقف سمت سرور، از API اجاره‌ای با کلید Bearer استفاده کنید.
مسیرهای یکپارچه‌سازی

سطحی را انتخاب کنید که با محصولتان جور است

هر سه مسیر روی همان صفحهٔ رسانهٔ خودمیزبان اجرا می‌شوند — رایگان شروع کنید و بعداً بدون دست‌زدن به کد کلاینت ارتقا دهید.

بدون کلید · مرورگر

API عمومی اتاق‌ها

سریع‌ترین مسیر: ساخت اتاق از مرورگر یا هر کلاینت HTTP، پیوستن با لینک، رمز اختیاری. عالی برای MVP، ابزارهای داخلی و لینک‌های جلسه.

  • POST /v1/public/rooms — ساخت (نام همان دستگیره است)
  • GET /v1/public/rooms/{ref} — resolve و بررسی رمز
  • POST /v1/guest/rooms/{ref}/tokens — توکن ورود
  • رابط میزبانی‌شده در /r/{roomId}

مرجع API عمومی ←

کلید Bearer · سمت سرور

API اجاره‌ای (Tenant)

برای محصولاتی که اتاق‌ها مال خودشان است: اتاق‌های مختص اجاره‌کننده با همبسته‌سازی externalId، نقش host/guest، سقف سمت سرور، بازرسی شرکت‌کنندگان و کنترل چرخهٔ عمر.

  • POST /v1/rooms — ساخت با کلید idempotency
  • POST /v1/rooms/{id}/tokens — host یا guest با TTL
  • GET /v1/rooms/{id}/participants — فهرست زنده
  • DELETE /v1/rooms/{id} — پایان اتاق، قطع همه

مرجع API اجاره‌ای ←

بدون human-in-the-loop · ایجنت

ایجنت‌های خودکار

برای ایجنت‌هایی که خودشان جلسه برپا می‌کنند: بدون ثبت‌نام، با خطاهای قطعی و ساخت idempotent؛ قرارداد ماشین‌خوان هم برای بلعیدن یک‌باره آماده است.

  • ساخت اتاق و توکن با REST خالص
  • خطاهای قطعی برای شاخه‌زدن آسان
  • قرارداد OpenAPI و llms.txt

منابع ایجنت‌ها ←

SDKهای کلاینت

هر SDK سازگار LiveKit از روز اول وصل می‌شود

چون صفحهٔ رسانه یک SFU استاندارد LiveKit است، همهٔ SDKهای رسمی LiveKit با توکن شما کار می‌کنند — برای وب livekit-client و wss://rtc.videorayan.ir. منتظر SDK اختصاصی نمی‌مانید.

پلتفرمSDKنصباتصال
وب / SPAlivekit-clientnpm i livekit-clientroom.connect('wss://rtc.videorayan.ir', token)
React@livekit/components-reactnpm i @livekit/components-react livekit-client<LiveKitRoom token={token} serverUrl={wsUrl} />
iOSLiveKitSDK (Swift)livekit/swift-sdk (SPM)try await room.connect(url: wsUrl, token: token)
اندرویدlivekit-androidio.livekit:livekit-androidroom.connect(wsUrl, token)
Flutterlivekit_clientflutter pub add livekit_clientroom.connect(wsUrl, token)
ایجنت سمت سرورlivekit-api / RESTpip install livekit-apiضرب توکن سمت سرور، اتصال headless
قاعدهٔ سرانگشتی: توکن‌ها سمت سرور (یا از اندپوینت مهمان) ضرب می‌شوند و محرمانه نیستند — دقیقاً به یک اتاق محدودند و منقضی می‌شوند (پیش‌فرض حدود ۱۰ دقیقه). جزئیات در مفاهیم مستندات.
مثال واقعی خروجی‌ها

روی تولید اجرا شده — ۲۰۲۶-۱۰-۲۷

این‌ها نمونهٔ ساختگی نیستند؛ هر فراخوانی، همان روزِ انتشارِ صفحه روی API زنده اجرا شده و خروجی‌ها عیناً همان است (JWT و نام اجاره‌کننده کوتاه شده).

public-flow.sh — real output
# create-or-fetch (idempotent — same name → same room)
$ curl -s -X POST https://api.videorayan.ir/v1/public/rooms \
    -H "Content-Type: application/json" -d '{"name":"community"}'
{"roomId":"4843ba3a-e800-475a-b78c-7ae60c9d33d7","name":"community"}   # 201

$ curl -s https://api.videorayan.ir/v1/public/rooms/community
{"roomId":"4843ba3a-e800-475a-b78c-7ae60c9d33d7","name":"community","needsPassword":false}   # 200

$ curl -s -X POST https://api.videorayan.ir/v1/guest/rooms/community/tokens \
    -H "Content-Type: application/json" -d '{"identity":"SaraDev"}'
{"token":"eyJhbGciOiJIUzI1NiJ9.…","identity":"SaraDev","roomName":"community","expiresAt":"2026-10-27T14:03:34.433Z"}   # 201

# humans join with: https://videorayan.ir/r/community
errors.sh — real error bodies
$ curl -s …/public/rooms/no-such-room-xyz        # 404
{"error":"room_not_found"}

$ curl -s -X POST …/public/rooms -d '{"name":""}'  # 400
{"error":"invalid_input"}

$ curl -s -X POST …/guest/rooms/x/tokens -d '{"identity":"eve","password":"wrong"}'   # 403
{"error":"wrong_password"}

خطای اعتبارسنجی همیشه 400 با بدنهٔ invalid_input است؛ روی فیلد error در JSON شاخه بزنید، نه فقط روی کد وضعیت.

ظرفیت‌ها و محدودیت‌ها

عددهایی که امروز واقعاً برقرارند

این سقف‌ها برای حفاظت از همه تعیین شده‌اند و برای کاربردهای واقعی، با درخواست منابع قابل افزایش‌اند.

موردمقدار فعلییادداشت
عمر اتاق رایگان۱۲ ساعتساخت با نام idempotent است؛ ورود بعدی دوباره همان اتاق را می‌سازد
عمر اتاق اجاره‌ایتا ۲۴ ساعتبا expiresInSeconds هنگام ساخت کنترل کنید
شرکت‌کنندگان اتاق اجاره‌ایحداکثر ۳برای کاربردهای واقعی از طریق درخواست منابع بالا می‌رود
محدودیت نرخ۱۲۰ درخواست در دقیقهبه‌ازای هر IP در سطح عمومی (یا هر کلید اجاره‌ای)
توکن ورودپیش‌فرض حدود ۱۰ دقیقهدر پاسخ با expiresAt می‌آید؛ برای هر جلسه تازه ضرب کنید
ظرفیت بیشتری لازم دارید؟ شرکت‌کنندهٔ بیشتر، عمر طولانی‌تر اتاق یا بودجهٔ نرخ بزرگ‌تر — از طریق بازخورد / درخواست منابع یا info@videorayan.ir با ذکر کاربرد و حجم موردانتظار بنویسید؛ با اعداد واقعی جواب می‌دهیم.
در دنیای واقعی

با ویدیورایان، جلسه‌ها خنده‌دارترند

از ایستادِ کاری تا ویزیت پزشک — یک لینک کافی است تا همه دور هم جمع شوند.

تیم و دوستان کنار هم
تیم و دوستان کنار همجلسه‌هایی با نشاط، بدون نصب هیچ برنامه‌ای
ویزیت آنلاین پزشک
ویزیت آنلاین پزشکمراقبت از راه دور، با یک لینک ساده
جلسات کاری
جلسات کاریتصمیم‌های سریع‌تر با دید و صدای واقعی
جامعه و بازخورد

زنده حرف بزنیم — و مسیر را با هم بسازیم

اتاق اجتماعی همیشه زنده است: صدا، تصویر و چتِ مرورگری بدون حساب. سؤال فنی دارید یا سقف بیشتری می‌خواهید؟ بیایید اتاق یا خط بازخورد — اپراتور واقعاً می‌خواند.

اولین تماس‌تان را امروز منتشر کنید

یک اتاق رایگان بسازید، لینک دعوت را باز کنید و ترافیک را بررسی کنید — بعد همان جریان را در محصولتان سیم‌کشی کنید.