哪里可以查看全球地址列表
你可以把全球地址列表(GAL)看作是一个组织中每个人的大电话簿或联系名单。它拥有所有在那里工作的人的姓名、电子邮件地址、电话号码和其他细节。从本质上讲,GAL是一个中央目录,帮助组织内的人轻松找到并联系到彼此。这是一个方便的工具,当你需要给某人发送电子邮件或给他们打电话时,可以查找他们的联系信息。
要在微软Outlook中检查你的组织的全局地址列表,你所需要做的就是遵循这些步骤:
- 启动微软Outlook。
- 打开一个新的电子邮件窗口。
- 点击 "到"。
- 选择全球地址列表或默认全球地址列表选项。
那么GAL同步化呢?
正如我们刚才提到的,你看到的全局地址列表取决于你在组织内使用的服务器。如果组织内有多个服务器,Outlook中显示的GAL是与你所连接的服务器相关的。
不支持访问多个GAL。如果你需要,解决方案是去做GAL同步,在一个单一的GAL中获得所有的信息。
但你什么时候会需要这样做呢?下面是一些可能需要这样做的情况:
- 兼并与收购 - 如果A公司与B公司合并,同步两个公司的全局地址列表将使最终用户的生活更容易,因为所有的联系信息现在将是两个结构的共同点。你可以阅读更多关于Exchange服务器在并购情况下的挑战,请查看以下内容 博文.
- 合作伙伴 - 当一个公司A与公司B的合作伙伴,有一个固有的增加双方之间的沟通。因此,GAL同步是保证双方都能方便地获取所有联系信息的完美方式。
- 多个微软Exchange服务器 - 在同一集团内运作的公司可以连接到他们自己的Exchange环境,这很常见,例如,当子公司分布在不同的国家。想象一下,公司集团A在全球有几个分支机构,每个分支机构都有自己的IT基础设施和不同的Exchange服务器。那么,如果欧洲分公司的员工被重新分配到同一公司集团A的北美分公司,GAL同步也可以派上用场。
那么,当面临这些类型的情况时,如何在其他微软Exchange服务器上同步全局地址列表?有什么简单的方法可以做到这一点吗?
public void Execute(IServiceProvider serviceProvider) { var tracingService = (ITracingService) serviceProvider.GetService(typeof(ITracingService)); var context = (IPluginExecutionContext) serviceProvider.GetService(typeof(IPluginExecutionContext)); var serviceFactory = (IOrganizationServiceFactory) serviceProvider.GetService(typeof(IOrganizationServiceFactory)); var service = serviceFactory.CreateOrganizationService(context.UserId); if (!context.InputParameters.Contains("Target") || !(context.InputParameters["Target"] is Entity) { 返回; } var entity = (Entity) context.InputParameters["Target"]; var isLoginEnabled = HasLoginEnabled(entity); 如果(isLoginEnabled == false) { 返回; } 试试 { var emailAddress = (string) entity["emailaddress1"]; var contactsWithSameEmailAddress = GetContactsByEmailAddress(service, entity.Id, emailAddress); 如果(contactsWithSameEmailAddress.Entities.Count > 0) { var hasLoginEnabled = HasLoginEnabled(contactsWithSameEmailAddress.Entities[0]); 如果(hasLoginEnabled) { throw new InvalidPluginExecutionException(OperationStatus.Failed、 "用户已经存在。尝试用不同的电子邮件地址来注册,或登录你现有的账户。"); } var mergeRequest = new MergeRequest { SubordinateId = entity.Id、 目标 = new EntityReference("contact", contactsWithSameEmailAddress.Entities[0].Id)、 UpdateContent = GetUpdateContent(entity) }; var _ = (MergeResponse) service.Execute(mergeRequest); entity[CustomAttributeName] = true; service.Update(entity); } 否则 { var domain = emailAddress.Split('@')[1]; 如果(_publicDomains.Contains(domain)) { SendEmailAndDeactivateContact(service, tracingService, entity); } 否则 { var contactsWithSameDomain = GetContactsByDomain(service, entity.Id, domain); 如果(contactsWithSameDomain.Entities.Count > 0) { entity["parentcustomerid"] = contactsWithSameDomain.Entities[0]["parentcustomerid"] ; service.Update(entity); } 否则 { SendEmailAndDeactivateContact(service, tracingService, entity); } } } } 捕获(FaultException关闭代码前)。 { 抛出新的InvalidPluginExecutionException("ContactPostOperationPlugin发生错误。", ex); } }
GAL与CB Exchange Server Sync的同步性
CB Exchange Server Sync你可能已经知道,这是我们为微软Exchange服务器提供的内部同步工具。它的主要目的是在几个Exchange环境中,无缝地同步任何电子邮件、日历、联系人、笔记、任务和文件夹,同时完全在后台运行。
正如我们所有的软件解决方案的通常做法一样,我们不断寻找方法来改进和利用我们开发的产品的力量。结果是、 在CB Exchange Server Sync自我托管版本的最新更新中,我们发布了一个全新的附加组件,名为 CB GAL同步!你可能可以非常准确地猜到这个新插件的作用,但我们还是要继续解释。
除了电子邮件,日历,联系人,笔记,任务和文件夹,你现在可以同步你的全球地址列表与其他微软Exchange环境。这使得CB GAL同步是理想的解决方案,以解决所有的情况下,我们刚才描述的
安装是非常容易的,所以你不必花无休止的时间去弄清楚如何让整合开始运行。除了软件本身是直接的,我们还有 在线文件 和我们的 支持门户网站 为您提供。
你准备好开始同步你的全球地址列表了吗? 取得联系 与我们合作,我们将带你到那里去!
关于作者

作者 Diogo Gouveia
"在英国完成学业后,我加入了Connecting Software的营销团队,创建关于软件集成和其他各种IT主题的内容。如果你有任何意见或建议,请联系我"。