UNPKG

teoclits

Version:

Typescript angular Teonet Client module

180 lines (179 loc) 4.37 kB
import { TeocliRTC } from './teocli.webrtc'; export interface TeonetEventType { TEONET_INIT: string; TEONET_LOGGEDIN: string; TEONET_CLOSE: string; } export declare type eventSubscribersFunc = (event: string, ...obj: object[]) => number; export declare type onotherData = { cmd: number; from: string; data: any; }; export declare type onechoData = { cmd: number; from: string; data: { msg: string; time: number; }; }; export declare const Teonet: { peer: { l0: string; auth: string; }; status: { offline: number; connecting: number; logining: number; online: number; }; }; export declare class TeonetCli extends TeocliRTC { status: number; protected client_name: string; private connect_url; private inited; private RECONNECT_TIMEOUT; private INIT_TIMEOUT; private isTeonetClientsActiveFunc; private eventSubscribers; private login_page; private signup_page; private restore_page; static EVENT: TeonetEventType; constructor(); private init(); /** * Disconnect TeonetCli * */ disconnect(): void; getConnectUrl(): string; setConnectUrl(url: string): void; /** * Sel login page */ setLoginPage(func: () => void): void; /** * Load Login page */ loginPage(push?: boolean): void; /** * Sel SignUp page */ setSignupPage(func: () => void): void; /** * Load SignUp page */ signupPage(push?: boolean): void; /** * Sel Restore page */ setRestorePage(func: () => void): void; /** * Load Restore page */ restorePage(push?: boolean): void; /** * Is TeonetCli connected and initialized * * @returns {boolean} True if connected and initialized */ isInit(): boolean; /** * Get teonet status * * @return {number} Teonet status */ getStatus(): number; /** * Get client name * * @return {string} Teonet client name */ getClientName(): string; /** * Set client name * * @return {string} Teonet client name */ setClientName(name?: string): void; /** * Subscribe to even * * @param {eventSubscribersFunc} func */ subscribe(func: eventSubscribersFunc): eventSubscribersFunc; /** * Unsubscribe from event * * @param {eventSubscribersFunc} func */ unsubscribe(func: eventSubscribersFunc): void; /** * Send event to Event Subscribers * * @param {string} ev Event name * @param {object[]) ...obj Objects send to subscribers */ sendEvent(ev: string, ...obj: object[]): void; whenEvent(event: string, func: (...obj: object[]) => number): eventSubscribersFunc; whenInit(func: () => void): eventSubscribersFunc; whenClose(func: () => void): eventSubscribersFunc; isTeonetClientsActive(): boolean; setTeonetClientsActive(func: () => boolean): void; } import { AfterContentInit } from '@angular/core'; import { TeonetClientsNum } from './teocli.clients'; export declare class TeonetStatus implements AfterContentInit { t: TeonetCli; peer: string; label: string; reconnect: string; show_peer: string; tcli: TeonetClientsNum; time: number; private last_answere; private SEND_ECHO_AFTER; private SET_LOGOFF_AFTER; private RECONNECT_AFTER; /** * Constructor connect to Teonet and load TeonetClientsNum class */ constructor(t: TeonetCli); /** * This function calls by angular after html content init */ ngAfterContentInit(): void; /** * Send ping to peer */ private sendEcho(); /** * Return true if Teonet is online * @return {boolean} */ ifOnline(): boolean; /** * Return true if peer input is set * * @param {string} peer Peer name */ ifPeer(peer: string): boolean; /** * Get Teonet status color * * @param {number} Teonet status * @return Teonet status color string */ getStatusColor(status: number): string; /** * Get name of Teonet status * * @param {number} Teonet status * @return Teonet status string */ getStatusText(status: number): string; }