ns2-front-module-common
Version:
NS2 common module
68 lines (67 loc) • 2.42 kB
TypeScript
import { Subscription } from "rxjs";
export declare class WebsocketService {
static readonly CHANNEL_NAME: string;
static readonly SOCKET_OPEN_TOPIC_NAME: string;
static readonly SOCKET_MESSAGE_TOPIC_NAME: string;
static readonly SOCKET_CLOSE_TOPIC_NAME: string;
static readonly SOCKET_ERROR_TOPIC_NAME: string;
static readonly SOCKET_CLOSE_NORMAL: number;
static readonly SOCKET_CLOSE_ABNORMAL: number;
private channel;
private ws;
private endPoint;
private reconnectTimeout;
private isConnected;
constructor();
/**
* Устанавливает точку обмена с сервером
* @param {string} endPoint
*/
setEndPoint(endPoint: string): void;
/**
* Устанавливает время между попытками восстановления соединения
* @param {number} connectTimeout
*/
setReconnectTimeout(connectTimeout: number): void;
/**
* Отправляет данные в сокет
* @param {any} data Данные
*/
send(data: any): void;
/**
* Подписка на установление соединения
* @param {Function} then Функция-подписчик
* @returns {Subscription}
*/
onOpen(then: (value: Event) => void): Subscription;
/**
* Подписка на получение сообщения
* @param {Function} then Функция-подписчик
* @returns {Subscription}
*/
onMessage(then: (value: MessageEvent) => void): Subscription;
/**
* Подписка на закрытие сокета
* @param {Function} then Функция-подписчик
* @returns {Subscription}
*/
onClose(then: (value: CloseEvent) => void): Subscription;
/**
* Подписка на ошибки сокета
* @param {Function} then Функция-подписчик
* @returns {Subscription}
*/
onError(then: (value: ErrorEvent) => void): Subscription;
/**
* Установить соединение с сервером
*/
connect(params: any): void;
/**
* Закрыть соединение с сервером
*/
disconnect(): void;
/**
* Открытие соединения с WebSocket и подписка на события
*/
private openConnection(params);
}