首页 > 解决方案 > 无法使用 Webhook 执行 Discord Bot 命令

问题描述

我正在使用 discord.net 对 discord bot 进行编码。一切正常,但是当我想用 webhook 执行命令时,它不起作用。我发现了错误,但我不知道如何解决。我需要像 SocketWebhookMes​​sage 这样的东西

 private async Task OnMessageReceived(SocketMessage arg)
        {

            if (arg.Author.Id == _client.CurrentUser.Id) return;      
            var message = arg as SocketUserMessage;
            var argPos = 0;
            if (!message.HasStringPrefix(_config["prefix"], ref argPos) && !message.HasMentionPrefix(_client.CurrentUser, ref argPos)) return;
            var context = new SocketCommandContext(_client, message);
            await _service.ExecuteAsync(context, argPos, _provider);

        }

我只能使用 SocketUserMessage 接收消息,但 webhook 消息不是用户消息。SocketCommandContext 也只允许 SocketUserMessage。谢谢。

标签: c#discordbots

解决方案


推荐阅读