0
var settings = {
channels : ["#channelname"],
server : "irc.twitch.tv",
port: 6667,
secure: false,
nick : "myBot",
password : "oauth:numbers"
}

var irc = require("irc");

var bot = new irc.Client(settings.server, settings.nick, {
channels: [settings.channels + " " + settings.password],
debug: false,
password: settings.password,
username: settings.nick
});


bot.say(settings.channels, "I'm here!");

console.log("Connected");

これは昨日私にとってはうまくいきましたが、今ではボットがチャンネルにいることさえ示していません。

コマンド ラインで、ノード scriptname.js を使用してスクリプトを開始すると、「接続済み」と表示されます。

私の設定は間違っていますか?

つながる時もあれば、繋がらない時もあります。実行中のボットの値は次のとおりです。 ここに画像の説明を入力

4

1 に答える 1

0

これは、接続が非同期で発生しており、接続が発生するのを実際に待っているわけではないためです。すぐに「接続済み」と表示されますが、実際に接続したり、接続が発生するのを待ったりしたことはありません。bot.say実際に接続するまで何もしません!

接続されているかどうかを検出する適切な方法は、次のようにすることです。

bot.on('registered', function(message) {
  console.log("Connected");

  bot.say(settings.channels, "I'm here!");
});
于 2014-07-30T20:49:09.323 に答える