配信の失敗について delivery-failures

バウンスは、配信の試行とエラーの結果、ISP からエラー通知が返されたものを表します。バウンス処理は、リストの衛生状態の重要な部分です。特定のメールが連続して複数回バウンスした後、このプロセスにより、抑制のフラグが設定されます。

このプロセスでは、システムが無効なメールアドレスの送信を継続するのを防ぎます。バウンスは、IP レピュテーションを判断するために ISP が使用する、データの重要な要素の 1 つです。この指標に目を通すことが重要です。「配信済み」と「バウンス済み」は、おそらくマーケティングメッセージの配信を測定する際の、最も一般的な方法です。配信率が高いほど、より良い結果が得られます。

メッセージをプロファイルに送信できない場合、リモートサーバーは自動的にエラーメッセージを Adobe Campaign に送信します。このエラーは、メールアドレス、電話番号、またはデバイスを強制隔離する必要があるかどうかを判断するために適合されます。バウンスメールの管理を参照してください。

メッセージを送信すると、各プロファイルの配信ステータス、関連するエラーのタイプと理由が配信ログに表示されます。

メールアドレスが強制隔離された場合、またはプロファイルがブロックリストに登録されている場合、配信の準備段階で受信者が除外されます。除外されたメッセージのリストは、配信ダッシュボードに表示されます。

メッセージの配信が失敗した理由 delivery-failure-reasons

メッセージエラーには次の 2 つのタイプがあります。それぞれの配信エラータイプによって、アドレスが強制隔離されるかどうかが決まります。

  • ハードバウンス
    ハードバウンスは、ISP が加入者アドレスへのメーリングの試行を配信不能と判断した後に生成される、永続的なエラーです。Adobe Campaign 内では、配信不能と分類されたハードバウンスは強制隔離リストに追加され、再試行されません。エラーの原因が不明な場合、ハードバウンスが無視されることがあります。

    ハードバウンスの一般的な例:アドレスが存在しない、無効なアカウント、無効な構文、無効なドメイン

  • ソフトバウンス
    ソフトバウンスは、メールの配信が困難な場合に ISP によって生成される、一時的なエラーです。ソフトエラーは、配信を成功させる試みとして、複数回(カスタム配信設定または標準の配信設定を使用するかによって異なります)再試行されます。継続的にソフトバウンスを行うアドレスは、再試行の最大回数に到達するまで強制隔離に追加されません(設定によって異なります)。

    ソフトバウンスの一般的な原因:メールボックス容量超過、受信メールサーバーの停止、送信者の評判の問題

無視​は、一時的であることがわかっているエラー(「外出中」など)、または技術的エラー(送信者タイプが「postmaster」である場合など)です。

フィードバックループはバウンスメールのように機能します。ユーザーがメールをスパムとみなしたら、Adobe Campaign でメールルールを設定して、このユーザーへのすべての配信をブロックできます。このようなユーザーのアドレスは、購読解除リンクをクリックしなかった場合でも、ブロックリストに登録されます。アドレスは受信者テーブル(NmsRecipient)ではなく、強制隔離テーブル(NmsAddress)に追加され、「ブロックリスト登録済み」ステータスとなります。フィードバックループのメカニズムについて詳しくは、アドビ配信品質のベストプラクティスガイドを参照してください。

同期エラーと非同期エラー synchronous-and-asynchronous-errors

メッセージの配信は、即座に失敗することがあります。その場合は、同期エラーと見なします。メッセージの送信が失敗した場合や送信後に失敗した場合、エラーは非同期的になります。

これらのタイプのエラーは、次のように管理されます。

  • 同期エラー:Adobe Campaign 配信サーバーからアクセスされたリモートサーバーが即座にエラーメッセージを返します。配信をプロファイルのサーバーに送ることは許可されません。メール転送エージェント(MTA)は、バウンスのタイプを決定してエラーを検証し、その情報を Campaign に返して、関係するメールアドレスを強制隔離する必要があるかどうかを判断します。バウンスメールの選定を参照してください。

  • 非同期エラー:バウンスメールまたは SR が受信サーバーによって後で再送信されます。このエラーは、エラーに関連するラベルで検証されます。非同期エラーは、配信の送信から 1 週間は発生する可能性があります。

