teoclits
Version:
Typescript angular Teonet Client module
180 lines (179 loc) • 4.37 kB
TypeScript
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;
}