前: 内容設定編

  • 基本編: 固定の宛先・内容のメールを送る
  • 内容設定編: プロセスによって、メールの内容を変更する
  • 宛先設定編: プロセスによって、メールの宛先を変更する

プロセスによって、メールの宛先を変更する

「基本編」「内容設定編」によって、プロセス中でメールの件名・本文を柔軟に生成し、送信することができるようになりました。この「宛先設定編」では宛先 (To) や発信元 (From) を動的に変更する方法を紹介します。引き続き「メッセージ送信中間イベント(メール)テスト」アプリに変更を加えていくので、モデラーを起動してください。

プロセス開始ユーザを指定

まずは、プロセス開始ユーザにメールを送信するように、設定してみましょう。

「プロセス開始ユーザ」をコピーして埋込み

「プロセス開始ユーザ」を本文に埋め込んだ際はユーザ名に変換されましたが、宛先 (To) に埋め込む場合は name-addr 形式の文字列に変換されます。name-addr 形式は「ユーザ名 <メールアドレス>」というメールアドレス記法で、発信元 (From) や宛先 (To), Cc, Bcc に記載することができます。

name-addr 形式の詳細については、こちらの RFC 5322 による定義を参照してください。
RFC 5322 – Internet Message Format

この状態のメッセージ送信中間イベント(メール)が実行されると、no-reply@f.questetra.net または no-reply@s.questetra.net からプロセス開始ユーザにメールが送信されます。

name-addr 形式で「プロセス開始ユーザ」が埋め込まれている

「プロセス開始ユーザ」は Cc, Bcc にも同じように埋め込めます。例えば Cc に埋め込むと、プロセス開始ユーザ宛にメールのコピーが送信されるようになります。

ユーザ型データ項目で指定

では、「確認」タスクにおいてデータ項目に値を入力してメールアドレスを指定する方法を見ていきましょう。Questetra BPM Suite にユーザ登録されている人であれば、ユーザ型データ項目を用いてメールアドレスを指定できます。試しに、ユーザ型データ項目で指定したメールアドレスを To に埋め込んで、メールを送信してみましょう。

ユーザ型データ項目を作成して、「確認」タスクで「編集可」になるようにデータ編集許可設定をしてください。データタイプは「検索セレクトボックス」がいいでしょう。そして、そのデータ項目を「メッセージ送信中間イベント(メール)」の宛先 (To) に埋め込んで、アプリを保存・リリースしましょう。

宛先 (To) に作成したユーザ型データ項目を埋込み

例えば「確認」タスクで「スマトラ」を指定すると、次のように「スマトラ」宛にメールが届きます。

ユーザ「スマトラ」を選択した場合

文字型データ項目で指定

メールアドレスを文字型データ項目で指定するなら、Questetra BPM Suite がメールアドレスの情報を持っていなくても大丈夫です。文字型データ項目を作成して、「確認」タスクで「編集可」になるようデータ編集許可設定、そして「メッセージ送信中間イベント(メール)」の宛先 (To) に埋め込んでみましょう。

文字型データ項目を宛先 (To) に埋込み
「確認」タスクで文字型データ項目にメールアドレスを入力

文字型データ項目をヒューマンタスクにて編集可能にすると、テキストボックスで入力を求める形になります。ですので、文字型データ項目により宛先 (To) などを埋め込むようにすれば、プロセス開始者は自由にメールアドレスを入力できます。

また文字型データ項目のデータタイプを「複数行」にすることで、「メッセージ送信中間イベント(メール)」の各欄に複数のメールアドレスを指定することができます。改行区切りで複数のメールアドレスを入力すると、次のように送信されます。

文字型データ項目を「複数行」に設定し、改行区切りでメールアドレスを入力
「スマトラ」と「オアフ」の 2 人にメールが届く

複数のデータ項目で指定

1 つの欄に複数のデータ項目を埋め込むことでも、複数のメールアドレスを指定することができます。例えば、宛先 (To) にユーザ型データ項目「ユーザ」と、「プロセス開始ユーザ」を埋め込む場合は次のようになります。

カンマ区切りで複数のデータ項目を埋込み
両方のメールアドレスに届く

選択型データ項目で指定

選択型データ項目でデータタイプを「チェックボックス」にすると、こちらの方法でも複数のメールアドレスを指定することができます。

選択型データ項目を作成し、選択肢の「編集」ボタンから選択肢設定ウインドウを開いてください。「以下で選択肢を指定」を選択すると選択肢を手入力で設定できます。下のスクリーンショットのように、選択肢 ID にメールアドレス、表示ラベルに名前などを入力しましょう。「メッセージ送信中間イベント(メール)」には「表示ラベル <選択肢ID>」という文字列が埋め込まれます。

「以下で選択肢を指定」を選択して、用意する選択肢を入力

また、複数選択を可能にするためには、データタイプを「チェックボックス」にする必要があります。

作成した選択型データ項目のデータ編集許可設定を変更して「確認」タスクで編集できるようにして、「メッセージ送信中間イベント(メール)」でデータ項目を埋め込む、という手順は他のデータ型と同じです。

作成した選択型データ項目を埋込み

アプリを保存・リリースしてプロセスを開始してみましょう。例えば「スマトラ」と「カナリア」をチェックすると、次のように選択肢が name-addr 形式で埋め込まれたことが確認できます。


発信元を name-addr 形式の固定値で指定

最後に発信元 (From) アドレスの設定について、固定値を入力する場合で説明します。これまでの内容では発信先の設定を紹介しましたが、発信元 (From) も「メッセージ送信中間イベント(メール)」の設定で指定することができます。

発信元 (From) にメールアドレスを入力
From が変更される

また、次のように name-addr 形式に則って入力することで、表示名も指定できます。

name-addr 形式にならって「名前 <メールアドレス>」と入力
name-addr 形式で届き、名前が表示された

アプリによって送信されたメールが迷惑メールとして判定されるのを防ぐため、発信元 (From) を変更した場合には SPF (Sender Policy Framework) の設定をすることをおすすめします。適切に SPF を設定することで、Questetra BPM Suite であなたのメールアドレスを利用してメールを送信しても、それが「迷惑メールではない」ということを証明できます。

SPF について、詳しくは Wikipedia など参照ください。
Sender Policy Framework – Wikipedia

SPF の設定は、メールアドレスで使用しているドメインの DNS に、TXT レコードを登録することで行なえます。ドメインホストによって設定方法は異なりますので、具体的な手順についてはご使用のサービスにお問い合わせください。設定値については以下の記事をご覧ください。


本記事では「メッセージ送信中間イベント(メール)」の発信元 (From) と宛先 (To) のみに触れましたが、Cc, Bcc でも同じようにデータ埋込を行うことができます。これらを組み合わせて業務にピッタリなアプリの作成にチャレンジしてください!