type Settings = Array<[string,string,string|number]>;
export class CollectorClient {
private settings: Settings;
constructor(public clientName:string) {
this.settings = [];
this.putLoop();
}
private async putLoop() {
await this.put();
setTimeout(() => {
this.putLoop();
}, 1000);
}
private async put() {
await fetch("/service/collector/attrs", {
method: "PUT",
body: JSON.stringify({
client: this.clientName,
clientSession: "unused",
sendTime: Date.now() / 1000,
settings: this.settings,
}),
});
}
public async updateSettings(settings: Settings) {
this.settings = settings;
await this.put()
}
}