node.jsでSlackのCustom Slash Commandsを受けられるようにした
絶賛ラズパイ放置中です
Custom Slash Commandsとは
使ったもの
- 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時間でアイドル状態になるのをなんとかしたい