申し込みフォームなどの送信時にGoogle Apps Scriptを使用してChatWorkのルームにメッセージを送信します。前回、スクリプトの実行でルームにメッセージの送信が成功しました。続きです。
![](https://eguweb.jp/wp-content/uploads/202308222019No-00.jpg)
WEBフォームを準備する
まずは、送信のサンプルフォームを準備します。いつものようにContact Form7でフォームを準備します。
![](https://eguweb.jp/wp-content/uploads/202308222038No-00.jpg)
サンプルのフォームが準備できました。
![](https://eguweb.jp/wp-content/uploads/202308222042No-00.jpg)
doPostを作成する
まず、前回のスクリプトの関数名をdoPostに変更します。
![](https://eguweb.jp/wp-content/uploads/202308222044No-00.jpg)
doPostは、Google Apps Script(GAS)で使用される特殊な関数の一つです。
doPost
関数は、Google Apps ScriptでWebアプリケーションを作成する際に使用されるもので、HTTP POSTリクエストがアプリケーションに送信されたときに自動的に呼び出される関数です。通常、この関数内でリクエストのデータを処理し、適切なレスポンスを生成します。
doPostのサンプル例です。
function doPost(e) {
var responseData = {
message: "Hello from Google Apps Script!"
};
var response = ContentService.createTextOutput(JSON.stringify(responseData));
response.setMimeType(ContentService.MimeType.JSON);
return response;
}
この例では、doPost
関数はHTTP POSTリクエストを受け取り、JSON形式のレスポンスを返します。
GASをデプロイする
GASのプロジェクトをデプロイします。
![](https://eguweb.jp/wp-content/uploads/202308222047No-00.jpg)
「ウェブアプリ」を選択します。
![](https://eguweb.jp/wp-content/uploads/202308222047No-01.jpg)
アクセスできるユーザーを全員にして「デプロイ」します。
![](https://eguweb.jp/wp-content/uploads/202308222048No-02.jpg)
ウェブアプリとして公開されました。URLをコピーしておきます。
[rml_read_more]
![](https://eguweb.jp/wp-content/uploads/202308222048No-01.jpg)
fetchを実行する
フォームの送信より後に下記のようなJavaScriptを設置します。
document.addEventListener('wpcf7submit', function(event) {
fetch('GASのWebアプリケーションのURL', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
})
});
![](https://eguweb.jp/wp-content/uploads/202308222051No-00.jpg)
これで、送信があったときに、doPost関数が実行されるようになります。
![](https://eguweb.jp/wp-content/uploads/202308222053No-00.jpg)
グループチャットのルームにメッセージが送信されました!
![](https://eguweb.jp/wp-content/uploads/202308222052No-00.jpg)
まとめ
スクリプトが実行されて、メッセージが送信されました!
これで、Google Apps Scriptを使用してChatWorkのルームにメッセージを送信することができました。もし送信できない場合は、APIトークンやルームIDを正しく設定していることを確認してください。
APIの詳細や制限については、公式のChatWork APIドキュメントを参照してください。