2016-09-09 28 views
5

Tôi đã đọc qua https://sitecore-community.github.io/docs/xDB/the-xdb-contact/https://doc.sitecore.net/sitecore_experience_platform/81/setting_up__maintaining/xdb/contacts/contact_tracking.Theo dõi liên hệ Sitecore: cách thức hoạt động?

Tôi muốn biết liệu theo dõi liên hệ của Sitecore có hoạt động cho khách hàng của tôi hay không.

Tôi đã tạo một chức năng đăng ký bản tin đơn giản (không cần gửi biểu mẫu WFFM). Khi người dùng gửi thông tin của anh ấy cùng với các chi tiết cá nhân và email, tôi sẽ gửi liên kết email xác nhận. Sau khi xác nhận địa chỉ email, tôi đang tạo danh bạ thông qua mã. Cảm ơn Brian!

Chế độ trạng thái phiên ứng dụng của tôi là InProc.

Câu hỏi của tôi là, nếu người dùng đang tương tác với các trang web với một phiên làm việc mới sau khi đăng ký (sau khi nộp email):

Will Sitecore xác định người sử dụng như tiếp xúc (và hợp nhất tiếp xúc mang tính chất hiện có) hoặc nó sẽ tạo ra liên hệ ẩn danh mới mỗi lần?

Tôi KHÔNG sử dụng bất kỳ dịch vụ sau đây trong dung dịch của tôi:

  • phát hiện thiết bị
  • Dịch vụ GeoIp
  • FXM

Trả lời

6

cách tiếp cận của bạn

Nó dường như với tôi rằng việc tạo thủ công địa chỉ liên hệ hoàn toàn không cần thiết trong trường hợp của bạn.

Như tôi hiểu từ bài viết của bạn, đây là những gì sẽ xảy ra:

  1. Một người dùng truy cập trang web của bạn.
  2. Sitecore tạo một liên hệ mới (ID: xxx).
  3. Người dùng duyệt trang web và gửi biểu mẫu của bạn.
  4. Email xác nhận được gửi đến địa chỉ email của người dùng.
  5. Người dùng nhấp vào liên kết trong email và truy cập trang xác nhận trên trang web.
  6. Mã của bạn tạo một liên hệ mới trong xDB (ID: yyy).

Kết quả là, bạn có hai liên hệ riêng biệt trong xDB không liên quan với nhau, từ quan điểm của Sitecore.

Bây giờ, câu hỏi của bạn:

Will Sitecore xác định người sử dụng như tiếp xúc (và hợp nhất tiếp xúc mang tính chất hiện có) hoặc nó sẽ tạo mới tiếp xúc mang tính chất mỗi lần?

Nếu dùng đang truy cập từ cùng một trình duyệt, Sitecore sẽ nhận ra chúng như sự tiếp xúc ban đầu (ID: xxx) dựa trên một cookie.Sitecore sẽ không tạo một liên hệ mới trong trường hợp này.

Nếu người dùng đang truy cập từ trình duyệt hoặc thiết bị khác, người đó sẽ không được nhận dạng là bất kỳ liên hệ hiện tại nào và người liên hệ ẩn danh mới sẽ được tạo (ID: zzz).

Như bạn có thể thấy, Sitecore không có cách nào tự động sử dụng liên hệ bạn đã tạo (ID: yyy).

kiến ​​nghị giải pháp

Cách duy nhất để làm cho Sitecore nhận ra một người sử dụng như một số liên lạc cụ thể là sử dụng identification API. Nói tóm lại, những gì bạn có thể làm là thế này:

Sitecore.Analytics.Tracker.Current.Session.Identify(identifier); 

Đây là những gì tôi đề nghị bạn làm:

  • Do không tạo danh bạ mới bằng tay-có chỉ không có nhu cầu cho điều đó.
  • Khi người dùng đã gửi biểu mẫu, bạn gọi Identify() và chuyển địa chỉ email của người dùng là identifier. Thao tác này sẽ đặt địa chỉ email của người dùng làm số nhận dạng của liên hệ hiện tại.
  • Khi người dùng quay trở lại từ liên kết email bạn đã gửi, bạn gọi lại Identify() một lần nữa. Điều này sẽ đảm bảo rằng, ngay cả khi người dùng đến từ một thiết bị khác, cùng một liên hệ xDB sẽ được sử dụng trong phiên của anh ta. Bạn cần phải chuyển cùng một địa chỉ email đến Identify(), vì vậy, hãy đảm bảo bạn có quyền truy cập vào địa chỉ email đó — ví dụ: bạn có thể đưa địa chỉ đó vào liên kết xác nhận email của mình dưới dạng tham số chuỗi truy vấn.
  • Sử dụng Sitecore.Analytics.Tracker.Current.Contact và điền số liên lạc hiện tại facets bằng thông tin bạn đã thu thập về người dùng.
  • Nếu bạn có chức năng đăng nhập, hãy nhớ gọi Identify() về các lần đăng nhập thành công — một lần nữa, điều này đảm bảo rằng cùng một liên hệ được sử dụng cho tất cả các phiên của cùng một người dùng.
+1

Cảm ơn bạn rất nhiều! Điều này thực sự giúp tôi hiểu rõ hơn về địa chỉ liên hệ. –

Các vấn đề liên quan