この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

ケース作成デフレクション信号

lightningcommunity:deflectionSignal イベントは、ユーザーが顧客のケースの作成を回避したときに Aura サイトで起動します。ユーザーが記事またはディスカッションを表示した後に、ユーザーはやりとりが役に立ったかどうか、およびケースを破棄するかどうかを尋ねられます。

認証済みユーザーからトリガーされた lightningcommunity:deflectionSignal イベントのデータのみが収集されます。

メモ

コンテンツで問題が解決されたかのスクリーンショット

エクスペリエンスビルダーでコンポーネントの [デフレクション総計値] プロパティを使用して、このイベントを自動的に起動するようにケースデフレクションコンポーネントを設定できます。ケースデフレクションコンポーネントは【カスタマーサポートへの連絡】フォームと連携して、デフレクションのやりとりを登録します。

ケースデフレクションのプロパティ

属性

ケースデフレクションコンポーネントからのデフレクション信号の sourceType は、caseCreateDeflectionModal です。

source は、ユーザーが件名項目またはケース作成フォームの説明に入力した内容です。destination は、記事またはディスカッションデフレクション項目の ID です。

payload は、JavaScript オブジェクトのキーと値の対応付けです。この種別の信号では、次のプロパティが使用されます。

ペイロードプロパティ 説明 サポートされている値 必須
deflectionAnswer string デフレクション項目が役に立ったかどうかを尋ねる最初の質問に対するユーザーの回答。
  • YES
  • NO
  • null — ユーザーは投票しなかった
いいえ
confirmationAnswer string ケースの作成を停止するかどうかを尋ねる 2 つ目の質問に対するユーザーの回答。
  • YES
  • NO
  • null — ユーザーは投票しなかった
いいえ
state string ポップアップウィンドウが閉じられる前の最後の状態。
  • MeasureDeflectionState — ユーザーは最初の質問に回答しなかった
  • ConfirmationQuestionState — ユーザーは 2 つ目の質問に回答しなかった
  • ConfirmationMessageState — ユーザーは両方の質問に回答した
いいえ
caseCreated boolean ユーザーがケースを作成したかどうかを示します。
  • true — ユーザーはケースを作成した
  • false — ユーザーはケースを作成しなかった
いいえ

カスタム Aura コンポーネントは、このシステムイベントをリスンし、必要に応じて処理できます。たとえば、ユーザーがコンテンツを役立たたないと判断した場合に、コンポーネントで別のプロセスを開始できます。

システムイベントをリスンするサンプルコンポーネントを次に示します。

1<aura:component implements="forceCommunity:availableForAllPageTypes">
2    <aura:attribute name="message" type="String" required="false"/>
3    <aura:handler event="lightningcommunity:deflectionSignal" action="{!c.handleSignal}"/>
4    <lightning:formattedText value="{!v.message}"/>
5</aura:component>

このクライアント側コントローラーの例では、システムイベントを処理して、失敗したケースデフレクションがあるかどうかを確認します。つまり、ユーザーがデフレクション項目を役立たないと判断したやりとりがあるかどうかをコントローラーで確認します。

1({
2    handleSignal: function(component, event, helper) {
3        var signal = event.getParams() || {},
4            sourceType = signal.sourceType,
5            payload = signal.payload;
6        // Process case create deflection signals
7        if (sourceType && sourceType === "caseCreateDeflectionModal") {
8            if (payload && payload.deflectionAnswer === "NO") {
9                component.set("v.message", "Sorry you didn't find that helpful.");
10            }
11            if (payload && payload.caseCreated === true) {
12                component.set("v.message", "We Apologize For The Inconvenience. We'll get in touch with you shortly about your case.");
13            }
14        }
15    }
16})

ケース作成フォームおよびケースデフレクションコンポーネントとして機能するカスタム Aura コンポーネント��、このイベントを起動できます。有効なパラメーターが指定されると、レポートを作成するためにイベントが自動的に処理されます。この例では、コンポーネントの属性の値を使用して lightningcommunity:deflectionSignal イベントを起動します。

1fireCaseDeflectionSignal : function(component, shouldSubmitSourceTypeSignals) {
2    var evt = $A.get("e.lightningcommunity:deflectionSignal");
3    evt.setParams({
4        sourceType: "caseCreateDeflectionModal",
5        source: cmp.get("v.deflectionTerm"),
6        destinationType: component.get("v.deflectionEntityType"),
7        destination: component.get("v.deflectionEntityId"),
8        payload: {
9            deflectionAnswer: component.get("v.deflectionAnswer"),
10            confirmationAnswer: component.get("v.confirmationAnswer"),
11            state: component.get("v.deflectionState"),
12            caseCreated: component.get("v.caseCreated")
13        },
14        shouldSubmitSourceTypeSignals: shouldSubmitSourceTypeSignals
15    });
16    evt.fire();
17}

ユーザーは最終的にケースを作成するか破棄するかを決定する前に、複数のデフレクション項目を連続して表示できます。それぞれの表示で lightningcommunity:deflectionSignal イベントが起動します。すべてのイベントを 1 つのバッチで処理する場合は、ユーザーがケースを破棄または作成する最後のイベントで shouldSubmitSourceTypeSignals=true を設定します。この例では、ケースが作成されたかどうかに基づいて、最後のデフレクション信号イベントを起動します。

1fireCaseCreatedSignal : function(component, caseCreated) {
2    // Send all accumulated signals to the server to be processed
3    var evt = $A.get("e.lightningcommunity:deflectionSignal");
4    evt.setParams({
5        sourceType: "caseCreateDeflectionModal",
6        payload: {
7            caseCreated: caseCreated
8        },
9        shouldSubmitSourceTypeSignals: true
10    });
11    evt.fire();
12}