Skip to content

メッセージのアーカイブ

メッセージのアーカイブを使用すると、アーカイブやコンプライアンスの目的で、ユーザーに送信したメッセージのコピーを AWS S3 バケット、Azure Blob Storage コンテナー、または Google Cloud Storage バケットに保存できます。

この記事では、メッセージ・アーカイブの設定方法、JSONペイロードの参照方法、よくある質問について説明する。

メッセージのアーカイブはアドオン機能として利用できます。メッセージのアーカイブを開始するには、Braze カスタマーサクセスマネージャーにお問い合わせください。

仕組み

この機能がオンになっている場合、クラウドストレージバケットを Braze に接続し、それをデフォルトのデータエクスポート先としてマークすると、Braze は、選択したチャネルを通じてユーザーに送信されるメッセージ (メール、SMS、またはプッシュ) ごとに gzip 圧縮された JSON ファイルをクラウドストレージバケットに書き込みます。

このファイルには、[ファイル参照] で定義されたフィールドが含まれており、ユーザーに送信されるテンプレート化された最終的なメッセージが反映されます。キャンペーンで定義されたテンプレートの値 ({{${first_name}}} など) が、プロファイル情報に基づいてユーザーが受け取った最終的な値を示します。これにより、コンプライアンス、監査、顧客サポートの要件を満たすために、送信されたメッセージのコピーを保持することができる。

複数のクラウドストレージプロバイダーの認証情報を設定した場合、メッセージのアーカイブ機能では、デフォルトのデータエクスポート先として明示的にマークされたプロバイダーにのみエクスポートされます。明示的なデフォルトが提供されておらず、AWS S3バケットが接続されている場合、メッセージアーカイブはそのバケットにアップロードされます。

JSON は、次のキー構造を使用してストレージバケットに保存されます。

sent_messages/channel/(one of: md5, e164 phone number, email, or push token)/(campaign_id OR canvas_step_id)/DispatchId.json.gz

ファイルの例を以下に示します。

sent_messages/email/819baa08d8d7e77e19d4666f5fc6050b/ee965cb2-8934-4b0a-acf1-91c899c2f915/651fd10b282850b39e1169c13975234b.json.gz

メッセージのアーカイブの設定

このセクションでは、ワークスペースのメッセージアーカイブの設定について説明する。先に進む前に、会社でメッセージアーカイブを購入し、有効にしていることを確認してください。

ステップ 1: クラウドストレージバケットの接続

まだクラウドストレージバケットを接続していない場合は、Braze に接続します。手順については、Amazon S3Azure Blob Storage または Google Cloud Storage に関するパートナーのドキュメントを参照してください。

ステップ 2: メッセージをアーカイブするチャネルの選択

[メッセージのアーカイブ] の設定ページで、送信するメッセージのコピーをクラウドストレージバケットに保存するチャネルを制御します。

チャネルを選択するには次のステップに従います。

  1. [設定] > [メッセージのアーカイブ] に移動します。
  2. チャネルを選択します。
  3. 変更の保存を選択します。

[メッセージのアーカイブ] ページには、選択できるチャネルとして、メール、プッシュ、SMS の 3 つがあります。

ファイル参照

以下に、メッセージが送信されるたびにクラウドストレージバケットに配信される JSON ペイロードの参照を示します。メッセージのアーカイブのサンプル ファイルについては、コード例リポジトリを参照してください。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
  "version" : 1, //numerical version of the json structure
  "to": ToAddress, ("[email protected]")
  "subject": SubjectLine ("20% off coupon inside!"),
  "from_name": DisplayName ("Braze"),
  "from_address": FromAddress ("[email protected]"),
  "html_body": HtmlBody,
  "plaintext_body": PlainTextBody,
  "amp_body": AMPEmailBody,
  "extras": Extra hash—for SendGrid users, this will be passed to SendGrid as Unique Arguments,
  "headers": HashOfHeaders,
  "sent_at": UnixTimestamp,
  "dispatch_id": DispatchIdFromBraze,
  "campaign_id": CampaignApiId, // may not be available
  "canvas_id": CanvasApiId, // may not be available
  "canvas_step_id": CanvasStepApiId, // may not be available
  "canvas_variation_id" : CanvasVariationApiId, // may not be available
  "message_variation_id": MessageVariationApiId, // may not be available,
  "attachments": Array of JSON Objects containing 'bytes' and 'file_name', // may not be available
  "user_id": String,
  "campaign_name": String, // will only be available if the message is from a campaign
  "canvas_name": String, // will only be available if the message is a from Canvas
  "canvas_step_name": String, // will only be available if the message is from a Canvas
  "external_id": String
}

