وبسوکت
نوبیتکس برای ارائه دادههای لحظهای بازار و رویدادهای خصوصی کاربر از وبسوکت مبتنی بر Centrifugo استفاده میکند.
مسیر کلی استفاده:
- برای کانالهای عمومی، به وبسوکت وصل شوید و در کانال عمومی مورد نظر عضو شوید. توکن لازم نیست.
- برای کانالهای خصوصی، ابتدا از API دریافت توکن اتصال، توکن بگیرید و مقدار
websocketAuthParamرا از پروفایل کاربر بخوانید. - با توکن اتصال به وبسوکت وصل شوید و در کانال خصوصی با الگوی
private:{channelName}#{websocketAuthParam}عضو شوید.
نکتهها:
- توکن اتصال وبسوکت ۱۲۰۰ ثانیه اعتبار دارد و فقط برای اتصال احراز هویتشده استفاده میشود.
- مقدار
websocketAuthParamبرای نام کانال خصوصی استفاده میشود، برای هر کاربر ثابت است و توکن اتصال نیست. - برای دریافت پیامها، بعد از اتصال باید در یک یا چند کانال عضو شوید.
SDKهای رسمی پیشنهادی Centrifugo:
| SDK | کاربرد |
|---|---|
| centrifuge-js | مرورگر، Node.js و React Native |
| centrifuge-python | پایتون و asyncio |
| centrifuge-java | جاوا و Android |
| centrifuge-go | Go |
| centrifuge-swift | iOS و Swift |
| centrifuge-dart | Dart و Flutter |
SDK غیررسمی قابل استفاده:
- centrifuge-csharp برای C#، .NET و Unity
اتصال و عضویت
این مسیر نقطه اتصال اصلی وبسوکت است. بعد از اتصال باید در کانالهای مورد نیاز عضو شوید تا پیامهای لحظهای دریافت کنید.
توکن اتصال خصوصی
این API یک توکن JWT برای اتصال احراز هویتشده به وبسوکت تولید میکند. این توکن فقط برای کانالهای خصوصی لازم است؛ کانالهای عمومی به توکن نیاز ندارند.
کانال لیست سفارشها: اردربوک
کانال اردربوک با هر تغییر در اردربوک بازار پیام منتشر میکند.
کانال آمار OHLC بازار نوبیتکس
کانال کندل، داده OHLC بازار را به صورت دورهای منتشر میکند.
کانال عمومی معاملات
در این کانال، معاملات انجامشده در یک بازار منتشر میشود.
کانال وضعیت بازارها
این کانالها آمار ۲۴ ساعته بازارها را منتشر میکنند.
کانال خصوصی سفارشات کاربر
در این کانال، رویدادهای سفارش کاربر منتشر میشود.
کانال خصوصی معاملات کاربر
به محض انجام شدن معامله برای کاربر، اطلاعات معامله در این کانال منتشر میشود.