Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
Le blog du CRRIAM

Program E l'interpreteur

14 Mars 2013 , Rédigé par crriam Publié dans #Interpreteur aiml

1 l'interpereteur.

 

L'interpreteur, c'est le moteur, le coeur du programe qui permet de traité l'entré utilisateur et de renvoyer aprés analyse et suivant le code aiml de vos fichiers, une réponse.

 

Comme nous l'avons vu précédement, il existe plusieur interpreteurs aiml. Nous nous sommes beaucoup étendu sur padorabot. Certe, celui-ci permet la facilité du tout fait, mais il a ses défauts : lenteur, inéccécibilité parfois et le GROS bug de fevrier 2013 qui a effacé tout les comptes depuis 2011 ! . Le tchat4D fonctionne tres bien, mais en local seulement, impossible de le mettre sur une page web ! Tout cela pour dire qu'il y a donc un veritable interet a avoir son propre robot sur son propre serveur.

 

2 le program E

 

Attention depuis l'écriture de cet article des changements ont opérés. J'ai créé une version 1.0 du programE permetant de pallier à de nombreux soucis et inconforts de la version précédente. J'y ai passer énormément de temp, mais il peut y avoir des modification a faire, j'attends vos avis ou vos modifs :).

Je barre dans l'article ci dessous ce qui n'ai plus d'actualité et rajoute en surligner ce qui est nouveau.

 

Aujourd'hui, nous allons parler du program Eversion 0.9. Lui aussi à ses avantages et ses inconveignants.

  • Avantages : Permet d'avoir son propre serveur et d'heberger soi même son tchater bot. Possibliter de modifier le statup.xml. Possiblité de declarer ses propres balises. (attention, dans ce cas, vos set aiml seront inutilisable sur un autre moteur. )
  • Inconveignants :

-  Il n'existe malheureusemment que tres peu d'information sur l'utilisation et l'installation du program E et encore moins en français !

- Le program E était un des premiers codé en php.Il souffre de quelques bug, je ne sais pas encore trop lesquels, mais j'y reviendrais lorsque je les aurais identifiés (apparament sur l'utilisation abusive de * et de _ et même leur utilisation tout court  ) j'ai des bug aussi lorsqu'il existe plusieur bot sur la même base de donnée. Impossible de remplacer l'appostrophe par un espace.

- Il faut avoir un hebergeur qui utilise le language php et les bases de données mysql  (et recomander phpmyadmin )

- du fait de son grand age, il n'est pas compatible avec php 5 (il faudrait recoder ça :)

 

Alors pourquoi program E et pas program O (l'autre interpreteur en php ) ?

 

Parce que program O à lui aussi ses défauts : pas compatible avec php 4.4 donc impossible de le mettre pour l'instant sur des hebergeurs comme Free par exemple et probleme avec les accents. Or pour nous français, les accents comme é ou è ou à doivent être reconnus.

 

3 Comment faire, procedure d'installation ?

 

Au premier abord, ça peut paraitre compliqué, pourtant, il n'en est rien !

 

Résumé : - télécharger les fichiers programE

- créer une base de donnée en relation avec votre site internet

- transfèrer vos fichiers programE sur votre site internet

- transférer vos fichier aiml dans le repertoire adéquat.

- Vous amuser :)

 

Application :

tout d'abord il faudra :

 

  • Telecharger une version du program E on la trouve facilement ici, mais je vais essayer de vous en fournir une modifier plus simple a utiliser  dés que je l'aurai terminé :)  

C EST FAIT !

Bon, voila une nouvelle version, j'ai créer une interface de gestion, fixer un bug ou deux, créer un éditeur de fichier en ligne, insérer un generateur de code aiml, créer un programme permetant d'avoir un fichier  chat log contentant l'historique des conversations que votre robot aura etc. vous pouvez telecharger cette version 1.0 en français du program E aiml ici

 

  • Un hebergeur (gratuit :) de site web avec php 4 (pas php5 !), mysql et phpmyadmin pour facilité les choses. Beaucoup le propose, moi j'ai free.

 

 

Créer votre site internet et sa base de donnée :

 

Chez Free, c'est assez simple.

 

Si vous ne l'avez pas déja fait, il faut activé votre compte pour les pages perso, pour cela,  , il suffit d'aller sur Free.fr, de vous connecter avec votre identifiant en allant dans l'onglet Mon compte puis choisir activer votre compte pour les pages perso.

