• Billet écrit dans : Découverte PHP 31.08.2008 Aucune réponse à cet article.

    Bonjour, j’ai pu découvrir comment créer un bot IRC en PHP grâce à la communauté IRCienne de symfony. (Qu’est ce qu’IRC ? Qu’est ce qu’un Bot ?). Tout est expliqué sur cette page.

    Squattant en ce moment le chan (salon de discutions) de symfony-fr, je passe mon temps à remercier les uns les autres. Depuis peu même j’arrive à aider les nouveaux ^^. Je me suis donc dit que ca serait bien d’avoir un système pour compatibiliser le nombre de « merci » par personnes et d’en sortir quelques statistiques.

    Ainsi est née le bot qui sert à avoir une système à points. Chacun peut donc donner, ou enlever un point, et le robot fera le compte.

    Fonctionnement

    Après quelques discutions sur le channel de symfony, j’ai mis au point 4 petites commandes que le bot va interpréter :

    !point guillaume
    !malus guillaume
    !bonus guillaume
    !total

    Comment ca marche ?

    Le bot est écrit en PHP 5 et se lance via une ligne de commande du style :

    php -f utilisation.php

    Il n’y a que peu de classes pour le faire fonctionner :

    1. Une classe de connexion qui s’occupe de créer un flux de donnée (une socket via fsockopen), de se connecter à un channel irc,  de pouvoir transmettre des commandes IRC et de récupérer ligne par ligne ce qui se passe sur le channel.
    2. Une classe principal qui permet de garder le flux de donné ouvert (et donc fait en sorte que le bot reste sur le channel IRC), et qui permet de lancer des Plugins. Son rôle tient plus d’un controlleur PHP que d’une classe à mon sens.
    3. Une interface et une classe de base pour la gestion des Plugins. En fait un plugin est une classe qui contient le coeur d’un programme et permet de réagir vis à vis d’un évènement sur le channel. Un plugin fait donc office d’observateur puisqu’il permet d’écouter des évènements mais il s’obverse lui même vu qu’il traite ces évènements et y répond.

    J’ai donc créer un plugin et modifier un temps soit peu la classe principal pour avoir à tout moment la liste des utilisateurs du channel. Au final le code n’est pas bien compliquer et bien long (330 lignes à tout casser). Les points sont stocker dans une base de données local (voui, pas besoin de serveur en ligne vu que l’on lance le bot en local on peut accèder à une base en local ^^). Quelques random rendent le bot sympathiques pour avoir des phrases de réponses un peu plus humaine.

    Je ne vous donne pas le code source de cette petite application car je le juge « pas très propre » et je pense y faire encore pas mal de modifications dessus :)

    Pour la suite

    Je prévois de faire une application symfony pour ajouter/modifier des phrases de réponses clées. Faire des graphiques de statistiques, et ré-initalisé la base de données à souhait. Tout n’est pas encore fixé, mais j’aimerais bien une console d’administration du bot à distance sympathique :)

    Voilà voilà

    Billet écrit dans : Découverte PHP 31.08.2008 Aucune réponse à cet article.
  • Billet écrit dans : About me :) 31.08.2008 Aucune réponse à cet article.

    Bonjour,

    J’ouvre ce blog pour deux raisons :

    1. Demain j’attaque le boulot dans mon entreprise d’accueil pour cet année d’alternance. J’aimerais donc avoir un endroit où je pourrais partager mes découvertes de cette année.
    2. J’ai déjà crée un système de blog http://www.oni-ecchi.info/labo/portefolio mais même si le système fonctionne, je ne l’aime plus vraiment. Et pis je ne voulais pas me prendre la tête, alors un bon wordpress, un joli template et hop c’est réglé comme du papier à musique.

    Je vais essayer d’avoir un rythme de pulication régulier. Pour en savoir plus sur moi y a une rubrique qui existe. Alors je ne vais pas m’éterniser ici :)

    Billet écrit dans : About me :) 31.08.2008 Aucune réponse à cet article.
  • Billet écrit dans : About me :) 31.08.2008 Aucune réponse à cet article.

    Commencer un blog sans montrer quelques réalisations çà se fait pas :) Tant qu’à faire, autant vous présenter mes derniers projets, les sites html 4.0 tout moisi vous devez vous en foutre ^^


    Décembre 2007-Janvier 2008 http://meta-blog.oni-ecchi.info

    Ce projet a été fait décembre 2007-janvier 2008 pour avoir une réalisation alliant à la fois graphisme et développement pour montrer lors de ma recherche de stage. Le principe est qu’une inscription suffisent pour pouvoir bloguer dessus, et il y a une gestion de partage de billet avec les membres pour pouvoir des co-auteurs.

    Technologie utilisé : PHP 5 / Ajax (prototype et scriptaculous)

    Janvier 2008-Fevrier 2008 http://www.rad-yoh.fr

    Quelques semaines après ce blog collaboratif, j’ai pu décliner l’architecture MVC que j’avais mis en place afub de créer une plateforme (modeste) de blog ainsi qu’un site entièrement administrable.

    C’est la 1er fois que je travaillais de pair avec un graphiste/intégrateur HTML/Flasheurs (rien que ça ^^). Au final l’architecture et le code PHP utilisé sont assez moyen j’avouerais.

    Technologie utilisé : PHP 5 / Ajax (prototype et scriptaculous)

    Mars 2008 – Mai 2008 : L’intranet de mon DUT

    Projet collaboratif dans le cadre d’un projet tutorer. Je me suis occupé de la BDD, de l’architecture, du code PHP et de l’intégration final du design.

    Un dossier de conception sera disponible en téléchargement dans quelques temps. (le temps de le retrouver :))

    En gros le principe c’est de donner à des élèves un outil pour effectuer des voeux d’affectations à des projets souhaité (ceux ci sont définit par l’administrateur ou par un professeur). L’admin dispose d’un outil d’affectation (ajax / JS) pour définir les affectations. En parralle ce site sert aussi d’espace d’échange (news, documents, etc) entre professeurs et élèves.

    Pour le tester :

    • login : utilisateur_15 passe : pass pour un compte « élève ».
    • Le compte « prof » : login : prof passe : pass
    • Le compte admin n’est donné que sur demande :)
    Technologie utilisé : PHP 5 / Ajax (prototype et scriptaculous)

    Mai 2008 – Juillet 2008 : Intranet Client

    Création de l’intranet Client d’une agence web de Lyon. Refonte complète de l’existant.

    Au programme :

    • Mise en place de statistique ( Piwik )
    • Création de script de tracking email / visite pour chacun des clients.
    • J’ai du interfacé avec des rendus HTML de logiciels de réferencements.
    • L’Intranet est completement multi-langue (1er fois ^^)
    • Interface au maximum Ajaxé
    • Programme de création de newsletter et d’envoi différé. (Chouette les gabarits d’emails à parser ..)

    Un dossier de conception est disponible sur demande.

    Technologie utilisé : PHP 5 / Ajax (Jquery)
    Billet écrit dans : About me :) 31.08.2008 Aucune réponse à cet article.
CV Guillaume chave