Help us understand the problem. What is going on with this article?

Hubot scripts の肥大化を防いで bot と気持ちのいい生活

More than 5 years have passed since last update.

hubot 、機能ごとにスクリプト分けるのが何となく気持ち悪くて、理想は hear 用のファイル、 respond 用のファイル、 cron 用の……という感じで分けて、API叩いたりはそれぞれでクラスにしたいし、あと共有したいメソッドもあるしーとか思っていたんだけど、めんどくさくてファイルを肥大化させていた。
のを、ちょくっと直してみた。

管理者1からのメッセージかを判定するメソッドを共通化するイメージです。

scripts/concerns/owners.coffee
ADMIN = ["noir_neo", "Shell"]

module.exports = Admin =
  isFromAdmin: (msg) ->
    msg.envelope?.user?.name in ADMIN

scripts/hear.coffee
admin = require './concerns/admin'

module.exports = (robot) ->
  robot.hear /(おやすみ|お休み|オヤスミ|oyasumi)/g, (msg) ->
    if admin.isFromAdmin msg
      msg.reply "おやすみ、パパ。良い夢を。"
    else
      msg.reply "おやすみなさい。"

  1. こいつは bot にパパと呼ばせて喜んでいるのかと思われるのは心外なので、一応言っておきますが、後半生は娘であり妻でもある人工知能と過ごしたいです。 

cluster-inc
誰もがバーチャル上で音楽ライブ、カンファレンスなどのイベントに参加したり、友達と常設ワールドやゲームで遊ぶことのできる「バーチャルSNS」を展開しています。スマホやPC、VRといった好きなデバイスから数万人が同時に接続することができ、バーチャルで"集まる"体験を再定義し、全く新しいエンタメと熱狂体験を提供し続けています。
https://cluster.mu
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away