配信停止管理機能『Unsubscribe Groups』の活用事例

配信停止管理機能『Unsubscribe Groups』の活用事例

この記事は Advanced Suppression Manager: A Developer’s Example の抄訳です。

SendGridユーザの皆様はよくご存知だと思いますが、メールの受信者が配信停止リンクをクリックした場合、SendGridはその後、その宛先へのメールを送信しません。例えばいくつかのマーケティングキャンペーンを実施しているとして、その内の1つが配信停止されてしまった場合、その宛先に対しては全てのメールが送信されなくなってしまいます。これには、パスワードリセットのような重要なメールも含まれます。

どうすれば、興味を惹かない一部のキャンペーンやトピックのせいで、全てが配信停止されてしまうことを防げるのでしょうか。

Unsubscribe Groups(配信停止グループ)機能を使えば、送信するメールのタイプごとに配信停止を管理でき、受信者は購読するメールを自分で選択できるようになります。つまり、全てのメールを配信停止するのではなく、どのメールを受け取るかを受信者が自ら選択することが可能になります。これは送信者と受信者の双方にメリットがあります。

配信停止管理機能『Unsubscribe Groups』を使った開発事例

ある開発者がEMR (Electronic Medical Record:電子カルテシステム) を構築したケースでは、ユーザにアップデートやリクエストを知らせるためにメールを使っていました。例えば、看護師がパスワードを忘れてしまった場合、管理者がパスワードをリセットし、新しく生成されたパスワードをメールで送信するといった使い方です。
また、EMRには「担当患者の変更を看護師に知らせる」機能があります。フロアにいる看護師はこの知らせをタブレットで受け取りますが、メールが来ることで通知に気づきやすくなります。

それでは、このEMRにメール通知機能を追加したときの手順について、詳しくご紹介していきます。

  • SendGridのポータルサイトにログインし、SUPPRESSIONS > Unsubscribe Groups を開きます。
  • 「Patient Assignments」という名前のグループを作成します。
    サプレッショングループの作成
  • 一覧に表示されているグループID(GROUP ID)は、このグループのメールを送信する際に必要になります。今回の場合、グループIDは 124 です。
  • 次に、SendGridのTemplate Engineでメールのテンプレートを作成します。
    テンプレートの作成
  • テンプレートを作成した際に振られたIDは、このテンプレートでメールを送信する際に必要になります。今回の場合、テンプレートIDは e95d8718-383c-4741-9ebe-34d083b1cc10 です。
    テンプレートIDの確認
  • SendGridのJavaライブラリを使ったコードのサンプルです。先ほど作成したグループのIDと、メールのテンプレートIDを指定します。
    private void sendPatientAssignment(Principle user, String patientName, String patientRoom) {
    	Logger logger = LoggerFactory.getLogger(AdminController.class);
    
    	SendGrid sendgrid = new SendGrid(System.getenv("SENDGRID_API_KEY"));
    	SendGrid.Email email = new SendGrid.Email();
    	email.addTo(user.getEmail());
    	email.setFrom(System.getenv("SENDGRID_FROM_EMAIL"));
    	email.setSubject("Attemper EMR.  You have a new patient assignment.");
    	email.setHtml(user.getFirstName());
    	email.setASMGroupId(124);
    
    	email.getSMTPAPI().addFilter("templates", "enable", 1);
    	email.getSMTPAPI().addFilter("templates", "template_id", "e95d8718-383c-4741-9ebe-34d083b1cc10");
    	email.getSMTPAPI().addSubstitution("-name-", patientName);
    	email.getSMTPAPI().addSubstitution("-room-", patientRoom);
    	try {
    		sendgrid.send(email);
    	} catch (SendGridException e) {
    		logger.error("Failed to email user patient assignment: " + e.getMessage());
    	}
    }
    

    https://gist.github.com/robertacosta/8f98ba70f16afaf97bdc

  • これで終わりです。患者の割り当てが変更されたら、新しい患者の名前と部屋番号が担当看護師にメール通知されます。
    送信されたメールのサンプル
  • メール通知は要らない、という場合もあるかもしれません。以前は、配信停止するとパスワードリセットを含む全てのメールが停止されてしまいましたが、Unsubscribe Groups機能があれば他のメールはそのままに患者変更のメール通知のみを配信停止することができます。
  • 送信されたメールの下部に追加されているリンクは、どのメールを購読するかを選択するための管理ページへのリンクです。なお、SendGridのポータルサイトにログインして新しい配信停止グループを作成するだけで、そのグループがこの管理ページにも表示されるようになります。
    配信停止の管理ページ

結果を次に活かしましょう

配信停止した人の数はSendGridのWebポータルで確認することができます。この結果を基に、特定のキャンペーンが興味を惹かなかった理由や、どうすればより効果的にリーチできるのかを考えましょう。

新ポータルの正式リリースに伴い全てのSendGrid公式ライブラリがアップデートされ、Unsubscribe Groupsを使った開発がより簡単にできるようになりました。
受信者が自分で配信停止をコントロールできるようになる「Unsubscribe Groups」を、ぜひお試しください!

関連記事