メモ帳

やったこととかちまちまと書く 需要のない記事を生成している

node.jsでSlackのCustom Slash Commandsを受けられるようにした

絶賛ラズパイ放置中です

Custom Slash Commandsとは

Slash Commands | Slack

使ったもの

  • Node.js+Express
  • Openshift(無料版)

最初Botkitを使ってやってたがOpenshiftで動かす方法がわからず断念。
やり方がわからず悩んだ末、RESTサーバ(?)を作ればいいのではと思い検索したところ以下のサイトがヒットした。
qiita.com

サイトを参考に書いたものがこれ
github.com

構造

server.jsがリクエストを受け取ってapplication.jsの処理を呼び出す。(もしない場合はエラーを吐くので例外処理で捕まえてapplication.errorを実行する)

application.jsは処理をしてserver.jsにJsonファイルを返す。

server.jsがSlackに返す

使い方

使う側

Slackで"/コマンド 呼び出したい関数名"で入力するとapplication.jsの中にある関数を実行する

作る側

application.jsに処理を追記するだけ(3000ms以内で)

問題点

  • Openshiftは48時間でアイドル状態になる??
  • バイルアプリからは実行できない??

今後の予定(いつやるのだろ・・・)

  • Jsonファイルを読み込むだけでシンプルな機能を簡単に追加できるようにしたい(決められたワードを返すものなど)
  • 実用的な機能をつけたい(電卓とかかな)
  • Openshiftの48時間でアイドル状態になるのをなんとかしたい