TFS позволяет создавать собственные веб-сервисы и вызывать их на определенные евенты.
Если открыть Alerts Explorer (Team Explorer -> RMB -> Alerts Explorer) увидим, что по умолчанию существует 3 типа эвентов:
- Изменен рабочий элемент
- Прошёл билд
- Произведен check-in
Чтобы создать новое напоминание, идем в Alerts Explorer, жмем кнопку New Alert, выбираем Blank Alert для нужного типа эвента. Далее для нового эвента в поле Formatting выбираем SOAP, в поле Send To пишем адрес нашего сервиса вида "http://tfssite/ServiceApplication/NewService.asmx".
Важно: чтобы создать SOAP alarm нужно иметь права администратора коллекции или администратора сервисов.
Но чтобы использовать сервис - нужно его создать. Создаем обычный проект веб-сервиса в студии, добавляем метод Notify (именно он будет вызван, пример можно найти тут). В веб сервисе нам скорей всего понадобится обратиться к TFS, запросить какие-то данные (инфу для TFS2010 можно найти тут).
Важно: если нужно обратиться к TFS и получить оттуда рабочие элементы, используя сервис WIStore, то в web.config добавляем адрес директории с кэшем:
<appSettings>
<!-- Add reference to TFS Client Cache -->
<add key="WorkItemTrackingCacheRoot" value="c:\TFSClientCache" />
</appSettings>
В противном случае при попытке инициализировать WIStore - получим исключение от Microsoft.TeamFoundation.WorkItemTracking.Client.Cash;
Созданный сервис добавляем на сайт с TFS, апп пул ему даем такой же как у TFS. Не забываем дать юзеру под которым работают TFS сервисы, права на папку с сервисом (на физическую папку на харде).