25
Installer et utiliser Huginn Outil de veille open source Par Antoine Henry – [email protected]

(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

  • Upload
    cellie

  • View
    643

  • Download
    6

Embed Size (px)

Citation preview

Page 1: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Installer et utiliser HuginnOutil de veille open source

Par Antoine Henry – [email protected]

Page 2: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Introduction 1/2

Après la fermeture de Yahoo Pipes, comme beaucoup de personnes faisant de

la veille, j’ai cherché un moyen de remplacer cet outil simple et puissant.

Huginn est une solution de substitution très intéressante Yahoo Pipes, l’outil

propose en effet les mêmes fonctions de bases (notamment agrégation et

traitement des flux RSS), mais il propose aussi de se connecter à de nombreux

services en ligne (Twitter, météo, XKCD, …). Huginn fonctionne grâce à des

agents qui vont accomplir des actions bien précises qui vous permettront de

gérer votre veille comme bon vous semble.

Huginn requiert un serveur (préférez un serveur sur linux) sur lequel est installé

Ruby, MySQL et Git (nous n’aborderons pas l’installation des ces dépendances

techniques dans ce tutoriel, de nombreuses ressources sont disponibles en

ligne). Cet outil nécessite la maîtrise de certaines notions techniques mais je vais

m’efforcer à faire en sorte que ce tutoriel soit simple et accessible pour tous.

Page 3: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Introduction 2/2

Huginn est notamment développé par Andrew Cantino. Les sources sont

disponibles sur Github, où l’outil est régulièrement mis à jour.

Les développeurs sont très réactifs, en cas de problème n’hésitez pas à les

contacter. Vous pouvez aussi participer au développement de l’outil,

Github étant une plateforme collaborative pour le code informatique.

Passons maintenant à l’installation de Huginn sur notre serveur. (Les

commandes à faire depuis le terminal ainsi que le nom des fichiers sont en

italique).

Page 4: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Installation depuis les sources

Une fois votre serveur et MySQL installés et configurés, nous allons pouvoir

commencer par installer Huginn.

Placez vous dans le dossier où vous souhaitez installer Huginn, puis avec un

terminal, nous allons lancer la commande suivante :

git clone https://github.com/cantino/huginn.git

Elle va permettre de récupérer Huginn depuis Github et de l’installer sur

votre serveur.

Nous devons maintenant configurer le fichier .env présent dans le dossier

qui vient d’être créer suite à notre commande. Vous pouvez utiliser votre

éditeur de texte préféré (vi, vim, emacs, …)

Page 5: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Configuration de Huginn

Depuis le dossier Huginn, faites cp .env.example .env. Nous allons maintenant éditer le fichier .env qui vient d’être créé.

Vous verrez dans le fichier cette ligne : APP_SECRET_TOKEN=REPLACE_ME_NOW!

Pour créer ce token, ressortez du fichier et faites depuis le terminal rake secret pour générer le code a insérer à la place de REPLACE_ME_NOW

Dans DOMAIN, si vous êtes sur un serveur, remplacez localhost par l’adresse ipde votre serveur (via la commande ifconfig ou utilisez la même ip que vous utilisez pour vous connecter en ssh à votre serveur).

En dessous de DOMAIN, vous pouvez configurer le port sur lequel écoute Huginn (par défaut 3000).

Les valeurs de DOMAIN et PORT seront à mettre dans la barre URL de votre navigateur pour accéder à l’interface d’Huginn (ex 192.0.0.1:3000)

Vous pouvez enlever aussi le # devant RAILS_ENV=production pour préparer le déploiement d’Huginn.

Page 6: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Configuration de Huginn

Une fois cette partie configurée, nous allons passer à la connexion entre Huginn et MySQL.

DATABASE_ADAPTER=mysql2 (on ne touche pas)

DATABASE_ENCODING=utf8 (on ne touche pas)

DATABASE_RECONNECT=true (on ne touche pas)

DATABASE_NAME=huginn_development (il faut avoir créé dans MySQL la base de données huginn_development ou une autre base et la renseigner ici)

DATABASE_POOL=10 (on ne touche pas)

DATABASE_USERNAME=root (on remplace si besoin si le nom d’utilisateur pour MySQL n’est pas root)

DATABASE_PASSWORD="" (mot de passe du compte (ici mot de passe du compte root de MySQL)

Page 7: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Configuration de Huginn

Après cela, vous allez pouvoir configurer vos utilisateurs (si vous souhaitez

l’ouvrir à d’autres utilisateurs) et votre compte mail (si vous souhaitez

recevoir des notifications par e-mail).

Il est possible de connecter Huginn avec de nombreux services en ligne

(Twitter, Thirty, Github, Tumblr, Dropbox, Wunderlist et Evernote sont

disponibles). Pour cela, vous devez mettre vos clés d’accès. Prenons

l’exemple de twitter.

Rendez-vous sur apps.twitter.com et connectez vous avec votre compte.

Vous allez créer une application pour Twitter. Donnez lui un nom, et une

description. Pour la Callback URL, il faut que vous saisissiez : http://<votre ip

ou domaine>/auth/twitter/callback (de cette manière Huginn va pouvoir

se connecter à votre compte Twitter).

Page 8: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Configuration Twitter

Page 9: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Configuration de Huginn

Maintenant que vous avez votre API KEY et API SECRET, vous pouvez saisir

ces clés dans le fichier .env.

Voici les liens vers les autres services pour créer vos applications pour y

accéder :

Dropbox

Wunderlist

Basecamp

Tumblr

Voilà, Huginn est configuré, nous allons pouvoir finaliser son installation.

Page 10: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Fin de l’installation

Notre fichier .env est désormais bien configuré, nous allons pouvoir maintenant faire les commandes suivantes :

bundle install --deployment --without development test (attention, si vous avez installé une version 2.1 ou 2.2 de ruby, vous allez avoir une erreur. Il faudra rajouter dans le fichier Gemfile :

if RUBY_VERSION =~ /2.2/

Encoding.default_external = Encoding::UTF_8

Encoding.default_internal = Encoding::UTF_8

end

if RUBY_VERSION =~ /2.1/

Encoding.default_external = Encoding::UTF_8

Encoding.default_internal = Encoding::UTF_8

end

Page 11: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Fin de l’installation

Après que les dépendances après avoir installer les dépendances , nous

allons créer et structurer la base de données :

bundle exec rake db:create RAILS_ENV=production

bundle exec rake db:migrate RAILS_ENV=production

bundle exec rake db:seed RAILS_ENV=production

bundle exec rake assets:precompile RAILS_ENV=production

Enfin, notre instance Huginn est prête à démarrer.

Page 12: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Lancement d’Huginn

Pour vérifier que tout se passe bien, depuis votre terminal faite :

bundle exec foreman start –p 3000 (si votre port d’écoute est le 3000)

Allez maintenant sur DOMAIN:PORT et normalement vous devriez voir

Félicitations, votre instance Huginn fonctionne !

Page 13: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Déployer Huginn

Sur Ubuntu ou Debian

Editer le fichier Procfile pour enlever les # devant web: bundle exec rails server -p ${PORT-3000} -b ${IP-0.0.0.0} et jobs: bundle exec rails runner bin/threaded

Faites après bundle exec rake production:export

Puis sudo cp deployment/logrotate/huginn /etc/logrotate.d/huginn

Et enfin sudo bundle exec rake production:status

Pour demarrer ou éteindre votre instance d’Huginn, vous n’aurez besoin que de cescommandes sudo bundle exec rake production:start et sudo bundle exec rake production:stop

Sur FreeBSD :

Si comme moi, vous utilisez FreeBSD, cette commande fonctionne très bien :

daemon –fr bundle exec foreman start –p 3000

Page 14: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Utilisation d’Huginn

Page 15: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Première connexion

Votre instance Huginn est configurée ? Parfait allez sur DOMAIN:PORT et

cliquez sur Login.

Les identifiants par défaut sont : admin/password

Vous pouvez (devez !) les changer après dans account -> user

management

Page 16: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

L’interface d’Huginn

Onglet pour

accéder à

l’ensemble de nos

agents

Onglet pour

accéder à

l’ensemble de nos

scenarii

Services externes

auxquels Huginn est

connecté

Gestion du compte

et des utilisateurs

Nombre d’agents et

accès rapide vers

ceux-ci

Nombre

d’évènements créés

par nos agents

Page 17: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Agent/Scenario

Que sont les agents et les scenarii ?

Les agents vont permettre de faire une action bien précise. Il existe de nombreux agents (comme RSS Agent, Twitter Stream Agent, Trigger Agent, ….). Quand vous demandez à créer un nouvel agent, l’ensemble des agents est proposé. Si vous ne trouvez pas votre bonheur dans la liste, vous pouvez suggérer sur Github les services/fonctions que vous souhaiteriez voir implémenter.

Les agents vont faire une action et envoyer le résultat de cette action vers d’autres agents.

Exemple : Un RSS agent va récupérer un flux RSS, il va pouvoir l’envoyer dans le Trigger Agent, qui va filtrer en fonction de la valeur que nous avons défini et va transmettre les résultats filtrés au Data Output Agent, qui vous permet de générer un flux RSS des résultats filtrés.

Les scenarii vont vous permettre de regrouper ensemble plusieurs agents pour mieux les gérer (actions de masse) et avoir une vision schématique de leur comportement

Page 18: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Créer son premier agent

Lors de la création d’un agent, un texte apparaît à droite et décrit l’agent,

ses fonctions et la syntaxe qu’il faut utiliser pour bien le configurer.

Je vais créer un agent de type RSS

Typologie de l’agent

Nom de l’agent (pensez à les nommer de manière bien

distincte pour vous retrouvez dans vos agents

Ici, on défini la fréquence à laquelle l’agent va fonctionner.

Ici, il va aller une fois par jour consulter le flux RSS pour voir s’il y

a de nouvelles entrées

Temps que vous souhaitez garder les « évènements » (1

évènement = 1 nouvelle entrée dans un flux RSS par exemple)

dans votre base de données. /!\ vous pouvez rapidement

vous retrouver avec votre BDD saturée.

Ici, vous pouvez sélectionner les agents qui vont recevoir le

résultat de l’agent créé.

Page 19: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Créer son premier agent

Pour ajouter de

nombreux flux RSS, vous

devez sélectionner

Toggle View et mettre

vos flux comme sur

l’exemple (pas de

virgule après le dernier

flux RSS et on ferme le

crochet ] et virgule

après le crochet )

Vous pouvez enregistrer

ou tester à blanc votre

agent pour vérifier qu’il

n’y a pas d’erreur.

Page 20: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Filtrer les données de notre premier

agent

Typologie de l’agent

Ici, je mets en source mon agent créé

précédemment et je coche pour que

les résultats du 1er agent soient

propagés de suite dans mon nouvel

agent.

Page 21: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Filtrer les données de notre premier

agent

Si vous souhaitez garder les

évènements, mettez sur true

Le filtre marche en se basant sur les

regex (même si d’autres modes

peuvent être utilisés). Dans value, il

faut mettre votre regex (avec vos

mots-clés). Dans path, il faut mettre le

chemin où Huginn doit chercher notre

regex. Dans un flux RSS, notre mot-clé

peut se trouver dans description ou

title.

Page 22: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Représentation schématique du

fonctionnement d’Huginn

En faisant des scenarii, vous pouvez visualiser un diagramme avec les

interactions de vos agents. En voici un exemple :

Il y a mon flux d’entrée, mes filtres et mon rendu

final.

Page 23: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Connexion aux services externes

Cliquez sur Services en haut à droite et vous pourrez accéder à l’interface

pour connecter votre instance d’Huginn à des services en ligne

Page 24: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source

Voilà vous disposez des clés

pour mettre en place votre

instance HuginnDe nombreux exemples sont disponibles sur le Github ou sur Vimeo

Tutoriel réalisé par Antoine Henry - [email protected]

Page 25: (Tutoriel) Installer et Utiliser Huginn - Outil de veille open source