Domanda

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");
.

Questo ha funzionato ieri per me, ma ora non mostra il bot è anche nel canale.

Nella riga di comando Inizio lo script con il nodo scriptname.js e dice "connesso".

La mia configurazione è sbagliata?

A volte si connette, altri no.Ecco i valori dei bot per quando è in esecuzione: Inserire l'immagine Descrizione qui

È stato utile?

Soluzione

Questo perché la connessione sta accadendo asincroni e non stai effettivamente aspettando che si verifichi una connessione.Stampierà immediatamente "connesso", ma non hai mai effettivamente collegato o aspettato ancora una connessione.bot.say non farà nulla finché non sei effettivamente connesso!

Il modo corretto per rilevare se sei connesso è quello di fare qualcosa del genere:

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

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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top