GASを使ってDiscordとシームレスに連携する方法

GASを使ってDiscordと連携するのって難しいのかな?僕、プログラミングはまだまだ初心者で…
猫男
猫男

catman
catman
安心するんだ、猫男くん。catmanがGASでどうやってDiscordと連携するか、簡単に教えてあげよう。

 

GASとDiscordを連携するための基本

GAS(Google Apps Script)は、Googleの様々なサービスを使ったアプリケーションを作る際に非常に便利なツールです。ここでは、特にそのGASを使って、Discordという人気のチャットアプリと連携する方法について解説します。

Discordは、APIを通じてさまざまなサービスと連携する機能を持っています。GASを用いることで、このAPIにリクエストを送信し、指定のチャンネルにメッセージを送ることができます。

DiscordでWebhookを設定する

まず、DiscordとGASを連携するために、DiscordのWebhookを設定する必要があります。

1. Discordで、連携したいサーバーの設定を開く。

2. サーバーの設定メニューから「Integrations」タブに進む。

3. 「Webhook」を選択して「New Webhook」をクリックし、新しいWebhookを作成します。

4. 作成したWebhookのURLをコピーします。このURLをGASで使用します。

GASでDiscordにメッセージを送るスクリプトを作成する

次に、Webhookで得たURLを使って、GAS側でメッセージを送るスクリプトを作成します。

 function sendMessageToDiscord() {
 var url = 'YOUR_WEBHOOK_URL_HERE';
 var payload = JSON.stringify({ content: "こんにちは、猫男です!" });
 var params = {
 method: 'post',
 contentType: 'application/json',
 payload: payload
 };

 UrlFetchApp.fetch(url, params);
 } 

次に、このスクリプトをGoogle Apps Scriptのエディタに貼り付け、YOUR_WEBHOOK_URL_HEREを先ほどコピーしたWebhookのURLで置き換えてください。

このコードは、指定したURLにメッセージを送信します。Pythonと異なり、JavaScriptのメソッドを活用して、GAS上でHTTPリクエストを行うことができます。

スクリプトを実行する

スクリプトの準備が整ったら、GASエディタで「Run」ボタンを押してスクリプトを実行します。これで、実際にDiscordにメッセージが送られます。

Discordの該当チャンネルを確認し、メッセージが正常に表示されていることを確認してください。

おぉ、これなら僕にもできそうだね!GASでDiscordにメッセージを送るのって意外と簡単なんだね。
猫男
猫男

 

練習問題

Webhook URLを使って、GASからDiscordのチャンネルに「今日はいい天気ですね!」というメッセージを送るスクリプトを書いてください。

  

解答・解説

 function sendWeatherMessageToDiscord() {
 var url = 'YOUR_WEBHOOK_URL_HERE';
 var payload = JSON.stringify({ content: "今日はいい天気ですね!" });
 var params = {
 method: 'post',
 contentType: 'application/json',
 payload: payload
 };

 UrlFetchApp.fetch(url, params);
 } 

この解答例は、WebhookのURLに対してPOSTリクエストを送信し、Discordの指定されたチャンネルに「今日はいい天気ですね!」というメッセージを送るものです。

  • UrlFetchApp.fetch(): GASのメソッドで、HTTPリクエストを送って外部データを取得するのに使います。
  • JSON.stringify(): JavaScriptのオブジェクトをJSON文字列に変換するメソッドです。
  • methodcontentType: HTTPリクエストの種類(POST)とコンテンツタイプを指定するプロパティです。

この方法を使えば、GASから簡単にDiscordと連携が可能です。

EARTHPG 自動化研究所

「その作業、仕組みにできます。」

Google Apps Script、Python、スプレッドシート自動化、WordPress開発、 API連携、AI活用まで対応。 小さな自動化から業務全体の設計まで、研究所が支援します。