Modify

Ticket #33 (closed defect: invalid)

Opened 4 years ago

Last modified 4 years ago

délai entre identification nickserv et JOIN

Reported by: thaeron Owned by: thaeron
Priority: minor Milestone:
Component: kernel Version:
Keywords: Cc:

Description (last modified by thaeron) (diff)

paradox a rapporté un petit problème qui arrive sur le serveur où il utilise le bot : le nickserv est trop lent pour identifier le bot et du coup lorsqu'il join il n'est pas op automatiquement.
Malheureusement le nickserv ne fait pas parti du protocole et donc vérifier que ça a fonctionné se résume à se fier à la notice qu'il envoie (on ne peut pas se fier au message puisqu'il est écrit pour les humains et donc doit varier d'un service à l'autre sans compter les traductions).

La solution sagwinne consisterait à mettre un délai (customisable) entre l'envoi au nickserv et JOIN mais ça ne garantirait rien du tout.

L'autre solution consisterait à mettre les JOIN dans un module afin de bénéficier des handlers sur notice. Cependant on ne peut pas écarter l'hypothèse que sur certains serveurs le nickserv n'envoie pas de confirmation (si c'est prévu comme ça ou le nickserv est down) auquel cas on pourrait mettre aussi un timeout qui enverrait les JOIN même si le nickserv ne répond pas.
Nonobstant il serait intéressant de mettre tout ce qui concerne la "post-connexion" dans un module afin d'affranchir un peu plus le kernel du protocole IRC.

Attachments

Change History

comment:1 Changed 4 years ago by thaeron

  • Description modified (diff)

comment:2 Changed 4 years ago by thaeron

  • Status changed from new to closed
  • Resolution set to invalid

Après avoir vu le problème moi-même, j'ai compris qu'en réalité le serveur faisait joindre automatiquement le channel et ce JOIN est traité avant que le bot ait eu le temps de s'identifier (pourtant la commande est envoyée après réception du "001" et non du "376" (fin du MOTD). Il n'y a donc aucune solution codable.
La seule solution est la suivante :
dans le fichier de configuration vérifier qu'il y'a bien le module entree de chargé automatiquement

module=entree

puis rajouter :

entree=PRIVMSG ChanServ :op #nom_du_channel nick_du_bot
View

Add a comment

Modify Ticket

Action
as closed
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.