sitecore系列教程之如何以编程方式将访客数据关联到联系人卡片
在我之前关于Sitecore体验资料的帖子中,我们看到了我们如何了解访问者的一切,包括访问他们在访问期间触发的事件。在这篇博客文章中,我将引导您完成识别匿名用户并将用户访问与联系人记录联系起来的过程,这将使我们能够查看联系人的访问历史并了解有关我们联系人的更多信息。
Sitecore的API提供了各种方法来识别访问者并将有关访问者的各种详细信息与联系人记录联系起来。
如何识别匿名访客?
这是识别匿名访客过程中的主要要求之一,以下是我们可以尝试通过各种用户操作捕获有关访问者的信息的一些方法,其中一些列在下面
- 登录网站(注册,使用社交媒体,如Facebook,Twitter等)
- 在网站上提交表格(联系我们,反馈等)
- 使用他们的电子邮件地址订阅时事通讯,文章,白皮书
以上所有选项都需要用户至少向我们提供他们的电子邮件地址,从那里我们可以将唯一的电子邮件地址绑定到访问者。
Sitecore开箱即用,为我们提供了许多方面来存储有关联系人的其他信息。这些数据可以帮助我们填写Sitecore体验资料。
这些方面在此配置{root} \ Website \ App_Config \ Include \ Sitecore.Analytics.Model.config
[sourcecode language =“xml”]
<facets>
<facet name =“Personal”contract =“Sitecore.Analytics.Model.Entities.IContactPersonalInfo,Sitecore.Analytics.Model”/>
<facet name =“Addresses”contract =“Sitecore .Analytics.Model.Entities.IContactAddresses,Sitecore.Analytics.Model“/>
<facet name =”Emails“contract =”Sitecore.Analytics.Model.Entities.IContactEmailAddresses,Sitecore.Analytics.Model“/>
<facet name =”电话号码“contract =”Sitecore.Analytics.Model.Entities.IContactPhoneNumbers,Sitecore.Analytics.Model“/>
<facet name =”Picture“contract =”Sitecore.Analytics.Model.Entities。IContactPicture,Sitecore.Analytics.Model“/>
</ facets>
[/ sourcecode]
将访客的电子邮件地址存储到联系人记录中
我们将使用电子邮件方面 将当前访客的电子邮件地址存储到当前联系人记录中。在电子邮件方面,您可以通过为每个电子邮件地址提供密钥来指定任意数量的电子邮件地址,如下所示,我提供了名为Work Email的 密钥用于存储访问者工作电子邮件地址。您还可以将特定电子邮件地址关联为首选 电子邮件地址,然后将其用于使用电子邮件地址识别联系人。
Sitecore允许您使用电子邮件地址搜索体验资料中的联系人
[sourcecode language =“csharp”]
if(Sitecore.Analytics.Tracker.Current.Contact!= null)
{
var emailFacet = Tracker.Current.Contact.GetFacet <IContactEmailAddresses>(“Emails”);
//检查联系人
是否已存在工作电子邮件地址if(!emailFacet.Entries.Contains(“工作电子邮件”))
{
IEmailAddress email = emailFacet.Entries.Create(“工作电子邮件”);
email.SmtpAddress =“访客的电子邮件地址”;
emailFacet.Preferred =“工作电子邮件”;
}
}
[/源代码]
将访客的个人信息存储到联系人记录中
我们将使用Personal facet 将当前访问者的个人信息存储到当前联系人记录中.Sitecore允许您使用任何名称属性(如FirstName,LastName,Surname)搜索体验配置文件中的联系人。
[sourcecode language =“csharp”]
if(Sitecore.Analytics.Tracker.Current.Contact!= null)
{
var personalFacet = Tracker.Current.Contact.GetFacet <IContactPersonalInfo>(“Personal”);
personalFacet.Title =“Name_Title”;
personalFacet.FirstName =“First_Name”;
personalFacet.MiddleName =“Middle_Name”;
personalFacet.Surname =“Last_Name”;
personalFacet.Gender =“性别”;
personalFacet.JobTitle =“Job_Title”;
personalFacet.BirthDate = new DateTime(1983,01,01);
}
[/源代码]
将访客的电话号码存储到联系人记录中
我们将使用电话号码方面 将当前访客的电话号码存储到当前的联系人记录中。在电话号码 方面,您可以通过为每个电话号码提供密钥来指定任意数量的电话号码,如下所示我有提供称为手机 的密钥来存储访客的手机号码。您还可以将特定号码关联为首选 电话号码。
[sourcecode language =“csharp”]
if(Sitecore.Analytics.Tracker.Current.Contact!= null)
{
var phoneFacet = Tracker.Current.Contact.GetFacet <IContactPhoneNumbers>(“Phone Numbers”);
if(!phoneFacet.Entries.Contains(“Cell Phone”))
{
IPhoneNumber cellPhone = phoneFacet.Entries.Create(“Cell Phone”);
cellPhone.CountryCode =“001”;
cellPhone.Number =“612-000-0000”;
cellPhone.Extension =“8455”;
phoneFacet.Preferred =“手机”;
}
}
[/源码]
将访客的图像/图片存储到联系人记录中
我们将使用Picture facet 将当前访客的图片存储到当前的联系人记录中,
[sourcecode language =“csharp”]
if(Sitecore.Analytics.Tracker.Current.Contact!= null)
{
MediaItem mediaItem = Sitecore.Context.Database.GetItem(“媒体项目的指南”);
var stream = mediaItem.GetMediaStream();
var memoryStream = new MemoryStream();
if(stream!= null)stream.CopyTo(memoryStream);
var pictureFacet = Tracker.Current.Contact.GetFacet <IContactPicture>(“Picture”);
pictureFacet.Picture = memoryStream.ToArray();
pictureFacet.MimeType = mediaItem.MimeType;
}
[/源代码]
如何识别已知访客?
一旦我们使用上述方法存储了有关访问者的信息,Sitecore就允许我们使用Sitecore.Analytics.Tracker.Current.Session.Identify方法识别已知访问者。此方法接受一个字符串变量,该变量是访问者的电子邮件地址。
[sourcecode language =“csharp”]
var identifiers = Sitecore.Analytics.Tracker.Current.Contact.Identifiers;
if(identifiers.IdentificationLevel == ContactIdentificationLevel.Anonymous)
{
Sitecore.Analytics.Tracker.Current.Session.Identify(“访客的电子邮件地址”);
}
[/ sourcecode]
摘要
使用Sitecore的新API,开发人员现在可以更轻松地关联访问者的各种信息并将其与联系人卡片联系起来,这将极大地帮助营销人员更好地了解访问者。一旦我们能够使用电子邮件地址关联访问者,我们还可以使用来自CRM系统(如Salesforce或Dynamics)的信息更新记录。
转载于:https://www.cnblogs.com/BlogNetSpace/p/9935023.html
sitecore系列教程之如何以编程方式将访客数据关联到联系人卡片相关推荐
- sitecore系列教程之目标功能有什么新意?
由于SItecore 8中有很多令人兴奋的东西,我选择专注于体验平台的特定领域,这篇文章的主题是目标. 1.客户智能选项 目标项目(/ sitecore / system / Marketing C ...
- MSDN Visual系列:在WSSv3中编程方式激活单个文档库的审核功能
原文:http://msdn2.microsoft.com/en-us/library/bb418730.aspx WSSv3有一个很强大基础结构,专门用来审核用户对页面,文档和列表项的访问.您可以在 ...
- android 通讯录 编程,以编程方式批量添加数千个Android联系人
使用ContentResolver.applyBatch和ContentResolver.bulkInsert方法一次性添加数千个联系人非常慢. Android是否提供了批量添加联系人的不同方式,这种 ...
- 【Java基础系列教程】第一章 编程入门
一.计算机概述 1.1 计算机简介 计算机(computer)俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能.是能够按照程序运行,自动.高速处 ...
- 三菱plc支持c语言,5.三菱FX系列PLC支持哪种编程方式.
菱F列以"病人为中心"的优质护理服务工作模式是 支持"礼乐征伐自天子出"出自(). 编程"孝悌也者,其为人之本与."出自(). 菱F列被称为 ...
- com编程创建快捷方式中文_如何以编程方式为博客创建wordcloud?
com编程创建快捷方式中文 Recently, I was in need of an image for our blog and wanted it to have some wow effect ...
- 自动驾驶 Apollo 源码分析系列,感知篇(九):感知融合中的数据关联细节
前一篇文章讲了,Apollo 6.0 中融合的代码逻辑流程,但那是基于软件的角度进行梳理和分析的,这一篇文章基于上篇的成果进一步对算法进行更详细的分析,因为代码量奇大,所以本文重点讨论数据关联的一些细 ...
- 【MySQL系列教程】
<MySQL系列教程>目录大纲: 介绍 <MySQL系列教程>是继<JavaSE系列教程>之后又一部力作,本系列教程分为初中级.高级两大部分:涵盖绝大部分MySQL ...
- AIR780E系列教程目录
AIR780E系列教程将包含,硬件设计,AT使用,CSDK开发和LuatOS开发多方面内容 软件与驱动 怎么在win7上安装AIR780E的USB驱动 AT使用 AIR780E使用AT连接TCP收发数 ...
最新文章
- 文件的特殊权限:suid sgid sticky
- android仿苹果SwitchButton效果的实现
- 生成二维码接口,前端调用接口将二维码显示在页面上
- shell脚本详解(二)——条件测试、if语句和case分支语句
- windows 10打开或禁用管理员账户
- rf框架的缺点_2017热门开源自动化测试框架优缺点对比
- 数据洪流时代,开发者这样硬核突围!
- Redis命令参考【EXPIRE】
- java线程day-01
- 【Android游戏开发二十】物理游戏之重力系统开发,让你的游戏变得有质有量!...
- Java求出1000内的完数
- 《机器学习》二刷超详细笔记| 第一章 绪论
- import matplotlib 出现“No module named 'pyparsing'“问题
- 「山东城商行联盟数据库准实时数据采集系统」入选2021中国大数据应用样板案例
- Unity ipad UI适配
- python读取excel合并单元_python读取excel合并方法
- 技术前言 - 芯片制造工序详解
- 一建工程经济的关键数据推导及关键记忆点
- Qt下载安装教程,windows10亲测可用,版本5.12.11
- 浅夏,绿色延伸,就连邻家墙角的蔷薇也羞红了脸
热门文章
- Java8 新特性lambda表达式(一)初始
- HTML5新增的一些特性
- 不要忽视任何小问题!!!一个XML的XPath的问题.....
- 10.21 nmap:网络探测工具和安全/端口扫描器
- Docker 多机网络
- qstring转qchar_Qt 对QString操作
- mysql用sql语句怎么做个脚本备份_mysql备份脚本
- zcmu 4935(排序)
- 免费下载|《云原生时代下的App开发》走进阿里云一站式应用研发平台EMAS
- ChaosBlade:从混沌工程实验工具到混沌工程平台