Google フォームにて送信した内容を、
Discord に Webhook 経由で投稿する方法。
匿名チャットを作りたい人用。
Discord 側の設定
- サーバー設定 -> 連携サービス
- ウェブフックを作成
- 「ウェブフック URL」を控えておく
Google 側の設定
- Google ドライブから Google フォームを作成
- 「発言」という質問名で「記述式」の入力欄だけ作成
- 「スクリプトエディタ」を開く
- 以下のコードをコピペ
const WEBHOOK_URL = "ウェブフックURL";
FormApp.getActiveForm();
const onSubmit = (e) => {
const data = e.response
.getItemResponses()
.reduce(
(p, c) => ({ ...p, [c.getItem().getTitle()]: c.getResponse() }),
{}
);
const request = {
method: "post",
"content-type": "application/json",
payload: {
content: data["発言"],
},
};
UrlFetchApp.fetch(WEBHOOK_URL, request);
};
-
"ウェブフックURL"
を控えておいた URL に書き換える - 新しいデプロイ -> 種類の選択 -> ウェブアプリ
- 次のユーザーとして実行を「自分」、アクセスできるユーザーを「全員」に設定(目的に応じて変える)
- onSubmit を実行すると fetch 権限を聞かれるので認証して許可する
- Google フォームから発言を入力して、問題なく投稿されれば完成。