Q2TG/src/controllers/ConfigController.ts

41 lines
1.2 KiB
TypeScript
Raw Normal View History

2022-02-20 08:25:30 +00:00
import { Api } from 'telegram';
import { Telegram } from '../client/Telegram';
import { Client as OicqClient } from 'oicq';
import ConfigService from '../services/ConfigService';
import { config } from '../providers/userConfig';
import regExps from '../constants/regExps';
2022-02-20 08:25:30 +00:00
export default class ConfigController {
private readonly configService: ConfigService;
constructor(private readonly tgBot: Telegram,
private readonly tgUser: Telegram,
private readonly oicq: OicqClient) {
this.configService = new ConfigService(tgBot, tgUser, oicq);
tgBot.addNewMessageEventHandler(this.handleMessage);
tgBot.setCommands([], new Api.BotCommandScopeUsers());
}
private handleMessage = async (message: Api.Message) => {
if (!message.sender.id.eq(config.owner)) {
2022-02-20 08:25:30 +00:00
return false;
}
const messageSplit = message.message.split(' ');
if (message.isGroup) {
}
else if (message.isPrivate) {
switch (messageSplit[0]) {
case '/add':
if (messageSplit[1] && regExps.qq.test(messageSplit[1])) {
await this.configService.addExact(Number(messageSplit[1]));
}
else {
await this.configService.add();
}
return true;
}
2022-02-20 08:25:30 +00:00
}
};
}