rss

Avancement de CirC (ou devrais-je dire Monologue ?)

Category : C#, Circ

Et voilà des nouvelles du front. J’ai eu pas mal de désagrément au cours de cette dernière semaine en essayant de tout faire marcher. Le principal problème auquel je me suis heurté c’est des problèmes d’identification aux serveurs IRC.

Un peu de background. Pour se connecter à un serveur IRC il y’a 4 étapes. D’abord on se connecte au serveur par l’entremise d’un simple socket (comme toute connection finalement) puis on envoie trois messages : un message PASS (facultatif) qui contient un mot de passe de connection, un message NICK qui contient le pseudonyme de l’utilsateur (et qui sert ensuite au serveur à nous rerouter des messages) et enfin un message USER qui contient des infos utiles (le nom réel entre autres).

Problème les 3/4 du temps le serveur IRC d’Epiknet m’envoyais un foutu message comme quoi il n’arrivait pas à m’identifier (erreur 451). J’ai eu beau tout essayé (et là vous pouvez me croire j’ai essayé un sacré paquet de possibilité : trafiquage du buffer, utilisation de thread complice, des appels à Sleep() etc…) pas moyen de me connecter correctement (autant dire que j’étais content quand rarement ça marchait). C’est pourquoi, finalement exaspéré, j’ai décidé de me la jouer brute force et de bombarder le serveur de ces trois messages (PASS, NICK et USER) jusqu’à ce qu’il m’accepte ce qui semble fonctionner pour l’instant (on croise les doigts). Histoire de quand même montré l’avancement j’ai fait un petit screen de l’interface temporaire (sert uniquement à se connecter à Epiknet et à parler sur le chan #sdz d’autant que rien n’est parsé :p) :

Et comme le titre de la fenêtre le laisse supposé je me tâte pour changer le nom de mon client pour Monologue (référence au monologue qui est un type de discours, j’ai pas dit que vous étiez bête hein :p ). Petite histoire en fait à la base du changement de nom. Je cherchais à avoir un VCS (Version Control System) afin de garder une trace de tous mes changements et comme Mono.Xna est récemment passé sur Google Code Hosting et que ma foi ça semblait bien je me suis dit que j’allais y ouvrir un compte. Problème : ce scregneugneu de site trouve le moyen de vérifier sur SourceForge si le projet que vous êtes entrain d’enregistrer n’existe déjà pas et il bloque l’inscription le cas échéant, et devinez quoi ? Le nom Circ est déjà pris sur SourceForge. En fait le truc qui m’a cassé c’est que ce projet n’a absolument rien produit (code, page web, nada) et qu’il est inactif depuis 2004. Donc bon bluestorm m’a (gentiment) suggéré ce nom de Monologue qui est déjà utilisé par le Planet Mono mais qui finalement me plaît pas mal.

PS : finalement j’ai pris Bazaar comme VCS qui a le mérite d’être décentralisé et donc de ne nécessiter aucun serveur d’appoint.

EDIT: Bon décidant que l’UI était vraiment … pas top :p j’ai refait une petite version à checker ici : http://netherilshade.free.fr/Capture-7.png .
Prochaine étape : updater correctement la liste des personnes présente dans le chan Ca c’est bon, Youpi

Post a comment