vous obtiendrait un site internet vide avec une adresse de style monsiteinternet.free.fr  (vous remarquerez qu'il n'y a pas de www devant ! c'est normal donc ne les rajoutez pas )

En sachant quand même que si vous ne maitrisez pas ça, vous risquez d'avoir des difficulté pour ce qui suit.

 

pour activé le php et mysql ( la base de donnée), même chose, il suffit d'aller sur Free.fr, de vous connecter avec votre identifiant en allant dans l'onglet Mon compte puis choisir Php - MySQL qui se trouve vers le bas à droite. Cliquer sur activer votre base de donnée et apres je crois 24h d'attente, c'est fait automatiquement.

 

Voila, vous avez votre site internet et votre base de donnée est créer :)

 

Pour y accéder et la géer, vous pouvez, toujours a partir de free, mon compte, cliquer sur le lien gérer ma base de donnée mysql. Cela ouvre phpmyadmin.

 

Là, vous voyer plein de truc ! C'est quoi tout ce bazzare ? Ben en fait, free vous installa en même temps plein de chose, des forums, des generateur de blog comme wordpress, des livres d'or etc etc.

 

Mais on s'en fou de tout ça ! les seuls choses qui vont nous servir c'est le menu du haut, celui là :


Capture-phpmyadmin-copie-1.png

 


Que nous dit-il ?

- Le nom de votre base de donnée, ici : tungstenepour vous ça sera le nom de votre site internet

- L'adresse de votre base de donnée ici : tungstene.sql.free.fr vous ça sera du style monsite.sq.free.fr

 

juste dessous, il y a des onglets: structure, sql, recherche etc.

 

Dans celà, c'est SQL qui nous servira !

 

Ensuite ? 

  (pas mal d'infos tirés de ce site traduction en français )

 

A l'aide d'un client ftp, Il faut transferer votre dossier program E de votre disque dur sur votre espace de stockage.

l'adresse vous est fournit par votre hebergeur. chez free, c'est ftpperso.free.fr

 

Ne vous inquietez pas, il n'y a pas d'emplacement specifique, le programe saura retrouver votre base de donnée sans probleme. vous pouvez donc mettre vos fichiers dans un répértoire specifique comme programE par exemple.

Vous aurez en gros ça :

 

http://nathalielawhead.com/noodles/bot_11.jpg

 

 

Une fois que c'est fait :

regadez dans le dossier sql (ci dessus) que vous venez de charger ,puis

sql > mysql > db.sql
Ouvrez le avec votre navigateur ou avec un editeur de texte comme note pad.  Vous y trouver un script sql qui créera automatiquement les table etc dont vous aurez besoin.


Pour d'exécuter ce script.

 

Toujour dans notpad, Copié l'ensemble du code (ctrl c) ensuite aller dans phpMyAdmin avec votre navigateur puis procédez comme suit ...
Toucher l'onglet SQL (dont on a parlé tout à l'heure ) en haut:

http://nathalielawhead.com/noodles/bot_14.jpg

 

Collez y le script et executez le

 

http://nathalielawhead.com/noodles/bot_13.jpg

Voila, vous avec créer toutes les tables qu'il fallait pour votre robot.C'est finit pour ça.

 

 

 

Parametrage : Retourner sur votre site avec votre client ftp

 

Par défaut, les fichiers aiml et startup.xml sont dans le répertoire aiml. Utilisez le startup.xml fichier inclus dans la distribution. Vous pourez le modifier ou pas, suivant vos préférences. N'effacer pas le fichier new.aiml il est necessaire au fonctionnement de l'editeur de fichier.


Si vous en avez,  téléchargez tous vos fichiers aiml dans le répertoire AIML.

 

Aprés suivant votre client ftp.