このペイロードの extras フィールドは、メールの作成時に [メールエクストラ] フィールドに追加されたキーと値のペアを表します。Currents にデータを送り返す方法については、メッセージエクストラを参照してください。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
  "version" : 1 //numerical version of the json structure
  "to": PhoneNumber, ("+15555555555"),
  "body": Body ("Hi there!"),
  "subscription_group": SubscriptionGroupExternalId,
  "provider": StringOfProviderName,
  "media_urls": ArrayOfString,
  "sent_at": UnixTimestamp,
  "dispatch_id": DispatchIdFromBraze,
  "campaign_id": CampaignApiId, // may not be available
  "canvas_id": CanvasApiId, // may not be available
  "canvas_step_id": CanvasStepApiId, // may not be available
  "canvas_variation_id" : CanvasVariationApiId, // may not be available
  "message_variation_id": MessagVariationApiId, // may not be available
  "user_id": String,
  "campaign_name": String, // will only be available if the message is from a campaign
  "canvas_name": String, // will only be available if the message is a from Canvas
  "canvas_step_name": String, // will only be available if the message is from a Canvas
  "external_id": String
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
  "version" : 1, //numerical version of the json structure
  "to": PushToken,
  "payload": JsonOfEntirePushPayload,
  "platform": ios/android/web/kindle,
  "app_id": ApiKeyOfApp,
  "sent_at": UnixTimestamp,
  "dispatch_id": DispatchIdFromBraze,
  "campaign_id": CampaignApiId, // may not be available
  "canvas_id": CanvasApiApiId, // may not be available
  "canvas_step_id": CanvasStepApiId, // may not be available
  "canvas_variation_id" : CanvasVariationApiId, // may not be available
  "message_variation_id": MessagVariationApiId, // may not be available
  "user_id": String,
  "campaign_name": String, // will only be available if the message is from a campaign
  "canvas_name": String, // will only be available if the message is a from Canvas
  "canvas_step_name": String, // will only be available if the message is from a Canvas
  "external_id": String
}

よくある質問

ペイロードに含まれていないテンプレートは何ですか?

メッセージがBrazeを離れた後に行われた修正は、クラウドストレージバケットに保存されたファイルには反映されない。これには、クリック追跡のためのリンクのラッピングやトラッキングピクセルの挿入など、メール配信パートナーが行う修正も含まれる。

キャンペーンパスの「unassociated」の値の下にあるメッセージは何ですか?

メッセージがキャンペーンまたはキャンバス以外で送信される場合、ファイル名のキャンペーン ID は「unassociated」になります。これは、ダッシュボードからテストメッセージを送信する場合、Braze が SMS 自動応答を送信する場合、または API 経由で送信されるメッセージにキャンペーン ID が指定されていない場合に発生します。

この送信に関する詳細情報を見つけるにはどうすればよいですか?

external_id またはdispatch_iduser_id を併用することで、テンプレート化されたメッセージをCurrentsデータと相互参照し、配信されたタイムスタンプ、ユーザーがメッセージを開封またはクリックしたかどうかなどの詳細情報を見つけることができる。

再試行はどのように処理されますか?

クラウドストレージのバケットに到達できない場合、Brazeはバックオフジッターで最大3回再試行する。AWS S3 のレート制限の再試行は Braze によって自動的に処理されます。

認証情報が無効の場合、どうなりますか?

クラウドストレージ認証情報が無効になった場合、Brazeはクラウドストレージバケットにメッセージを保存できなくなり、それらのメッセージは失われる。AWS認証エラーの通知設定を行うことで、認証エラーに関するアラートを受け取ることができる。

アーカイブファイルのsent_at タイムスタンプが Currents の送信タイムスタンプと若干異なるのはなぜか?

レンダリングされたコピーは、ユーザーにメッセージを送る直前にアップロードされる。クラウドストレージのアップロード時間のため、レンダリングコピーのタイムスタンプ(sent_at )と実際の送信時刻の間に数秒の遅れが生じることがある。

「このページはどの程度役に立ちましたか?」
New Stuff!