Tôi hy vọng tôi đã không nhận được kết thúc không chính xác của thanh ở đây (vì tài liệu sitecore không phải là điều tuyệt vời!)Tôi vẫn có thể truy cập vào một mặt tiếp xúc sitecore sau khi phiên bị xóa?
Tôi muốn có một cách để lưu trữ thông tin đối với khách truy cập, tôi mới hợp lý để sitecore , nhưng các giải pháp contact facets seemed the ideal, khá nhiều thực hiện từ cho từ từ liên kết ở trên, cho đến khi nó nhấn sản xuất tôi đã khá hài lòng với nó. Khi tôi lưu trữ thông tin nó vẫn tồn tại, tôi có thể đọc nó:
public IMpmVisitorFacet GetMpmVisitorFacet()
{
return _contact.GetFacet<IMpmVisitorFacet>(_MPMVisitorConfigName);
}
và đặt thông tin và mọi thứ có vẻ tuyệt vời. Tôi cũng có thể thấy sitecore SC_ANALYTICS_GLOBAL_COOKIE
được thiết lập, mọi thứ dường như tuyệt vời. Sau đó, tôi đã thực hiện một số kiểm tra kỹ lưỡng hơn ...
Vấn đề có vẻ là dữ liệu không tồn tại lâu dài. Nếu tôi đặt một số thông tin vào khía cạnh nó sẽ treo xung quanh trong một giờ hoặc lâu hơn (tôi có thể đóng trình duyệt của mình, nhìn vào các trang web khác, v.v.) và tôi sẽ có thể truy cập nó nhưng sau một số lượng thời gian "nó chỉ là tất cả biến mất.
Sau khi xem xét lại các tài liệu (có tôi đã đề cập rằng họ đang không phải là rất tốt) tôi nhận thấy một cảnh báo trong một câu mà tôi không nhìn thấy trước đây:
Vâng, tôi có thể tạo một trang web dưới dạng chỉ đọc số nhân viên . Điều đó sẽ cho tôi thấy rằng dữ liệu facet liên hệ đang được lưu trữ ít nhất là trong bộ nhớ. Nhưng còn lưu trữ vĩnh viễn thì sao?
Giữ, tôi nghĩ đây là bộ nhớ vĩnh viễn ?! Vì vậy, ví dụ cho thấy một số mã để đọc "khía cạnh".
var contact = Tracker.Current.Contact;
var data = contact.GetFacet<IEmployeeData>("Employee Data");
data.EmployeeId = "ABC123";
.....
<p>Employee data contact facet updated.</p>
<p>Contact ID: <b><%=contact.ContactId.ToString()%></b></p>
<p>Employee #: <b><%=data.EmployeeId%></b></p>
Nhưng khía cạnh này dường như chỉ tồn tại trong một khoảng thời gian ngắn. Sau đó nó tiếp tục:
Đối với lý do hiệu suất Sitecore chỉ ghi dữ liệu liên lạc để XDB khi các ends.This phiên có nghĩa là nếu tôi nhìn trong MongoDB ...
nó sau đó đi vào để hiển thị các dữ liệu trong nó mới hợp thời trang sáng tạo mongoDb thực hiện. Nhưng việc sử dụng nó là gì ở mongo nếu tôi không thể truy cập và sử dụng thông tin đó một cách có lập trình!
Vì vậy, điều này đặt ra câu hỏi làm cách nào để truy cập thông tin liên hệ này sau khi phiên bị hủy?
tức là người dùng đăng nhập vào trang web của tôi -> Tôi thêm một số thông tin vào khía cạnh liên lạc của họ -> họ trở lại vào ngày hôm sau -> Tôi muốn đọc thông tin mà tôi thêm vào trước
Có một số tài liệu khác mà nói về việc truy cập dữ liệu này trong experience profile, đến index into Lucene và in the Experience platform (tại sao có hai sản phẩm có cùng tên chính xác ?!) nhưng không có gì để nói cách truy cập thông tin này trong chính trang web đó, bằng mã.
Để thêm vào các ý kiến của Dmytro Shevchenko:
- tôi có thể nhìn thấy một người sử dụng của tôi trong "Hồ sơ kinh nghiệm" và tôi có thể thấy thăm của tôi đến trang web.
- Tôi biết người dùng này đã có thêm thông tin về khía cạnh của tôi vì nó đã kích hoạt một số mã.
- tôi có thể tìm thấy người dùng của tôi (từ id của đưa ra khỏi chuỗi truy vấn trong trang hồ sơ kinh nghiệm) trong Mongo Db
- Nhưng khi tôi nhìn vào người sử dụng trong MongoDB thông tin bổ sung là không có.
- một số hồ sơ tiếp xúc có dữ liệu này nhưng người khác thì không
Vì vậy, nó dường như là một vấn đề với văn bản thông tin mới để Mongo ... Có ai có bất kỳ sự giúp đỡ hoặc kinh nghiệm tương tự điều này?
* "làm cách nào để truy cập thông tin liên hệ này sau khi phiên bị hủy?" * - bạn có cần truy cập liên hệ với các khía cạnh * bên ngoài * của phiên web (ví dụ: từ dịch vụ nền) không? Hay bạn cần truy cập các khía cạnh của liên hệ trong phiên web mới của cùng một liên hệ? –
Phiên web mới của cùng một liên hệ – Liam
Trong trường hợp đó, dữ liệu sẽ có ở đó. Bạn có chắc đó là cùng một liên hệ chính xác mà bạn đang làm việc trong một phiên web khác không? Kiểm tra 'ContactID'. –