Team Foundation Server 2008 电子邮件通知 - 错误 TF50282

Team Foundation Server 2008 电子邮件通知 - 错误 TF50282

我正在尝试让我们当前安装的 Team Foundation Server (TFS) 2008 正确发送警报和电子邮件通知。

我遇到的主要问题是这个错误:


TF53010:Team Foundation 组件或扩展中发生了以下错误:日期(UTC):2009 年 8 月 18 日下午 3:27:39 计算机:DEV02 应用程序域:/LM/W3SVC/681929560/Root/Services-2-128950828377749110 程序集:Microsoft.TeamFoundation.Server,Version=9.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a;v2.0.50727 进程详细信息:进程名称:w3wp 进程 ID:4484 线程 ID:6072 帐户名称:NT AUTHORITY\NETWORK SERVICE

详细消息:TF50282:无法连接到以下电子邮件服务器:10.1.0.166 错误消息:System.Net.Mail.SmtpException:邮箱不可用。服务器响应为:5.7.1 客户端无权以此发件人发送,位于 System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode, String response),位于 System.Net.Mail.MailCommand.Send(SmtpConnection conn, Byte[] command, String from),位于 System.Net.Mail.SmtpTransport.SendMail(MailAddress sender, MailAddressCollection mailboxes, String deliveryNotify, SmtpFailedRecipientException& exception),位于 System.Net.Mail.SmtpClient.Send(MailMessage message),位于 Microsoft.TeamFoundation.Server.WebServiceNotification.SendOneEmail(Boolean plaintext, String to)

有关详细信息,请参阅帮助和支持中心http://go.microsoft.com/fwlink/events.asp


TFS 的文档说要在 DIVE\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Web Services\Services 中编辑 web.config

我对该文件的编辑如下:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="ConnectionString" value="Application Name=TeamFoundation;Persist Security Info=False;Initial Catalog=TfsIntegration;Data Source=DEV02;Integrated Security=SSPI"/> 
        <add key="eventingEnabled" value="true" />
        <add key="DetailedExceptions" value="false" />
        <add key="emailNotificationFromAddress" value="[email protected]" />
        <add key="smtpServer" value="10.1.0.166" />

<!-- Optional Alert Settings
     AlertUseReplyTo: True, False (default: True). Specifies that the ReplyTo property of the 
                 email alert should be set. When false, the From property is set.
        <add key="AlertUseReplyTo" value="True" />
-->
    </appSettings>
    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
            <probing privatePath="bin\Plugins;bin\Plugins\zh-chs;bin\Plugins\zh-cht;bin\Plugins\de;bin\Plugins\es;bin\Plugins\fr;bin\Plugins\it;bin\Plugins\ja;bin\Plugins\ko"/>
        </assemblyBinding>
    </runtime>
    <system.web>
        <!-- Enable the HttpHandlers for file upload and download -->
        <httpHandlers>
            <add verb="*" path="methodology.asmx" type="Microsoft.TeamFoundation.Client.MethodologyDownloadHandler" />
            <add verb="*" path="methodologyUpload.asmx" type="Microsoft.TeamFoundation.Client.MethodologyUploadHandler" />
        </httpHandlers>
    </system.web>
</configuration>

我想知道的是:

  1. 应如何设立交换?
    • 我们正在运行 Exchange 2007
    • 我几乎确信已设置匿名发送
    • 他们有任何中继器要求吗
  2. 应该如何设置 TFS?-smtpServer 属性应该是内部 IP 还是完全合格的本地域名?-emailNotificationFromAddress 应该是什么?-我已经测试了一个我们知道有效的(Web 应用程序发送给它),但我希望发件人姓名是一个通讯组,以便团队成员可以在必要时回复所有人。(我认为这需要取消注释 AlerUserReplyTo 键,但我只是想让电子邮件正常工作)。

任何意见都非常好!谢谢!

答案1

查看配置,我看不出 TFS 方面有什么明显错误。但是,我们遇到了类似的问题,发现 Exchange 上针对特定服务器的内部中继已关闭。一旦允许它通过,它就可以正常工作。

Tech Republic 有一篇关于在 Exchange 2007 上允许中继的详细文章这里

不过,为了便于将来参考,TFS 2010 借助新的管理控制台使电子邮件发送的配置变得非常简单。只需单击 3 次即可完成。

答案2

Exchange 2007 默认要求您为该发送服务器(TFS 服务器)定义一个连接器,然后它才能连接到 Exchange 并发送消息。或者,如其他帖子所述,打开允许从内部主机进行中继是另一种可能性。

相关内容