みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。
初心者向けGoogle Apps ScriptのシリーズとしてチャットワークのBotの作り方についてお伝えしています。
前回の記事はコチラ。
チャットワークを操作するための前提知識としてWeb APIとは何か、HTTP通信とは何か、ということをお伝えしました。
さて、チャットワークAPIを利用したメッセージの送信ですが、素のままやるとちょっと大変…そんなときにはライブラリを使うのが近道です。
ということで、今回はGASでチャットワークを操作するライブラリ「ChatWorkClient for Google Apps Script」を題材として、ライブラリとは何か、またその追加の仕方についてお伝えしていきます。
では、行ってみましょう!
面倒なことはライブラリに任せよう
さて、前回お伝えした通り、GASではUrlFetchサービスを使うことで、他のサービスが提供しているWeb APIにHTTPリクエストを送ることができるんですね。
書式はコチラ。
それで、チャットワークにBot通知をする、つまりメッセージを送るのであれば、POSTというメソッドで、payloadにメッセージの本文を、あとheaderにチャットワークのAPIトークンを乗っけて送ればOK!
それらを、fetchメソッドの引数のパラメータにオブジェクト形式で与えればOK!
…って、ちょっと難しそうですよね。
そんな時のために、先人がライブラリというのを用意してくださっているんですね。
ライブラリを使うことで、超簡単にチャットワークにメッセージを送ることができるようになります。
ライブラリとは何か
GASでは、作成した関数を他のプロジェクトから利用できる仕組みが用意されていて、それをライブラリと言います。
ライブラリは、別のアカウントからでも利用することができますので、どなたかが公開してくださっていれば、それを利用させてもらうことができるというわけです。
もちろん、自作することもできます。
例えば、当ブログの執筆もされているタダケン(@tadaken3)さんが作成された「HTML/XML Parser for Google Apps Script」もその一つですね。
ご興味あればぜひ追加してみてください。
ライブラリ「ChatWorkClient for Google Apps Script」
それで、チャットワークについては、GASからチャットワークのAPIを簡単に利用することができるライブラリ「ChatWorkClient for Google Apps Script」が公開されています。
これを使わせてもらうことで、前述のUrlFetchサービスのfetchメソッドでごちゃごちゃオブジェクト形式のパラメータを作らなくても
- マイチャットへメッセージを送信
- 特定のルームにメッセージを送信
- 特定のルームにタスクを追加
- 特定のルームのタスク一覧を取得
- 自分のタスク一覧を取得
- 自分のルーム一覧を取得
などの操作をすることができるようになります。
これは使わせてもらわない手はないですよね…!
ちなみにGitHubのページはコチラですので、ご興味あるかたはどうぞ。
ライブラリを追加する
では、「ChatWorkClient for Google Apps Script」を例に、ライブラリの追加の方法を見ていきましょう。
まず、スクリプトエディタのサイドパネル「ライブラリ」の「+」アイコンをクリックします。
すると、「ライブラリの追加」というダイアログが開きます。
ここで、「スクリプトID」なるものが必要になります。ChatWorkClient for Google Apps ScriptのスクリプトIDは以下の通りなので、コピってください。
これを「スクリプトID」に入力して「検索」をクリックします。
すると、「ChatWorkClient」がヒットして次の入力が可能となります。
「バージョン」をプルダウンから選択。ここは最も数字の大きい最新のバージョンを選択すればOKです。
そして「追加」です。
すると、以下のようにサイドパネルに「ChatWorkClient」が追加表示されます。
これで、ライブラリの追加は完了です。
まとめ
以上、GASのライブラリとは何か、またライブラリの追加の仕方についてお伝えしました。
これでチャットワークを操作するライブラリ「ChatWorkClient for Google Apps Script」が追加されましたので、これをスクリプトで活用していくまでです。
次回、その方法についてお伝えしていきますね。
どうぞお楽しみに!
連載目次:超初心者向けGASでBotを作りながら基礎を学ぶ
Google Apps Script(GAS)をはじめるためのメリットは山程ありますが、何を作ったらいいの?と悩んでしまうこともありますよね。そんな時に、おすすめしたいのが「Bot」の作成です。このシリーズでは、超初心者向けにGASでBotを作る方法を題材としながら、GASプログラミングの一通りの流れと書き方について学んでいきます。- 【初心者向けGAS】本当の最初の一歩!スクリプトエディタでプロジェクトを開く
- 【初心者向けGAS】はじめてのスクリプトを作成し、保存し、実行する
- 【初心者向けGAS】プログラミングに必須の変数&定数の使い方とデータ型について
- 【初心者向けGAS】ログを表示するconsole.logの使い方とテンプレート文字列
- 【初心者向けGAS】スクリプト実行時の「承認」でびっくりしないために
- 【初心者向けGAS】Spreadsheetサービスの「オブジェクト」の基礎の基礎を知ろう
- 【初心者向けGAS】スプレッドシートのシートを取得する2つの方法
- 【初心者向けGAS】スプレッドシートのセル・セル範囲とその値を取得する方法
- 【初心者向けGAS】for文を使ったスプレッドシートの繰り返しの超基本
- 【初心者向けGAS】条件分岐をするif文の使い方の超基本
- 【初心者向けGAS】スプレッドシートのセルに値を入力する基礎の基礎
- 【初心者向けGAS】条件に応じてループを制御する2つの方法~break文とwhile文~
- 【初心者向けGAS】スプレッドシートのセル範囲を行数・列数を使って取得する
- 【初心者向けGAS】スプレッドシートのセル範囲をクリアするいくつかの方法
- 【初心者向けGAS】Google Apps ScriptでWeb APIを活用するための基礎知識
- 【初心者向けGAS】面倒なことはライブラリに任せよう!その概要と追加の方法
- 【初心者向けGAS】Chatworkのマイチャットにメッセージを送る最も簡単な例
- 【初心者向けGAS】Google Apps Scriptで別の関数を呼び出すfunctionの書き方
- 【初心者向けGAS】時限式のイベントトリガーを設置して決まった時刻にBotを送信する方法
- 【初心者向けGAS】プロパティストアの概要とスクリプトプロパティの編集方法
- 【初心者向けGAS】スクリプトプロパティを操作してそのデータを取り出す方法
- 【初心者向けGAS】スプレッドシートのセル範囲の値を二次元配列として取得して取り扱う方法
- 【初心者向けGAS】Chatworkのメッセージ記法でBot送信するメッセージを装飾する方法
- 【初心者向けGAS】Google Apps Scriptのドキュメンテーションコメントの書き方