Allez directement dans " / /src/admin/dbprefs.php ", et modifier dbprefs.php avec vos informations de base de données (c'est vers la fin du fichier dbpref), ou telecharger votre fichier dbpref, modifier le et re downloder le ficheir a sa place )


Les valeurs que vous devez modifier sont les suivants :

 


$rootdir="/../../aiml/"; pour le version 0.9
$DB_HOST="internal-db.sxxxxx.gridserver.com";
$DB_UNAME="username";
$DB_PWORD="password";
$DB_DB="dbxxxx_programe";

 

Par exemple pour moi :


$rootdir="../aiml/"; deja modifier version 1.0
$DB_HOST="tungstene.sql.free.fr";
$DB_UNAME="tungstene";
$DB_PWORD="password"; votre mots de passe de Free
$DB_DB="tungstene";

 

Notez que src/admin doit être accessible en écriture par le serveur web, car botloader.php va créer un fichier subs.inc . Vous pouvez également créer un fichier vide subs.inc et de faire et le rendre inscriptible.


8) Charger le bot en mémoire A partir de vos accès au site botloader.php ...
Exemple:
http://MYSITE.com/programe/src/admin/botloader.php

Ou plus simple, vous passer par l'interface d'administration je vous explique comment un peut plus bas ;)

Pour charger le set AIML dans la base de données. Ça va prendre un peu de temps alors soyez patient!
Sur un PIII double, il faut compter environ. 1 minute pour 10.000 catégories.


Si votre PHP est exécuté en mode sans échec, c'est le cas chez Free, vous ne pourrez charger que pendant 30 seconde, donc soit vous faite moins de fichiers, soit vous devrez  utiliser botloaderinc.php pour charger les fichiers aiml les uns aprés les autres. (dans ma version du program E, j'ai modifier le fichier botlaoader.php pour que le chargement manuel soit automatiser par un script javascrip sans se cogner au safe mode off  de Free, c'est plus long, mais moin qu'à la main :).


Vous obtienderez enfin ce ci a la variante pret qu'il vous indiquera 0 categories into database. Pas parceque ça n'a pas fonctionné, mais parcequ'avec la version 1 du programE, il charge les fichiers un a un jusqu'a ne plus en trouver, donc le dernier fichier n'insert aucun aiml dans la base :)  :

botloaderinc

Attention !
Notez que chaque fois que vous chargez botloader.php il supprime toutes les tendances et les modèles que vous avez dans votre base de données, puis charges de nouveaux à partir des fichiers aiml.


9) Parler au robot :


Si vous avez mis l'ensembles des fichiers dans un dossier "programe" sur votre site
http://MYSITE.com/programe

 

 10) Administrer votre robot :

 

aller sur

http://MYSITE.com/programe/src/admin/main.html

 

et vous aurez cette page d'où vous pourrez gérer entièrement votre robot sans passer par un logiciel ftp

 

Capture-du-2013-03-16-22-57-28.png

 

Je vous conseil de proteger ce répertoire avec un fichier .htaccess de façon a ce que seul vous puissiez aller sur cette page :)

 

 

 

Pour plus d'option : interface flash etc. voir ici.

 

 

A VENIR

J'essaye de fabriquer (dans ma version du program E ) une page web d'administration, pour que l'on puisse le configurer plus simplement, mais aussi avoir un éditeur de fichier en ligne de façon a ne pas avoir a passer par un logiciel de ftp, et une interface de tchat plus joli.

Si quelqu'un veut aussi se pencher sur le réencodage pour la compatibilité avec php 5, il est le bien venu :)

 

 

Amusez vous bien :)

 

Bruno Claret

 

Pour infos, une version 2.0 du program E tournant sur php 5 avec pleins de nouveautés est a télécharger ici :

 

http://mctarek2.free.fr/phorum/read.php?8,608

 

 

 


Partager cet article

Repost 0

Commenter cet article

mctarek 15/04/2013 12:10

Pour info, program-e v2FR est dispo sous 2 versions, une optimisée pour free.fr (php 5.1 sans json_encode) et une optimisée sous PHP 5.4. Tout est téléchargeable sur
http://mctarek2.free.fr/phorum/read.php?8,608
avec de nombreux bugs fixés et un fichier de présentation en pdf. mctarek

mctarek 25/03/2013 12:54

Salut. Program-e 1.0 porté sous php 5.x avec la possibilité de mettre à jour la BDD par fichier aiml (suite modification). mctarek

crriam 28/03/2013 11:03



Super, n'hesite paas à nous dire où l'on peut télécharger cette nouvelle version



mctarek 22/03/2013 21:59

Bonjour. Merci pour cette initiative bienvenue d'autant plus que program-E est un projet actuellement abandonné. Je me penche actuellement sur la conversion en php5, et j'obtiens un bon résultat.
Je continue mes tests et espère le finaliser d'ici ce week end. mctarek

crriam 28/03/2013 11:02



Ok tiens nous au courant