@benshi.ai/js-sdk
Version:
Benshi SDK
27 lines (26 loc) • 869 B
TypeScript
import { NetworkProxy } from '../drivers/network/typings';
import { Event, LogIngestorOptions } from "./typings";
export interface ISenderRepository {
add(userId: string, deviceId: string, event: Event, forceSend: boolean): void;
flush(): any;
}
export default class BsSender implements ISenderRepository {
private flushing;
private flushIntervalId;
private bsNetwork;
private debug;
private options;
private endpointURL;
private userId;
private deviceId;
private queue;
constructor(bsNetwork: NetworkProxy, options: LogIngestorOptions);
private removeQueueItemsExceedMaxRetries;
private removeFromQueue;
private updateQueueCache;
private addRetries;
flush(): void;
private send;
private generateSessionID;
add(userId: string, deviceId: string, event: Event, forceSend?: boolean): void;
}