Lotus Notes — доступ ко всем записям календаря .Net

Я в основном пытаюсь получить из нашего сервера Domino список всех записей календаря для всех сотрудников.

Затем эта информация будет сопоставлена ​​и отображена на экране «Местоположение» в Silverlight в нашей системе внутренней сети.

С помощью Interop.Domino я могу получить доступ к моему собственному почтовому ящику/календарю, но я хочу просмотреть все почтовые ящики на сервере.

Это возможно?


person BIG BRI    schedule 29.01.2013    source источник


Ответы (2)


Я не знаком с Interop.Domino, но вы можете открыть серверный каталог Domino (обычно names.nsf) и просмотреть все документы пользователей, например, в представлении «Люди». Путь и имя почтовой базы данных можно найти в элементе MailFile в документе каждого человека.

person Panu Haaramo    schedule 29.01.2013
comment
Не уверен, что понимаю, зачем мне доступ к адресной книге - в ней наверняка не будет встреч пользователей - person BIG BRI; 29.01.2013
comment
Он содержит документ Notes для каждого пользователя. Эти документы содержат информацию о том, что такое файл почты/календаря для этого пользователя. Вам нужно открыть файл почты/календаря/db и получить информацию оттуда. Если вы можете получить информацию из своего собственного почтового файла, вы сможете получить ее таким же образом из других почтовых файлов. Конечно, вам нужно иметь доступ к этим базам данных. Если это все еще неясно, добавьте свой текущий код к своему вопросу. - person Panu Haaramo; 29.01.2013

Немного подробнее, чтобы расширить ответ Пану...

Первое, что вам нужно сделать, это установить доступ к каждому почтовому файлу. Без этого вы ничего не добьетесь в этом проекте. Если ваш код работает под вашим именем, у вас, вероятно, нет доступа ни к одному из почтовых файлов других пользователей. Возможно, вам потребуется, чтобы ваши системные администраторы создали идентификатор для вашего кода, добавили этот идентификатор в группу и предоставили этой группе доступ «Нет доступа с чтением общедоступных документов» ко всем почтовым файлам пользователей. Примечание. Я предлагаю этот уровень вместо «Читатель», потому что это ограничит ваш код просмотром только общедоступных записей календаря. Ваш код не увидит никаких записей, отмеченных пользователем как «Личное», и ваш код не сможет читать сообщения электронной почты пользователей. Это соответствует стандартным методам обеспечения безопасности Notes/Domino. «Нет доступа с чтением общедоступных документов» — это тот же уровень доступа, который Notes предоставляет пользователям при использовании встроенной функции делегирования.

Как только ваш доступ установлен, возьмите код, который, как вы говорите, успешно открывает вашу собственную почтовую базу данных и читает ваш календарь, возьмите его и превратите в функцию, которая вызывается с параметрами для serverName и mailFile, используя эти параметры для замены строки, которые вы жестко закодировали в своем текущем коде.

Теперь напишите новый основной цикл, который открывает Domino Directory (names.nsf) на сервере, открывает представление «Люди» и выполняет цикл по всем документам Person. Прочтите следующие два элемента NotesItem: из каждого документа: «MailServer» и «MailFile». Если они не пустые, вызовите свою функцию с этими параметрами.

person Richard Schwartz    schedule 29.01.2013