
Slackアプリを作ってみました
あけましておめでとうございます。プログラマーの柿原です。
こんなご時世ですから弊社はまだまだテレワークを継続中です。社内のやりとりでは、チャットベースでコミュニケーションが取れるSlackやビデオ会議ができるZoomがよく使われています。
でも、ちょっと困ったことがありまして……。
Zoomの会議室を用意するのってなにかと大変なんです。例えばこんなとき。Slackのチャット画面からスケジュールされたZoomの会議室を用意したいというような状況です。

同じくSlackやZoomを多用されている方なら、ここからの大変な困難というか、長い道のりをわかっていただけると思います。それはこんな感じです。
①Webブラウザを起動する
②ZoomのWebサイトを開き、ログインする
③会議室のスケジュールを立てるページを開く
④スケジュールを立てて会議室へのリンクを発行する
⑤発行したリンクを会議の参加者に案内する
どうでしょう、この手間取る作業。1日1回程度の作業ならまだしもですが、多いときには日に5回以上も会議室作成依頼があり、そのたびに仕事を中断してこの道のりをたどっていると、多少自分の作業速度にも影響してくる気がします。そこでSlack一画面で会議室の予約を取れないかSlackのアプリを作って遊んでみました。
「いやいや、全然大変じゃないよ」「それだけのことならもっと簡単で楽な実現方法があるよ」等のツッコミもありそうですが、勉強も兼ねた好奇心ドリブン開発ということでご容赦ください……(Slackアプリを作ってみたい……!)
SlackのアプリはBoltというフレームワークを使うと、比較的簡単に作れます。Boltを使えばBotなんかも作れます。また、うれしいことにこのフレームワークには日本語のドキュメントも用意されています。
今回はZoom会議室のスケジュールができるSlackのショートカットを作ってみました。ショートカットとは、Slackのチャット入力欄にあるイナヅママークのボタンから開ける機能のことです。イナヅママークがまさにBoltという感じですね。

そして、今回私が作ったこの「ZoomBot」アプリではショートカットとしてZoomの会議室がスケジュールできます。このアプリの中身はZoomのAPIを呼んでいます。

そして予約が完了すると、会議室への招待リンクもそのまま取得できるようにしてみました。

やりました!これでスケジュールされたZoomの会議室を用意して再度Slackに招待リンクを持って帰ってくるまで煩わしい操作はありません!Slackの画面からも動かずに済みますね!
勉強にもなりましたし(少なくとも自分にとっては)、便利なものもできてBoltフレームワークの強力さを実感するときでありました。