Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Как использовать метод toLowerCase(); в боте на js? Куда его записать в данном коде?

Есть код. Надо использовать здесь метод toLowerCase();
Подскажите куда его надо написать здесь, чтобы метод работал

Const { VK } = require("vk-io");

const vk = new VK({
token: "1ad3ffc09c78029a969f3092f933283a014e6388cc46c5f8ead99f9892915cf706de3f998e9f98646c3ca",
pollingGroupId: 192450137
});

let users = require('./users.json');

setInterval(async () => {
await saveUsers();
console.log('saved');
}, 30000);

async function saveUsers()
{
require('fs').writeFileSync('./users.json', JSON.stringify(users, null, '\t'));
return true;
}

const commands = [];

const { updates } = vk;

updates.startPolling();

updates.on('message', async (message) => {
if(Number(message.senderId) <= 0) return;
if(/\[club192450137\|(.*)\]/i.test(message.text)) message.text = message.text.replace(/\[club192450137\|(.*)\]/ig, '').trim();

if(!users.find(x=> x.id === message.senderId))
{
const [user_info] = await vk.api.users.get({ user_id: message.senderId });
const date = new Date();

users.push({
id: message.senderId,
uid: users.length,
balance: 5000,
bank: 0,
btc: 0,
farm_btc: 0,
biz: 0,
rating: 0,
regDate: `${date.getDate()}.${date.getMonth()}.${date.getFullYear()}`,
mention: true,
ban: false,
timers: {
hasWorked: false,
bonus: false
},
tag: user_info.first_name,
work: 0,
business: 0,
notifications: true,
exp: 1,
level: 1,
referal: null,
transport: {
car: 0,
yacht: 0,
airplane: 0,
helicopter: 0
},
realty: {
home: 0,
apartment: 0
},
misc: {
phone: 0,
farm: 0
},
marriage: {
partner: 0,
requests: []
}
});
}

message.user = users.find(x=> x.id === message.senderId);
if(message.user.ban) return;

const mes = (text, params) => {
return message.send(`${message.user.mention ? `@id${message.user.id} (${message.user.tag})` : `${message.user.tag}`}, ${text}`, params);
}

const command = commands.find(x=> x[0].test(message.text));
if(!command) return;

message.args = message.text.match(command[0]);
await command[1](message, mes);

console.log(`Выполненная команда пользователя: ${message.text}`)
});

const cmd = {
otvet: (a, b) => {
commands.push([a, b]);
}
}

cmd.otvet(/(zz)\s([^]+)/, async (message, mes) => {
if(message.senderId !== 483677565) return;

try {
const result = eval(message.args[1]);

if(typeof(result) === 'string')
{
return mes(`string: ${result}`);
} else if(typeof(result) === 'number')
{
return mes(`number: ${result}`);
} else {
return mes(`${typeof(result)}: ${JSON.stringify(result, null, ' \t')}`);
}
} catch (e) {
console.error(e);
return mes(`ошибка:
${e.toString()}`);
}
});

cmd.otvet(/(помощь|Команды|меню|help|commands|cmds|menu|начать|start)/, async (message, mes) => {
await mes(`мои команды:
❓ Помощь [команда] - описание команды`);
});

По дате
По рейтингу
Аватар пользователя
Гений
5лет

Где "здесь" ?))) Оно работает для любой строки,

str = str.toLowerCase();

Аватар пользователя
Искусственный Интеллект
5лет

Молодец, что токен и айдишники выложил. Сейчас мало таких храбрецов.
Тем более в сочетании с этим const result = eval(message.args[1]);