UNPKG

@iotize/device-com-socket.node

Version:

Socket communication protocol to communicate with an iotize

29 lines (28 loc) 1.32 kB
/// <reference types="node" /> import { ComProtocolConnectOptions, ComProtocolDisconnectOptions, ComProtocolOptions } from '@iotize/tap/protocol/api'; import { QueueComProtocol } from '@iotize/tap/protocol/core'; import * as net from 'net'; import { Observable, Subject, Subscriber } from 'rxjs'; export interface SocketProtocolOptions { host?: string; port: number; } export declare class SocketProtocol extends QueueComProtocol { static DEFAULT_HOSTNAME: string; protected _receiveStream: Subject<Uint8Array>; protected _socketOptions: SocketProtocolOptions; socket?: net.Socket; _connectionEmitter?: Subscriber<void>; constructor(serverOptions?: SocketProtocolOptions); get socketOptions(): SocketProtocolOptions; setSocketOptions(options: SocketProtocolOptions): this; get options(): ComProtocolOptions; protected _createSocket(): net.Socket; _connect(options?: ComProtocolConnectOptions | undefined): Observable<any>; _disconnect(options?: ComProtocolDisconnectOptions | undefined): Observable<any>; write(data: Uint8Array): Promise<any>; read(): Promise<Uint8Array>; readOneValue(timeoutMs?: number): Promise<Uint8Array>; notifyNewMessage(message: Uint8Array): void; receiveStream(): Observable<Uint8Array>; }