onMessage(...)
Jdsfighter が言ったように、PircBot スーパークラスのメソッドを使用する必要があります。このメソッドは、メッセージがチャネルに送信されるたびに呼び出されます。ボットをチャットに反応させることは、IRC ボットを作成する際のアルファとオメガであるため、これまでにこれを理解していると思います。
モデレーター (IRC 用語でのオペレーター) に関して言えば、Twitch IRC サーバーは、PircBot が完全には理解できない方法で動作しUser.isOp(...)
、User クラスからのメソッドでうまくいきませんでした。私が成功したのは、Bot クラス (メイン クラスではない) に以下を含めることです。
Set<String> OPs = new HashSet<String>();
protected void onUserMode(String channel, String sourceNick, String sourceLogin, String sourceHostname, String recipient) {
recipient = recipient.split(" ")[2];
OPs.add(recipient);
}
このメソッドは、次のように、コンソールに MODE で始まる行が表示されるたびに呼び出されます。
jtv MODE #channel +o moderatorName
ここで、受信したメッセージが で始まるたびに呼び出されるメソッドを作成し、"!poll"
メッセージの送信者が OP セットにあるかどうかを確認する必要があります。
onMessage()
メソッドに配置する概要を次に示します。
if (message.toLowerCase().startsWith("!poll") {
if (OPs.contains(sender)) {
//TODO Add body
}
}
ここで、"!Poll" の後の行の残りをキャッチし、さまざまなポーリング オプションに関するメッセージをチャネルにポストするコードを作成する必要があります。
String[]
明らかに、代替案とそれぞれの投票数を保存する場所が必要です。 oneと oneの 2 つの配列だけをお勧めしますint[]
。