YABUMIアンケート(YABUMI questionnaire)
概要
YABUMIアンケートは、Salesforceで作成したレコードをHeroku ConnectでHeroku側と連携し、SendGridを使用して対象者へ一斉にアンケートを送信することができるアプリケーションです。
前提事項
以下が必要となります。
- Salesforce組織
- Herokuアカウント
セットアップ方法
1. Salesforce非管理パッケージのインストール
こちらから、Salesforceにパッケージをインストールします。
※Lightningコンポーネントの使用には、私のドメイン
を有効にする必要があります。
※また、セキュリティトークンのリセット
を行いセキュリティトークンを入手してください。
2. Herokuにアプリをデプロイ
3. Heroku アドオンの設定
Heroku Connect
- Installed add-ons から、Heroku Connect のコンソールを開きます。
- パッケージをインストールしたSalesforce組織と接続します。
HerokuConnectMapping.json
Heroku Scheduler
- Installed add-ons から、Heroku Scheduler のコンソールを開きます。
- メール送信バッチ
$ node sendmailloop.js
を登録します。
※Herokuのコンソールから手動でバッチを実行することも可能です。
SendGrid
- Installed add-ons の SendGrid を選択し、SendGrid のコンソールを開きます。
- Settings > API Keys > Create API Key から、APIキーを生成します。
- Webhookの設定
- Settings > Mail Settings から、
Event Notification
をonにします。 HTTP POST URL
を以下のように設定します。
https://(HerokuのEmailアドレス):(Herokuのパスワード)@(デプロイしたアプリのName).herokuapp.com/sendgridwebhook
SELECT ACTIONS
から、Delivered
、Opened
、Clicked
にチェックを付けます。
- Settings > Mail Settings から、
4. 環境変数の設定
Heroku側
settingsからConfig Varsを変更します。
変数名 | 設定内容 | 補足 |
---|---|---|
API_KEY |
SendGridのAPIキー | アンケート送信を行うためにSendGridのAPIキーが必要です。 3.で生成したSendGridのAPIキーを入力します。 |
FROM_ADDRESS |
任意のメールアドレス | YABUMIアンケート回答者へ送信されるメールの送信元メールアドレスを設定します。 |
SF_USERID |
SalesforceのユーザーID | 管理者権限を持つユーザーのIDを入力します。 |
SF_PASSWORD |
Salesforceのパスワード | 上記ユーザーのパスワードに、 1.で入手したセキュリティトークンを連結して入力します。 |
Salesforce側
アンケート画面のプレビューに必要な画面URLを設定します。
設定 > クイック検索ボックスに「ラベル」と入力し、「カスタム表示ラベル」をクリックします。
QUESTONNAIRE_URL
:https://(デプロイしたアプリのName).herokuapp.com/preview?
使用方法
実際の操作方法については、操作マニュアルをご覧ください。
YABUMIアンケートマニュアル
ライセンス
その他
- 各種セキュリティにつきましては、必要に応じてご設定ください。
- Heroku Private Spacesをご利用の場合は、一部プログラムを変更する必要があります。
sendmailloop.js 12行目をデプロイしたアプリ名に変更してください。
var appName = process.env.HEROKU_APP_NAME;
→var appName = (デプロイしたアプリのName);