NOTE
Managed Cloud Services のユーザーの場合、バウンスメールボックスの設定はアドビが実行します。

バウンスメールの選定 bounce-mail-qualification

Adobe Campaign でのバウンスメールの選定の処理方法は、エラータイプによって異なります。

  • 同期エラー:MTA は、バウンスのタイプと選定を決定し、その情報を Campaign に返します。配信ログの検証​テーブルのバウンス選定は、同期​配信の失敗エラーメッセージには使用されなくなりました。

  • 非同期エラー:非同期の配信エラーを検証するために Campaign で使用されるルールは、管理/キャンペーン管理/配信不能件数の管理/配信ログ選定​ノードに一覧表示されます。非同期バウンスは、引き続き、インバウンドメール ルールを通じて inMail プロセスで選定されます。

再試行管理 retries

一時的なエラー(ソフト​または​無視)の後でメッセージ配信が失敗した場合、Campaign は送信を再試行します。これらの再試行は、配信期間が終了するまで実行できます。

ソフトバウンスの再試行とその間隔は、メッセージのメールドメインから返されるバウンス応答のタイプと重大度に基づいた MTA によって決定します。

NOTE
配信プロパティの再試行設定は、Campaign では使用されません。

有効期間 valid-period

Campaign 配信の有効期間の設定は、3.5 日以内​に制限されています。配信に対して Campaign で 3.5 日を超える値を定義すると、その値は考慮されません。

例えば、Campaign で有効期間がデフォルト値の 5 日間に設定されている場合、ソフトバウンスメッセージは MTA の再試行キューに入り、そのメッセージが MTA に到達してから最大 3.5 日間再試行されます。その場合、Campaign で設定された値は使用されません。

メッセージが MTA キューに置かれた日数が 3.5 日に達しても配信に失敗した場合は、タイムアウトになり、配信ログでのステータスは、送信済み​から​ 失敗 ​に更新されます。

メールのエラータイプ email-error-types

メールチャネルについて、配信エラーの考えられる理由を以下に示します。

クリックして、メールのエラータイプの完全なリストを表示します
table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 9-row-4 10-row-4 11-row-4 12-row-4 13-row-4 14-row-4 15-row-4 16-row-4 17-row-4 18-row-4 19-row-4 20-row-4 html-authored no-header
エラーラベル エラータイプ 技術値 説明
無効なアカウント ソフト/ハード 4 アドレスにリンクされているアカウントはもはやアクティブではありません。インターネットアクセスプロバイダー(IAP)は、長期間使用されていないことを検出すると、そのユーザーのアカウントをクローズできます。そのユーザーのアドレスへの配信は不可能になります。アカウントが 6 か月間使用されていないことが原因で一時的に無効になっていて、まだ有効化することができる場合は、エラーありステータスが割り当てられ、エラーカウンターが 5 に達するまでアカウントが再試行されます。アカウントが永続的に無効化されたことをエラーが示している場合は、アカウントは直接強制隔離に設定されます。
強制隔離中のアドレス ハード 9 アドレスは強制隔離されました。
アドレスが未指定 ハード 7 受信者のアドレスが指定されていません。
低品質のアドレス 無視 14 このアドレスの品質評価が低すぎます。
ブロックリスト登録済みアドレス ハード 8 送信時にアドレスがブロックリストに追加されました。このステータスは、外部リストおよび外部システムからデータを Adobe Campaign の強制隔離リストにインポートするために使用します。
制御アドレス 無視 127 受信者のアドレスはコントロール母集団に含まれています。
重複 無視 10 受信者のアドレスがこの配信に既に存在しました。
無視されたエラー 無視 25 アドレスは許可リストに登録されています。したがってエラーは無視され、メールは送信されます。
判別後に除外 無視 12 受信者が「判別」タイプのキャンペーンタイポロジルールによって除外されました。
SQL ルールによって除外 無視 11 受信者が「SQL」タイプのキャンペーンタイポロジルールによって除外されました。
無効なドメイン ソフト 2 メールアドレスのドメインが正しくないか、存在しません。このプロファイルは、エラーカウントが 5 にならない限り、再びターゲットになります。その後、レコードは強制隔離ステータスに設定され、以降は再試行されなくなります。
メールボックス容量超過 ソフト 5 このユーザーのメールボックスはいっぱいになっていて、メッセージをこれ以上受け入れることができません。このプロファイルは、エラーカウントが 5 にならない限り、再びターゲットになります。その後、レコードは強制隔離ステータスに設定され、以降は再試行されなくなります。
このタイプのエラーはクリーンアッププロセスによって管理されます。アドレスは 30 日後に有効なステータスに設定されます。
警告:強制隔離されたアドレスのリストからアドレスを自動的に削除するには、データベースのクリーンアップテクニカルワークフローを開始する必要があります。
未接続 無視 6 メッセージが送信されたときに受信者の携帯電話の電源が切れていたか、ネットワークに接続されていませんでした。
未定義 未定義 0 エラーがまだインクリメントされていないので、アドレスは選定中です。このタイプのエラーは、サーバーが新しいエラーメッセージを送信すると発生します。単独のエラーである可能性もありますが、再度発生した場合はエラーカウンターがインクリメントされ、テクニカルチームに警告されます。その後、テクニカルチームは、ツリー構造の管理/キャンペーン管理/配信不能件数の管理ノードからメッセージの分析を実行し、このエラーを検証します。
オファーを受ける資格がない 無視 16 受信者には配信でオファーを受ける資格がありませんでした。
拒否 ソフト/ハード 20 アドレスは、スパムレポートであるというセキュリティフィードバックが原因で強制隔離されました。アドレスは、エラーに応じて、エラーカウンターが 5 に達するまで再試行されるか、直接強制隔離されます。
サイズが制限されたターゲット 無視 17 受信者に対する最大配信サイズに達しました。
未適合のアドレス 無視 15 郵便物の送付先住所が選定されていません。
未到達 ソフト/ハード 3 メッセージ配信チェーンでエラーが発生しました。SMTP リレーに関するインシデント、一時的に未到達なドメインなどが考えられます。エラーによると、エラーカウンターが 5 に達するまでアドレスは再試行されるか、直接強制隔離に送信されます。
不明なユーザー ハード 1 アドレスが存在しません。このプロファイルに対する配信はこれ以上試行されません。

