Получение новых предупреждений для пользователя SharePoint в С#

У меня есть приложение ASP.NET 4.0, написанное на С#. У меня также есть приложение SP2010 Foundation, использующее аутентификацию на основе утверждений.

Пользователи не видят приложение SharePoint полностью. В iframe встроены только библиотечные представления, и реализован единый вход, так что когда пользователь входит в мое приложение, он также одновременно входит в SP.

Можно ли получить все оповещения для конкретного пользователя.

Например:

Джим входит в мое приложение и видит следующее: Документ А имеет новую модификацию. Документ С только что загружен. Документ B имеет новую модификацию.

Таким образом, вместо отправки электронного письма я хотел бы использовать SP DOM для получения всех ожидающих обновлений для конкретного пользователя.

Что-то похожее на это:

SPUser user = web.EnsureUser(@"domainName\userName");
SPAlertCollection alertColl = user.Alerts;
foreach (SPAlert alert in alertColl)
{
Console.WriteLine(alert.Title); 
}

Я предполагаю, что это даст предупреждения, которым был назначен конкретный пользователь. Но сохраняет ли SharePoint, если у пользователя есть новое оповещение для элемента, которому назначены оповещения?


person shenn    schedule 17.01.2013    source источник


Ответы (1)


Когда вы говорите «сохраняет ли sharepoint, если у пользователя есть новое предупреждение», вы имеете в виду само электронное письмо? SPAlert и SPAlertCollection — это фактические объекты, которые отслеживают элемент списка и инициируют отправку электронного письма, само электронное письмо не является объектом оповещения (хотя я полностью понимаю, почему это сбивает с толку). Насколько я знаю, единственный способ отслеживать электронные письма — это делать это через ваш почтовый сервер, в SharePoint нет простого способа отслеживать это.

Если я правильно понимаю ваш вопрос, вы хотите использовать свое приложение для отображения любых предупреждений, которые есть у пользователя, а не отправлять пользователю электронное письмо? Что-то подобное можно было бы выполнить, перенаправляя электронные письма с предупреждениями на промежуточную учетную запись, а затем заставляя ваше приложение читать/фильтровать/отображать эти электронные письма. Это также дает вам возможность устанавливать правила для электронных писем, которые могут упорядочивать их и отправлять собственные настраиваемые уведомления (SharePoint очень затрудняет настройку шаблонов уведомлений по электронной почте).

person thanby    schedule 25.02.2013