1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

いなたつAdvent Calendar 2019

Day 18

ngrokでslackとwebをhookする

Last updated at Posted at 2019-12-18

はじめに

いなたつアドカレの十八日目の記事です。

slackやlineなどで遊ぶときにwebhookを使う際にいちいちVPSやらherokuにいちいち開発中にデプロイするのは面倒ですよね。。。

ngrokを使って、開発を楽にする方法です。

ngrokのインスコ

$ brew cask install ngrok

brewでいれちゃいましょう。言うことないですね。

slackの設定

スクリーンショット 2019-12-18 17.16.13.png

このSlash CommandsをSlackに追加します。
Slash Commandsの設定画面に

  • コマンド
  • URL
  • メソッド
  • トークン
  • 名前をカスタマイズ

などなど設定項目があるかと思います。

今回最低限必要となるのは、上の2つのコマンドとURLになります。

コマンドに\hogeと入力すると、その投稿をコマンドとしてSlackが認識してくれます。
そして、その受け取りをwebでhookして(謎)URLで指定している箇所にぶっとばしてくれます。
では、指定するためのURLを生やしましょう

ngrokを起動する

$ ngrok http 3000
これで、localhost:3000をIPとして公開することができます

connectingとなっているのがonlineに変わると公開できているということになります。

スクリーンショット 2019-12-18 17.25.31.png

Web Interface http://127.0.0.1:4040
とかいてあります、4040ポートでngrokを監視するページが展開されています

localhost:4040にアクセスするとこんな感じです。
スクリーンショット 2019-12-18 17.27.42.png

Forwarding http://ae2d3823.ngrok.io -> http://localhost:3000
Forwarding https://ae2d3823.ngrok.io -> http://localhost:3000

とあり、このアドレスに自分のlocalhost:3000がフォワーディングされていることをしめしています。

このhttps://ae2d3823.ngrok.ioをSlashCommandsのURLの蘭に入力することで、無事に/hogeをつけた投稿がhttps://ae2d3823.ngrok.ioつまりlocalhost:3000に転送されるということです。

これを活用することで、簡易的にwebhookを用いたbot開発が行えます。

おわりに

最終的なデプロイはちゃんとしたところにしようね

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?