プッシュ通知のエラータイプ push-error-types

モバイルアプリチャネルの場合に考えられる配信エラーの理由を次に示します。

iOS での強制隔離 ios-quarantine

HTTP/V2 プロトコルでは、プッシュ配信ごとの直接フィードバックおよびステータスを使用できます。HTTP/V2 プロトコルコネクタを使用する場合、フィードバックサービスが mobileAppOptOutMgt ワークフローによって呼び出されることはありません。モバイルアプリケーションのアンインストールまたは再インストールがおこなわれた場合、トークンは登録解除されたものとみなされます。

同時に、APNs がメッセージに対して登録解除ステータスを返した場合、ターゲットトークンはただちに強制隔離されます。

クリックして、iOSの強制隔離のシナリオを表示
table 0-row-6 1-row-6 2-row-6 3-row-6 4-row-6 5-row-6 6-row-6 7-row-6 8-row-6 9-row-6 html-authored no-header
シナリオ ステータス エラーメッセージ エラータイプ エラーの理由 再試行
ターゲットデバイスの電源がオン OK
ターゲットデバイスの電源がオフ OK
ユーザーがアプリケーションの通知を無効化 OK
メッセージの作成/分析フェーズ - ペイロードが大きすぎる 失敗 ペイロードが長すぎる ソフト 拒否 ×
メッセージの作成/分析フェーズ - 予期しないコンテンツ形式の問題 失敗 エラーによってエラーメッセージが異なる ソフト 未定義 ×
証明書の問題(パスワード、破損など)と、APNs へのテスト接続の問題 失敗 エラーによってエラーメッセージが異なる ソフト 拒否 ×
送信中にネットワーク接続が切断 失敗 接続エラー 未定義 未到達
APNs メッセージ却下:登録解除
ユーザーがアプリケーションを削除した、またはトークンの期限切れ
失敗 登録解除 ハード 不明なユーザー ×
APNs メッセージ却下:その他のすべてのエラー 失敗 エラー拒否の原因がエラーメッセージに表示されます ソフト 拒否 ×

Android での強制隔離 android-quarantine

Android V1 の場合

