仕事でチャットワークを使っているのですが、最近アナウンスをすることが増えました。
特に毎月の定例会や会議の連絡やスプレッドシートへの入力のアナウンスなどどうにか自動でチャットワークに通知できないか?と考えた結果、GAS(Google Apps Sprict)を使えば、自動でチャットワークに投稿することができると知りました。
目次
チャットワークに自動で投稿する方法
僕はそんなにプログラミングなどは得意ではないです。
マクロも少しわかる程度。それでも2時間もあれば自動で投稿する方法が作れました。一回作ってしまえば、今は簡単なものならすぐに作れるようになりました。
- チャットワークのAPI Tokenを取得
- チャットワークのトークルームのIDを取得
- GASの作成(プログラム作成)
- トリガーの設定
こんな流れで自動化をしました。
チャットワークのAPI Tokenを取得
これは簡単でチャットワークにログインして、右上のプロフィールから【API設定】→ログインパスワードを入力するとAPI Tokenが表示されます。
これを記録しておきます。後程、GASに入力します。
チャットワークのトークルームのIDを取得
ルームIDの取得ですが、最初はどこに記載しているかわかりませんでした。
ルームIDはchromeなどのブラウザでチャットワークにログインするとすぐわかります。
【https://www.chatwork.com/#!rid110000000】
チャットワークにブラウザでログインするとURLに上記のように表示されます。ルームIDは110000000になります。こちらも後程、GASに入力します。
GASの作成(プログラム作成)
これからGAS(Google Apps Script)の作成に移ります。
GASの作成はグーグルドライブにログインし、【+新規】でGoogle Apps Scriptを選択します。初回は【+新規】→【その他】→【+アプリの追加】→【Google Apps Script】と選択し、Google Apps Scriptと接続します。
一旦接続してしまえば、次回からは【+新規】に出てきます。
GASとチャットワークの連携
プロジェクトを作成したら【リソース】でライブラリを追加しましょう。
Google App Script Project Key: M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT
こちらを入力してライブラリを追加します。バージョンは最新バージョンを使います。こちらの記事を作成している時点ではVer,18が最新でした。
通知プログラム
僕もよくプログラムはわかりませんが、ネットで拾ってきたものを応用しました。
こちらが通知プログラムになります。
function chatBot() {
var client = ChatWorkClient.factory({token:”12525f9d23a112c1c12ed1486789bc“}); // Chatwork API
client.sendMessage({
room_id:11000000, // room ID 連絡チャット
body:’ <<定例会>>\n\n’+
‘※毎月第3火曜のこの時間なので、予定に入れておいてください。\n’+
‘\n’+
‘\n’+
‘【場所】\n’+
‘※人数が多い場合は開催場所が変わる可能性があります(オフィスの会議室は10名まで)。\n’+
// message
});}
chatBot・・・プログラムの名前。好きな文字に変更可能。
// Chatwork API・・・//で区切られた後はコメントとなる。プログラムには関係ない。なくてもよい。他の緑色も同様。
12525f9d23a112c1c12ed1486789bc・・・チャットワークのAPI Token。先ほど取得したAPIトークンを入力すること。
11000000・・・ルームID。先ほど取得したものを入力。
<<定例会>>~・・・通知する本文。本文の前と後には「’」がついているので、忘れずに。\nは改行、+は段落が変わる場合につけないとエラーがでる。
以上がプログラムです。赤字を変更するだけで、通知するプログラムが作れます。このプログラムですが、じゃあ、どのような時に通知されるのか?という問題があります。それはトリガーでどういうときに通知するか設定しましょう。
トリガーの設定
GASのプロジェクトの「編集」をクリックしましょう。
そうすると「現在のプロジェクトのトリガー」があります。こちらをクリックし、「+トリガーを追加」します。
こちらで毎週、何曜日の何時になったら通知する。毎月、何日の何時に通知するなどトリガーをセットできます。
これで、その時間になったらトリガーが発動され、自動的にチャットワークに通知するようにできます。
仕事への応用
僕はこのプログラムにて何個か自動通知を設定しました。
- 毎月の会議の前にアナウンス
- 成約表への記入のアナウンス
- 毎月の自分のタスクを自分へ通知
これだけでも自動化しないと覚えていなければならないので、負担です。少しでも負担が減りますよ。作成時間は2時間程度でしたので、自分の勉強にもなりましたし、応用も効きます。
応用として、スプレッドシートを自動的にバックアップもできるようになりました。
一度設定すれば、トリガーによって自動的に通知されるので仕事ははかどるようになりました。
コメント