[LINUX] J'ai essayé d'utiliser Hubot

introduction

Cet article est écrit par un étudiant qui étudie JS au lieu d'un mémo. Ne vous attendez pas au contenu.

1. Ouvrez un environnement virtuel

Cette fois, ce sera fait sur Ubuntu, alors démarrez l'environnement virtuel avec iTerm2.

Où ça a commencé

  1. Boîte virtuelle
  2. vagabond Ubuntu est utilisé dans un environnement virtuel qui utilise deux logiciels. cd ~/vagrant/ubuntu vagrant up vagrant ssh

Accédez au répertoire dans lequel Ubuntu est installé. vagrant up est une commande pour démarrer Ubuntu installé sur un PC virtuel, et vagrant ssh se connecte à SSH avec l'ensemble de machines virtuelles Vagrant.

2. Installez les modules nécessaires pour créer un bot

yo est un outil de création de modèle appelé Yeoman. générateur-hubot est un générateur Yeoman (générateur-hubot) pour Hubot. Installez coffeescript car il est nécessaire de gérer hubot avec JS.

3.Faire un bot

Le contenu ci-dessus consiste à créer un bot avec la commande `` yo hubot '', puis à utiliser slack comme adaptateur. Si vous pouvez répondre à plusieurs questions, un projet de robot sera créé.

Fait en quelques secondes.


S'il sort, c'est un succès.

3. Ecrire un programme pour exécuter Hubot