Adobe Campaign は通知ごとに FCM サーバーから直接同期エラーを受け取ります。Adobe Campaign はこれを即時に処理し、エラーの重大度に応じてハードエラーまたはソフトエラーを生成します。これにより再試行が実行できるようになります。

  • ペイロードの長さの超過、接続の問題、サービスの使用可否の問題:再試行が実行され、ソフトエラーが生成されます。エラーの理由は「拒否」です。
  • デバイスの割当量の超過:再試行はなく、ソフトエラーが生成されます。エラーの理由は「拒否」です。
  • 無効または登録解除されたトークン、予期しないエラー、送信者のアカウントの問題:再試行はなく、ハードエラーが生成されます。エラーの理由は「拒否」です。

mobileAppOptOutMgt ワークフローは 6 時間ごとに実行されます。このワークフローは AppSubscriptionRcp テーブルを更新します。登録解除または無効と宣言されたトークンについて、「無効」フィールドが「True」に設定され、そのデバイストークンにリンクされている購読は自動的にそれ以降の配信から除外されます。

配信分析中に、ターゲットから除外されたすべてのデバイスが自動的に excludeLogAppSubRcp テーブルに追加されます。

NOTE
Baidu コネクタを使用している場合、さらに別の種類のエラーがあります。
  • 配信開始時の接続の問題:エラータイプは「未定義」で、エラーの理由は「未到達」です。再試行は実行されます。
  • 配信中の接続切断:ソフトエラーが生成され、エラーの理由は「拒否」です。再試行は実行されます。
  • 送信中に Baidu により同期エラーが返される:ハードエラーが生成され、エラーの理由は「拒否」です。再試行はありません。
Adobe Campaign は 10 分ごとに Baidu サーバーにアクセスし、送信済みメッセージのステータスを取得し、broadLog を更新します。メッセージが送信済みと宣言されると、broadLog のメッセージのステータスが「受信済み」に設定されます。Baidu がエラーを宣言すると、ステータスは「失敗」に設定されます。

Android V2 の場合

Android V2 の強制隔離メカニズムでは、Android V1 と同じプロセスを使用しており、同じことがサブスクリプションと除外の更新にも当てはまります。詳しくは、Android V1 の節を参照してください。

クリックして、Android V2 の強制隔離シナリオを表示
table 0-row-6 1-row-6 2-row-6 3-row-6 4-row-6 5-row-6 6-row-6 7-row-6 8-row-6 9-row-6 10-row-6 11-row-6 12-row-6 13-row-6 14-row-6 15-row-6 16-row-6 17-row-6 18-row-6 19-row-6 20-row-6 21-row-6 22-row-6 23-row-6 24-row-6 html-authored no-header
シナリオ ステータス エラーメッセージ エラータイプ エラーの理由 再試行
メッセージの作成/分析フェーズ:カスタムフィールドでの不正なキーワードの使用 失敗 次のキーワードは使用できません:{1} ソフト ×
メッセージの作成/分析フェーズ:ペイロードが大きすぎる 失敗 通知が長すぎます:{1} ビット。許可されているのは {2} ビットのみです ソフト 拒否 ×
送信中にネットワーク接続が切断 失敗 次のアドレスの Firebase Cloud Messaging サービスからの応答がありません:{1} ソフト 未到達
FCM メッセージ却下:FCM サーバーが一時的に使用不可(タイムアウトなど) 失敗 Firebase Cloud Messaging サービスを一時的に利用できません ソフト 未到達
FCM メッセージ却下:送信者アカウントの認証中にエラー発生 失敗 開発者アカウントを識別できませんでした。ID とパスワードを確認してください ソフト 拒否 ×
FCM メッセージ却下:デバイスの割当量を超過 失敗 ソフト 拒否
FCM メッセージ却下:無効な登録または未登録 失敗 ハード 不明なユーザー ×
FCM メッセージ却下:その他すべてのエラー 失敗 Firebase Cloud Messaging サーバーから予期しないエラーコードが返されました:{1} 拒否 ×
FCM メッセージ却下:無効な引数 失敗 INVALID_ARGUMENT 無視 未定義 ×
FCM メッセージ却下:サードパーティ認証エラー 失敗 THIRD_PARTY_AUTH_ERROR 無視 拒否
FCM メッセージ却下:送信者 ID が一致しません 失敗 SENDER_ID_MISMATCH ソフト 不明なユーザー ×
FCM メッセージ却下:登録解除 失敗 UNREGISTERED ハード 不明なユーザー ×
FCM メッセージ却下:内部 失敗 INTERNAL 無視 拒否
FCM メッセージ却下:使用不可 失敗 UNAVAILABLE 無視 拒否
FCM メッセージ却下:予期しないエラーコード 失敗 予期しないエラーコード 無視 拒否 ×
認証:接続の問題 失敗 認証サーバーに接続できません 無視 拒否
認証:リクエストで許可されていないクライアントまたは範囲です。 失敗 unauthorized_client 無視 拒否 ×
認証:クライアントは、このメソッドを使用してアクセストークンを取得する権限がありません。または、要求された範囲に対してクライアントが承認されていません。 失敗 unauthorized_client 無視 拒否 ×
認証:アクセス拒否 失敗 access_denied 無視 拒否 ×
認証:無効なメール 失敗 Invalid_grant 無視 拒否 ×
認証:無効な JWT 失敗 Invalid_grant 無視 拒否 ×
認証:無効な JWT 署名 失敗 Invalid_grant 無視 拒否 ×
認証:無効な OAuth 範囲または ID トークンオーディエンスが指定されました 失敗 unauthorized_client 無視 拒否 ×
認証:OAuth クライアントが無効です 失敗 Disabled_client 無視 拒否 ×

