Как получить тело сообщения и вложения в формате XML, используя php / linux с сервера Lotus Domino?

Есть ли у кого-нибудь информация о доступе к серверу Lotus Domino для получения всего содержимого почты по HTTP-запросам с сервера php linux?

Статья Андрея Ковчинникова хорошо описывает, как получить список сообщений в почтовых папках заметок; после получения идентификатора сеанса во время входа в систему, вы можете, например, выбрать 100 лучших сообщений, вызвав:

https://your.server.domain/mail_db/mailbox.nsf/($Inbox)?ReadViewEntries&Start=1&Count=100 

И это прекрасно работает. Проблема возникает, когда я пытаюсь получить содержимое сообщения (0A1DA5EEB7B65277C12576F50055D811 является примером уникального идентификатора сообщения):

 https://your.server.domain/mail_db/mailbox.nsf/($Inbox)/0A1DA5EEB7B65277C12576F50055D811/?OpenDocument 

Такой запрос в IE показывает набор фреймов с данными, которые трудно разобрать, в менее распространенных браузерах, таких как Opera, он сообщает о неподдерживаемом браузере. В идеале, если можно получить содержимое сообщения заметки и все вложения, запросив его в URL-адресе, есть ли какая-нибудь информация, какой запрос будет? Ссылка на ссылку веб-звонков Lotus будет еще более полезной.

Ниже приведен список команд URL-адресов Domino: http://www.ibm.com/developerworks/lotus/library/ls-Domino_URL_cheat_sheet/

Вы можете вернуть данные почтовых ящиков в URL-адрес с помощью команды ReadViewEntries. К сожалению, для чтения документов в формате XML нет встроенного документа.

Один совет – создать копию формы Mail в почтовой базе Notes (или шаблоне, используемой всеми почтовыми базами данных), и настроить ее для вывода XML для всех почтовых полей. Затем вам нужно будет установить форму как только для веб-сайта, а также переименовать или скрыть любые другие имена с тем же именем, которые установлены для отображения в Интернете. Затем Notes будет использовать вашу форму для создания ответов на веб-клиенты. Обратите внимание: вам также придется внести некоторые изменения в шаблон, чтобы отключить использование наборов фреймов для веб-клиентов. К сожалению, эти изменения могут нарушить использование Domino Web Access, если вы используете эту систему для доступа к электронной почте через Интернет.

Сообщения электронной почты не поступают в формате XML. Они либо MIME, либо RichText. Поэтому, когда вы хотите, чтобы они были XML, вам нужно что-то, чтобы сначала преобразовать их для вас. XML ReadViewEntries предоставит вам уже некоторые важные данные (из, время, тема), и вы можете использовать

 https://your.server.domain/mail_db/mailbox.nsf/($Inbox)/0A1DA5EEB7B65277C12576F50055D811/Body?OpenField 

чтобы получить представление HTML тела Mail. Кроме этого, я бы развернул небольшой агент на сервер Domino, который отображает сообщения в нужном вам формате. Для сообщений mime вам, вероятно, нужен оригинальный MIME-формат, а для RichText – MIME-преобразование.

Окончательный ответ на эту проблему недокументирован в спецификации Lotus URL, поэтому я расскажу об этом здесь. Для получения всего сообщения с заголовками и вложениями требуется только идентификатор сообщения Lotus, URL-адрес:

 https://your.server.domain/mail_db/mailbox.nsf/($Inbox)/ca59f0649511e091c12576ce005af21d/?OpenDocument&Form=l_MailMessageHeader&PresetFields=FullMessage;1 

где ca59f0649511e091c12576ce005af21d – пример UID сообщения. Надеюсь, кто-то найдет эту информацию полезной.