73 lines
1.7 KiB
JavaScript
73 lines
1.7 KiB
JavaScript
import { cfg } from "./cfg";
|
|
import { irc as irclib } from "../clients/irc";
|
|
import { tg as tglib } from "../clients/tg";
|
|
//import { discord as discordlib } from "../clients/discord";
|
|
|
|
import EventEmitter from "events";
|
|
|
|
const clients = [];
|
|
|
|
const wrapper = class wrapper extends EventEmitter {
|
|
constructor() {
|
|
super();
|
|
for (let srv in cfg.client) {
|
|
if(cfg.client[srv].val.enabled) {
|
|
switch (cfg.client[srv].val.type) {
|
|
case "irc":
|
|
clients.push({
|
|
name: cfg.client[srv].val.network,
|
|
type: "irc",
|
|
client: new irclib(cfg.client[srv].val)
|
|
});
|
|
break;
|
|
case "tg":
|
|
clients.push({
|
|
name: "tg",
|
|
type: "tg",
|
|
client: new tglib(cfg.client[srv].val)
|
|
});
|
|
break;
|
|
/*case "discord":
|
|
clients.push({
|
|
name: "discord",
|
|
type: "discord",
|
|
client: new discordlib(cfg.client[srv].val)
|
|
});
|
|
break;*/
|
|
}
|
|
}
|
|
}
|
|
|
|
clients.forEach(client => {
|
|
client.client.on("data", e => {
|
|
this.emit(e[0], e[1]);
|
|
});
|
|
});
|
|
}
|
|
};
|
|
|
|
export { wrapper, clients };
|
|
|
|
Map.prototype.hasi = function(val) {
|
|
try {
|
|
for (let [key] of this)
|
|
if(key.toLowerCase() === val.toLowerCase())
|
|
return true;
|
|
return false;
|
|
} catch(err) {
|
|
console.log("das übliche mit tolowercase()");
|
|
return false;
|
|
}
|
|
};
|
|
Map.prototype.geti = function(val) {
|
|
for (let [key, value] of this)
|
|
if(key.toLowerCase() === val.toLowerCase())
|
|
return value;
|
|
return false;
|
|
};
|
|
Map.prototype.deli = function(val) {
|
|
for (let [key] of this)
|
|
if(key.toLowerCase() === val.toLowerCase())
|
|
this.delete(key);
|
|
};
|