SMS の強制隔離 sms-quarantines

標準コネクタの場合

SMS チャネル特有の方式を以下に示します。

NOTE
配信ログの選定​テーブルは、拡張された汎用 SMPP コネクタには適用されません。
クリックして、標準コネクタの SMS エラータイプを表示します
table 0-row-5 1-row-5 2-row-5 3-row-5 4-row-5 5-row-5 html-authored no-header
シナリオ ステータス エラーメッセージ エラータイプ エラーの理由
プロバイダーに送信済み 送信済み
モバイルで受信済み 受信済み
プロバイダーがエラーを返した 失敗 データの受信中にエラーが発生しました (SR または MO) ソフト 未到達
MT 確認が無効 失敗 送信クエリの確認フレームの処理中にエラー「{1}」が発生しました ソフト 未到達
MT の送信中にエラーが発生 失敗 メッセージの送信中にエラーが発生 ソフト 未到達

拡張された汎用 SMPP コネクタの場合

SMPP プロトコルを使用して SMS メッセージを送信する場合のエラー管理の方法は異なります。

SMPP コネクタは、返された SR(ステータスレポート)メッセージからデータを取得し、正規表現(regex)を使用して、そのコンテンツをフィルター処理します。このデータは、次に、配信ログ選定​テーブル(管理キャンペーン管理配信不能件数の管理​メニューから使用できます)に見つかった情報と照合されます。

新しいタイプのエラーが検証される前に、エラーの理由はデフォルトで常に「拒否」に設定されます。

NOTE
エラーのタイプと理由はメールの場合と同じです。
配信ログ選定テーブルに適切なエラータイプおよび理由を設定するために、ステータスコードおよびエラーコードのリストをプロバイダーに問い合わせてください。

生成されるメッセージの例:

SR Generic DELIVRD 000|#MESSAGE#
  • SMS のエラーコードをメールのエラーコードと区別するために、すべてのエラーメッセージは SR で始まります。

  • エラーメッセージの 2 つ目の部分(この例では Generic)は、SMSC 実装の名前(例えば、SMS 外部アカウントの「SMSC 実装名」フィールドに定義されている名前)を指します。

    同じエラーコードであってもプロバイダーごとに意味が異なる場合があるので、エラーコードを生成したプロバイダーがこのフィールドでわかります。これにより、該当するプロバイダーのドキュメントでエラーを調べることができます。

  • エラーメッセージの 3 つ目の部分(この例では DELIVRD)は、SMS 外部アカウントに定義されたステータス抽出用正規表現を使用して SR から取得されたステータスコードに対応します。

    この正規表現は、外部アカウントの「SMSC 特異性」タブで指定します。
    デフォルトでは、SMPP 3.4 仕様​の​付録 B に規定されているとおり、stat: フィールドが抽出されます。

  • エラーメッセージの 4 つ目の部分(この例では 000)は、SMS 外部アカウントに定義されたエラーコード抽出用正規表現を使用して SR から抽出されたエラーコードに対応します。

    この正規表現は、外部アカウントの「SMSC 特異性」タブで指定します。

    デフォルトでは、SMPP 3.4 仕様​の​付録 B に規定されているとおり、err: フィールドが抽出されます。

  • パイプ記号(|)以降の文字列は、配信ログ選定​テーブルの​ 最初のテキスト ​列にのみ表示されます。このコンテンツは、常に、メッセージが正規化された後に #MESSAGE# で置き換えられます。これにより、同じようなエラーに対して複数のエントリが含まれるのを防ぐことができます。メールの場合と同じです。

