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

TFS 2012团队警报不发送电子邮件,tfs,Tfs,我无法使TFS 2012的团队警报正常工作。我的问题与这个基本相同()。但由于我能在我的问题中详细阐述一下,我决定再问一次 个人警报确实有效,因此这不是一个明显的smtp服务器错误 团队警报不起作用 我们的TFS未连接到active directory 所有用户都在其首选项中指定了“首选电子邮件” 用户被分配到“我的警报”指定的团队 这是一个工作正常的个人警报示例 下面是一个团队警报的示例,它不起作用 除了过滤器中的“通配符”参数外,设置基本相同 TFS从何处选择[成员的默认警报地址]?

我无法使TFS 2012的团队警报正常工作。我的问题与这个基本相同()。但由于我能在我的问题中详细阐述一下,我决定再问一次

  • 个人警报确实有效,因此这不是一个明显的smtp服务器错误
  • 团队警报不起作用
  • 我们的TFS未连接到active directory
  • 所有用户都在其首选项中指定了“首选电子邮件”
  • 用户被分配到“我的警报”指定的团队
这是一个工作正常的个人警报示例

下面是一个团队警报的示例,它不起作用

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

TFS从何处选择[成员的默认警报地址]?这和首选电子邮件不一样吗

任何指点都将不胜感激

附录

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

Team Foundation服务器管理控制台显示<强>启用的警报和正确设置

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

我没有找到使用命令提示符工具()激活警报的方法,只有管理控制台中的复选框

目前主要线索是:

  • TFS从何处选择[成员的默认警报地址]
  • 为什么启用/禁用警报不匹配

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

    Team Foundation Server的服务帐户(占位符TFSService所指)必须是具有发送电子邮件权限的域帐户,您的SMTP服务器必须配置为允许匿名发件人发送电子邮件,或者您之前必须创建一个专门用于提醒的电子邮件帐户的帐户。

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


    有关详细信息,请参阅您在警报资源管理器中添加的警报,但未指定任何团队项目。一旦我添加了团队项目过滤器,它就开始工作了。

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

    以下是我为确保发送团队警报而采取的步骤

  • 确保您的设置正确
  • 确保团队警报中包含团队项目筛选器
  • 在Team Foundation服务器管理控制台启用团队通知
  • 使用tfsconfig命令提示符工具启用团队警报(这是一项未记录的功能)
    tfsconfig configuremail/Enabled:True
  • 检查事件查看器日志
  • 确保所有名称都简单明了,没有任何撇号或特殊字符,尝试只使用一个成员并进行测试,每次使用测试开始增加成员数量,直到解决问题为止。(感谢来自的M.Radwan)
  • 使用本指南诊断电子邮件和SOAP订阅失败
  • 确保广告中的用户有正确的电子邮件

  • 在遵循了这里的所有说明(并且发现了奇怪的未记录的启用/禁用配置)之后,我仍然有同样的问题

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


    因此,除非有人编写插件(或TFS团队更改插件在引擎盖下的工作方式),否则团队警报需要Active Directory才能正常工作。

    如果上述方法无效,则将此作为额外的验证步骤发布。我在TFS 2012工作。我最初一步一步地完成了上面概述的步骤,收到了电子邮件通知,但是过了一段时间,它就停止了

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


    在看到以下Microsoft文档后,我最初搜索了服务列表,查找以TFS开头的内容:我找到了相关的服务

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

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


    我很惊讶它能起作用;-)

    我通过从TFS管理员/警报通知屏幕向每个成员发送一封测试警报电子邮件,解决了这个问题。我的理解是,通过这种方法,它填充这些电子邮件地址,并知道发送到哪里。显然,MS测试人员错过了他们团队已经在某处兑现的b/c电子邮件。在我的例子中,我有一个小的创业团队,但我可以想象,对于企业集团来说,这可能是一项相当艰巨的工作

    只需在本地计算机(TFS计算机)上承载SMTP,并将