質問するログイン新規登録
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

解決済

1回答

2201閲覧

C#でのDiscordBot制作

aki1005

総合スコア1

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

0グッド

0クリップ

投稿2022/12/10 17:49

編集2022/12/10 17:51

0

0

前提

Discord.Netを使用してc#でDiscordのチャットボットを作成しています。

おはようと送られてきたらおはようと返すだけの機能を実装しようとしているのですが、
本文の内容を読み取ることができません。

ソースコード

using System;
using System.Threading;
using System.Threading.Tasks;
using Discord;
using Discord.WebSocket;

namespace Example
{
class Program
{
private readonly DiscordSocketClient _client;

static void Main(string[] args) { new Program().MainAsync().GetAwaiter().GetResult(); } public Program() { _client = new DiscordSocketClient(); _client.Log += LogAsync; _client.Ready += ReadyAsync; _client.MessageReceived += MessageReceivedAsync; } public async Task MainAsync() { await _client.LoginAsync(TokenType.Bot, "トークン"); await _client.StartAsync(); await Task.Delay(Timeout.Infinite); } private Task LogAsync(LogMessage log) { Console.WriteLine(log.ToString()); return Task.CompletedTask; } private Task ReadyAsync() { Console.WriteLine($"Logged In"); return Task.CompletedTask; } private async Task MessageReceivedAsync(SocketMessage message) { if (message.Author == null) { return; } // 本文があるかチェック if (String.IsNullOrEmpty(message.Content)) { await message.Channel.SendMessageAsync("本文がありません"); } if (message.Content == "おはよう") { await message.Channel.SendMessageAsync("おはよう"); } } }

}
c#

試したこと

ブレイクポイントを使用して、データがとってこれているかを確認しましたが何を入力してもmessageプロパティ内のContenには、
「""」このようになっておりボットからは「本文がありません」というメッセージが帰ってきているだけで、データが入ってきません。

補足情報

現在トークンは仮のものを載せています
VisualStudio2017を使用

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

YAmaGNZ

2022/12/10 22:19

Authorとか他の情報は取れているのですか?
aki1005

2022/12/11 01:48

AuthorとChannelは正しく入っています
guest

回答1

0

ベストアンサー

Can't get any Discord Messages from Users
こちらをご覧ください。

また現状のプログラムではボットの発言にも反応するので、ボットの発言は無視するようにしてください。

投稿2022/12/12 15:01

編集2022/12/12 15:02
YAmaGNZ

総合スコア10688

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aki1005

2022/12/13 15:21

サイトに沿ってやったところ解決しましたありがとうございます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問