Olen tässä koodaillut pythonilla ircbottia. Ongelmaksi on kuitenkin muodostunut saada botti parttaamaan kanavalta käyttäen irclibiä. Jos se yleensäkkään on mahdollista niin miten se tapahtuu.
Pythonia en sen kummemmin osaa, mutta irclib.py-tiedostoa lueskeltuani arvaisin seuraavanlaista:
bot.part(bot, "channel")
Ja funktiohan on määritelty irclibissä näin:
def part(self, channels, message=""):
"""Send a PART command."""
if type(channels) == types.StringType:
self.send_raw("PART " + channels + (message and (" " + message)))
else:
self.send_raw("PART " + ",".join(channels) + (message and (" " + message)))Tuon part-metodin toteutuksen perusteella:
bot.part('channel')tai
bot.part(['channel1', 'channel2'])
Pythonissa luokan metodia kutsuttaessa ensimmäiseksi parametriksi tulee automaattisesti viittaus itse olioon, joten tuota self-parametria ei anneta itse. channels-parametri voi olla joko merkkijono tai esim. lista.
Onpa muuten hieman ruma kikkailu tuon andin kanssa. Eli jos message-parametri ei ole tyhjä merkkijono, andin oikeanpuoleinen lauseke evaluoidaan myös ja koko and-kohdan arvoksi tulee se.
Aihe on jo aika vanha, joten et voi enää vastata siihen.