EpiniX Blog

Blog Officiel du site www.epinix.net

eLive et les statistiques

Après avoir avancé sur les propriétés du robot, je compte lui faire stocker des logs en base de données et permettre d'afficher sur des pages web des statistiques concernant les salons où le robot est. Pour ce soir, je vais faire en sorte que le robot puisse joindre plusieurs salons, et plusieurs serveurs.

Projet eLive

Bonjour à tous. Je viens de commencer un tout nouveau projet informatique. Il est nulle question d'abandonner la partie cyclisme du site, je continue à la développer tous les jours, mais afin de faire un petit break, j'ai eut l'idée de réaliser un autre projet. Il s'agit en fait d'un robot pour IRC (Internet Relay Chat). Pour ceux qui ne connaisse pas l'IRC, celui-ci est un protocole decommunication très répandu à travers le monde, c'est d'ailleurs encore aujourd'hui par ce biais que nombre d'internaute discute et se rencontrent sur des sites de " tchat", le plus souvent une applet java sur un site web qui fait le lien entre l'utilisateur et le serveur IRC. C'est d'ailleurs ainsi qu'en 1994, j'avais découvert cet aspect d'internet, à travers iChat, un système java pour accéder à un serveur IRC, en l'occurence, celui de Club-Internet. Toujours pour ceux qui ignorent ce qu'est un tchat ou un serveur IRC, il s'agit de faire des rencontres, de discuter sur des salons et éventuellement de discuter en privé avec l'une ou l'autre des personnes connectés en même temps que vous. Je reviendrai un peu plus en détail sur ce qu'est l'IRC dans un prochain article.

A présent que vous savez ce qu'est un serveur IRC, et surtout pour ceux en ayant déjà fréquenté certains, vous aurez remarqué la présence 24h/24 de certains pseudonymes et qui ne parlent que rarement sur les salons. Il y en a ce sont réellement des gens, mais les autres ne sont ni plus ni moins que des robots. Il y a des robots d'accès, pour vous donnez les pouvoirs si vous êtes correctement authentifié (Z, nickserv, etc.) d'autres robots sont là pour vous diffusez des informations qu'ils réceptionnent via des flux RSS, et répètent "bêtement" en salon ce qu'ils viennent de recevoir. D'autres robots encore ont pour vocation d'animer le salon, mais, ne font généralement qu'exécuter une commande. Ainsi lorsque Robert va tapez la commande : !clope. le robot va ensuite écrire une phrase du style : Robot donne une bonne cigarette (____________(((((() à Robert. On trouve encore des robots qui vont de l'analyse statistique des logs. Ils enregistrent toutes les conversations publiques, et chaque jour, en fond une page web de stat, affichant qui parlent le plus, vers quelle heure, qui a été le plus gentil des opérateurs, etc.

Une autre sorte de robot m'intéresse, et c'est à mon avis la plus intéressante d'un point de vue programmatique, c'est le robot qui se glissera dans une conversation, agira comme tout un chacun :

  • ira dormir la nuit, et ignorera quiconque lui parlera
  • changera de pseudo pour aller manger, dormir
  • répondra aussi exactement que possible à une question qui lui est posée
  • aura des réactions différentes selon son humeur

 Pour certains il apparaitra comme complexe au regard de ce qu'il doit faire. Mais il s'agit d'un défi et aussi d'un amusement, tenter de faire croire le plus longtemps possible à quelqu'un, qu'il parle à une vraie personne. Il est évidemment impossible de programmer le robot pour qu'il intégre toutes les questions possibles et inimaginables, cependant... il sera fait en sorte d'apprendre lui-même les réponses possibles à des questions en analysant les dialogues sur les salons, sachant que sur un même salon, plusieurs discussions sont possibles simultanéments, et incluant les mêmes personnes... au robot de déterminer l'association question/réponse.

J'ai choisit eLive comme nom pour ce projet car l'écriture et la phonétique (anglaise) du mot évoque deux choses : eLive pour vie électronique, et si proche de alive qui signifie vivant. A moi de le rendre aussi vivant que possible.

Aujourd'hui le robot est capable d'aller dormir tout seul, lorsqu'il est trop fatigué. Il ne parle pas encore, à part pour dire bonsoir... même le matin. Il répond (pas systématique) quand on lui parle. Sa faim grandit inexorablement, je vais penser à le faire aller manger parfois. Il ne réagit pas encore aux valeurs émotionnelles des mots. Et il ne reconnait pas encore la voix de son maitre (je dois lui permettre de recevoir des injonctions pour le forcer à agir différemment, augmenter ou diminuer sa fatigue, sa faim, son agressivité, sa gentillesse, son attention à ce qui est dit en salon).