2010-07-16
Google Docsのフォーム投稿者に確認メールを送信する
Google DocsのSpreadsheetでつくったフォームが投稿されたときに、投稿者に確認メールを送信する方法を記す。
次のことを前提とする。
- フォームに投稿者のメールアドレスを入力する項目を含めること
では、方法を示す。
- spreadsheetからフォームをつくる。[メニュー] > [Form] > [Create a Form]
- 投稿者のメールアドレス入力欄を追加する。仮に"e-mail address"とする。
- フォームを保存し、編集を終了する。
- Script Editorを開く。[メニュー] > [Tools] > [Scripts] > [Script Editor...]
- 以下のサンプルのようなスクリプトを入力する。
- 保存する(名前は適当でよい)
- トリガーの設定を開く。Script Editorの画面で[メニュー] > [Triggers] > [Current script's triggers...]
- トリガーを追加する。リンク"No triggers set up. Click here to add one now."をクリック
- 三つのセレクトボックスを順に[onFormSubmit][From spreadsheet][On form submit]に設定する。(最初のonFormSubmitは入力したスクリプトのファンクション名で、最後のOn form submitはspreadsheetのイベントハンドラである。)
- 保存するとスクリプトの実行を許可するためのダイアログが表示されるので"Authorize"する。
- 編集を終了する。
- 以上!
ここまでの手順を経たのち、フォームから投稿すると*スクリプトを作成したユーザーを送信者とした*トリガーを設定したアカウントを送信者としたメールが、ユーザー("e-mail address"に入力されたメールアドレス)に送信される。
つまり、説明した方法では、送信者をあなた個人のアカウントではなく代表アドレスのようなものにしたいときには、代表アドレスアカウントでスクリプトを作成しなければならないということである。
AppEngineのメール送信のポリシーに倣えば、コラボレーター・オーナーのうちの任意のアカウントを送信者とできそうな気はするのだが。
function onFormSubmit(e) { try { var email = e.namedValues["e-mail address"].toString() ; var msg = "Hello " + email + "!"; var subject = "Send Mail Example"; MailApp.sendEmail(email, subject, msg); } catch (e) { //エラーが発生した場合に管理者にメールを送信する MailApp.sendEmail("admin@example.com", "Error report", e.message); } }
トラックバック - http://d.hatena.ne.jp/esmasui/20100716/1279301074
リンク元
- 69 http://memn0ck.com/blog/2010/01/googlenexusoneandroidbluetoothkeyboard.html
- 50 http://twitter.com/esmasui
- 42 http://tunakko.net
- 36 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GGLL_jaJP306JP358&q=Android HID bluetooth+キーボード
- 29 http://www.google.co.jp/search?hl=ja&lr=lang_ja&tbs=lr:lang_1ja&q=AndroidManifest+バージョン&aq=f&aqi=&aql=&oq=&gs_rfai=
- 27 http://www.google.co.jp/search?hl=ja&source=hp&q=Android+bluetooth+画面&aq=f&aqi=&aql=&oq=&gs_rfai=
- 27 http://www.google.co.jp/search?sourceid=chrome&ie=UTF-8&q=android.os.ServiceManager
- 26 http://blogs.itmedia.co.jp/katabami/2010/07/reudo-rbk-2100b.html
- 26 http://side2.256byte.com/2010/01/bimeji-client-for-arduino/
- 25 http://blogs.itmedia.co.jp/katabami/2010/07/androidbluetoot.html