'use strict';
module.exports = (rbot)=> {
  rbot.hear(/hello>/i, msg => {
    msg.send(`Hi`);
  });

La première ligne est une description de l'utilisation de JS en mode strict.

La deuxième ligne utilise module.exports pour stocker la valeur directement dans une variable appelée rbot. module.exports vous permet de lire des valeurs spécifiées à partir d'autres fichiers js et de les réutiliser. La différence avec les exportations, qui est un peu similaire, est que vous pouvez stocker la valeur directement sans définir de propriétés. Voir ci-dessous pour la méthode de description.

module.exports.Nom de la propriété=valeur


La troisième ligne et les suivantes sont des fonctions de module qui renvoient hi en réponse au mot bonjour. Pour réagir à un contenu spécifique, utilisez les méthodes entendre et répondre (presque le même objectif) de la classe Robot. Voir ci-dessous pour la méthode de description.

(Expression régulière que vous souhaitez associer,Fonction de rappel appelée lorsqu'une expression régulière correspond)


Utilisez également envoyer et répondre (presque dans le même but) pour publier une déclaration dans une discussion. Voir ci-dessous pour la méthode de description. ```send(Chaîne);

 Source (https://gihyo.jp/dev/serial/01/hubot/0004)

# 4. Essayez de déplacer hubot
 Essayez de déplacer le bot avec la commande suivante, et s'il répond correctement à la chaîne de caractères spécifiée précédemment, il réussit. Je vous remercie pour votre travail acharné!!!!
```bin/hubot

Cité ci-dessous (https://gihyo.jp/dev/serial/01/hubot/0001)

Qu'est-ce qu'un bot

Un programme qui réside dans un outil de chat, écoute et exécute des commandes via le chat et parle au chat selon certaines conditions pour notifier les participants au chat est appelé un bot.

Qu'est-ce que Hubot

Il existe différents frameworks dans le monde pour créer des bots pour chaque langage de développement et outil de chat. Par exemple, ikachan est célèbre pour créer des robots IRC en Perl, et twittbot est célèbre pour créer des robots Twitter dans les services Web. Hubot est un framework pour créer et exécuter des bots avec Node.js développé par GitHub et publié sous la licence MIT. Une caractéristique majeure de Hubot est qu'il prend en charge divers outils de chat. Par exemple, ikachan, que j'ai mentionné plus tôt, est un cadre de création de bots pour IRC et ne peut pas être utilisé dans le but de créer des bots pour Twitter. D'un autre côté, twittbot est uniquement pour Twitter et vous ne pouvez pas créer de bot pour IRC. Cependant, Hubot peut se connecter à divers outils de chat en commutant l '«adaptateur», qui est un module qui connecte Hubot et les outils de chat.

Qu'est-ce qu'un adaptateur

L'adaptateur joue le rôle de saisir l'état de la discussion, comme une déclaration entrée par quelqu'un de l'outil de discussion vers le robot et de transmettre la sortie créée par le script à l'outil de discussion. Dans l'état initial, un adaptateur shell qui peut interagir avec Hubot sur le shell et un adaptateur appelé Campfire Adapter qui se connecte à un outil de discussion appelé Campfire sont inclus. Il existe différents adaptateurs fournis par des tiers, donc dans la plupart des cas, vous trouverez un adaptateur qui correspond à l'outil de chat que vous utilisez.

Recommended Posts

J'ai essayé d'utiliser Hubot
J'ai essayé d'utiliser paramétré
J'ai essayé d'utiliser argparse
J'ai essayé d'utiliser la mimesis
J'ai essayé d'utiliser aiomysql
J'ai essayé d'utiliser Summpy
J'ai essayé d'utiliser Pipenv
J'ai essayé d'utiliser matplotlib
J'ai essayé d'utiliser ESPCN
J'ai essayé d'utiliser openpyxl
J'ai essayé d'utiliser Ipython
J'ai essayé d'utiliser PyCaret
J'ai essayé d'utiliser cron
J'ai essayé d'utiliser ngrok
J'ai essayé d'utiliser face_recognition
J'ai essayé d'utiliser Jupyter
J'ai essayé d'utiliser doctest
J'ai essayé d'utiliser du folium
J'ai essayé d'utiliser jinja2
J'ai essayé d'utiliser du folium
J'ai essayé d'utiliser la fenêtre de temps
[J'ai essayé d'utiliser Pythonista 3] Introduction
J'ai essayé d'utiliser easydict (mémo).
J'ai essayé la reconnaissance faciale avec Face ++
J'ai essayé d'utiliser RandomForest
J'ai essayé d'utiliser BigQuery ML
J'ai essayé d'utiliser Amazon Glacier
J'ai essayé d'utiliser git inspector
J'ai essayé d'utiliser magenta / TensorFlow
J'ai essayé d'utiliser AWS Chalice
J'ai essayé d'utiliser l'émojinateur Slack
J'ai essayé d'utiliser Rotrics Dex Arm
J'ai essayé d'utiliser GrabCut d'OpenCV
J'ai essayé d'utiliser Thonny (Python / IDE)
J'ai essayé de communiquer avec le client serveur en utilisant tmux
J'ai essayé l'apprentissage par renforcement avec PyBrain
J'ai essayé l'apprentissage en profondeur avec Theano
J'ai essayé d'utiliser le notebook jupyter d'une manière ou d'une autre
[Kaggle] J'ai essayé le sous-échantillonnage en utilisant un apprentissage déséquilibré
J'ai essayé de photographier une vague de tortue en utilisant OpenPose
J'ai essayé d'utiliser l'API checkio
J'ai essayé le traitement asynchrone en utilisant asyncio
J'ai essayé de gratter
J'ai essayé PyQ
J'ai essayé AutoKeras
J'ai essayé le moulin à papier
J'ai essayé django-slack
J'ai essayé Django
J'ai essayé spleeter
J'ai essayé cgo
J'ai essayé d'utiliser Amazon SQS avec django-celery
J'ai essayé d'utiliser Azure Speech to Text.
J'ai essayé de jouer au jeu ○ ✕ en utilisant TensorFlow
J'ai essayé d'utiliser l'API de données YOUTUBE V3
J'ai essayé d'utiliser du sélénium avec du chrome sans tête
J'ai essayé de dessiner une ligne en utilisant une tortue