ユーザーIDのシナリオ別にデバイスタグが変化する仕組み
デバイスタグとユーザータグは独立して動作します。ユーザーIDのシナリオが異なるときに顧客データが意図せず上書きされるのを防ぐため、FlareLaneは次のポリシーを適用します。
新規割り当て(null -> ユーザーA)
Section titled “新規割り当て(null -> ユーザーA)”ユーザーAが存在しない場合、現在のデバイスのすべてのタグがユーザーAにもコピーされます
// 連携前
Device (Anonymous){ tags: { "tag1": "1", "tag2": "2", "tag3": "3" }}
User A not exists// .setUserId("User A") の実行後
Device (User A){ tags: { "tag1": "1", "tag2": "2", "tag3": "3" }}
User A{ tags: { "tag1": "1", "tag2": "2", "tag3": "3" }}ユーザーAがすでに存在する場合、ユーザーAがまだ持っていないタグのみがコピーされます
// 連携前
Device (Anonymous){ tags: { "tag1": "1", "tag2": "2", "tag3": "3" }}
User A{ tags: { "tag1": "A", "tag2": "B", }}// .setUserId("User A") の実行後
Device (User A){ tags: { "tag1": "A", "tag2": "B", "tag3": "3" }}
User A{ tags: { "tag1": "A", "tag2": "B", "tag3": "3" }}ユーザーの切り替え(ユーザーA -> ユーザーB)
Section titled “ユーザーの切り替え(ユーザーA -> ユーザーB)”ユーザーBが存在しない場合、ユーザーAのタグはコピーされず、すべてリセットされます
// 連携前
Device (User A){ tags: { "tag1": "1", "tag2": "2", "tag3": "3" }}
User B not exists// .setUserId("User B") の実行後
Device (User B){ tags: {}}
User B{ tags: {}}ユーザーBが存在する場合、コピーは行われず、すべてユーザーBのプロフィールに切り替わります
// 連携前
Device (User A){ tags: { "tag1": "1", "tag2": "2", "tag3": "3" }}
User B{ tags: { "tag1": "A", }}// .setUserId("User B") の実行後
Device (User B){ tags: { "tag1": "A" }}
User B{ tags: { "tag1": "A", }}割り当ての解除(ユーザーA -> null)
Section titled “割り当ての解除(ユーザーA -> null)”現在のデバイスのすべてのタグがリセットされます
// 連携前
Device (User A){ tags: { "tag1": "1", "tag2": "2", "tag3": "3" }}// .setUserId(null) の実行後
Device (Anonymous){ tags: {}}