resetState resetstate

この機能は、単一ページのサイト/画面またはアプリでの ID の使用に関連する問題を解決するために、主に A4T のお客様向けに設計されています。

ユースケース section-840b88a5cdb042488b340cad5d7b22a5

訪問者ID サービスを使用するA4Tのお客様は、次の場合にvisitor.resetState()関数を使用できます。

  • リダイレクトを使用して、補助的なデータ ID(SDID)またはその他の任意の ID を 1 つのページまたは画面から別のページに渡す。 通常、訪問者ID サービスはこの関数なしでは、このIDを渡しません。
  • Ajax 呼び出しを通じてページまたはアプリの特定のセクションのみを更新するコードを使用し、それらのアクションを追跡する必要がある。 例えば、オブジェクトをクリックすると、特別なセクションのみが読み込まれたり変更されたりするページがあるとします。 この場合、訪問者ID サービスは、ページが再読み込みされない限り、別のIDをリクエストすることはできません。 しかし、visitor.resetState() を使用すると、この条件でも新しい ID をリクエストできます。

以下のコードサンプルを参照してください。

構文 section-9e63503e178f4be28ac850abf44d6d91

構文: visitor.resetState( *state*);

コードサンプル section-d75b211bb4ea473887eb284de2ad838b

訪問者ID サービスの実装は、この関数の使用方法に影響します。 例については、以下の表を参照してください。

サーバー側実装

サーバーサイド実装は、Target、Analytics、および訪問者ID サービスのサーバーサイドとクライアントサイドの両方の実装を持つA4Tのお客様向けです。 この方法で訪問者ID サービスを設定した場合は、ページにvisitor.resetState()を追加するだけです。 訪問者ID サービスへの呼び出しでは、新しいIDとサーバーの状態が自動的に返されます。

非標準的な実装(ID を渡す場合)

非標準の実装で訪問者ID サービスを設定している場合は、visitor.resetState()で渡すSDID (または他のID)を保持するように変数オブジェクトを設定する必要があります。 以下に示すように、これにはIMS組織IDと渡すIDが含まれます。 コードは、以下の例のようになります。

//Instantiate server state variable
var serverState = {
     "INSERT-IMS-ORG-ID-HERE": {
          //Specify the SDID or other ID
          supplementalDataIDCurrent: "1234",
          supplementalDataIDCurrentConsumed: {
               "payload:top-center": false
          }
     }
};

//Instantiate Visitor ID Service
var visitor = Visitor.getInstance ("INSERT-IMS-ORG-ID-HERE", {
     ...
});

//Reset server state to pass the SDID
visitor.resetState(serverState);

非標準的な実装(ID を渡さない場合)

この場合は、visitor.resetState() を使用して新しい ID を生成できます。 これは、単一ページアプリで、ユーザーがページを更新せずに新しい画面に移動して新しい ID が必要になる場合に役に立ちます。


//Instantiate Visitor ID Service
var visitor = Visitor.getInstance ("INSERT-IMS-ORG-ID-HERE", {
     ...
});

//Request a supplemental Data ID for consumer1 and consumer2:
var sdid1 = visitor.getSupplementalDataID("consumer1"); // sdid1: 1234
var sdid2 = visitor.getSupplementalDataID("consumer2"); // sdid2: 1234

//User navigates to a new screen in a single-page app, without refreshing the page.
//To reset the Supplemental Data ID internal, call resetState without passing any parameters.
//This way we will not be recycling the `1234` ID anymore. Instead Visitor will generate a new supplemental Data ID going forward.
visitor.resetState();

//Request a supplemental Data ID for consumer3 and consumer4:
var sdid1 = visitor.getSupplementalDataID("consumer3"); // sdid1: 5678

var sdid2 = visitor.getSupplementalDataID("consumer4"); // sdid2: 5678
recommendation-more-help
id-service-help