拡張された汎用 SMPP コネクタは、ヒューリスティックを適用して実用的なデフォルト値を見つけます。例えば、DELIV で始まるステータスは、ほとんどのプロバイダーでよく使用されている DELIVRD または DELIVERED と一致するので、成功とみなされます。これ以外のステータスはハードエラーとみなされます。

配信エラーのトラブルシューティング troubleshooting

この節では、配信エラーの一般的な問題を診断し解決する方法について説明します。

失敗ステータス (パーソナライゼーションエラーあり) personalization-errors

メール配信のステータスが​ 失敗 ​である場合は、パーソナライゼーションブロックの問題に関係している可能性があります。配信内のパーソナライゼーションブロックでは、スキーマが配信マッピングと一致しない場合、エラーが発生する可能性があります。

配信ログは、配信が失敗した理由を知るうえで重要です。次に、一般的なエラーを示します。

受信者のメッセージが次の「未到達」エラーで失敗する

Error while compiling script 'content htmlContent' line X: `[table]` is not defined. JavaScript: error while evaluating script 'content htmlContent

原因:HTML内のパーソナライゼーションが、アップストリームターゲティングまたは配信のターゲットマッピングで定義またはマッピングされていないテーブルまたはフィールドを呼び出そうとしています。

解決策:ワークフローと配信のコンテンツを確認して、該当するテーブルを呼び出そうとしているパーソナライゼーションを具体的に特定します。 次に、HTMLのこのテーブルへの呼び出しを削除するか、配信へのマッピングを修正します。

パーソナライゼーションについて詳しくは、​ この節 ​ を参照してください。

複数のパーソナライゼーション値エラー multiple-values-error

配信が失敗した場合、次のエラーが配信ログに表示されることがあります。

DLV-XXXX The count of message prepared (123) is greater than the number of messages to send (111). Please contact support.

原因:メール内に、受信者に対して複数の値を持つパーソナライゼーションフィールドまたはブロックがあります。 パーソナライゼーションブロックが使用されていて、特定の受信者の複数のレコードを取得しています。

解決策:使用するパーソナライゼーションデータを確認し、これらのフィールドのいずれかに複数のエントリを持つ受信者のターゲットを確認します。 配信アクティビティの前に、ターゲティングワークフローで 重複排除 アクティビティを使用して、一度に 1 つのパーソナライゼーションフィールドのみにすることもできます。 重複排除について詳しくは、​ ワークフロードキュメント ​ を参照してください。

自動返信処理 auto-reply-handling

一部の配信は、「未到達」というエラーで失敗する場合があります。

Inbound email bounce (rule 'Auto_replies' has matched this bounce).

説明:配信は成功しましたが、Adobe Campaignが「Auto_replies」受信メールルールに一致する自動応答(例:「不在」返信)を受信者から受信しました。

自動応答のメールはAdobe Campaignで無視され、受信者のアドレスは強制隔離されません。 これは想定されている動作であり、配信エラーを示すものではありません。

関連トピック

​ 配信ステータス ​ では、配信のライフサイクル中に設定できる様々なステータスについて説明します。

Campaign UI での配信の監視 ​ では、配信ダッシュボードを使用して配信のパフォーマンスを追跡し、問題を診断する方法に関するガイダンスを提供します。

​ 強制隔離管理 ​ では、送信レピュテーションを保護するために強制隔離されたアドレスを Campaign がどのように管理するかについて説明します。

​ 配信品質の監視 ​ は、配信品質と送信者の評判を良好に維持するためのガイダンスを提供します。

​ 配信のベストプラクティス ​ では、Campaign で配信を作成および送信するためのベストプラクティスについて説明します。

recommendation-more-help
35662671-8e3d-4f04-a092-029a056c566b