web-dev-qa-db-ja.com

フォームで電子メールアドレスを要求せずに、Googleフォームの回答者の電子メールアドレスを取得する

シナリオは次のとおりです。

  1. メールで、Googleフォームが回答者に送信されます。
  2. この送信された電子メールを介して、回答者はフォームに回答し、回答を送信します。 このフォームにはメールアドレスフィールドがありません。
  3. 回答者の電子メールアドレスを取得して、Googleフォームの回答が記録されているスプレッドシートに追加する必要があります。

Google Appsスクリプトを使用して、回答者の電子メールアドレスをこの方法で取得することは可能ですか?特定の理由、回答者の電子メールアドレスを照会することはできません。この方法で電子メールアドレスを取得することは、私がフォームを送信した電子メールアドレスのいずれが応答するかを検証できるようにするための検証としても機能します。

ユーザーの電子メールアドレスを含むフィールドがある場合、これは非常に実行可能です。さらに具体的には tutorial があります。ただし、上記のユースケースのガイドは見ていません。

Session.getActiveUser().getEmail()を使用しようとしました。ただし、それは自分の電子メールアドレスのみを取得するようです(スプレッドシートを表示しているユーザーをアクティブユーザーと見なしているため)。

10
brain56

これは、Google Apps for Business、Google Apps for Education、またはGoogle Apps for Your Domainを使用していて、ドメインのユーザーにフォームに記入してもらう場合にのみ可能です。その場合、 getRespondentEmail() を使用して、送信者のメールアドレスを取得できます。

あなたの状況が上記の要件を満たしていない場合、Googleは送信者のメールアドレスをあなたに公開せず、あなたの唯一の選択肢はフォーム上でそれを要求することです。

13
Cameron Roberts