TFS 2012团队警报不发送电子邮件

时间:2013-01-28 16:15:45

标签: tfs tfs2012

我无法让TFS 2012的团队提醒工作。我的问题基本上与这个问题相同(TFS 2012 Team Alerts do not work)。但由于我能够在我的问题中详细说明,我决定再问一遍。

  • 个人警报可以正常工作,因此它不是一个明显的smtp服务器错误
  • 团队提醒无法正常工作
  • 我们的TFS未连接到活动目录
  • 所有用户都在其偏好设置中指定了“首选电子邮件”
  • 根据我的提醒
  • 指定用户分组

这是个人警报工作正常的例子

Example of personal alert that works

以下是工作

的团队提醒示例

Example of team alert that does not work

除了过滤器中的“通配符”参数外,设置基本相同

TFS在哪里选择 [会员的默认提醒地址] ?这与首选电子邮件不一样吗?

任何指针都将不胜感激

附录

查看Tfs cammand提示工具(tfsconfig configuremail)和管理控制台会引发更多问题

Team Foundation Server管理控制台显示已启用警报并更正设置

Team Foundation Server Administration Console, Email Alert Settings

但命令提示工具tfsconfig configuremail表示警报已禁用

tfsconfig configuremail

我发现无法使用命令提示工具(http://msdn.microsoft.com/en-us/library/vstudio/dd236903.aspx)激活警报,只有管理控制台中的复选框

截至目前的主要线索:

  1. TFS在哪里选择 [会员的默认提醒地址]
  2. 如何启用/禁用警报不匹配?

8 个答案:

答案 0 :(得分:14)

我已决定自己回答这个问题,主要是因为对于没有活动目录的tfs来说它可能不是一个合适的解决方案(基于this帖子中的回答/评论)

这些是我为确保发送团队提醒而采取的步骤

  1. 确保您的设置正确无误 http://msdn.microsoft.com/en-us/library/ms400808(v=vs.110).aspx
  2. 确保您在团队警报中拥有团队项目过滤器
  3. 在Team Foundation Server管理控制台中启用团队警报 Team Foundation Server Administration Console
  4. 使用tfsconfig命令提示工具启用团队警报(这是一个未记录的功能) tfsconfig configuremail /Enabled:True
  5. 检查事件查看器日志 Tfs Event Viewer log
  6. 确保所有名称都是直截了当的,没有任何撇号或特殊字符,尝试只有一个成员并测试并开始每次测试时增加成员数量,直到遇到问题为止。 (感谢M. Radwan来自this answer
  7. 使用本指南诊断电子邮件和SOAP订阅失败 http://blogs.msdn.com/b/granth/archive/2009/10/28/tfs2010-diagnosing-email-and-soap-subscription-failures.aspx
  8. 确保广告中的用户拥有正确的电子邮件

答案 1 :(得分:6)

在遵循此处的所有说明(并发现奇怪的未记录的启用/禁用配置)之后,我仍然遇到了同样的问题。

然后我读了this question - 似乎答案是一样的:如果没有Active Directory,TFS将不会发送团队警报。用户可以设置他们的首选电子邮件地址,然后TFS将作为“[会员的默认电子邮件地址]”同步到Active Directory。如果未找到Active Directory,则该同步将不起作用,这意味着它们的默认电子邮件为空。空白电子邮件表示没有发送警报(这意味着没有关于发送失败的错误)。

因此,除非有人编写插件(或TFS团队更改其工作方式),否则您需要Active Directory才能使团队警报生效。

答案 2 :(得分:2)

如果上述内容无效,则将此作为验证的附加步骤发布。我正在使用TFS 2012.我最初执行上面列出的步骤并收到电子邮件通知,但是过了一段时间它就停止了。

重复上述步骤并且没有成功后,我引用了事件查看器应用程序和服务日志 - > Microsoft-Team Foundation Server - >调试为Urban提及。我发现了数千个与TFSJobAgent有关的错误。我选择重启服务: “Visual Studio Team Foundation后台作业代理” 通过管理工具通过Services.msc,并立即收到所有待处理的电子邮件警报。

我最初搜索服务列表,在查看此Microsoft文档后查找以TFS开头的内容:http://msdn.microsoft.com/en-us/library/ms253108.aspx我找到了相关服务。

答案 3 :(得分:0)

要发送电子邮件通知,您必须在部署中配置以下内容,请确保 必须将防火墙配置为允许Team Foundation Server和SMTP服务器之间的通信。

Team Foundation Server的服务帐户(由占位符TFSService引用)必须是具有发送电子邮件权限的域帐户,必须将SMTP服务器配置为允许匿名发件人发送电子邮件,或者您必须先创建专门用作警报电子邮件帐户的帐户。

如果您使用系统帐户(例如网络服务)作为Team Foundation Server的服务帐户,则必须配置SMTP服务器以允许匿名发件人发送电子邮件,或者您必须确保配置集成身份验证适合您的部署的设置。如果不这样做,将不会发送电子邮件通知。

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ms400808.aspx

答案 4 :(得分:0)

您在Alert Explorer中添加了警报,但未指定任何Team Project。一旦我添加了团队项目过滤器,它就开始工作了。

答案 5 :(得分:0)

我有同样的问题。您的内部smtp服务器(仅发送内部电子邮件)不需要身份验证。

我设置为用户名:匿名 密码:123

我很惊讶它有效; - )。

答案 6 :(得分:0)

我通过从TFS管理员/警报通知屏幕向每个成员发送测试警报电子邮件来修复此问题。我的理解是通过这种方法填充这些电子邮件地址并知道在哪里发送。显然,MS测试人员错过了这个b / c他们小组的电子邮件已经兑现的地方。在我的情况下,我有一个小型创业集团,但我可以想象,对于企业集团来说,这可能是一项非常重要的工作。

答案 7 :(得分:0)

只需在本地计算机(TFS计算机)上托管SMTP,并将本地计算机的IP与127.0.0.1一起放入“中继”部分。

我几个小时都在为这个错误而奋斗,最后它解决了我的问题......