Текстовые команды
caution
Текстовая команда зависит от содержания сообщения, но, к сожалению, Discord планирует удалить содержание сообщений для проверенных ботов и приложений, имеющих 100 и более серверов. Следовательно, вы не можете использовать текстовые команды, если ваш бот не может получить доступ к содержимому сообщения.
[Прочитать сообщение в дискорде здесь] (https://support-dev.discord.com/hc/en-us/articles/4404772028055-Message-Content-Access-Deprecation-for-Verified-Bots)
Создайте простой обработчик команд для сообщений с помощью @TextCommand
.
src/app.service.ts
import { Injectable } from '@nestjs/common';
import { Context, TextCommand, TextCommandContext, Arguments } from '@globalart/nestcord';
@Injectable()
export class AppService {
@TextCommand({
name: 'ping',
description: 'Ping command!',
})
public onPing(@Context() [message]: TextCommandContext) {
return message.reply('pong!');
}
}
Аргументы
Вы также можете использовать аргументы в текстовых командах. Аргументы - это слова после имени команды.
src/app.service.ts
import { Injectable } from '@nestjs/common';
import { Context, TextCommand, TextCommandContext, Arguments } from '@globalart/nestcord';
@Injectable()
export class AppService {
@TextCommand({
name: 'echo',
description: 'Echo command!',
})
public onEcho(@Context() [message]: TextCommandContext, @Arguments() args: string[]) {
return message.reply(args.join(' '));
}
}